{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Diffusion estimation of Poisson parameter $\\lambda$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This example demonstrates diffusion estimation of Poisson parameter $\\lambda$ using the Bayesian methodology. The prior is the gamma distribution $\\mathcal{G}(1,1)$. The network consists of 14 nodes $i=0,\\ldots,13$, the weights are uniform. We will compare no-cooperation scenario with full diffusion (i) merging posterior pdfs and (ii) posterior moments." ] }, { "cell_type": "code", "collapsed": false, "input": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "# Number of observations\n", "nr_observations = 200 \n", "\n", "# Number of repetitions of the experiment\n", "nr_repetitions = 200\n", "\n", "# Estimated value of parameter lambda\n", "lam = 5\n", "\n", "# Adjacency matrix (+ ones on diagonal)\n", "adjacency_matrix = np.array([\n", " [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],\n", " [1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0],\n", " [1, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0],\n", " [1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0],\n", " [1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0],\n", " [1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0],\n", " [0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1],\n", " [0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1],\n", " [0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0],\n", " [0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1],\n", " [0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 0],\n", " [0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1],\n", " [0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1],\n", " [0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1],\n", "])\n", "\n", "# Number of nodes = number of rows of adjacency matrix\n", "nr_nodes = adjacency_matrix.shape[0]\n", "\n", "# Use uniform weights\n", "weights_matrix = adjacency_matrix.astype(float) / adjacency_matrix.sum(axis=1)\n", "weights_matrix = weights_matrix.T" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let us see the network topology:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import networkx as nx\n", "G = nx.from_numpy_matrix(weights_matrix)\n", "nx.draw(G, node_color='yellow')\n", "# plt.savefig('example-topo2.pdf')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n67YRGhpqXENFpMVS+Ircgx49epCVlU3Hjm/x7LMdGTOmE6tXO7YT7d8PX38Nkyd70rt3B3JzTezd\ne5CIiIgH3WwRaSE05ytyn6xWK2lpaaSnW7h8uYCqqir8/PyIjByL2fwGjz322INuooi0MApfERER\ng2nYWURExGAKXxEREYMpfEVERAym8BURETGYwldERMRgCl8RERGDKXxFREQMpvAVERExmMJXRETE\nYApfERERgyl8RUREDKbwFRERMZjCV0RExGAKXxEREYMpfEVERAym8BURETGYwldERMRgCl8RERGD\nKXxFREQMpvAVERExmMJXRETEYApfERERgyl8RUREDKbwFRERMZjCV0RExGAKXxEREYMpfEVERAym\n8BURETGYwldERMRgCl8RERGDKXxFREQMpvAVERExmMJXRETEYApfERERgyl8RUREDKbwFRERMZjC\nV0RExGAKXxEREYMpfEVERAym8BURETGYwldERMRgCl8RERGDKXxFREQMpvAVERExmMJXRETEYApf\nERERgyl8RUREDKbwFRERMZjCV0RExGAKXxEREYMpfEVERAym8BURETHY/wA5lRXnStQW1AAAAABJ\nRU5ErkJggg==\n", "text": [ "" ] } ], "prompt_number": 2 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We generate 200 data from Poisson(5)" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# This seed reproduces figures in the paper\n", "np.random.seed(11111)\n", "\n", "# Generate observations as samples from Po(lambda)\n", "all_observations = np.random.poisson(lam, (nr_repetitions, nr_observations, nr_nodes))" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's estimate..." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Prepare logs for all experiments, all nodes and all times\n", "all_mean_std_log = np.zeros((nr_repetitions, nr_nodes, nr_observations))\n", "all_mean_diff_pdf_log = np.zeros((nr_repetitions, nr_nodes, nr_observations))\n", "all_mean_diff_mom_log = np.zeros((nr_repetitions, nr_nodes, nr_observations))\n", "\n", "# Estimation begins here\n", "for repetition in range(nr_repetitions):\n", "\n", " # Select observations for particular experiment\n", " observations = all_observations[repetition]\n", "\n", " # Store statistics and logs per experiment in variable 'network'\n", " network = []\n", " for i in range(nr_nodes):\n", " network.append({'alpha_std': 1., 'beta_std': 1., # no cooperation\n", " 'alpha_diff_pdf': 1., 'beta_diff_pdf': 1., # Diff: combine pdfs\n", " 'alpha_diff_mom': 1., 'beta_diff_mom': 1., # Diff: combine moments\n", " 'mean_std_log': [], 'mean_diff_pdf_log': [], # Related logs per experiment\n", " 'mean_diff_mom_log': []})\n", "\n", "\n", " for t in range(nr_observations):\n", " # ADAPT STEP\n", " for i in range(len(network)):\n", " # No cooperation\n", " network[i]['alpha_std'] += observations[t][i]\n", " network[i]['beta_std'] += 1.\n", "\n", " # Diff: combine pdfs\n", " network[i]['alpha_diff_pdf'] += np.dot(observations[t], weights_matrix[i])\n", " network[i]['beta_diff_pdf'] += 1.\n", "\n", " # Diff: combine moments\n", " network[i]['alpha_diff_mom'] += np.dot(observations[t], weights_matrix[i])\n", " network[i]['beta_diff_mom'] += 1.\n", "\n", " # COMBINE STEP \n", " # Diff: combine pdfs\n", " alpha_diff_pdfs = [network[i]['alpha_diff_pdf'] for i in range(nr_nodes)]\n", " beta_diff_pdfs = [network[i]['beta_diff_pdf'] for i in range(nr_nodes)]\n", " for i in range(nr_nodes):\n", " network[i]['alpha_diff_pdf'] = np.dot(alpha_diff_pdfs, weights_matrix[i])\n", " network[i]['beta_diff_pdf'] = np.dot(beta_diff_pdfs, weights_matrix[i])\n", "\n", " # ESTIMATION (and COMBINE for Diff: combine moments)\n", " alpha_diff_moms = np.array([network[i]['alpha_diff_mom'] for i in range(nr_nodes)])\n", " beta_diff_moms = np.array([network[i]['beta_diff_mom'] for i in range(nr_nodes)])\n", " means_diff_moms = alpha_diff_moms / beta_diff_moms\n", " for i in range(nr_nodes):\n", " # Estimates without cooperation\n", " mean_std = network[i]['alpha_std'] / network[i]['beta_std']\n", "\n", " # Estimates Diff: combine pdf\n", " mean_diff_pdf = network[i]['alpha_diff_pdf'] / network[i]['beta_diff_pdf']\n", "\n", " # Estimates Diff: combine moments\n", " mean_diff_mom = np.dot(means_diff_moms, weights_matrix[i])\n", "\n", " # Insert results into logs\n", " all_mean_std_log[repetition, i, t] = mean_std\n", " all_mean_diff_pdf_log[repetition, i, t] = mean_diff_pdf\n", " all_mean_diff_mom_log[repetition, i, t] = mean_diff_mom" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 4 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Estimation done, now we compute error statistics:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# STATISTICS MSD vs. node number\n", "est_err_std2 = (all_mean_std_log - lam) ** 2\n", "est_err_diff_pdf2 = (all_mean_diff_pdf_log - lam) ** 2\n", "est_err_diff_mom2 = (all_mean_diff_mom_log - lam) ** 2\n", "\n", "msd_per_repetition_std = est_err_std2.mean(axis=2)\n", "msd_per_repetition_diff_pdf = est_err_diff_pdf2.mean(axis=2)\n", "msd_per_repetition_diff_mom = est_err_diff_mom2.mean(axis=2)\n", "\n", "mean_msd_per_node_std = msd_per_repetition_std.mean(axis=0)\n", "mean_msd_per_node_diff_pdf = msd_per_repetition_diff_pdf.mean(axis=0)\n", "mean_msd_per_node_diff_mom = msd_per_repetition_diff_mom.mean(axis=0)\n", "\n", "mean_msd_per_network_std = mean_msd_per_node_std.mean()\n", "mean_msd_per_network_diff_pdf = mean_msd_per_node_diff_pdf.mean()\n", "mean_msd_per_network_diff_mom = mean_msd_per_node_diff_mom.mean()\n", "\n", "\n", "# STATISTICS MSD vs. time\n", "msd_per_network_std = est_err_std2.mean(axis=1)\n", "msd_per_network_diff_pdf = est_err_diff_pdf2.mean(axis=1)\n", "msd_per_network_diff_mom = est_err_diff_mom2.mean(axis=1)\n", "\n", "msd_per_network_all_repetitions_std = msd_per_network_std.mean(axis=0)\n", "msd_per_network_all_repetitions_diff_pdf = msd_per_network_diff_pdf.mean(axis=0)\n", "msd_per_network_all_repetitions_diff_mom = msd_per_network_diff_mom.mean(axis=0)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 5 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Below, we plot per-node MSD for all three types of estimation." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# PLOTTING\n", "from matplotlib import rcParams\n", "rcParams.update({'font.size': 8, 'legend.fontsize': 7, 'legend.linewidth': 1})\n", "xaxis = np.arange(1,15)\n", "fig = plt.figure(1, figsize=(3.3, 1.5))\n", "plt.hold(True)\n", "plt.xlim((1, nr_nodes))\n", "plt.ylim(-1.3, -.4) # preset for paper\n", "plt.plot(xaxis, np.log10(mean_msd_per_node_std), label='No cooperation')\n", "plt.plot(xaxis, np.log10(mean_msd_per_node_diff_pdf), label='Diff: Combine posterior pdfs')\n", "plt.plot(xaxis, np.log10(mean_msd_per_node_diff_mom), label='Diff: Combine point estimates')\n", "plt.grid(True)\n", "plt.legend(loc=1, borderaxespad=0.)\n", "plt.xlabel('Node number')\n", "plt.ylabel('log(MSD)')\n", "fig.savefig('nodes-msd.eps', bbox_inches='tight')\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 6 }, { "cell_type": "markdown", "metadata": {}, "source": [ "...and evolution of the estimates in time:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "fig = plt.figure(2, figsize=(3.3, 1.5))\n", "plt.hold(True)\n", "plt.plot(np.log10(msd_per_network_all_repetitions_std), label='No cooperation')\n", "plt.plot(np.log10(msd_per_network_all_repetitions_diff_pdf), label='Diff: Combine posterior pdfs')\n", "plt.plot(np.log10(msd_per_network_all_repetitions_diff_mom), label='Diff: Combine point estimates')\n", "plt.xlabel('Time')\n", "plt.ylabel('log(MSD)')\n", "plt.legend(loc=1, borderaxespad=0.)\n", "plt.grid(True)\n", "fig.savefig('time-msd.eps', bbox_inches='tight')\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "iVBORw0KGgoAAAANSUhEUgAAAPEAAACBCAYAAAAR6VzIAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJztnXd4VGXah++ZJEAaaYQkJEgwSIcEDM30UESa4AICokSa\n1CywLsWAH20FF1GkSFGK6IqCisqiKxASQErowYQeSIAUSEjvZd7vj8MMDKkMSSaD576uc505/XfO\nnOe87XmfVyGEEMjIyBgsSn0LkJGReTpkI5aRMXBkI5aRMXBkI5aRMXBkI5aRMXBkI5aRMXBq3YgT\nExPp3LkzpqamqFQqrW0JCQkEBgbi5eVFaGhobUuTkTFIFLXdTlxQUEBeXh5DhgwhNDQUpfLhdyQ4\nOJiRI0fSsWNHBgwYQFhYWG1Kk5ExSIxr+4L169enfv36ZW6LioqiR48eAFhaWpKVlYWlpWVtypOR\nMTjqVJm4pKRE89vKyor09HQ9qpGRMQxqPSWuiEez1pmZmdjY2Ghtd3Z2JiEhobZl1QrGxsYUFxfr\nW4aMHqlXrx4FBQVPfJxejfjx4njHjh05ceIEHTp0IDMzEwsLC63tCQkJpY4xBBYuXMjChQsr3Eeh\nUBjkvclUHwqFQqfjaj07XVxcTK9evYiMjKRv376cPHmS4OBgAGbPnk1ISAi9e/cmJCSktqXJyBgk\ntV47/TQYamoVFBTEtm3bKtzHUO9NpvrQ9R2oUxVbzyoeHh56vf62bdvw9PRECMHly5dZtGiR3rSU\n9ZIuXLiQ6OhoQMqNyTwZdapi61llxowZOh33JEWkij7gCoWCDh068PXXX9O1a1cAioqKmDhxItbW\n1tja2rJgwQLN/r///jvfffcdNjY2zJkzh927d/Pnn3+SmZnJqlWruHr1KuvXrwdgypQp5OXlsXLl\nSnr27Mm9e/f44IMPWL9+PVevXiUjI4MlS5YQEhJC8+bN6dChA3l5eZw9e5bs7GzWrVvH0aNHSUlJ\nYeTIkdy8eROAjRs3al1z9erVZGdnY2xsTOvWrQkKCnri5/msIqfEdRghqj5VxtChQ/nvf/9Lfn4+\nAPv27cPf359PPvmEuLg4srKyNPtu2rSJLVu2sHLlSho3bsy+fftYu3Yt48eP55tvvmHt2rV8/vnn\nbNq0iXXr1qFQKOjevTszZswgNzeXO3fu8NVXX2FjY4ONjQ1nz55FoVAwceJEXnvtNUCqiY2Pj+fc\nuXN4e3szZcoUvLy8NBoeveaOHTtQKBS8/vrrLF++nH379lXvgzZw9GLEM2fOxNfXt1QKtXDhQjw8\nPAgICOCTTz4p89iiotpQWL2Eh4frWwIA06dP59NPPwXKztaqeZJaUvV51M1jRQ/+IGdnZ95//31W\nrlzJwIEDAantH2Dnzp0sW7aMrl27kpubi1KprFCPepuZmVml2v+K1LoRnz17lpycHA4fPkxhYSGn\nT5/WbFMoFKxcuZKwsDBmzpxZ5vHXrtWW0mcLhUKBt7c36enpKBQK+vTpw6FDh3j33Xd57rnntDzj\nxo8fz8SJE5kzZw7Jycn06tWLv//972zevJlRo0YxdepUJk2axOTJk5k6dSoAJ0+eZO7cuZiZmeHi\n4kLXrl0JDg5m+vTpnDt3TkuLk5MTK1as4OTJkygUCrp06cKKFSs4fPiw5gPy6DVHjhypuQeZ0tR6\n7fT69euxt7dn6NCh/Pjjj8THxzN9+nQAFi1axJ49e7CxseGjjz7C3d1dW6xCwXffCYYPr03FtYMh\n104fOnSI6OhopkyZom8pBo3B1E6np6drvvqPu1YGBwdz+vRp1q9frzHsx4mKzKwVnTJVx8/PTzZg\nPVLrtdNWVlZkZkqGmJGRgbW1tWab2s2yRYsW5R7/9dahKE1eAsDa2hoPDw/8/f2Bh2XPurasXlfZ\n/jIyOiFqmbNnz4p33nlHCCHElClTxKlTpzTbMjMzhRBCJCcnix49epQ6FhADXJeLoqLa0VpdhIWF\nVbqPHv4KmTqGru9ArWenO3XqRIMGDfD19cXY2BhPT0+N2+U///lPvL29GTRoEB9++GGZx7exiubU\nqdpU/PToO6Xdtm0bAwcOZMaMGYwbN46bN2+SmJjIqlWrABg4cCD//ve/+fbbbxk7dixnz54tdY7I\nyEiCgoKYNm0aEydO1NRCV5Vhw4ZpLf/f//2fprmrpti2bRt79+6tcB+VSsXGjRu5cePGU18vPDyc\ndevWERMTw6BBg/j++++f+pxVQS/OHuqXR83q1asB2LBhQ6XHtjWL4cABeNDtWKYKKBQKJk+eTL9+\n/UhNTWXmzJksXryY+Ph49u7dy40bNxg+fDgbN26kXbt25OTksGzZMubNm6c5x5IlS9ixYwcmJiao\nVCqUSiXBwcGYmJhQXFzMp59+yqBBg/D09CQyMpLevXtz6dIlnJ2dmT17NleuXGHBggXExMTwxRdf\ncOvWLUpKSggKCqJly5bEx8czePBgAgMDee+99ygsLKSkpIRVq1Zperep901NTeWVV17Bw8ODGTNm\nYGVlRceOHXnttdeYMmUKzz//PAMGDODo0aPk5uYCUrv03r17yc/P529/+xvx8fGEhobi6elJeno6\neXl5nDhxopQTy4oVK/Dx8WH27NkolUpiY2MZPXo0w4cP58qVK6xdu5ZVq1Zx69YtMjIyePHFF9mw\nYQMqlQoHBwdGjhzJc889h5eXF4MGDaqR/9fgPLZcC27z4Tcwf/6TeTTpk/DwcJ1SY8WiJ2iv/b+K\nazXFg1pPW1tbrVS0f//+bNu2jTfffJMbN24wbNgw2rZti4+Pj9bxRkZGmJiYAFKX0aioKGxtbVm4\ncCGLFy8mOjoalUrF/Pnz+e9//0tcXByffvqpJgVu1KgRS5Ys4fvvv+eXX355eI8KBRMmTMDU1JR3\n332XkpIS4uLiaNu2LXFxccTHx9O0aVPNvkFBQTg5OTFy5Eh8fHwYP348fn5+DB8+nJ49e2JsbMzg\nwYPp3r07MTEx2Nvb069fPwYOHEiXLl0AqTnMxcWFfv36MXLkSI0b6tq1a9myZQtCCCZMmMC4cePw\n8vJi7ty5WnrbtGlDcHAwq1atIiIigiNHjvDjjz+yc+dOkpOTGTBgAK6urnTq1Inc3FxeeeWVUs+z\nOjE4I34u/i7FlnDyJHTrpm81NUtlhqkL9+/fp169euVfs5wmjpKSEoqKijQpLzxst1U3jZiamqJU\nKqlfvz4NGzassiZzc3OUSiUFBQWoVCq8vLzKbZ0oKiqipKSkVHw2ADc3N1avXs0PP/zAvn37aN68\nueZ+hBCEhIRgZGQEwJdffllK46P3rv6tdlB5dP3jji3q5/n4c7WwsOCrr77i999/Z9q0aZpUvrrR\nixHPnDmTM2fO0LlzZ62sdUJCAqNHj6agoIDFixfTs2fPUsc6phYSNDGFrVsbGYwR67tMDFJRZf/+\n/WRlZWlSnvKcJ65evcquXbu0uoPOnz+fCRMmYGlpSVFREWvWrCElJYXZs2eTn59P+/bttc7xqIED\npKSkMH/+fGJjY9m0aRO///57qesqFApefvllJk2axOzZs0lPT2fNmjVa4Zw2bdrEnTt3eOedd/Dw\n8GDmzJn8+OOPBAYGEhUVxebNm8nPz6d37960aNGCf/3rXxQXFxMcHMz48eOxtbXF09OzzPufNm0a\nkyZNAmDq1KnldtC/du0aISEhJCUl8e677+Ll5cXy5cuJiYmhU6dOmv2SkpL44IMPMDIyKvV8qpXq\nqVerOmfOnBETJkwQQggxefJkrdrp6dOni2PHjons7Gzh7+9f6lhARDc1FUe2bRE2NkLk5taa7BpH\nD3+FwREUFCRycnL0qiE2Nlb885//rJFz6/oO1HrtdEREBH369AEk17rjx49rtqkD5Zmbm2sC5T1O\ncktnuBpG166wc2etyX4q6orvtKGzdetWjf+0vmjWrBn//ve/9arhceqUx1ZVAuWVdHJHGRHBnDmw\nZIlhdoiQkalO6pTHVmWB8gDWXEzH7cg1zMP/DyMjG2bM8GDdOn+g7nho6bosI6MT1Zytr5SKPLaC\ng4PF8ePHKywTq1QqcaORkYgN+0lcvSqEnZ0QN2/WlvqaQw9/hUwdQ9d3oE55bFUlUJ5CoeBGt1bE\n7/yCF16Af/wDJk+uWsd4faHvMvFfyWOrvPA+j4YAqipBQUHk5ORUeN6KGDp06BMfowt1ymPL2dm5\nSmMw1R84mIafSG1u774LP/wAixZBJVFhDY9qis/zV/HYmjhxoia8T4cOHXj77bc5c+YMmzdv5ujR\noyQnJzNq1ChNBJFz586xbds2SkpK6NGjB87OzmzZsgVnZ2emTp1KZGQky5Yt0wob5Ofnh5+fH1eu\nXMHf359Tp07Rq1cvhgwZwr/+9S8yMjJwd3enR48eXLp0icWLF/OPf/yDxYsXa+7po48+YsyYMdXm\nyWWQ4XnaD5/Gc7Fp5KckYWICe/fCjh3w8cf6VlY2Opd5qzE+j6jAY6tt27a8+eab+Pv7M2XKFHx8\nfLQMGMr32Fq5ciV2dnZaHltjxoyhqKiITz/9lFMPHN3VHluvvfZamR5bH374IT/88AP79+8nLi4O\nGxsbcnJyiI+P19o3KCiIFStW8Pnnn/Ptt98yfvx41q5dy4EDB7T0Nm3alFmzZtGjRw/Onz+Pt7c3\nU6dO1QoB9PHHH2NnZ4e9vT3nzp3jzp07NG/enHHjxuHi4oKHhwfvvfce7dq10xzToEEDFi9ejJeX\nF02bNmXLli38/PPPKBQKSkpKsLW1ZefOnbRr1462bdvy/vvvc/jwYa17SkpK0nhy9e/fv9L/rjLK\nTYlzc3PZsWMHe/fu5f79+4D0AvTv35833ngDU1PTp764rljbOHH8BWvMdqzFffpSHBzgwAHw8QFL\nS5gwQW/S6jzPssfW4+cEMDExoaCgoMwQQEVFRQQHB2tVrl67do1Vq1YxdOjQMo9R31f9+vU1rSwq\nlYpff/1V8zEMDAzUPBeQnunj91SdnlzlGvHMmTMZNGgQ27dv14zEkJ2dTXh4ODNmzGDjxo1PdeGn\nJf1lP0y+3wnTlwLQtCns3w8BAaBUwrhxepWnha6+09XJX8Fjq6J7UocAGjt2LL6+vgDMmTOH6dOn\n4+DggKurK05OTpw4cYKMjAxcXFzo0aMHs2fPZtKkSWWe99F1nTp1Yu7cuSQmJmo+MA4ODrz33nuE\nhISwe/duzT0tXry4ej25qq1qrQpkZmaKAQMGCC8vL7F9+/ZS2/38/ISfn5/w9/cXBw8eLLX9UbnX\nLx8X6Q0UoiQ7S2ufq1eFaNpUiNWrhVCpqv8edEHuT1w91AWPrZpE13eg3Bhb2dnZLFiwgPPnz2uy\nSy+++CKLFi3SZFWelI8//hgnJydef/11AgICOHDggKacBWjWqZ3UH+fxGETH21pi/c4M2vx9idZ+\nN27AkCHg5gYbN4K9vU5yaxVDjrElUz1Ue4ytOXPm0KlTJ8LCwjh48CBhYWG4u7szZ84cnUVGRETQ\nu3dvlEol7u7uXL58WVuMUkmvXr0YOXIkaWlplZ4v+e0R1FuzrlTFzvPPS72cXngB3N2lii8ZmWeV\ncsvEV65cYd26dVrr3nzzTb788kudL5aenq6pGCjLrfL777/HxsaGHTt2sHTpUlauXFnqHEFBQbi6\nugLQwOx5spLTsfjtexz6DdPygKpfH155JZwmTWDaNH/27IFBg8IxM6ubMbZsbGzkkKx/cYyNdWzx\nLS+fHRAQ8ETrHyUpKUn4+/trTSNGjBDDhg0T9+7dE0JI3ll//vlnmcfn5eWJPn36lFpfltyd03uK\n6O5uFerJyBBi7FghHB2FWLNGiIKCSm+hWqlKmbguIuuuXSowxwopt0zcqlUrGjduXGp9cnJyqWxw\nVfnkk09wcnJi2LBhBAYGEhoaqvX1yczMpGHDhhw4cIDdu3eXygmUVWaITbiEWat2mIcfw/zF7hVe\n/9w5mDdPCkC/dCkMHw7lFL9lZGodXcvEtRo8Pisri1GjRpGamso777zDW2+9RWRkJGfOnGHs2LF0\n6dIFU1NTTE1N2bZtG05OTtpiy7nJ7eM88bqQhtvJ61XycgoLg5AQSE6GmTPhjTfgsQAOMjK1js6V\nm+Ul0Z9//rlIS0sTQghx7NgxERAQIHr27KnXrEp5cm/euyouOhiJ5PUrq3wulUqII0eE+NvfhLCy\nEmLMGCEOH66ZZilDzd7JumuXCsyx4uPK2/Bo3Of27duLmzdvivT0dOHt7a3ThaqDim5y89ZgkWZp\nIlQJCU983rt3hfjoIyHatBHC1VWIGTOECA8X1Rbf2lBfKll37aKrEZfbxKRuq42JicHGxgZXV1es\nrKy0+vzWJca89TF7ulkT+/cxT3xs48ZSb6joaPj5Z7C1hVmzwNERgoLgp5/gQeRTndC3t5auyLoN\ng3It0tPTk7feeotRo0YxefJkgCq13VbEb7/9Rps2bcoN33nw4EFeeuklAgMDtRzfq4KR0gin5esw\n23eQgv/p1jCsUEDHjrBgAZw5A2fPwosvwtq1kkG/+ips2SKVpWVk6gwVJdNRUVEiJiZGs5yamiqu\nX7+uU5IvhBBpaWmioKCg3Cx5QECAyM7OFhEREWLq1KmltlciV6hUKrHkfX+RamcutStVI6mpQnz9\ntRDDhkllaG9vIZYuFeLAgcovZajZO1l37VLZ+10e5bYuL1q0qMzaMoVCwfvvv6/TB+PR3iKPk5ub\ni6mpKebm5nTt2lUnzzCFQsG0ebv57bcm9Jw5kcabv9VJZ1nY2Ei12G+8AQUFcPAghIZKfZjPnYPn\nnpPiYKunDh1A17Z7GZknodzXbNeuXZibmzNkyBC6d+9e495Ej3pzgXbQvCfBuoE1xcs/oPD1uRRt\n2oDJxEnVJVGD5A0mTSAF64uKgogIaVq9Gm7dgk6doGtX6NbNn7g4ydANySnLUMuWhqpbV8o14qio\nKK5evcqPP/7I6tWrcXFx4a233tIE3q6Iu3fvMmLECK11jo6O7Nixo9xjHg2gB5TbCeJRt8vyhjZ9\nIyCYmfN/J/Cff8f8zyh6rVmrtb0m3Cw7dYKMjHBat4atW/3JyIAvvgjn0iX4z3/8CQ6GwsJw2rSB\n/v39eeklyM8Pp0GDuhOoT16u3eVVq1Zx/vx5zfusM5Xlt5OSksT69euFr6+vWLFihU559sepqTLx\no+QW5ooJq3uL+zYNRMmeX3TWWh2EhYUJlUqI2FghvvtOiFmzhOjeXQgzMyE8PCSX0I8/FmLvXiGO\nHxciJkaIkhK9StboNkQMVfeTvN+PUm5KvHLlSiIiInBwcODVV18t5SKpC2fOnGHu3LlERUXRp08f\n9uzZw+XLlzUeW+ogeaampk/V0QLA1MSUtVP+y9TEF/nkzRFYfLcbHgSt1wcKBTRrJk3Dh0vr8vPh\nwgWpFjw6Gn7/HdLSIDER7t+Hli2l7pRubtCihTRv3lwKgCCXt2XUlOt22bx5c5ydncssCx85cqTG\nhZWFLm5p93LuMWtBVzZuTcH8q29hwIAaUle9ZGbC1asQEwPXrz+c37wJ9+5BkyaSQTdvDq6u0uTi\nIhm4szPoMXqSjI4YhO/006LrTSZkJRC8sBtbvkzH4t33UM6Za1g1TI9RUCBVnMXGStPNmxAXB3fu\nwO3bEB8PDRtKBu3iIhm1gwO0bi0tqyc5Na9bVLsRz507lzfffFMr0h9IFV5ff/01y5cv103pU/A0\n0S/uZt9l2ueDWbb2Ms3d/TDasg0qaPKqTmo7xpZKJaXWjxp1UhJcuQIJCdK6u3cl427USHJkadFC\nCqZgYyN9AJycIDY2nIEDpb7ZhkRdiGmmC7q+3+V+i6dPn8769euJiIigsLAQkCIHduvWrdxIhHUZ\nBwsHvp4ezniH0by2+RiDOnlgtHMXPBh4+llCqZQM09ERymtMKCyUUvPUVMnIY2Lg4kXIyJCmhAQp\nlc/KggYNJGO3s5PmTk7aWXdHR8l1tXFjDM7gnwVqNTv922+/MWvWLBo1alRmuVr99VQ7lAQEBGht\nr444VCqhYsb/ZmDy488s352JSf9BUr/Eli2f6rzPKkJI5fP796UpOVmqeFOn8nfuSKn6vXvSNnNz\nyaidnB5+SNRGbm//8GNgZyd1/6yjrvh6ocbKxG+//bbWyU1MTHBzc2P8+PHY2dk90cXS09MxMzOj\nZ8+eZRrxkwbK0xUhBNsjt/PvX0OYd96C1w/ew6RvP8mY27R56vP/VVGppNr1pCRpSkyUpnv3JENP\nSZEMPSVFygHk5EglGrVR29pqzx9f17ix9EF4Vsvy1Z6dVmNpaYm3tzfu7u5cuHCB0NBQXF1dGT58\neJWGXHmUitwu4WGgPEdHRz777LMyR0WsDhQKBWM8xvB6+9fZfHYzHTt9wMKL0Qz188WoZSvo2RMm\nTZKSk2rAUMtoT6pbqXxofI9VpZRJUZFk9PfvS0atTu3Vv+/c0V5Wp/b29pJB29pKk42NNJmZSVn/\nO3fC8fT0x9pa+khYWaH53bDhsxfNpVIjjoyM1IyV1KpVK9asWcOGDRv47LPPql3MkwbKK89jq6rL\nJ/44QTvaceofV1h6eClTjNfQPSuGeWez6dH2U4707AVvvIH/kCE6nf/xgdT07SH0pMvnz5+v0fMf\nPVp6e8OG8Pbb5R9fUgKtWvmTnAwHD4aTlQVNmviTmgqXL4dTWAh5eVJZ/vr1cLKzQaHwJz0dUlLC\nyc0FCwt/rKzA2DgcCwto1kwy+JyccMzNwd1dWr5zR9ru6ystR0dLy336VM/9V5fHVqXZ6fnz53Pu\n3Dnat2/PxYsX8fDwYOHChYSEhJRbQ12Z26WPj0+Fbc35+fm8+uqrpUYJqOnYzPnF+fx59092XdzF\nT398wZaTTrx07DbK5s/D2LEwfrz0uZcxWFQqycDT06UKvEfnVf2tVEqpuqWlVAdgZibN1UWDsooD\n6t82NvBIqHUtarSdOCkpibi4OJo1a4ajo+MTX+RxyjNiXQLl1RRpeWnMC53H7nPf0D/DgflnLWge\nnYAiOBhmzJD+NZm/HEJInnbp6VKFX16eVLbPyZHWlVc0UP9OT5dq8G1sJKO2t5fa8Js2hQ8/rOYY\nW2pu3bolJk+eLHr37i0mT54sbt26pZN/pxBCnD59WvTq1UtYW1uL3r17i/z8fHH+/HmxefNmIYQQ\nnp6ewsfHR/Tp00cklBFmpwpyq53sgmwRdjNM9P26rwic6ySu9ekiVLa2Qrz+uhBbt0oO0ZUE5jJU\nX15Zd/WjUkn9z2NjhTh7Voj//U+I7duF+OyzGoixpSYwMFD88ccfIi8vTxw5cqRKcadrCn0Y8aMc\nv31c+G71Fb5L3cTPsweLtAG9hMrJSQg7OyEGDBDiiy+ESE8vdVxdfqkqQtZdu+j6fleanfb29uaP\nP/7QLHt5eXH06NEnT/KrgbowXpEQgj9u/cGui7vYf2M/tzNu07NBW/6WYk//s9nYnohE0bOn5P7U\nv7803uqzVh0qUyPUWBPTwIEDeeWVV+jYsSPnz59n4MCBOgl8VlAoFPg088GnmRQnLCM/gzOJZzh2\n+xjezv+BHvVYlFvAC5kxtAueRr37adCvn+TX2L49+PpKNSIyMtVEuSnxggULNL8TExOJi4vD1dUV\nR0dHlixZUtYhlbJp0ya2bt0KQHBwMCNHjtTafvDgQebPn0+DBg346quvcHZ21hZbB1Liyriccpmt\n57YSlxHHgRsH8M21p8sFS0bbNsfxeiImZ85JIT+6d5f6JFYhyIK++Ku0b9cVqr12Ojw8vNyQPH5+\nfk98IUBTw11cXEz37t05ffq01vbAwED27NlDdHQ027dvZ+3atdpiDcCIH6VYVczx28dZt2sdt2xu\nEXUviu42HRiX04pudwTNfjyIol49ePnlhwadmSlVgTo66r2nlaEag6HqNqiuiEIIevTowYkTJzTr\ncnNzGTZsGHsfjEMaEBBAWFiY1nGGZsSPk1eUx6G4Q/x67VeO3zlOau59Zpn3ZtA1JS77TqCIjpba\nHh6MNI+7O3h4SHMLC6nTcLt2UK+eXu9DpmaosTJxTbBhwwYGDx6sta66AuXVZUxNTOnboi99W/QF\n4Pjt4/x0+Sd65/9MydgSujkPJzUvlcLiAjrRhO4p9emanIvL3r0ocnOlrkYxMZLnQOPGUgOjo6MU\nLqRTJ8nYmzWTexX8xagRIy7LY8vJyYlvvvmGiIgI/ve///HTTz9pba/OQHl1bVm97vHtBTEFvGLy\nCsunLudc0jl27t1Ju/rt6OzVmZi0GL45GMqMvJOku6ejVCixc7OjrZUvAW3a0jS/Pncj72CdV8ig\n3DQabtrEoVOnIDsb/7ZtoW1bwk1MoEkT/Lt1g+efJzw+HurVeyK3QEN4vlV93nVtudbcLquT+Ph4\nRowYwS+//FJm54ZnrUys5mnLaBn5GaiEipi0GM4mniUhK4G72Xe5m3OXpOwkrqdeR6FQ4OHogYfp\n83TPtqbdPXC5m4vp7SQUWVlSCh4XJ3UAdneXOnn07g0vvFBu2dtQy5aGqtsgysSTJk0iLCyMJk2a\nAFL/4itXrmgC5YWGhrJgwQJNoDwXFxdtsQZqxDWNEII7mXe4cPcCl1IucTH5IpdSLnEl5QologSr\n+la0sW9DZ7sOvFTsRKc7JTQ5eRHlgVDJKfj556X+1C+8IJXHbWykrHrjxlI5vFUrOYteCxiEET8t\nshE/GUII0vPTSc9PJzo5msikSM7fPc/5pPNkFWTR2603HUxccM+xpE2qkiZ38xBGSowzslCoOwFf\nvy6FAHF1hc6dJWN/+WWpiexZ7dirJ2QjrsPUxezd1ftXOXb7GFfvX+Xq/atE3YsiJi0GpUJKce3N\n7DG9Y4p7d3e62HWkY7Y53e6ZYHsrGXbvloxbnYI7OT2saFNPVlZS5157eym7bmlZa6l5XXzeVcGg\naqdl9E9Lu5a0tNMOSVSsKsZYaUx+cT7JOcn8uv9XzFua8+fdP9mYd5Y30/5AZaFiyL+GMPC5EDyy\nzHFMzKJBSrrUY//ChYdhPDIypO4+SUmSERcVSYG51MG3XV2lWD2WltJy/fpS05mFhZSdt7aWU/oq\nUqspcWXQi0XfAAAJ10lEQVQeW+qvZ03G2JLRHSEEidmJfHn+S47dOcbF5IskZCVgpDDC3tweW1Nb\nWjdqjbOlM0qFEot6FjQya0Qjs0Y0NmqIY2ohjVPysE5KlyrZUlKk0B7x8ZKRFxRInX3T0iSnFwsL\nqY+eOrB206YPg3W5uEjR9C0s9P1Yqg2DyE5X5rFVWzG2ZKoPIQRZhVmk5KaQkpvCpeRLJGUnoRIq\nsguzpfV5KZrtCVkJmJmY0aZRG4yVxtiZ2dHcujkmShOMlcY0MmuES0MXHM0ao0pLxS45h+fSSjC+\nHS/F60lOllL727elGncTEylFV0/qyjh1ZH11aE4DiKZvEEaspiyPLYCePXuiUqnKjbFlqEZsqGW0\nmtAthCAuI44rKVdQCRVJ2UnczrxNiaqEIlURKbkp3Mm8Q2J2IvWM6pGWl8btzNu4WrtqUnVHc0ee\nt3medvZteQ4r7HMV2GSXUC89E+7elXQLATduPIzQ96BFhFatpOy7nZ1k7G5uUlT9Jwz6WBMYVJm4\nLI8tqFqMLRnDRqFQ4Grtiqu1a5WPySvKIyYthtS8VO7l3CMpO4mY1BgO3DxAQlaCJpU3NTbFwcKB\nRs0a8eJLL+Jk0Z/WjVrT3sSZVsVWUFIiBddOTJRS9H374No1Kaq+iYlk4C4u2jF31HN1Od3MTJpM\nTbXnZmZS+V4P/u41khJX5rH1wQcf8NNPP5XbwaKiGFtjxowxOI8tebnml4UQ7N2/l/u597FqbcWt\njFscPXyU+Kx4blrf5F7OPVQ3VDS3aU7Hbh2xNbWlMKYQNxs3gl4dw3P59Tn03Xdw/z7+rq6Qk0N4\nVBTk5eHfqBGkpxN+7RoUFODfoAHk5RGenCwtCyHt/2DUPP8HKXt4Tg40bIh/9+7QogXh6emgUuHf\nrx8olaU8thYtWlT3s9OVeWzVpRhbMs8OQgiKVcWohIrzSeeJz4rXZNvPJZ3jdMJpilXFtLJrhWV9\nS4yVxpibmGNnaodKqDCvZ45NAxtsTW2xNbXFsr4lChTUN66PsdKYrIIsXK1daUMjlJevPMzCq4Nr\npaTAn39Kqb6RkZR6t2r1MIreg4BbipCQum/ElXlsdenSBVNTU0xNTdm2bRtOj8V9NlQjlsvEtYsu\nuhOyEohJjSGrMItiVTE5hTmk5KZgpDQipzCHtPw00vLSSM1PJasgC4EgryiPElGCuYk511KvkZGf\noSm725vb08i0kabW3s3Gjc5Onckvzsc+JZd6t+IfRtFLSwNAMWdO3S8Tb9iwodQ6d3d33N3dATh1\n6lRtypGR0dDEsglNLJs81TkSsxK5nXmblNwUknOSpXluMrHpsWw7v40r96/QwLgBBcUFtG7UWjL2\nxvbYudpha2qr83Vljy0ZmVomMSuRG2k3NEZ+P/c+AsE8n3l1Pzv9tMhGLPMso+v7LXdNqQUe7edq\nSMi6DYNaNeLt27fj5+dH9+7d2bJlS6ntBw8e5KWXXiIwMJD4+PjalFajqMc0MjRk3YZBrRrxqFGj\nOHToEMeOHStzQLalS5eyf/9+li9fzrJly2pTWo2Snp6ubwk6Ies2DGrViI0f9EopKCjA/LGxjHJz\nczE1NcXc3JyuXbsSHR1dm9JkZAyWWi8TL168mJYtWzJ27Fit9c9yoLzY2Fh9S9AJWbeBoNPgL5WQ\nlJQk/P39taYRI0ZothcUFAhvb2+RlZWlWZednS369eunWfb39y91Xjc3NwHIkzw9k5Obm5tO9lYj\nzh4ODg6lYkYDFBYWUq9ePUxMTFAqlVrV6ebm5uTl5ZGTk0N0dDTtyhhq/vr16zUhV0bGoKlVj61l\ny5YRHh5OQUEBI0aMwNLSksjISI3bZUhICL1799YEypORkakcg3L2kJGRKY3BOHvMnDkTX19fZsyY\noW8plRIbG4uDgwMBAQH07SuN9rBixQp8fHwYPXo0xcXFelb4kMTERDp37oypqSmqB8PHlKX1P//5\nD15eXgwcOJCsrCx9SgbK1m1lZUVAQACBgYGaZqa6pjsiIgIvLy98fHyYNWsWUA3PW6eSdC1z5swZ\nMWHCBCGEEJMnTxanTp3Ss6KKuXnzphg9erRm+e7du5pKuw8//FDs2rVLX9JKkZ+fL9LS0oS/v78o\nKSkpU2thYaHw8fERJSUl4rvvvhMrVqzQs+rSuoUQwtvbW2ufuqg7KSlJFBQUCCGEeOONN8ShQ4ee\n+nkbREocERFBnz59AOjVqxfHjx/Xs6LKCQsLw9fXl1WrVnHmzBlN17i6pr9+/fpYW1sDIITg9OnT\npbRev36dDh06oFQq64z+R3WruXTpEr6+vsybNw+Aa9eu1TndDg4O1KsnDYhnYmJCdHT0Uz9vgzDi\n9PR0LB8MzG1lZVXnPXKaNGnCtWvXCAsL48CBA5w+fVrTBt6wYcM6rT8jI6OU1kfb8Ouy/uvXr3P4\n8GHS0tLYs2dPmfdSV7hw4QLJyclYW1s/9fM2CCN+dLC1jIyMUl/guka9evUwNTXFyMiIAQMG4Obm\nptGfmZlZZ/UrFAqtZ63WWta6uoha1+DBg4mKiqqzulNTU5k+fTpbtmypludtEEbco0cPQkNDAQgN\nDaVHjx56VlQx2dnZmt9Hjx6lRYsWHDp0CIADBw7UWf1CCDw9PUtpbdmyJVFRUahUqjqpXwhBbm6u\nxsvvjz/+oEWLFnVSd3FxMaNHj+ajjz6icePG1fK8DcKIO3XqRIMGDfD19cXY2BhPT099S6qQI0eO\n4OnpiZeXFy4uLnTt2hVfX198fHy4cOFCmZE+9UVxcTG9evUiMjKSvn37EhsbW0qrsbExEyZMwMfH\nh6+++op33nlH37JL6Y6KiqJr1674+fkRHx/P0KFD66TuXbt2cfr0aWbPnk1AQAA3btx46ucttxPL\nyBg4BpESy8jIlI9sxDIyBo5sxDIyBo5sxDIyBo5sxDIyBo5sxDIyBo5sxH9RMjMzCQgIICAgAGtr\nawICAhg3bpymR5CM4SC3E8vg4+PDkSNH9C1DRkf0Mj6xTN3E39+f0NBQlixZws2bN0lISKB58+a4\nurqyZ88e+vXrx4IFC0hOTmb8+PFkZWXRpk2bUqNXytQucnZaRoN6vGiFQkHnzp3Zv38/cXFxtG/f\nnuPHj/PLL78AsHz5cubNm8fBgwextLTkxIkT+pT9l0dOiWXKpH379oDUrVIdtNDCwgKVSsWlS5eY\nO3cuCoWCnJwcunXrpk+pf3lkI5apFHUKDVKPodatWzN69Gg6d+4MPFsxwg0R2YhltIy0onXq9e+9\n9x4TJ04kIyMDpVLJF198QbNmzWpapkw5yLXTMjIGjlyxJSNj4MhGLCNj4MhGLCNj4MhGLCNj4MhG\nLCNj4MhGLCNj4MhGLCNj4MhGLCNj4Pw/DamdVyu9ty4AAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 7 } ], "metadata": {} } ] }