{ "cells": [ { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "# Chapter 7 Digital Modulation Techniques" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 7.01 page 294" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from __future__ import division\n", "from numpy import arange, sin, pi,zeros\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,xlabel,ylabel,title,grid,show\n", "#Caption:Waveforms of Different Digital Modulation techniques\n", "#Figure7.1\n", "#Digital Modulation Techniques\n", "#To Plot the ASK, FSK and PSk Waveforms\n", "f = 2 # the Analog Carrier Frequency in Hz\n", "t = arange(0,1/512+1,1/512)\n", "x = [sin(2*pi*f*tt) for tt in t]\n", "I = [0,1,1,0,1,0,0,1] # the digital binary data\n", "#Generation of ASK Waveform\n", "#Xask = []#\n", "Xask=zeros(len(x))\n", "for n in range(0,len(I)):\n", " if((I[n]==1) and (n==0)):\n", " Xask = [x,Xask]#\n", " elif((I[n]==0) and (n==0)):\n", " Xask = [zeros(len(x)),Xask]\n", " elif((I[n]==1) and (n!=1)):\n", " Xask = [Xask,x]\n", " elif((I[n]==0) and (n!=1)): \n", " Xask = [Xask,zeros(len(x))]\n", " \n", "\n", "#Generation of FSK Waveform\n", "Xfsk = []#\n", "x1 = [sin(2*pi*f*tt) for tt in t]\n", "x2 = [sin(2*pi*(2*f)*tt) for tt in t]\n", "for n in range(0,len(I)):\n", " if (I[n]==1):\n", " Xfsk = [Xfsk,x2]\n", " elif (I[n]!=1):\n", " Xfsk = [Xfsk,x1]\n", " \n", "\n", "#Generation of PSK Waveform\n", "Xpsk = []#\n", "x1 = [sin(2*pi*f*tt) for tt in t]\n", "x2 = [-sin(2*pi*f*tt) for tt in t]\n", "for n in range(0,len(I)):\n", " if (I[n]==1):\n", " Xpsk = [Xpsk,x1]\n", " elif (I[n]!=1):\n", " Xpsk = [Xpsk,x2]\n", " \n", "plot(t,x)\n", "title('Analog Carrier Signal for Digital Modulation')\n", "grid()\n", "show()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example7.1 page 298" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from numpy import ones,arange,cos,sin,pi\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show\n", "\n", "M =4#\n", "i = range(0,M)\n", "t = arange(0,0.001+1,0.001)\n", "s1=ones([len(i),len(t)])\n", "s2=ones([len(i),len(t)])\n", "for i in range(0,M):\n", " s1[i,:] = [cos(2*pi*2*tt)*cos((2*i-1)*pi/4) for tt in t]\n", " s2[i,:] = [-sin(2*pi*2*tt)*sin((2*i-1)*pi/4) for tt in t]\n", "\n", "S1 =[]#\n", "S2 = []#\n", "S = []#\n", "Input_Sequence =[0,1,1,0,1,0,0,0]\n", "m = [3,1,1,2]\n", "for i in range(0,len(m)):\n", " S1 = S1+[s1[m[i],:]]\n", " S2 = S2+[s2[m[i],:]]\n", "S = S1+S2#\n", "subplot(3,1,1)\n", "plot(S1)\n", "title('Binary PSK wave of Odd-numbered bits of input sequence') \n", "subplot(3,1,2)\n", "plot(S2)\n", "title('Binary PSK wave of Even-numbered bits of input sequence') \n", "subplot(3,1,3)\n", "plot(S)\n", "title('QPSK waveform') \n", "show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 7.02 page 302" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "coordinates of message points [1.0, -1.0]\n", "Message points ['0b1', '0b0']\n" ] }, { "data": { "image/png": "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\nI2sAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from numpy import ones,arange,cos,sin,pi\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show\n", "\n", "M =2#\n", "i = range(1,M+1)\n", "y = [cos(2*pi+(ii-1)*pi) for ii in i]\n", "\n", "annot = [bin(xx) for xx in arange(len(y)-1,-1,-1)]\n", "annot = [bin(yy) for yy in arange(len(y)-1,-1,-1)]\n", "\n", "print 'coordinates of message points',y\n", "\n", "print 'Message points',annot\n", "plot(y)\n", "xlabel(' In-Phase')#\n", "ylabel(' Quadrature')#\n", "title('Constellation for BPSK')\n", "show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example7.2 page 304" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "coordinates of message points\n", "[1.0, -1.0]\n", "[-1.0, -1.0]\n", "[-1.0, 1.0]\n", "[1.0, 1.0]\n" ] }, { "data": { "image/png": "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\nzjmXyv8Dg9CmkODLrqIAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from numpy import ones,arange,cos,sin,pi\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show,legend,grid,subplot\n", "#Table 7.2 signal space characterization of MSK\n", "\n", "M =2#\n", "Tb =1#\n", "t1 = arange(-Tb,0.01+Tb,Tb)\n", "t2 = arange(0,0.01+2*Tb,2*Tb)\n", "phi1 = [cos(2*pi*t11)* cos((pi/(2*Tb))*t11) for t11 in t1]\n", "phi2 = [sin(2*pi*t22)*sin((pi/(2*Tb))*t22) for t22 in t2]\n", "teta_0 = [0,pi]\n", "teta_tb = [pi/2,-pi/2]\n", "S1 = [];s1 = []\n", "S2 = [];s2 = []\n", "for i in range(0,M):\n", " s1.append(cos(teta_0[i]))\n", " s2.append(-sin(teta_tb[i]))\n", " S1 = S1+[s1[i]*phi1]\n", " S2 = S2+[s2[0]*phi2]\n", "\n", "for i in arange(M,-1+1,1):\n", " S1 = S1+[s1[i]*phi1]\n", " S2 = S2+[s2(1)*phi2]\n", "\n", "Input_Sequence =[1,1,0,1,0,0,0]\n", "S = []\n", "t = arange(0,0.01+1,1)\n", "S = S+[cos(0)*cos(2*pi*tt)-sin(pi/2)*sin(2*pi*tt) for tt in t]\n", "S = S+[cos(0)*cos(2*pi*tt)-sin(pi/2)*sin(2*pi*tt) for tt in t]\n", "S = S+[cos(pi)*cos(2*pi*tt)-sin(pi/2)*sin(2*pi*tt) for tt in t]\n", "S = S+[cos(pi)*cos(2*pi*tt)-sin(-pi/2)*sin(2*pi*tt) for tt in t]\n", "S = S+[cos(0)*cos(2*pi*tt)-sin(-pi/2)*sin(2*pi*tt) for tt in t]\n", "S = S+[cos(0)*cos(2*pi*tt)-sin(-pi/2)*sin(2*pi*tt) for tt in t]\n", "S = S+[cos(0)*cos(2*pi*tt)-sin(-pi/2)*sin(2*pi*tt) for tt in t]\n", "\n", "y = [[s1[0],s2[0]],[s1[1],s2[0]],[s1[1],s2[1]],[s1[0],s2[1]]]\n", "print 'coordinates of message points'\n", "for yy in y:\n", " print yy\n", " \n", "\n", "subplot(3,1,1)\n", "plot(S1[0])\n", "title('Scaled time function s1*phi1(t)')\n", "#subplot(3,1,2)plot(S2[0])title('Scaled time function s2*phi2(t)')\n", "subplot(3,1,3)\n", "plot(S)\n", "title('Obtained by adding s1*phi1(t)+s2*phi2(t) on a bit-by-bit basis') \n", "show()\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 7.3 page 308" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Table 7.3 Illustrating the Generation of DPSK Signal\n", "_____________________________________________________\n", "\n", "(bk) [1, 0, 0, 1, 0, 0, 1, 1]\n", "\n", "(bk_not) [0, 1, 1, 0, 1, 1, 0, 0]\n", "\n", "Differentially encoded sequence (dk)\n", "1 \t0 \t1 \t1 \t0 \t1 \t1 \t1 \t\n", "\n", "Transmitted phase in radians\n", "0 \t3.14159265359 \t0 \t0 \t3.14159265359 \t0 \t0 \t0 \t\n", "\n", "_____________________________________________________\n" ] } ], "source": [ "from __future__ import division\n", "from math import pi\n", "\n", "\n", "bk = [1,0,0,1,0,0,1,1]##input digital sequence\n", "bk_not=[]\n", "for i in range(0,len(bk)):\n", " if(bk[i]==1):\n", " bk_not.append(0)\n", " else:\n", " bk_not.append(1)\n", " \n", "dk_1 = [ 1 and bk[0]]# #initial value of differential encoded sequence\n", "dk_1_not =[ 0 and bk_not[0]]\n", "dk = [dk_1[0]^dk_1_not[0]] #first bit of dpsk encoder\n", "for i in range(1,len(bk)):\n", " dk_1.append(dk[(i-1)])\n", " if dk[(i-1)]==1:\n", " xxx=0\n", " else:\n", " xxx=1\n", " dk_1_not.append(xxx)\n", " dk.append(((dk_1[i] and bk[i])^(dk_1_not[i] and bk_not[i])))\n", "dk_radians=[]\n", "for i in range(0,len(dk)):\n", " if(dk[i]==1):\n", " dk_radians.append(0)\n", " elif(dk[i]==0):\n", " dk_radians.append(pi)\n", " \n", "print 'Table 7.3 Illustrating the Generation of DPSK Signal'\n", "print '_____________________________________________________'\n", "print '\\n(bk)',bk\n", "print '\\n(bk_not)',bk_not\n", "print '\\nDifferentially encoded sequence (dk)'\n", "for dd in dk:\n", " print dd,'\\t',\n", "print '\\n\\nTransmitted phase in radians'\n", "for ddd in dk_radians:\n", " print ddd,'\\t',\n", "print '\\n\\n_____________________________________________________'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 7.4 page 314" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "coordinates of message points\n", "[[1, 0], [0, 1]]\n", "[[1, 0], [0, 1]]\n", "Message points ['0b1', '0b0']\n" ] }, { "data": { "image/png": "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\n3WNmhWZ2ipndTTAYeNpQehBJnGeffZYRI0ZEVbawsJB777230jIXXXQRXbp0oW7dutx///1VbvO6\n667j2muvjWr/w4YN44UXXoiqbLzdeeedHHPMMdSvX5/zzz+/1LKuXbuSl5fH008/nZC6RNMwnA98\nCIwneMLqh6F5aUXpQST1RHN58pFHHsm0adM46qijqiz/zjvvsHnzZnr06FFpuXjbvXt3tdcpKCjg\n+uuv54ILLih3+bBhw5g5c2a5y2KtyobB3be7+x/d/czQ9Cd331HVeqlK6UFqo0OHDkyePJmuXbuS\nk5PDmDFjWLt2LaeffjpNmjShT58+bNy49+EAb731Fscffzz5+fkceeSRvPrqq+Fl9913H507dyY3\nN5dOnTrx97//HYBly5Zx8sknk5eXR4sWLTj33HPD64wfP5527drRpEkTjjnmGF5//fXwsu3btzNq\n1CiaNm3KYYcdxu23307btnsfXrx69WqGDBlCy5Yt6dSpE3/5y18qfJ+jR49m7Nix9O3bl9zcXAoL\nC1m+fHl4+RtvvEH37t3Jy8ujR48evPnmm+FlkSngvvvuo1evXvzmN7+hadOmdOrUieefDx7OfN11\n1zFv3jwuu+wycnJyGDduXLl1ueSSS+jduzf169cvd3mk5557rtw7n5955hk6d+5MixYt+O1vfxvu\nqL3vvvs48cQTw+Xq1KnDzJkzOfjgg8nPz+eyy/Y+sefTTz+ld+/eNG/enBYtWjB8+HA2bdoUXt6h\nQwduv/12unbtSuPGjZk8eTI/+9nPStVj3LhxXHHFFeXW/cwzz2TQoEE0a9as3OUnn3wyL7/8Mrt2\n7aryONRaVU/sAw4GHiNICp+Hps8S+dTAoJqx9+qr7p07uw8f7r5uXVx2IdUUr//rWOnQoYP37NnT\nv/76a1+1apW3bNnSu3Xr5osWLfIdO3Z47969/aabbnJ395UrV3qzZs38ueeec3f3l156yZs1a+bf\nfvutb9261XNzc/3jjz92d/evvvrK//Of/7i7+7nnnuu33HKLu7t///33Pn/+/PD+Z8+e7evXr/fi\n4mKfMmWKH3jggf7999+7u/vVV1/thYWFvnHjRl+5cqUffvjh3rZtW3d3Ly4u9qOOOspvvvlm37Vr\nl3/22WfeqVMnf+GFF8p9n6NGjfKcnByfN2+ef//99z5+/Hjv1auXu7uvW7fO8/LyfPbs2V5cXOxz\n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\nAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from numpy import ones,arange,cos,sin,pi\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show,legend,grid\n", "\n", "M =2#\n", "y = [[1,0],[0,1]]\n", "annot = [bin(xx) for xx in (arange(M-1,-1,-1))]\n", "print 'coordinates of message points'\n", "for yy in y:\n", " print y\n", "\n", "print 'Message points',annot\n", "\n", "plot(y[0])\n", "plot(y[1])\n", "xlabel(' In-Phase')#\n", "ylabel(' Quadrature')#\n", "title('Constellation for BFSK')\n", "legend(['message point 1 (binary 1)','message point 2 (binary 0)'])\n", "show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 7.4. page 320" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nU5l8wJ1PhmeB5sARAFVdD1RzJ3MRiRWRzSKyVUSGZ3O9i4j8IiLrRWSdiLR1N21+cn1EBA9Ursyd\nycmkBstXa2govPceREZCt25w5oyZw/AwwdCeaWlp+eZcdO7cufTq1Yv4+Hj27NnDP//8w3PPPZfv\nSuhCPizuFhHeeOMNTpw4kXE0b96cGTNmMHPmTJYtW8aJEydISkri5ptvzpQu3a3YV199Rbdu3UhI\nSKBXr15el9lbuKOEzqvq0SzncpypF5ECwOtALFAHiBORrJvIL1XV+rY/unhgai7S5isjqlYlTISx\nO3f6UgzPEhoKM2dCeLi1jsiNBa2GywcR4dFHH2X8+PEcO3Ys2zirV6+madOmRERE0KxZM77//vuM\nazExMTz99NNcf/31lChRgvbt23Po0KFs81FVHn74YZ5++mn69+9PeHg4AK1bt2bq1KkZcZ5//vmM\nHlrfvn05fvx4pnxmzpxJVFQUV1xxBWPHjs2U/4svvkj16tUpU6YMvXv35siRI4A1lBcSEsL06dOJ\niorKeOlPnz6dOnXqUKpUKWJjY9m1a1dGfiEhIUyZMoWaNWsSGRnJ0KFDAUhOTmbIkCF8//33hIeH\nZ+y95C5JSUm0b98+Y2+mcuXKce+9mfcRVVUWLVpE7969mTVrFp07d85VGX6Hqro8gOlYG9v9CtQA\nJgFvuZGuJbDYITwCGJFD/DW5SWuJn3/sPnNGy65cqauOHs3Xcr3OuXOq3burduumev68r6W5rMjv\nZzg3REdH69KlS7V79+46atQoVVV9++23NSYmRlVVDx06pBERETpz5kxNTU3VWbNmaWRkpB4+fFhV\nVW+88UatXr26bt26VU+fPq0xMTE6YsSIbMtKTk5WEdEdO3Y4lWfatGlavXp1/fPPP/XkyZPavXt3\n7dOnj6qq/vnnnyoiOnDgQD1z5oz+8ssvWqhQId28ebOqqk6YMEFbtmype/bs0XPnzumgQYM0Li4u\nU9q+fftqSkqKnj59WhcsWKDVq1fXzZs3a2pqqj7//PN63XXXZcgiItqpUyc9duyY7tq1S6+44gpd\nvHixqqomJCTo9ddf77JtY2Ji9J133rno/MyZM7VUqVL60ksv6Y8//qgXLly4KF3nzp01MjJSly1b\n5rIMVefPl30+x/d/fhzuKKGiwFggyT7+CxR2I93twNsO4buBSdnE6wokA0eBZrlMm+NN8DSf/POP\nRn//vR4Ntpf1mTOqsbGqffqopqb6WprLhpyeYZYv98iRF6Kjo3XZsmX622+/acmSJfXAgQOZlNB7\n772nzZs3z5SmZcuWmpCQoKrWC/O///1vxrXJkydrbGxstmWtXLlSRUTPnj3rVJ62bdvqm2++mRHe\nsmWLhoWFaWpqaoYi2bNnT8b1Zs2a6Zw5c1RV9eqrr8700t67d+9Faf/888+M67GxsTpt2rSMcGpq\nqhYtWlR37dqlqpYSWrVqVcb1Xr166Ysvvqiqqu+++26OSujGG2/UokWLakREhEZERGjjxo0zrn3w\nwQd68803a7FixbR06dI6bty4TOlKlCihzZs319OnT7ssQzUwlJDTzXNEpAiWr7jqwAagpaqez00n\ny61IqguABSJyA/C+iFydizKIj48nOjoagIiICBo0aJDhPj99TN6T4QggtmJFhvz+O/ft34+IeLW8\nfAsXKsSENm1oMHMmMUOHwhtvkPjtt/4jXwCGJ0yY4Nbz6Ar1g6016tatS8eOHXnxxRepXfvfUfG9\ne/dStWrVTHGjoqLYu3dvRrh8+fIZ/xcpUoSTJ08CMHjwYD744AMAnnzySbp16wbAvn37iIqKylaO\nrNeqVq3KhQsX2L9/f7blFS1aNKO8nTt30q1bt0yWc6GhoZnSVqlSJeP/nTt38uCDD/LII49kkmHP\nnj0Z8bKWdSoXjo9FhEmTJtG/f/+Lrt15553ceeedpKam8sknn3DXXXfRsGFDbrnlFkSEMWPGMHfu\nXLp27crChQspWLBgjuUlJiaSkJAAkPG+9BucaSfgI2AmliJaAEzMjXYDWpB5SG0kMDyHNH8Apd1N\ni4+GMk5duKB1fvhBZ+zb55PyvcXy5ctVjx1TbdJE9fHHVdPSfC1SQLPcjR6Ir55hd0jvCamqbtu2\nTUuUKKGjR4/O6Am9//772qxZs0xpWrZsqTNmzFBVqyfk2Jtw1UNIS0vTqlWr6vjx453Kc9NNN+nk\nyZMzwtn1hFIdevGO5deqVUtXr16dbb7ZpW3fvr1++OGHTmUREf3jjz8ywvHx8frUU0+pqvvDcY5t\n44omTZroK6+8kindiRMntEWLFtq5c2c972JUxtnzhR/1hFwZJtRW1btV9S2s4bHWudRvSUANEYkW\nkYJAbyCTabeIXCW2qYeINLK1yiF30vqSogUKMKtOHR754w+2BZELnJiYmH+9b3/+Obzwgq9FCmiC\naYPAq666it69e2eylOvQoQO///47s2bN4sKFC8yZM4fNmzfTsWPHjDjW+y5nRIRXXnmFMWPGkJCQ\nwPHjx0lLS2PlypUMGjQIgLi4OF599VV27NjByZMneeKJJ7jjjjvcWhc0ePBgnnjiiQzjggMHDrBw\nofNXyuDBgxk7diybNm0C4NixY3z88cdO46e/UMEyJti9ezfnz7seOMqubWbMmMEXX3zBiRMnSEtL\n48svv2Tjxo00b948U7rixYuzePFi9uzZw5133klaAHt1cXX3MuwUVTXXNot2mqFY64s2AXNUNVlE\nBonIIDtaD+BXEVkPTATucJU2tzJ4k3rFi/NUVBR3JidzPoAfgGwpXRq+/hqmT4fXXvO1NAY/4emn\nnyYlJSXDRLh06dIsWrSIl19+mTJlyjB+/HgWLVqUySLMcZdiV1uCA/To0YM5c+Ywffp0KlWqRPny\n5Xn66afp2rUrAP3796dPnz60bt2aatWqUbRoUSZNmpRtWVl58MEH6dy5M+3ataNEiRK0bNmStWvX\nOk3btWtXhg8fzh133EHJkiW59tprWbJkidP4jnW76aabqFu3LuXLl6esCwfI2clbokQJxo4dS1RU\nFJGRkYwYMYK33nqL66677qJ0JUuW5Ouvv+b333+nb9++bit8f8OpxwQRSQUcP/OLAOl+XlRVS3hZ\nthzJD48JrlBVbvv1VxoUL87Yam4tnfJrLtqOescOaN0aRo+Gfv18JVbAYrb3NviaQPCY4NQwQVUL\n5KcggYiIkHD11TRISuKWyEjaREb6WiTPEh1t9YjatIGICGtRq8FgMHiQXO0n5G+IiC79Yyk3VbvJ\np3IsOXyYe7ds4ecmTSgdFuZTWbzCunXQoQPMnWv1jAwew/SEDN4kEHpCAe/pr9+n/RiyaAgnzp7w\nmQztS5Wi1xVXcO+WLcH5QmncGD78EG6/HTZs8LU0BoMhiAh4JfTrkF85l3qOa9+8lmXbl/lMjrHV\nqrHjzBmm7tvnMxkuFZfrVm6+GSZNgltvteaKDDkSDL7jDAZv41IJiUioiCzPL2HyQsnCJZnWZRpv\ndXzLp72iQiEhzKpdmye3b2dTLhatBRS9e8Pw4dC+vbUNhMFgMFwiLpWQbSqdJiIR+SRPnomtHuvz\nXtHVxYrxQrVq3LlpE2dSU/O9/EvFrXUtw4ZZw3K33Qb2anRD9gTTOiGDwVvkaJhg7x3UEPgaSP/E\nV1V9wMuy5YgzE+3F2xYz8LOB3FrjVl665SXCC4Xnm0yqyu0bN1KlUCEm1KiRb+XmK6pw772wezd8\n9hm44TbEkD2u1rYYDJ4gGAwT5gNPAd9ieTJYZx9+i2OvqMGUBqzctTLfyhYR3q5Vi/kHD/KFE7f1\n/orbcxgiMGUKFCpkrR8KtsW6HsIt33B+4DYlEI7ly5f7XIZAPfydHJWQqiYAs4Cf7OMDVZ3hZbku\nmZKFSzK9y3ReafcKPT/uycilIzmXmj/75ZQKC+P92rW5d8sW9gfrHj2hoTB7tmWk8OSTvpbGYDAE\nKO4Mx8UAM4D03dyqAn1V9VvvipYz7npM+OfUP9z32X3sPLqTmd1nck3Za/JBOnhi+3Z+OXmSRdde\nG7zDLgcPwnXXwaOPwsCBvpbGYDC4gT8Nx7mjhH4C4lR1ix2uCcxW1Ub5IJ9LcuO2R1WZvn46I5aN\nYOT1I/lPi/8QIt61UD+flsZ169dzT7lyDKtc2atl+ZRt2+CGGyxfcx06+Foag8GQA/6khNx5C4em\nKyAAVf0dF+5+/BURYUCjAfxw7w/MT57Pze/dzK5ju3JOeAmEhYTwYe3ajN6xg98CwJIsz+taqleH\n+fOhb19Yv96jMgUyZp2Q5zBtGby4o4TWicg7IhIjIm1E5B0sA4WApFpkNb6N/5Z2V7Wj8dTGvP/L\n+16dvKtRtCj/u+oq4pKTA9Js221atoQ334ROnWCXd5W7wWAIHtwZjiuEta1CK/vUd8BkVT3rZdly\n5FK9aP/898/cPf9ual9Rmykdp1CqSKmcE+UBVaXXpk1ULFiQicFqtp3OK6/Au+/CypVQsqSvpTEY\nDNngT8NxLpWQiIQCv6lqrrbczi88sZXDmQtnGLF0BPOT5zOz+0xaR3nHQeeR8+epn5TElJo16VC6\ntFfK8AtU4cEHYdMm+OILs4bIYPBD/EkJueMxYYuIZL/pew6ISKyIbBaRrSIyPJvrd4nILyKyQURW\niUg9h2s77PPrRWRt1rSeonBoYSbETuCtjm/Re25vnl7+NBfScr2HX45EhoXx3tVXM8CPzbY9Mu4u\nAq++CsWLW9ZyAbBOwVuYeQzPYdoyeHFnTqgUsFFEvhGRz+wjx622RaQA8DoQC9QB4kSkdpZo24HW\nqloPGANMdbimQIyqNlTVZu5U5lK4tcatrB+0njW719D63dbsOLrD42XEREbSt3x5+m/eHBCLyPJM\ngQKW1+1Nm2DMGF9LYzAY/Bh35oRuBLJ22zSndUIi0hJ4RlVj7fAIO+GLTuJHAr+qamU7/CfQRFWd\nuh3wxs6qaZrGq9+/yrhV43itw2vccc0dHs3/XFoardavp2+5cgwNZrNtgL//hubN4X//s5yfGgwG\nv8CfhuPcmRPaqKq1cp2xyO1Ae1W9zw7fDTRX1WFO4j8K1FTVgXZ4O3AMSAWmqOrb2aTxuBJKZ93e\ndcTNi6NV1VZM6jCJ4gWLeyzvrSkpXLd+Pcvr1+ea4p7L1y/ZsMHaBmLRImjm9Q6twWBwA39SQu7M\nCW3O45yQ29pBRNoA/QHHeaNWqtoQ6ADcLyI35EGGPNO4YmN+GvQTgtBoSiOS9nrOKr1G0aKMq1bN\n78y2vTLuXq8eTJtmbQ3+11+ez9+PMfMYnsO0ZfDizqLT9DmhtWT2ot05h3R7gCoO4SrA7qyRbGOE\nt4FYVT2Sfl5V99l/D4jIJ0AzLPPwTMTHxxMdHQ1AREQEDRo0yHChn/7g5jWctDqJe0reQ/s27bn1\ng1vpXrg7va7pRds2bS85/37lyzNj8WLu3rKFuXff7RF5LzX8888/eyf/Tp3g999JbNMGJk0ixvaq\n4Ov6Bmx7mrAJ5zKcmJhIQkICQMb70l9w13dcVtyZEwoFtgA3AXuBtVjuf5Id4lQFvgHuVtU1DueL\nAgVU9YSIFAO+Akar6ldZyvDacFxWdhzdwZ3z7iSySCQzus6gTNEyl5zn4fPnaZCUxNSaNYkNZrNt\nsKzk7rvP2gxv/nzLeMFgMPiEgBiOE5GrAVQ1EVijqonpB5CjjbE9lDcUWAJsAuaoarKIDBKRQXa0\np4FI4M0sptjlge9E5GfgB2BRVgWU30RHRPNt/LfUvaIujaY0YtWuVZecZynbbLv/li3846dm2x5D\nBCZPhmPHYORIX0tjMBj8BKc9IRFZb8/JICI/OTosdbzmS/KzJ+TI579/zoCFA3i45cM8et2jl+wI\ndeT27WzwA2/biYmJGV15r3HoELRoAU88Ye1FFMTkS3teJpi29CwB0RPKgl8I6y/cVvM2frzvRxZs\nXkDHDztyMOXgJeU3Ojqaf86f5409ezwkoR9TurRlKTdiBHzr891ADAaDj3G3J5Sp53O594TSOZ96\nnlHfjGLWb7OY1WMWraq2yjmRE7ampNDyp5/4tmFD6hYr5kEp/ZSlS+Huuy0fc9Wr+1oag+Gywp96\nQq6U0AGsHVUF6A3M5t8eUW9VLZsvErrA10oonfThuYdaPMRjrR7L8/DctH37mLh7N2sbNaLw5TBx\n/9ZbMHEirFljnJ0aDPlIoCiheP5d6yNZ//eHLb79RQkB/HXsL+6YdwclC5XkvW7v5cl6TlXpuXEj\nlQsVYoIPvG37ZNz9/vth50749NOgs5gz8xiew7SlZ/EnJeT0k11VE1R1hn1c9H9+ChkIVClZhcS+\niVxb9loaTWnE9399n+s8RISptWox/+BBFh9y6q0ouJgwAU6ehFGjfC2JwWDwATmuE/Jn/Kkn5Mii\n3xcxYOEARt0wiqHNhuba4i3xyBHuTE7m5yZNKFvwMtgK4cABy6XP2LEQF+draQyGoMefekJGCXmJ\n7Ue20+OjHtQuU5upnabm2vfcyO3b+fXkST7zsdl2vvHLL5aPuSVLoFGjnOMbDIY8409KyNVi1XH2\n3175J07wUC2yGqv7r6ZwaGGav9OczQc35yr96Oho/j53jsl793pJwotJd/PhE+rXtwwVunWD/ft9\nJ4cH8Wl7BhmmLYMXV2Zct4n1CW6Wt+eRImFFmN5lOg+1eIgb3r2BuZvmup22YEgIH9apw7M7drDx\n1KmcEwQDPXpAfLz196zPd483GAz5gCvruJeA+4DiwOksl1VVS3hZthzx5+G4rKzbu47bP76d7ld3\n58WbXySsQJhb6S47s+20NEsJlSkDU6da7n4MBoNH8afhOHccmC50w2O2TwgkJQRw+PRh+nzShxNn\nTzDn9jlUCK+QYxpfm237hBMnoGVLGDwYhg71tTQGQ9DhT0oox1WVqtpZRMqJSEf78Pki1UClVJFS\nfBb3GbdUu4Umbzdhxc4VOaZJN9uelw9m234z7h4eDgsXwvPPwzff+FqaPOM37RkEmLYMXnJUQrZh\nwlqgF5bnhLUi0tPbggUrIRLCUzc+xfTO0+n1cS/Grx5PTr25y8rbdjrVqsGHH8Kdd8L27b6WxmAw\neAl3huM2ADer6j92+ApgmarWywf5XBJow3FZ2Xl0Jz0/7klURBTvdnk3RzPuEX/8wcaUFBZec83l\nYbYNMGmSNTe0erXVQzIYDJdMQA3HYbnpOeAQPoQfedX+z3/g/HlfS5E3oiKiWNFvBeEFw2k5rSXb\nDm9zGf+5K69k39mz+Wq27XOGDrUWsvbtaxktGAyGoMIdJbQYWCIi8SLSD/gC+NK7YrnPli3Qrp21\n6D4QKRxamGmdpzGkyRBaTW/F4m2Lncb1ttm2X467p2+Gt28fvPCCr6XJFX7ZngGKacvgxR3DhMeA\nKUA94Fpgiqo+7k7mIhIrIptFZKuIDM/m+l0i8ouIbBCRVSJSz9206SxaZBlSNWkC69a5I5X/ISL8\nX9P/Y16vefT/tD8vfPeC03mimkWL8mK1aty5aRNnUlPzWVIfUagQzJtnKaPPP/e1NAaDwYN4zW2P\niBQAtgA3A3uAH4E4VU12iNMS2KSqx0QkFnhWVVu4k9ZOnzEnNHcuDBkCr7wCffp4pUr5wu7ju+nx\nUQ+qlKhCQteEbOeJVJXbN26kauHCvHo57cWzapXlUWHVKrhczNUNBi8QaHNCeaUZsE1Vd6jqeaz9\niLo4RlDV71X1mB38Aajsbtqs3H47LF8Ozz0X2PNElUtUZkX8CiIKR9DinRbZzhOJCG/XqsXcAwcu\nH2/bAK1aWTe4a1drLZHBYAh4vKmEKgF/OYR32+ecMQBrvikvaQG45hpYuzbw54kKhRbi7U5vc3/T\n+2k1vRVfbr14Cs4bZtsBMe4+aBBcd53l3sfPLSMDoj0DBNOWwYs764Q6i+Rpq1C33xAi0gboD6TP\n/eT57RIZ+e88UdOm8NNPec3Jt4gIQ5oOYV6vedz72b2M/W7sRfNEbSIjuadcOQZs2ZLjWqOgQQRe\nfx327Ak4QwWDwXAxoW7E6Q1MEJG5wHRVddcd9B6gikO4ClaPJhO2McLbQKyqHslNWoD4+Hiio6MB\niIiIoEGDBsTExDB2LBQqlEibNvDGGzHcffe/X1PpOzQGSnjtvWvp8VEPFi9dzIhWI7i13a0Z129K\nS2NpiRK8uXcvdbZuvaTy0s/5ur5uhefNI7F+fQgJIWbECN/Lk004/Zy/yBPI4ZiYGL+SJ9DCiYmJ\nJCQkAGS8L/0FtwwTRKQkEAfEY/VS3gVmqarTgXkRCcUyLrgJ2IvldSGrYUJV4BvgblVdk5u0drwc\nF6v+9ps1hdCpE7z0EoS6o3b9kLMXzjL0i6Gs3r2aBb0XUKP0vxPzW1JSuH79ehIbNKBusWI+lDKf\nWbkSunc3hgoGQy4JOMME23hgLjAHqAh0A9aLyAMu0lwAhgJLgE3AHFVNFpFBIjLIjvY0EAm8KSLr\nRWStq7R5qeA118CPP0JyMtxyS2DPE03tNJVhzYZdtJ6oVtGivHDllZdstp3+5RQwXH89jB7tt4YK\nAdeefoxpy+DFnTmhLiLyCZAIhAFNVbUD1rqhh12lVdUvVbWWqlZX1Rfsc1NUdYr9/72qWlpVG9pH\nM1dp80pkpLW8pEULa/H9hg2XkpvvEBEGNxnM/N7z6f9pf15e/XLGXNCAChWoXqQII//808dS5jOD\nB1sTgP36+b2hgsFguBh3fMfNAKap6kUun0XkZlVd6i3hciIvvuNmzYIHHoApU6yRnEBl17FddJ3d\nlWvKXsPUTlMpHFqYw+fPUz8piXdq1aJ9qVK+FjH/OHMGbrzR6hGNNHswGgw5EWjDcfuzKqD0rb99\nqYDySlwcfPmltZZo9OjAdUdWtWRVVvZfydnUs9yYcCN7T+z912x782YOXC7etgEKF4b58y1np1/6\njUcpg8HgBu4ooVuyOXerpwXJT5o0sdYTLV4MvXpBoO6eXTSsKLN7zKZzzc40e7sZa/espU1kJHeX\nK0f/PJhtB/S4e6VKMGeO5eh0m2tHsPlFQLenn2HaMnhxqoREZIiI/ArUEpFfHY4dQIDOqvxL+fKQ\nmGjtDtCqFezc6WuJ8oaI8GTrJ3nj1jfo+GFHZm6YyRjb2/abl5O3bYAbboBnn7WG5U6e9LU0BoPB\nDZzOCdlm2ZHAi1iLSNPHD0+oql/4ivHEfkKqMHEijBsHH31kvccCld/++Y0us7vQo3YP4ls+xY2/\nbLj8zLZV4d574fhx64ZeLvsuGQy5wJ/mhFwpoRKqelxESpONBwNVPext4XLCk5vaffWV5fh0zBgY\nONAjWfqEQymH6DW3F4UKFCL2hklM23+YtY0bUyjEmx6a/Ix0Q4Vu3cBeyGowGP7Fn5SQqzfTLPvv\nOidHUNGunbX28dVXrX3UAtUBaumipVl812Kql6rOGwtvo3yBVEa6uT120Iy7Fy5sbf3w2mvWxJ+P\nCJr29ANMWwYvTpWQqt5m/41W1SuzHvknYv5RowasWQN//gnt28PBg76WKG+EFQjjtQ6v8WjLR1iX\neCfv7/uLJYd93nHNXypX9jtDBYPBcDGuhuMauUqoqj53DerJ4ThHUlPhiSfg449h4ULL60KgsnLX\nSrp8+SwXaj1OcovWVCxc2Nci5S9vvAFvvQXffw/FL96byWC4HPGn4ThXSigRF96sVbWNl2RyG28p\noXRmzoSHHoJ33oEuLncz8m92HdtF868noyXr80dMV4qFFfG1SPmHKgwYYLn1MYYKBgMQIEooEPC2\nEgLL71y3bpZ3mCefDNx32PGzJ6nx7QLCTm5h7S1DqBhe8aI4jh6fg4ozZ6B1a+jRA4Y73Sne4wRt\nexvXB7IAACAASURBVPoA05aexZ+UkKt1Qm3tvz1EpHvWI/9E9C1Nm1oLWz/7DO64A1JSfC1R3ihR\nqDg/39iT46VuoN7s/qzds9bXIuUf6YYKEyf61FDBYDBcjKvhuNGq+oyIJJC9iXY/L8uWI/nRE0rn\nzBnLdPu332DBAqhaNV+K9TjfHDnC7b+uh58G81rbp7m73t2+Fin/WLECeva0tn6oXt3X0hgMPsOf\nekJmOC4XqMIrr8DLL1tGC61a5VvRHmX0jh0s+mc3h9b0o2ft7oy9aSwFQgr4Wqz84c03rZ1Z16yx\n3GUYDJch/qSE3NnKoYyITLL3+/lJRCbaC1gvO0TgkUdg+nRrnmjaNF9LlDdGRUVRomBxusd+yo97\nf6Tz7M4cO3Ps8liLMXiwtQ9Rnz5e9157WbRnPmHaMnhxZxn9bOAfoDtwO3AAa3O7y5bYWPjuO/jf\n/+DBB+HCBV9LlDsKiPBB7dp8ePAoj902hysjrqTFtBbsPpbtDurBhYjlbfvgQcuNusFg8Cnu7Cf0\nm6pek+Xcr6p6bY6Zi8QCE4ACwDuqOi7L9auxtgpvCDypqi87XNsBHAdSgfOOG945xMnX4bisHD1q\nGSukplrrIgNtC59vjhzhruRk1jVuzKLfZvDU8qeY2W0mt1yVneP0IGP/fsvqZMKEwN5YymDIAwE1\nHAd8JSJxIhJiH72Br3JKJCIFgNeBWKAOECcitbNEOwQMA8Znk4UCMVl3XPUnIiKsHVvr14fmzWHT\nJl9LlDvaRkYyuGJF7ty0if4N7+Xjnh9zz4J7mLhmYq63gQg4ypWz9iAaNAh+/dXX0hgMly2uTLRP\nisgJ4D7gA+CcfcwC3HHx2QzYpqo7VPU81rBepiWfqnpAVZMAZ57a/EJTu6JAARg/Hp56CmJiYNEi\nX0uUO0ZFRVFAhOd27iTtzzS+H/A903+ezoCFAzh74ayvxfMuTZpYzgK7dgUvuDUy8xiew7Rl8OLK\nd1xxVQ23jxBVDbWPEFV1x6yoEvCXQ3i3fc5dFFgqIkkicl8u0vmEe+6xXPwMHmxtCxEoHYn0+aFp\n+/ax9tgxoiOiWdV/FcfOHqPNjDb8ffJvX4voXe6+27Iy6d078Cb3DIYgINSdSCISCdQAMhyPZd3y\nOxsu9TXcSlX3icgVwNcisllVv8saKT4+nujoaAAiIiJo0KBBxsrq9K+n/AqfOZPIq6/C//4Xw4YN\ncM89iRQqlH/lX0p4Vp06dHn/faouWcId7dvzcc+P6T+xP/WG12PxqMU0qtDIr+T1aPjFF+G220iM\ni4P77/dY/unnfF6/IAjHxMT4lTyBFk5MTCQhIQEg433pL7hjmHAf8ABQBVgPtAC+V9W2OaRrATyr\nqrF2eCSQltU4wb72DHDS0TDBneu+NkxwxunT1r5qW7ZYC1srV/a1RO7x6l9/MXP/flY1bEjhAta6\noXmb5jH488G83uF1el/T28cSepEjR6BZM2tc9Z57fC2NweBVAs0w4UGs+Z0dttPShsAxN9IlATVE\nJFpECgK9gYVO4mZqDBEpKiLh9v/FgHZAwMweFyliOT/t2dMyWFizxtcSuUeDbduoXqQIQ7duzTjX\no04PlvZZyvClwxn1zSjS1Ltra3xGZKT1xfDII5bDQA+Q/iVquHRMWwYv7iihM6p6GkBECqvqZqBW\nTolU9QIwFFgCbALmqGqyiAwSkUF2fuVF5C/gIWCUiOwSkeJAeeA7EfkZ+AFYpKo5WuT5EyKWr8wp\nU6BzZ5gxw9cS5YyIMK1WLVYfP847e/dmnK9fvj5r71vLip0r6DanGyfOnvChlF6kbl14+23LZPvv\nIJ8LMxj8BHeG4z4B+mP1iG4CjgChqnqr98Vzjb8Ox2UlOdlSRJ07W0YLoW7NxPmOzadOccPPP/PF\ntdfStESJjPPnUs8x7IthrPprFQvjFlItspoPpfQio0db+71/8w0UKvT/7Z15XFTl/vjfH3ZQNhEw\nTcFy34JEKzU10rJFrSxNzUr7lpV163frlnWvWvdmpbdueq3Mrku2aZaatlhqSrlkLqBiLqik4oZL\nAqKALM/vj2egCQEHmGFm4Hm/Xuc1c86c85wPx+P5nOezOlsag8HuuJI5rlK140SkNxAEfKeUuuAo\noWzFXZQQ6AjgIUN0SPf8+TrHyJVZePIkz+zbx+bOnWno41OyXSnF9M3T+eeP/+TTQZ8S37xC16B7\nUlQEd98NYWHw/vvu27/DYCgHV1JCtpjjEJHOIvIU0Ak47AoKyN1o0ACWLYM2bbSfaM8eZ0t0MdZ2\n90Hh4QyOiGD4rl0UWil6EeHxLo/z6aBPGbZwGO9sfKf2JbZ6eGj76S+/6PYPVcT4MeyHuZa1F1sK\nmI4HPgAaAA2BOSIyzsFy1Uq8vHSVmOefh+uv10rJlXm1eXMuKMVLBw5c9Ft883jWP7Se6Zun8+jX\nj3KhsJa9lwQG6iZSkyfDt986WxqDodZii08oBeiklMq1rPsD25RSrWpAvgpxJ3Ncadat09FzzzwD\nf/2r61p8Tly4QNyWLUxt0YI7w8Mv+v1s3lnuW3wfZ3LOsHDwQsLrXbyPW/Pzz7q3+6pV0KHDpfc3\nGNwAdzPHHQH8rdb90NUPDNWge3cduv3JJ/DAA7ppnisS4ePDovbteSQlheTs7It+D/QNZPGQxfSM\n6knXmV3ZdnybE6R0INddp0v79O8PJ044WxqDodZRUe24aSIyDZ0T9KuIfGDpsroD2/KEDJegWTNY\nuxby8qBXL7CKinYK5dnd44KCmNqiBQN37ODUhYvNbh7iwSvxr/D6ja/T56M+LNy50MGS1jDDh/9R\n3qcSbwvGj2E/zLWsvVQ0E9qCTjhdDLwIrLYsfwe+dLxodYOAAB0tN3CgDliwU56k3RkWGck94eEM\n3rmT/HKawQ3pMITv7/uevy7/Ky8lvFS7EltffhkaN9Y93t3UBGwwuCI2hWiLiC9Q7APabamK7XTc\n2SdUFkuWwMMPa+vP8OHOluZiCpViQHIyV/j7M61ly3L3S89O564Fd9GofiPm3jGX+j71a1BKB3L+\nPPTsCYMGwQsvOFsag6HKuJVPyJIblAK8Y1n2ikgvB8tVJyn2f48fryPoCgudLdGf8RTh03btWPH7\n73+qqFCayPqRrLp/FcG+wXSf3Z0DGQdqTkhHEhCg3xTefVf3IjIYDNXGlsCE/wA3KaV6KqV6ouu4\nveVYseouHTrAxo2wZQvccgucPl1z57bF7h7s5cXSjh158bffWJuRUe5+vl6+zBowi1Exo7h25rWs\nTF1pR0mdSJMmusbc6NGQmFjhrsaPYT/Mtay92KKEvJRSJamVSqkUbGwBYagaYWHw3XcQE6M7UCcl\nOVuiP9MqIIAP27Rh8M6dHKrAUS8iPHXtU8wbNI8Ri0cwed3k2pHY2rmzLgo4cCAcNoGiBkN1sCVP\naA5QCHyMrnY9HPBQSo1yvHgVU9t8QmWxYAGMGaP9RPfd52xp/sybaWnMPX6ctbGxBF2iIF5aZhqD\nFgwiKiSK2QNmE+hrS19EF+ff/4aPPoI1ayA42NnSGAw240o+IVuUkC+6GnZ3y6Y1wLtKKaf3fq4L\nSghgxw4dHXzrrbqVuLe3syXSKKV4LCWFg3l5fNWhA14eFU+scwtyeeLbJ/j58M8sHrKYVmFOz3eu\nHkrBk0/qGkzffANWNfYMBlfGlZRQhU8NEfFCV0d4Uyl1l2V5yxUUUF2iQwcdur1/P/TpA+npjjlP\nZe3uIsK0li0pUoq/7Nt3SVObn5cf/+v/P5665il6zO7B0j3ltZdyE0R0bbmAAB3WWOrvN34M+2Gu\nZe2lQiVk6Qm0R0SiakgeQzmEhMDSpXDDDRAX5zqN8rw9PFjQvj1rMjOZYoN/RER4pPMjLB26lDHf\njmHC6gnunU/k6Qnz5sHu3fDSS86WxmBwO2wxx61Bd1PdCJyzbFZKqQEOlu2S1BVzXGm++goeeghe\neUXnTroCB3Nz6ZaYyDstW3JHGTXmyuJ49nEGfz6YQN9APr7zY0L9Qx0spQM5cUKX+HnxRf2PYzC4\nMK5kjrNFCRXnBFkLrJRSP15ycJF+wBTAE5iplJpU6vc2wBy0kvu7UupNW4+17FMnlRBASor2E3Xr\nBtOmgZ+fsyWCTVlZ3JqczLKOHYmzaoZXEfmF+Ty7/Fm+2fsNi4cspmNkRwdL6UBSUnQy69y5cPPN\nzpbGYCgXV1JCFdWO8xeR/wcMBtoA65RSCZbFFgXkCbwN9APaAUNFpG2p3U4DTwJvVOHYOk2rVtok\nl5Ghn3sHD1Z/zOra3bsEBfF+q1YM3LGDgzbWWPP29GbqLVN5qfdLxH8Yz7zkedWSwam0agULF8KI\nEbB1q/Fj2BFzLWsvFfmE5gKdge3ArZRSFDbQFdinlDpgKfMzHxhovYNS6qRSajNQugzQJY816JY3\nCxbojq1du+oALWdzZ3g4f2valH7bt5dZ7LQ87ut0HytGrGDc6nE8/s3j5BW4aexL9+4wfTrcdpvz\nK9IaDG5ARUqorVLqPqXUDGAQ0LOSYzcB0qzWD1u2OfrYOoWI7km0aBE8+qh2SRQUVG2s3r1720Wm\np5s2ZWBYGLcnJ3OuErWHYhrFsOWRLRzPPk6POT347cxvdpGnxhk0CP7xD3qPHw/HjztbmlqBve5N\ng+tRUYZhyaNMKVUgle+6Vh1njc3HPvjgg0RHRwMQEhJCTExMyQ1bPIWvC+vdu8O0aQm88gqsX9+b\nefNgzx7nyfPaFVdwy4cfEr91K2tHjsTbw8Pm4xcOXsiUDVO4+sWr+dt1f+PF+1+scfmrvf7YYyRs\n3gzdu9N7yxYICXEt+cx6nVpPSEjggw8+ACh5XroK5QYmiEghcN5qkz+QY/mulFIVep5F5FrgJaVU\nP8v6C0BROQEGE4Ds4sAEW4+ty4EJ5VFYqKPmZszQDfNuuMH2YxMSEkpuYHuQX1TEnTt20MDbmw/a\ntMGjki8y69PWc+8X9zK0w1Am3jgRLw/3qhaVsHo1vZcs0YUAv/9e5xMZqoS97826jlsEJiilPJVS\ngVaLl9V3W0KfNgMtRSRaRHyAIUB52YmlL0ZljjVY4ekJEyboAK1hw2DiRCin/Y/DKc4h2puTw9jU\n1Eof361pNxJHJ7ItfRvxc+M5etbNfCwi8J//QHQ0DB4M+S7RAcVgcCls6idU5cFFbuGPMOtZSqnX\nRGQ0gFJqhog0AjYBQUARcBZop5TKLuvYMsY3M6EKOHJEBy0EBuoSZw0bOkeO0/n5XJ+UxKhGjXi2\nWbNKH1+kinh1zau8u+ldPrrzI2684kYHSOlA8vN1PH1oqH478LClbrDB4DhcaSbkUCXkaIwSujT5\n+TpYYcECndjfrZtz5EjLzaXn1q0837QpjzapWozJqt9Wcd+i+xjdeTT/6PkPPD087SylAzl/XucO\nxcbqUj+V97EaDHbDlZSQeSWr5Xh762LP06bpl/GJE8tvllfsyHQETf38WHnVVUw8dIi5VYwYi28e\nz+ZHNvPToZ+I/zCetMy0Sx/kRP50PQMCdKmLdet0x0Lz8lQpHHlvGpyLUUJ1hAEDtH98xQro21eb\n6mqaK/39WdGpE2NTU1lw4kSVxmgc2Jjl9y3nlha3EPe/OBbvWmxnKR1ISAgsX66DFMaPd7Y0BoNL\nYMxxdYzCQnj1VXjnHfjf/6B//5qXYVt2Njdt28bM1q3pXw1H1YbDGxi2cBj9WvTjzZvexN/b345S\nOpCTJ6F3b7j3Xhg3ztnSGOogrmSOM0qojrJuHQwfrmdIkyfXfO25TVlZ3JaczMdt23JTgwZVHicz\nN5PRX4/m15O/Mn/QfNpHtLejlA7k+HGtiEaNgueec7Y0hjqGKykhY46ro3TvrtuGHz0K11wDu3bV\nrN29S1AQi9q3575du/ju9OkqjxPsF8y8QfP467V/pffc3szYPMNlWohXeD0bNYIffoD334cpU2pM\nJnfF+IRqL0YJ1WFCQ+Hzz+GJJ3QR1CVLatZf3iMkhC87dOD+3bv5+tSpKo8jIoyMHcnakWt5b8t7\nDFowiJPnTtpRUgfRpAmsWqWj5aZOdbY0BoNTMOY4A6B7so0YAWFhMHs2NG5cc+femJVF/+RkZrRq\nZXMvovLIK8hj3OpxfLz9Y2bcPoP+rZ3g9Koshw7BjTfqPkRjxzpbGkMdwJjjDC5Hmzawfr3uyxYb\nC599VnPn7hoUxLJOnXg0JYXPqxg1V4yvly+T+07ms7s/46nvnuL/lv4fZ/PO2klSB9GsGfz4o05k\nnTDBhG8b6hRGCRlKWLcugQkT4Ouv9bNw2DD4/feaOffVgYF8f9VV/GXfPj5NT6/2eNdHXc+2R7cB\ncNV7V7Hm4Jpqj1lZKuXHaNxYK6LFi00eURkYn1DtxSghw0V06QKJiRAeDlddpVNbaoKr6tdn5VVX\n8dz+/bxjh0SmQN9AZg6YydR+UxnyxRCeX/G8a/cpioiA1au1n+ipp5xX9M9gqEGMT8hQIStX6iji\n22+HSZN0HTpH81tODjdt387QiAhejo6mCm1ELuLkuZOM/no0e3/fy5yBc4hrHGcHSR1EZibccgu0\nbq2j57y9nS2RoZZhfEIGt6FPH9i+HXJzoUMHWLbM8eds7u/PuthYvj19mkdTUii0w4tGeL1wFg5e\nyNjuY7nt09t4bsVz5OTnXPpAZxAcrEtbpKfDHXfAuXPOlshgcBhGCRlKKM/uHhKiI+ZmzoTHH4f7\n74dqpPbYRISPD6tjYtifk8PgX38ltxIdWstDRBjeaTjJjyVzKPMQnd7rxE8Hf7KDtGVTLT9GvXo6\nZj48XEfOVSOEvTZgfEK1F6OEDDbTty8kJ+v8og4ddI6RI62hgV5efNOpE14i3Lx9O6ft1I8nol4E\n8++ezxt932DYwmE8/s3jZOVl2WVsu+LtDXPm6M6EPXrAwYPOlshgsDvGJ2SoEuvX67SWNm10HTpH\n5hUVKcULqaksOnWKrzt2pLUdO5Rm5Gbw7PJnWb5/Oe/d/h63trzVbmPblalT4Y03dCXumBhnS2Nw\nc4xPyOD2dOumy/60bw+dOsF//wsFBY45l4cIk668krHNmtEzKYlVZ87YbewQvxBmDpjJ7IGzeXLZ\nk9y94G4OZx222/h246mndJfWvn3hyy+dLY3BYDccqoREpJ+I7BaRvSLyfDn7/Nfy+zYRibXafkBE\ntotIkohsdKScBk1l7e5+fvDKK/DTTzq9pUsX2LDBMbIBPHTZZcxv146hO3cy86h9W333uaIPOx7b\nQfvw9sS8F8Ob698kv7B65j+7+zHuuQe+/VbXWZo0qU7lEhmfUO3FYUpIRDyBt4F+QDtgqIi0LbXP\nrUALpVRL4BFgutXPCuitlIpVSnV1lJyG6tOunU5tefZZuOsueOQRxwUu3BAayprYWCanpfFESgoX\n7JhL4+/tz8s3vMzPD/3M8tTldH6/M2sPrbXb+HahWNN/9hmMHAl5Lpz3ZDDYgCNnQl2BfUqpA0qp\nfGA+MLDUPgOAuQBKqV+AEBGJtPrdJWyWdYXevXtX+VgR3Rpi5049Q2rXDmbNcky+ZauAADZefTVp\neXn02rqVw7m5dh2/ZVhLvhv+HeN6juPeL+5l1JJRpGdXvopDda5nhVx+OaxZA1lZOnLu2DHHnMeF\ncNi1NDgdRyqhJoB1/+XDlm227qOAlSKyWUQedpiUBrsSEqL9Q8uWaSUUF6er0dj9PN7eLO7QgQFh\nYXRNTCTBjn4i0I7be9rfw64xu2jg34D277Zn0tpJ5BbYV+FVmXr14IsvtI8oLk7bRA0GN8TLgWPb\narAub7bTQyl1VETCgRUislspdVEBsAcffJDo6GgAQkJCiImJKXlrKrYjm3Xb1qdMmWK363f11TBx\nYgKrV8P99/cmLg7uuiuBJk3sJ+9PP/7IdUBcp07cu3MnAw8fZkhEBPE33GDX6/PGTW8wuvNoRk4d\nyZT5U5j2+DQGtR3EjxbtWhPXs8z1n36CXr3ofc01cM89JNx1FwweTG87//2usG7tE3IFedxtPSEh\ngQ8++ACg5HnpMiilHLIA1wLfWa2/ADxfap/3gHut1ncDkWWMNQF4poztymA/Vq9e7ZBxz59XauJE\npcLClHr2WaUyMux/joM5Oeq6LVtU361b1dHcXPufwMIPqT+oTtM7qetnX682H9lc4b6Oup5lcuCA\nUnFxSt19t1KZmTV33hqiRq9lHcDy7HTY878yiyPNcZuBliISLSI+wBBgaal9lgL3A4jItUCGUipd\nRAJEJNCyvR5wE5DsQFkNOM7u7u8PL74IO3bAmTO6JNrUqfb1qTfz8+OnmBi6BQURu3kzXzmowkB8\n83gSH0lkRKcR3D7vdoYvGs7+3/eXua+jrmeZREVpP1HDhroXhyPDFJ1AjV5LQ83iSA0H3ALsAfYB\nL1i2jQZGW+3ztuX3bcDVlm1XAFsty47iY8sYv3qvAwansHWrUrffrlSzZkrNmqVUfr59x19z5oyK\nWr9ejdmzR50rKLDv4FZk5Wapfyb8U4VNClOjvxqtDmcedti5KsWiRUpFRir18sv2v7iGWgEuNBMy\nFRMMJSQkJNToG+f69XqGdPw4/OtfMGgQeNhpbp6Rn8+YvXv5JSuLWW3a0CskxD4Dl8Hp86eZtG4S\nMxNn8lDsQ4ztMZawgLAav55/4uhRXeQvJwc+/hiaN3eOHHbCqdeyFmIqJhgM6KoLq1fraLpJk3SQ\n1+LF9gnrDvH25pN27fhPixYM37mTx1JSyHJQSYewgDAm951M8mPJnL1wltZvt2bcqnFk5mY65Hw2\n0bixbgR11106t+idd0x/IoNLYmZCBpdAKV00+pVXdNuIF16AIUPAyw7xmxn5+Ty7fz8rzpzh3Vat\nuC0srPqDVsD+3/czad0kFu5ayKiYUTzT7Rka1W/k0HNWyK5dutCfp6cuhd66tfNkMbgErjQTMkrI\n4FIopV/gJ07UFqXnn9dWJV/f6o+98vffeXzvXtoEBDClRQuu8Pev/qAVkJaZxhvr3+Cj7R8xrOMw\nnuv+HM2Cmzn0nOVSWAjvvgsvvwzPPKMXHx/nyGJwOq6khIw5zlCCdS6GsxCBm2/WuZezZ+t8zCuv\nhNdeq34poD4NGpDcpQvdgoLoumUL43/7jfN26FNUHvuT9jP1lqnsGrOL+j71iZ0Ry/BFw9l0ZJPD\nzlkunp7w5JOwebOOoqvJvu12wBXuTYNjMErI4LL07Anffw9ffw0pKdCiBTz6qC4NVFV8PTwYGxVF\nUlwcKefP02bjRuYcO2aX7q3lEVk/ktf7vM7+v+yn82Wduefze+g+uzuf//o5BUUOKj1eHtHR8M03\nMHmy7lB4xx2QmlqzMhgMVhhznMFtSE+H996D6dN1S50nn4R+/fRLflVZn5nJ2NRUTufn8+oVVzAg\nLAwRx1opCooKWLJ7CW9teIu0rDTGdBnDyJiRhNcLd+h5LyI3F956C958E0aN0rZPB/vLDK6BK5nj\njBIyuB15eTBvnlZIR47o5+eoUTpfsyoopfj2998Zm5pKkKcn46OjuSk01OHKCGDTkU28veltluxe\nws0tbubhqx8mvnk8HlKDRoojR3SM/BdfwNNP66V+/Zo7v6HGcSUlZMxxhhLcxe7u6wsPPqiLAnzz\nja7C0LmznhV98QVcuFC58USE28LC2BoXx5gmTXhm3z66bNnCopMnKarGS44t17NLky7MvWMuB54+\nQM9mPXlm+TO0nNaS19a8xpGsI1U+d6Vo0kRr9A0btK2zRQs9O8rOrpnz24C73JuGymOUkMGtKe7q\nmpYGI0bA22/DZZfpnkYJCZVLjfEUYVhkJNu7dGFcdDSvHzpEh02bmHn0qEMDGEB3eB3TdQxbR29l\n3qB5pJ5JpeP0jsTPjWdm4kzO5Ni3SniZtGgBn36qHXEbN+oE1/Hj4eRJx5/bUGcx5jhDrSMtDebP\n18/Tkyfh3nv10rmzjr6zFaUUqzIymHr4MOszM3mwUSMeb9LE4aHdxeQW5PLt3m/5NPlTVqSuIL55\nPMM6DOPWlrdSz6ee4wXYtw/eeAMWLIBhw3QgQ7t2jj+vweG4kjnOKCFDrWbnTu0/mj9f+5IGDICB\nA6FXr8qlyfyWk8P0o0eZc/w4cYGBPBAZycCGDfGvTlREJcjMzWTRrkXM2zGPDYc30Cu6FwNbD6R/\nq/5E1o+89ADV4dgxnWNUnOj66KO6EoPJM3JbjBKyE0YJ2ZfaXJ9LKV04YMkSvezZo31It90GffpA\nIxsLGpwvLGTxqVN8ePw4m86eZVB4OPdHRtI9OBiPUtMsR13PjNwMlu1dxpd7vuT7fd/TPqI9/Vv1\np+8VfYm9LNZxQQ35+fDllzo8cedOPb0cPlzXW3JwEEdtvjedgVFCdsIoIftSl/6jHzsGX30F332n\n69c1baqblPbtC9dfrxuXXoojeXl8kp7OR+npnM7P546GDbmzYUN6h4Tg7eFRI9czryCPVb+tYtm+\nZaxIXcGp86e4sfmN9L2iL32v7Ou4Cg179sAnn2ibp6enVkaDB+uZkgMUUl26N2sCo4TshFFCBntQ\nUKALCaxcCStWQGIidOwI3bvrpVs3iIioeIyU8+dZfOoUi0+eJCUnh34NGnBTaCh9QkO53M+vZv4Q\ndKmgFakrWJG6gpWpKwn0CaR7s+50b6qX9hHt7TtTUkoHMXzyCSxaBAEB0L+/Xnr0sE/xP4PdMUrI\nThglZHAE587p5+q6dbrdxM8/615x3brp4IaYGL0EBZV9/JG8PL49fZqVZ87ww5kzhPv40Dc0lF4h\nIVwXFERjexTCs4EiVcSeU3tYl7ZOL4fWcfL8Sa69/FriLovj6suuJvayWKKCo+yTE6UUbN0KS5fq\nJTVVl72Ij4cbboAOHezXq8NQLeqMEhKRfsAUwBOYqZSaVMY+/0U3vzsPPKiUSqrEsUYJ2RFj8iib\noiLtAvn5Zz1L2roVkpO1Hyk2Viuk9u21JerKK//w1yckJNCzVy+2Zmez4swZ1mZm8nNmJgGefkl0\nxAAACqRJREFUnlwXFMS1QUHEBQbSsV49Qry9a+RvOXHuBOvT1pN4LJHEY4kkHU8iJz+HmEYxxDaK\npUNEB9o0bEObhm0I9Q+t3smOHdNx8qtX688zZ/TUsksXvcTFQYMGNg1l7k37UieUkIh4oruq9gGO\nAJuAoUqpXVb73Ao8oZS6VUSuAaYqpa615VjL8UYJ2ZEpU6bw9NNPO1sMt6CwUNez27oVkpJ00MOe\nPXDoEDRrBm3aQHb2FO6992maNdPVHKKiwN9fsS8nhw1ZWfyclUVSdjY7zp2jgZcXnerXp2O9erSv\nV48W/v5c6edHmLe3wys3pGenk3Q8iaRjSew6tYvdp3az+9Ru/L39tUIKa0PLsJZEBUcRFRJFdEg0\n4QHhlZfr8GE9tdy0SS+JiRAerjV527Y6/LttW63NS4XBm3vTvriSEnKkwbYrsE8pdQBAROYDAwFr\nRTIAmAuglPpFREJEpBHQ3IZjDXYmIyPD2SK4DZ6e+nnZti0MHfrH9gsXYP9+2L0b3n47g40b4fPP\n4eBBnb9Uv77QrFkAUVEBNGnSiNsi4cFIBY1yOVOUzfGCcyzOPsWBCznsy8lBgVZI/v5E+fnR2MeH\nJr6+NPbxobGvL5f5+FQ7TDyyfiT9WvSjX4t+JduUUhzLPlaikPae3sv6tPUczDzIgYwD5OTn0Cy4\nGVEhUVweeDmR9SOJrBdJo/qN/vQ9xC/kD2V1+eU6eGHwYL1eVKQ197ZtWosvWqQ/9+3TGcfR0XqJ\niiIjKUlX/r78cu2gCwpyeESeoWZwpBJqAqRZrR8GrrFhnyZAYxuONRhcDh+fP5TTtm3w0kt//FZU\npJNnDx7Uy9Gjuijrxg3CiRP+pKf7k54eTnq69ucHhygCmxRQEJ3D3qY57I3IozA0l/ygLHIC8jjr\nm0eW9wV8lAdBeBMk3gR7eBHq5UWYtzcNfbxo6OdNkLcngd4eBPl4EujtSX1PD+p5epYs/h4e+Ijg\n7eGBtwgeIogIjQMb0ziwMfHN4y/6O7MvZHMwQyuko2ePkn4unX2/72Nt2lrSs9NJP5dOenY65/LP\nEeIXUrKE+oX+aT3YN5j60fUJaHk5AYNaEeA9jHr4EJqeSfDxDAKPncb/6EnyU/eRP+7veB49jpw6\nBRcuIBERWiFFROgZVUiIVk5BQRAc/Mf3oCBdC8/PTy++vn/+bvxUTsWRSshWO5l5nXERDhw44GwR\nahWlr6eHB0RG6qVr1/KPU0qXbcvIEDIyvMnM9CYjI4iMDPSyV3+ePw/nzisyCwvIIp+zqoCzHgWk\ne+WT41VAnk8+eb55FHoXUuRbSJFPIfgWgX8h4l+I+BWh/ArBpwi8ilBeCrwUFIIUeiCFUvLpUfy9\nSPR/WCWIAohAVCSiwPIL4i1IMEgw1EeRTyEnKeAEBSgKUHkFqLx81Nl8lBSgKERJIYoikCzL90KU\npwdc3gDVNJiiTRt47cm7USigCA+l8ClU+BZ44FMo+BaCV5Hgpf8UvArP4nX6LN4nDuNVpPAsAg8U\nHkXgocBTqZLPIoEihCIBJcUPLrH6rj+ViOWzeJtQ2qClgNZnzjPnn+OrcefULRzpE7oWeEkp1c+y\n/gJQZB1gICLvAQlKqfmW9d1AL7Q5rsJjLduNQ8hgMBiqQF3wCW0GWopINHAUGAIMLbXPUuAJYL5F\naWUopdJF5LQNx7rMRTQYDAZD1XCYElJKFYjIE8D36DDrWUqpXSIy2vL7DKXUtyJyq4jsA84BIys6\n1lGyGgwGg8E5uHWyqsFgMBjcG7cPCxGRl0TksIgkWZZ+lz7KYI2I9BOR3SKyV0Sed7Y87o6IHBCR\n7Zb7caOz5XE3RGS2iKSLSLLVtgYiskJEUkRkuYiEOFNGd6Kc6+kyz023V0LogJT/KKViLct3zhbI\nnbAkBr8N9APaAUNFpK1zpXJ7FNDbcj9WEAdnKIc56PvRmrHACqVUK+AHy7rBNsq6ni7z3KwNSghM\nmHd1KEkqVkrlA8WJwYbqYe7JKqKUWgOUbiVbkthu+byjRoVyY8q5nuAi92htUUJPisg2EZllpumV\npryEYUPVUcBKEdksIg87W5haQqRSKt3yPR1wcCe/OoFLPDfdQglZbMHJZSwDgOnovKIY4BjwplOF\ndT9MZIr96a6UikUX5h0jItc7W6DahKVgpLlvq4fLPDfdotmHUqqvLfuJyEzgKweLU9s4AjS1Wm+K\nng0ZqohS6pjl86SILEabPNc4Vyq3J11EGimljovIZcAJZwvkziilSq6fs5+bbjETqgjLDVnMnUBy\nefsayqQkqVhEfNCJwUudLJPbIiIBIhJo+V4PuAlzT9qDpcADlu8PAF86URa3x5Wem24xE7oEk0Qk\nBj09/w0Y7WR53AqTGGx3IoHFlsrRXsAnSqnlzhXJvRCReejyXQ1FJA0YD7wOLBCRh4ADwGDnSehe\nlHE9JwC9XeW5aZJVDQaDweA03N4cZzAYDAb3xSghg8FgMDgNo4QMBoPB4DSMEjIYDAaD0zBKyGAw\nGAxOwyghg8FgMDgNo4QMbomIFFqVoU8Skecs2w+ISINyjrlMRL4XkSgRKbLkRxX/9raIPFDWceWM\nNVpERlRD/g9EZJDle4KllUaSiOw09eYMdYnakKxqqJuct9RnK42i/OrA/YDikvUngL+IyAxL9fBK\nJcwppWZUZv+yhrA6pwKGKaUSRSQU2C8ic5RSBdU8B6CrOAD5lr/TYHApzEzIUBt5ztJU7hcRudJq\n+83AMrSSOonuS3PR7EdEYkRkg6XC8KKyKgxbmoI9Y/meICKvW863R0R6lCWUZba1W0RWABGlf7Z8\nBgHZQGEl/+aKaA3sEZF/i0gbO45rMFQbo4QM7op/KXPcPVa/ZSilOqGb9U2BkuZ9rZVSu632mww8\nKyLF/w+KZyYfAn9TSl2Frqk1oYzzl57JeCqlrgGeLmt/EbkLaAW0Be4Huln/DHwiItuAXcC/lB1L\nmSilkoBOwG5gpoisEZEHLbXtDAanYsxxBnclpxxzHMA8y+d84C3L92uAX6x3Ukr9JiK/AMOKt4lI\nMBBsaQQGuoHa5zbIs8jymQhEl/H79cCnFuVyTERWWYvCH+a4hsB6EfleKXXIhvPahFIqG5gFzLJ0\nzp0FTAWC7XUOg6EqmJmQobZTPKO4BW2KK82rwPPo2YhwsW/I1u6TeZbPQsp/ubvkWEqpU2hFds2f\nDhTpajXr6y8ir1i+J4qIh4hstay/LCJ3WO17tdUY0SIyAa0wDwKDbPzbDAaHYWZChtqGoNtRTLJ8\nrrdsj0dXYv4TSqk9IrIT6A9sVEplicgZEemhlFoLjAASKjiXrfwEjBaRuehK2zcAn5QeyxJEEGuR\n31rOjZbtxXwF/MNqPabU+UpaHYhINDATCANmA92UUmW1ezYYahyjhAzuir+IJFmtL1NKvYieyYRa\n/Cu5wFARCQdylVLnrPa3nvFMBKzHegB4z6IQ9gMjy5GhPL/NRduVUotFJB7YCRziD+VYzCcikgP4\nAnMsfhx7UQCMVUpttuOYBoNdMK0cDLUeERkONFFKTXa2LAaD4c8YJWQwGAwGp2ECEwwGg8HgNIwS\nMhgMBoPTMErIYDAYDE7DKCGDwWAwOA2jhAwGg8HgNIwSMhgMBoPTMErIYDAYDE7j/wPGzE7BE2ip\nngAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from numpy import ones,arange,cos,sin,pi\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show,legend,grid\n", "from scipy.special import erfc\n", "from math import log10,sqrt,exp\n", "from __future__ import division\n", "#Comparison of Symbol Error Probability\n", "#of Different Digital Transmission System\n", "#Eb = Energy of the bit No = Noise Spectral Density\n", "Eb_No =[18,0.3162278]\n", "x = arange(Eb_No[1],1/100+Eb_No[0],1./100)\n", "x_dB = [10*log10(xx) for xx in x]\n", "Pe_BPSK=ones(len(x))\n", "Pe_BFSK=ones(len(x))\n", "Pe_DPSK=ones(len(x))\n", "Pe_NFSK=ones(len(x))\n", "Pe_QPSK_MSK=ones(len(x))\n", "for i in range(0,len(x)):\n", " #Error Probability of Coherent BPSK \n", " Pe_BPSK[i]= (1/2)*erfc(sqrt(x[i]))#\n", " #Error Probability of Coherent BFSK\n", " Pe_BFSK[i]= (1/2)*erfc(sqrt(x[i]/2))#\n", " #Error Probability Non-Coherent PSK = DPSK \n", " Pe_DPSK[i]= (1/2)*exp(-x[i])#\n", " #Error Probability Non-Coherent FSK\n", " Pe_NFSK[i]= (1/2)*exp(-(x[i]/2))#\n", " #Error Probability of QPSK & MSK\n", " Pe_QPSK_MSK[i]= erfc(sqrt(x[i]))-((1/4)*(erfc(sqrt(x[i]))**2))\n", "\n", "plot(x_dB,Pe_BPSK)\n", "plot(x_dB,Pe_BFSK)\n", "plot(x_dB,Pe_NFSK)\n", "plot(x_dB,Pe_QPSK_MSK)\n", "xlabel('Eb/No in dB ---->')\n", "ylabel('Probability of Error Pe--->')\n", "title('Comparison of Noise Performance of different PSK & FSK Scheme')\n", "legend(['BPSK','BFSK','DPSK','Non-Coherent FSK','QPSK & MSK'])\n", "grid()\n", "show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 7.06 page 324" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Table 7.7 Bandwidth Efficiency of M-ary PSK signals\n", "______________________________________________________\n", "M\n", "[2, 4, 8, 16, 32, 64]\n", "______________________________________________________\n", "r in bits/s/Hz\n", "[0.5, 1.0, 1.5, 2.0, 2.5, 3.0]\n", "______________________________________________________\n" ] } ], "source": [ "from math import log\n", "\n", "#Bandwidth Efficiency of M-ary PSK signals\n", "M = [2,4,8,16,32,64]##M-ary\n", "Ruo = [log(MM,2)/2 for MM in M]# #Bandwidth efficiency in bits/s/Hz\n", "print 'Table 7.7 Bandwidth Efficiency of M-ary PSK signals'\n", "print '______________________________________________________'\n", "print 'M\\n',M\n", "print '______________________________________________________'\n", "print 'r in bits/s/Hz\\n',Ruo\n", "print '______________________________________________________'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 7.6 page 326" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "coordinates of message points\n", "\n", "(0.707106781187+0.707106781187j)\n", "(0.707106781187-0.707106781187j)\n", "(-0.707106781187-0.707106781187j)\n", "(-0.707106781187+0.707106781187j)\n", "dibits value ['0', '1', '10', '11']\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "0.707106781187\n", "0.707106781187\n" ] } ], "source": [ "from numpy import ones,arange,cos,sin,pi\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show\n", "\n", "\n", "#Figure7.6 Signal Space Diagram for coherent QPSK system\n", "M =4#\n", "i = range(0,M)\n", "y = [cos((2*ii-1)*pi/4)-sin((2*ii-1)*pi/4)*1J for ii in i]\n", "annot = [bin(xx)[2:] for xx in range(0,M)]\n", "print 'coordinates of message points\\n'\n", "for yyy in y:\n", " print yyy\n", "\n", "print 'dibits value',annot\n", "plot([y[0].real,y[1].real,y[2].real,y[3].real],[y[0].imag,y[1].imag,y[2].imag,y[3].imag])\n", "xlabel(' In-Phase')#\n", "ylabel(' Quadrature')#\n", "title('Constellation for QPSK')\n", "show()\n", "print y[0].imag\n", "print y[0].real\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 7.7 page 329" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Table 7.7 Bandwidth Efficiency of M-ary FSK signals\n", "______________________________________________________\n", "M = \n", "[2, 4, 8, 16, 32, 64]\n", "______________________________________________________\n", "r in bits/s/Hz=\n", "[1.0, 1.0, 0.75, 0.5, 0.3125, 0.1875]\n", "______________________________________________________\n" ] } ], "source": [ "from math import log\n", "# Bandwidth Efficiency of M-ary FSK\n", "M = [2,4,8,16,32,64]##M-ary\n", "Ruo = [2*log(MM,2)/MM for MM in M]# #Bandwidth efficiency in bits/s/Hz\n", "#M = M'#\n", "#Ruo = Ruo'#\n", "print 'Table 7.7 Bandwidth Efficiency of M-ary FSK signals'\n", "print '______________________________________________________'\n", "print 'M = \\n',M\n", "print '______________________________________________________'\n", "print 'r in bits/s/Hz=\\n',Ruo\n", "print '______________________________________________________'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example7.12.7.2 page 332" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "coordinates of message points\n", "\n", "[1.0, -1.0]\n", "[-1.0, 1.0]\n", "[-1.0, 1.0]\n", "[1.0, 1.0]\n" ] }, { "data": { "image/png": "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\nyZ49e9i9ezepqame169VqxYbN270vL73z/Xq1aNhw4aF+rJv3z5mz57t9z15P//AgQPs2rWLOnXq\nULt2bdavX1+o/fr166lTp07A2y7Y9xlr0aIFv/zyi2f+3HPP5ddffy00SC1btoxzzz3X8To3bNhQ\n6OfTTjuNatWqndLO16Dx+OOP8/HHHzN37lySkpIKLTt+/DirV6/m/PPPd9yXaOBk0BiO64aFQ4E2\nwPXAgFB2KlpZ6jCBuP7663n//feZO3cu+fn5HD58mNzcXPLy8ti+fTvvvvsuv/32G6eddhpVqlSh\nfPnygGs306ZNmwBIS0vz7Mrav38/FSpUoFq1ahw9epS//vWvhb5FX3311YwaNYo9e/aQl5fH888/\n7/lQzsrKIjk5mdGjR3Po0CHy8/P58ccfWbJkid/+f/jhhyxcuJCjR4/y6KOP0q5dO+rUqcNll13G\nL7/8wquvvsrx48d5/fXXWblyJT179gx4G9WsWZM1a9YU2+bYsWMcPnyYEydOcPToUQ4fPux3oO7R\nowf//e9/PfPnnHMOLVu2ZOTIkRw+fJi3336bH3/8kb59+wKu03HLlStXaGDwpqpMnz6dFStWcPDg\nQR577DGuuuqqUwa7gwcPsnjxYjp37ux5bNSoUbz66qt88sknpKenn7Lur7/+mgYNGhRKMrGgxEFD\nVb9W1f2qulFVb1LVPqr6ZTg6F40sdZiivD9ARMQzX7duXd59912eeuopatSoQWZmJmPHjkVVOXHi\nBM8++yx16tShatWqLFiwgBdeeAGAJUuWcNFFF5GcnEyvXr0YP348DRo0oHv37nTv3p1zzjmHBg0a\ncMYZZxTaTfTYY49Rt25dGjZsSE5ODldddRUVK1YEoHz58syePZulS5fSqFEjqlevzm233XbKrhvv\n93HdddcxcuRIqlatynfffcf06dMBqFq1KrNnz2bs2LFUq1aNMWPGMHv2bDIyTr0Ft/f28LW9hg0b\nxptvvklGRgbDhw/32Zdu3bpRuXJlvvzyS2677TYqV67MggULfLZt1aoVqampfP31157HXnvtNZYs\nWUJGRgYPP/wwb731FlWrVgVcaaxBgwZ+U5KIcMMNN3DTTTdRq1Ytjh49yvjx4095L/PmzaN9+/ae\n7Q2u60U2btzIWWedRXJyMsnJyfz973/3LJ8xYwZ33nmnz9eNaiUdKQc+8zHNC/SIeygnInS2jZ1h\n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\n7P8D6Iyuzawxn60AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from __future__ import division\n", "from numpy import pi,sin,cos,arange,ones,sinc\n", "from math import log\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,xlabel,ylabel,title,show,legend,grid\n", "\n", "M =2#\n", "teta_0 = [0,pi]#\n", "teta_tb = [pi/2,-pi/2]#\n", "s1=[]\n", "s2=[]\n", "for i in range(0,M):\n", " s1.append(cos(teta_0[i]))\n", " s2.append(-sin(teta_tb[i]))\n", "y = [[s1[0],s2[0]],[s1[1],s2[1]],[s1[1],s2[1]],[s1[0],s2[1]]]\n", "print 'coordinates of message points\\n'\n", "for xx in y:\n", " print xx\n", "plot(y[0])\n", "plot(y[1])\n", "plot(y[2])\n", "plot(y[3])\n", "xlabel(' In-Phase')#\n", "ylabel(' Quadrature')#\n", "title('Constellation for MSK')\n", "legend(['message point 1 (0, pi/2)','message point 2 (pi, pi/2)','message point 3 (pi, - pi/2)','message point 4(0, - pi/2)'])\n", "show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example7.29 page 334" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nk08CsH79eipWrMhff+W+dC5cuJDDDz+cAwcOHFTnKSkpjB07lmbNmlG1alWuvjp3hqDs7GxuvPFG\natSoQePGjXnqqadISUkhOzs7qL0Rowiz9HUEysZohkCNBjNXzdQmjzfRge8M1E07N0WljHjks88+\ni7UJcUG07qtIkJGRodOmTTvouIjoSSedpJs3b9bdu3frwoUL9fDDD9e5c+dqdna2vvzyy5qRkaF7\n9+7VPXv2aIMGDXT06NG6f/9+feutt7RMmTJ65513qqrquHHjtFu3bgflv3LlSlVVve666/Sss87S\nzZs36/bt2/WMM87Q2267TVXdPVS6dGkdOXKk7t+/X6dMmaIVKlTQLVu2qKrqlVdeqT169NC1a9fq\ngQMH9KuvvtI9e/bopEmTtFOnTjnlLVq0SKtVq6b79u076LvOnj1by5cvryNHjtTPP/9cd+/enef8\nkCFDtFq1ajpv3jzdv3+/XnTRRTpgwIB8v8uoUaN00KBBOeeGDh2aUw/BEBE999xz9YgjjtDffvst\n5/iBAwe0ffv2eu+99+q+ffv0559/1saNG+vUqVNVVfXUU0/VMWPG5KS/7rrr9Nprr823zkVEzzjj\nDN26dav++uuvWqNGDf34449VVXXMmDHasmVLXbNmjW7evFl79eqlKSkpeuDAgYNsDXYve8eL/swN\nKRHUBvYBA8Mp5FC3aP6Ad+zZoddOuVbrPFpHJy+fHLVyjPijsPsKIrOFQ8OGDbVSpUqalpamaWlp\nes4556iqe5D4O/bLL7/8oAdc8+bNdebMmTpz5kytU6dOnnPHHXdcSI4hOztbK1asmPNgVVX98ssv\ntVGjRqrqHEP58uXzPKQOP/xw/frrr/XAgQNavnx5/fbbbw/6Xrt27dKqVavqihUrVFX1xhtv1Kuu\nuipoPXz00Ud6xhlnaFpamlaqVElvuOGGnDKHDh2ql1xySU7aKVOm6JFHHnnQd1FVHTlypA4cODDn\n3NChQ/WOO+4IWq7v+ipVqug111yT5/icOXO0QYMGeY498MADOmzYMFVVnThxonbt2lVVVffv36+1\natXSefPmqWr+juGLL77I2e/fv78+9NBDqqrao0cPfe6553LOTZs2TUWkWBxDqLOrDsWtzXwxMCFS\nrZV4wGZsNYKhMRziICK899579OzZ86Bz9evnrm21evVqXnnllZxQBsC+fftYt24dqkrdunXzXNuw\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from __future__ import division\n", "from numpy import arange,ones,sinc,pi,sin,cos\n", "from math import log\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,xlabel,ylabel,title,show,legend,grid\n", "\n", "rb = 2 # the bit rate in bits per second\n", "Eb = 1 # the Energy of bit\n", "\n", "f = arange(0,1/100+8/rb,8/rb)\n", "Tb = 1/rb# #Bit duration\n", "SB_PSK=ones(len(f))\n", "SB_FSK=ones(len(f))\n", "for i in range(0,len(f)):\n", " if(f[i]==(1/(2*Tb))):\n", " SB_FSK[i]=Eb/(2*Tb)\n", " else:\n", " SB_FSK[i]= (8*Eb*(cos(pi*f[i]*Tb)**2))/((pi**2)*(((4*(Tb**2)*(f[i]**2))-1)**2))\n", " \n", " SB_PSK[i]=2*Eb*(sinc(f[i]*Tb)**2)\n", "\n", "plot([ff*Tb for ff in f],[yy/(2*Eb) for yy in SB_FSK]) \n", "plot([ff*Tb for ff in f],[yy/(2*Eb) for yy in SB_PSK]) \n", "xlabel('Normalized Frequency ---->')\n", "ylabel('Normalized Power Spectral Density--->')\n", "title('PSK Vs FSK Power Spectra Comparison')\n", "legend(['Frequency Shift Keying','Phase Shift Keying'])\n", "grid() \n", "show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example7.30 page 336" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYYAAAEZCAYAAACTsIJzAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd4FUX3wPHvoQskVEV6R0ClKEqHKEWKvipSBGliQfmB\noChgBXlVigKKUlSQrhQFFEVEgUgREKS8oICNpgiK0qXn/P7YTe4lpNwktyU5n+fZJ9k2e+7kZmd3\nZndGVBVjjDEmVpZQB2CMMSa8WMFgjDHmElYwGGOMuYQVDMYYYy5hBYMxxphLWMFgjDHmElYwGGMy\nDBGZICLPhTqO9M4KhgATke4isk1ETonIHyIyXkTyea0fIiLnReSEiBwRkTUiUsddl0NERonIfnf9\nbhEZ47XvHhFp4jV/r4j8IyIN48VQ3D1GuQTiWyAir6bwM0WLSIyIVEsgrRgRaezO5xeR99zPfVxE\ndonIQK/tY7xjEpEnReSAiFRJJB8vuvlwTEQ2i0jrlMQdaCLyjIj86sa4X0RmB/h4USKyPwDp5nC/\nlz+KyEn3ezdZREr7+1j+pqqPqupLoY4jvbOCIYBEpD8wHOgPRAJ1gNLAlyKS3d1MgQ9UNQK4ElgN\nzHfXPQ3cANzkro8CNnkdQt0JEekGvAW0UtVV3nGo6u/AMqBLvPgKAi2BqSn8aArsArp6pVUIqAv8\nGRsTMAbIDVRW1UjgP8DPCSXoXuU9BjRS1R2JHHeNmw/5gcnAXO9CNlhEJFsCy7oBnYEmboy1gK+C\nHVt8IpI1Fbt9CNwOdMT53lYHNgJNktop1ETEzmf+oqo2BWDC+Yc6AbSNtzwPzsnzfnd+CDDDa/21\nQAxQCFgE9E3iGLtx/ll7An8BNySxbUfg53jLegHfub8Lzon8EHAM+B9wbSJprQCeB/YD4i7rDYx3\nlzVyl20D7kwiphigPPAS8CtQJoltuwOr4uVjDE7BmQ+Y7ubrHuBZr7j2xuYLcJ+7TxV3/gFggft7\nFmAQTsF1GJgDFHDXlXH36+GmF51AfG8CY5KIPxoYBqx383dhbPru+jrAN8ARYAvQ2GtdQWAK8Dvw\nD86FQ27gNHDR/Z4dB4q636cPgRnucXoANwFr3bQPuLFmTyTOpsC/QPEkPksx4BPgb+An4EGvdUOA\nee7xj7vfo4o4FzmH3PxrloJ8mQf8ARwFvgaqeq2bCkwAFgMncf4XpgL/ddcXBj51P/ffwEqv70UV\n99hHgO3AHfHSHefuexxYB5QL9TklmJOVsIFTD8iF5+ofAFU9hfNFbhp/BxHJiXMC3Keqf+N8IZ8Q\nkUdF5HoRkQSO0wt4EbhVVTclsD7WQqCwiNT3WtYFmOb+3hxoCFRU1XxAO5x/psQcAH4AbvNKa3q8\nbdYBL7vVQBUTSWcE0B6nMNmTxPHiuFfsD+KcEH/GOdFFAGWBxjh3Mve7m0fj3GnhrvvF/Rk7H+3+\n3gfnjqYRzgn2CM7JwVsjoDKez+xtHdDVrQ6rlciVehc3rqLABWCs+3mK45yEhqpqAeBJ4CP3Lgyc\nk2wuoCpwFU4B9C/QAjigqhGqGqmqf7jb/weY5/4d38cpPPriXGzUxTmB9kogPnC+l+vVuctMzGxg\nn/s52gKviMgtXutvx/kuFAA2A1+6y4sB/wXe9iVfXJ8BFXDupjcBs+Lt2xGnIMiLc7cddxeNc6e+\nH6eAuAp4WlXVvVtfBCxx0+0DzBKRSl7pdsAp5ArgfMdeTiI/Mp5Ql0wZdcKpVvgjkXXDgS/c34cA\nZ3FORIdwqh9quuuy4PwDrwbO4FwxdvVKZw/OVdYC3CuhZGJ6F3jb/b2ie9zC7vwtONVDtYEsyaSz\nAudq+z6cE09lYJe7zvuOIRfOleJG4BzO1WULr3RicK4Ex/oQe3fgvJtPf+FcXd8KZHU/R2WvbR8G\nVri/9wA+dn//wZ3/wCv/anitu9UrjaJuzFnw3DGUSSbGTjgnwZM4dx0D4uXZK17zVdy4swADgenx\n0lqCU8AVxTmx50vgeFHA/njLhpDAHU28bfoB85P4jnyQxL4lcU7eebyWvQJM8Tr+F17r7sApwGOv\n1CPcvIxMJl8u+z7jVCHGABHu/FRgarxtpuAUsOBcMC0EysfbpiHx/jdxvseDvdJ9x2tdS2BHas4D\n6XWyO4bAOYxzhZ5QHhcFDnrNz1HVAqpaRFWbqupmAFWNUdXxqtoAp7rkZeA9EbnG3U+BR4BrgEk+\nxDQNaOfemXQBlqjqYfdYK3DaKMYBh0TkbRGJSCItxbkbuhX4Py6/W0BVz6jqMFWthXO1OheYJyL5\nvTa7F2grIkN8iH+dm09Xqmo9VV2OczWYHaeKItY+oLj7+0qgoYhcjVOIzAPquw2p+VR1i7tdGWCB\n+wDAEZyC4gJQxCvdJBt6VfV9VW2G87d6BPiviDRLZP99btyFcdqd2sUe2z1+feBqnBPxP6p6LNnc\n8fjNe0ZEKonIp+5DAMdwvkeFEt6Vwzjfz8QUc+M5Fe+zFPea/9Pr99PAYXXPsO48QF6vbRLMFxHJ\nKiLDReRnN+7d7jaF3Z9Kwn+T2DvrV3Gu9peKyC9eDz4US2C/ve7y2HQPxfsMeclErGAInLU4Vz73\neC8Ukbw4VQBLvRcnl5iqnlXV8ThXzFW9Vh3CqRpoKCLjk0lmDU4d9Z04V/vTvFeq6pvuSbwqUAl4\nKpmYTgOf45wEZySz7QmcuuQ8OFU+sX7Eqb7o5f3EUgocxrmTKOO1rBTuyVFVf8apM+8DfO3GcRDn\nrsK7kX4fzt1MAa8pt3qqZ8BTRZEkVb2oqh/i1K9fFy8u79/P49z97MNpZ/I+doSqjsQ5gRVMpJE9\noXg0geUTcAq6CupULz1L4v/7XwE3u9VbCTngxuN9oozL71RKKF8O49yB/QenQT8fnu9Nsv8vAKp6\nUlWfVNXybjpPiMitOHfeJeNVzZZ2lxusYAgY9wrvReBNEblNRLKLSBmcq+ZfcBo3kyQifUWksYhc\nISLZ3Cdf8uLU23of6w+cwqGFiIxOIibFubIfiXNVu8jrWLVEpLZb//ovTtXVRR8+6jM4DaX7Eoj/\neTfdHCKSC6ee+whOlZV3XD/gFA5PiUhfH47pve9FnDx9WUTyuncCjwMzvTb7Gqdx/Gt3PjrePMBE\nnLryUm7sV4rIf3yNQ0S6iUgrEYkQkSwi0hLnQYL1sZsAnUWkiojkBobitAOoG+sdItLcvUrO5T6K\nWtz9234OjHcf/80uIo3cNA8BhUQk0juUBMLLi1Od86+IVAYeTexzqOoynOqwBSJyg/u9ixCRR0Tk\nflXdj1ONN0xEcorzyHIPLs3vlEgqX/LiXFz9IyJ5cKqs4u+bUHrOLyK3i0gFtwA4jvN9vojzN/kX\nGODmZxROu8js+GlkVlYwBJCqvopz4nwN54v5K87VXAtVvRC7GYlfif4LjMJ5KuMvnH/oezSBRlr3\nH/ZWnGqZpBrKpuNUT8xR1fNeyyOBd3DuKPbgXLEl+36Dqv6hqt8ksjoGp873L5yrsSZAa3UaTsHr\nc6vq/3AadQeLyMMJHYrE86kPcAonf1fhNFBO8Vr/Nc5JZmUi8wBv4Dxps1REjuPc8d0c7/hJOY7z\nt96LU/gNBx7xyhvFuauaivP3zIHzeC6q+hvOXdwzONUw+3AaTmP/P7vgXEXvxCkMYvfbCXwA/CrO\n+ytFSTifnsS5+j6O8zeencznaYvzgMQcnDagbThPf8U2InfEuUM7gFOd+IJbrRf7OeOnndR8ovmC\n813di/Pd2Y7zN4m/b0Jpxy6r4MZ8AqcwG6eqX7vf+ztw2g7+wqlC7aKqP6bgM2RosQ1CgUlc5D2g\nNfCnql6fyDZjcf5A/wLdY+vXMyIR6Y7zFE5dVf01xOGYIBKRFTjVRe+FOpZwYvkSngJ9xzAFpz49\nQSLSCqfesyJOne+EAMcTUqo6FedKsHaIQzGhkemrKBJh+RJmLnuD059UdZVbr56Y/+A2gKrqercO\ntYiqHkpin3RNVVNbF2vSv0xVHZECli9hJqAFgw+Kc+ljY78BJbj0UTFj0j1VvSX5rTIfy5fwFA6N\nz/FvI+3qwRhjQijUdwy/4zwhE6sECTxLLCJWWBhjTCqoaorbcEJ9x/AJbg+d4nQ1fTSx9oX4r2yf\nOX+Gz378jI4fdqTgiIL0/6I/vx//PeSvkgd6Gjx4cMhjCJfJ8sLywvIi6Sm1AlowiMgHOM8PXyNO\n//Q9RKSniPQEUNXFOM9g/4zTsVZiHXtdJme2nLSq2Ir373mfzT03czHmItUmVGP46uGcvXA2IJ8n\nHOzZsyfUIYQNywsPywsPy4u0C2jBoKodVbWYquZQ1ZKq+p6qvq2qb3tt01tVK6hqdU26d9BElcpX\nijEtxrDuwXWs/W0t1024jrX71/rvgxhjTCYS6qokv6pQsAIf3/sxI5uO5O45dzP066FciLmQ/I7p\nSPfu3UMdQtiwvPCwvPCwvEi7gL757C8ioimN88CJA3Rb2I2LMReZ124ehXIn1pmkMcZkTCKCpsPG\n54ApFlGMJfctoVaxWtSZXIedh3eGOiS/iI6ODnUIYSNQeSEiNtmU7iZ/CvXjqgGVNUtWRjYbSdUr\nq9J4amPmt59P/VL1k9/RZHrp4U7amFj+LhgybFVSfF/8/AVdFnThg3s+oEm5sB7T3ISYiFjBYNKV\nxL6z7nKrSkrMbRVu48P2H9Lxo44s/mlxqMMxxpiwlWkKBoBGpRuxqOMiui/sztd7vk5+hzBkbQwe\nlhfGBEamKhgAapeozey2s2k3rx0bD2wMdTjGBMSjjz7KSy+95Pdtw0lUVBSTJ09OcN2+ffuIiIiI\nq145dOgQjRo1IjIykqeeSnLE2oAaNmwYDz30UMiO77NQv7Lt42vd6m8LdyzUq1+7Wn/6+ye/p23S\nt0B83/yldOnSmiNHDj18+PAly2vUqKEionv37g1RZIHx8ssva9myZTVv3rxaokQJ7dChQ9y6qKgo\nnTx5sk/pDB06VO+55564+caNG+ukSZMS3X737t0qInrx4kVVVY2JidHevXtr5cqV9cCBA6n8NIGT\n2HfWXZ7ic26mu2OIdWflOxnceDC3v387R04fCXU4xvhERChXrhwffPBB3LJt27Zx+vRpvz+ZEmrT\npk1j5syZLFu2jBMnTrBx40aaNm2aqrT27t1LlSpV4uZTklcxMTH07NmTlStXsnLlSooWLZqqGNKT\nTFswADxS6xFaVmhJu3ntOH/xfPI7hAGrV/fIrHnRuXNnpk+fHjc/bdo0unbteslTKd27d+f5558H\nnHwqUaIEo0ePpkiRIhQrVoypU6cmue2rr77KVVddRbFixVi4cCGLFy+mUqVKFCpUiOHDhye4b+z+\nJUt6OkwuU6YMr732GtWqVSMiIoIHHniAQ4cO0bJlS/Lly0ezZs04evRogp9z48aN3HbbbZQtWxaA\nIkWK8OCDD16yzZ49e2jQoAGRkZHcdttt/P3333HLs2TJwsWLF+nevTvTp09n5MiRRERE0KBBA1at\nWkXv3r2JiIjgscceu+zYsS5cuMD999/Ppk2biI6O5sorrwRg586dNGvWjEKFClG5cmXmzZsHwIYN\nG7j66qsv+VvMnz+fGjVqADBkyBC6dOlySYzTp0+ndOnSXHnllbzyyitx+50+fZpu3bpRsGBBqlat\nysiRIy/J20DyuWAQkVoikjOQwYTCa81fI1e2XDz+xeOhDsUYn9SpU4fjx4+zc+dOLl68yJw5c+jc\nufMl28R/6enQoUMcP36cAwcOMHnyZP7v//6PY8eOJbrt2bNn+eOPPxg6dCgPPvggs2bNYvPmzaxa\ntYqhQ4eyd+/eBPeNT0SYP38+y5YtY9euXXz66ae0bNmS4cOH8+effxITE8PYsWMT/ZzTp0/ntdde\nY+PGjVy8ePGS9arK+++/z9SpU/nzzz85d+4cr7322mXHnzp1Kvfddx8DBw7kxIkTrF69moYNGzJu\n3DhOnDiR6PEBOnXqxE8//cTy5cspUKAAAKdOnaJZs2Z07tyZv/76i9mzZ9OrVy927tzJTTfdRKFC\nhfjiiy/i0pgxYwbdunVL9Bhr1qzhxx9/ZNmyZQwdOpRdu3YB8OKLL7Jv3z52797Nl19+ycyZM4N2\nV+hTwSAiRYG1QLvAhhN8WbNkZVabWXzxyxfM3j471OEkKyoqKtQhhI1Q5YWIf6a06NKlC9OnT+fL\nL7+katWqFC9e/LJtvK9as2fPzgsvvEDWrFlp2bIlefPmjTsBJbTts88+S9asWenQoQP//PMP/fr1\nI0+ePFStWpWqVauydevWBPdNSJ8+fbjyyispVqwYDRs2pG7dulSvXp2cOXNy9913s3nz5gT3u+++\n+3jzzTf54osviIqKokiRIowcOTJuvYjQo0cPKlSoQK5cuWjfvj1btmxJNI74cSYXN8BXX31F27Zt\niYyMjFv26aefUrZsWbp160aWLFmoUaMGbdq0Ye7cuQB07dqVmTOdEXz/+ecfli5dSqdOnRI9xuDB\ng8mZMyfVqlWjevXqcXk7b948nnnmGfLly0fx4sXp27dv0N6v8fXN5+44YzM/AGS4MYvz5crHvHbz\naDajGTWurkHlwpVDHZIJY6F+901E6NKlCw0bNmT37t2XVSMlpFChQmTJ4rkOzJ07NydPnkx029gr\n0yuuuAJwqnFiXXHFFYnum5D4+3rP58qVK8m0OnXqRKdOnbh48SILFizgvvvuo2bNmjRr1gyAq6++\nOtVx+XL1/emnn9K6dWsKFCjA/fffDzjtFevXr4+7gwCnyqlr166AU6Bde+21/Pvvv8ydO5dGjRpd\n8pnj8/4M3n+XAwcOXFJ1VKJECZ8/W1ole8cgTu51AQYBOUWkfMCjCoEaV9dgWJNhtJ3bllPnToU6\nnERl1nr1hGTmvChVqhTlypXj888/p02bNgluk5Jqh9RWUeTJk4d///03bv7gwYPJ7pOaq96sWbPS\ntm1bqlWrxvbt21O8f3y+ft569eqxaNEi+vbtG9fgX6pUKRo3bsyRI0fiphMnTjBu3DjAOYHXqVOH\n+fPnM3PmzLg2hZQcF6Bo0aLs378/bt7790DzpSopCtihqofx3DVkSA/UfIAbi91Ir8U+jxdkTMhM\nnjyZ5cuXx13Ve1PPo97JSsm28dWoUYPFixdz5MgRDh48yOuvv56qdBIybdo0Fi9ezIkTJ4iJieHz\nzz/n+++/p3bt2nHbpOQzeitSpAi//PKLT/s2atSI+fPn8/DDDzN//nxat27Njz/+yMyZMzl//jzn\nz59nw4YN7Nzp6aiza9eujBgxgu3bt19ScKckn9u3b8+wYcM4evQov//+O2+99VZYtTE8ALzn/j4b\naC8iGfJpJhFhQusJrP9tPXO2zwl1OAmyNgaPzJ4X5cqV44Ybboib9z5pxG8UTq6BOKltk9q3S5cu\nVK9enTJlytCiRQvuvffeZE9eScXpLTIykldeeYXSpUtToEABBg0axMSJE6lXr55PaSW1rm/fvnz4\n4YcULFiQfv36JRtn06ZNmTNnDt26dWPlypUsXbqU2bNnU7x4cYoWLcrTTz/NuXPn4rZv06YN+/bt\n4+677yZXrlw+xRjfCy+8QIkSJShbtizNmzenXbt25MiRI9Ht/SnJTvREpACwAaikqjHuspnAHFVd\nFJQI8U8neimx4fcN3P7B7WzuuZliEcWCdlwTHqwTPeMPFStW5O233+bWW2/1S3oTJkxg7ty5rFix\n4rJ1Qe1ET1WPqDPsZozXss7BLBRC4abiN9GrVi96fNwj7E4QmblePT7LCxOu5s+fj4ikqVA4ePAg\na9asISYmhl27djF69GjuvvtuP0aZuBRVCYnIw4EKJNw80/AZ/j79NxM3Tgx1KMaYdCQqKopevXrF\nNUan1rlz53jkkUeIjIykSZMm3HXXXfTqFZz2zxSNxyAim1W1ZgDjSey4Qa1KirXz8E4aTmnI2gfW\nUqFghaAf34SGVSWZ9CbU4zFkrM5YklG5cGWebvA0PT/taScKY0ymkdKC4faARBHGHqv9GMfOHGPa\n1mmhDgWwenVvlhfGBEZKC4ZMV+GeLUs23r3jXQZ+NZA/T/0Z6nCMMSbgrI3BR08tfYoDJw8wq82s\nkMZhAs/aGEx6E+o2hoR7u8oEhkQN4Zv937Dk5yWhDsUYYwIqpQVD2p6/Ssfy5MjD+Fbj6b24N2cu\nnAlZHFav7mF5YUxgpLRgeDcgUaQTLSu25NqrrmX02tGhDsUYYwLGHldNoTG3jWHU2lHsPxa8ng69\nZfb+gbxl1ryYOnUq119/PXny5KFo0aL06tUrbtCdIUOGkD17diIiIihQoAD169dn3bp1gPPCVP/+\n/SlZsiQRERGULVuWxx/3DFBVpkwZli1bFjc/e/ZsChYsyKpVq4L7AU3IpbRgGBqQKNKRcgXK0atW\nL5768qlQh2IyoVGjRjFo0CBGjRrF8ePHWbduHXv37qVZs2acP+8MT9uxY0dOnDjBX3/9RYMGDeJ6\n9xw2bBibNm1iw4YNnDhxgujo6Ms64Yvt1G3atGn07t2bxYsX07Bhw+B/UBNSvozH8J2I/J+IFFDV\nBcEIKtw93fBp1v62lq/3fB30Y1u9ukdmy4vjx48zZMgQ3nrrLZo3b07WrFkpXbo0c+fOZc+ePXFD\nP8Y+nZItWza6du3KwYMH+fvvv9m4cSN33XVX3MAwpUuXvmSsAHC6hX777bd58sknWbp0KXXq1An6\n5zSh58sIbvcC9wMbRGQjMAVYGvLnR0Mod/bcvNbsNfp83ofNPTeTNUvWUIdkgkhe9E+Nqg5O2b/Q\nN998w5kzZy4bmCdPnjy0atWKr776ikqVKsUtP3v2LFOnTqVUqVIUKlSIOnXqMHr0aHLkyEGDBg24\n7rrrLuv2efz48axZs4bly5dz/fXXp/7DmfQtdpCO5Cacu4v/AL8D+4EXgYK+7p+WyQkzvMTExGjD\n9xrqpO8mhToU42fh+H1TVZ0xY4ZeffXVCa4bNGiQNm/eXIcMGaI5cuTQ/Pnz61VXXaVNmjTRTZs2\nqarqxYsXddy4cVq/fn3NmTOnFitWTKdNmxaXRunSpTUyMlLvuusujYmJCcpnMv6R2HfWXZ7ic65P\nbQwiUh0YDbwKfAS0A04Ay/1bTKUfIsKrzV7lhegXwnooUJNxFC5cmMOHDxMTE3PZugMHDsSNK9yh\nQweOHDnCoUOH+Oqrr6hZ03knNUuWLPTq1YvVq1dz7Ngxnn32WXr06MGuXbsA5zs9ceJEdu3axYMP\nPhi8D2bCjk9tDMAY4Fugmqo+pqrrVPU1YHegAwxntUvUpkGpBkF9fDWz1asnJbPlRd26dcmZMycf\nffTRJctPnjzJkiVLuO222wDfho/MmTMnvXr1okCBAvzwww9xy4sUKcKyZctYtWpV0Lp4NuHHlzuG\ndqp6q6q+r6pnAUSkLICqBmfUiDA2rMkwXl//OodOHgp1KCaDy5cvH4MHD6ZPnz588cUXnD9/nj17\n9tC+fXvKly9P+/btkywU3njjDb7++mtOnz7NhQsXmDZtGidPnoy7o4hVtGhRli1bxpIlS3jiiScC\n/bFMGPKlYPjQx2WXEZEWIrJTRH4SkYEJrC8sIktEZIuIbBeR7r6kG07KFShH12pdGRI9JCjHy6zP\n7ickM+bFU089xSuvvMKTTz5JZGQk5cqVQ0RYsmQJ2bNnT3IM5dy5c9O/f3+KFi3KlVdeyYQJE/jo\no48oU6bMZduWLFmS5cuX8+GHH/Lss88G+FOZcJNoJ3oiUgWoitOu8CTOy20KRAJPqeq1SSYskhXY\nBTTFabDeAHRU1R1e2wwBcqrq0yJS2N2+iKpeiJeW9uun5M4NkZFQqhSULg1lykDRopDM2OMB9/e/\nf1N5XGVW3b+KyoUrhzYYk2bpqRO9qVOnMnDgQNauXUu5cuVCHY4JEX93opfU46rXAHcA+dyfsU4A\nD/mQ9s3Az6q6xw1wNnAnsMNrmz+Aau7vkcDf8QuFWKVKwalT8Ndf8N13sHcv7N4NMTFQq5YzNWgA\njRvDFVf4EJ0fFcpdiAH1BjDoq0EsvHdhQI8VHR2dKa+UE2J5Ad27dydbtmysX7/eCgbjN4kWDKq6\nEFgoInVVdW0q0i6O81hrrN+A2vG2eRdYLiIHgAigfWKJeb25f4kDB2DjRmcaNgzatYN69aBVK2jf\n3rmjCIY+tfvw1oa3WLNvDfVL1Q/OQY0BOnfuHOoQTAaTVFXSQFUdISJvJrBaVfWxJBMWuQdooaoP\nufOdgdqq2sdrm+eAwqraT0TKA18C1VX1RLy0tFu3bnF1ofnz56dGjRpxV4uxT6dERUVx7BiMHRvN\nmjWwfn0UN90EN94YTePG0KLF5dv7c/7XfL8y438zeKHUC4iI39O3+eDMp6eqJGPA852Njo5m6tSp\ngNP31YsvvpiqqqSkCoY7VHWR2yAcu1HsAVRVkxzrUkTqAENUtYU7/zQQo6ojvLZZDLysqmvc+WXA\nQFXdGC8tTc0/6r//wqJFMH06fPstPPQQ/N//QfHiKU7KJxdiLlBlXBUmtp5Ik3JNAnMQE3BWMJj0\nJmgD9ajqIvfnVFWd5hYEM4AFyRUKro1ARREpIyI5gA7AJ/G22YnTOI2IFMFp1/g1pR8iMblzQ4cO\n8Nln8M03cPIkXH89dOsGP//sr6N4ZMuSjRejXuS5Fc8F7MSS2Z7dT4rlhTGB4csLbu+LSKSI5AG2\nAT+IyIDk9nMbkXsDXwA/AHNUdYeI9BSRnu5mrwC1RGQr8BUwQFX/Se2HSUrFijB2LPz6K5QrB3Xq\nwIMPOo3Y/nTvdfdy8txJFv+02L8Jm6CKfezTJpvSw+T3739yV7YislVVq4vIfcANwCBgk6oGrYct\nCcCYz0eOwKhRMHEiPPwwPPMM5M3rn7QX7FjAf1f+l40PbySLpLRnc2OM8Q+RwI35nE1EsgN3AYtU\n9TyeNod0q0ABeOkl+N//YP9+qFwZZs0Cf5Q/d1W+CxFhwQ7rpdwYk/74UjC8DewB8gIrRaQMcCxw\nIQVXsWIwYwbMnevcQTRv7rwfkRYiwku3vMTzK57nYsxF/wTqsnp1D8sLD8sLD8uLtEu2YFDVsapa\nXFVbqmrnD6VeAAAgAElEQVQMsBe4JfChBVe9es6TS02bwk03wZtvOi/PpVaLCi0oeEVBZm+f7b8g\njTEmCHxpY8gF3AOUwfNCnKpq0Ib5DEQbQ1J27YIePSB7dpg5E0qUSF06S39ZSr8l/djea7u1NRhj\ngi6QbQwf4wzQcx446U4ZegCCa66BlSudaqUbb4QFqWwqaFauGZE5I/noh4+S39gYY8KELwVDcVXt\noKojVXVU7BTwyEIsa1bnSaWFC6F/f+jVC86eTVkaIsLzjZ7npVUvEaNpqJfyYvWnHpYXHpYXHpYX\naedLwfCNiFRLfrOMqW5d2LwZDh1yOuj7/feU7d+qYiuyZcnGJ7viv9tnjDHhyZc2hh1ABZzR2mKv\nmVVVg1ZYBLuNISGqTid948bBnDlOT66+WrBjAS+teomND20MyMsoxhiTkNS2MfhSMJRJaHlsd9rB\nEA4FQ6zPP3e61BgyBB591LexIGI0huoTqzOi6QhaVWwV8BiNMQYC2PjsFgAlgVvc30/h6Uwv02nZ\n0ul3adw46NsXLvrwmkIWycJzDZ/jvyv/m+Y+lKz+1MPywsPywsPyIu186StpCDAAeNpdlAOYGcCY\nwl6FCrBmDWzfDvfc4/Timpy2Vdty5PQRlu1eFvgAjTEmDXzqKwmoCXynqjXdZf/LbG0MCTl3zumI\nb9cup3vvq65KevsZW2fw7qZ3WXn/yuAEaIzJ1AL5HsNZ943n2APlSelBMqocOWDaNLjtNufN6eS6\n8u54fUcOnDjA13u+Dk6AxhiTCr4UDPNE5G0gv4g8DCwDJgU2rPRDBIYOhYEDncdZt29PfNtsWbIx\nsP5Ahq8ZnurjWf2ph+WFh+WFh+VF2vnS+Pwq8JE7VQKeV9WxgQ4svXnoIXjtNaevpY0bE9+uS/Uu\nbD24la0HtwYvOGOMSQFf2hjy4xQIAD+q6tGAR3V5DGHZxpCQTz5x2h0++ggaNkx4m5FrRrL10FZm\ntZkV3OCMMZmK399jEJGcOF1u34XzcpvgdKS3AOipqudSHW0KpaeCAeCrr6BjR2d8h+bNL19/7Mwx\nyo0tx3cPf0eZ/GWCHp8xJnMIROPzc0B2oKSq1lTVGjjvM2QDnk9dmJlD06ZOH0udOzuFRHz5cuXj\noRseYtQ3Ke9yyupPPSwvPCwvPCwv0i6pgqEN8LCqnohd4P7+qLvOJKF+fac6qVMnWLHi8vV9a/dl\n1rZZ/HXqr+AHZ4wxSUiqKinRdxVEZFt6H/M5WKKjoV07+PBD56klbz0X9aRI3iIMvSVoQ1sYYzKR\ngLzHICIFE5gKkQHGfA6WqCiYPdspHFavvnTdk/WeZMLGCZw8dzIksRljTEKSKhgige8SmDYCEYEP\nLeNo0sRpiG7TxunCO1bFQhWJKhPFpE2+vxZi9acelhcelhcelhdpl2jBoKplVLVsYlMwg8wImjWD\niROhdWv46SfP8oH1BzJ67WjOXzwfuuCMMcZLsu8xhIP03MYQ36RJ8PLLTrVS8eLOsqbTm9K1ele6\nVu8a2uCMMRlKIPtKMn704IPOOA7Nm8PffzvLBtYfyIg1I/w2/KcxxqSFFQwhMGAA3H67U6108iQ0\nLdeUnFlz8vlPnye7r9WfelheeFheeFhepF2iBUMiTyTFTcEMMiMaPhyuuw7atoULF4T+dfszam3K\nX3gzxhh/S+o9hj0k8VhqMBugM1Ibg7cLF+Cuu+Dqq2H8xPOUf7Mcn9z7CTWL1gx1aMaYDCBgYz6H\ng4xaMIBTldS4Mdx9N+S85VW2HtrKzDaZeoA8Y4yfBLTxWUQKiMjNItIodkp5iCYhefPCp586TytF\n/vwQi39azG/Hf0t0e6s/9bC88LC88LC8SDtfxnx+CFgJLAVeBL4AhgQ2rMylaFH47DN4YUB+bi3U\njbHrbbgLY0zo+DIew3bgJmCtqtYQkcrAMFW9OxgBujFk2KokbytWQLuH9nDxgVrse2I3ETntBXNj\nTOoFsirpjKqedg+SS1V3Atek9EAmebfcAmMGl+Hcria8sWpyqMMxxmRSvhQMv4lIAWAh8KWIfALs\nCWhUmViXLtC+RH9e+up1/j1z4bL1Vn/qYXnhYXnhYXmRdr6M+XyXqh5R1SE4A/RMwhnVzQTI5KE3\nk+diSVo/NZ9MUINmjAkzSbYxiEg2YLuqVk5V4iItgNeBrMAkVR2RwDZRwBic0eIOq2pUAttkijYG\nbx9sXsgDU4fxcpl1PP54iqsIjTEmMG0MqnoB2CUipVMRUFbgLaAFUBXoKCJV4m2THxgH3KGq1wFt\nU3qcjKp99TsoUvofXp6xhiVLQh2NMSYz8aWNoSDwvYgsF5FF7vSJD/vdDPysqntU9TwwG7gz3jad\ngI9U9TcAVT2ckuAzsqxZsvJUw8ep+uAounaFHTuc5VZ/6mF54WF54WF5kXbZfNjmOSD+rYgv9TrF\ngf1e878BteNtUxHILiIrcAb/eUNVZ/iQdqbQvUZ3hkQP4YmXf+KOOyqyfn2oIzLGZAa+vMcwUlUH\nxFs2QlUHJrPfPUALVX3Ine8M1FbVPl7bvAXcADQBcgNrgdaq+lO8tDJdG0Os55Y/x5HTR7hixTi2\nboXPP4dsvhTnxphML7VtDL6cYpolsKwVkGTBAPwOlPSaL4lz1+BtP06D82ngtIisBKoDP8Xbju7d\nu1OmTBkA8ufPT40aNYiKigI8t44Zcb73zb2p+ERFpt3ZnC1b7uTZZ6Fly/CJz+Zt3ubDZz46Opqp\nU6cCxJ0vUyOp3lUfBXoB5YFfvFZFAGtU9b4kE3aeaNqFczdwAPgW6KiqO7y2qYzTQH0bkBNYD3RQ\n1R/ipZVp7xgAenzcg/IFytOz6rNcd100b74ZRbt2oY4q9KKjo+P+OTI7ywsPywuPQDyV9D5wB/AJ\ncLv7+x3AjckVChD3RFNvnL6VfgDmqOoOEekpIj3dbXYCS4D/4RQK78YvFAw8UfcJxm0YR0T+swwd\nCr16wfbtoY7KGJNR+dLGUBf4XlWPu/ORQBVVDVpTaGa/YwC4beZtdLquE91qdGP6dPjvf2HDBsif\nP9SRGWPCVSD7SpoAnPSaPwVMTOmBTNr0r9uf0etGo6p07QotWjjdZ8TYMNHGGD/zaTwGVc8o9ap6\nEedNZhNEzco142LMRUZ/MBqA0aPh6FEYOjTEgYVQbKObsbzwZnmRdr4UDLtF5DERyS4iOUSkL/Br\noAMzlxIRnqj7BHO/nwtA9uwwbx5MnuwM9GOMMf7iSxtDEWAscIu7aBnQV1X/DHBs3jFk+jYGgDMX\nzlDm9TIs77acqldWBWDtWrjzTlizBipWDHGAxpiwYmM+ZxJDvx7Kb8d/45073olbNmECTJwI69bB\nFVeEMDhjTFgJWOOziFwjIstE5Ht3vpqIPJeaIE3aVfu3Gh/+8CF/nforbtkjj8B110Hv3iEMLASs\nLtnD8sLD8iLtfGljeBd4Bjjnzm8DOgYsIpOk/Ffkp13VdkzYOCFumQi8/bZTrTRlSgiDM8ZkCL60\nMWxU1VoisllVa7rLtqhqjaBEiFUlxbfjrx3cMu0W9vTbQ65sueKW//ADNG4MX30F1auHMEBjTFgI\n5HsMf4lIBa8DtQX+SOmBjP9UubIKNxa7kVn/m3XJ8qpV4Y03oF07OH48RMEZY9I9XwqG3sDbQGUR\nOQA8Djwa0KhMomLrT5+o80TcC2/eOnWCJk3ggQfI8MOCWl2yh+WFh+VF2vky5vMvqtoEKAxco6r1\nVXVPwCMzSbq17K1ky5KNpb8svWzdmDGwezeMHRuCwIwx6Z4vbQyFgcFAA5wBelYBQ1X178CHFxeD\ntTEkYNqWaby//X2+6PzFZet274Y6dWDhQqhbNwTBGWNCLpBtDLOBP4E2OGMy/wXMSemBjP91vL4j\n2w5tY9uhbZetK1sWJk2CDh3gsA2YaoxJAV8KhqtV9b+qultVf1XVl4AigQ7MJMy7/jRH1hz0vrk3\nY9aNSXDbO+5w2hw6d86Yne1ZXbKH5YWH5UXa+VIwLBWRjiKSxZ06AJdXbJuQ6HljTxbsXMDBkwcT\nXP/SS3D6tPPTGGN84Usbw0mc8Zhjrzmz4HS9DaCqGhm48OJisDaGJPT6rBeFcxdm6C0Jd7X6xx9w\n440wcybcemuQgzPGhIz1lZSJ/fj3jzR4rwF7++3liuwJd5a0bBl07QobN0LRokEO0BgTEn5vfBaR\nMiKS32v+VhEZKyJPiEiO1AZq0iah+tNKhSpRp0Qdpm+dnuh+TZrAww87bQ4XLgQwwCCyumQPywsP\ny4u0S6qNYS5OFRIiUgOYB+wFagDjAx+aSYn+dfszZt0YYjTxVubnnoNs2eDFF4MYmDEm3Um0KklE\n/qeq1dzfXwNiVHWAiGQBtqrq9UEL0qqSkqWq1Hq3FkOjhtK6UutEt/vzT7jhBudR1hYtghigMSbo\nAvEeg3diTYDlcOkwnyZ8iEhcNxlJueoqeP996N4dfvstOLEZY9KXpAqGFSIyT0TGAvlxCwYRKQac\nDUZw5nJJ1Z+2u7Yduw7vYsvBLUmm0agR9O0L994L58/7OcAgsrpkD8sLD8uLtEuqYOgHzAd2Aw1U\nNXY8hiLAs4EOzKRcjqw56HNzH0avTfquAWDgQIiMhGftL2mMicceV81gjpw+Qvmx5dn26DaKRxZP\nctvDh532hnHjnLekjTEZSyD7SjLpSIErCtC5WmfGbRiX7LaFC8Ps2fDgg7B3bxCCM8akC1YwpDO+\n1J/2rd2Xdze9y6lzp5Ldtl49GDAA2reHc+eS3TysWF2yh+WFh+VF2iVZMIhINhGZldQ2JvyUL1ie\nhqUaMm3rNJ+2f+IJ523oAQMCHJgxJl3wpa+k1UATVQ3Zk0jWxpByq/et5v6P72dX711kkeRvDI8c\ncdobRo2CNm2CEKAxJuBS28aQzYdtdgOrReQT4F93mapq8o++mJCpX7I+BXIVYNGuRdxZ+c5kty9Q\nAObOhdatoXp1KF8+CEEaY8KSL20MvwCfudvmdaeIQAZlEudr/amI0L9u/2RfePN2003w/PNOe8OZ\nM6kMMIisLtnD8sLD8iLtfBnzeYiqDgFeU9UXY6fAh2bS6p6q97Dn6B42Htjo8z69e0O5ck67gzEm\nc/KljaEeMAmIUNWSIlId6KmqvYIRoBuDtTGk0qhvRrHp4CZmtfH9GYJjx5zxG156yXk72hiTPgVs\nPAYR+RZnrOePVbWmu+x7Vb02VZGmghUMqXfszDHKvlGWrY9spWS+kj7vt3kzNG8Oq1fDNdcEMEBj\nTMAE9AU3Vd0Xb1EG6dE//Ulp/Wm+XPnoVr0bb377Zor2q1nTuWNo184ZGjQcWV2yh+WFh+VF2vlS\nMOwTkfoAIpJDRJ4EdgQ2LONPj9V+jMmbJ3Pi7IkU7ffww3D99dCnT4ACM8aEJV+qkq4E3gCa4nTF\nvRR4TFX/Dnx4cTFYVVIatZ/Xnvol69O3Tt8U7XfyJNSqBc884wwNaoxJPwLZxpBLVVP18KKItABe\nB7ICk1R1RCLb3QSsBdqr6vwE1lvBkEbf/v4t7ea14+c+P5M9a/YU7bttG9x6K3z9NVStGqAAjTF+\nF8g2hu9F5BsRGS4irUUkn48BZQXeAloAVYGOIlIlke1GAEu4dHAgk4DU1p/eXPxmyhcoz+zts1O8\n7/XXw8iR0LYtnEq++6WgsbpkD8sLD8uLtPPlPYbyQEdgG3A78D8RSXokGMfNwM+qukdVzwOzgYRe\nwe0DfAj85XPUJlUGNRjEiDUjkhwXOjH33w+1a8Ojj4LdvBmTsSVbMIhICaA+0BCoCXwPzPEh7eLA\nfq/539xl3mkXxyksJriL7JSTjKioqFTv26xcM3JkzcHinxanav9x42DTJnjvvVSH4FdpyYuMxvLC\nw/Ii7Xx6Kgnoi1PVU1dVW6nqMB/28+Uk/zowyG1AEKwqKaBEhIH1BzJ89fBU7Z87N8ybB4MGwdat\nfg7OGBM2fOlErybO3UJHYKCI/ASsVNVJyez3O+D9RlVJnLsGbzcCs0UEoDDQUkTOq+on8RPr3r07\nZcqUASB//vzUqFEj7sogtk4xM8x715+mZv97qt7D428/zptz3qRPhz4p3r9KFXj44What4Yffogi\nMjJ0+RE/T8Lh7xOq+S1bttCvX7+wiSeU86+//nqmPj9MnToVIO58mRo+De0pIhE41UmNgM4Aqloq\nmX2yAbuAJsAB4Fugo6om+A6EiEwBFtlTSUmLjo6O+0Kk1sSNE/nsp89Y1HFRqtN4+GE4fhw++AAk\nRPd5/siLjMLywsPywiOQj6tuBHIB3wArgVWq6tNAkCLSEs/jqpNVdZiI9ARQ1bfjbWsFQ5CcPn+a\ncmPL8WWXL7nuqutSl8ZpqFvXKSB6Ba3XLGNMSgSyYLhKVf9MdWR+YAWD/w1bNYwdh3cw/e7pqU7j\np5+coUGXLHE63TPGhJdAvsdwTkTGiMh37jTK13cZjP9516+nxaM3PcpnP33G3qM+3fwlqGJF50ml\n9u3h6FG/hJUi/sqLjMDywsPyIu18KRjeA44D7YD2wAlgSiCDMoGXP1d+Hqj5AKPXpm0gvvbtoWVL\n6NHD3m8wJqPwpSppq6pWT25ZIFlVUmAcOHGA68Zfx499fqRw7sKpTufsWahfHzp3BvfBGGNMGAhk\nVdJpEWnodaAGeMZ+NulYsYhi3FPlHt5Y90aa0smZ03m/4ZVXYN06PwVnjAkZXwqGR4BxIrJXRPbi\n9H/0SGDDMonxd/3poAaDmLBxAkfPpK2RoGxZeOcd6NAB/vnHT8Elw+qSPSwvPCwv0i7JgkFEagIV\ngHuB64FqqlpDVe291wyifMHytKrYire+fSvNad11F9xzD3TrBjEp747JGBMmEm1jEJEXcF5m+w6o\nAwxT1XeCGJt3LNbGEEA7D++k0ZRG/PLYL0TkjEhTWufOQePGcPfdMGCAnwI0xqSK399jEJEfgFqq\n+q+IFAK+UNVaaYwzVaxgCLx7P7yXG4rewID6aT+b79sHN90EH30EDRr4IThjTKoEovH5rKr+C+CO\n1ubT+NAmsAJVf/psw2cZvXY0/55P+3MFpUo5PbB27AgHD/ohuERYXbKH5YWH5UXaJXWyLycii2Kn\nePOXdXJn0rfri1xPvZL1eOc7/9QWtm7tvNvQrp1TvWSMST+SqkqKSmI/VdWvAxJRwrFYVVIQbPpj\nE3d8cAe/PPYLubLlSnN6MTFOg3TJks4b0saY4ApYX0nhwAqG4Ln9/dtpVbEVvW7yT894x445I78N\nGODcQRhjgieQL7iZMBLo+tPnGz3PiDUjOHfRP/U/+fLBwoXO4D7r1/slyThWl+xheeFheZF2VjCY\nS9QuUZtrCl3DtC3T/JZm5cowaRK0bRvYxmhjjH9YVZK5zNr9a7n3o3v5sfeP5MyW02/pDhkCX30F\ny5dDjhx+S9YYk4hAvMfgPbxX7JjMcfOq+p+UHiy1rGAIvtbvt6ZVhVb8383/57c0Y2KcF9+KF4fx\n4/2WrDEmEYFoYxjlTr8Cp4F3gHeBk+4yEwLBqj8dGjWUV1a/4pf3GmJlyQIzZjh3DJOSGzHcB1aX\n7GF54WF5kXaJFgyqGq2q0UADVe2gqotU9RNV7Qg0TGw/kzHcWOxG6pSow4QNE/yabmQkfPwxPPss\nfB20B56NMSnhy3gMO4DbVfUXd74c8JmqVglCfLExWFVSCGz/cztNpzfl58d+Jm+OvH5N+8svoUsX\nWLMGypf3a9LGGFcgH1d9HFghIl+LyNfACsCGY8kErrvqOm4teytj14/1e9rNmsELL8AddzjvOhhj\nwkeyBYOqLgEqAY+5UyVV/SLQgZmEBbv+dHDjwYxZNybN4zUkpFcvaNLEGR70woWU7291yR6WFx6W\nF2mXbMEgInmAp4De7jgMpUTk9oBHZsLCNYWv4fZKtzNm7ZiApD/GTfaJJwKSvDEmFXxpY5iLMyZD\nV1W91i0ovrExnzOP3Ud2U+vdWvzY+0cK5S7k9/SPHoW6deGxx+DRR/2evDGZViDbGMqr6gjgHICq\nnkrpQUz6VrZAWdpXbc+w1cMCkn7+/LBokecFOGNMaPlSMJwVkStiZ0SkPHA2cCGZpISq/vSFxi8w\nZcsU9hzdE5D0K1SAOXOgUyfYudO3fawu2cPywsPyIu18KRiGAEuAEiLyPrAcGBjIoEz4KRpRlN43\n9eb5Fc8H7BhRUTBiBLRsaX0qGRNKPvWVJCKFccZ9BlinqocDGtXlx7c2hjBw4uwJKr1VicWdFlOz\naM2AHefFF52qpehoyOvf1yeMyVQC1sYgIsuB2qr6qTsdFhH/DPNl0pWInBE83+h5Bn4V2BvGF16A\n6tWhQ4fUPcZqjEkbX6qSygIDRWSw17KbAhSPSUao608fuuEh9hzdw9JflgbsGCIwcaLT6V6vXpDY\nzWKo8yKcWF54WF6knS8Fw1HgVqCIO95z/gDHZMJY9qzZGdZkGAO/GkiMxgTuONlh7lzYuBFefjlg\nhzHGJMCX9xg2q2pN9/fuQH+ggKqWCHx4cTFYG0MYUVXqvVePXrV60aV6l4Ae648/oF4951HWbt0C\neihjMpxAvsfwduwvqjoV6A4Erh7BhD0RYVTzUTyz/BlOnQvsay1Fi8LixTBwICxZEtBDGWNciRYM\nIhLp/jpPRArGTsBunC4yTAiES/1pvZL1aFS6EcNXDw/4sapUgQULoGtXWL3aszxc8iIcWF54WF6k\nXVJ3DB+4P79LYNoQ4LhMOjCi6QgmbJzA7iO7A36sunVh1iy45x7YsiXghzMmU7Mxn02avLTyJbYc\n3MKH7T8MyvE++gj69HHecahUKSiHNCbdCsSYzzcktaOqbkrpwVLLCobwdfr8aaqOr8p7/3mPW8re\nEpRjvvceDB0Kq1ZByZJBOaQx6VIgGp9H4xn3OaHJ18BaiMhOEflJRC57M0pE7hORrSLyPxFZIyLV\nUvYRMpdwqz+9IvsVvNbsNfou6cuFmOC8jdajh3PXUL9+NH/+GZRDhr1w+16EkuVF2iU15nOUqt6S\n2ORL4iKSFXgLaAFUBTqKSPwhQX8FGqlqNeC/gL1Vnc60qdKGQrkL8c53wfvT9e8PjRtDixZOt93G\nGP/xta+k64EqQK7YZao63Yf96gKDVbWFOz/I3TfBR1lEpACwLf47ElaVFP62HdpGk+lN2PboNork\nLRKUY6rC44/DN984Y0jnyxeUwxqTbgSyr6QhwFicK/9bgJHAf3xMvziw32v+N3dZYh4AFvuYtgkj\n1xe5nu41utN/af+gHVPEGQGudm247TY4fjxohzYmQ8vmwzZtgerAJlW9X0SKALN8TN/ny3wRuQXo\nAdRPaH337t0pU6YMAPnz56dGjRpERUUBnjrFzDDvXX8aDvF4zw9uPJhrx1/LqPdHcWOxGwN+vNhl\nbdpEs28ftGgRxZIlsGlTeORHMOe3bNlCv379wiaeUM6//vrrmfr8MHXqVIC482WqqGqSE7DB/fkd\nkA8QYFdy+7n71AGWeM0/DQxMYLtqwM9AhUTSUeNYsWJFqENI0qJdi7TC2Ap6+vzpgB/LOy8uXlR9\n5BHVevVUjx8P+KHDTrh/L4LJ8sLDPXcme66OP/nSV9J44FmgA04/SaeAzap6f3KFjohkA3YBTYAD\nwLdAR1Xd4bVNKZzBfzqr6rpE0tHk4jTho+3ctlS9sipDbxka1OPGxMAjj8COHU43GhERQT28MWHH\n7+8xJHKQskCEqv4vBfu0BF4HsgKTVXWYiPQEUNW3RWQScDewz93lvKreHC8NKxjSkd+P/06Nt2uw\nsvtKqlwZ/yG0wIrtqnvzZvj8cyhYMKiHNyasBLRgEJHqQBmck7vg3J7MT+nBUssKBo/o6Oi4usVw\n9ub6N/lwx4es6LaCLOJLX40pl1heqMJTTzlPKi1dCkWC85BUSKWX70UwWF54BPKppCnAZKANcAdw\nu/vTmET1uqkX5y6eY8KGCUE/tgi8+qrTr1KjRrB/f/L7GGM8fGlj+AG4NpSX7HbHkD7tPLyTBu81\n4NuHvqVcgXIhiWH0aHjzTefuoUKFkIRgTMgEcjyGDThvLRuTIpULV+bpBk/T4+MeAR3tLSlPPAFP\nPw1RUbB1a0hCMCbd8aVgmAKsFZEfRWSbO/nc+Gz8y/sZ/vSgX51+nI85z/gN4/2etq958fDDzotw\nzZrBsmV+DyMspLfvRSBZXqSdLy+4TQY6A9uB0Fz2mXQra5asTLlzCvXfq0+LCi2oUDA09Tnt2jmN\n0O3aOdVL990XkjCMSRd8aWNYq6p1gxRPYjFYG0M6N3b9WGZtm8Xq+1eTPWv2kMXx/ffQqhU8+qgz\nXKikuPbVmPQjYI+risgEnDeeFwHn3MX2uKpJEVWl9futqXl1TV5u8nJIY/n9d6dwaNAA3ngDsvly\n32xMOhTIxudcwFmgOc6jqva4agil1/pTEWHqXVOZsmUK0Xui/ZJmavOieHFYuRJ+/BFuvz1jdNud\nXr8XgWB5kXZJFgzueAr/qOr98acgxWcykKvyXMWUO6fQdUFX/v7375DGki+f82Z0pUpQp45TSBhj\nHL5UJa0D6tp7DMZf+n/Rn5+P/MyCDgsC9lZ0Srz7Ljz7LMyY4XTfbUxGEcg2holAMWAe8K+72NoY\nTKqdu3iOxlMbc+c1dzKowaBQhwM440e3bw8DBkC/ftYobTKGQLcx/APcirUxhFxGqD/NkTUH89rN\n4431b7Ds19S/WODPvGjYENauhWnToFMnOHHCb0kHRUb4XviL5UXaJVswqGp3d7I2BuM3JSJLMKvN\nLDov6Mxvx38LdTgAlCnjFA5580KtWrBtW6gjMiY0fKlKKokztGcDd9FKoK+qBu2/2aqSMq7hq4ez\ncOdCortHkytbruR3CJLp06F/fxg5Eu63yyCTTgWyjeErnKE8Z7qL7gPuU9VmKY4ylaxgyLhUlQ4f\ndiBntpxMv2s6EkaV+99/77wpffPN8NZbzp2EMelJINsYrlTVKap63p2mAlelOELjFxmt/jT2/YZd\nhyDfPKwAABSFSURBVHfx8qqUvfgW6Ly49lr49lunIbpmTViX4PiC4SGjfS/SwvIi7XwpGP4WkS4i\nklVEsolIZ+BwoAMzmUfu7Ln5+N6PeXfTu8z9fm6ow7lE3rwwZQqMGAF33QXPPw/nz4c6KmMCy5eq\npDLAm0Add9E3QB9V3ZfYPv5mVUmZw9aDW2k2oxkL711IvZL1Qh3OZQ4ehAcecH7OnAlVgjtqqTEp\nFpQxn0PFCobMY8nPS+i2sBtfdvmSakWqhTqcy6h6Xoh78klnvIfsoesT0Jgk+b2NQUQGJzK9ICIv\npC1ck1oZvf60RYUWjG0xlpazWvLzPz8nuW0o8kLEGd/h229hxQrnsdb164MexmUy+vciJSwv0i6p\nNoZTwMl4kwIPAAMDH5rJrDpc14HBjQfTfEZzfj/+e6jDSVDZsk5fS4MGOW0PvXvD8eOhjsoY//Cp\nKklEIoHHcAqFucAoVf0zwLF5H9+qkjKhEatHMGXLFJZ1XUbxyOKhDidR//zjjO2wZInz3sO991qX\nGiY8BKSNQUQKAY/jvLswHXhdVY+kOspUsoIh8xq+ejiTNk1iebfllMpXKtThJGn1aujbF3Llgtdf\nh5tuCnVEJrMLRBvDa8C3wAmgmqoODkWhYC6V2epPBzUYRO+be9N4amN+PfLrJevCLS8aNIANG5wn\nl+68E7p1g9+C1D9AuOVFKFlepF1SbQxPAMWB54ADInLCa7LaVBM0/er0Y0C9ATSe2phth8K7A6Ms\nWaBHD9i1yxkQqHp1ePxxOHQo1JEZ4zt7XNWkG7O3z+axzx9jZpuZNC/fPNTh+OTgQRg2zHnvoWdP\n5xHXggVDHZXJLALZJYYxYeHe6+7lo/Yf0XVBVyZtmhTqcHxy9dXOuNJbtsDhw86Icc89Z3cQJrxZ\nwZDOZPb604alG7Ly/pWMWDOCtiPbcu7iuVCH5JOSJeGdd5x3Hv75BypXdu4g/DWkaGb/XnizvEi7\nbKEOwJiUqlSoEusfXE/rV1oTNTWKOW3nUDJfyVCH5ZPy5WH8eBgyBMaNg/r1nUbrfv2gUaP0+Zjr\nmQtnOHrmKCfPneRCzAXOXzzPhZgLcRM4gzPlzJaTnFlzkjNbTnJkzUHeHHnJkz1PWPWoaxzWxmDS\nrRiN4dU1rzJm3Rjeu/M9WlVsFeqQUuzUKaeTvvHjne42Hn7YeZop1O0QZy6cYfeR3ew/vp8DJw7w\n+/Hf+f2EMx08eZAjp49w7Owxjp45CkC+nPmIyBlB9izZyZYlG9myZCN7Vud3VeXcxXOcvXiWsxfO\ncvbiWc5dPMeJsye4EHOB/LnyU+CKAhS8oiAFchXgqjxXUTyiOMUiilE80v0ZUZwieYuQLYtdy6aE\n9ZVkMq2Ve1fSdUFXmpZryqjmo8iXK1+oQ0oxVec9iLffhk8/hTvucJ5u+v/2zjy4juJM4L9PlyXL\n1i3LseRL8oVkLMxhSTYm5lzjZJ3i2GIJCwG2SLK7kGXJ1ppQ2TVbWyHFkk0ZllrCEQyEBcImgZij\nQgjYEGJL+D4kGVuyjA9hWbdt2ZYlvW//6H5P7ymS9ST0Dsv9q+qanu6e6W++mulvumf66yuugNjY\nUNWpHD5+mB0NO/is6TP2tuxlT/Me9rbspeFEA1NSpzAldYqvYc5NySV3fC4Tx00kIymD1MRU0hLT\nvtQCS53dnbSebqX1VKtv29DR4DNE9cfrjUE6dpiWUy3kpuQyI2MGBekFJmQUMCNjBvnp+YxLcAtm\n9MUZhvOEdevWsWTJkkiLERX46+JY5zFWvL+Ct/e+zdNff/qc7D14aW42a0//4hdw9Cjccgvceqvx\nyzTQqMtg90Vndye7ju5ie8N2djTs8G3jY+KZlzOPOVlzmJkxk5mZM5mZMZOpaVOj7u38TM8ZPm/7\nnJqWGmpba6ltqaW2tZaalhrq2upIT0ynMLuQlC9SuO7q6yjMLqQwu5CssVmRFj1iOMNwnuAMQy/9\n6eKDfR9wz1v3MC9nHo9d+xgzM2dGRrgRoroaXn3VBICbbza9iZKSwJ6Evy5UlQPtByg/VE75oXI2\nHNrAzqM7KUgvoHhiMcU5xczLmUdxTjE543LCf1EhwKMeDrQfoLqxmjXvreHM5DNUNVVR1VjFmNgx\nPiNRmF3I3AlzKcouIjs5O9JihxxnGBwOy+nu0zxe/jiPrX+MO4rv4IdX/JCMpHN78oAqbNoEb74J\nb70FX3wBy5YZI7FoyUlqOjb7jED5oXJ6tIeyvDLK8soozSvl0kmXkpyQHOnLCDuqSv3xeqqbqqlq\nrKLyaCWVjZXsOrqLhNgEn5EomlDki6cnpUda7BHDGQaHow8NJxpYuW4lr1e+zl0X3cUDZQ9EtTO+\nYFBV9rXuY83WDbyxsZztzeUcG1NNckcRc5LLuHpOKbcvKaMod6r72+cseA2G10h4DUZVYxXjEsYF\nGAzvNmVMSqTFHjJRaRhEZCmwCogFnlPVR/sp8wRwPXASuFNVt/ZTxhkGixtK6iVYXRxsP8hPN/yU\nF7e/yA1zbuCeS+6hJLfknGg420+3s7F+IxWHKqg4XEH5oXLGxI2hNK+U0txSyiaXUZg+nxd/XkFb\n2xLWrjU9iwsuMMNNCxaYMGuWcddxPvBlnhHvMFxlYyWVRyvZ1WiMRnVTNZlJmaZnkT3XZzAKswuj\nuicWdYZBRGKBz4BrgMPARuBWVa32K7MMuFdVl4lICfC4qpb2cy5nGCyrVq3i/vvvj7QYUcFQddF0\nsonntjzH81ufJz42nrsvupubCm9iWtq00Ak5BLo93VQerfQZgIrDFXze9jnzvzKfktwSSnJLKJtc\nRl5K3p8d66+LU6dgyxazmNCnn/ZOqrvoIpg7F4qKekNmZrivMvSE4hnxqIe61jqfwfD2NPY072Hi\nuIk+QzErcxYF6QXkp+eTm5JLjETWGg/XMITyt4MFQI2q7gcQkdeAbwDVfmWWAy8CqGqFiKSJSI6q\nOocBA9DW1hZpEaKGoeoia2wWD17+ICsWreCTA5/wwrYXePTZR5k4biLLZy/n2vxruSz3MsbGjw2R\nxL0c6zxm/g46sp3tDSZUHq0kLyWPkrwSSnNLuXfBvVw44ULiYwdfO9RfF0lJZuLcokW9+Y2NsH07\nVFYao/HSSyaenGx6E9OnQ36+2XrjOTmh+1U2lITiGYmRGAoyzO+xy2cv96V3e7rZ17rPNxz10ecf\nsXrbampbamk93crU1KkUZBSQn5ZPQUYBU1On+uZmTBw3Mer+/PISSqlygYN++4eAkiDK5AHOMDhC\nhoiweOpiFk9dTI+nh4rDFaz5bA0r/rCCnUd3UphdyIJJC5iTNYfZWbOZnTmbSeMnBdVAe+nq6aLp\nZBNHThxhf9t+alpqfL9Z7m3ZS9PJJuZOmOv7Q+j2ebczL2deyOZgZGfDNdeY4EUVDh6EmhrYtw/q\n6syqdHV1JjQ3Q1aW8ffkHyZMgPR0SEuD1NTA7fjxEBcXnTO4VaG7e/DQ1RVcOVM2ju7uWXR3z2JS\n941M6IYF3dAdByfHnKTxeB2NrfvY66mlwrOPVv2Q49RzQuo5JY0kerIY25PL2J5JJHtySfJkkaiZ\njPFkkKSZJGomSWSSqOkkkEwsicSIIIIvQG88NtYMGXq3wyWUhiHYsZ++t5AbMzoL+/fvj7QIUcNI\n6CI2JpaFkxeycPJCAE51nWLzF5vZVL+JqsYq3tj9Bnua99DQ0cD4hPHkjMshdUyqz71DXEwcnT2d\nnO4+zenu05zsOkljRyPtne1kJmUyIXkC09KmMSNjBsUTi7nxghspyChgetp0YmNG7nV8OLoQgSlT\nTLjqqj/P7+oyPY0jRwLD/v3GKWB7O7S1BW6PHwePx/RaEhN7t94QFxfYcPWNx8SYBrynx5ynp2fg\n4J/v31g3N+/nySf/vKH3eExdcXEQH2+2g4Vgy/VfdizxcUVMiSsiv5+yEtvNqZgG2vUwbT31tPYc\npsPTzAlPHSc8m2jwtNChzZz0tNChLZzRDnroIoGxJEgyCSSTIMnEkYgQSwxxxBCHaCyicciXaN5D\n+Y2hFHhYVZfa/R8AHv8P0CLyM2Cdqr5m93cDX+07lCQizlg4HA7HMIi2bwybgJkiMg2oB24Bbu1T\nZg1wL/CaNSRt/X1fGM6FORwOh2N4hMwwqGq3iNwLvIf5XfXnqlotIt+x+U+r6rsiskxEaoAO4K5Q\nyeNwOByO4DgnJrg5HA6HI3xE1ZQXEVkqIrtFZK+IrBigzBM2f7uIzA+3jOFiMF2IyG1WBztE5E8i\nMi8ScoaDYO4LW+4yEekWkRvDKV+4CPL5WCIiW0Vkl4isC7OIYSOI5yNLRH4nItusLu6MgJhhQUSe\nF5EGERlwQfQht5uqGhUBM9xUA0wD4oFtwAV9yiwD3rXxEqA80nJHUBdlQKqNLz2fdeFX7kPgbeCm\nSMsdoXsiDagE8ux+VqTljqAuHgZ+7NUD0AzERVr2EOljMTAf2DlA/pDbzWjqMfgmxKlqF+CdEOdP\nwIQ4IE1ERod7yEAG1YWqblDVdrtbgZn/MRoJ5r4AuA/4FdAYTuHCSDB6+Cbwa1U9BKCqTWGWMVwE\no4svAK9zoxSgWVW7wyhj2FDVPwKtZyky5HYzmgxDf5Pd+no8G2hC3GgjGF3487fAuyGVKHIMqgsR\nycU0DE/ZpNH44SyYe2ImkCEia0Vkk4jcHjbpwkswungWKBKRemA78I9hki0aGXK7GU3zsd2EuF6C\nviYRuRK4G1g0WNlzlGB0sQp4UFVVjGe80fh7czB6iAcuBq4GxgIbRKRcVfeGVLLwE4wuHgK2qeoS\nESkA3heRYlU9HmLZopUhtZvRZBgOA/4ruk/GWLazlcmzaaONYHSB/eD8LLBUVc/WlTyXCUYXl2Dm\nwoAZT75eRLpUdU14RAwLwejhINCkqqeAUyLyMVAMjDbDEIwuFgI/AlDVWhGpA2Zj5ledbwy53Yym\noSTfhDgRScBMiOv7YK8B7gDfzOp+J8SNAgbVhYhMAX4D/I2q1kRAxnAxqC5UNV9Vp6vqdMx3hr8b\nZUYBgns+fgtcLiKxIjIW86GxKsxyhoNgdLEb49kZO54+G9gXVimjhyG3m1HTY1A3Ic5HMLoA/g1I\nB56yb8pdqrogUjKHiiB1MeoJ8vnYLSK/A3YAHuBZVR11hiHIe+IRYLWIbMe8AP+LqrZETOgQIiKv\nAl8FskTkILASM6w47HbTTXBzOBwORwDRNJTkcDgcjijAGQaHw+FwBOAMg8PhcDgCcIbB4XA4HAE4\nw+BwOByOAJxhcDgcDkcAzjA4hoyIeETkJ377/ywiK8MswzoRudjG3xGRlMGOGeR8S0TkrQHS260r\n660i8vsvU4/DcS7gDINjOJwBbhCRTLs/pMkwIhI7AjL46lTVr6nqsRE450B8pKrzbbjOP0NEomaS\naDgRkfRIy+AIHc4wOIZDF/AM8E99M6ybgg/tgiB/EJHJNv0FEfmZiJQD/ykiq0XkKRHZICK19s38\nRRGpEpHVfuf7HxHZaBdbebg/YURkv4hkish3/d7s60TkQ5t/nYisF5HNIvK6iCTb9KUiUi0im4Eb\nznK9AQ7IROROEVkjIh9gnLONtYulVIjIFhFZbsslichr9pp+IyLlfr2cE37nu9l7zSKSLSK/EpFP\nbVho0x+2day1+rrP7/g7rL63WR2OE5F9XqMlIil2fyQMspeNIvKyiFwpduq9YxQR6UUmXDj3AnAc\nGA/UYXzdfx9YafPeAm638buAN2z8BYzPFu9s+9XAKza+HDgGFGEa4U1Asc1Lt9tYYC1wod1fC1xs\n43VAhp98ccDHwNcwTvU+ApJs3grgX4FE4ABQYNN/Cazp51qXAG3AVhseAr6FcViXZss8Atxm42nA\nZxjvpg8Az9n0CzEG1Svzcb86bgJW2/grwCIbnwJU2fjDwCcYVweZQJPVSZGtL8Nbv90+D3zDxr8N\nPDbC90CM1e+vMf6YfgB8JdL3pgsjE1yPwTEs1Lgvfgn4Xp+sUkzjBvAycLn3EOD/1LYqFu+Y/i7g\niKpW2vxKzOpcALfYN/otmEbwgiDEewL4QFXfsfIUAutFZCvGmdgUjFO1OlWt9ZN1oDffP2rvUNIj\nNu19VW2z8euAB+351wJjbB2L7XlR1Z0YH0aDcQ3wpD3Xb4HxtoejwDuq2qWqzcBRYCJwFfC6Wj9A\nfjI9R69PnDsxhnjEUFWPqr6jqjcBVwAFwAERuXQk63FEhvNyfNQxYqzCNNh9G52BGtiTffbP2K0H\n6PRL9wCxIjId0xu5VFXb7XBL4tkEErO272RV/Xu/5PdV9Zt9yhUHKfNAdPTZv1H7rHtgR1gGOq+/\ngUzqI0eJqp7xL2zP5Z/Wg3l+tb86VHW9HdZbAsRqH2d6dlhpsz1+DaY3tNLu3wP8A2a5yMPAdzFL\npirwlKo+Y8+RCvw1pgfViTFEA6477Dh3cD0Gx7BRswbE65gV5LwN3XpMYwFwG2ZIZzgIZriqAzgm\nxnXy9Wc9QOQSjCHxX7msHFgkZrEWRCRZRGZi3DJPE5F8W+7WIcrmz3v49Zykd7H1jzHLbSIic4F5\nfsc0iMgcEYnBfN/w6u/3fc7V14D5o5h1rv9KRDJs+Qy//JeA/8UMKwUeqNqjqhfZXtBKVX3Txi9W\n1c2qerfd/7qqHvIr6zUKL2MMy1TM0OGVqvqyqnb2rctx7uEMg2M4+L/t/hdmHN/LfcBdYtwd30bg\nkop9/17Ss+Wp6g7Mm+xuTAP3yVnkEcxbbjqw1n6AfkbNusd3Aq9amdYDs20D9m3gHTtU1dCPDN5z\n9ye3f9p/APEiskNEdgH/btOfAsaJSJVN2+x3zIOYt/A/AfV+6d8DLrUfkyuB7/SpN1AQ0xP4EfCR\niGwDfuKX/YrVx6v9XNeX5ZfALFV9yG84zjFKcG63HY4wISJrge+r6pYw1Xcz8Jeq+q1w1OcYPbhv\nDA7HKERE/hv4C2BZpGVxnHu4HoPD4XA4AnDfGBwOh8MRgDMMDofD4QjAGQaHw+FwBOAMg8PhcDgC\ncIbB4XA4HAE4w+BwOByOAP4fUhmKkZYfxo4AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from __future__ import division\n", "from numpy import arange,ones,sinc,pi,cos\n", "from math import log\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,xlabel,ylabel,title,show,legend,grid\n", "\n", "rb = 2 # the bit rate in bits per second\n", "Eb = 1 # the Energy of bit\n", "f = arange(0,1/(100*rb)+(4/rb),1/(100*rb))\n", "Tb = 1/rb# #bit duration in seconds\n", "SB_MSK=ones(len(f))\n", "SB_QPSK=ones(len(f))\n", "for i in range(0,len(f)):\n", " if(f[i]==0.5):\n", " SB_MSK[i]= 4*Eb*f[i]\n", " else:\n", " SB_MSK[i]=(32*Eb/(pi**2))*(cos(2*pi*Tb*f[i])/((4*Tb*f[i])**2-1))**2\n", " \n", " SB_QPSK[i]=4*Eb*sinc((2*Tb*f[i]))**2\n", "\n", "plot([ff*Tb for ff in f],[yy/(4*Eb) for yy in SB_MSK])\n", "plot([ff*Tb for ff in f],[yy/(4*Eb) for yy in SB_QPSK])\n", "xlabel('Normalized Frequency ---->')\n", "ylabel('Normalized Power Spectral Density--->')\n", "title('QPSK Vs MSK Power Spectra Comparison')\n", "legend(['Minimum Shift Keying','QPSK'])\n", "grid()\n", "show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example7.31 page 338" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEZCAYAAAB4hzlwAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnWeYFNXSgN9acs4g0QUVRVSCARCEBUUyqJgVARXFrIgJ\ns9drwKuil4tZiQb4UBQRRYUFRFFEkqiIkpQkUaKE3fp+nF5mWGZ3Z3emZ2Z3632e88x09+lzampm\nurqrzjklqophGIZhACTFWwDDMAwjcTCjYBiGYRzCjIJhGIZxCDMKhmEYxiHMKBiGYRiHMKNgGIZh\nHMKMgpFvEZHHRWSTiKyLtyzRQEQ+EZE+MehnpIj8Kw/ntRaR5SKyU0R6+iGbEX/MKOQBEVklInu8\nP8cGEXlLRMrEW64MRKSxiEwTkS0isk1EvheRLj73mSoi1/jZR6b+6gGDgBNUtVaI4ykiki4i72fa\n38TbPyNWsoaLqnZV1TGx6MorueUx4EVVLaeqH0UqhGec0jMbGBF53tvfN8L2+3q//b9F5A8ReVpE\nioRx3lVe/1n+nkWkvIiM9W5KNnnvy0Uib6JgRiFvKNBdVcsBzYHTgAfiIYiIhPoOJwOfATWA6sCt\nwA6fRcn2IiMiRaPcXz1gi6puyabOJqCliFQO2tcX+JW8XRSPwIfPFSskD+fUA37KU2ehL8aK+y6u\nCqpXFLgY+I3Iv6NSwG1AFaAFcDYwOAc5KwFDgB9z6P8RoCpQHzgG9197JEJ5EwIzChGiquuAT4GT\nAESkp4gs9e7QZ4jICd7+/iJy6O7KewwfH7T9h4ic4r0/QUQ+9+70fxGRi4LqjRSRlzxXwy4gJVge\nEakKJAOvqepBVT2gql+r6hzveIqI/Cki93l3OCtF5PKg80uIyH9EZLX3FPSSiJQMOt5LRBZ6d1+/\niUgnEfk3cBYw3Ht6etGrmy4iN4rIcmCZt+8FEVnjnf+9iLTJSrciUkFERovIX97T2f3iOAeYBtTy\n+nsziyb2A5OAS732iuAuOOPI5qIoIt1EZIEn4xoReTjoWLL3ua4WkdXAlyLysYjcnKmNxSLSK0Tb\nJb27ys3eb+Q7EanmHTv0tCUiRUTkWe87WiEiN3v9JgXVfUxEvhKRHSLymYhUCepngoisF5HtIjJT\nRE7M4rNW9eTf5v3eZonIEboRkd+BBsBkr79iIlJLRD7yzlsuItcG1X9ERP5PRMaIyN84YxyKyUAb\nEanobXcGFgEbyZvhOoSqvqyqc7z/wTrc9946h9OeBF4AsrvZAGgMTFLVXaq6A/c7axyJvAmDqlrJ\nZQFWAmd77+vi7ioeBRoCu3B3JEWAu4DlQFHcH2qbd04tYBWwxttuAGz13pcB/sD9iZKAprg73kbe\n8ZHAdqCVt10ik2yCu/uaDPQCamQ6ngIcAP4DFAPaejI39I4/j/uBVwTKAh8BT3jHzvD6Pjvocxzv\nvZ8BXJ2pr3TcE0vFDDmBK4BK3mcbBKwHimeh59HAB55OjsYZlqu9Y+2AP7L5jlI8PbYC5nr7uuIM\n+DXAjGzObQc09t6fDGwAennbyd7nGom7Ey0JXJTRh1enCbAZKBqi7es9nZb0vqtmQLnMOgQGAks9\nHVcEvgDSgCTveCrut3Ws19YM4Mmgfvp5eivmfacLgo69BTzmvX8SeAn3ey0CtM7hd98haHsWMBwo\n7n3mv4D23rFHcEa5p7ddMkR7bwH/Al4BBnr7xuOM+GzgqizkuBzYlkXZCtTJ4rxJeL/lLI6fAXzn\nfS9H/J4z1R0EfO59N5WA6cCt8b42RaPEXYD8WHAX9J3ej3CV98coCTwIvBtUT4A/gbbe9hrvInCp\n90eYCxwP9MfddQBcAszK1N8rwEPe+5HAyBzkqw38F/cIngbMBI71jqXgjEKpoPrv4dxfgjMQDYKO\ntQJWBMnxbBZ9zgCuybQvHUjJQdatwMkh9hcB9uFiBhn7rsO7mHufI0ej4L3/FWew3wUuIwejEKKt\nYcBz3vtk73MlBx0v6X2OY7zt/wDDs2irPzAni88cbBSmAwOCjp3t9ZsUVHdI0PEbgKlZ9FnROzfD\n+AQbhUdxF8tjwtDDIaOAuxk6CJQJOv4E8Jb3/hEgNYf2MoxCa+BroALOAJckG6OQx//s1bj/X+Us\njhcB5gFnZP4usqhfAmcU0rzyGVAsWvLGs5j7KG8o7s6xkqomq+rNqvoPUBP3w3OV3K/nD9xFGtzF\nOQXnapnplXa4u/WZXp2jgRbe4/w2EdmGuzOqEdT3H9kKp7pWVW9R1WO99nbj7roz2Kaqe4O2V3uy\nVwVKA/OD+p7q7QeoA/yeg14yc5isIjJYRH7y3BrbcBeCqiHOq4q7y10dtG8NAV3mhjHALTjdf0CQ\nW0JEhnguqJ0iMsLb10Kc6+8vEdmOu7uvkqnNQ5/L++7HA30818ulXp9ZyfIZ8K6IrBUX/AwVl6jJ\n4br7M0SdDUHv9+Ke7DJcT0957r2/cRdzOFzPGTp4BnfzME1EfheRe7KQOzO1cE+3u4P2Zf5+Qsmc\nGVXn2qyGuzGZ7OkzaojIeTiD1UVVt2ZR7UZgsap+F3xqNs2Owz25lgXKAyuAsVEQN+6YUYgu63AX\nYQC8C0RdYK23aybQHmcUUgkYiXYEjMIaYKZncDJKOVW9KS8CqeqfwAi8mIdHJREpHbR9tCf7ZtzF\n5cSgviuqanmv3h84d0XIrnLaLyJn4VxqF3ntVgL+JvSfbzPuiSY5aF89wrvQZGYs7k56SuYLjqo+\n4em3nKre6O1+G3f3XEdVKwIvc+R/JfPnHYVzjZ0D7FHVb0MJos6//ZiqNgbOBLoTFGgNYj3ut5NB\n3RB1suJyoCfOzVcBFwyFEHpW5xMfrKrHeOcMEpEOYfSxDqgsImWD9mX+fnITKB6Lc8mMzqmiiFwR\nZMgzlx0iUieobmfgVdzAkKXZNNsBON+Lw6zHfTfPihcfC0Fn4BVV3esZxldw7sl8jxmF6DIe6CYi\nHUSkGHAn8A/u0RgCRqGkusDXV7gfV2VggVfnY6ChiFzpBfOKicjp4gWsySH4JiIVReRRETlGRJLE\nBZ6vBr7JVPVRr+2zgG7ABO/J5jVgWFDws7aInOud8wbQ3/t8Sd6x471jG3GjMLKjHM7lsFlEiovI\nQ7i7rCNQ1TScPv8tImVF5GjgDvJwN6aqK3FPY/eHeUpZ3NPUfhE5A3eRzfYCp6rfeHX+QzYXNnGB\n/pPFBb134gxfWoiq44HbvGBuReCeEDJk9Vsoi3O9bRU3VPqJrM4Tke4icqx3A7ODgDskW1T1D9zv\n+klxgxNOwf3OcvP9SJAsLwLnqOrsMPoeF2TIM5fy3o0QnnEbB1ygqt8f0bkbtPGWt9kPOAEXG2kK\nfI9zgd3v1U0RkfSg0xcDA8QNHCiFc20uysVnT1jMKEQRVf0VuBLnz9+Eu9j2UNWD3vHluAvBbG97\nB84dM8e7IKOqu4BzcS6Itbg7xidxwTzIeYz5ftyd/xe4u/AluLv/fkF1NuDiIetw7ozrPdnBXXx+\nA+Z6rofPcf54VHUezif+PC7gnIq7OwQ3YuNCEdkqIsOykO1Tr/yKi8XsJcjdFoJbcK6vFTidjcP5\noTPI6U700HF1I7A2BO3P7twbgcdEZAcuTvReVu1mYjQuMJ3dhfEoYALuu/kJp8NQrqbXcCOsFgPz\ngSlAmqoGX5g00/uM7dE4t9ta3CCIb7KpeyzuO96Ju8j/T1VnEh6X4Z7k1gHv4+Je00P0kRWH6qjq\nNlWdEWa/4fIA7kZkatCTxJSg43VwN2ao6t+q+pdXNuL+RztUdadXty4uFpRBP9z/Yi3u6SiZrEdY\n5SvEuxZFv2E3jHEmLiBTHPhQVe8LUe9FoAuwB+inqgsy1zGih4ikAGNUNTfuCCMMxM1GHqCqbX1o\nuwvwkqomR7vtwoiIFMc9nZ/iPZXmVP81YLyqfu67cHHGt4k3qvqPiLRX1T1eIO0rEWmjql9l1BGR\nrrhRMceJSAvc0LiWfslkGH7hxWhuwo1Ei0Z7JXF+7mm4QQYP4+7GjSigqvvJxbwCVR3gozgJha/u\nI1Xd470tjhvylTny3xMXoMMLzFUUkRoYfuPP42EhRUQ64cbor8cFqaPSLM6nvRX4ATdn4aEotW0Y\nWeLrFH1xsy9/wAUgX1LVzFPka3PksLs6uKCl4QOqmkogDmBEAVX9DG84aBTb3IubTGUYMcXvJ4V0\nVW2Ku9C39fzZmck8gsLuYg3DMOJETBbzUtW/vaj/abjRFhms5fDx13UIjOk/hIiYoTAMw8gDqpqr\nNaR8e1IQt9BWRe99KaAjgbH4GXyEN3FHRFoC273hYEdwaBr2jh3oY4+hVauir7+OpqfHfVp4LMvD\nDz8cdxkSpZguTBemi+xLXvDzSaEmMMqLKyThhkF+KSLXA6jqK6r6iYh0FZHfcOPR++fYarly8OCD\ncMEFcOmlsGABvPACFMlxmfQCwapVq+ItQsJgughgughguogMP4ekLsHlGsi8/5VM2zdnrhMWjRvD\nV19B797OOLzzDhTNr0vbG4ZhJAb5e0ZzhQrwySewcydcey2kp+d8Tj6nX79+8RYhYTBdBDBdBDBd\nRIZvM5qjiYhotnLu3g2dOkG7dvDvf8dOMMMwjARGRNBECTTHlDJl4IMPYOxYmDgx3tL4SmpqarxF\nSBhMFwEKiy5ExEoWJVoUHCd8tWrw/vvQuTOccgocd1y8JTIMwwfyg3cj1kTTKBQM91EwL74Ib7/t\ngtAWeDaMAoXnDom3GAlHVnopvO6jYG6+2QWgn8i8hLxhGIaREwXPKCQlwZtvwn//C7/8Em9pok5h\n8R2Hg+kigOnCiBYFzygA1K4NDz0EAweCPWoahmGETcE0CgA33uiGqo7JKn96/iQlJSXeIiQMposA\npov4k5ycTIkSJdiyZcth+5s1a0ZSUhJr1mSXZPBwnnnmGU4++WTKly9PgwYN+M9//hNtcbOk4BqF\nIkWcC2nIEGccDMMwfEREaNCgAe+8886hfUuWLGHv3r15Gh00ZswYtm/fzqeffsrw4cN5773MWWH9\noeAaBYCWLeGssyCGVtZvzHccwHQRwHSRGFx55ZWMHj360PaoUaO46qqrcj1i6q677qJp06YkJSXR\nsGFDevXqxZw5c3I+MQqEbRRE5DQRKeGnML7w5JNumOqGDTnXNQzDiICWLVuyY8cOfvnlF9LS0njv\nvfe48sorDx1/6qmnqFSpUshSuXLlkG2qKrNmzeKkk06KyWcIa56CiNQE1gD9VXWs71Id2X/48xRC\ncccdbl2kF16InlCGYcSccOYpRGseV24vOfXr1+f1119n7ty57N69m7Zt2/L888/zySefUKxYMVat\nWkW9erlPevjwww/z0Ucf8d1331GsWLGQdaI5TyHc2V39cLmUrwFibhQi5t574cQTYfBgqFs35/qG\nYeRb4jngUETo06cPZ511FitXrsyT6yiY4cOHM3bsWGbPnp2lQYg2ObqPxEVI+gD3AiVE5BjfpYo2\nNWrAddfB44/HW5KIMd9xANNFANNF4lCvXj0aNGjA1KlTueCCCw479sQTT1CuXLmQpXz58ofVffPN\nNxk6dChffvkltWrVipn84cQUUoCfVXUzgaeF/Medd8KECbBuXbwlMQyjgPPGG28wffp0SpUqddj+\nIUOGsHPnzpBlx44dh+qNGzeO+++/n2nTppGcnBxT2XOMKYjIWOAdVZ0iIhWA+UBDVY1Z8oKIYwoZ\n3HKLW1H1qacib8swjJiTyGsf1a9fnzfeeIMOHToctv/gwYOUKFGClStXhh1TaNCgAWvXrqV48eKH\n9vXp04cRI0aErB/NmEK2RkFEKgHzCDICnpF4T1Un56ajSIiaUVi5Ek4/HVasgEyPaoZhJD6JbBTi\nScwWxFPVbap6bPBTgapeGUuDEFXq14eOHeG11+ItSZ4x33EA00UA04URLXI1eU1ErvNLkJhx113w\n/POwf3+8JTEMw0g4cpVPQUQWqGozH+XJqt/ouI8y6NgRrrwS+vaNXpuGYfiOuY9CE898CtFL7xNP\n7r4bhg51E9oMwzCMQ+TWKHT3RYpYc845bsG86dPjLUmuMd9xANNFANOFES1yaxRe9kWKWCMCN9wA\nLxeMj2MYhhEtCmdMAWDHDjj6aFi6FGI4W9AwjLxjMYXQxDOmsCCX9ROX8uXhkktc6k7DMAwDyL1R\n+J8vUsSL66+HV1+FtLR4SxI25jsOYLoIYLowokVujUL+nfUVimbNnOvok0/iLYlhGPmcaKbjzGD/\n/v00atSIujFc3dm3IakiUldEZojIUhH5UURuDVEnRUT+FpEFXnkgl/JEzsCB+SrgbLl4A5guApgu\n4k+003GCy9VcvXr1PJ+fF3JrFB7LRd0DwB2q2hhoCdwkIo1C1Jupqs28Evu1rS++GObOhVWrYt61\nYRgFi2il4wRYuXIl48aN47777otpcD2cfArzReQmEamkqh+E27CqblDVhd77XcDPQKhhPvGdEFe6\ntJvd/MYbcRUjXMx3HMB0EcB0kRhEMx3nLbfcwpNPPknJkiVj+hnCybx2KdAfmCci3wNvAdNyM0ZU\nRJKBZsC3mQ4pcKaILALWAoNV9adw240a/fvDeefBo49CUm4fngzDSCTk0ejcZ+rDebs779OnD6NH\nj6Zt27aceOKJ1K5d+9Cxe++9l3vvvTfHNj744ANUlV69esXc4OdoFFR1OTDE8/d3B94E0kXkTeAF\nVd2a3fkiUhb4P+A274khmB+Auqq6R0S6AJOAhnn4HJHRpIkbojprFiS4b9Z8xwFMFwFMFwHyejGP\nBtFIx7l7927uvvtupk6d6pOU2RNWjmYRaYJ7WugCTATeBtoA04Gm2ZxXzKs/VlUnZT6uqjuD3k8V\nkREiUjmUoenXr9+hDEQVK1akadOmh/4IGZY0z9szZ0Lr1qSMGgUpKZG3Z9u2bdu+bSc6wek438w0\nD+qJJ57gySefDHmeiLBjxw6WL1/O6tWrOeusswA3Aunvv/+mZs2afPvtt9km6klNTWXkyJEAec/Y\npqrZFlymtenA5UCJTMc+yOY8AUYDz2dTpwaBWdVnAKuyqKe+s26dasWKqrt2+d9XBMyYMSPeIiQM\nposAhUUXMbkW5JHk5GT98ssvVVX1999/1/nz56uq6oEDB1REdPXq1WG1c/DgQd24ceOh8v7772ut\nWrV048aNmpaWFvKcrPTi7c/xOh9cwnlSuEhVVwTvEJH6qrpSVc/P5rzWwJXAYhHJmAk9BKjnXeVf\nAS4EbhCRg8AeXPwiPtSsCa1awQcfuMCzYRhGHmnQoMFh27kZUlqkSBGqV69+aLtSpUpH7POTcHI0\n/6CqzTPtm6+qp/oq2eH9aU5yRoX33nOjkKZN878vwzByja19FJporn2U5ZOCN6fgRKCiiFyAcwcp\nUB6I7RipWNGzp1s99c8/oU6deEtjGIYRc7Ibf3k80AOo4L12916bAwP8Fy0OlCoFF14I48bFW5Is\nifXwtETGdBHAdGFEiyyfFNSNFpokIq1U9ZsYyhRfrrrKLZR3zz3xlsQwDCPmZBlTEJF7VPVpEflv\niMOqqkesZeQXMYspgEvRmZzsFsk76aTY9GkYRlhYTCE0MYkpABkzi+fjYgkQWJKi4H4rSUkuz8K7\n78LjsV+KyTAMI55kGVNQ1cne60hVHaWqo4AxuLkJo2IlYFy45BI3EikB70jMdxzAdBHAdGFEi3AW\nxHtbRMqLSBlgCfCTiNztv2hx5NRTnUH44Yd4S2IYhhFTwpmnsEhVm4jIFbiRR/cCP6jqybEQ0JMh\ndjGFDB54APbtg2eeiW2/hmFkicUUQhPrHM1FvTWMzgMmq+oBCnJMIYNLLoHx413g2TAMo5AQjlF4\nBVgFlAVmectg/+2fSAnCSSdB2bIuAU8CYb7jAKaLAKaL+BPNdJwHDx7klltuoWbNmlSpUoWePXuy\nbt26aIsckhyNgqq+qKq1VbWLqqYDq4H2/osWZ0Tg0kvdKCTDMIwciGY6zhEjRjB79mwWL17MunXr\nqFSpErfccku0RQ5JOIHmkiJyhYjcLyIPAw/hFrYr+FxyCUyYAGlp8ZbkEPll+eBYYLoIYLpIDKKV\njnPp0qV06tSJatWqUaJECS6++GKWLl0abXFDEo776EOgJy7n8i6v7PZTqIShYUM46ij46qt4S2IY\nRj4gWuk4zz33XKZOncr69evZs2cP48aNo2vXrjH5DOEYhdqqeomqDlXVZzOK75IlCr17w8SJ8Zbi\nEOY7DmC6CGC6CEIkOiWPZKTj/Pzzz0Om49y2bVvIsnVrILdY7969adasGbVr16ZChQosW7aMBx98\nMCK1hEs4RuFrETnFd0kSld694f33bRSSYeQXVKNT8kBGOs5x48bl2XUEMHjwYHbu3MnWrVvZvXs3\n559/Pl26dMmTTLklnHkKPwPHAiuBfd5uVdWYGYq4zFMIplEjGDkSWrSInwyGYST0PIX69evzxhtv\n0KFDB9q3b8+CBQtYv349xYoVo3jx4qxatYqxY8fmmI4T4KSTTuLJJ5+kR48eAGzfvp3KlSuzefPm\nw9xMwefGYu2jDGJjnhKZDBeSGQXDMMLgjTfeYPv27ZQqVYqDBw8e2j9kyBCGDMl5nM4pp5zCqFGj\naNeuHaVKlWLEiBHUrl07pEGINuEMSV0F1AXae+93E1gYr3CQYRQS4A7FfMcBTBcBTBeJRYMGDWje\nPJCwMrdDUp9//nmSkpI45phjqF69Op9++ikffPBBtMUMSY5PCiLyCHAqLunOW0BxYCwuB3PhoGlT\nZxAWL4YmTeItjWEYCcjKlStD7i9atChpuRzWXqNGDcaPHx8NsXJNWGsfAc2A+arazNu3uFDFFAAG\nD4bSpeGxx+Irh2EUYhI5phBPYr320T5vJnNGJ2Vy00GBIcGGphqGYfhBOEZhgoi8AlQUkeuAL4HX\n/RUrAWnRArZvh19+iasY5jsOYLoIYLowokU4geZngIleaQg8qKov+i1YwpGUBBdc4OYsGIZhFFDC\niSlUxBkDgF9VdbvvUh0pQ/xjCgBffAH33w/ffhtvSQyjUGIxhdBEM6aQpVEQkRK4ZbPPw01cEyAZ\n+AC4XlX3507svJMwRuHAAahRA5YuhZo14y2NYRQ6zCiEJlaB5geAYkBdVW2mqk1x8xWKArFZhCPR\nKFYMOneGyZPjJoL5jgOYLgIUJl2IiJVMJZpkZxQuAK5T1Z0ZO7z3N3jHCic9e8JHH8VbCsMolKhq\njmXGjBlh1StoJVpk5z7Kci6CiCzRgp6jOSv+/hvq1oV161xmNsMwjAQl6vMURKRyiFKFwpCjOSsq\nVHDDU6dNi7ckhmEYUSc7o1AemB+ifA+Uy6lhEakrIjNEZKmI/Cgit2ZR70URWS4ii0SkWe4/Qhzo\n1StuLqTC5DvOCdNFANNFANNFZGS59pGqJkfY9gHgDlVdKCJlgfki8rmq/pxRQUS6Aseq6nEi0gJ4\nCWgZYb/+07MnPPooHDwIRcNZaNYwDCN/kOM8hah1JDIJ+K+qfhm072Vghqq+523/ArRT1Y2Zzk2c\nmEIGzZrBCy9A27bxlsQwDCMkfuVTiBgRScYtqpd51ldt4I+g7T+BOsDGTPV4ad5LVChZgZpla3JS\n9ZOoVqaaT9KGSYYLyYyCYRgFCN+Nguc6+j/gNlXdFapKpu2QjwTP3/s8xasUZ8e+HWxK20SpuqU4\n7czT6NigI1X/qkpyxWTat28PBHyKKSkp/m3XqkXKM8/AM8+QOnOm//1528H+0lj0l8jbGfsSRZ54\nbi9cuJDbb789YeSJ5/awYcNo2rRpwsgTy+3U1FRGjhwJQHJyMnkhuyGp2ab4UdWt2R332igGfAxM\nVdVhIY6/DKSq6rvedljuI1Vl7c61zF83n89+/4wpy6cgCJc0voTrTr2OYyofk5NokaMKRx8Nn33m\n0nXGiNTU1EM/hsKO6SKA6SKA6SJAtJe5WEU2Q09VtX4OwggwCtiiqndkUacrcLOqdhWRlsAwVT0i\n0JxTTEFVWbppKSMXjmTUolE0O6oZt5xxC90bdo/6bL/DuPlmqFMH7r3Xvz4MwzDySFSNQhSEaQPM\nAhYTMC5DgHoAqvqKV2840BmX5rO/qv4Qoq2wA83/HPyHiT9N5Jmvn6FYkWL8q/2/6HRMJ3+Mw7Rp\n8PDD8M030W/bMAwjQnwzCiJSCTgOKJmxT1Vn5VrCPJKX0Ufpms7EnybycOrDVC5Vmf92+S/NakZ5\nGsT+/VC9usuxcNRR0W07C+zROIDpIoDpIoDpIkDUZzR7jQ7A3fFPAx4FPgMeyYuAsSRJkrio8UUs\nuWEJ/Zv2p/O4zgz6bBC79oeKdeeR4sWhUyf4+OPotWkYhhFHwsmn8CNwOvCNqjYVkROAJ1X1/FgI\n6MkQ8TyFTbs3cdfndzFj1Qxe7f4qnY7tFB3hxo2D8ePhww+j055hGEaU8MV9JCLfq+ppIrIQaKmq\n/4jIT6p6YiTC5oZoTl77csWX9PuwH5c2vpR/n/1vihcpHlmDW7dCcjJs3AilSkVFRsMwjGjgi/sI\n+NOLKUwCPheRj4BVeZAvITi7wdksvH4hy7cu58w3zmT5luWRNVi5spvdPH16dATMgeAx+oUd00UA\n00UA00VkhJOj+TxV3aaqj+CS67yOy8aWb6lSugofXPIB/Zv2p/WbrZm6fGpkDfboEdfEO4ZhGNEi\nW/eRiBQFflTVE2InUkg5fFv76Os/vubC8RdyZ6s7GdRqUN6Gri5bBmefDX/8AX7OizAMw8gFUXcf\nqepBYJmIHB2RZAnMmXXPZO61cxmzeAxXf3Q1+9PykHr6+OOhdGlYsCD6AhqGYcSQcGIKlYGlIjJd\nRCZ7pUDlo6xXoR5zrp7D1r1b6flOT3bv3537Rrp3j8nQVPOXBjBdBDBdBDBdREY4RuEBoDvwGPBs\nUClQlClehokXT6RWuVqcPfpstuzZkrsGLK5gGEYBIJwhqUNV9e5M+55W1Xt8lezw/mKWT0FVueeL\ne5iyfArTrpxG7fK1wzvxwAGoUQN+/BFq1fJXSMMwjDDwa0hqxxD7uuamk/yEiDC041D6nNKHlFEp\nrN2xNrxne+OiAAAgAElEQVQTixVzs5unTPFXQMMwDB/J0iiIyA0isgQ4XkSWBJVVuEXuCjT3trmX\nAc0H0H5Ue9btXBfeSTFwIZm/NIDpIoDpIoDpIjKyS7LzNjAVeAq4h0AynJ2qmkuHe/7k7tZ3k5ae\nRodRHZjRdwY1y9XM/oQuXWDgQNi712Y3G4aRLwknptAKWKqqO7zt8kAjVc2cWtM34p2j+fFZj/P2\nkreZ3X82VUpXyb5ySgoMHuxGIxmGYcQRv2IKLwHBS4vuBl7OTSf5nQfaPkCPhj3o9na3nFdZtVFI\nhmHkY8IxCqhqetD7NKCIbxIlKE+d8xQnVjuR3uN7Zz/BLWO+gk9PNuYvDWC6CGC6CGC6iIxwjMJK\nEblVRIqJSHERuQ1Y4bdgiYaI8GqPVylVtBR9J/UlPWAnD+f446FMGZvdbBhGviScmEIN4EWgvbfr\nS+A2Vf3LZ9mCZYhrTCGYvQf20mlsJ1rWacnQjkNDV7rzTihf3qXqNAzDiBMJlaM5miSSUQDYsmcL\nrd5oxV1n3sWAUwccWSE11QWbv/8+5rIZhmFk4Fc6zuNF5EsRWeptnyIiD+RVyIJAldJVmHL5FB6c\n8SCf//75kRVat4YVK2BdmPMbcoH5SwOYLgKYLgKYLiIjnJjCa8AQICO6ugS4zDeJ8gnHVTmOCRdN\n4Ir3r2DpX0sPP1isGHTubLmbDcPId+QmHecCVW3m7Vuoqk1jIiGJ5z4KZsyiMTw681HmDZhHpVKV\nAgfeeQfeftuGpxqGETf8mqewSUSODerkQmB9boUrqPRp0oceDXtw+fuXk5aeFjjQuTPMnAl79sRP\nOMMwjFwSjlG4GXgFOEFE1gF3ADf4KlU+Y2jHofxz8B8emvFQYGelStC8edRzN5u/NIDpIoDpIoDp\nIjLCydH8u6qeDVQFjlfV1qq6ynfJ8hHFihRj/IXjGbtkLBN/mhg4YLObDcPIZ4QTU6gKPAy0ARSY\nDTwWy0XxEjmmEMz8dfPpPK4zqX1TaVy9Mfz6K7RvD3/+abmbDcOIOX7FFN4F/gIuAC4ENgHv5V68\ngs+ptU7luXOf47z3zmP7P9uhYUMoWxZ++CHeohmGYYRFOEbhKFX9l6quVNUVqvo4UMNvwfIrfZr0\noeuxXek7qS+qGnUXkvlLA5guApguApguIiMcozBNRC4TkSSvXAJMC6dxEXlTRDZ6yXpCHU8Rkb9F\nZIFXCsSkuGfOfYYNuzYwbO4wiysYhpGvCCemsAsoDWSsAJeEWz4bQFW1fDbnnoVbdnu0qp4c4ngK\nMEhVe+YgQ76IKQSzavsqWrzegskXfcAZzbrDkiVQO8x8z4ZhGFHAl5iCqpZV1SRVLeqVJFUt55Us\nDYJ37mxgW05y50bg/EJyxWRe6f4Kl0y6gv0dO1juZsMw8gXZ5WhOFpGKQdsdRORFERkkIsWj1L8C\nZ4rIIhH5REROjFK7CcF5J5xHz4Y9+W+N1WiUXEjmLw1gughgughguoiM7HI0jwfOA7aLSFNgAvAE\n0BQYAVwbhf5/AOqq6h4R6QJMAhqGqtivXz+Sk5MBqFixIk2bNiUlJQUI/AgScXtox6G0+Lgxp3y+\niI579kDp0gklX37eziBR5Inn9sKFCxNKnnhuL1y4MKHkieV2amoqI0eOBDh0vcwtWcYURGSxqp7i\nvf8PkK6qd4tIErAoVIwgi3aSgcnh1BeRlcCpqro10/58F1MIZsW2Faw77QRqPPgUx/UbFG9xDMMo\nJEQ7phDc0NnAdDg8NWekiEgNETerS0TOwBmprTmclu9oUKkBZXtfxvzXHs05x7NhGEYcyc4ozBCR\nCSLyIlARzyiISC1gXziNi8g7wNfA8SLyh4hcLSLXi8j1XpULgSUishAYBlya1w+S6DQd8ACdfz7A\nHZ/cFlE7mV0nhRnTRQDTRQDTRWRkF1O4HbgEOApoo6oZ+RRqAPeH07iqZpt3QVX/B/wvnLbyPccd\nR7lqddj01WdMbDiR3if2jrdEhmEYR2DpOGPJXXfx58FtnFp7Mj9c9wO1y9u8BcMw/MOvtY+MaNG9\nO3VmLeDm02+m76S+pEcvPGMYhhEVzCjEktatYdUq7mtwFf8c/Ifnv3k+102YvzSA6SKA6SKA6SIy\nsjUKIlJURMbFSpgCT9Gi0LkzRT/5lLEXjOXpOU+zcMPCeEtlGIZxiHDWPvoKOFtVwxpx5AcFJqYA\n8O67MHYsfPwxYxeP5amvnuL7676nZNGS8ZbMMIwCRl5iCuEYhTHACcBHQEbCYVXV5/IkZR4oUEZh\n+3aoVw82bEBLleLCCRdybKVjebrj0/GWzDCMAoZfgebfgSle3bJeKZd78QwAKlaE006DL75ARHi5\n28uMWTyGOWvmhHW6+UsDmC4CmC4CmC4iI7t5CgCo6iMAIlJGVXfnUN0Ih4wcCz17Uq1MNUZ0G0Hf\nSX1ZOHAhZYuXjbd0hmEUYsJxH50JvA6UU9W6ItIEuF5Vb4yFgJ4MBcd9BLB8ObRr53I3J7mHtb6T\n+lKmWBlGdBsRZ+EMwygo+OU+GgZ0BjYDqOoioF3uxTMOcdxxUL78YbmbX+j8Ah//+jHTfg8rqZ1h\nGIYvhDVPQVXXZNp10AdZCheZ0nRWLFmRN3u9ybUfXcv2f7ZneZr5SwOYLgKYLgKYLiIjHKOwRkRa\nA4hIcREZDPzsr1iFgBC5m89pcA49Gvbg1qm3xkkowzAKO+HEFKoBLwDn4JbTngbcqqpb/BfvkAwF\nK6YAcPAg1KgBixZBnTqHdu/ev5umrzRl6DlDOb/R+XEU0DCM/I5f8xRKquo/EUkWIQXSKABceSW0\naQMDBx62++s/vqb3+N4sGriI6mWqx0k4wzDyO34FmpeKyNci8pSIdBORCnmUz8hMCBcSwJl1z+Sq\nU67ixik3ktkYmr80gOkigOkigOkiMnI0Cqp6DHAZsAToDiz2kuIYkdKpE8yeDbuPnP7xaPtH+Xnz\nz7y39L04CGYYRmElHPdRHaCtV5oCW4HZqvqk/+IdkqFguo8AOnSA22+Hnj2PODRv7Ty6v9OdRQMX\ncVTZo+IgnGEY+Rm/3EdrgNuAT4FWqto1lgahwJOFCwng9NqnM6D5AAZ+PPAIN5JhGIYfhGMUmgFj\ncC6kr0VktIhc669YhYgePeDjjyE9dMKdB9s+yIptKxi3xK1gbv7SAKaLAKaLAKaLyAgnprAIGAW8\nBcwAUoCH/BWrEHHssW6RvPnzQx4uUbQEI88byaDPBrFu57oYC2cYRmEjnJjC90BJ4GtgFi6esDoG\nsgXLUHBjCgB33w0lS8Jjj2VZ5ZHUR5i3bh4fX/YxIrlyERqGUUjxa55CdVX9KyLJIqTAG4XZs+HW\nW2HBgiyrHEg7wBmvn8GtZ9xK/2b9YyicYRj5Fb8CzftF5HkRme+VZ22uQpRp1Qr++MOVLChWpBij\nzhvF7a/czh9/Z12vMGG+4wCmiwCmi8gIxyi8CewALgIuBnbi4gtGtChaFLp0cQHnbDilxilc2OhC\nrp18rY1GMgzDF8JxHy1S1SY57fOTAu8+AnjvPRg9GqZMybbawfSDtHy9Jdefej0DTh0QI+EMw8iP\n+OU+2isiZwV10oZArmYjWnTu7GILO3dmW61oUlFGnTeKIdOHsHp7TOP9hmEUAsIxCgOB/4nIahFZ\nDQz39hnRpEIFtzheDk8KqampNK7emMGtBnP1R1eTrqHnNxQGzHccwHQRwHQRGdkaBRFpBhwLXAqc\nDJyiqk29uQtGtOndGyZODKvq4DMHs+fAHl7+/mWfhTIMozCRZUxBRB4CrgTmAy2BJ1X11Vw1LvIm\n0A34S1VPzqLOi0AXnEuqn6oeMS6zUMQUADZvhmOOgfXroXTpHKsv27yMNm+14dtrv6VBpQYxENAw\njPxEtGMKlwJNVfUy4DTgujzI9BYuv3NIRKQrcKyqHue1/1Ie+ig4VK0Kp58On34aVvXjqx7PfW3u\no/+H/Qu1G8kwjOiRnVHYp6p7ALwsa2Hlcw5GVWcD27Kp0hO3hAaq+i1QUURq5LafAkUOLqTM/tLb\nWtxGWnoaw78b7rNgiYf5jgOYLgKYLiKjaDbHGojI5Cy2VVWPXOs599QGgmdi/QnUATZmrrh5sxvO\nX6SIe814n5RrU5XgnH8+DBkC+/ZBiRI5Vi+SVIS3er1Fqzda0eXYLhxX5bgYCGkYRkElO6PQK9P2\ns0Hvo+ngz+zvCtl27dr9EEkmPR3S0yui2pT09BRKloTixVMpVQqqVEmhTBk4cCCV0qWhYcMUqlSB\n7dtTKV8eWrVy26tXp1K1KnTvnoJI4M4iJSUFiPP2UUeRWrcuPPccKffdd8TxlJSUI85fu2Qtl5W9\njP4f9mdmv5nMnjU7cT6PbcdsO4NEkSde2xn7EkWeWG6npqYycuRIAJKTk8kLOU5eixQRSQYmhwo0\ni8jLQKqqvutt/wK0U9WNmeqFDDSrwt69LnHZrl3uNaPs2AFbt8KWLUe+btwI69a5m/GaNaFWrUA5\n+mioXz9Qypf3Qys58MILsHAhvBX+xPF0TafDqA70aNiDO8+800fhDMPIL/iyIF6k5GAUugI3q2pX\nEWkJDFPVliHq+TL6aPduN9Bn/XpnJP78E1avhpUrYcUKWLXKLV5av74bFHTCCdCokXs9/ngoVSrq\nIjn++AOaNoUNG6BYscMOBd8BZWbFthW0eL0Fs/vP5oSqJ/gkXOKQnS4KG6aLAKaLAHkxCtm5jyJG\nRN4B2gFVReQP4GGgGICqvqKqn4hIVxH5DdgNxHT5zzJlXDqDY48NfVwV/vrLGYnff4dffoH/+z/4\n+We3XatWwFA0agSnnAInnxwFY1G3Lhx3HEyf7vI4h0mDSg14LOUx+k7qy5yr51A0ydev1zCMAojv\nTwrRIBHnKRw86J4mfv7ZlZ9+gkWL4Ndf3VNFs2aHl4oVc9nB88/DkiXw5pu5Oi1d0zl3zLl0bNCR\ne9rck8tODcMoSETVfZRp5JFyeEA4WqOPwiIRjUJW7NsHP/7oQgILFriyeLGbgnDaaW6V7FatnKEo\nWTKbhv78E5o0cX6tMEYhBbN6+2pOe+00Uvu6JTEMwyicRHvy2rNeWQHsBV4FXgN2efuMEJQoAaee\nCtdcA8OHw5w5sH27m4/Wq5dzO910E1SpAi1bwh13uAVS16xx7qpD1KkDjRvDtGmHtZ95pEkojq54\nNE90eIK+k/pyIO1AdD9gAhGOLgoLposApovIyNIoqGqqqqYCbVT1ElWdrKofeTOcz8rqPONIihRx\ngekrr4T//Q9++MHFKp5+Go46Ct55x01krlsXrrgCXnsNli8HveRSePfdPPV5bfNrqVq6KkPnDI3y\npzEMoyATTj6Fn4Huqvq7t90AmKKqjWIgX4YM+cZ9lFdUXYxi5kxITYUZM6DSgb/4ZmtD3ntuHWd1\nKs2xx0Ju0jP/ueNPmr/SnM/7fE6To2KW/sIwjATBrxzNnXGuo5XermTgOlX9LC9C5oXCYBQyo+pG\nPZXocS7vV72OoSsuJD0dzj4bzj0XOnaEGmEsCDJy4Uhe+PYFvr32W4oXKe6/4IZhJAy+JNlR1U+B\nhsCtXmkYS4NQWBGBBg2g9qBLuKXau6xZA7NmQdWqqbz/vnNHNWsG997rRq7u2xe6nb5N+lK7XG2e\nmP1EbD9ADDDfcQDTRQDTRWTkaBREpAxwF26S2SKgnoh0910yw3H++fD558iunRxzDPTsCe+/D5s2\nuUB28eJuqaRq1aBbN7dv1arA6SLCqz1eZcS8Efyw/oe4fQzDMPIH4biPxuNyKlylqo09I/G15WiO\nIT16wKWXuih0FmzdCl9+CZ984pK31ajhTuvRA844A95ZOpahc4Yyb8A8ShTN3RBXwzDyJ37FFOar\n6qkiskBVm3n7FplRiCHjxrnyySdhVU9Lg+++g8mTXfnrL+jSVfn5lAto16gxQzs/7rPAhmEkAr7E\nFIB9InJo4QYROQbIwoNt+MJ558E338DGjWH5S4sUcRPknnjCTYqeOxdObS6U/OJl/jP9dVr1nseI\nEW7Np/yM+Y4DmC4CmC4iIxyj8AjwKVBHRN4GpgO2fkIsKVPGzXx75508nV6/PtxyC8ycUoM3LnqB\nP07vy1dz/6FxY2jTxq2osXp1lGU2DCNfEtbaRyJSFZenGWCuqm72Vaoj+y/c7iNwAYO77nIz3yJA\nVbn4/y6mfsX6/KvtUL780gWuP/wQkpNd4rfevd16fIZh5G/8iilMB55V1SlB+15V1bzkbM4TZhRw\ngYLkZJg6FU46KaKmNu3eRNNXmjL2/LG0r98ecAv8zZrlVoH94AM3mql3b7jwQrfahmEY+Q+/Ygr1\ngXtE5OGgfafnSjIjcooUgSuuIPXf/464qWplqvFWr7e4atJVbNmzBXDpTTt0gBEjYO1a9/r339C5\ns1sS/Ikn3LpNiYT5jgOYLgKYLiIjHKOwHegA1BCRySKS20WgjWjRpw98/rl7aoiQc485l4tPvJgB\nkweQ+SksKcnFGp57zsUaMgzFmWdCixYuBrF2bcQiGIaRgITjPgoeitoPuBOopKp1/BfvkAzmPsrg\ntNPgqafgnHMibmrfwX20fKMlN552IwNOHZBj/YMH3ezpd9+FSZPcE8Sllzo3U7VqEYtjGEaU8Sum\nMFBVXw7aPhW4SVWvzpuYuceMQhAvvADz58Po0VFp7udNP9N2ZNtcp/Dct88tB/7OOy7M0aoVXHaZ\nm4Adl7zWhmEcQVRjCiKS8deeICKVMwpuYby7IpDTiIDUevXcjLQdO6LSXqNqjfhX+39x+cTL2Xcw\n/OknJUq4UbLvvutcSf36uVFMdeu6p4cpU+CAz6kczHccwHQRwHQRGdnFFDIGxc8PUeb5LJeRFZUq\nQfv2ec6zEIrrT72eehXqcf/0+/N0ftmyzhB8+KFb/rttW3j8cZcn6NZbYd68TAmEDMNIWCxHc35k\n6lR46CF3tY0Sm/dspvkrzRnRbQTdG0ZnvcPffoOxY2HMGChWzMXJr7wSjj46Ks0bhpED0c7R3Dy7\nE1U1ZktumlHIRFqaW1f7ww+hadOoNTtnzRwuGH8B8wbMo16FelFrV9Wt0jFmDEyY4OY99Onj5kBU\ntLFshuEb0TYKqUCWV2JVbZ8r6SLAjEKA1NRUUlJS4NFH3Up3//tfVNsfOmcok36ZxMx+MylWpFhU\n2wYXoJ461RmIL76ATp2cgejc2T1N5IZDujBMF0GYLgJENdCsqimq2j6rErm4RkRcfbWLK+zZE9Vm\nB585mEqlKuU5vpATJUq49f0mTnSZ5c4+242wrVsX7rzTLeBnGEb8CHfto5OBRkDJjH2qGp0xkWFg\nTwpZ0K0bXHSRG/oTRfyIL+TEr7/CqFFupG316u4jXXYZVK0ak+4No0Di1zyFR4B2QGNgCtAF+EpV\nL8yjnLnGjEIWTJoEzzwDc+ZEvWm/4gs5kZYGM2bAyJHw8cfuSaJfv7y5lwyjsOPX2kcXAucA61W1\nP9AEsPBgnDhsDHa3bs4Hs3Rp1PtpXa81d7a6k4snXJyr+QuRUqSIm6w9dqxbYqNz56zdSzYePYDp\nIoDpIjLCMQp7VTUNOCgiFYC/gLr+imWERbFicO21bnEiHxh85mBqlqvJrVNv9aX9nKhQAQYMcA9C\ns2ZByZLQtatb6WP4cLdgn2EY0SUc99EI4H7gEty6R7uBBd5TQ0ww91E2rFvnxniuXOnL+M4d+3bQ\n4vUWDGo5KKz1kfwmLc2tvzRypJs1fc45zr3UqZO5lwwjM77EFDJ1UB8op6qLw6zfGRgGFAFeV9Wn\nMx1PAT4EVni7JqrqEQmEzSjkwBVXwKmnwqBBvjS/bPMy2rzVho8v+5gWdVr40kde+PtvGD/eGYjf\nf3cT4/r1izjdhGEUGPyKKSAiTUSkF9AMOE5ELgjjnCLAcKAzcCJwmYg0ClF1pqo284pllM+BkP7S\nW2+F//43Kktqh+L4qsfzeo/XuXDChWzYtcGXPvLCggWph7mXSpSALl0C7qUtW+ItYewwP3oA00Vk\n5GgUROQt4A3gAqAH0N17zYkzgN9UdZWqHgDeBXqF6iJ8cY2QtGgBNWq44To+0euEXvRv2p+LJ1zM\ngTSfV7rLAw0bwr//DatWwZNPuhnUxxzjZk1Pnuz/4nyGUVAIJ6bwE9A4t/4bEbkQ6KSqA7ztK4EW\nqnpLUJ12wPvAn8BaYLCq/hSiLXMf5cTbb8PrrzuHu0+kazo93ulB/Yr1Gd51uG/9RIsM99KoUbB8\nOVx+OfTtG9WVQQwjofHLfTQP5/7JLeFcxX8A6qpqE+C/wKQ89GOAuyVetszXKcFJksS4C8bx5cov\nGf5d4huFjNFLX33lXEzlyrnZ1E2awLPPwobE8YQZRsJQNIw6bwHfiMgGIGPAuqrqKTmct5bDh67W\nxT0RHEJVdwa9nyoiI0SksqpuzdxYv379SE5OBqBixYo0bdr00PomGT7EwrAd7C894vgNN8CwYaT2\n6eNb/xVLVuTBeg9y81s306BSA7oe1zVu+sisk5zqP/ZYCo88Ai++mMqnn8Ljj6dw5plw2mmptG4N\n554bW/mjub1w4UJuv/32hJEnntvDhg0r1NeHkSNHAhy6XuYaVc22AL8DPYEGQHJGCeO8ot65yUBx\nYCHQKFOdGgRcWGcAq7JoSw3HjBkzsj64ebNqpUqqa9b4LsecNXO02tBqumjDIt/7yopsdREGu3ap\njh6tevbZqpUrq15/verXX6ump0dHvlgSqS4KEqaLAN61M8frfHAJJ6bwjaq2yovBEZEuBIakvqGq\nT4rI9d5V/hURuQm4ATgI7AEGqercEO1oTnIaHoMHu2TKw4b53tW7P77LPV/cw9xr5lKzXE3f+/OT\nNWvcLOpRo9z2VVe51VvrxW6FD8OIOn6tffQSUAGYDOz3dquqvp8nKfOAGYVcsH69m8z2yy9uZTmf\neXzW43y47ENm9ptJ6WKlfe/Pb1Th22+dcRg/3gWl+/aFCy5wGeYMIz/hV6C5JC6WcC5uOGq4Q1IN\nHwj2p4ekZk245JKYPCkA3H/W/ZxY7USueP8KDqYfjEmfGeSoizwgAi1bwksvudzTAwc641CnjjMO\n06dDenrUu40YP3SRXzFdREa2RsGbgLZVVftnLjGSz8gLd98Nr7wC27f73pWI8Gr3V9m9fzcDPx5I\nQXqiK1nSrUz+8cfuwatJE7jjDqhfHx54wO0zjIJGOO6juUCrePpvzH2UB/r2dTO67vcnWU5mdu3f\nxTmjz6Ht0W0Z2nFoTPqMFwsXurwP777rHswuvxwuvRRq1463ZIZxOH7FFF4GagETcMFgsJhC4vPz\nz5CSAr/95gbox4Cte7fS9q229DmlD/e0uScmfcaTtDRITYVx4+CDD6BZM7cMVe/elnvaSAz8jCls\nBTpgMYW4E7a/tFEjOPdcN0srRlQuVZlpfabxyvxXeHX+q773F2/fcZEiLgnQm2+6+P5NN8Enn8DR\nR7vA9MSJ8M8/sZEl3rpIJEwXkZHj5DVV7RcDOQw/+Ne/3OqpAwfCUUfFpMta5Woxrc802o1sR8WS\nFbm48cUx6TfelCzpnhB693ahnIkTXZqLAQPcLOorrnAPbkWKxFtSw8iecNxHdYEXgTberlnAbar6\nZ9ZnRRdzH0XAoEGwbx/8738x7XbRhkWcO/ZcXur2Ehc0ynFR3QLL2rXw3nvOxbR+PVx8sSstW0JS\nWGsUG0be8Sum8AUwDhjr7boCuEJVO+ZJyjxgRiECNm+GE05wy4Yed1xMu/5h/Q90GdeFEV1H0PvE\n3jHtOxH55Rc3vHX8ePc0cdFFzkC0aGEGwvAHv2IK1VT1LVU94JWRgP+zooyQ5NpfWrWqe1qI0Sik\nYJrXbM6nV3zKTZ/cxMSfJka9/fzmOz7hBHjoIfjxR5g2zQWjr7nGxSAGDYK5c93kubyQ33ThJ6aL\nyAjHKGwRkT4iUkREinpLYG/2WzAjitx+u1sm9NtvY951s5rN+PRKZxjGLR4X8/4TlRNPhIcfhp9+\ngk8/dQPE+vd3BuLOO91XZQ/HRjwIx32UjFvWuqW362vgFlVd46tkh8tg7qNIGT0aXnjBXW2KhrM4\nbnT58a8f6Ty2M/e2uZebz7g55v3nB1Rh6dKAi2nvXjj/fFdat47L12bkc3zP0RwvzChEAVU3frJX\nL7jttriIsHLbSjqO6chVTa7iwbYPImJJ97JC1bmZPvgAJk2CP/6AHj2cgTjnHChVKt4SGvmBqBoF\nEXk4i3My1rJ+LHfi5R0zCgFSU1MPraOea5Ytc7ecixbFbfrthl0b6DS2E2fVO4thnYdRNCnvt78R\n6SKfsWoVfPihMxILFkDHjm6oa7duUKlS4dJFTpguAkQ70Lwb2JWpKHANUPCnqxZEjj8ebrwxbk8K\nAEeVPYpZ/WaxbMsyer3bi537duZ8kkFysvvaUlPh99+dMZgwwcUgOnZ08yJ+/z3eUhoFgbDcRyJS\nHrgVZxDGA8+q6l8+yxbcvz0pRIt//oGTT3arqHbrFjcxDqQd4MYpNzJv3Tw+vvxj6pSvEzdZ8jO7\nd8Nnn7lF+z75xI1o6tbNlTZtoHjxeEtoxJOoxxREpApwB25uwmhgmKpui0jKPGBGIcp8+aUb6rJo\nkfM9xAlV5Zmvn+HFb19kwkUTaFU3T7mcDI/0dPjhB5gyxZVff3Xxh27doEuXmE1qNxKIqLqPROQ/\nwHfATuAUVX04HgbBOJyojMHOCDjfdFPkbUWAiHB367t5ufvL9Hq3Fy/NeylXS2/bePQAqampJCXB\naae5oa7ffedCSN27uyeIRo3g9NPdkt8zZ8L+/Tm3mV+x30VkZBdTGATUBh4A1onIzqCyIzbiGb7x\n9NMuYjl2bM51faZ7w+58fc3XjPh+BP0/7M+eA3tyPsnIkRo1oF8/F3v46y945hn3NDF4sJvT2K2b\n8yIuXWpzIowANiS1MLNokfMvzJrlbiXjzO79uxk4ZSDz183n7d5v0/SopvEWqcCyZYvLIvf5567s\n3wlefu8AABUJSURBVO9+Ch07uldzNRUMbJ6CkXveeAOee85NakuQJMRjF4/ljs/uYEibIdzW8jaS\nxBYG8hNVN3Ipw0DMmAG1akHbttCunXutVSveUhp5wYxCISDqY7BV4brrYNMmeP/9hFmZbcW2FVzx\n/hWULlaa13q8RoNKDY6oY+PRA0RTFwcPuofImTPdQ+Ts2VC5csBAtGvnhsImKva7CODXgnhGQUbE\nLau9fTvce2+8pTlEg0oNmN1/Np2P6cwZr53Bc988R1p6mr+dHjjg1rdevhwWL3Yr1H3zDXz/vcvB\nuWyZM54HD/orR5wpWtSl4Rg0yM2m3rTJzYNo2hQmT3YB66OPhquucqnAFy1yWeiMgoE9KRiOLVvc\nwPYBA9zVIIH4betvDJg8gF37dzG8y3Ba1GmR98b27nUX+J9+chf5Zctg5UrYsAG2bXO3xOXKQenS\nbi0JEWcEDhyAPXtcne3bXZ06daBePXeFbNgQTjrJlRo13HkFFFWntpkznc2cOxfWrXMjn1q2dKVF\nC6cGI76Y+8iIjDVr4Kyz4MEH4dpr4y3NYaRrOmMWjWHI9CF0qN+Bp85+itrlw1iqY/16F1FNTYV5\n89zg/UaN3MX7+ONdadDAOc2rVg0vNVp6ujMOf/4Jq1e7smyZW6xoyRJnEE4+GZo3d1fIVq2cASnA\nbN3qhsHOnevKt9+6KTAZRuK006BJEyhTJt6SFi7MKBQCfPeXLl/u5jHcdx/ccIN//eSRXft38eTs\nJ3l5/st0KdKFF298kcqlKgcq7N3roqVffOEm6a1f7/Jgtm/vrk4nn+xyZ/qFKmzc6IzD998HbqWL\nF3fGoU0b6NABGjeOavwm0fzo6enO/mYYifnz3dDXevWcrWzWLFCqVIlu34mmi3hiRqEQEJMf/IoV\nblxiv37uqSEBXSGrt6/mphE3MbfoXG4/aQB3bDueMh9NdckJmjeHTp2ccWvePP6JkVWdTr/5xkVu\nZ8xwLqj27V3p0MG5nyLQsx+/i7T0NLb9s40te7awZe8WtuzZwta9W9m1fxe7D+xm9/7dh73uS9tH\nWnoa6Zp+qKSp2y4iRSgqxflnd3F2bS/B9q3F2bqpOJs3FqdUUjnqVC9Hg9rlObZuOU6oX57j6pWj\nSpmKVC1dlaqlq1KiaIm46iK/YkbBiB4bNri1mk84wUUTS5eOt0SHs2sXTJnCrnEjSfryS+bWVv7q\n0paWNz9F8nGnx1u6nFmzxhmH6dNdSUtzxiHDSNSv71vXqsqmPZtYuW0l63auY+3Otazdsda9eu83\n7dnE3//8TYWSFahSqgpVSlehSqkqVC5VmXLFy1G6WGnKFC9DmWJlDr2WKFqCIlKEIklFSJKkw0q6\nprPv4D72p+0/rOw98A9/bNzFirU7+XPTDv7avpNte3fwj+6gRPntUGYz+4tupkRSKaqWqsZRFapS\nvUw1qpWpRrXS1ahZtia1ytWidvna1C5Xm5rlalKyqI9PgvkMMwpGdNm9GwYOdIHZ995z6cLiyY4d\nbuW3CROca6h1a5fouFcv/iy2l+HfDef1H17nrKPP4ppm19D52M4RLc0dMzImCkyf7gzFjBnOxZXx\nJNG+PdStm8smlc17NrN863KWb1nOb1t/c++3uvdFk4pSv2L9QxfT2uVqB96Xr031MtWpVLISRZLi\n85S1e7fLaf3TT/DjUmXxsr9ZunITG3du5qhjNlHt6M2UrfEXRSut50DJtexOWsemfWtZv3M95UuU\np3b52s5YeJ+tTvk6h0rdCnWpUKJCocjnkXBGQUQ6A8OAIsDrqvp0iDovAl2APUA/VV0Qoo4ZBY+Y\nPxqruglu993n8kQOGhTbpTe3b3fjIP/v/1yw+KyznCHo2ZPURYuO0MXu/bsZt2Qcby18i1XbV9Hn\n/9s79+C6ivuOf75Xkm293y/LT9mynRpMMS5QOw8MjLGJIQ/SAqEkQKdJ2gKlTacQkhZ1MoFMS2bc\ntFMopBAyFAiF0DiFwZBgQ8BAsbEN+FXbsvBbtiTbetjWw/fXP3avdK1K8rUsXcliPzM7Z/ecPWd/\n93fP2d++d87NXD/7euaWzz13MgEzlyPGahKrVrnlT2M1iYULoawMM6PheAPbGraxfMVy0qalnWIE\nIopQVVjF9ILpVBVUOefDp/TDnEMcOwabN7uur+3bjI+3nmD/thYO1rRgzS1UjW8ikvkK86bnkpFf\nT2pGPdHUBjqsgab2Bg63NlB/opG2FMjKKSInp5j8vDLy88opyK+gsHQKpRUzKK+YSX5W8bnzzvTB\niDIKklKArcCVwF7gPeBGM9scF+dq4HYzu1rSJcA/mdmlvTwrGAXPsmXLuOuuu5KfcG2t24th+3b4\n4Q/dDi9DNdFtzx5nCJYvd3tLL1zoDME110Buble00+liS/0Wnlj/BM9tfo72k+18ceYXWTpjKQsm\nLSAjbYQ1h/VDQ8sh9r69grZfryDrrfeYuGEn9ZkRVlecZM2kVA6eN5XNu8aw9JZrqSp0mf/0gukU\nZgxyD26yiEbdEOl9+9xAgb6O+/e7fpjsbMjK4mRGFifSsvnRoQZuzJtF87FUWo5HaD0eoeVYCkQi\njMuMkJ1+kqxxLaSPaSJNTaRaCyknW4m0Hyft2AnSW9vIOhHlWBq0ZKRyInMs7TmZdBbmQUkpaeUV\nZFRMIWdSFdkTpqHSUigpccOtRpgRGYhRGMq69cXAdjOrBZD0DPAFYHNcnGuBJwDM7F1JeZJKzaxu\nCOU6pzly5MjwJDxliltuc8UK+O533XKbd94JN9zgSrFnQ3u7W/P55ZedIdi1y631fNttrtkqJ6fX\n206ni1lFs3jgyge4/4r72XRoEy9seYHq16vZcGAD88bPY+GUhVxccTEXjb+IksySs/sNZ8HJ6En2\nNO2h5nBNtztSw47GHWxv3E7Uoi6zv7iK6Yv/kBm505hTH+HarQe58f2P0PPvUr19I9U7MmHOIZjT\nAud3umG3cUZ02IlGob6+74w+5j9wwGX048dDeXn3cdYsV0CIhcvKTtmXNAXIBKLV1VRVV5+StJkb\nNrt7t3ObdrvXLBbeuxfqGlzXTmkplJdGqSjeT3HB/5Kbvo3MlBoyOmrJaN3D2No1pK9/hawjzRS0\ndFJ+PJWS5ijjOozW3Azai/KJlhSTWj6eMWUTGDdhMmnlE9yDYy7R4c/DwFAahQpgd1x4D9Bz1lFv\ncSYAwSiMVK66ChYtcs0aDz8Md9/thlkuXgzz57uMaGw/I0U6OlxtIzam/6233AD36dNd88iyZe45\ng7hLvSRml8xmdslsvvfZ79Hc1sybu95kVe0qHnz7QdbuW0vuuFzOKzmPGQUzmFE4g8r8yq429rxx\neQNqRjAzjncep66ljv0t+9nfvP+U497mvdQcrmH30d0UZxZTmV/pXF4lS6uWUplfyfSC6RRlFPWe\n/qI4/z33uNXsPvzQzcd47DHXIF9Q4OZhTJ3a7SZPdiXboiJXuj2bzKmz0/X1HDzoXF3dqf66uu4M\nv67OGfj4jH78eJfZX355d7isbNCHDUtu6GthoZuZ3RetrTGxI9TVVVBXV8GBAwvZXwd1jW529+HD\nzjU2QodayZmwh4xZe8gu2Enx2K0URmrI7dxF7vH15G18nfx3WylvFeWtqZQdE8UtJ8k60Ulr5jha\n83NoL8qns7gQKykiUl5KSmkZYwqKGVtQQnphKemFZSgvzxn4oRxO7RlKo5Boe0/Ptz20E/VDbW3t\ncIvgvrArrnDuyBFXe3j1VXjkEdfYW1rqMpvMTDdqqaPDNQc0NrrjxInOeMye7fooFiwYUG1joLrI\nHpvNkqolLKlaAriJcTWHa9h8aDNbG7ay7sA6nt/8PPua97GveR8nOk+QMzaHrDFZZI/NJmtMFplp\nmV33xlxntJOW9haa2pq6XEQRSrNKKc8qpzy73B2zypk/cT4V2RVU5lcyOW/yWY+YqT1woPs/iRGN\numa/nTudq611tbGPP3Yl9vp69//l5TnjkZ7uDHrMjRnjis6dnd2zujs6oLnZGYKjR91OftnZzsiU\nlLj/PnacM8cdx4/vzuz7KzAMEmfzjWRmOhta+f+X2uqVtrZMDh+eSWPjzC5DEZv03trqBsltbzbW\ntLbQeKKew+31NHU0cKLzAOPaPia3Yw8FnXspbmykqG4rJWvXUtxxjJyTbeR2tJPb3klum5HTJnLb\nXNbYNCZCW2qEtpQI7ZEI7SkptKWk0J4SoSMlQlTCFMEG2JQ1lH0KlwLVZrbYh78DROM7myU9DKwy\ns2d8eAvwuZ7NR5KCoQgEAoEBMJL6FNYAVZKmAPuA64Ebe8RZDtwOPOONyJHe+hPO9EcFAoFAYGAM\nmVEws05JtwMrcH1A/25mmyV901//NzN7SdLVkrYDrcCtQyVPIBAIBE7POTF5LRAIBALJYUTtpyBp\nsaQtkrZJuruPOD/21zdIujDZMiaL0+lC0k1eBx9IekvSnOGQc6hJ5J3w8X5PUqekLydTvmSS4Pdx\nmaR1kj6StCrJIiaNBL6PIkkvS1rvdXHLMIiZFCQ9JqlO0of9xEk83zSzEeFwTUzbgSlAGrAe+FSP\nOFcDL3n/JcA7wy33MOri94Fc7188GnWRiB7i4r0G/Ddw3XDLPYzvRB6wEZjgw0XDLfcw6qIaeCCm\nB6ABSB1u2YdIH58BLgQ+7OP6GeWbI6mm0DXZzcw6gNhkt3hOmewG5EkajVt5nFYXZva2mR31wXdx\n8ztGG4m8EwB3AM8Bh5IpXJJJRBdfBZ43sz0AZlafZBmTRSK62A/EZj3mAA1mNiq3zDOz3wKH+4ly\nRvnmSDIKvU1k67mLSl+T3UYbieginj8GXhpSiYaH0+pBUgUuQ3jInxqtnWSJvBNVQIGklZLWSLo5\nadIll0R08SgwW9I+YAPwF0mSbSRyRvnmSFpCMkx26ybh3yRpIXAbsGDoxBk2EtHDMuAeMzO5ab+j\ndfhyIrpIA+YCVwAZwNuS3jGzbUMqWfJJRBf3AuvN7DJJ04BXJV1gZs1DLNtIJeF8cyQZhb1A/PrA\nE3EWrb84E/y50UYiusB3Lj8KLDaz/qqP5yqJ6OEi3DwXcG3HSyR1mNny5IiYNBLRxW6g3syOA8cl\nvQFcAIw2o5CILuYDPwAwsx2SdgIzcfOnPmmcUb45kpqPuia7SRqDm+zW88NeDnwNumZM9zrZbRRw\nWl1ImgT8AvgjM9s+DDImg9PqwcwqzWyqmU3F9Sv86Sg0CJDY9/FL4NOSUiRl4DoVNyVZzmSQiC62\n4FZoxrefzwRqkirlyOGM8s0RU1OwMNmti0R0AfwdkA885EvJHWZ28XDJPBQkqIdPBAl+H1skvQx8\nAESBR81s1BmFBN+L+4HHJW3AFX7/xswah03oIUTS08DngCJJu4H7cE2JA8o3w+S1QCAQCHQxkpqP\nAoFAIDDMBKMQCAQCgS6CUQgEAoFAF8EoBAKBQKCLYBQCgUAg0EUwCoFAIBDoIhiFwBkjKSrpwbjw\nX0u6L8kyrJI01/tflJRzuntO87zLJP2qj/NH/XLU6yS9cjbpBAIjnWAUAgOhHfiSpEIfPqPJLpJS\nBkGGrjTN7PNm1jQIz+yL183sQu8WxV+QNGImgCYTSfnDLUNgaAhGITAQOoBHgL/secEvPfCa38zj\n15Im+vM/lfSwpHeAf5D0uKSHJL0taYcvkT8haZOkx+Oe96+S3vMbpVT3JoykWkmFkr4VV6LfKek1\nf32RpNWS1kp6VlKmP79Y0mZJa4Ev9fN7T1lMTNItkpZL+g1uobUMv9HJu5Lel3Stj5cu6Rn/m34h\n6Z242k1L3PO+EvvNkoolPSfpf7yb789X+zRWen3dEXf/17y+13sdZkmqiRksSTk+PBjGOMZ7kp6U\ntFB+Sn1glDDcG0QEd+45oBnIBnbi1qr/NnCfv/Yr4GbvvxV4wft/iluDJTaL/nHgKe+/FmgCZuMy\n4DXABf5avj+mACuB8314JTDX+3cCBXHypQJvAJ/HLZL3OpDur90N/C0wDtgFTPPnfw4s7+W3XgYc\nAdZ5dy/wddzic3k+zv3ATd6fB2zFrVL6V8BP/PnzccY0JnNzXBrXAY97/1PAAu+fBGzy/mrgTdzy\nBYVAvdfJbJ9eQSx9f3wM+IL3fwP4x0F+ByJev8/j1lf6DlA+3O9mcGfvQk0hMCDMLUH8M+DOHpcu\nxWVsAE8Cn47dAvyn+RzFE2vD/wg4YGYb/fWNuF21AK73Jfn3cRngpxIQ78fAb8zsRS/P7wCrJa3D\nLQw2CbdA2k4z2xEna18l3t9ad/PR/f7cq2Z2xPsXAff4568Exvo0PuOfi5l9iFuT6HRcCfyLf9Yv\ngWxfszHgRTPrMLMG4CBQBlwOPGt+XZ84mX5C9xo3t+CM8KBhZlEze9HMrgM+C0wDdkmaN5jpBJLP\nJ7I9NDBoLMNl1j0znL4y12M9wu3+GAXa4s5HgRRJU3G1kHlmdtQ3sYzrTyC5vXgnmtmfxZ1+1cy+\n2iPeBQnK3BetPcJfth77FvhWlb6eG28c03vIcYmZtcdH9s+KP3cS9/1ab2mY2WrflHcZkGI9Fsbz\nTUlr/f3LcbWg+3z4T4A/x23xuBf4Fm6rUwMeMrNH/DNygRtwNac2nBHqc5/gwLlBqCkEBoy5PRye\nxe38FsvkVuMyCoCbcM04A0G4JqpWoElu+eMl/d4gXYQzIvE7jr0DLJDbaAVJmZKqcEsrT5FU6ePd\neIayxbOCuBqTujdGfwO3RSaSzgPmxN1TJ2mWpAiuPyOmv1d6PKun8YrHcHtT/4GkAh+/IO76z4D/\nwDUlnXqj2Ukz+11f+7nPzP7L++ea2Vozu82Hl5rZnri4MYPwJM6oTMY1Fy40syfNrK1nWoFzi2AU\nAgMhvpT7I1y7fYw7gFvlliy+iVO3Qew5Ssn6u2ZmH+BKsFtwmdub/cgjXOk2H1jpO5sfMbdP8S3A\n016m1cBMn3l9A3jRN0/V9SJD7Nm9yR1/7vtAmqQPJH0E/L0//xCQJWmTP7c27p57cKXvt4B9cefv\nBOb5juONwDd7pHuqIK4G8APgdUnrgQfjLj/l9fF0L7/rbPk5MMPM7o1rgguMAsLS2YFAkpC0Evi2\nmb2fpPS+AlxjZl9PRnqB0UHoUwgERiGS/hm4Crh6uGUJnFuEmkIgEAgEugh9CoFAIBDoIhiFQCAQ\nCHQRjEIgEAgEughGIRAIBAJdBKMQCAQCgS6CUQgEAoFAF/8HMjkGhUDeVWoAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from __future__ import division\n", "from numpy import arange,ones,sinc\n", "from math import log\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,xlabel,ylabel,title,show,legend,grid\n", "\n", "rb = 2 # the bit rate\n", "Eb = 1 # the energy of the bit\n", "f = arange(0,1.0/100+rb,1./100)\n", "Tb = 1/rb# #Bit duration\n", "M = [2,4,8]#\n", "SB_PSK=ones([len(M),len(f)])\n", "for j in range(0,len(M)):\n", " for i in range(0,len(f)):\n", " SB_PSK[j,i]=2*Eb*(sinc(f[i]*Tb*log(M[j],2))**2)*log(M[j],2)\n", " \n", "plot([ff*Tb for ff in f],[xx/(2*Eb) for xx in SB_PSK[0,:]])\n", "plot([ff*Tb for ff in f],[xx/(2*Eb) for xx in SB_PSK[1,:]])\n", "plot([ff*Tb for ff in f],[xx/(2*Eb) for xx in SB_PSK[2,:]])\n", "xlabel('Normalized Frequency ---->')\n", "ylabel('Normalized Power Spectral Density--->')\n", "title('Power Spectra of M-ary signals for M =2,4,8')\n", "legend(['M=2','M=4','M=8'])\n", "grid()\n", "show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example7.41 page 340" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\ngg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\nSUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from numpy import ones,convolve as convol\n", "%matplotlib inline\n", "from matplotlib.pyplot import plot,xlabel,ylabel,title,show\n", "#Matched Filter Output\n", "T =4#\n", "a =2#\n", "t = range(0,T+1)\n", "g = [2*xx for xx in ones([1,T+1])][0]\n", "h =[abs(x) for x in (convol(g,g))]\n", "for i in range(0,len(h)):\n", " if(h[i]<0.01):\n", " h[i]=0\n", " \n", "h = [hh-T for hh in h]\n", "t1 = range(0,len(h))\n", "plot(t,g)\n", "xlabel('t--->')\n", "ylabel('g(t)---->')\n", "title('Rectangular pulse duration T = 4, a =2')\n", "show()\n", "plot(t1,h)\n", "xlabel('t--->')\n", "ylabel('Matched Filter output')\n", "title('Output of filter matched to rectangular pulse g(t)')\n", "show()\n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.9" } }, "nbformat": 4, "nbformat_minor": 0 }