{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Cumulative Distribution Transform (CDT)\n", "\n", "This tutorial will demonstrate: how to use the forward and inverse operations of the CDT in the the *PyTransKit* package." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Class:: CDT\n", "**Functions**:\n", "\n", "1. Forward transform:\n", " sig1_hat, sig1_hat_old, xtilde = forward(x0, sig0, x1, sig1)\n", " \n", " Inputs:\n", " ----------------\n", " x0 : 1d array\n", " Independent axis variable of reference signal (sig0).\n", " sig0 : 1d array\n", " Reference signal.\n", " x1 : 1d array\n", " Independent axis variable of the signal to transform (sig1).\n", " sig1 : 1d array\n", " Signal to transform.\n", " \n", " Outputs:\n", " ----------------\n", " sig1_hat : 1d array\n", " CDT of input signal sig1.\n", " sig1_hat_old : 1d array\n", " CDT of input signal sig1 using the old definition.\n", " xtilde : 1d array\n", " Independent axis variable of sig1_hat.\n", " \n", "2. Inverse transform:\n", " sig1_recon = inverse(sig1_hat, sig0, x1)\n", " \n", " Inputs:\n", " ----------------\n", " sig1_hat : 1d array\n", " CDT of a signal sig1.\n", " sig0 : 1d array\n", " Reference signal.\n", " x1 : 1d array\n", " Independent axis variable of the signal to reconstruct.\n", " \n", " Outputs:\n", " ----------------\n", " sig1_recon : 1d array\n", " Reconstructed signal.\n", " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Definition\n", "### Forward Transform\n", "Let $s(x), x\\in\\Omega_s\\subset\\mathbb{R}$ be a positive density function (PDF). The CDT of the PDF $s(x)$ with respect to a reference PDF $s_0(x), x\\in\\Omega_{s_0}\\subset\\mathbb{R}$ is given by the mass preserving function $\\widehat{s}(x)$ that satisfies:
\n", "\\begin{equation}\n", "\\int_{inf(\\Omega_s)}^{\\widehat{s}(x)}s(u)du = \\int_{inf(\\Omega_{s_0})}^xs_0(u)du\n", "\\end{equation}\n", "\n", "which yields:
\n", "\\begin{equation}\n", "\\widehat{s}(x) = S^{-1}(S_0(x)),\n", "\\end{equation}\n", "\n", "where $S(x)=\\int_{inf(\\Omega_s)}^{x}s(u)du$, and $S_0(x)=\\int_{inf(\\Omega_{s_0})}^{x}s_0(u)du$.
\n", "For continuous positive PDFs, $\\widehat{s}$ is a continuous and monotonically increasing function. If $\\widehat{s}$ is differentiable, the above equation can be rewritten as:
\n", "\\begin{equation}\n", "s_0(x) = \\widehat{s}'(x)s(\\widehat{s}(x)).\n", "\\end{equation}\n", "\n", "### Inverse Transform\n", "The inverse transform of the CDT $\\widehat{s}(x)$ is given by:
\n", "\\begin{equation}\n", "s(x) = (\\widehat{s}^{-1}(x))'s_0(\\widehat{s}^{-1}(x)),\n", "\\end{equation}\n", "\n", "where $\\widehat{s}^{-1}$ is the inverse of $\\widehat{s}$, i.e. $\\widehat{s}^{-1}(\\widehat{s}(x)) = x$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## CDT Demo\n", "The examples will cover the following operations:\n", "* Forward and inverse operations of the CDT\n", "* CDT Properties - translation, scaling, and linear separability in CDT space" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Forward CDT" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Import necessary python packages" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Create reference $I_0$ (uniform distribution) and a demo signal $I_1$" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "N=250\n", "x0 = np.linspace(0, 1, N)\n", "I0= np.ones(x0.size)\n", "x=np.linspace(0, 2, N)\n", "mu=x[len(x)-1]/2.\n", "sigma=0.1\n", "I1=1/(sigma*np.sqrt(2*np.pi))*np.exp(-((x-mu)**2)/(2*sigma**2))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Convert signals to strictly positive PDFs" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "epsilon = 1e-7\n", "I0 = abs(I0) + epsilon\n", "I0 = I0/I0.sum()\n", "I1 = abs(I1) + epsilon\n", "I1 = I1/I1.sum()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Compute forward CDT transform of $I_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": [ "import sys\n", "sys.path.append('../')\n", "\n", "from pytranskit.optrans.continuous.cdt import CDT\n", "\n", "# Create a CDT object\n", "cdt = CDT()\n", "\n", "# Compute the forward transform\n", "I1_hat, I1_hat_old, xtilde = cdt.forward(x0, I0, x, I1)\n", "\n", "# Plot I1 and I1_hat\n", "fontSize=14\n", "fig, ax = plt.subplots(1, 2, sharex=False, sharey=False, figsize=(15,5))\n", "ax[0].plot(x, I1, 'r-',linewidth=2)\n", "ax[0].set_title('Original signal',fontsize=fontSize)\n", "ax[0].set_yticks([])\n", "\n", "ax[1].plot(xtilde, I1_hat, 'b-',linewidth=2)\n", "ax[1].set_title('CDT',fontsize=fontSize)\n", "#ax[1].set_yticks([])\n", "\n", "#ax[2].plot(xtilde, I1_hat_old, 'g-',linewidth=2)\n", "#ax[2].set_title('CDT (old definition)',fontsize=fontSize)\n", "#ax[2].set_yticks([])\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Inverse CDT\n", "Reconstruct the original signal $I_1$ from $\\hat{I_1}$ using inverse CDT" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAl8AAAE/CAYAAAB4o6baAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nO3de5xddX3v/9cnM7mQQBLITMj9AglIAEWICCrWSoVQhdAWaiwKKh6sLaftafvrT7SitfZCj0daq9YDgkXUAxZFo8YDKt4QiISbIUJgCOQ2YTKTe4BcJvmcP75rkZ1hz+y9Z6+9Lnu/n4/Hfuw9a6+99ndNkk/e67u+67vM3RERERGRdIzIugEiIiIirUThS0RERCRFCl8iIiIiKVL4EhEREUmRwpeIiIhIihS+RERERFKk8CU1M7OPmNmXkl63im25mc2r8TOXmdndSXx/he95i5ltaPT3iIgAmNlPzewDNX5mlpntNrO2RrWr5LtqrtetROGrxZnZe81spZm9aGbPm9l/mNnEoT7j7v/o7lX9o69l3UZw96+5+3lZfb+IHGJmz5nZS1EAeN7M/tPMjsy6XeU0MjyY2Zxo++2N2P5g3H2dux/p7gfS/F55JYWvFmZmfwVcB/x/wATgLGA28EMzGzXIZ1ItFiLSdC509yOB04DXAtdk3J5hUS2Ueih8tSgzGw/8HfDf3f3/uvt+d38O+ENCAHt3tN4nzOwOM/uqme0E3hst+2rJti43s7VmtsXMPhYd3f5Oyee/Gr2Oj/auMLN1ZtZnZh8t2c6ZZna/mW03s01m9rnBQmCZ/Xmvma0xs11m9qyZXVay/N6S9c4zs9VmtsPMvmBmP4u77uN1zezTZrYt2s4FJZ99n5k9EX3HGjP74DB//SItz92fB+4ihDAAzOwsM7svqgGPmdlbSt47xsy+bGbd0b/Pb5e899/MrMvMtprZUjObVvKem9kfm9nT0ec+b2YWvTcvqgE7onp0e7T859HHH4t66d4ZDy0ws//fzJ4HvjywvpR837zo9RFm9r+i+rgjqi9HAPH2t0fbPzta//1RjdlmZneZ2eyS7b7NzJ6MtvM5wAb73Ua1dIWZ7TSzHjP7TLT8sB43M5trZj+PatqPot9Nw+u1KHy1sjcAY4BvlS50993AD4C3lSxeDNwBTAS+Vrq+mS0AvgBcBkwl9KBNr/DdbwJOBM4FrjWzk6LlB4D/AXQAZ0fv/0mlHTGzccBngQvc/aho3x4ts15HtB/XAJOA1dG6pV4fLe8A/gW4KS7UwGbgHcB44H3A9WZ2eqX2icgrmdkM4AKgK/p5OvB94FPAMcBfA980s87oI7cCY4GTgcnA9dHn3gr8E+HAcSqwFrhtwNe9A3gd8JpovfOj5X8P3A0cDcwA/h3A3d8cvf+a6DTd7dHPU6K2zQauqmI3Pw2cQagzxwB/AxwE4u1PjLZ/v5ldDHwE+H2gE/gF8H+ifewAvgn8LaE2PQO8cYjv/Tfg39x9PHA88I1B1vs68CtCPfwE8J4y6yRaryVQ+GpdHUCfu/eXeW9T9H7sfnf/trsfdPeXBqx7CfBdd7/X3fcB1wKVbhj6d+7+krs/BjxGKIi4+0Pu/oC790e9cP8b+K0q9+cgcIqZHeHum9x9VZl1fhdY5e7fivb7s8DzA9ZZ6+43RmMibiEU82Oj9n3f3Z/x4GeEon1Ole0TkeDbZrYLWE84oPl4tPzdwDJ3XxbVmh8CK4DfNbOphKD2x+6+Leqp/1n0ucuAm939YXffSzi4OtvM5pR85z+7+3Z3Xwf8hEO9bfsJQWqau+9x98N6sco4CHzc3feWqYWHMbMRwPuBP3f3je5+wN3vi9pYzgeBf3L3J6L69I/AaVHv1+8Cv3H3O9x9P/CvvLJ2ldoPzDOzDnff7e4PlGnfLEIgvdbd90X7vrTMthpRr1uewlfr6gM6rPy4hanR+7H1Q2xnWun77v4isKXCd5cWjReBIwHM7AQz+56Fgbg7CcWno9wGSrn7C8A7gT8GNpnZ983sVVW01YGBVyg+X/L+i9HLuH0XmNkD0amN7YSCWLF9InKYi6Me6rcAr+LQv6HZwKXRaazt0b+xNxHq0Uxgq7tvK7O9aYTeLuDl3vstHN4DX7bmEHqiDPiVma0ys/dXaHuvu++pYh+J9msMoZeqGrOBfyvZ961R26ZTvnYNVZevBE4AnjSzB83sHWXWmUb4nb5YsqzcNhOt1xIofLWu+4G9hC7ul0Wn8C4AflyyeKierE2E7vr480cQurCH4z+AJ4H5UXf5RxhiXEMpd7/L3d9GKNRPAjdW0VYr/XkoZjaa0O3/aeBYd58ILKu2fSJyuKjn6j8J/6Yg/Md/q7tPLHmMc/d/jt47xspfid1NCC7AyzVsErCxijY87+7/zd2nEXqevmBDX+E4sBa+QDgVGn/3lJL3+oA9hNN+lbYDYR8/OGD/j3D3+wi1a2bJ91jpz2X262l3fxfh9Ox1wB3R76XUJsLvdGzJskG3Wcaw67UofLUsd99BGHD/72a2yMxGRt30/0XoDbq1yk3dAVxoZm+IBlv+HcP/B3gUsBPYHfVcfaiaD5nZsWZ2UVRc9gK7CeMRBvo+cKqZXRz1+P0pYQxHNUYBo4FeoN/CQHxNYSFSn38F3mZmpwFfJdSS882szczGRIPcZ7j7JsJY1C+Y2dFRvYrHTX0deJ+ZnRYdJP0jsDw6FTYkM7s0GnsGsI0QiuLa0QMcV2ETjwEnR989hjBuCgB3PwjcDHzGzKZF+3R21MZewinM0u1/EbjGzE6O2jbBzC6N3vt+9D2/H9WuP2OI2mVm7zazzqgN26PFh9VEd19LOK37CTMbZWHQ/4UV9rfUsOq1BApfLczd/4VwtPJpwj+i5YSjr3OHGJcwcBurgP9OGOC6CdhFGMdR1ecH+Gvgj6Jt3AjcPvTqLxsB/BXhCHgrYdzBKwZ+unsfcClhIP0WYAGh+FRsq7vvIhS8bxCK9B9RfnyEiFTJ3XuBrwAfc/f1hIt7PkIIJ+sJ0+DE/0+9hzCW6UlCjfmLaBs/Bj5G6JneROhpWlJlE14HLDez3YR/z3/u7s9G730CuCU6DfiHg7T/KeCTwI+Ap4GBY8b+GlgJPEioTdcBI6JTff8A/DLa/lnufmf0/m3RabzHCWchSmvXPxNq13zgl0Ps1yJgVbRf/wYsGeR06WWEwfJbCBc63E71tXu49VoAC6eORZJhYcLE7YSu6GcrrZ+laEDsBuAyd/9J1u0REcmShak2nnT3j1dcWeqini+pm5ldaGZjo9N+nyYc6T2XbavKi05pTIy6/uMxCq+4EkhEpNmZ2evM7HgzG2Fmiwg9j9+u9Dmpn8KXJGEx4ZRfN6E7fInnt0v1bMLVR32E8Q0XV7pkXESkSU0BfkoYJ/tZ4EPu/kimLWoROu0oIiIikiL1fImIiIikSOFLREREJEWFuit7R0eHz5kzJ+tmiEhKHnrooT5376y8Zv6pfom0nsFqWKHC15w5c1ixYkXWzRCRlJjZ2sprFYPql0jrGayG6bSjiIiISIoUvkRERERSpPAlIiIikiKFLxEREZEUKXyJiIiIpEjhS0RERCRFCl8iIiIiKVL4EhEREUmRwpeIiIhIihS+JN/WrYMbb4Q1a7JuiYhITV54Ab77XThwIOuWSN4U6vZC0mJeegl+67fguedg+nRYvRrGjcu6VSIiFe3YAb/92/DII7B4MXzzm9DWlnWrJC/U8yX59dnPhuD1938PGzfCpz+ddYtERKpy440heF1+OXznO3D33Vm3SPJE4Uvy62tfg3POgb/9Wzj//PCziEjOucOXvgRveEMIYZ2d4WeRmMKX5NO6dbByJVx0Ufj5wgvh6afDQ0Qkxx55JIySeP/7YdQoeM97YOlS2LUr65ZJXih8ST4tWxae3/72w5+/971s2iMiUqWf/zw8n39+eF60CPr74f77s2uT5IvCl+TTL34RBtm/6lXh5zlzYN68sFxEJMd+8YtQsmbMCD+fdRaMGAH33ptpsyRHFL4knx56CBYuBLNDyxYuDMtFRHLKPYSsc845tOyoo+C1r9Wxoxyi8CX5s3MnPPUUnHHG4cvPOCOMBevtzaZdIiIVPPssbN4Mb3zj4cvf+EZYvlxzfkmg8CX588gj4fBxYPg6/fTwrN4vEcmpxx8Pz6eddvjy17wmTF347LPpt0nyR+FL8ufhh8PzYOErfl9EJGdWrgzPCxYcvvyUU8JzHM6ktSl8Sf488QR0dMCxxx6+fOLEMIL1iSeyaZeISAWPPx4G2x911OHL4zCm8CWg8CV5tHo1nHhi+fdOPDG8LyKSQ48/fqiXq9SRR8LcuQpfElQVvsxskZmtNrMuM/twmfdHm9nt0fvLzWxOtPxMM3s0ejxmZr9X7TalhVUTvtzTbZMUluqXpGX//lCeTj65/PunnqrwJUHF8GVmbcDngQuABcC7zGzA2WyuBLa5+zzgeuC6aPnjwEJ3Pw1YBPxvM2uvcpvSinbsgJ6eocPXzp1hHZEKVL8kTWvXhgAWT0840IknQlcXHDyYbrskf6rp+ToT6HL3Ne6+D7gNWDxgncXALdHrO4Bzzczc/UV374+WjwHi7opqtimtKD6lOFT4Kl1PZGiqX5Karq7wfPzx5d8//njYuxc2bkyvTZJP1YSv6cD6kp83RMvKrhMVqx3AJAAze72ZrQJWAn8cvV/NNqUVVQpf8SHlk0+m0x4pOtUvSc0zz4TnefPKvx+Hsng9aV3VhC8rs2zggJtB13H35e5+MvA64BozG1PlNsOGza4ysxVmtqJXk2s2vzVrwqz2c+eWf3/GDBg5UpPlSLVUvyQ1XV0wdixMmVL+/Th8xT1k0rqqCV8bgJklP88Augdbx8zagQnA1tIV3P0J4AXglCq3GX/uBndf6O4LOzs7q2iuFNpzz8G0aTB6dPn329pg1qywnkhlql+SmmeegeOOO/yuaKVmzgzHjur5kmrC14PAfDOba2ajgCXA0gHrLAWuiF5fAtzj7h59ph3AzGYDJwLPVblNaUXPPRcmyRnK3LkKX1It1S9JzTPPDH7KEaC9PZQ3hS+pGL6iMQ5XA3cBTwDfcPdVZvZJM7soWu0mYJKZdQF/CcSXXr8JeMzMHgXuBP7E3fsG22aSOyYF9eyzlcPXnDkKX1IV1S9Ji3sYNXHccUOvd/zxCl8C7dWs5O7LgGUDll1b8noPcGmZz90K3FrtNqXF9ffDhg2Dj/eKzZkTppp46SU44ohUmibFpfolaejthT17Kh87zp4NK1ak0iTJMc1wL/mxYQMcOFBdzxeESXVERHJg3brwPGvW0OvNmgV9ffDii41vk+SXwpfkR3wFYzVjvkrXFxHJ2Ppo8pGZM4deLw5n69cPvZ40N4UvyY+4GlVz6AiHDjVFRDJWS89X6frSmhS+JD+6o6v1p00ber0pU8K13N1lr+4XEUndunVhCOqkSUOvp54vAYUvyZONG2HCBBg3buj12tvh2GMVvkQkN9atC8FqsDm+YtOnh3XU89XaFL4kP7q7K/d6xaZNU/gSkdxYv77yeC8Ik6xOnarw1eoUviQ/urvDYWE1FL5EJEfWrasufEFYT+GrtSl8SX7U0vM1fXo4TSkikrH+/jD1YC3Hjps2NbZNkm8KX5IPBw/Wftqxtxf27Wtsu0REKti8OZSwasPX1KkKX61O4Uvyoa8vHD7WEr4Ann++cW0SEalCtRdqx6ZOhW3bYO/exrVJ8k3hS/Ihrl619NuDTj2KSOZqDV9TpoRnHTu2LoUvyYdaq1cc0jToXkQyFh8D1tLzBTr12MoUviQfaq1e8XoKXyKSse5uGDEiTD9YDYUvUfiSfIhDVFyVKpk0KUyYo9OOIpKx7u5wKrGtrbr1Fb5E4UvyobsbJk8OgaoaI0aECqaeLxHJWC0XakModSNGKHy1MoUvyYdaqxdoolURyYXu7uo77SH0kE2erPDVyhS+JB82bqw9fE2frvAlIpl7/vlDVzBWa8oUha9WpvAl+VDLrYVi06ZpzJeIZOrAgTBNYbWD7WNTp2qqiVam8CXZ278/TBE9nNOOO3fC7t2NaZeISAVbtoTZ7YcTvtTz1boUviR7PT3gPrzwBapgIpKZnp7wPJzw1dMTes6k9Sh8Sfbi8FTLiNXS9TXuS0QyUk/4Ongw3KJWWo/Cl2Rv8+bwXGv1itdX9RKRjNQTvkAd961K4UuyF4evyZNr+1y8fvx5EZGUKXzJcCh8Sfbi8NTZWdvnOjoO/7yISMp6emDUKJgwobbPxVNTKHy1JoUvyV5PD4wbFx61aG8PtxlS+BKRjPT0hE54s9o+p56v1qbwJdnbvLn2U46xyZMP9fuLiKSsp6f2U44AY8bAxIma66tVKXxJ9jZvHl71gvA59XyJSEaGG74gHDuqfLUmhS/JXr09X6peIpKResOXLtZuTQpfkj2FLxEpoIMH6+u47+xU+WpVCl+SrXiWwXrC1/btsG9fsu0SEalg2zbo71fPl9SuqvBlZovMbLWZdZnZh8u8P9rMbo/eX25mc6LlbzOzh8xsZfT81pLP/DTa5qPRY5j/+0qhxdWrnvAFqmAyKNUvaZThzvEV6+wMN+XWLYZaT8XwZWZtwOeBC4AFwLvMbMGA1a4Etrn7POB64LpoeR9wobufClwB3Drgc5e5+2nRQ52vrWi4E6zGNNGqDEH1SxppuDfniE2eHG5ru3Vrcm2SYqim5+tMoMvd17j7PuA2YPGAdRYDt0Sv7wDONTNz90fcPb7x3ipgjJmNTqLh0iQUvqSxVL+kYZLo+QKVr1ZUTfiaDqwv+XlDtKzsOu7eD+wAJg1Y5w+AR9x9b8myL0dd9h8zq3WKOmkKCl/SWKpf0jD1hi+Nmmhd1YSvckXFa1nHzE4mdOV/sOT9y6Lu/HOix3vKfrnZVWa2wsxW9OpvaPOpt98+/pwmWpXyVL+kYXp6oK0NjjlmeJ9Xz1frqiZ8bQBmlvw8A+gebB0zawcmAFujn2cAdwKXu/sz8QfcfWP0vAv4OuH0wCu4+w3uvtDdF3bWeu8/yb/Nm8N9OSYN7Gio0lFHwejRql4yGNUvaZienhCgRgxz3gD1fLWuav7KPAjMN7O5ZjYKWAIsHbDOUsKAVIBLgHvc3c1sIvB94Bp3/2W8spm1m1lH9Hok8A7g8fp2RQqppyfcILutbXifN9NcXzIU1S9pmHqmKIRDx5wqX62nYviKxkBcDdwFPAF8w91XmdknzeyiaLWbgElm1gX8JRBfzn01MA/42IBLskcDd5nZr4FHgY3AjUnumBREvdULFL5kUKpf0kh9fYdOHQ5He3sIYOr5aj3t1azk7suAZQOWXVvyeg9waZnPfQr41CCbPaP6ZkrTUviSBlP9kkbp64PTT69vGypfrUkz3Eu2FL5EpKD6+sKoiXp0dqrnqxUpfEm2kgxfPvAiNhGRxujvDzfoqDd86dixNSl8SXb27oUdO5IJX3v3ws6dybRLRKSCeFb6ei9iVc9Xa1L4kuxs2RKek6hepdsTEWmwvr7wnETP15YtoSdNWofCl2QnqeoVfz7enohIgyVVvnTs2JoUviQ7Cl8iUlBJ9nyBxn21GoUvyY7Cl4gUVNI9Xxr31VoUviQ7Cl8iUlBxWBrundFi6vlqTQpfkp04LA33rrSx8ePDVNEKXyKSkr4+OPJIGDOmvu3o5tqtSeFLstPXBxMnwsiR9W3HLPR+KXyJSEqSmGAVwrGnmcpXq1H4kuwkVb1A4UtEUpVU+WprCwFM5au1KHxJdhS+RKSgVL6kHgpfkh1VLxEpqCTLV2enylerUfiS7Ch8iUhB9fXVf3OOWEeHpppoNQpfkp2kw9eWLXDwYDLbExEZxJ49sHu3jh1l+BS+JBsvvggvvZRs9Tp4ELZvT2Z7IiKDiG8FlPRpR/dktif5p/Al2UhqgtWYJloVkZQ0onz198OOHclsT/JP4UuyofAlIgWl8iX1UviSbKh6iUhBxYPjkzztCCpfrUThS7Kh8CUiBdWo8qUrHluHwpdkQ+FLRAoqqdvSxlS+Wo/Cl2Sjry/c0GzixGS2N3ZsuMOtqpeINFhfHxx9NLS3J7M9ha/Wo/Al2ejrC4eNbW3JbE831xaRlCQ5RSHAkUfC6NEqX61E4UuykXT1AoUvEUlFkrPbw6FjR435ah0KX5INhS8RKSiVL6mXwpdkQ9VLRAqqEeVLN9duLQpfkg2FLxEpIPfGlS+ddmwdCl+SvkZWr23bwn06REQa4IUXYO9eHTtKfRS+JH27dsH+/Y2pXgBbtya7XRGRSNJTFMY6OmD79lAapflVFb7MbJGZrTazLjP7cJn3R5vZ7dH7y81sTrT8bWb2kJmtjJ7fWvKZM6LlXWb2WTOzpHZKcq6R1at0+yKofkmykr61UCy+enLLlmS3K/lUMXyZWRvweeACYAHwLjNbMGC1K4Ft7j4PuB64LlreB1zo7qcCVwC3lnzmP4CrgPnRY1Ed+yFFovAlKVH9kqSpfEkSqun5OhPocvc17r4PuA1YPGCdxcAt0es7gHPNzNz9EXfvjpavAsZER5lTgfHufr+7O/AV4OK690aKQdVL0qP6JYlS+ZIkVBO+pgPrS37eEC0ru4679wM7gEkD1vkD4BF33xutv6HCNqVZqXpJelS/JFGNKl/xaUeVr9ZQzZ2pyo1l8FrWMbOTCV3559WwzfizVxG695k1a1altkoRNKp6TZp0+PZFVL8kYX194a5oEyYku924HGq6idZQTc/XBmBmyc8zgO7B1jGzdmACsDX6eQZwJ3C5uz9Tsv6MCtsEwN1vcPeF7r6wM8n7OUh2GlW9xowJN0lT+JJDVL8kUfEsOSMSnitAx46tpZq/Pg8C881srpmNApYASwess5QwIBXgEuAed3czmwh8H7jG3X8Zr+zum4BdZnZWdJXQ5cB36twXKYq4ejXiAjFNliOHU/2SRDViikKAUaPC8ajKV2uoGL6iMRBXA3cBTwDfcPdVZvZJM7soWu0mYJKZdQF/CcSXc18NzAM+ZmaPRo/J0XsfAr4EdAHPAD9Iaqck5xpVvUDhSw6j+iVJa3T50mnH1lDNmC/cfRmwbMCya0te7wEuLfO5TwGfGmSbK4BTammsNAmFL0mR6pckqa8PTjqpMdtW+WodmuFe0rdlS2PDl2YpFJEG0bGjJEHhS9Kn6iUiBXTwYGOPHTs7ddqxVSh8SboaXb06OmDnTti3rzHbF5GWtX07HDjQ+GNHLztxiTQThS9J144dja9eoFOPIpK4Rk1RGOvogD174MUXG7N9yQ+FL0lXGtWr9HtERBLS6PKlWe5bh8KXpEvhS0QKKq3ypXFfzU/hS9Kl8CUiBaXyJUlR+JJ0qXqJSEHFZaVRd4rSacfWofAl6Wp0+DrmmMO/R0QkIb294RayY8c2Zvs67dg6FL4kXX19MHo0jBvXmO2PHAkTJyp8iUjiGnlbWgj3dmxrU/lqBQpfkq5GVy/QRKsi0hB9fY075QgwYgRMmqTy1QoUviRdjZzdPqbwJSIN0Nvb+PKlWe5bg8KXpKu3NxzaNVJHh6qXiCROx46SFIUvSVej++1B1UtEGkLhS5Ki8CXp6u1tfPiK++11gzQRScj+/eHuaGmUL4Wv5qfwJenZvz/cmTaNQ0fdIE1EEtToWXJiHR3h1rQHDzb2eyRbCl+Snvhm12kcOoLGfYlIYtIMXwcPwrZtjf0eyZbCl6Sn0dNDxzTLvYgkLK3ypVnuW4PCl6Qn7olK41rt0u8TEalTWuVLs9y3BoUvSU9cTdLq+VL1EpGEpHnasfT7pDkpfEl60qpe6rcXkYTF5SSNaQpLv0+ak8KXpCfuiWp09Ro/PtzjUT1fIpKQ3t5w29iRIxv7Peq4bw0KX5Kevr50qpeZZioUkUSlMcEqwNix4aHy1dwUviQ9aUywGtMN0kQkQWmFL9CxYytQ+JL0pHFroZiql4gkKM3ypVnum5/Cl6Sntze9Q0f1fIlIgtIsXx0dKl/NTuFL0qOeLxEpIHeddpRkKXxJOtzT7/nauhX6+9P5PhFpWi+8AHv36rSjJEfhS9Kxa1e4sXaaPV8QApiISB3Smt0+1tERSubevel8n6RP4UvSkXb10i2GRCQhac0PHdNEq82vqvBlZovMbLWZdZnZh8u8P9rMbo/eX25mc6Llk8zsJ2a228w+N+AzP422+Wj0mJzEDklOpXVroZhmKpSI6pfUS+FLktZeaQUzawM+D7wN2AA8aGZL3f03JatdCWxz93lmtgS4DngnsAf4GHBK9BjoMndfUec+SBGkXb10iyFB9UuSkfaxozrum181PV9nAl3uvsbd9wG3AYsHrLMYuCV6fQdwrpmZu7/g7vcSipi0MvV8STZUv6Ru6vmSpFUTvqYD60t+3hAtK7uOu/cDO4BqbuD35ajL/mNmZlWsL0UVV5G0w5eqV6tT/ZK69fVBeztMmJDO96l8Nb9qwle5ouLDWGegy9z9VOCc6PGesl9udpWZrTCzFb3qxSiu3l4YPRrGjUvn+0aODPeR1N+ZVqf6JXWL5/hKK2Ifc0z4LoWv5lVN+NoAzCz5eQbQPdg6ZtYOTACGvMbf3TdGz7uArxNOD5Rb7wZ3X+juCzvT6jWR5MUTrKbZQaCZCkX1SxKQ5hSFEHrZjj5ax47NrJrw9SAw38zmmtkoYAmwdMA6S4EroteXAPe4+6BHjmbWbmYd0euRwDuAx2ttvBRI2tULdIshAdUvSUCas9vHdOzY3Cpe7eju/WZ2NXAX0Abc7O6rzOyTwAp3XwrcBNxqZl2EI8Yl8efN7DlgPDDKzC4GzgPWAndFhasN+BFwY6J7JvmS5q2FYh0dsH595fWkaal+SRL6+uDUU9P9ToWv5lYxfAG4+zJg2YBl15a83gNcOshn5wyy2TOqa6I0hd5emDs33e/s7ISHH073OyV3VL+kXll13K9Zk+53Sno0w72kI6uer76+cF9JEZFhOHAg3KVMpx0lSQpf0nj79sGOHemHr87OcHO03bvT/V4RaRrbtoXjt6zCl44dm5PClzTeli3hOYvqBTp8FJFhS/u2tLHOTti/H3buTPd7JR0KX9J4ac9uH9M9OkSkTps3h+djj033e3Xs2NwUvqAMnR4AABmQSURBVKTxsjp01C2GRKROcfianPKt0xW+mpvClzRe2rcWiunm2iJSp56e8Jx2z5fKV3NT+JLGU8+XiBTU5s3hxhyTqrnbZ4JUvpqbwpc0Xl9fqF7HHJPu9x51FIwapeolIsO2eXMIQm1t6X6vTjs2N4UvabyennDY2F7VnL7JMQsDNeJBGyIiNdq8Of1TjhCOHUeOVPhqVgpf0ng9PdlULwjfGw/aEBGpUU9P+oPtIRw76va0zUvhSxpP4UtECmrz5mzCF2iW+2am8CWNl1W/PYTv1WlHERmmLMuXwlfzUviSxsuq3x4OjfnSPTpEpEZ79oQZ5rMqXzrt2LwUvqSxXnoJdu3Ktudr3z7Yvj2b7xeRwspqgtVYR4fCV7NS+JLGymqGwlj8vRr3JSI1yjp8TZkSjhv37s3m+6VxFL6ksRS+RKSgsrqvYyz+Xg1bbT4KX9JYCl8iUlBx2ciq5ysuX88/n833S+MofEljZd1vH3+vDh1FpEZZl68pU8Kzjh2bj8KXNFbWh46TJsGIEapeIlKzzZth3LjwyII67puXwpc0Vk8PTJgAY8Zk8/1tbeF6bVUvEalRlhOsgk47NjOFL2msLGe3j2mWexEZhiynKIRwzDphgspXM1L4ksZS+BKRgspydvvYsceq56sZKXxJYyl8iUhBZX3aEcKge5Wv5qPwJY2Vh+oV32JIRKRKBw+G2eWzLl86dmxOCl/SOPv3w9at+ej5evFF2L0723aISGH09UF//6HpHrKi047NSeFLGifr6aFjul5bRGq0aVN4njo123ZMmQI7doSbfEvzUPiSxsl6dvuYwpeI1Cgv4Uu3GGpOCl/SOApfIlJQeQtfOvXYXBS+pHGynt0+pvAlIjXKS/jSLYaaU1Xhy8wWmdlqM+sysw+XeX+0md0evb/czOZEyyeZ2U/MbLeZfW7AZ84ws5XRZz5rZpbEDkmOxNVr2rRs2zF5crjFUNweEZEKNm0KE5wecUS27dCxY3OqGL7MrA34PHABsAB4l5ktGLDalcA2d58HXA9cFy3fA3wM+Osym/4P4CpgfvRYNJwdkBzr7oajj86+erW3hwrW3Z1tOyQTOniU4di0KfteL9Bpx2ZVTc/XmUCXu69x933AbcDiAessBm6JXt8BnGtm5u4vuPu9hBD2MjObCox39/vd3YGvABfXsyOSQ93d2fd6xaZNU/hqQTp4lOHKS/gaPRomTlTPV7OpJnxNB9aX/LwhWlZ2HXfvB3YAkypsc0OFbUrRKXxJ9nTwKMOyaVN+ypcmWm0+1YSvct3pPox1hrW+mV1lZivMbEVvb+8Qm5TcUfiS7OngUWrmnp+eLwiD7jVktblUE742ADNLfp4BDPxf7OV1zKwdmABsrbDNGRW2CYC73+DuC919YWdnZxXNlVw4eDBfh47TpoWJcvbvz7olki4dPErN4klN8xK+dOzYfKoJXw8C881srpmNApYASwessxS4Inp9CXBP1B1flrtvAnaZ2VnRQNXLge/U3HrJry1bQtDJU/UCjVptPTp4lJrlZZqJ2PTpsHFj6JGT5lAxfEXd8FcDdwFPAN9w91Vm9kkzuyha7SZgkpl1AX8JvHxFkZk9B3wGeK+ZbSgZ7Poh4EtAF/AM8INkdklyIT5My1PPF+jwsfXo4FFqlsfwtXdvuFWuNIf2alZy92XAsgHLri15vQe4dJDPzhlk+QrglGobKgWzcWN4zlv4itslLcHd+80sPnhsA26ODx6BFe6+lHDweGt08LiVENCAlw8exwOjzOxi4Dx3/w3h4PE/gSMIB446eGwi8TFaXsLXjKifdeNGmDTUaEQpjKrCl0jN1PMlOaGDR6lVHnu+IISvV78627ZIMnR7IWmMOOTE98bIWkdHmGxV4UtEKti0CcaOhaOOyrolQRy+NmwYej0pDoUvaYzu7hB4Ro/OuiXBiBHhMFbhS0QqiKeZyMt9C+K2aNRE81D4ksbI0xxfMV2vLSJVyNMcXwAjR4Zb1Cp8NQ+FL2kMhS8RKai8hS84NN2ENAeFL2kMhS8RKSB3WL/+0BWGeaHw1VwUviR5/f3hRmR5DF/btsFLL2XdEhHJqa1bQ4mYNSvrlhxuxgyFr2ai8CXJ27w53F4oj+ELdJM0ERnU+uhOoDNnDr1e2qZPDzcO2bOn8rqSfwpfkry8zVAY00SrIlJBnsMXaOREs1D4kuStWxee89ZvH1fTuLqKiAwQl6+8hi/N9dUcFL4keWvXhufZs7Ntx0BxGIzbJyIywPr1YWqHY4/NuiWHK53lXopP4UuSt3YtjBsHxxyTdUsON25cmPhV4UtEBhFf6TgiZ/87Knw1l5z99ZKmsG5d6GXKy/TQpWbNOnReQURkgPXr83fKEWD8+HD8qPDVHBS+JHlr1+bvlGNs9mz1fInIoPIavszCsaOGrDYHhS9JXhHCl3vWLRGRnDlwIAxoz2P4ApgzB557LutWSBIUviRZL7wQJqPJa/iaNSu0cdu2rFsiIjnT0xPmiM7bhdqx2bMVvpqFwpckK6/TTMTiUKhTjyIyQF7n+IrNmROObXftyrolUi+FL0lWXqeZiCl8icggihC+QOWrGSh8SbLyHr4015eIDKIo4UunHotP4UuStW4dtLXl776OsY4OOOIITTchIq+wbh2MHQtHH511S8pT+GoeCl+SrLVrwwyFbW1Zt6Q8M003ISJlxdNM5HGKQoDJk2HMGIWvZqDwJcnK8zQTsVmzFL5E5BWefRbmzs26FYMz03QTzULhS5K1bl3+w9fs2TrtKCKvsGYNHHdc1q0YmsJXc1D4kuT094d7X+R1monY7NmweTO89FLWLRGRnNi6FbZvh+OPz7olQ1P4ag4KX5KcdevCFNF57reHQ6NWn30202aISH6sWROei9Dzpbm+ik/hS5Lz9NPh+YQTsm1HJXH74vaKSMuLw1cRer5Aw1aLTuFLkvPUU+F5/vxs21FJ3L64vSLS8p55JjwXpeNepx6LTeFLkvP003DUUXDssVm3ZGgTJ0Jnp3q+RORla9aE0nXkkVm3ZGgaNdEcFL4kOU89FXqV8jpJTqn589XzJSIve+aZ/I/3gjDX19ixh06TSjEpfElynn46/+O9YiecoJ4vEXnZmjX5H+8F4dj2uOMOnSaVYqoqfJnZIjNbbWZdZvbhMu+PNrPbo/eXm9mckveuiZavNrPzS5Y/Z2YrzexRM1uRxM5IhvbtC4MQ8j7eKzZ/PnR3w+7dWbdEGkz1SyrZty/Mbl+Eni+AefMUvoquYvgyszbg88AFwALgXWa2YMBqVwLb3H0ecD1wXfTZBcAS4GRgEfCFaHux33b309x9Yd17ItlaswYOHixWzxdAV1e27ZCGUv2SaqxdG8pXEXq+ILQzLrlSTNX0fJ0JdLn7GnffB9wGLB6wzmLgluj1HcC5ZmbR8tvcfa+7Pwt0RduTZlOUKx1juuKxVah+SUVxL1JRer6OPx727IFNm7JuiQxXNeFrOrC+5OcN0bKy67h7P7ADmFThsw7cbWYPmdlVtTddciUeP1WU8DVvXnjWuK9mp/olFRVlgtVY3EOnjvviqiZ8lbt0zatcZ6jPvtHdTyecDvhTM3tz2S83u8rMVpjZit7e3iqaK5l46imYNAmOOSbrllRn3DiYPl09X81P9Usq6uqCI46AqVOzbkl14mNHha/iqiZ8bQBmlvw8A+gebB0zawcmAFuH+qy7x8+bgTsZpDvf3W9w94XuvrCzs7OK5kominSlY+yEExS+mp/ql1T0+OOwYEExZsmBcHvasWNDu6WYqglfDwLzzWyumY0iDEBdOmCdpcAV0etLgHvc3aPlS6KrieYC84Ffmdk4MzsKwMzGAecB+mtUZPEcX0USz/XlAztCpImofklFv/41vPrVWbeiem1tcMopod1STO2VVnD3fjO7GrgLaANudvdVZvZJYIW7LwVuAm41sy7CEeOS6LOrzOwbwG+AfuBP3f2AmR0L3BnGtNIOfN3d/28D9k/SsH07bNwYDh2L5JRT4IYbwqjVadOybo00gOqXVNLTEx5FCl8Q2nvnneHYsSg9dnJIxfAF4O7LgGUDll1b8noPcOkgn/0H4B8GLFsDvKbWxkpOxX3fp56abTtq9Zror+Bjjyl8NTHVLxnKypXhuYjh60tfguefL85YNTlEM9xL/eLwdcop2bajVnH4evTRbNshIpmJT90V7dgxbq9OPRaTwpfUb+VKmDABZs6svG6eTJgQ7lL72GNZt0REMvLrX8OUKVC06yEUvopN4Uvqt3Jl6PUq4sCD005Tz5dIC1u5sninHCHM7DN9+qHTplIsCl9Sn4MHQ89REasXhFOPTz0FL7yQdUtEJGX9/bBqVXHL16tfrZ6volL4kvqsWQM7d8IZZ2TdkuE57bRwuZAmzBFpOU8/DXv3Fjt8/eY3sH9/1i2RWil8SX0eeig8n356tu0YrtIrHkWkpcS9RkUOX/v3w5NPZt0SqZXCl9Tn4Ydh1Cg4+eSsWzI8c+bA+PEKXyIt6MEHYfRoOOmkrFsyPK99bXhesSLbdkjtFL6kPg89FC67GTUq65YMj1no/XrkkaxbIiIpW748BJiilq8TTwwXbS9fnnVLpFYKXzJ8Bw7Ar34Fr3991i2pz+teF3rw9u3LuiUikpL9+8Ox41lnZd2S4RsxAs48U+GriBS+ZPhWrYJdu+ANb8i6JfV5wxvCqFv1fom0jJUr4aWXin/s+PrXh7FrumC7WBS+ZPjuuy88n312tu2oV9z+++/Pth0ikpq4t6jIPV8Q2n/w4KFrn6QYFL5k+O67D449FubOzbol9Zk2DWbPhl/+MuuWiEhKHngAJk8O//SL7Mwzw/MDD2TbDqmNwpcMjzv85CdwzjnFnNl+oDe/GX72s3AIKSJNb/ny0GtU9PLV2QnHH69xX0Wj8CXD09UFGzbAuedm3ZJkvPWt0NuryVZFWsC2bbB6dfHHe8Ve/3qFr6JR+JLhueee8NxM4QsO7ZeINK14eGfRx3vFzjoLNm6EtWuzbolUS+FLhufuu2HmTJg3L+uWJGPWLJg/P+yXiDS1H/4Qxowp/rVCsfgY+Ic/zLYdUj2FL6nd3r0hpLz97cUfMFHq7W8PPV+6Zlukqd19dxjmecQRWbckGSedBNOn69ixSBS+pHY//Sns3g0XXph1S5J14YUhWOrwUaRprV8fbkZ93nlZtyQ5ZmF/fvSjMPe15J/Cl9Tuzjth7NhD46SaxTnnhHt1fPvbWbdERBokPrZqpvAFcP754UIC3eexGBS+pDb79sF//RcsXhwGTTSTkSPh938fvvWtMPW1iDSdu++GKVPglFOybkmyzj039IDp1GMxKHxJbe6+G7ZuhT/6o6xb0hiXXRZumfS972XdEhFJ2IEDoefrvPOaa7gqQEcHnHGGwldRKHxJbb70pTCrX7P12cfe8haYMQNuuinrlohIwlauDMeOv/M7WbekMd72tjDTva4Zyj+FL6neunXw3e/CBz4Ao0Zl3ZrGaGuDq66Cu+6Cp5/OujUikqB77w3Pb35ztu1olHPOgf5++NWvsm6JVKLwJdX7138NffUf/GDWLWmsD3wgjP/6zGeybomIJOjee0PH9qxZWbekMc4+O5ToOGRKfil8SXV6euCLXwxjoop+J9pKpk6F970Pbr453EJJRArPHX7xC3jTm5pvvFds4kQ49VSFryJQ+JLqXHttuNLxox/NuiXpuOaa8Nwq+yvS5Nauhe7uEL6a2ZveBPfdF04/Sn4pfEllDzwAN94If/ZncMIJWbcmHXPmwF/9FXzlK/Czn2XdGhGpU9wb1Arha/fucHGB5JfClwxtxw5497vDIImPfzzr1qTrox8N9668/PJwiZSIFNa998L48c03v9dAcbjUqcd8U/iSwe3dC5deGvrrv/rVMPt7Kxk3Dr72NXj+efi939PEqyIFdu+98MY3hguam9nMmeFYWeEr3xS+pLxt28K9Dn/4w3DKsdn76gdz5plwyy1hpO4FF4QgJiKFsnUrrFrVOmXsTW8K4cs965bIYKoKX2a2yMxWm1mXmX24zPujzez26P3lZjan5L1rouWrzez8arcpGTl4EL7zHXjta8MNtL/8ZXjve7NuVbaWLAk9YMuXh0uJbr89/J6kEFS/5L77wnMrha/ubnjuuaxbIoOpGL7MrA34PHABsAB4l5ktGLDalcA2d58HXA9cF312AbAEOBlYBHzBzNqq3KakxR2eeAKuvz4MiLj44nDj7J//XMEr9q53wcMPh/78JUvgVa+C//k/4fHHdXiZY6pfAqEXaORIeN3rsm5JOuKQ+YtfZNsOGVx7FeucCXS5+xoAM7sNWAz8pmSdxcAnotd3AJ8zM4uW3+bue4Fnzawr2h5VbHP4fvObQ7OTl/7HmObrLL97sNcHD4bLYHbsCI/eXnjqqfDYtSusc8YZYXzXH/5hqFZyyEknhd6vb34zTMD6N38THkceGa4CnT8fJk8OY+MmToSjjoL29jDIpK3t8NcjGnTGvxETGCW9zeOOS3PUc+Hq165d8OMfh3+6pQ945bKsHkVry49/DAsXwhFHJPEnlH8nnxzK0Kc/HU5gmA3+gKHfr/WR5+0lsa3Ro2HRovr/jKoJX9OB9SU/bwBeP9g67t5vZjuASdHyBwZ8dnr0utI2ATCzq4CrAGZVOy3xV78K//RP1a3biszCZT/HHBMCwxVXwKtfHe7X2OwTqNarvR3e+c7wWL8+3MX217+G1avhwQfD4JIdO9QbNpS/+IvQy5qOTOvXcGzYEK7vaDZJ/odc66O9Pcyb3CpGjAh3Sbv9dvjRj7IL381o0iTo66t/O9WEr3KHvQN/rYOtM9jycof9Zf+o3P0G4AaAhQsXVvfHefXV4Sq9l1tn6b1O+/tqfX3kkaFHplE9L61k5ky48spXLo97GHftCjMdHjhw6BH/3IjKVJRtTp6c/DYHl2n9Gs7B49y54Qx3Wj0LjXqUtlPS9y//Eh5Zy7pHNeltJnW1bDXhawMws+TnGUD3IOtsMLN2YAKwtcJnK21z+KZNCw+RLIwYEXoWx4/PuiWScf0azsHjmDHheheRZqAAXl413R8PAvPNbK6ZjSIMQF06YJ2lwBXR60uAe9zdo+VLoquJ5gLzgV9VuU0RkXqpfolI7lTs+YrGQFwN3AW0ATe7+yoz+ySwwt2XAjcBt0YDUrcSihHRet8gDETtB/7U3Q8AlNtm8rsnIq1M9UtE8si8QKPiFi5c6CtWrMi6GSKSEjN7yN0XZt2OJKh+ibSewWqYRl2LiIiIpEjhS0RERCRFCl8iIiIiKVL4EhEREUmRwpeIiIhIihS+RERERFKk8CUiIiKSokLN82VmvcDaKlfvABK4/WXuaT+bRyvsI9S2n7PdvbORjUlLjfULWuPvQyvsI2g/m0mt+1i2hhUqfNXCzFY0y+SMQ9F+No9W2Edonf2sVyv8nlphH0H72UyS2keddhQRERFJkcKXiIiISIqaOXzdkHUDUqL9bB6tsI/QOvtZr1b4PbXCPoL2s5kkso9NO+ZLREREJI+auedLREREJHcKH77MbJGZrTazLjP7cJn3R5vZ7dH7y81sTvqtrF8V+/leM+s1s0ejxweyaGc9zOxmM9tsZo8P8r6Z2Wej38Gvzez0tNtYryr28S1mtqPkz/HatNuYBDObaWY/MbMnzGyVmf15mXUK/+dZL9Wvl99X/SqIVqhhqdQvdy/sA2gDngGOA0YBjwELBqzzJ8AXo9dLgNuzbneD9vO9wOeybmud+/lm4HTg8UHe/13gB4ABZwHLs25zA/bxLcD3sm5nAvs5FTg9en0U8FSZv7OF//Os83ek+nVoHdWvgjxaoYalUb+K3vN1JtDl7mvcfR9wG7B4wDqLgVui13cA55qZpdjGJFSzn4Xn7j8Htg6xymLgKx48AEw0s6nptC4ZVexjU3D3Te7+cPR6F/AEMH3AaoX/86yT6lcTaYX6Ba1Rw9KoX0UPX9OB9SU/b+CVv6CX13H3fmAHMCmV1iWnmv0E+IOo+/MOM5uZTtNSVe3voejONrPHzOwHZnZy1o2pV3Sq7LXA8gFvtcqf52BUvw6n+tU8mqaGNap+FT18lTsCHHj5ZjXr5F01+/BdYI67vxr4EYeOlptJM/xZVvIw4XYUrwH+Hfh2xu2pi5kdCXwT+At33znw7TIfabY/z6Gofh2i+tU8mqaGNbJ+FT18bQBKj5BmAN2DrWNm7cAEitdlWnE/3X2Lu++NfrwROCOltqWpmj/vQnP3ne6+O3q9DBhpZh0ZN2tYzGwkoXB9zd2/VWaVpv/zrED1K6L61TyapYY1un4VPXw9CMw3s7lmNoowIHXpgHWWAldEry8B7vFotFyBVNzPAeeaLyKco242S4HLo6tMzgJ2uPumrBuVJDObEo/pMbMzCf9Gt2TbqtpF+3AT8IS7f2aQ1Zr+z7MC1a+I6lfzaIYalkb9ak+gnZlx934zuxq4i3BFzc3uvsrMPgmscPelhF/grWbWRThiXJJdi4enyv38MzO7COgn7Od7M2vwMJnZ/yFcKdNhZhuAjwMjAdz9i8AywhUmXcCLwPuyaenwVbGPlwAfMrN+4CVgSQH/swV4I/AeYKWZPRot+wgwC5rnz7Meql+qX9m0tD4tUsMaXr80w72IiIhIiop+2lFERESkUBS+RERERFKk8CUiIiKSIoUvERERkRQpfImIiIikSOFLREREJEUKXyIiIiIpUvgSERERSdH/AxSftg1rnh14AAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "I1_hat[0] = 0\n", "I1_recon = cdt.inverse(I1_hat, I0, x)\n", "\n", "# Plot I1 and I1_recon\n", "fig, ax = plt.subplots(1, 2, sharex=True, sharey=False, figsize=(10,5))\n", "ax[0].plot(x, I1, 'r-')\n", "ax[0].set_title('Original signal')\n", "\n", "ax[1].plot(x, I1_recon, 'b-')\n", "ax[1].set_title('Reconstructed signal')\n", "#ax[1].set_yticks([])\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Translation\n", "Generate a second signal $I_2$ which is a shifted version $I_1$, i.e. $I_2 = I_1(t-\\tau)$. Then convert the signals into PDFs and compute CDT for both signals" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "tau = 0.5\n", "I1=1/(sigma*np.sqrt(2*np.pi))*np.exp(-((x-mu)**2)/(2*sigma**2))\n", "\n", "I2 = np.interp(x-tau, x, I1)\n", "\n", "# Convert signals to strictly positive PDFs\n", "I1 = abs(I1) + epsilon\n", "I1 = I1/I1.sum()\n", "I2 = abs(I2) + epsilon\n", "I2 = I2/I2.sum()\n", "\n", "# Create a CDT object\n", "cdt1 = CDT()\n", "\n", "# Compute the forward transform\n", "I1_hat, I1_hat_old, xtilde = cdt1.forward(x0, I0, x, I1, rm_edge=False)\n", "I2_hat, I2_hat_old, xtilde = cdt1.forward(x0, I0, x+tau, I2, rm_edge=False)\n", "\n", "#Plot the signals and CDTs\n", "fig, ax = plt.subplots(1, 2, sharex=False, sharey=False, figsize=(15,7))\n", "ax[0].plot(x, I1, 'b-')\n", "ax[0].plot(x, I2, 'r-')\n", "ax[0].set_title('Original signals')\n", "ax[0].set_yticks([])\n", "ax[0].legend([r'$I_1$',r'$I_2$'])\n", "\n", "ax[1].plot(xtilde, I1_hat, 'b-')\n", "ax[1].plot(xtilde, I2_hat, 'r--')\n", "ax[1].set_yticks([])\n", "ax[1].set_title('CDTs')\n", "ax[1].legend([r'$\\hat{I}_1$',r'$\\hat{I}_2$'])\n", "\n", "#ax[2].plot(xtilde, f1_hat, 'b-')\n", "#ax[2].plot(xtilde, f2_hat, 'r--')\n", "#ax[2].set_yticks([])\n", "#ax[2].set_title('Transport map')\n", "#ax[2].legend([r'$f_1$',r'$f_2$'])\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Scaling\n", "Generating a scaled version of $I_1$, i.e. $I_2 = I_1(\\alpha t)$, and computing CDTs of both signals." ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1YAAAE/CAYAAABFOFLQAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nOzdeXxU5dn/8c8JJAQI+74lYQ/IJkuQRUGRTVGp1brXuj1ura3d1NandrXW+mvtYtVaW21FrUXF7VERFKggBFAkIHtCQtiTIGsCWc7vj2uGJJCNZGbOLN/36zWvk8ycmXMFkcx37vu+bsd1XURERERERKTh4rwuQEREREREJNIpWImIiIiIiDSSgpWIiIiIiEgjKViJiIiIiIg0koKViIiIiIhIIylYiYiIiIiINJKClYQ9x3F+5DjO3wJ9bj1ey3Ucp98ZPuc6x3HmB+L6dVxnsuM4ecG+joiIiIjUj4KVhJTjON9wHCfTcZxjjuPscRznScdx2tb2HNd1H3Zd99b6vP6ZnBsMruvOcV13mlfXFxERaSjHca51HGeV4zhHHMfZ7TjOu47jTHQc56eO45Q4jnPYd9vsOM6fHcfp5nvedb7nHHEcp8hxnPJK3x/x+ucSCRUFKwkZx3G+B/wG+AHQBjgHSAE+cBwnoYbnNA1dhSIiIrHJcZzvAo8DDwNdgGTgL8BlvlP+7bpuK6A98BWgK7DacZxuvg8Vk1zXTQJmArv83/vuE4kJClYSEo7jtAZ+BnzLdd33XNctcV13O/A1LFxd7zvvp47jzHUc5wXHcQ4B3/Dd90Kl1/q64zg5juMUOI7zv47jbHcc58JKz3/B93WqbzrfjY7j5DqOk+84zo8rvU664zifOI7zpe+TuT/XFPCq+Xm+4ThOlu+Tu2zHca6rdP/Hlc6b5jjOJsdxDjqO8xfHcRY7jnNr5XMdx3nMcZwDvteZWem5NzmOs8F3jSzHcW6vpZ77HMfZ6Tt3k+M4U+rzc4iIiDiO0wb4OXC367qvua571Pd7+i3XdX9Q+Vzf/euBq4D9wPfqeG39fpKYoWAloTIeSAReq3yn67pHgHeBqZXuvgyYC7QF5lQ+33GcwdgnaNcB3bCRrx51XHsiMBCYAvzEcZxBvvvLgHuBjsA43+N31fWDOI7TEvgjMNP36d14YE0153X0/RwPAB2ATb5zKxvru78j8CjwrOM4ju+xfcAsoDVwE/B7x3FGVnOdgcA3gTG+eqYD2+v6OURERHzGYb+jX6/vE1zXLQPeAM6t6Rz9fpJYo2AlodIRyHddt7Sax3b7Hvf7xHXdea7rlruuW3TKuVcAb7mu+7HruieAnwBuHdf+meu6Ra7rfg58DgwHcF13teu6y13XLfWNnj0NTKrnz1MODHEcp7nrurt9n96d6iJgve/Tv1IsjO055Zwc13Wf8f2Ceh4Li1189b3juu421ywG5lP9L7AyoBkw2HGceNd1t7uuu62eP4eIiEgHav4dXZtd2NTAmuj3k8QUBSsJlXygYw1rprr5HvfbUcvrdK/8uOu6x4CCOq5dOcwcA5IAHMcZ4DjO274mGoeweeUdq3uBylzXPYpNgbgD2O04zjuO46TVo1YXOLWT355Kjx/zfemvb6bjOMsdxyl0HOdLLKidVp/ruluB7wA/BfY5jvOy4zjd6/o5REREfAqo+Xd0bXoAhTU9qN9PEmsUrCRUPgGOA5dXvtM3rW4msLDS3bWNQO0GelZ6fnPsk7aGeBLYCPR3Xbc18CPAqf0pvgJd933XdadioXAj8Ew9anUqf18bx3GaAa8CjwFdXNdtC/xfTfW5rvui67oTsfVqLtYkREREpD4+AYqB2fV9guM4ccAlwH9rO0+/nySWKFhJSLiuexBrXvEnx3FmOI4T7zhOKvAfbBTnX/V8qbnAJY7jjPc1mvgZ9QxD1WgFHAKO+Eac7qzPkxzH6eI4zqW+UHgcOIJNdzjVO8BQx3Fm+z4FvBvrolQfCdj0if1Aqa+pRbVt3B3HGeg4zgW+MFYMFNVQj4iIyGl8v6N/Ajzh+53Vwvd7eqbjOI9WPtd3/yDgJex32u9qel39fpJYo2AlIeO67qPYqNBjWKBZgU2Vm+K67vF6vsZ64FvAy9iI0GGsyUO9nn+K7wPX+l7jGeDf9XxeHNYFaRc2BWIS1TS9cF03H7gSa0pRAAwGVtWnVtd1DwP3AK8AB3x1vlnD6c2AR7DplHuAztifs4iISL24rvs74LvAg9iHejuwxhPzfKdc5dieVF9iv48KgFGu6+6q5WX1+0liimPLPkQik+M4Sdg/8v1d1832up7a+KZN5AHXua77kdf1iIiIiEjgaMRKIo7jOJf4pim0xEa/MgnT9q2O40x3HKetbxqEfw3Xco/LEhEREZEAU7CSSHQZNg1vF9AfuNoN36HXccA2bBrEJcDsalrIi4iIiEiE01RAERERERGRRtKIlYiIiIiISCMpWImIiIiIiDTSGe2w3bFjRzc1NTVIpYiISLhYvXp1vuu6nbyuI1Lo96OISOyo6XfkGQWr1NRUVq1aFbiqREQkLDmOk+N1DZFEvx9FRGJHTb8jNRVQRERERESkkRSsREREREREGknBSkREREREpJHOaI2ViIjUrqSkhLy8PIqLi70upV4SExPp2bMn8fHxXpcSdfR3QUQktihYiYgEUF5eHq1atSI1NRXHcbwup1au61JQUEBeXh69e/f2upyoo78LIiKxRVMBRUQCqLi4mA4dOoT9G2kAx3Ho0KFDxIyoRBr9XRARiS0KViIiARYJb6T9IqnWSBRJf76RVKuISDhSsBIREREREWkkBSsREZEolZmZSdeuXVm3bp3XpYiIRD0FK5EalJTAm2/C++9DebnX1Yicmaeffpo77rjD6zLEYw8//DDLli3j4Ycf9roUEZGop66AItU4fBimTYPly+37yy6DuXOhqf6PkQixdu1ahg4d6nUZ4rGXXnoJgBdffNHjSkREop9GrESq8b3vwcqV8I9/wG9+A2+8AY884nVVIvWXmZnJsGHDvC5DREQkZujzd5FTrF0Lzzxj4eob37D7MjIsWN12G3Tp4ml5EkG+8x1YsyawrzliBDz+eN3nrVu3TiNWAti00M8++4ynnnrK61JERLyzejU89xw8+GDQ3sxpxErkFL//PbRoAT/+ccV9Dz8Mx47Bk096V5dIfe3YsYOkpCQKCwu55ZZbuOKKK7wuSTykaaEiIsDmzfDnP8OXXwbtEhqxEqmksBBefBFuvRXatau4f8AAW3P17LP2QYfWWkl91GdkKRj8b6T79OnDs88+q2AV4zIzM7n66qu9LkNEJOppxEqkkjfegBMnKqYAVnbbbZCXB4sXh7wskTOi9VVSmaaFioiEhoKVSCVz50JqKoweffpjM2dC8+Ywb17IyxI5I5mZmXojLUDFtNC2bdt6XYqISNTThCYRn0OH4IMP4J57wHFOf7xFC5gxw4LVH/9Y/Tki4WDOnDkAFBQU8OMf/5jPPvuMX//61zzwwAMeVxa7vGpkUnl9VVZWFr/61a84ePAgc+fODWwxIiLhLi4OEhKCe4mgvrpIBFm82DYFvvjims+59FKbDpiZGbq6RBqqQ4cOPPXUU2zbtk2hKkZVnhbqX3MnIhKTrroKjh+HgQODdgmNWIn4LFwIiYkwblzN50yZYsePPgItYRGR+vKqkUlmZiYX1/ZpkYiIBIxGrER8PvwQJkywcFWTXr2gb187V0Qk3M2ZM4drr73W6zJERLy3fLl1J9u9O2iXULASAfbts+l9/hGp2lxwgU0bLCsLfl0iIoFSUFDAHXfccXLNnYhITMnKguefh8OHg3YJTQUUAZYutePkyXWfO3kyPPMMrF0LZ58dzKpERALHv+ZORESCQyNWIsCKFRAfX7+g5F+DlZER3JpEREREJHIoWIlgIWn48NrXV/mlpkLHjhbGRERERERAwUqEsjJYtQrS0+t3vuPYuRqxEhEREYkQCQnQvr3tZxUkClYS8zZutHWM9Q1WAGPHwhdf2KbCIiIiIhLmrrgCCgqgX7+gXULBSmKef+Rp7Nj6Pyc9HVzXRrpERERERBSsJOatXg2tWsGAAfV/zqhRdlyzJjg1iTTW008/zR133OF1GSIiIuFhyRL46ldh166gXULBSmLe2rUwbNiZTbnt1Am6dbPnioSjtWvXMnToUK/LEBERCQ87dsBrr8HRo0G7hIKVxDTXtXDUkPefw4bB558HviaRQMjMzGTYsGFelyEiIhIztEGwxLS8PDh40ELSmRo2DP7wBygpsT2wRE7zne8Efr7oiBHw+ON1nrZu3TqNWAmZmZlMnTqVBQsWMGTIEK/LERGJahqxkpjmn8rX0BGrEydg8+bA1iTSWDt27CApKYlFixZx2223cdlllzF//nyvyxIPPPzwwyxbtoyHH37Y61JERKKeRqwkpmVm2rEhwWr4cDuuXQtnnRW4miSK1GNkKRj866tmz57N7NmzOXDgAN///veZNm2aJ/WId1566SUAXnzxRY8rERHxWMuWkJICTYMXfzRiJTFt7VpIToY2bc78uQMH2hRArbOScHPq+qpf/vKX3H333R5WJCIi4rHZs2H7dujdO2iXULCSmJaZ2bD1VWAbeKelVYx6iYSLzMxMhg4diuu63HfffcycOZORI0d6XZZ4RK33RURCQ8FKYtaJE7BxY8OmAfoNHmyvIRJO5syZw7XXXsuf/vQnFixYwNy5c3nqqae8Lks8otb7IiLAwoUwbRrs3Bm0S2iNlcSsrVuhtLRx66PS0uCVV6C4GBITA1ebSCDcc8893HPPPV6XIR7LzMzk6quv9roMERFv7d4NH3wARUVBu4RGrCRmbdpkx4EDG/4aaWm2F9aWLYGpSUQk0NR6X0QkNBSsJGb5g9WAAQ1/jbQ0O2o6oIiEI3/r/bZt23pdiohI1NNUQIlZmzZBt27QunXDX2PAAHAc2LAhcHWJSJSaPPn0+772NbjrLjh2DC666PTHv/ENu+XnwxVXVH1s0aI6L1l5fdW8efN455132LdvH3fffbfa74tITMnNhWSgoAA69AvONRSsJGZt2tS4aYAALVrYlggasRKRcFS59b72NRORWJZ9oC0HGUKLYwl0CNI1FKwkZm3aBFde2fjXSUtTsJKqXNfFcRyvy6gX13W9LiF21DbC1KJF7Y937FivEapTZWZmcvHFF1e5T/uaiUgs2jVyFpOZxcbuwbuGgpXEpPx8KCxs/IgVWLBasgTKyyFOqxZjXmJiIgUFBXTo0CHsw5XruhQUFJColpZRa86cOSe/dl2X+++/X/uaiYgEiYKVxKRAdAT0S0uz5RF5eZCc3PjXk8jWs2dP8vLy2L9/v9el1EtiYiI9e/b0ugwJAf++ZgcPHmTr1q3aNFhEYkq3Ne+yjJ/TdO9cGNgjKNdQsJKYFOhgBTYdUMFK4uPj6d27t9dliJxG+5qJSCxrdmg/41hO1onjQbuGJi5JTNq0CRISIDW18a/Vz9dZZtu2xr+WiIiIiEQmBSuJSZs2WSBq0qTxr9WtGyQmwtatjX8tEREREYlMClYSkzZvbtzGwJXFxUHfvhqxEhEREQl3wewrpWAlMae8HLKyKqbwBUK/fhqxEhEREQlXxa06sYxxuAnNgnYNBSuJObt3w/HjNsoUKH37WlgrLw/ca4pI5IukfcIiqVYRkTO1e8RMJrCM0i7B6QgIClYSg/xT9vr0Cdxr9usHRUUW2kREoGJPs0gILNrTTESk8dRuXWJOVpYdAxms/KNfW7dCj+B9ECIiEUR7momIhI8eq99kLT+m6Z53YUBw/q1TsJKYs22bNZxISQnca1ZuuT5pUuBeV0Qil/Y0ExEJH/FHDjCUdWSVlATtGpoKKDEnK8s28o2PD9xrJidD06ZqYCEiIiISztQVUCSAsrICOw0QLFSlpqrluoiIiEisUrCSmLNtW2A7Avqp5bqIiIhI7FKwkphy+DDs3x/4ESuwsLZ1K0RAAzARERGRmFLUrjvvMw03sXnQrqFgJTElO9uOwRqxOnQICgoC/9oiIiIi0nB7hk5lBu9T1qlr0K6hYCUxJRh7WPn5m39t3x741xYRERGR8KZgJTElGHtY+aWm2lHBSkRERCS89Foxl2xSabp7R9CuoWAlMSUrC9q1s1ug+ffF8k83FBEREZHw0LT4CKnk4JSXBe0aClYSU7ZtC85oFUDbtnbTiJWIiIhI7FGwkpgSjD2sKuvdW8FKREREJBYpWEnMKCuz0BPMYJWaqmAlIiIiEosUrCRm7N4NJSUV3fuCwR+stJeViIiISPg42jGFV7kct3mLoF1DwUpiRm6uHZOTg3eN1FQ4dgzy84N3DRERERE5M3sGnc8VvEpZh85Bu4aClcSMUAUrUGdAERERkXDkOMF7bQUriRk5OXYMZrDSJsEiIiIi4Sd12Yvk04Gmu3KDdg0FK4kZubm2f1WrVsG7hn8vKwUrERERkfDRpPQ4HSgM6kJ4BSuJGbm5wR2tAmjdGtq3V7ASERERiTVNvS5AJFRycytGlOpUXg5vvw0LFkDTpnDJJXD++fV6qlqui4iIiMQeBSuJGTk5cN559Thx/3648kpYvBiSkmwDrN//3u577jloUXubztRU2LAhEBWLiIiISECEYC8cTQWUmHDwoN3qnAp46BBMmQIrVsAzz8CBA1BQAA8/DHPn2shVSUmtL9G7t/ayEhEREQknhzr34zlupLxl8BbbK1hJTNixw461BivXhRtvtOGmN9+EW2+1aYDNm8MDD8Czz8KHH8J999V6rdRUKCqCffsCVr6IiIiINMK+tPO4iedw27UP2jUUrCQm+Fut17rG6uWXYd48+PWvYerU0x+/6Sa46y6bFrhsWY0v49/LSuusRERERGKHgpXEhDo3Bz56FO69F8aOtWNNfvMb6NkT7rjD1l5VQ5sEi4iIiISXQe8/TjHNcA4fDNo1FKwkJuTmQnw8dO1awwl//CPs3WujUU2a1PxCSUnw2GOQmQmvvFLtKf7w5p9+KCIiIiLeanKiiGacgPiEoF1DwUpiQm6uDTTFVfc3/uBBePRRmDULxo2r+8WuvBKGDIGf/azaUavWraFt24pRMhERERHxVpPS4wC4Cc2Cdg0FK4kJOTm1rK967jn48kt46KH6vVhcHPzkJ7BpE7z1VrWnJCcrWImIiIiEi7iS45TQtIZP2QN0jaC9skgYyc2tYX1VeTn8+c8wfjyMHl3/F/zKV6BXL3tuNRSsRERERMJHk5JiiknEcYJ3DQUriXqlpbBzZw3B6r33YOtWuOeeM3vRpk3hzjth4cJqdwNWsBIREREJH/v6T+AJ7g7qNRSsJOrt2mUDU9UGq2eesY4Wl19+5i98662QkAB//etpDyUnQ2EhHDly5i8rIiIiIoGVM+YKHuCRoF5DwUqiXo17WBUWwjvvwLXXWsvAM9WpE1x8Mbz0kg2LVaLOgCIiIiLho2nRYeKofqucQFGwkqhX4x5W//kPlJTA9dc3/MWvv97atC9cWOVu/7U0HVBERETEexf9ajxzuSKo11CwkqjnDze9ep3ywL/+BWedBSNGNPzFL77Yequ/8EKVuxWsRERERMKE69KyIJcdnPpmMLAUrCTq5eRAhw7QsuUpdy5dCtddR6PawzRrZvtavf46FBWdvLtbN9tnWMFKRERExGMHDpBQdIhsegf1MgpWEvVyc6tZXzVvnh2vvLLxF7jiCjh6FBYsOHlX06bQo4eClYiIiIjntm0DYDuparcu0hjV7mH1xhs2DbBfv8ZfYPJkaN26Iqz5qOW6iIiISBj47DMAPmd4UC+jYCVRzXVt1l+VYFVYCEuWwGWXBeYiCQm21urNN6GsottMcnJFR0IRERER8cjo0Xx22U81FVCkMb780vaSqhKs3nnHAlCgghXAV74C+fm2bssnORny8qpkLREREREJtZEj+Xz2Q0AQ5wGiYCVRzj8Vr8oaqzfegO7dYfTowF1oxgwbuXrjjZN3JSdbN/e9ewN3GRERERE5A7t2waJFOKUlQb+UgpVEtdP2sDpxAt57Dy65BOIC+Ne/VSs47zx7bapeU+usRERERDzy97/D+efT4sDOoF9KwUqi2mnB6pNPrIPfjBmBv9j06fDFF7BjR5VrKliJiIiIeKCsDJ55BqZM4UjHVKBxu+zURcFKolpOjs3Q69zZd8cHH9gGU+efH/iLTZ9ux/nzAQUrEREREU+9/LK9EbvrrpBcTsFKopq/1frJWX/z58PYsdCmTeAvNmSIrd16/33ALtG6tYKViIiISMgdPw7/+79w9tkwe3ZILqlgJVGtyh5WhYWwahVMmxacizmOvfaCBSdbAWovKxEREREPbN0KxcXw298Gdl19LRSsJKpV2cNq4ULb2Grq1OBdcPp0OHAAVq4EFKxEREREPHHWWRaupkwJ2SUVrCRqnTgBu3dXClYffGBz89LTg3fRCy+044IFgIKViIiISEht3AgPPQTl5dCiRUgvrWAlUWvnThugSknBvpg/Hy64AJo2Dd5FO3aEYcNg8WLAglVBgTUiFBEREZEg2rjRPuR+6qnTNhItL7ejugKKNECVVus5OXYLxXDw5MmwdCmcOHFytMzXgV1EREREgmHVKpg0CUpKbOZQt25VHj5+3I6JicErQcFKolZOjh2Tk4ElS+ybSZOCf+FJk6CoCFauVMt1ERERkWB74QWYOBGaN7f3fEOHnnZKcbEdFaxEGsAfZnr1wv4na9fOFjIG23nn2XHxYgUrERERkWDr2NFmDK1aBQMHVnuKP1g1axa8MhSsJGrl5trGwM2bY8Hq3HND026zY0f7pGTRIrp3t0sqWImIiIgESHk5zJkDjz1m38+YAe++a+/BanDggL0nTEgIXlkKVhK1Tu5htXs3bNkSmmmAfr51VvGU0L27gpWIiIhIQCxZAuecA9dfD6+/DqWldn8dXSn27YNOndS8QqRBTu5h5V9f5Z+iFwqTJ8OxY7BqlVqui4iIiDTWF1/AzJn2Qfnu3fD88/Df/9a723NuLnTvHtwSFawkKrmu/Q+UkoIFq6QkGDEidAX4Q9yiRaSkVDTSEBEREZF6KiuD/Hz7ukkTWLMGHnkENm+Gr3+93ks8XBcyM2HIkCDWioKVRKnCQhswOjliNWFCcPevOlXHjjB4MCxdSnIy5OVV7J8gIiIiIrXIy4Of/xx694Y77rD7Bg60T83vu8+3gL7+Nm+2fUVHjQpCrZUoWElU8o8Q9WtXAOvWhXYaoN/48fDJJyT3LOfECZvbKyIiIiI1eO89uPRSm3L00EMwaBDccEPF4/HxDXrZV1+140UXBaDGWihYSVTyr2lKy//YvvAqWBUWMrjJJkDTAUVERESqOH4c3nqrYvfeZcusZfoPfwjbtsH778NllzX6Ek88Aeefz8ltcIJFwUqikj9Ydc/5xD7dGD069EWMHw9A373LqtQkIiIiErPy8+Gf/4Svfc32xbn0Upg/3x67/37YsQN+/Wvo0ycgl/v5z2HXLnjwwYC8XK1CuOhEJHRyc21n7ebrMqxpRTC32a7JgAHQoQOdty0DblGwEhERkdhTXg5Hj0KrVrBhg3WQKC+Hrl0tXF1+OVx4oZ3bokVAL/3KK5bRbroJLrggoC9dLQUriUo5OZDaqwxn1SrrGuMFx4Hx42m2cimtW2vESkRERGKA69r+oR9+CAsXwkcfwRVXwFNPWQOKX/4Spk6FkSPr3dWvIZ5+Gu6+2/qXPfFE0C5ThYKVRKXcXBjfYRNsOQzp6d4VMn48vPUWw9Lyyc2teTdwERERkYjkurBnD3TrZt9PnGhrpQB69oRZsyq6RsTFwQMPBLWcvXvhnntstOqii+Cll864iWCDKVhJVMrNhdv7Z9g3XgcrYErL5byZM8u7OkREREQC4dgxazCxbBksXWrHhARbyOQ4cN111snvggugf3+7LwQOHoQ//AF+9zsoKrKBsfvvt+2vQkXBSqLO8eP2wcnQXhnQurWtdfLK6NHQtCnnlC/jz7kKViIiIhJByspg40ZYvRquugqaNYMf/cgSDNjUvssus/l2ZWW2Z+hdd4W0xC++gGeegeeegy+/tHIeeQTS0kJaBqBgJVFoxw479t6fAWPGBHX+bp1atICRIxm8fykFBbZ2s2VL78oRERERqdW6dfC3v9mo1Jo19uYF4KyzbIfdm26CKVNg3Djo6M0yh5wceP11+M9/bMAsPh6+8hXbO3jkSE9KAhSsJArl5kIzimm/43O45gdelwPjx9P9iaeI5wQ7diR48gmKiIiIyElHj1qAysyEtWstQP3v/1pTiT17bAjo7LPhllts9s2oUTY6BTB8uN1CqLgYli+3fhhvvw2ffWb3Dx0Kv/2t9Snr3DmkJVVLwUqiTm4ujGANcWWl3q6v8hs3jqaPP85QMsnJGaVgJSIiIqFRXg5ZWRaekpMtJG3ZYiHJde2cpCRLKKWl9v3kyXDoUGgXJ53i4EEbMPvkE2squGyZhau4OBg7Fh591Eao+vXzrMRqKVhJ1MnNhXTCoHGFn6+GdDLIzR3lcTEiIiISdcrL4cgRW1teXg533AGff26jUseO2Tl3323Bqndv+NnPLEwNGwapqVWXTTQNbTw4csTKXLUKMjLstmlTxePDh8Odd8L558N550GbNiEt74woWEnUycmBixIzoEMP6N7d63IgJQW3c2fO2b+Crbl3el2NiIiIRLp33rH5cBs22G3TJpg2zRYexcXBypXQrh3cdltFgBo82J7btKlN+wux48etzHXrqt6ysyvO6drVPo++4QZbJj96NLRvH/JSG0zBSqJObi6MISM8RqsAHAcnPZ3x72XwoTYJFhERkbocOGBT9jZvrghPTZva5kxgvcSXL7fpfYMGwaRJ1pnPz78IKcRKS+192JYtFbetW+2YlWWNA8F+lIED7a3azTfDkCEWonr0CFl39qBQsJKo82VWIcnFWyD9Zq9LqZCeTt+336Eg6yAQxmPYIiIiEhqHDlVNILt2wZNP2mO3324t78BSSL9+ljz8Xn4ZOnSw9VEh5LqQn2+zg3JyLETl5FSEp+xsKCmpOL9lSyt9+HC48kobPBsyxHbCSUgIaekhoWAlUcV1ocuOVXPIUeQAACAASURBVPZNuIxYAYwdSxwubbeuAqZ4XY2IiIiEwpEjFaljyxb47nchMREefBB+9auq5/bqZeuhWrSAe+6B66+3DXb79bN+4pWlpASl3BMnLN/t2FERnirfcnNt893KkpKgb1+bbXj55Vayv+yuXSN7BOpMKVhJVNm3D0aUZOA6Ds6oMGoU4fuUKXVfBmVlU7xstCMiIiKB4rqwd6/Nc8vKgunToVMnm7L3ne/A7t1Vz7/8ctu59sILoVUrSyADBlgyad684ryJEwNaZlmZvUfatQt27rRj5Zv/vvz805/bubPluKFD4eKL7evKt7ZtYys81UbBSqKKvyPgkR5ptAqntjHt2/Nl5/6M2pfB3r3h0VNDRERE6uHYMZvjlp1twzLJydb/+3/+x8JU5SGc996zcNWjhx39wzf+IRz/1L3Jk+3WCK4Lhw9brtu714KT/7hnj2U6f2Das8eaBVYWFwddulipqakwfry9P+ne3X5E/61y3pPaKVhJVMnZ7jKRDErOnuF1Kac5etZYxu5bSG6OS/fu+mhHREQkLJSXWwrJyrJU0bevhajrr7f79uypOPeZZ+DWW61VXb9+1omvT5+KW+/edt6ECVWbSdRTWRkUFFQNSdUFJ/+xuLj61+nQwQJT9+6WBf2ByX9f9+42EhXizupRT3+cElUOrN1BV/Zy7LwwWl/l44xNp/tHL7Dqs50wrqfX5YiIiMSGsjILTjk5ts/T0KG29umKK+y+7GzrBQ7w0EPw05/aZkkJCXDRRVWDU1qanZeWBvPm1XpZ17XBrvz8028FBafft28f7N9/+sgS2BKrzp3t1qWLdU73f33qsVMnBSav6I9dokqT1bYxcPNJ4Res2kxNh0egfHkG3KVgJSIiEhAnTlR0W2jWrGKkaOZM2zhpxw7rAw5w003w979bu7pDhyyhXHJJRXAaMsTOa98ePvqoymWOHfMFoqz6BaX8/Iq8dqq4OLtEx45269MHxo2rPih16aJ1TJFCwUqiSrstGZxwEkgYPszrUk7TcvxwThBPy/UrgMu9LkdERCQyHD1qoWn7dhvOmTXL7r/qKvj4YxuNcl27b+pUmD/fvm7dGs45x85LTYWUFNyBaRQdg8JChwNPL6OwEAoLbduowrVQuMj3te/+yoHp1G54fo5je/H6Q1JKCowaVfF9hw4VX/tvbdtauJLoomAlUaXXngyyWp9NWjhujpCYyObmI+iak+F1JSIiIuHBdS3J+Pt5HzoEX/+6PXb77fDqq5Zu/AYOhFmzKCuDEx17UnLONA63T6GwdQr7m6ewo1k/dvzSF4ya/9tC08dQ+GZFgKppFAlsCl27djaa1K6drUkaPrzmgNSxo52nbr8CClYSTcrKSDuyipVDbibN61pqsL1zOufveN7me+tfYRERiXbl5dZpwR+cdu6Ee++1YZ7778f9y19wDh8+eXppYkv+VXoDhQccBm0bSFKXK9jZPYXtbgpbS1LYUJTKhnZw8CC47v+r8bJJSRXhqH17GDSo4uvK95/6fVKSptxJwylYSdQ4tnoDSRzl8KDwW1/lV9A3nZY5T8CGDRXzuEVERCJVaSnluXkc/SKHYxtzKN2ynY0z72V/cSuSX3mM9Dd/TNOyE1WeMv6Zm9h+sB3T84cyouQmckghhxS2k0pOcQoFt9h5TZp897Qw1Kc9jK4mHFX+um1b6zshEmoKVhI1vpyfQQus+164OnH2WPgQihevIFHBSkREwoTr2hqik+uNfMeDe4ooy87Fyc0hYXcOzffn8FqH/2FTUTKTc57nkf0304RyWgGtfK81/a+Xs54hTGEE0/g2uxNSOdA6hcPtUyjunEy3zq05qz20a3cdRe2vI609jKsmJLVqpdEjiSwKVhI1Sj/J4ABtaT+2v9el1Cjp7P58SRvKl6wk8e5bvC5HRESiTGmpBaLKDRgqB6VTjyf2HySpIIe2B3PoXmpjRy9yLWs4m+m8x3vMrPr6NOGjtMl0TE0mvtNwPtj/I453TaGsZwpO7xSa9Uvm6S6JvpB0Ie3aXajRI4kZClYSNZpnZpBBOoNTwvfjrZTecaxkDOmr1cBCRESq57pw+HDdoai6Y6XlSoBLR/J9E+3sNjA+h6VtLyavxzRGxa/lb5uHV7l2adNmnHfX2Ry59Gy6nDiLAwt+QeLAFBIHpuD0TqVp9+786eQmSSN8NxEBBSuJFkVFtM9byyrnAS7s7nUxNUtOhn8yhguyf2tzLpo397okEREJEv8GsQUFdd8qjy4dOGA9jmqSkOCbLtfOpX/LXYxskUOfpO306pFD1xM5FKZNYP+MG+jcpJCp13Su+uTEVtz54z7w7WlwuDc89aj1B/fdmnbuzNiTfcB7wcwHg/bnIxJtFKwkOnz6KU3cMrI6pYd1s71u3WBVXDpNykthzRrbDVBERMJeWZkFnvqEpMq32lp7JyVZC+8OHWxNUUrK6euMepRsp2tRNu0P59DmwHaa78+h6ZBBOPf9EFygZf+qGyx17AgzO8N1gNse9v8RevU6uY9TlZ1mW7WCH/wgiH9qIrFFwUqiQ4ZNrSvsO8bjQmrXpAnkdUuHnVjNClYiIp44dgz274d9++xY+ea/Lz+/IiB9+WXFHrSnatLEQpA/JPXuDaNHV3xf3a19e2jWDMjLg61bITsbsrLs2Kwj/Opxe/GB02HzZvvacewTujYtK75/9lkLS/5Rp5YtKwpzHPjWt4L2ZygiVSlYSXTIyCCvSTJJ/bp6XUmdmvftzv793em0cqXXpYiIRI2jR08PSbWFpmPHqn+dhATo1Ak6d7bBn969q4ah6kJSmza1dK8rKKgITst84amkBJ57zh7/xjdg4UL7Oi7ORpfOPbfi+X/4gxWVkmKPndoJ4pprGvGnJiKBpGAlUcHNyGB5WTopKV5XUrfkZPh0VTrTM9TAQkSkNiUlFoR274Y9e2q/HT1a/WskJlpQ8oeltLSK7yvf7//6jFt8HzkCmVkVo03Z2bYJ7ty59kLf+x48/3zF+Z072261rmuPP/QQ3H+/JbjkZIiPr/r6M2ac8Z+biHhDwUoiX34+TlYWK7iD/sleF1O35GRYUpzO9C3zbMJ+u3ZelyQiElIlJRaW8vIqbtWFp/z86p/frh107Wq39HSbHde5c9WA5P+6ZctG7oXkupbutm6127ZtdnziCSvk0UfhF7+oOL9VKwtJhw9D69Zw113w1a9Cnz62zqnyVD2oOjolIhFNwUoin29KXQbpXBghI1b/KfetBVu1CqZO9bYgEZEAKi6GHTssLO3cWTU8+b/fu/f09UqJiRaQunaF/v0tb/jDU+Vbly6+tUmBVF4Ou3ZVhKetW+H22y0g/f3vcOutFefGxdm0vH37LFhdeSUMGWLBqXdvmy9YOcmlh++m9SISWApWEvkyMih34ljtjiI5QkasVjHavsnIULASkYhy/Djk5sL27XbLzq769Z49pz+nXTvo0QN69oQRIyq+7tmz4uvKzeqCwnUt1W3aBFu2wKRJMHgwLFkC06dbIvSLj4fJky0onXsu/PGP0K8f9O1ro06V1zkNHWo3EYl5ClYS+TIyyO88mKN7kyIiWKWkwEHacqj7QFprnZWIhKHiYpvxtnlz1Vt2tg3sVB5tatrUPjBKTYWLL7ZjcrL1WejRw26nzn4LqiNHrNg2bSwI7dgBl15q91XuWPGHP1iw6tMHvvlNC07+8NSrFyf37hgwwG4iInVQsJLI5rqQkcGWDpfSoTTEv7wbqFcvO+Z2GcOQjAUVC5hFRELs0CFYtw7WroX16ysCVE5O1fDkn543daoFp9697ZiaasEp5PsHuq51q0hKgtJS+Pa3bSRq40abbwjWNOKxx6y1X9euNkI1cKDdBgyA7r7d5Hv2hN/+NsQ/gIhEIwUriWzbt0N+Pp92iYyOgGDrmtu1gy9apjNkzwv2JqBnT6/LEpEo5roWljIy4PPPITPTbtu3V5yTlGSZY9w4uPHGioGa/v1t8MdTH31km6qvW2cJ8Isv4KKL4OWXbchs/nxb23TBBRXhadQoe27z5vDuu97WLyIxQcFKIptvKt2iY+mkRNBMjeRkWF6eztfAfgYFKxEJoEOHYNky++fFf9u/3x5r0sRyxznnwG23VSwRSknxePB8796K4LR+vQWmJ56wx777XQtWnTvDWWdZ8ps0qeK5W7Z4U7OISCUKVhLZMjJwExP5YPcQbvuK18XUX0oKLN463N44rFwJl1/udUkiEsGKiuDjj+HDD21wZ9UqKCuzoDRokK19GjsWxoyxBnYB76p3JsrKrOve5s1wySV233XXwYsvVpzTvj1MnFjx/Usv2ZS+jh1DW6uIyBlQsJLIlpFBydCRHF4ZT+/eXhdTf336wMKFibjDh+OogYWINEBhIbz9NsybB++9Z+GqaVPr7v3AA9bUbswY20rJc0uW2LS9NWtsQdfRo5b6Dh60+dGXX27FDh1qI1JdulQdPktL8652EZF6UrCSyFVaCqtXk3/p7bCSiApWvXvb+4qioem0eG2O7aESF+d1WSIS5kpL4f334dln4a237PsePeDmm21U6txzba2UJ8rLrYFE5fmHr7xi/+BlZsKcOdZr/dZb7ThiBLRoYc/96lc9KlpEJHAUrCRyrV8PRUVs72SbL6amelvOmfCHwN090+l76EmbEqNPZEWkBkVFFqZ++1vbQ6pTJ7jnHrj6ahg92qO1Ufv32xBZu3awaJG1ND982B5r1coK839/221w113qgCoiUU3BSiKXbwrdmoTIDVabWo+hL9jPomAlIqdwXRvo+eEPYfdumDABHn8cZs2yPWxDWkhODvz3vxW3jRttL6h77rH9n264weYhpqdbd4zKo/CVN9QVEYlSClYSuTIyoH17PjvYh86dI2MPKz9/CFx7Io2LkpLsZ/n61z2tSUTCy969cP31sGCBLT966aWqjfCCLjcXvvwShg2zTXf79rXpfm3aWMK78Ua48EI7t2fPig5+IiIxSsFKIldGBqSnk73diaj1VWBrIDp1gqycJjZdZuVKr0sSkTCyfj1Mm2YNKv7yF7j99hAswzx82Kb0zZ8PH3xg66UuuAAWLrSpfS+8AIMHW1vBkO8ILCIS/hSsJDIdPWr7ncyeTfYLNvMk0vTuDdnZ2EfRf/gDHD/ucQ9kEQkHWVmWZ+LiYPlyGD48iBfbt8/2hgLrzLdggW2oO2mSpblp0yrOveaaIBYiIhL51IZMItOnn0J5OWWj0snNjayOgH4ng1V6Opw4YS2IRSSmlZTAVVfZPwkffRSEUOW69m/NQw9ZV74ePeDAAXvswQdtI6wDB+Ddd+Hee631uYiI1ItGrCQy+RpX7OoxhtLSyGpc4de7N7z2GpSNSqcJ2HTAMWO8LktEPPS3v9nmvq+8EoR+NkuX2ijU+vXWnW/CBPj1rys69YV0AZeISPTRiJVEpowMSE0l64hNYYnEEas+fezT6Z1xvWwqjjYKFolp5eXwyCMwcSJccUUAXrC4GP71LwtUAN26WeOJJ56APXuss9/3vw9t2wbgYiIiohEriUz+xhXZ9m0kBit/zdnbHZLT0xWsRGLc0qXWiK/yIFKDbNsGTz0F//gHFBTYhrwTJtinOf6QJSIiAacRK4k8+/bB9u0ng5XjQHKy10WdOX+wysrC1llt3AiHDnlak4h4Z+FC+/ds1qxGvMi3vw0DBsDvfw+TJ1szir/+NVAliohILRSsJPKsWGHHsWPJzrbtUyJx78nkZOv6dbIzoOvC6tVelyUiHlm50rqZt259hk/csAHKyuzrgQPhBz+woa+5c2HKlEYOf4mISH0pWEnkWbHC9lAZOZLs7MicBggQH2+h8GSwAk0HFIlhW7dasKq33bvhtttsX6nnn7f77rrLFmp17x6UGkVEpGYKVhJ5MjJg6FBo0YLs7MjsCOh3suV6hw7Qt682ChaJYXv2WH+JOrmutQ9MS7NA9e1vw+zZQa9PRERqp2AlkaW83ILV2LEcPw67dkXuiBVUClZgo1YasRKJSUVFtsSya9d6nPyNb9hI1ciR1jr9d7+D9u2DXaKIiNRBwUoiy+bNcPAgjB1Lbq59cBvpwWrXLuuKTHo67NhhH1uLSEw5etSOSUn1OPm22+Avf7FuF/37B7UuERGpPwUriSyVGldkZdmXkRys+vSxY04OFqxA0wFFYpDr2rHGPhNz58Ivf2lfT5wId95p3W9ERCRs6F9liSwrVkCrVpCWxtatdlckf2B7ci+rbODss60ph6YDisSsaoPVv/4FV10F774LJ06EvCYREakfBSuJLCtW2FqkuDi2boUWLeq5JiFMVdnLqkUL6+6lYCUSc/wjVqd5/3246Sbbk2r+/MjcW0JEJEYoWEnkKCqCtWth7FjAWhP36xfZW7R062Z5assW3x3p6TYVsMZ3WSISzar8e7ZlC1x5pXVBnTcPWrb0rC4REambgpVEjs8+g9LS04JVJHMc+xn80xoZMwYOHIBt2zytS0RCq9rPUlatsjD15ps2BVpERMKagpVEjkqNK8rKbPpcpAcrsDViVUasQNMBRWJUlRGra66xD1l69fKsHhERqT8FK4kcK1ZAcjJ07Upenq3hjoZg1a+fhcTSUuCss6B5c3UGFIkxVUasDh6Et96yO1u08KwmERE5MwpWEjlWrKgyDRCiI1j17w8lJbaFFU2b2qafGrESiSlV2q3/9a9w6aWwcaOnNYmIyJlRsJLIsG8fbN9+cqpctAUrOGU64KefWtoSkZjiuOXw5JMwaRIMGuR1OSIicgYUrCQyVFpfBRasmjWDHj08rClA/OGwSrAqLob16z2rSURCyz9i1XXbUtvY7vbbvS1IRETOmIKVRIYVK2zz3JEjAQtWfftCXBT8Dfa3XD/ZGVANLERiVmrmWxAfDxdf7HUpIiJyhqLgbanEhKVLYcSIk/u4REOrdT9/y/WTI1a9e0OHDgpWIjHk5IjVlv/CeedB69beFiQiImdMwUrCX0mJjVhNmABAebl1II6WYAWntFx3HBu1+uQTT2sSkdB7876l8MorXpchIiINoGAl4e/zz6Go6GSw2r3bvo22YJWd7Wu5DvazfvEFFBZ6WpeIhMbJdutxcdC+vae1iIhIwyhYSfhbutSO48cD0dUR0K9fPxuYy8313TFxoh01aiUSE1wXLuIdzvvnrXDkiNfliIhIAyhYSfhbutQ2Bu7ZE6iYMhdNweq0lutjxtieVh9/7FlNIhJaE1hK/0+et03CRUQk4ihYSXhzXQtWvmmAYHtmJiZa1ooWpwWrFi1g1KiK0ToRiWquC73YwdG2PawDqoiIRBwFKwlvubmwa9dpwWrAgOh679G1qzU8PNlyHexnzsiA48c9q0tEQieZXI627+V1GSIi0kAKVhLeli2zo299FViwSkvzqJ4gcRwbtdq0qdKdEyZYqPr0U8/qEpHQcF3oSD5Frbt4XYqIiDSQgpWEt6VLISkJhg4FoLjYuudFW7ACGDQINmyodId/lE7TAUViwmFaUdS2m9dliIhIAylYSXhbuhTOOccaOWBT5crLozdY5eTA0aO+O7p0sQ4damAhEvVcF8axnBXX/cnrUkREpIEUrCR8HT4Ma9eeNg0QojdYQTXTAZcurbTJjYhEM8fxugIREWkoBSsJXytW2PDUKY0rwJpXRBt/sKoyHXDiRMjPh82bPalJRELk2DHeZQa9Pn3D60pERKSBFKwkfC1ebK3/xo07edfGjdZmvWVLD+sKkv797cfVOiuRGHTsGDN4n6TC3LrPFRGRsKRgJeFr8WLby6lVq5N3RWNHQL+EBOjb95RglZYGHTponZVIrNBcQBGRiKVgJeHp2DGbCjhp0sm7XDe6gxVU0xnQcWw64OLFntUkIsHnlmsdpYhIpFOwkvC0fDmcOAGTJ5+8a+dO65gX7cFqyxYoKal05+TJkJVlmyWLSHSL04iViEikUrCS8LR4McTF2WiNTzR3BPQbNAhKS2Hbtkp3nn++HRct8qIkEQkBN64JGxlISYu2XpciIiINpGAl4WnRIhg5Elq3PnnX+vV29HfPi0bVdgYcOtTWWX30kSc1iUjwlbdtzyA2sn3CdV6XIiIiDaRgJeGnuPi09VUAmZnQsaPtmxut/KNxVYJVXJz9WShYiUQtbVUnIhL5FKwk/CxfDsePV1lfBRashg6N7qZZrVpBz57wxRenPHD++ZCTA9nZntQlIsEV92UhizmPXqvneV2KiIg0kIKVhJ9Fi05bX1VeblMBhw71rqxQGTIE1q075U7/OiuNWolEp5ISzuO/NP9yt9eViIhIAylYSfhZvBhGjIC2FYu4t2+3joCxEKyGDbMRqyqdAQcPhs6dFaxEotTJdutRPCIvIhLtFKwkvBw9CsuWVYzQ+GRm2jEWgtXw4Raq/F0QAZv/OHmyjeZpMYZI9PH9f+1E81xnEZEop2Al4WXJEtu/atq0Knf7g9XgwR7UFGLDhtlx7dpTHpg8GfLyTunFLiLRwP95iatgJSISsRSsJLx88AE0awbnnlvl7nXroHdva+4Q7QYOhISEaoLVBRfYceHCkNckIkEWH89KRnOidSevKxERkQZSsJLwMn++harmzavc7e8IGAvi421k7vPPT3lgwABITob33/ekLhEJntK2HUlnJXnpl3tdioiINJCClYSPXbus9d8p0wCPH4dNm2InWIFNBzxtxMpxYMYMWLDglM4WIhItNBNQRCRyKVhJ+PjgAzueEqw2bICystgKVsOHw+7dsH//KQ/MmAGHD8Mnn3hSl4gER1z+PlYzkh4Zr3ldioiINJCClYSPDz6wluKnJKjVq+04cqQHNXmkxgYWF1wATZpoOqBItCkpYSSfkXikwOtKRESkgRSsJDyUl1uwmjrVNgeu5NNPoXVr6NvXo9o8UGOwatMGxo+H994LeU0iEkTaRkFEJOIpWEl4+Pxz2LfPgtUpVq+Gs88+LW9Ftc6doWtX+Oyzah6cPt3S5r59Ia9LRILEH6y0yEpEJGLF0FtVCWtvv21vKGbOrHJ3aallrlGjPKrLQ6NHw6pV1TwwY4Yd588PaT0iEgIKViIiEUvBSsLDW2/B2LE2VFPJhg1QXBxb66v8xoyBjRutV0UVZ58NnTppOqBIFClr2owPOZ/idt28LkVERBpIwUq8t2cPrFwJs2ad9tCnn9oxFkesxoyx2UH+P4OT4uJs1Ordd21IT0QiXlmHzkzhQ/aOusjrUkREpIEUrMR777xjx0suOe2h1auhZUvo3z/ENYWB0aPtuHJlNQ/Ong2FhfDxxyGtSUSCQ70rREQin4KVeO+ttyA5udqNqj79FEaMsA7jsaZTJ0hJqSFYTZsGzZrBG2+EvC4RCbyme3eymf70WP6q16WIiEgDKViJt4qLrc36rFmnLdouKbERqzFjPKotDIwZU0OwSkqCCy+EefP0UbdINCgpoT9baVp06qJKERGJFApW4q2PPoJjx6qdBrhmjeWuceM8qCtMjBkD2dmQn1/Ng7Nnw/btkJkZ6rJEJNB8H5CoKaCISORSsBJvzZ1ru/+ef/5pD33yiR3Hjw9xTWHEv86q2rbrl1xi78LmzQtpTSISREpWIiIRS8FKvFNSAq+/DpdeauuFTvHJJ9Czp91i1ejR1gTQHzKr6NIFzjlH66xEooBm9IqIRD4FK/HOwoVw4ABceWW1Dy9bFtvTAMEG84YPr6X531e+Yh0+srJCWpeIBFZ5Ygve5BKKO8bwJ0kiIhFOwUq885//QKtW1uHuFDt3Qm5ubE8D9Dv3XFi+3Ab4TnPVVXZ8+eWQ1iQigVXSvguX8Sb5w6d4XYqIiDSQgpV4wz8N8LLLIDHxtIf9U99ifcQKYOJE6+9x2kbBYG3qJ0yAl14KeV0iEnhaYiUiErkUrMQbdUwD/Phjy1tnnx3iusLQuefascbpgNdcA+vW2U1EIlJ8Xja76Uq3pXO9LkVERBpIwUq8MWcOtGlT7TRAsC7sEyZAQkKI6wpDXbtCv37w3//WcMKVV9oOyhq1EolcpaV0ZS9NSoq9rkRERBpIwUpC7/BheO01uPrqaqcB5ufD2rXVdmCPWRMn2ohVeXk1D3buDFOm2DortRYTiWhOnOYCiohEKgUrCb25c23R0I03VvvwokV2vOCC0JUU7s47DwoKYP36Gk649lrrDLhsWUjrEpHAcMv1oYiISKRTsJLQe/556N/f9mCqxkcfQcuWFZvjClx4oR3nz6/hhK9+FZKS4NlnQ1aTiASBuleIiEQsBSsJrexsWLzYRqtqeAPx4Yc2QhMfH+LawlivXjBoUC3BKinJmlj8+99w6FBIaxORxitr0Yo5XEtR5xSvSxERkQZSsJLQ+sc/LFDdcEO1D+/cCRs3an1VdaZNgyVLoKiohhNuucWmWGpPK5GIU9KxG9czhy/PmuB1KSIi0kAKVhI6J07AX/8KF19s+y9V4//+z44zZ4awrggxbRoUF9fSdj09HYYMgb/9LaR1iUjj9e8Pb7wBo0Z5XYmIiDSUgpWEzmuvwd69cNddNZ7yzjuWuc46K4R1RYhJk2x6ZI3TAR0Hbr0VVq6Ezz4LaW0i0jjt9m/m0mta0mXJf7wuRUREGkjBSkLnL3+BPn1g+vRqHy4uhgULYNYsrd+uTsuWtlnwO+/UctLXvw4tWsDjj4esLhEJgLIym8pbVuZ1JSIi0kAKVhIaa9faDrd33glx1f+1W7wYjh61mYJSvdmzYcMG2LSphhPatYObb7bNgnfvDmltIhIA+lRJRCRiKVhJaDz2mI2k3Hxzjae8/TY0b67GFbWZPduOr79ey0nf/jaUltoIoYhEBm3uLSIS8RSsJPhycuDFF+F//gfat6/2lLIy2zd4xgwLV1K9Xr1gzBhbrlajfv3gkkvgqadqaSEoImFJI1YiIhFLwUqC77HHbPrf975X4yn//S/s2QNXXx3CuiLU5Zdbf4odO2o56Xvfg/x868IoLXstmwAAExFJREFUIuGvXTu4/XZbhyoiIhFJwUqCa98+ePZZuP566NmzxtNeftlmCmp9Vd0uv9yO/6mtedh558HkyfDIIxq1EokE3brZKPPo0V5XIiIiDaRgJcH18MNw/Djcd1+Np5SWwquv2uy1li1DWFuEGjDAtqx6/vk6TvzZz2wY8OmnQ1KXiDSC60J5udZaiYhEMAUrCZ7t2+HJJ+Gmm2DgwBpP+7//s1lr11wTutIi3Y03WqPFNWtqOem88+CCC2zU6ujRkNUmIg2wfj00aWKfMomISERSsJLg+clPbG3VT39a62nPPANdu8JFF4WmrGhw9dWQkADPPVfHib/4hW3K/NvfhqIsEWkojVSJiEQ8BSsJjlWr4IUX4FvfqnVtVV6ejVjdfDPEx4ewvgjXvj1ceqn9ERcX13Li+PGWwn7zG8jNDVl9ItJA6gooIhKxFKwk8MrKbCPgLl3gxz+u9dRnn7VlBbfcEqLaoshdd0FBgXWyr9VvfmNv1n74w5DUJSINoBErEZGIp2AlgffXv9qI1e9+B23a1HhaURE88QTMnKkOww0xeTIMGwaPP17He7LkZAtV//43vPdeqMoTkYbQiJWISMRSsJLAysmB+++3pgl1bEr1j3/A/v21NgyUWjgO3HsvZGbCwoV1nHz//TB4MNx2Gxw8GJL6ROQMdOoE3/8+9O/vdSUiItJAClYSOGVl1q6uvNw6UtTyyWtpKfy//wdjx1rzOmmYq6+27W9+9rM6Rq0SEy3J7tpV60bNIuKRbt2syczQoV5XIiIiDaRgJYHz2GOweDH86U91zu37298gK8uWYGnmS8MlJsKDD8LHH8P779dxcnq6TQl89lnbkVlEwkdZGRw6BCUlXlciIiINpGAlgbFgAfzoR3DllTZqVYvDh+Ghh+Dcc2HWrBDVF8VuvRVSUy2klpfXcfLPfw4TJ9qTvvgiFOWJSH1kZtqa1Hfe8boSERFpIAUrabxt2+BrX7M1PH//e51DUL/+NezbZ7NeNFrVeAkJ8MtfwqefWt+QWsXHWxOLpCSYPdsWuYmI99QVUEQk4ilYSePs2gXTp1tCeuMNe8NeizVr4NFHbVBr7NgQ1RgDrr3W+oXcfz/s2VPHyd27w2uvwY4dcPHFcORISGoUkXrQp00iIhFLwUoabv9+mDoV9u61XX7rWFdVXAw33QQdO1ondgkcx4Enn7Q/45tvrseUwPHj4ZVXbJjrsssUrkS8phErEZGIp2AlDZOVBRMm2PHtt+s1/HTPPTZi9cwz0L59CGqMMQMGWGB9912bZlmnSy6B556zhiNTp0JhYbBLFJG6aMRKRCRiKVjJmVu6FMaNg4ICa1oxaVKdT/nzny1QPfCAvZ+X4LjzTusf8qMfweuv1+MJ118Pc+fayNU558C6dUGvUUSq4d83YeBArysREZEGUrCS+isrs84TkyZBq1YWsCZMqPNp//wnfOtbcOml8ItfhKDOGOY4tl3VmDFwzTX12DgYrInFwoXWrnHsWBvF0rQkkdDq1g1+8hMFKxGRCKZgJfWzerWty/nRj+CrX7Xv09JqfYrr2pS0G2+EKVOsGV2TJiGqN4a1bGkdm/v3h4suqueWVRMn2qjVqFG2EG7mTMjODnqtIuJz4gTs3GkLJUVEJCIpWEntNm6EG26wzWVzcmDOHHun3qZNrU8rLLQRkx/+0Dqxv/WWbWYrodGhAyxZYgNQ11xj69uKiup4UrdusGiRbfC8dKl9cv7Nb8Lu3aEoWSS2rV0LPXva9GoREYlIClZyupISa51+2WW2N9Vrr8G991rIuvbaWhdXl5TYXkpnnQWvvgq/+hW89BI0bx7C+gWAdu1g/nz4zncsKw0dasupap3lFxdnYWrjRmsv+NRTkJJi6WzJknq0GxSRBtH0WxGRiKdgJWbfPhuJ+vrXbZ+j2bNhxQrrNrF9Ozz2GLRtW+PT8/Lg4YetM93tt1vn9YwMmzkYp79lnklMhN//3j4Eb97cGlsMGQJPPFHH3sA9elio2rQJ7r7bWg1OmmSfqN95pw1BFhSE7OcQiRnqCigiErGael2AhJDrQn4+bNtWcfv8c1i50jaLBZtDNn06XH01zJgB8fGnvUxpKWzZYq3TV6+GDz6wWSxgm9T+8Y8wa5beH4STKVPsv9eLL9p/n29+0xqKjBtneWnMmP/f3t3HyFHXcRx/f2/vsYUrpeWhlFpaoDxoFPAggE8oBJAYsEaxRhSVaMBoNMREDIkh6j9g0MTEZzSKUUR8gMZgsCoErBap0AeRVg6oWiitLXC1te3d9b7+8ftdb2939m7udmdm9/p5JZObnfnNzHe/+9uZ+e38Zg7OOgsWLYL28r3CySeHltmXvgT33hseNXjnnaHRBeE+u7PPhjPOCFc3TzklNMznzVOLWmQqdMVKRKTl5dqw2vCNP7Jva/yVu/wg4n7opeFjsyvKjCsfR61sWUanTrJs5bh7+u1WLRtjqFwPgI+MjRt1xJkwb/RV28Fh2of2URrcR2loP6WhfbTH8fbBvXTv2UX3np10791J155dlEaGx6124JiT2fGqN7Dj3HN5cemF7Fh8LgeGS+xZD3tWh/8bu2cPDAyE+6qffx5efHGsR1hHR3juwa23wvLl4YEJ0pxKpXC73Ac+EBpZ990X/gXZbbeFBz5CaFQtWhSGuXPHht7e2XR2vp+uC95Pz4X7OXHbYyzcsprj+ldz1Ko/ccRdd43b1sFSB/vnLuBA7zEMz+pluKc3/J3Vy8Hu2Yx0dOKlDkbaOxnp6GSkvRNv72Sk1BFa5Ga4tYW/2Ng0DNracDOonB7HBea8djGnvfesosOQ6VAdFhFpWeZT+JWsr6/P165dO+2NrZ/zZl63+5FpLy8T208X++hhP93so4f/MYtdzGMn8w8N2zmOZ1nKM5zMcyzhALWfKNHVFZ4wd8QR0NsbLkQsXBiGU08NVzhOPx06O3N8k9Jw+/aFC5cbN4Zen1u2hK6dL788NuzdO/E6ZrGX09nESWzhBF44NMxjF73sppfdzGGAXnYzm710Mkgb6fc9MjWPLLuON22+o651mNlf3b2vQSHNePUeH9m2LdyQunw5LFnSuMBERKThah0jc71i1fuzO9j0UtkZmtmhH+ecsfHRkfCjtI0rn7Rs5XqSlrW22uupLD+V7SYt6+XbncKyldua7D2YAaUS3t2Dd3VjpbGuVz0GPcA8YFnFJirfUuXrjo7QmEroBSgzUE9P+N/A559fu8zISHgwyYED4anQg4NhfHg4XEx1n4376+NA4jDg8IqXXXw9eBAbGsSGh7ChQdqGB7GhwXELmY+Mf00cHxkZ/9q9+irvYWzJ4qOLDkGmasECuPHGoqMQEZE65NqwWnLZsjw3JyIN0tYWrmB2dTVyrSVC81+PjBQREZHWp7vLRURERERE6qSGlYiIiIiISJ3UsBIREREREamTGlYiIiIiIiJ1UsNKRERERESkTmpYiYiIiIiI1EkNKxERERERkTqpYSUiIiIiIlInNaxERERERETqpIaViIiIiIhInczd0xc2+w/wzzq3OR/YWec68qJYs9NK8SrWbLRSrNBa8TYi1sXufkwjgjkcNOj4CK1Vz/KinFRTTqopJ9WUk2qNykniMXJKDatGMLO17t6X60anSbFmp5XiVazZaKVYobXibaVYZTx9dtWUk2rKSTXlpJpyUi3rnKgroIiIiIiISJ3UsBIREREREalTEQ2r7xSwzelSrNlppXgVazZaKVZorXhbKVYZT59dNeWkmnJSTTmpppxUyzQnud9jJSIiIiIiMtOoK6CIiIiIiEidMmlYmdl7zOxJMxsxs76KeZ8zs34z22xml9VYfomZPWpmT5vZ3WbWmUWcCdu928zWxWGLma2rUW6LmW2M5dbmEVtCDLeY2fNl8V5Ro9zlMdf9ZnZT3nGWxfFlM9tkZhvM7FdmdlSNcoXldrJcmVlXrCP9sX6elGd8ZXEsMrMHzeyp+D37VEKZi8xsoKx+fL6IWGMsE36mFnwt5nWDmZ1TUJynleVrnZntNrNPV5QpNK9m9n0z22FmfyubdrSZrYr7y1VmNrfGstfGMk+b2bX5RS2VWmVfk6cUObnRzP4e9xG/N7PFRcSZt7THcDN7t5l55TnXTJQmJ2Z2dawvT5rZT/KOMW8pvj+viucNT8TvUOI540ySdLysmJ/NuYe7N3wAzgBOAx4C+sqmnwmsB7qAJcAzQClh+Z8BK+L4t4AbsohzkvdwO/D5GvO2APPzjqkihluAz0xSphRzvBTojLk/s6B4LwXa4/itwK3NlNs0uQI+Dnwrjq8A7i4olwuAc+L4kcA/EmK9CPh1EfFN9TMFrgB+AxhwPvBoE8RcAl4k/J+Kpskr8GbgHOBvZdNuA26K4zclfbeAo4Fn49+5cXxu0Xk+HIdW2tc0WU7eCsyK4zfM9JykzUssdyTwMLCGsnOumTikrCunAk+M7uOAY4uOuwly8h3iuTThXHxL0XHnkJeq42XF/EzOPTK5YuXuT7n75oRZVwE/dfcD7v4c0A+cV17AzAx4G/DzOOmHwDuziLOWGMPVwF15bjcD5wH97v6suw8CPyV8Brlz99+6+3B8uQY4sYg4JpAmV1cR6iOE+nlxrCu5cvdt7v54HP8v8BSwMO84Gugq4E4P1gBHmdmCgmO6GHjG3RvxD18bxt0fBl6qmFxeL2vtLy8DVrn7S+7+MrAKuDyzQGUiLbOvydGkOXH3B939f/FlMx5DspD2GP5Fwg8s+/MMriBpcvJR4OtxX4e778g5xrylyYkDvXF8DvBCjvEVosbxslwm5x5532O1EPh32eutVJ8QzgNeKTsJTyqTtTcB29396RrzHfitmf3VzD6WY1yVPhEvX36/RvefNPkuwkcIvxIkKSq3aXJ1qEysnwOE+lqY2EXobODRhNkXmNl6M/uNmb0618DGm+wzbcZ6uoLaP6w0S15HHefu2yA0uoFjE8o0Y44PVy25r8nYVOvnddQ+hswkk+bFzM4GFrn7r/MMrEBp6soyYJmZrTazNWY2039ESpOTW4BrzGwrcD/wyXxCa2qZHBfbp7ugmf0OOD5h1s3ufl+txRKmVT6WME2ZaUsZ9/uY+GrVG9z9BTM7FlhlZptiy7ihJooV+CbhVyqPf28nNFjGrSJh2cweA5kmt2Z2MzAM/LjGanLJbYLC6+ZUmdkRwC+AT7v77orZjxO6se2JfanvJXSPKMJkn2mz5bUTuBL4XMLsZsrrVDRVjg9zLbevyUHq92tm1wB9wFsyjag5TJgXM2sDvgp8KK+AmkCautJO2C9fRLiy+YiZvcbdX8k4tqKkycn7gB+4++1mdgHwo5iTkezDa1qZ7Gen3bBy90umsdhWYFHZ6xOpvhy5k3A5rj3+UpdUZtomi9vM2oF3Aa+fYB0vxL87zOxXhMuwDT/5T5tjM/sukPRrVZp8N0yK3F4LvAO42GMH14R15JLbBGlyNVpma6wnc5j4MnNmzKyD0Kj6sbv/snJ+eUPL3e83s2+Y2Xx335lnnHH7k32mudbTFN4OPO7u2ytnNFNey2w3swXuvi12Y0jq9rKVcJIx6kTCPbCSv5ba1+Qk1T7AzC4h/LD4Fnc/kFNsRZosL0cCrwEeij1FjwdWmtmV7l7Ig7VykPb7s8bdh4DnzGwzoaH1WD4h5i5NTq4jdv929z+bWTcwn+TjxeEik3OPvLsCrgRWxCceLSFU9L+UF4gn3A8C746TrgVqXQHLwiXAJnffmjTTzGab2ZGj44SHMiQ+cSRLFf1Al9eI4THgVAtPWewkdG9amUd8leKl+M8CV5b1k68sU2Ru0+RqJaE+Qqiff6jVQMxSvNfie8BT7v6VGmWOH70nw8zOI3zXd+UX5aE40nymK4EPxif0nA8MjHZtK0jNK9bNktcK5fWy1v7yAeBSM5sbuw1fGqdJ/lpmX5OjSXMSu7x9m3AMOVxOBifMi7sPuPt8dz/J3U8i3Hs2kxtVkO77cy/hYSeY2XxC18Bnc40yX2ly8i/CvcOY2RlAN/CfXKNsPtmcezTiCRiVA+FEfytwANgOPFA272bC00s2A28vm34/cEIcX0pocPUD9wBdWcRZI/YfANdXTDsBuL8stvVxeJLQza2Ip538CNgIbIiVY0FlrD721JN/xJwXEmuMo5/Ql3VdHEafeNU0uU3KFfAFwoEKwo7onvhe/gIsLSiXbyRcrt5Qls8rgOtH6y7wiZjD9YSD7YUFxZr4mVbEasDXY943UuBTrYBZhIbSnLJpTZNXQoNvGzAU97HXEe69+T3wdPx7dCzbB9xRtuxHYt3tBz5cVI41tM6+psly8jvC+cToPm9l0TE3Q14qyj5U5P6zWXISjylfAf4ejykrio65CXJyJrA6HrvWAZcWHXMOOUk6XmZ+7mFx5SIiIiIiIjJNeXcFFBERERERmXHUsBIREREREamTGlYiIiIiIiJ1UsNKRERERESkTmpYiYiIiIiI1EkNKxERERERkTqpYSUiIiIiIlInNaxERERERETq9H+Kf0vVZGVzagAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from scipy.stats import norm\n", "\n", "x = np.arange(-10,10,0.001)\n", "\n", "N=len(x)\n", "\n", "x0 = np.linspace(0, 1, round(N/2))\n", "I0= np.ones(x0.size)\n", "\n", "I1 = norm.pdf(x,0,1)\n", "\n", "# create a scaled version of I1; i.e. I2(t) = I1(alpha*t)\n", "alpha = 0.75\n", "I2 = np.interp(alpha*x, x, I1)\n", "\n", "# Convert signals to strictly positive PDFs\n", "I0 = abs(I0) + epsilon\n", "I0 = I0/I0.sum()\n", "I1 = abs(I1) + epsilon\n", "I1 = I1/I1.sum()\n", "I2 = abs(I2) + epsilon\n", "I2 = I2/I2.sum()\n", "\n", "# Create a CDT object\n", "cdt2 = CDT()\n", "\n", "# Compute the forward transform\n", "I1_hat, I1_hat_old, xtilde = cdt2.forward(x0, I0, x, I1, rm_edge=False)\n", "I2_hat, I2_hat_old, xtilde = cdt2.forward(x0, I0, x/alpha, I2, rm_edge=False)\n", "\n", "#Plot the signals and CDTs\n", "fig, ax = plt.subplots(1, 2, sharex=False, sharey=False, figsize=(15,5))\n", "ax[0].plot(x, I1, 'b-')\n", "ax[0].plot(x, I2, 'r-')\n", "ax[0].set_title('Original signals')\n", "ax[0].set_yticks([])\n", "ax[0].legend([r'$I_1$',r'$I_2$'])\n", "\n", "ax[1].plot(xtilde, I1_hat, 'b-')\n", "ax[1].plot(xtilde, I2_hat, 'r--')\n", "ax[1].set_yticks([])\n", "ax[1].set_title('CDTs')\n", "ax[1].legend([r'$\\hat{I}_1$',r'$\\hat{I}_2$'])\n", "\n", "#ax[2].plot(xtilde, f1_hat, 'b-')\n", "#ax[2].plot(xtilde, f2_hat, 'r--')\n", "#ax[2].set_yticks([])\n", "#ax[2].set_title('Transport map')\n", "#ax[2].legend([r'$f_1$',r'$f_2$'])\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Linear Separability\n", "Here we are defining three classes of signal, i.e. class $k \\in \\{1,2,3\\}$. Each class $k$ consists of translated versions of a $k$-modal Gaussian distribution." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1YAAAEhCAYAAAB85DE7AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nOzde4ws130n9m+9+jnvx72XlyORvKBs0ivStGguY1naJaTAgqiNLCRGIATiZhGIsAwFCiBasAIEMIXYRgybi7WJRCJIJ6vA4sqiV6Rpk0YMR9Y6a+0uH7LFIUVKvEuRvK95dM+jX1XV9cof1VX9quo+NTN3urrr+wGEyztTM6fnTuuc8zvnd35H8jwPREREREREdHTypF8AERERERHRtGNgRUREREREdEwMrIiIiIiIiI6JgRUREREREdExMbAiIiIiIiI6JgZWREREREREx6QmeXhtbc27+eabr9NLIaJJePnllyue561P+nUcB/smotkzC30TwP6JaBbF9U+JAqubb74ZL7300sm9KiKaOEmS3pn0azgu9k1Es2cW+iaA/RPRLIrrn5gKSEREREREdEwMrIiIiIiIiI6JgRUREREREdExJTpjRTRNLMvC5cuXYRjGpF9KKhQKBWxsbEDTtEm/FKJMY9/UL4t9E98D/bL4HqDZxMCKZtbly5cxPz+Pm2++GZIkTfrlTJTneahWq7h8+TJuueWWSb8cokxj39SV1b6J74GurL4HaDYxFZBmlmEYWF1dzfygBQCSJGF1dZWro0QpwL6pK6t9E98DXVl9D9BsYmBFM42DVhf/LYjSg/9/7Mrqv0VWf+4o/LegWcHAioiIiIiI6JgYWBERERERER0TA6uO/+mbf49vf//ypF8GzaDHHnsMn/vc5070ez711FO49957ceedd+LWW2/FV77ylRP9/kRpZFgO/tuv/Qe8+PbepF/KTGDfRHwP0PXwbrWFT/3vf4edWvbOzbEqIIBD3cKf/cNVHOoW/usPbEz65dCMeeWVV3DHHXeMfe6JJ57AY489Bs/zwo+dP38ezz77bN9zX//61/Hoo4/imWeewcbGBhqNBr761a+e+OsmSpvXr9Xwwtt7+LU//j5e+l/+y0m/nKnHvon4HqDr4bs/3sE/XDrAf3iril++68ZJv5xTxcAKwBvXagD8QZvo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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "N=250\n", "x=np.arange(N)\n", "\n", "# Creating reference signal I0\n", "x0 = np.linspace(0, 1, round(N/2))\n", "I0= np.ones(x0.size)\n", "epsilon = 1e-7\n", "I0 = abs(I0) + epsilon\n", "I0 = I0/I0.sum()\n", "\n", "# Creating three classes of translated versions of k-modal Gaussian distribution -- skolouri\n", "K=3 # Number of classes\n", "L=500 # Number of datapoints per class \n", "\n", "rm_edge = False\n", "if rm_edge:\n", " rml = 2\n", "else:\n", " rml = 0\n", "\n", "I=np.zeros((K,L,N))\n", "Ihat=np.zeros((K,L,x0.size-rml))\n", "kmodal_shift=[]\n", "kmodal_shift.append(np.array([0]))\n", "kmodal_shift.append(np.array([-15,15]))\n", "kmodal_shift.append(np.array([-30,0,30]))\n", "sigma=5\n", "for k in range(K):\n", " for i,mu in enumerate(np.linspace(50,200,L)):\n", " for j in range(k+1):\n", " I[k,i,:]+=1/((k+1)*sigma*np.sqrt(2*np.pi))*np.exp(-((x-mu-kmodal_shift[k][j])**2)/(2*sigma**2))\n", " I[k,i,:] = abs(I[k,i,:]) + epsilon\n", " I[k,i,:] = I[k,i,:]/I[k,i,:].sum()\n", " Ihat[k,i,:], _,xtilde = cdt.forward(x0, I0, x+mu, I[k,i,:], rm_edge)\n", " #Ihat[k,i,:]=cdt.transform(I[k,i,:])\n", "fig,ax=plt.subplots(1,3,figsize=(15,5))\n", "for count,index in enumerate([0,int(L/2),L-1]):\n", " for k in range(K):\n", " ax[count].plot(x, I[k,index,:]) #template\n", " ax[count].set_xticks([])\n", " ax[count].set_yticks([])\n", " ax[count].legend([r'$I_1\\in C_1$',r'$I_2\\in C_2$',r'$I_3\\in C_3$'])\n", "plt.show()\n", "\n", "fig,ax=plt.subplots(1,3,figsize=(15,5))\n", "for count,index in enumerate([0,int(L/2),L-1]):\n", " for k in range(K):\n", " ax[count].plot(xtilde, Ihat[k,index,:]) #template\n", " ax[count].set_xticks([])\n", " ax[count].set_yticks([])\n", " ax[count].legend([r'$\\hat{I}_1\\in C_1$',r'$\\hat{I}_2\\in C_2$',r'$\\hat{I}_3\\in C_3$'])\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we'll do linear classification in Signal and CDT spaces. LDA is used for visualization." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.discriminant_analysis import LinearDiscriminantAnalysis\n", "from sklearn.svm import LinearSVC\n", "\n", "import warnings\n", "warnings.filterwarnings('ignore')\n", "\n", "X=np.reshape(I,(K*L,N)) #Combine the signals into a features vector X\n", "Xhat=np.reshape(Ihat,(K*L,x0.size-rml)) #Combine the transformed signals into a features vector Xhat\n", "data=[X,Xhat]\n", "label=np.concatenate((np.zeros(L,),np.ones(L,),-1*np.ones(L,))) # Define the labels as -1,0,1 for the three classes\n", "lda=LinearDiscriminantAnalysis(n_components=2)\n", "svm=LinearSVC()\n", "title_=['LDA projections in the signal space','LDA projections in the CDT space']\n", "fig,ax=plt.subplots(1,2,figsize=(15,5))\n", "for i in range(2):\n", " dataLDA=lda.fit_transform(data[i],label)\n", " ax[i].plot(dataLDA[:L,0],dataLDA[:L,1],'b*')\n", " ax[i].plot(dataLDA[L:2*L,0],dataLDA[L:2*L,1],'ro')\n", " ax[i].plot(dataLDA[2*L:,0],dataLDA[2*L:,1],'kx')\n", " x_min, x_max = ax[i].get_xlim()\n", " y_min, y_max = ax[i].get_ylim()\n", " nx, ny = 400, 200\n", " xx, yy = np.meshgrid(np.linspace(x_min, x_max, nx),np.linspace(y_min, y_max, ny))\n", " svm.fit(dataLDA,label)\n", " Z = svm.predict(np.c_[xx.ravel(), yy.ravel()])\n", " Z = Z[:].reshape(xx.shape)\n", " ax[i].pcolormesh(xx, yy, Z,cmap='OrRd')\n", " ax[i].contour(xx, yy, Z, linewidths=.5, colors='k')\n", " ax[i].set_xticks([])\n", " ax[i].set_yticks([])\n", " ax[i].set_title(title_[i],fontsize=fontSize)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "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.7" } }, "nbformat": 4, "nbformat_minor": 2 }