{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "nbsphinx": "hidden"
   },
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 1;\n",
       "                var nbb_unformatted_code = \"%load_ext nb_black\\nimport os\\n\\nPAPER_ROOT = os.path.expanduser(os.environ.get(\\\"PAPER_ROOT\\\", \\\".\\\"))\";\n",
       "                var nbb_formatted_code = \"%load_ext nb_black\\nimport os\\n\\nPAPER_ROOT = os.path.expanduser(os.environ.get(\\\"PAPER_ROOT\\\", \\\".\\\"))\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "%load_ext nb_black\n",
    "import os\n",
    "\n",
    "PAPER_ROOT = os.path.expanduser(os.environ.get(\"PAPER_ROOT\", \".\"))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Comparison of XSMC and PSMC"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Setup code"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "code_folding": []
   },
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 2;\n",
       "                var nbb_unformatted_code = \"import xsmc\\nimport xsmc.sampler\\nfrom xsmc import Segmentation\\nfrom xsmc.supporting.plotting import *\\nfrom xsmc.supporting.kde_ne import kde_ne\\nimport matplotlib.pyplot as plt\\nimport numpy as np\\nimport msprime as msp\\nfrom scipy.interpolate import PPoly\\nimport tskit\\nfrom concurrent.futures import ProcessPoolExecutor, ThreadPoolExecutor\\nimport logging\\nimport os.path\\n\\nlogging.getLogger(\\\"xsmc\\\").setLevel(logging.INFO)\";\n",
       "                var nbb_formatted_code = \"import xsmc\\nimport xsmc.sampler\\nfrom xsmc import Segmentation\\nfrom xsmc.supporting.plotting import *\\nfrom xsmc.supporting.kde_ne import kde_ne\\nimport matplotlib.pyplot as plt\\nimport numpy as np\\nimport msprime as msp\\nfrom scipy.interpolate import PPoly\\nimport tskit\\nfrom concurrent.futures import ProcessPoolExecutor, ThreadPoolExecutor\\nimport logging\\nimport os.path\\n\\nlogging.getLogger(\\\"xsmc\\\").setLevel(logging.INFO)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import xsmc\n",
    "import xsmc.sampler\n",
    "from xsmc import Segmentation\n",
    "from xsmc.supporting.plotting import *\n",
    "from xsmc.supporting.kde_ne import kde_ne\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import msprime as msp\n",
    "from scipy.interpolate import PPoly\n",
    "import tskit\n",
    "from concurrent.futures import ProcessPoolExecutor, ThreadPoolExecutor\n",
    "import logging\n",
    "import os.path\n",
    "\n",
    "logging.getLogger(\"xsmc\").setLevel(logging.INFO)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 3;\n",
       "                var nbb_unformatted_code = \"# Ensure reproducibility in posterior sampling\\nnp.random.seed(1)\\n\\n\\ndef seed():\\n    return np.random.randint(1, np.iinfo(np.int32).max)\";\n",
       "                var nbb_formatted_code = \"# Ensure reproducibility in posterior sampling\\nnp.random.seed(1)\\n\\n\\ndef seed():\\n    return np.random.randint(1, np.iinfo(np.int32).max)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Ensure reproducibility in posterior sampling\n",
    "np.random.seed(1)\n",
    "\n",
    "\n",
    "def seed():\n",
    "    return np.random.randint(1, np.iinfo(np.int32).max)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The `xsmc.supporting.psmc` module runs Li & Durbin's original PSMC method on tree sequence data."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Collecting git+https://github.com/terhorst/mspsmc@e583e196f\n",
      "  Cloning https://github.com/terhorst/mspsmc (to revision e583e196f) to /tmp/pip-req-build-pb02_nr8\n",
      "\u001b[33m  WARNING: Did not find branch or tag 'e583e196f', assuming revision or ref.\u001b[0m\n",
      "Requirement already satisfied: scipy in /home/terhorst/opt/py37/lib/python3.7/site-packages (from mspsmc==0.1.0) (1.4.1)\n",
      "Requirement already satisfied: numpy in /home/terhorst/opt/py37/lib/python3.7/site-packages (from mspsmc==0.1.0) (1.18.2)\n",
      "Requirement already satisfied: tskit in /home/terhorst/opt/py37/lib/python3.7/site-packages (from mspsmc==0.1.0) (0.3.1)\n",
      "Requirement already satisfied: svgwrite in /home/terhorst/opt/py37/lib/python3.7/site-packages (from tskit->mspsmc==0.1.0) (1.3.1)\n",
      "Requirement already satisfied: jsonschema in /home/terhorst/opt/py37/lib/python3.7/site-packages (from tskit->mspsmc==0.1.0) (3.1.1)\n",
      "Requirement already satisfied: attrs>=19.1.0 in /home/terhorst/opt/py37/lib/python3.7/site-packages (from tskit->mspsmc==0.1.0) (19.3.0)\n",
      "Requirement already satisfied: h5py in /home/terhorst/opt/py37/lib/python3.7/site-packages (from tskit->mspsmc==0.1.0) (2.10.0)\n",
      "Requirement already satisfied: pyparsing>=2.0.1 in /home/terhorst/opt/py37/lib/python3.7/site-packages (from svgwrite->tskit->mspsmc==0.1.0) (2.4.2)\n",
      "Requirement already satisfied: pyrsistent>=0.14.0 in /home/terhorst/opt/py37/lib/python3.7/site-packages (from jsonschema->tskit->mspsmc==0.1.0) (0.15.4)\n",
      "Requirement already satisfied: importlib-metadata in /home/terhorst/opt/py37/lib/python3.7/site-packages (from jsonschema->tskit->mspsmc==0.1.0) (0.23)\n",
      "Requirement already satisfied: six>=1.11.0 in /home/terhorst/opt/py37/lib/python3.7/site-packages (from jsonschema->tskit->mspsmc==0.1.0) (1.14.0)\n",
      "Requirement already satisfied: setuptools in /home/terhorst/opt/py37/lib/python3.7/site-packages (from jsonschema->tskit->mspsmc==0.1.0) (49.3.2)\n",
      "Requirement already satisfied: zipp>=0.5 in /home/terhorst/opt/py37/lib/python3.7/site-packages (from importlib-metadata->jsonschema->tskit->mspsmc==0.1.0) (0.6.0)\n",
      "Requirement already satisfied: more-itertools in /home/terhorst/opt/py37/lib/python3.7/site-packages (from zipp>=0.5->importlib-metadata->jsonschema->tskit->mspsmc==0.1.0) (7.2.0)\n",
      "Building wheels for collected packages: mspsmc\n",
      "  Building wheel for mspsmc (setup.py) ... \u001b[?25ldone\n",
      "\u001b[?25h  Created wheel for mspsmc: filename=mspsmc-0.1.0-py2.py3-none-any.whl size=5757 sha256=2a985c3436b68c165ed595cb668e342f05b6ac56d53beb7c5b3f391a885c716e\n",
      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ughf1bw5/wheels/af/38/87/3eee2ca03eb580f4df9e22215d1e0ff5a8914f16a45cf26f93\n",
      "Successfully built mspsmc\n",
      "Installing collected packages: mspsmc\n",
      "Successfully installed mspsmc-0.1.0\n",
      "\u001b[33mWARNING: You are using pip version 20.2.3; however, version 20.2.4 is available.\n",
      "You should consider upgrading via the '/home/terhorst/opt/py37/bin/python3 -m pip install --upgrade pip' command.\u001b[0m\n"
     ]
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 4;\n",
       "                var nbb_unformatted_code = \"!pip install git+https://github.com/terhorst/mspsmc@e583e196f\";\n",
       "                var nbb_formatted_code = \"!pip install git+https://github.com/terhorst/mspsmc@e583e196f\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "!pip install git+https://github.com/terhorst/mspsmc@e583e196f"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "code_folding": [
     0
    ]
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'0.6.5-r67'"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 7;\n",
       "                var nbb_unformatted_code = \"# psmc code\\nimport os\\n\\nos.environ[\\\"PSMC_PATH\\\"] = \\\"/scratch/psmc/psmc\\\"  # update as needed if running locally\\nimport mspsmc\\n\\n\\ndef run_psmc(reps, rho_over_theta=1.0):\\n    def f(data, *args):\\n        return mspsmc.msPSMC([(data, (0, 1))]).estimate(*args)\\n\\n    with ThreadPoolExecutor() as p:\\n        futs = [p.submit(f, data, \\\"-r\\\", 1.0 / rho_over_theta) for data in reps]\\n        res = [f.result() for f in futs]\\n    rescaled = []\\n    for r in res:\\n        # See Appendix I of https://github.com/lh3/psmc/blob/master/README\\n        N0 = r.theta / (4 * mu) / 100\\n        rescaled.append(r.Ne.rescale(N0))\\n    return rescaled\\n\\n\\nmspsmc.__psmc__version__\";\n",
       "                var nbb_formatted_code = \"# psmc code\\nimport os\\n\\nos.environ[\\\"PSMC_PATH\\\"] = \\\"/scratch/psmc/psmc\\\"  # update as needed if running locally\\nimport mspsmc\\n\\n\\ndef run_psmc(reps, rho_over_theta=1.0):\\n    def f(data, *args):\\n        return mspsmc.msPSMC([(data, (0, 1))]).estimate(*args)\\n\\n    with ThreadPoolExecutor() as p:\\n        futs = [p.submit(f, data, \\\"-r\\\", 1.0 / rho_over_theta) for data in reps]\\n        res = [f.result() for f in futs]\\n    rescaled = []\\n    for r in res:\\n        # See Appendix I of https://github.com/lh3/psmc/blob/master/README\\n        N0 = r.theta / (4 * mu) / 100\\n        rescaled.append(r.Ne.rescale(N0))\\n    return rescaled\\n\\n\\nmspsmc.__psmc__version__\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# psmc code\n",
    "import os\n",
    "\n",
    "os.environ[\"PSMC_PATH\"] = \"/scratch/psmc/psmc\"  # update as needed if running locally\n",
    "import mspsmc\n",
    "\n",
    "\n",
    "def run_psmc(reps, rho_over_theta=1.0):\n",
    "    def f(data, *args):\n",
    "        return mspsmc.msPSMC([(data, (0, 1))]).estimate(*args)\n",
    "\n",
    "    with ThreadPoolExecutor() as p:\n",
    "        futs = [p.submit(f, data, \"-r\", 1.0 / rho_over_theta) for data in reps]\n",
    "        res = [f.result() for f in futs]\n",
    "    rescaled = []\n",
    "    for r in res:\n",
    "        # See Appendix I of https://github.com/lh3/psmc/blob/master/README\n",
    "        N0 = r.theta / (4 * mu) / 100\n",
    "        rescaled.append(r.Ne.rescale(N0))\n",
    "    return rescaled\n",
    "\n",
    "\n",
    "mspsmc.__psmc__version__"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "code_folding": []
   },
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 8;\n",
       "                var nbb_unformatted_code = \"# other supporting functions\\nL = int(5e7)  # length of simulated chromosome\\nmu = 1.4e-8  # mutation rate/bp/gen\\nM = 25  # number of replicates\\n\\n\\ndef parallel_sample(reps, j=100, k=int(L / 50_000), rho_over_theta=1.0):\\n    xs = [\\n        xsmc.XSMC(data, focal=0, panel=[1], rho_over_theta=rho_over_theta)\\n        for data in reps\\n    ]\\n    with ThreadPoolExecutor() as p:\\n        futs = [\\n            p.submit(x.sample_heights, j=j, k=k, seed=seed()) for i, x in enumerate(xs)\\n        ]\\n        return np.array(\\n            [f.result() * 2 * x.theta / (4 * mu) for f, x in zip(futs, xs)]\\n        )  # rescale each sampled path by 2N0 so that segment heights are in generations\\n\\n\\ndef parallel_sample0(reps, j=100, k=int(L / 50_000), rho_over_theta=1.0):\\n    xs = [\\n        xsmc.XSMC(data, focal=0, panel=[1], rho_over_theta=rho_over_theta)\\n        for data in reps\\n    ]\\n    with ProcessPoolExecutor() as p:\\n        futs = [\\n            p.submit(x.sample, k=j, seed=seed(), prime=True) for i, x in enumerate(xs)\\n        ]\\n        paths = [\\n            [p.rescale(2 * x.theta / (4 * mu)) for p in f.result()]\\n            for f, x in zip(futs, xs)\\n        ]  # rescale each sampled path by 2N0 so that segment heights are in generations\\n    return np.array([[p(np.random.uniform(0, L, k)) for p in path] for path in paths])\\n\\n\\ndef sim_data(de, **kwargs):\\n    d = dict(\\n        sample_size=2,\\n        recombination_rate=1.4e-8,\\n        mutation_rate=mu,\\n        length=L,\\n        demographic_events=de,\\n    )\\n\\n    d.update(kwargs)\\n    with ThreadPoolExecutor() as p:\\n        futs = [p.submit(msp.simulate, **d, random_seed=seed()) for i in range(M)]\\n        return [f.result() for f in futs]\\n\\n\\ndef summarize_lines(xys, x0):\\n    \\\"summarize a collection of lines by plotting their median and IQR\\\"\\n    y0 = []\\n    for x, y in xys:\\n        f = interp1d(\\n            x, y, bounds_error=False\\n        )  # interpolate linearly to a common set of points\\n        y0.append(f(x0))\\n    return np.nanquantile(y0, [0.5, 0.25, 0.75], axis=0)  # median, q25, q75\\n\\n\\ndef plot_summary(ax, lines, x, label=None, **kwargs):\\n    all_x = np.concatenate([l[0] for l in lines]).reshape(-1)\\n    m, q25, q75 = summarize_lines(lines, x)\\n    ax.plot(x, m, label=label, **kwargs)\\n    ax.fill_between(x, q25, q75, **kwargs, alpha=0.5)\\n\\n\\ndef plot_combined(lines_psmc, lines_xsmc, truth, ax=None):\\n    if ax is None:\\n        ax = plt.gca()\\n    x = np.geomspace(1e2, 1e6, 200)\\n    for lines, label, color in zip(\\n        [lines_xsmc, lines_psmc], [\\\"XSMC\\\", \\\"PSMC\\\"], [\\\"tab:blue\\\", \\\"tab:red\\\"]\\n    ):\\n        #         for i, (x, y) in enumerate(lines):\\n        #             ax.plot(\\n        #                 x,\\n        #                 y,\\n        #                 color=color,\\n        #                 label=label if i == 0 else None,\\n        #                 alpha=5.0 / len(lines),\\n        #             )\\n        plot_summary(ax, lines, x, label=label, color=color)\\n    ax.plot(\\n        *truth, \\\"--\\\", color=\\\"darkgrey\\\", label=\\\"Truth\\\", drawstyle=\\\"steps-post\\\", zorder=0\\n    )\\n    ax.set_xscale(\\\"log\\\")\\n    ax.set_yscale(\\\"log\\\")\\n    ax.set_xlim(1e2, 1e5)\\n    ax.set_ylim(1e3, 1e6)\";\n",
       "                var nbb_formatted_code = \"# other supporting functions\\nL = int(5e7)  # length of simulated chromosome\\nmu = 1.4e-8  # mutation rate/bp/gen\\nM = 25  # number of replicates\\n\\n\\ndef parallel_sample(reps, j=100, k=int(L / 50_000), rho_over_theta=1.0):\\n    xs = [\\n        xsmc.XSMC(data, focal=0, panel=[1], rho_over_theta=rho_over_theta)\\n        for data in reps\\n    ]\\n    with ThreadPoolExecutor() as p:\\n        futs = [\\n            p.submit(x.sample_heights, j=j, k=k, seed=seed()) for i, x in enumerate(xs)\\n        ]\\n        return np.array(\\n            [f.result() * 2 * x.theta / (4 * mu) for f, x in zip(futs, xs)]\\n        )  # rescale each sampled path by 2N0 so that segment heights are in generations\\n\\n\\ndef parallel_sample0(reps, j=100, k=int(L / 50_000), rho_over_theta=1.0):\\n    xs = [\\n        xsmc.XSMC(data, focal=0, panel=[1], rho_over_theta=rho_over_theta)\\n        for data in reps\\n    ]\\n    with ProcessPoolExecutor() as p:\\n        futs = [\\n            p.submit(x.sample, k=j, seed=seed(), prime=True) for i, x in enumerate(xs)\\n        ]\\n        paths = [\\n            [p.rescale(2 * x.theta / (4 * mu)) for p in f.result()]\\n            for f, x in zip(futs, xs)\\n        ]  # rescale each sampled path by 2N0 so that segment heights are in generations\\n    return np.array([[p(np.random.uniform(0, L, k)) for p in path] for path in paths])\\n\\n\\ndef sim_data(de, **kwargs):\\n    d = dict(\\n        sample_size=2,\\n        recombination_rate=1.4e-8,\\n        mutation_rate=mu,\\n        length=L,\\n        demographic_events=de,\\n    )\\n\\n    d.update(kwargs)\\n    with ThreadPoolExecutor() as p:\\n        futs = [p.submit(msp.simulate, **d, random_seed=seed()) for i in range(M)]\\n        return [f.result() for f in futs]\\n\\n\\ndef summarize_lines(xys, x0):\\n    \\\"summarize a collection of lines by plotting their median and IQR\\\"\\n    y0 = []\\n    for x, y in xys:\\n        f = interp1d(\\n            x, y, bounds_error=False\\n        )  # interpolate linearly to a common set of points\\n        y0.append(f(x0))\\n    return np.nanquantile(y0, [0.5, 0.25, 0.75], axis=0)  # median, q25, q75\\n\\n\\ndef plot_summary(ax, lines, x, label=None, **kwargs):\\n    all_x = np.concatenate([l[0] for l in lines]).reshape(-1)\\n    m, q25, q75 = summarize_lines(lines, x)\\n    ax.plot(x, m, label=label, **kwargs)\\n    ax.fill_between(x, q25, q75, **kwargs, alpha=0.5)\\n\\n\\ndef plot_combined(lines_psmc, lines_xsmc, truth, ax=None):\\n    if ax is None:\\n        ax = plt.gca()\\n    x = np.geomspace(1e2, 1e6, 200)\\n    for lines, label, color in zip(\\n        [lines_xsmc, lines_psmc], [\\\"XSMC\\\", \\\"PSMC\\\"], [\\\"tab:blue\\\", \\\"tab:red\\\"]\\n    ):\\n        #         for i, (x, y) in enumerate(lines):\\n        #             ax.plot(\\n        #                 x,\\n        #                 y,\\n        #                 color=color,\\n        #                 label=label if i == 0 else None,\\n        #                 alpha=5.0 / len(lines),\\n        #             )\\n        plot_summary(ax, lines, x, label=label, color=color)\\n    ax.plot(\\n        *truth, \\\"--\\\", color=\\\"darkgrey\\\", label=\\\"Truth\\\", drawstyle=\\\"steps-post\\\", zorder=0\\n    )\\n    ax.set_xscale(\\\"log\\\")\\n    ax.set_yscale(\\\"log\\\")\\n    ax.set_xlim(1e2, 1e5)\\n    ax.set_ylim(1e3, 1e6)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# other supporting functions\n",
    "L = int(5e7)  # length of simulated chromosome\n",
    "mu = 1.4e-8  # mutation rate/bp/gen\n",
    "M = 25  # number of replicates\n",
    "\n",
    "\n",
    "def parallel_sample(reps, j=100, k=int(L / 50_000), rho_over_theta=1.0):\n",
    "    xs = [\n",
    "        xsmc.XSMC(data, focal=0, panel=[1], rho_over_theta=rho_over_theta)\n",
    "        for data in reps\n",
    "    ]\n",
    "    with ThreadPoolExecutor() as p:\n",
    "        futs = [\n",
    "            p.submit(x.sample_heights, j=j, k=k, seed=seed()) for i, x in enumerate(xs)\n",
    "        ]\n",
    "        return np.array(\n",
    "            [f.result() * 2 * x.theta / (4 * mu) for f, x in zip(futs, xs)]\n",
    "        )  # rescale each sampled path by 2N0 so that segment heights are in generations\n",
    "\n",
    "\n",
    "def parallel_sample0(reps, j=100, k=int(L / 50_000), rho_over_theta=1.0):\n",
    "    xs = [\n",
    "        xsmc.XSMC(data, focal=0, panel=[1], rho_over_theta=rho_over_theta)\n",
    "        for data in reps\n",
    "    ]\n",
    "    with ProcessPoolExecutor() as p:\n",
    "        futs = [\n",
    "            p.submit(x.sample, k=j, seed=seed(), prime=True) for i, x in enumerate(xs)\n",
    "        ]\n",
    "        paths = [\n",
    "            [p.rescale(2 * x.theta / (4 * mu)) for p in f.result()]\n",
    "            for f, x in zip(futs, xs)\n",
    "        ]  # rescale each sampled path by 2N0 so that segment heights are in generations\n",
    "    return np.array([[p(np.random.uniform(0, L, k)) for p in path] for path in paths])\n",
    "\n",
    "\n",
    "def sim_data(de, **kwargs):\n",
    "    d = dict(\n",
    "        sample_size=2,\n",
    "        recombination_rate=1.4e-8,\n",
    "        mutation_rate=mu,\n",
    "        length=L,\n",
    "        demographic_events=de,\n",
    "    )\n",
    "\n",
    "    d.update(kwargs)\n",
    "    with ThreadPoolExecutor() as p:\n",
    "        futs = [p.submit(msp.simulate, **d, random_seed=seed()) for i in range(M)]\n",
    "        return [f.result() for f in futs]\n",
    "\n",
    "\n",
    "def summarize_lines(xys, x0):\n",
    "    \"summarize a collection of lines by plotting their median and IQR\"\n",
    "    y0 = []\n",
    "    for x, y in xys:\n",
    "        f = interp1d(\n",
    "            x, y, bounds_error=False\n",
    "        )  # interpolate linearly to a common set of points\n",
    "        y0.append(f(x0))\n",
    "    return np.nanquantile(y0, [0.5, 0.25, 0.75], axis=0)  # median, q25, q75\n",
    "\n",
    "\n",
    "def plot_summary(ax, lines, x, label=None, **kwargs):\n",
    "    all_x = np.concatenate([l[0] for l in lines]).reshape(-1)\n",
    "    m, q25, q75 = summarize_lines(lines, x)\n",
    "    ax.plot(x, m, label=label, **kwargs)\n",
    "    ax.fill_between(x, q25, q75, **kwargs, alpha=0.5)\n",
    "\n",
    "\n",
    "def plot_combined(lines_psmc, lines_xsmc, truth, ax=None):\n",
    "    if ax is None:\n",
    "        ax = plt.gca()\n",
    "    x = np.geomspace(1e2, 1e6, 200)\n",
    "    for lines, label, color in zip(\n",
    "        [lines_xsmc, lines_psmc], [\"XSMC\", \"PSMC\"], [\"tab:blue\", \"tab:red\"]\n",
    "    ):\n",
    "        #         for i, (x, y) in enumerate(lines):\n",
    "        #             ax.plot(\n",
    "        #                 x,\n",
    "        #                 y,\n",
    "        #                 color=color,\n",
    "        #                 label=label if i == 0 else None,\n",
    "        #                 alpha=5.0 / len(lines),\n",
    "        #             )\n",
    "        plot_summary(ax, lines, x, label=label, color=color)\n",
    "    ax.plot(\n",
    "        *truth, \"--\", color=\"darkgrey\", label=\"Truth\", drawstyle=\"steps-post\", zorder=0\n",
    "    )\n",
    "    ax.set_xscale(\"log\")\n",
    "    ax.set_yscale(\"log\")\n",
    "    ax.set_xlim(1e2, 1e5)\n",
    "    ax.set_ylim(1e3, 1e6)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 9;\n",
       "                var nbb_unformatted_code = \"from collections import Counter\\nfrom scipy.signal import convolve\\nfrom xsmc.supporting.kde_ne import *\\n\\n\\ndef parallel_kde(sampled_heights, **kwargs):\\n    with ProcessPoolExecutor() as p:\\n        futs = [p.submit(kde_ne, h.reshape(-1), **kwargs) for h in sampled_heights]\\n        return [(f.result()[0], f.result()[1] / 2) for f in futs]\";\n",
       "                var nbb_formatted_code = \"from collections import Counter\\nfrom scipy.signal import convolve\\nfrom xsmc.supporting.kde_ne import *\\n\\n\\ndef parallel_kde(sampled_heights, **kwargs):\\n    with ProcessPoolExecutor() as p:\\n        futs = [p.submit(kde_ne, h.reshape(-1), **kwargs) for h in sampled_heights]\\n        return [(f.result()[0], f.result()[1] / 2) for f in futs]\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from collections import Counter\n",
    "from scipy.signal import convolve\n",
    "from xsmc.supporting.kde_ne import *\n",
    "\n",
    "\n",
    "def parallel_kde(sampled_heights, **kwargs):\n",
    "    with ProcessPoolExecutor() as p:\n",
    "        futs = [p.submit(kde_ne, h.reshape(-1), **kwargs) for h in sampled_heights]\n",
    "        return [(f.result()[0], f.result()[1] / 2) for f in futs]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Constant effective population size\n",
    "The simplest case. First we check the estimator on \"perfect\" data, that is i.i.d. samples from the true distribution:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 10;\n",
       "                var nbb_unformatted_code = \"de = [msp.PopulationParametersChange(time=0, initial_size=1e4)]\";\n",
       "                var nbb_formatted_code = \"de = [msp.PopulationParametersChange(time=0, initial_size=1e4)]\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "de = [msp.PopulationParametersChange(time=0, initial_size=1e4)]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Perfect data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Verify the estimator on \"perfect\" data:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1000.0, 100000.0)"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2020-10-21 11:15:22,933 WARNING matplotlib.font_manager MainThread findfont: Font family ['sans-serif'] not found. Falling back to DejaVu Sans.\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 11;\n",
       "                var nbb_unformatted_code = \"true_data = np.array(\\n    [\\n        next(sim.trees()).get_time(2)\\n        for sim in msp.simulate(\\n            num_replicates=10000, demographic_events=de, sample_size=2\\n        )\\n    ]\\n)\\nx, y = kde_ne(true_data)\\nplt.plot(x, y / 2, label=\\\"Fitted\\\")\\nplt.plot(plt.xlim(), [1e4] * 2, \\\"--\\\", color=\\\"darkgrey\\\", label=\\\"Truth\\\")\\nplt.xscale(\\\"log\\\")\\nplt.yscale(\\\"log\\\")\\nplt.legend()\\nplt.ylim(1e3, 1e5)\";\n",
       "                var nbb_formatted_code = \"true_data = np.array(\\n    [\\n        next(sim.trees()).get_time(2)\\n        for sim in msp.simulate(\\n            num_replicates=10000, demographic_events=de, sample_size=2\\n        )\\n    ]\\n)\\nx, y = kde_ne(true_data)\\nplt.plot(x, y / 2, label=\\\"Fitted\\\")\\nplt.plot(plt.xlim(), [1e4] * 2, \\\"--\\\", color=\\\"darkgrey\\\", label=\\\"Truth\\\")\\nplt.xscale(\\\"log\\\")\\nplt.yscale(\\\"log\\\")\\nplt.legend()\\nplt.ylim(1e3, 1e5)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "true_data = np.array(\n",
    "    [\n",
    "        next(sim.trees()).get_time(2)\n",
    "        for sim in msp.simulate(\n",
    "            num_replicates=10000, demographic_events=de, sample_size=2\n",
    "        )\n",
    "    ]\n",
    ")\n",
    "x, y = kde_ne(true_data)\n",
    "plt.plot(x, y / 2, label=\"Fitted\")\n",
    "plt.plot(plt.xlim(), [1e4] * 2, \"--\", color=\"darkgrey\", label=\"Truth\")\n",
    "plt.xscale(\"log\")\n",
    "plt.yscale(\"log\")\n",
    "plt.legend()\n",
    "plt.ylim(1e3, 1e5)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### XSMC \n",
    "Next we simulate data and sample from the posterior instead."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "25"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 12;\n",
       "                var nbb_unformatted_code = \"data = sim_data(de)\\nlen(data)\";\n",
       "                var nbb_formatted_code = \"data = sim_data(de)\\nlen(data)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data = sim_data(de)\n",
    "len(data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(25, 100, 1000)"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 13;\n",
       "                var nbb_unformatted_code = \"sampled_heights = parallel_sample(data)\\nsampled_heights.shape\";\n",
       "                var nbb_formatted_code = \"sampled_heights = parallel_sample(data)\\nsampled_heights.shape\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sampled_heights = parallel_sample(data)\n",
    "sampled_heights.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 14;\n",
       "                var nbb_unformatted_code = \"lines_xsmc = parallel_kde(sampled_heights)\";\n",
       "                var nbb_formatted_code = \"lines_xsmc = parallel_kde(sampled_heights)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "lines_xsmc = parallel_kde(sampled_heights)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7f0a45698bd0>]"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZAAAAD7CAYAAABE+8LhAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO3deZgcVbnH8e87M1kmmUAWwpqEpCQR2VfZF5ULCjRDKGQTURZZr4q0XpWKIGi5AKOAiqKIIOgVuRVs4kVB5ILkslzBAAFZrQTCIgRCgAAJTObcP07FmQxZZuuu7p7f53nm6ek605m3i2F+U1XnvGXOOURERHqrIe8CRESkNilARESkTxQgIiLSJwoQERHpEwWIiIj0yaAJEDNrMrPJZtaUdy0iIvVg0AQIMAGYlz2KiEg/DaYAERGRAaQAERGRPlGAiIhInyhARESkTxQgIiLSJwoQERHpEwWIiIj0iQJERET6RKuyRUTqVBqH44HvA+8HPhhEyYDeAEoBIiJSZ9I4NOAo4FJgXeArAx0eoFNYIiJ1JY3DCcCNwK+BfwDbB1HyvXJ8Lx2BiIjUgTQOG4CTgAuBIcBZwKVBlCwv1/fs0RGImf3OzB40szlmdqeZbZdtn2Zmd5vZE9nj1C6vqeiYiMhglcbhZsCfgcuB+4Ctgij5fjnDA3p+CutTzrltnXPbAxcBV2bbfwL8yDk3DfgRvnhyGhMRGVTSOGxK4/CLwFxgB+AzwH5BlKSV+P7mXO+uq5jZccDngAOBJ4BxzrnlZtYIvAJMBaySY865hd1qHA2M7lb6BOBOYIpzbn6v3rSISJVJ43Br4OfAzvhrHqcHUfJcJWvo8TUQM7sC2B//i/yjwETgOefccoDsl/rz2Xar8NhKAQKcCZzb670hIlLl0jgcBpydfbyKn23123LMslqbHgeIc+4kADP7JP4izdfKVdQAuBi4qtu2FUcgIiI1KY3DXfBHHVsC1wJfCKLk5bzq6fUsLOfcNWb2U+BZYBMza+xySmljYAH+aKGSY91rXAws7rrNzHr7VkVEqkIahyOBb+DPrjwHHBREyU35VtWDi+hm1mJmE7s8LwCLgJeAB4Cjs6GjgTnOuYXOuYqO9eWNi4jUgjQOP4K/SP4F/ESiLashPKAHF9HNbAOgBIwEluPD44vOub+Z2ebA1cAY/Lm445xzj2evq+jYWt+o2WT8PdF1EV1Eql4ah6PxlwtOAp4ETgqi5C/5VrWyXs/CqlUKEBGpFWkctgI/BjbAL534ehAlb+db1XtpJbqISJVI43B9fP+qI4GHgEOCKLkv36pWTwEiIpKzrPnhJ4BLgBZgBnBBECXv5lrYWihARERylMbhRPzF8QOBu4ETgyh5NN+qekYBIiKSg6z54SnABfgZsZ8HflTu/lUDSQEiIlJhaRxOA64A9gJuBU4OomRevlX1ngJERKRC0jhswrdZPw9YCpwAXJVHG5KBoAAREamANA63xXcy3wG4ATgjiJIX8q2qfxQgIiJllDU/nAF8Bb8Q++NAUqtHHV0pQEREyiSNw93x1zo+gO+icVYQJYvyrWrgKEBERAZYGoctQAx8Ft/w9aNBlNycb1UDr6d3JBQRkR5I4/Df8M0PP4e/c+pW9RgeoCMQEZEBkcbhGKANOB54HNgriJLZ+VZVXjoCERHppzQOpwN/B44Dvg1sV+/hAToCERHpszQONwR+AByOv1/RgUGUzMm3qspRgIiI9FLW/PA44PvACPz9yS+q9uaHA00BIiLSC2kcbgpcDhwA/C/+Rk+P5VtVPhQgIiI9kDU/PB34Trbps8BlQZR05FdVvhQgIiJrkcbh+4GfA3sANwOnBFHydL5V5U8BIiKyGmkcDgG+CJwLvAV8GvhlPbQhGQgKEBGRVUjjcHv8Ucf2wH8Bnw2i5J/5VlVdFCAiIl2kcTgcOAf4D2AhEAZRMjPfqqrTWhcSmtk4M7vJzB43s7lmNtPMxmdjzsweMrMHso+tu7yuYGaPmdlTZnadmY0o55iISH+lcbgn8CDwVeCXwBYKj9Uz59Z8Ks/MxgLbOOduz55fCIx1zp1oZg4Y5Zxb0u01LcBTwF7OuSfN7ArgGefc+eUY69EbNZsMzAOmOOfm9+Q1IjI4pHE4Cr+C/AxgPv4OgX/KtagasNYjEOfcohXhkbkH2HQtL/sYcJ9z7sns+U+AI8s4JiLSJ2kcHgA8jJ+ieymwtcKjZ3p1DcTMGoDTgBu7bL7dzJqAPwBfd84tAyYBXae4PQNMzD4vx1j3OkcDo7ttnrDaNyYig04ah2PxK8mPAx4D9gyi5K58q6otvb2I/gNgCfDD7Pkk59wCM1sHuAb4Gv7OW3k7Ez/tTkRkJVkbkhDfan0s8E0gDqJkaa6F1aAeB4iZXQRMBQrOuQ4A59yC7PH17JrEWdmXPwN8qMvLJ+FvqlKuse4uBq7qtm0CcOdqvl5EBoE0DjfCB8d04H5g/yBKHsy3qtrVo3buZvYtYEfg0OwUFWY2xsyas8+b6OxGCfBHYGczm5o9PxX4bRnHVuKcW+ycm9/1A3i2J+9VROpPGoeWxuHx+JbrHwO+DOyq8OiftR6BmNmW+CltTwB3mRn42UwXAJdnM7GGAHfhT2HhnHvDzE4Gfm9mjcAc4PPlGhMRWZ00DqcAPwX2w5+FOCmIkifyrao+rHUab73QNF6RwSWNw0b8tNxvAx34hYGXD+bmhwNNK9FFpO6kcfgBfBuS3fAzRE8NouSZfKuqPwoQEakbWfPDL+NPp78BfBL4lZoflocCRETqQhqHOwJXAtsA1wGfC6LkpXyrqm8KEBGpaWkcNgNfx7ddfxE4NIiSUq5FDRIKEBGpWWkc7g1cgV+jdgXwpSBKFudb1eChABGRmpPG4Tr4W8uehp9duV8QJX/Ot6rBp0cLCUVEqkUahwfimx+eiu9ltbXCIx86AhGRmpDG4Xr4wDgWv6J89yBK7sm3qsFNASIiVS1rfngEvpnrGOA84NtBlCzLtTBRgIhI9UrjcGPgx8AhwH3AR4IomZtvVbKCAkREqk521HEicBEwDD9F95IgStpzLUxWogARkaqSxmEA/Az4MHAHvvnhU/lWJauiABGRqpA1P/wcEAPtwCnAFWp+WL0UICKSuzQOt8IvBNwF+D1wWhAluodPlVOAiEhu0jgcir/fUAS8BhwD/EbND2uDAkREcpHG4c745odbAb8GzgyiZGG+VUlvKEBEpKLSOBwBnA98AXgBOCSIkln5ViV9oQARkYpJ43Bf/LWO9wGXA18OouS1XIuSPlOAiEjZpXG4LnABcDLwD+DDQZT8T75VSX+pmaKIlFUahwXgEeAk/MLAbRQe9UFHICJSFmkcjgcuAY4G5gLTgyj5a75VyUBa6xGImY0zs5vM7HEzm2tmM81sfDa2q5k9aGZPmNktZrZ+l9dVdExEqkMah5bG4THAo8DhwLnATgqP+tOTU1gOuMA5937n3Nb485ffMbMG4FrgDOfcNOAv+Bu8UOkxEakOaRxOAG4EfgU8BWwfRMn5QZS8k29lUg7mXO/W65hZiL8L2FeBXzjntsq2rwfMd861mNnOlRzrYd2T8Xcum+Kcm9+rNy0ia5TGYQPwGeBC/KnxCLg0iJLluRYmZdWrayDZUcBp+L8wJgFPrxhzzr1sZg1mNrbSY865Rd3qHA2M7lb+hN68VxHpmTQON8M3P9wXuA34TBAlaa5FSUX09iL6D4AlwA+B6QNfzoA5E3/eVUTKJI3DJvz/a98A3sEfgfxcbUgGjx4HiJldBEwFCs65DjN7Bti0y/h6QIdzblGlx1ZR7sXAVd22TQDu7On7FZHVS+NwG+DnwE74MxKnB1HyXL5VSaX1KEDM7FvAjsBBzrkVt5G8H2g2sz2dc7PxN7i/PqexlTjnFgOLu72HnrxVEVmDNA6HAWdnH68CRwLX66ij/ArFkgHNs9pa38q7lhXWehHdzLYEHgaeAN7ONs9zzk03s93x7QiGA/OBY51zL2avq+jYWt+oLqKL9Esah7vijzq2wM+IPDOIklfyraq+FYqlBmA34LDsYxIwflZb66rOvFRcr2dh1SoFiEjfpHE4En+d40zgOeCUIEpuyreq+lUoloYA++ADYzqwIf4a0y3AtbPaWq/LsbyVaCW6iKxWGocfwc+wmgL8GPhKECWv51tV/SkUS8OBf8OHxiHAWOBN4CZgJnDTrLbWqtvvChAReY80Dkfj13ScBDwJ7BNEyV/yraq+FIqlUcDH8KFxENCCv3Z7Iz40bpnV1vr26v+F/ClARGQlaRy24o821ge+C5wXRElV/yKrFYViaSxQwIfGAcAw4CX8yv2ZwO2z2lprZtW+AkREAEjjcAPgUuAI4EGgEETJ/flWVfsKxdKGwKH40PgQ/vfuM/iQngncNauttSZX7CtARAa5NA4N+AS+c24LMAO4IIiSd3MtrIYViqXJ+AvghwF7AIafyXohPjTun9XWWvMzmBQgIoNYGoeTgJ/gz8XfDZwYRMmj+VZVmwrF0uZ0TrfdMdv8IL4rxkzg7/UQGl0pQEQGoaz54an4axwNwOeBH6n5Yc9lC/u2ozM0tsiG7gG+BNwwq631HzmVVxEKEJFBJo3Dafj7ku8F3AqcHETJvHyrqg3Zwr5d6QyNKUAHcAdwGfC7WW2tg6aliwJEZJDImh8WgfPwXSVOAK5SG5I1KxRLTay8sG8j4F3gT8A3gRtntbW+nF+F+VGAiAwCaRxuC1wJ7ADcAJwRRMkL+VZVvQrF0jA6F/a14hf2vQX8AUjwC/tey6/C6qAAEaljaRwOx8+q+jLwCnB4ECVJvlVVp0Kx1MLKC/tGAa8Bs/ChcUs1NTKsBgoQkTqVxuHu+OaHmwNXA2cFUVIVTfiqRaFYGsPKC/uGAwuB3+BnTt1WSwv7Kk0BIlJn0jhsAWLgs8AC4KNBlNycb1XVo1AsbUDnwr4P438PPgv8FB8as2t1YV+lKUBE6kgah/vjfxFuir9z6NlBlLyRb1X5KxRLk+icObUnfmHfU0AbPjT+Wm9rNCpBASJSB9I4HAN8D/g08DiwVxAls3MtKmeFYmkaEOJDY6ds80P4WWgzgYcVGv2jABGpcWkcHgb8CBgPfBs4P4iSpflWVXnZwr5t6AyNLbOhe/GTCG6Y1db6ZE7l1SUFiEiNSuNwQ/xpqhB4ADgwiJI5+VZVWdnCvg/SGRoBfmHfX4DP4Rf2LcivwvqmABGpMVnzw+OA7wMj8Pcnv2iwND/MFvbthQ+N6cDG+IV9t+KPwG6c1db6Un4VDh4KEJEaksbhZOByYH/gf4GTgih5LNeiKiBb2PcRfGi0AuPwq+n/gL+e8d+z2loX51fh4KQAEakBWfPDM/B/YYOfontZECUd+VVVXoViaSTwUXxoHIxf2Pc6fmHfTODmWW2tb+ZXoShARKpcGoeb45sf7gHcDJwSRMnT+VZVHoViaTQ+LA7Dh0cz8DJwHZ0L+5blV6F0pQARqVJpHA7BtwU/F3gT+BRwTb01PywUS+vjT0sdhj9NNQR4Dh+aKxb2tedXoaxOjwLEzC7CH0ZOBrZ2zj2cbZ8PLM0+AL7snLs5G9sVf662GZgPHOuce6lcYyL1JI3D7fHND7cD/gv49yBKXsy3qoFTKJYm0nnHvr3w9yT5B35iwIqFfXV7eq5emHNr/2PGzPYEngbuBA7uFiD/et7l6xvwt2/8tHNutpnNAALn3AnlGOvRGzWbDMwDpjjn5vfkNSKVljU/PBd/5LEQ3zV3Zr5VDYxCsTSVztXgH8w2P4xvVDgTmKuFfbWlR0cgzrnZAGbW0393R2Dpitfhb5k5H3//gXKMrcTMRgOju22e0NPiRfKQxuGe+OaH04BfAMUgSl7Nt6q+yxb2bU1naGydDf0V+Ap+Yd8TOZUnA2AgroH8ynyyzAbOds4tBibhj1gAcM69bGYNZja2HGPOue4dRs/E/xUnUvXSOByFn111Bv6Pov2DKPlTrkX1Ubawb2c6Q2MzwOHPXnwev7DvmfwqlIHU3wDZyzm3wMyGARfjV8Ue2/+y+u1i4Kpu2ybgf4hFqkYahx/FX9ebCFwCzAiiZEm+VfVOoVhqxF/HWHHHvglAO/Bn4EKgNKuttW6u30infgWIc25B9rjMzC4DbsyGnsF3AwXAzNYDOpxzi8xswMdWUddiYKVFRb04/SZSdmkcjsM3PzwOeBTYI4iSu/OtqucKxdJQ/IypFXfsG4+fTPNH/Mr4389qa63Z02/SM30OEDMbCTQ5517LTmEdhe/HA3A/0Gxme2bXLE4Fri/jmEhNyNqQhPjmh2Px99T+ZhAlVb+2oVAsjcCvzTgMfxOmdYA3gN/jL4L/QQv7BpeeTuO9FP9DsyFwq5m9gv8BSsysEWgE/g6cDuCc6zCzTwKXm9lwsim35RoTqQVpHG6ED47p+D+I9g+i5MF8q1qzQrG0Lp0L+z6Gn0L/Cn5q8UzgVi3sG7x6NI23Hmgar+QlO+o4Hn/zohXTdL8XRElVLo4rFEvj6VzYtx9+Yd/zwA340PiLFvYJaCW6SFmlcTgFf4fA/fCTOE4KoqTqpq4WiqUJdC7s2xu/sG8e/sL+TOBeLeyT7hQgImWQxmEj8O/At4Dl+NO7l1dT88NCsbQZndNtd8k2P4K/n/pM4EEt7JM1UYCIDLA0DrfA93HaDd9u/JQgSnK/qVG2sG9LOm++tE02dB9+5tTMWW2tj+dUntQgBYjIAMmaH34Z+Bp+dtKxwK/zbH6YhcZOdIbGVPzCvtnAF/Crweuys6+UnwJEZACkcbgjvvnhNvjW458LoiSXRp/Zwr496Lxj30T8wr7b8BfyS7PaWv+ZR21SXxQgIv2QxmEz8HXgi8CLwKFBlJQqXUe2sO9D+NA4lM6FfTcDM/AL+96z6FakPxQgIn2UxuE++Gsdm2WPXwqipGK3Vc0W9u2PD40CsC6whJUX9tVUWxSpLQoQkV5K43Ad4Lv4bggpsF8QJX+uxPcuFEvrAAfhQ+NjwAhgET4wVizsW7r6f0Fk4ChARHohjcMD8c0PN8b3sjoniJKytu8oFEvrAYfgQ2M/YCjwAr5h6IqFfe+WswaRVVGAiPRAGofr4bs8fwLftufwIEruLdf3KxRLm+CvZYTAPviFffPxHa8T4B4t7JO8KUBE1iBrQ3IE8ANgDHAe8O1yND8sFEsBfqptCOyabX4Uf6+QBHhAC/ukmihARFYjjcNNgMvwp4/uAz4SRMncgfr3szUaW9AZGttmQ3/Dz5yaOaut9dGB+n4iA00BItJNdtRxEnAR/nrDF4FLBqL5YRYaO9IZGtPwC/vuAor40Jjf3+8jUgkKEJEu0jh8H/Az/JqK24HPBFHyVH/+zWxh3+509p2ahO+P9T/46yq/m9XW+kJ/vodIHhQgIvyr+eHn8Td4ehc4Bbiir80PC8XSEHwIHYa/GL4BsAy4Bd/O/UYt7JNapwCRQS+Nw62AnwMfxC/COy2Ikmd7++8UiqVm/MK+w/DXTUYDbwL/jZ9ue9OsttY3BqpukbwpQGTQSuNwKPBVIAJeA44BftOb5oeFYmkUfmHfYcCBwEjgVaCEnzl166y21rcHuHSRqqAAkUEpjcMP4o86tgJ+DZwZRMnCnry2UCyNwx9hHIY/4hiK74N1DT407tDCPhkMFCAyqKRxOAI4H9/K/AXgkCBKZq3tdYViaSM679i3L9AIPI2/x/mKhX3Ly1S2SFVSgMigkcbhh/BNDwN8O5IvB1Hy2uq+vlAsTaFz5tRugAGP4/tgJcAcLeyTwUwBInUvjcN1gQuAk4F/AB8KouT2VX1toVhasbDvMGD7bPMc4Bwg0cI+kU5rDRAzuwi/4GkysLVz7uFs+zTgamAc8ApwnHPuyTzGRFYnjcMC8BNgQ/zCwHODKHlrxXi2sG8HOkNj82zoLvwCwhtmtbWmFS1apEaYc2s+AjezPfHneu8EDu4SILcBVzrnrjWzY4ETnHMfzmOsR2/UbDIwD5jinJvf09dJbUrjcDxwCXA0MBc4MYiSvwIUiqUGVl7Ytyl+Yd/t+Om2v5vV1vp8DmWL1JS1Bsi/vtBsPlmAmNn6wBPAOOfccjNrxB8VTMWfJ67YmHOuRzNnFCCDQ9aG5GjgUmAd/MLA73x+0XEOf/F7xcK+DYF38Av7ZgKzZrW1vpxHzSK1qq/XQCYCzznnlgNkv9Sfz7ZbhcfeEyBmNhq/iKurCX18r1Ij0jicCPwYvy7j3peXt5z2jdcOmwj8FD/tdgx+Yd9NdC7sez2vekVqXb1eRD8T3y5CBoE0DhuAzwAXOkfjw+9OuPrKJfuO6KDhL0ALsBi4ER8at2hhn8jA6GuALAA2MbPGLqeUNs62W4XHVuVi/N3aupqAv44jdSSNw6ntruEXTdaxxzPtY1++ask+67zSMepTwEvAr/ChcfusttZ38q1UpP70KUCccy+Z2QP4c83XZo9zVlyPqPTYKupbjP+r81/MrC9vVarU8V+6ZpODR8y5dOshDYe+6xobrn9zF+55Z7O3wK7Fh8ZdWtgnUl49mYV1Kf7C44bAy8ArzrktzWxz/LTaMfjeP8c55x7PXlPRsR69UV1Er3mFYmkycNjkpoXHhiP+b/tJTa/w6DsbLym9veMvXlg+5pfA/VrYJ1I5PZ6FVesUILWrUCwdCnytkeU77N88l38bPpd2Gt98pn3cOU+1b/D9M7557uD4IRapMgoQqVqFYmk0fjruJzdr+ue8T7fcMWJUw7IN8Kcxzwyi5JV8KxQZ3Op1FpbUuEKxtD9w5VDe3fD4ljvu+cCQ53cx41ngoCBKbsq7PhFRgEiVKRRLLcCFwKlbDnn26eNbbv/nEOvYFbgM+GoQJVq3IVIlFCBSNQrF0l7AVc32zpQTWm6fO23IP7cGngT2CaLkLzmXJyLdKEAkd4ViaTi+5chZOwyd9+InRv7voibr2ALfNv28IEq08E+kCilAJFeFYmkn4Jej7O0PnNBy+z+CIQvfBzwIHBBEyf05lycia6AAkVwUiqWhQAQu2nXYU69/fMS9bzRZx0RgBnBBECW6JaxIlVOASMUViqUtgWvGNCzZ/oSWO56b1PTKJsDd+JbrumGTSI1QgEjFZDdvOsNwF+097LF3W0fct7TR3Gjgc8BlQZSo9YhIDVGASEUUiqX1gSvHN7x+0PEtdyzapOnVscCfgJODKJmfb3Ui0hcKECm7QrF0QAMdV394+CPjDmp+oN1wDcDxwNVBlAyOVggidUgBImVTKJaGAd/apHHRWZ8cOXvpRk2Lm4AbgDOCKHkh5/JEpJ8UIFIWhWLpA0No/8/9m+duu9/wuc7gNeDYIEqSvGsTkYGhAJEBlV0oP3FK00s/PGbkXU3rN74O8EvgrCBKFuVbnYgMJAWIDJhCsTS62ZZd+bHmB6fvPewxHPYcfmruzXnXJiIDTwEiA6JQLO2+5ZAFMw8f8X8bjGl40wE/ajB3dhAlb+Rdm4iUhwJE+qVQLDWOa3jjvGNGPnT2LsP+Ye+4xqfNODaIktl51yYi5aUAkT4rFEvv22Xok/998Ig572+xpW6pa/recGuPgihZmndtIlJ+ChDptUKxZJMaXz7rhJa539126ILGJR3DnnbY9C1mXDcn79pEpHIUINIr04vJxA8Pf+zG/YY/vN0wa+94dfmI74xpfOscNT8UGXwUINIjhWJpSND04vknj3roS+8f8kLjouUj0yZbftCO51zzWN61iUg+Gvr7D5jZfDN7zMweyD4OyLbvamYPmtkTZnaLma3f5TUDPiblM72Y7Lnf8LnPnDrqz1+Z0vSSW7h81DljG9+c+oEZv1V4iAxi5lz/WhGZ2XzgYOfcw122NQBPAJ92zs02sxlA4Jw7oRxjPaxzMjAPmOKcm9+vNz1IFIqldYKmF39caP7bMcGQhSzuGPG30Q1vHRZEydN51yYi+StXgOwM/MI5t1X2fD1gvnOupRxjPaxzMgqQHjvqi9ftu/fwx3633/CH1+3Alr3rmj47smHZFWp+KCIrDNQ1kF+ZmQGzgbOBScC//kp1zr1sZg1mNrYcY865lVpkmNloYHS3GicM0Huta4ViqXG7ofMvPX3U3NMnNL3Kax3Nt63b8PYxm8/47Yt51yYi1WUgAmQv59wCMxsGXAz8EN9xNU9nAufmXEPNOfFLv9zt4yMevX63YU9usswNWfpaR/MJ23/t2v/Muy4RqU79DhDn3ILscZmZXQbcCFwCbLria7LTTR3OuUVm9sxAj62irIuBq7ptmwDc2a83W6cKxdLY7YfOu+Izox6cvn7j6zzbPuaO9RrfmL79jP98Ne/aRKR69StAzGwk0OScey07hXUU8ABwP9BsZns652YDpwLXZy8rx9hKnHOLgcXdau3PW61LhWLJxjYsOeWIEXO/v8fwJ4cv6Rj2+sLlo47b+9wrSnnXJiLVr79HIBsAiZk1Ao3A34HTnXMdZvZJ4HIzGw7MB44FKMeY9F6hWNp8h6HzfntI8/1bj254i1eWj/zVuMY3T90m+vWSvGsTkdrQ71lYtUKzsLxCsTRyXMMb532s+YEv7DxsXsObHUNfGGbth0+bcf1dedcmIrVFK9EHkUOKN4Q7Dp3/0+kj7hs70pa5NzuGfW9kw7KzgyhZlndtIlJ7FCCDQKFYWn+9htevOKHl/sI2QxfwthvyWIO5o7ae8esH865NRGqXAqSOFYqlBsMdt/uwJ39wSPP9LUOtvX25sxnN9m5bECXtedcnIrVNAVKnCsXSths0LL4qHPnX7d4/5AWWuqb7Gs19IoiSJ/KuTUTqgwKkzhSKpaGNLD9r32GPf/OgEXMaGuhY2uHsrOHWfnkQJR151yci9UMBUkcKxdI+mzQuuvLjI+8JpjS9zLuu4dYmcycEUbIg79pEpP4oQOpAoVhaZwjtbfsP//tJBzQ/BPA6cPoQ6/i1mh+KSLkoQGpcoVjad3LTS9ceMeLeTTZpepV213B9k3X8exAlL+Vdm4jUNwVIjSoUS+OG2zvxIc1zT/nQ8EfooOFl4MRpM66/Me/aRGRwUIDUmEKxNBQ4dWrTC/GRI+9pGd/4Bu2u4com6ygGUbJ4rf+AiMgAUYDUkEKxdFCzLbv44OY5m+05/AnaXcOzwKemzcfsrEMAAAhKSURBVLj+trxrE5HBRwFSAwrF0njgsi2GPHv4USPvbl/H3u5wjoubrOOcIErezLs+ERmcFCBVrFAsGXBoi739k+kj7ltvp2HzcI4nzTg+iJJ7865PRAY3BUiVKhRLY8H9ePuh8484YsS9y5vtnQ7gG2Z8W80PRaQaKECqTHbUEY5uePPyw0fcO2broc/iHHPMOCGIkrl51ycisoICpIoUiqWNwP10t2FPHjx9xH3Lh9C+DJhhxsVBlCzPuz4Rka4UIFUgO+o4cnzD6z88cuTdY6YOeRHnmG3GSUGUPJV3fSIiq6IAyVmhWBrfQMfP9h7+WOvBzX/raKTjLaBoxhVqfigi1UwBkqOs+eH1R468e71Nm17BOW4y47QgSp7NuzYRkbVRgOSgUCyNHEL7BR8d/shp+zc/ZMCrwOlmXKfmhyJSKxQgFVYolnYMml5MPj7i3k03blpMu2v4bZN1nBFEyct51yYi0hsKkAo65ou/OePQEQ9fss+wRxuX++aHx0+bcf3v865LRKQvai5AzGwacDUwDngFOM4592S+Va1ZoVhq+uDQp647c52HDluvcQlLXdNVw639zCBKXsu7NhGRvqq5AAF+AvzIOXetmR0LXA58OOeaVuv70bcmH9+ycPZ2Q5/Z5I2OYYvfdY3hFjOuU/NDEal55lztXLM1s/WBJ4BxzrnlZtaIPwqZ6pxb2OXrRgOju718AnAnMMU5N78S9SbnnlV8X9OL322xZY1p+/g/bjbkpTCIkrcq8b1FRMqt1o5AJgLPOeeWA2Qh8ny2fWGXrzsTODeH+gBI43A8cOn2Qznqn8vXbf+/Ze878eRvnn9lXvWIiJRDrQVIT10MXNVt24ojkLJJ49CAo4FLgXXe7hgS37F08wu++q3/eL2c31dEJA+1FiALgE3MrLHLKayNs+3/4pxbDKx0dz4zK2thaRxOBH4MHATcC5y45dd+88iWZf2uIiL5qakAcc69ZGYP4P/KvzZ7nNP1+kelpXHYAJwMXAA0Al8AfqDmhyJS72oqQDKnAleb2Tn4FdzH5VVIGodTgZ8B+wB/Bk4OoiTNqx4RkUqquQBxzj0G7JJnDWkcNuGPNM4HlgEnAVeqDYmIDCY1FyB5S+NwG+DnwE5ACTg9iJLn861KRKTyFCA9lMbhMCACvgosAo4A/ktHHSIyWClAeiCNwx2Aa4AtsscvBFHySr5ViYjkSwHSM+cAo4ADgyj5Q97FiIhUAwVIzxwNLA+i5J28CxERqRY11QurP8xsMjCPCvbCEhGpZw15FyAiIrVJASIiIn2iABERkT5RgIiISJ8oQEREpE8UICIi0ieDaR1IY/Y4odz3BhERqUPPOufau24YTAGyUfZY1rsSiojUqSnA/K4bBtNCwmHAzsALQKVu9rTiNrp7Ac9W6HsOhFqtG1R7Xmq19lqtGypf++A9AnHOLQNmV/J7djlV9mwtrX6v1bpBteelVmuv1bqhOmrXRXQREekTBYiIiPSJAkRERPpEAVJei4HzssdaUqt1g2rPS63WXqt1QxXUPmhmYYmIyMDSEYiIiPSJAkRERPpEAVImZjbNzO42syeyx6k51DDfzB4zsweyjwOy7bua2YNZbbeY2fpdXjPgYz2o8yIzm2dmzsy26rJ9tfuw0mN9qH2V+76a9r+ZjTOzm8zscTOba2YzzWx8HjX2pv611O3M7KEu+33rLq8rZP9NnjKz68xsRDnH1lD/77L3OsfM7jSz7bLtVf/z/h7OOX2U4QO4DTg2+/xY4LYcapgPbNVtWwPwFLBn9nwGcGW5xnpY557AxO71rmkfVnqsD7W/Z99X2/4HxgL7dnl+IfDzStfY2/pXV3f2uQNaVvGaFuCfwNTs+RXAOeUaW8t+X7fL563A32rl5/0976W3L9BHD3YqrI+fGdGYPW/Mno+vcB3zeW+A7Aw83OX5esCSco31td417cNKj/VlX69q39fA/g+BWytdY3/rX1F39vnqAuTjwO+7PN8JeKRcY72o/Tjgvkr/TK9prDf1D5pWJhU2EXjOObccwDm33Myez7YvrHAtvzIzw7dxORuYBDy9YtA597KZNZjZ2HKMOecW9bHuNe1Dq/BYX/+brbTvnXOLqdL9b2YNwGnAjZWusT/1d6t7hdvNrAn4A/B159sYrfQ9gGfw/20p09gamdkVwP74n7uPUqM/77oGUt/2cs5ti/8Lz4Af5lzPYFJr+/4HwBKqv87uutc9yTm3E7A3sAXwtbwKWxPn3EnOuUn4P+ouzLuevlKAlMcCYBMzawTIHjfOtleMc25B9rgMuAzYA/9X0qYrvsbM1gM6sr/0yjHWV2vah5Ue67XV7Huowv1vZhcBU4EjnXMdOdTYp/pXUXfX/f46/prEKvc7/uhhQRnHesQ5dw3wIXw33Zr7eVeAlIFz7iXgAeDobNPRwBznXMVOX5nZSDNbN/vcgKOymu4Hms1sz+xLTwWuzz4vx1ifrGkfVnqst7WvYd9Dle1/M/sWsCNwaBZ2edTY6/pXVbeZjTGz5uzzJuBwOvf7H4Gdu8w0OhX4bRnHVld3i5lN7PK8ACwCavPnvTcXTPTRq4tjmwP3Ak9kj++v8PcPgDnAQ8Aj+P8hN8rGdgfmAk8CfwI26PK6AR/rQa2X4v8Ca8fPallxkXK1+7DSY72pfU37vpr2P7Al/qLz4/hfJg8AN+RRY2/qX13dwG7ZPn8Q+Dv+CKSly+tas9c8lf03GVnOsdXUvgFwT/ZeH8DPhNqhVn7eu3+olYmIiPSJTmGJiEifKEBERKRPFCAiItInChAREekTBYiIiPSJAkRERPpEASIiIn2iABERkT75f/v8xsi9caxAAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 15;\n",
       "                var nbb_unformatted_code = \"# Diagnostic\\nq = np.linspace(0, 1.0, 100)\\nplt.plot(np.quantile(sampled_heights.reshape(-1), q), np.quantile(true_data, q))\\nplt.plot(plt.xlim(), plt.xlim())\";\n",
       "                var nbb_formatted_code = \"# Diagnostic\\nq = np.linspace(0, 1.0, 100)\\nplt.plot(np.quantile(sampled_heights.reshape(-1), q), np.quantile(true_data, q))\\nplt.plot(plt.xlim(), plt.xlim())\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Diagnostic\n",
    "q = np.linspace(0, 1.0, 100)\n",
    "plt.plot(np.quantile(sampled_heights.reshape(-1), q), np.quantile(true_data, q))\n",
    "plt.plot(plt.xlim(), plt.xlim())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### PSMC"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 16;\n",
       "                var nbb_unformatted_code = \"psmc_out = run_psmc(data)\";\n",
       "                var nbb_formatted_code = \"psmc_out = run_psmc(data)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "psmc_out = run_psmc(data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 17;\n",
       "                var nbb_unformatted_code = \"x_psmc = np.geomspace(1e2, 1e5, 100)\\nlines_psmc = [(x_psmc, r(x_psmc)) for r in psmc_out]\";\n",
       "                var nbb_formatted_code = \"x_psmc = np.geomspace(1e2, 1e5, 100)\\nlines_psmc = [(x_psmc, r(x_psmc)) for r in psmc_out]\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x_psmc = np.geomspace(1e2, 1e5, 100)\n",
    "lines_psmc = [(x_psmc, r(x_psmc)) for r in psmc_out]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Combined plot for paper"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/terhorst/opt/py37/lib/python3.7/site-packages/numpy/lib/nanfunctions.py:1392: RuntimeWarning: All-NaN slice encountered\n",
      "  overwrite_input, interpolation)\n",
      "2020-10-21 11:16:47,680 WARNING matplotlib.font_manager MainThread findfont: Font family ['sans-serif'] not found. Falling back to DejaVu Sans.\n",
      "2020-10-21 11:16:47,895 WARNING matplotlib.font_manager MainThread findfont: Font family ['sans-serif'] not found. Falling back to DejaVu Sans.\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1800x675 with 4 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 18;\n",
       "                var nbb_unformatted_code = \"truth = ([1e2, 1e6], [1e4, 1e4])\\nfig, axs = plt.subplots(ncols=3, figsize=(12, 4.5), sharex=True, sharey=True, dpi=150)\\nplot_combined(lines_psmc, lines_xsmc, truth, axs[0])\\n# a.legend()\\naxs[0].set_xlim(1e2, 1e5)\\naxs[0].set_ylim(1e3, 1e6)\\naxs[0].set_title(\\\"Constant\\\")\\nfig.add_subplot(111, frameon=False)\\nplt.tick_params(labelcolor=\\\"none\\\", top=False, bottom=False, left=False, right=False)\\n# plt.xlabel(\\\"common X\\\")\\n# plt.ylabel(\\\"common Y\\\")\\nplt.xlabel(\\\"Generations\\\")\\nplt.ylabel(\\\"$N_e$\\\")\\nplt.tight_layout(pad=1.5)\";\n",
       "                var nbb_formatted_code = \"truth = ([1e2, 1e6], [1e4, 1e4])\\nfig, axs = plt.subplots(ncols=3, figsize=(12, 4.5), sharex=True, sharey=True, dpi=150)\\nplot_combined(lines_psmc, lines_xsmc, truth, axs[0])\\n# a.legend()\\naxs[0].set_xlim(1e2, 1e5)\\naxs[0].set_ylim(1e3, 1e6)\\naxs[0].set_title(\\\"Constant\\\")\\nfig.add_subplot(111, frameon=False)\\nplt.tick_params(labelcolor=\\\"none\\\", top=False, bottom=False, left=False, right=False)\\n# plt.xlabel(\\\"common X\\\")\\n# plt.ylabel(\\\"common Y\\\")\\nplt.xlabel(\\\"Generations\\\")\\nplt.ylabel(\\\"$N_e$\\\")\\nplt.tight_layout(pad=1.5)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "truth = ([1e2, 1e6], [1e4, 1e4])\n",
    "fig, axs = plt.subplots(ncols=3, figsize=(12, 4.5), sharex=True, sharey=True, dpi=150)\n",
    "plot_combined(lines_psmc, lines_xsmc, truth, axs[0])\n",
    "# a.legend()\n",
    "axs[0].set_xlim(1e2, 1e5)\n",
    "axs[0].set_ylim(1e3, 1e6)\n",
    "axs[0].set_title(\"Constant\")\n",
    "fig.add_subplot(111, frameon=False)\n",
    "plt.tick_params(labelcolor=\"none\", top=False, bottom=False, left=False, right=False)\n",
    "# plt.xlabel(\"common X\")\n",
    "# plt.ylabel(\"common Y\")\n",
    "plt.xlabel(\"Generations\")\n",
    "plt.ylabel(\"$N_e$\")\n",
    "plt.tight_layout(pad=1.5)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Recent growth"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Perfect data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 19;\n",
       "                var nbb_unformatted_code = \"de = [\\n    msp.PopulationParametersChange(time=0, initial_size=1e6),\\n    msp.PopulationParametersChange(time=1e3, initial_size=5e3),\\n    msp.PopulationParametersChange(time=2e3, initial_size=2e4),\\n]\";\n",
       "                var nbb_formatted_code = \"de = [\\n    msp.PopulationParametersChange(time=0, initial_size=1e6),\\n    msp.PopulationParametersChange(time=1e3, initial_size=5e3),\\n    msp.PopulationParametersChange(time=2e3, initial_size=2e4),\\n]\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "de = [\n",
    "    msp.PopulationParametersChange(time=0, initial_size=1e6),\n",
    "    msp.PopulationParametersChange(time=1e3, initial_size=5e3),\n",
    "    msp.PopulationParametersChange(time=2e3, initial_size=2e4),\n",
    "]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 20;\n",
       "                var nbb_unformatted_code = \"true_data = np.array(\\n    [\\n        next(sim.trees()).get_time(2)\\n        for sim in msp.simulate(\\n            num_replicates=10000, demographic_events=de, sample_size=2, Ne=1\\n        )\\n    ]\\n)\";\n",
       "                var nbb_formatted_code = \"true_data = np.array(\\n    [\\n        next(sim.trees()).get_time(2)\\n        for sim in msp.simulate(\\n            num_replicates=10000, demographic_events=de, sample_size=2, Ne=1\\n        )\\n    ]\\n)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "true_data = np.array(\n",
    "    [\n",
    "        next(sim.trees()).get_time(2)\n",
    "        for sim in msp.simulate(\n",
    "            num_replicates=10000, demographic_events=de, sample_size=2, Ne=1\n",
    "        )\n",
    "    ]\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(100.0, 100000.0)"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEBCAYAAACXArmGAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO3deZwcdZ3/8ddnziQECAkJCAECmIPTkGAwgIiKB2ptq2gpIi4qP0EQN7ulP5X1yK4Huyvtsq6RY/25ICpaoFjbLCgGyRLlEMYEhAUCSgI5kNwJyWTO7++Pquk0nTl7eqZqZt7Px6MfNf2t6m99umu6P/09qtqcc4iIiADUpB2AiIhkh5KCiIgUKSmIiEiRkoKIiBRlLimYWZ2ZzTCzurRjEREZazKXFIDpwHPJUkREhlEWk4KIiKRESUFERIqUFEREpEhJQUREipQURESkaEinfZrZJYAP1AJvcc61DeX+RGT0aWpqagAuBt4NHARYuhGlygFbgV8A35s/f35rtXcwZEnBzI4ETnLOvXmo9iEiY0IeaAU+Crw4f/78jpTjSU1TU1MtcCjwd8SvyxXV3sdQthTeCuxnZr8B7nPOLR7CfYnI6LUAOGv+/PktaQeStiQhrmtqaroSuG8o9tGvpGBmVwPnATOIv/0/npTPAm4CpgCbgY84555JHjYNcM65N5nZTWY21zm3sqzeScCkst1NB/jrv/7r48MwvLGbcK70ff/+MAxPB77RzfpFvu+vDMPwHOCL3ay/xPf9p8Mw9ICgm/UX+r7/QhiGHwA+2c369/m+vykMw4uAi7pZ/w7f93eHYXgZcdfZK/i+fzZAGIafAd5VtrrZ9/1zk/VfAspbWZt93z8vWX8VsLBs/Vrf9z+crL8GmFu2fpXv+59I1t8AzCpbv9L3/UXJ+h+y7wmED/i+/4Vk/c+Ij3upe3zf/2r5cxYZpFolhFeaP39+S9JqqLr+DjT/AjgLWFNWfh2wxDk3C1gCXF+ybjvwP8nf9wGzu6l3EfHZy6W35f2MSUREqswG8iM7ZrYaeJdz7nEzmwasAqY45zrMrJa4tTDTObfRzOYBH3LOfcbMrgFucc49VFZfTy2F5cDRzrnVlT4xSUcYhncBdLV4RAarqanpkfnz55+adhxdzOwhoBFoIG5tP56sWuGc++gA6vkYcdf6s8n9i4FznHMf7M/jh+p1GcyYwhHAOudcB0CSGNYn5Rudc38ws4+Y2TJgVXlCSB6zDdhWWmY2licWjArj0w5AZCg5504DMLMZwCPOufJuWpL1tV2fjz34GLAeeLbaMQ7GkE5Jdc4tGsr6RWRsCsNwWXfFvu9/NwzDCcCd3ay/0ff9G8MwPBi4rZv11/q+/9NKYzKzc4BvAn8EXgN83sz+Hviac+6XyTa/Bb5G3CMyF1hiZjuBv02qOdDMbgWOB7YA5znnXqo0pkoM5uS1F4DDk24jkuVhSfmAmNliM3Nm5ojHFURERqKTge84517jnLurp42cc98DVgKXO+fmOufuTVYtABY5504gbkFcPuQRl6m4peCce8nMVgLnAz9MliuccxsrqGsxsBiKTTIlBhHpUdcsvh7W7QZ6W7+pt/WD9KRz7veDePxy59y65O8HgddXIaYB6e+U1G8D7yU+aWKpmW1OMtmlwE1m9mXis+w+MmSRykhxR9oBiKTo5bL77byyR2ZcH4/fU/J3B0Pcxd+dfu3QOfdp4NPdlD8FnFbtoGTk8n3/6rRjEMmQZ4HXAnea2UnASSXrdgAHphJVLzJxQTyNKYjIKPVPQM7MHiO+NMWjJeuuB/7RzFaa2RtTia4bAzpPYTiUjCnoPIURqGtWSG99viIDkbXzFLJiqF6XTLQUREQkG5QURESkSElBRLKus6mpqT7tILIkeT06h6LuTCQFDTSLSC82AMelHUTGHEf8ulRdJpKCc26xc86ccwYcnXY8MihhchOpliXAN5uamk4e6y2Gpqam+qamppOJL6exZCj2odlHIpJ5TU1NbyW+5MOryMiX2ZR0ErcQlsyfP//uodiBkoJUVXIxsq5LDYjICDPsp1DLqNd1dcqz0wxCRCozlpthIiJSJhNJQbOPRESyIRNJQbOPRESyIRNJQUREskEDzVJtN6YdgIhUTlNSRUSkSN1HUlVhGB6c/DC6iIxA6j6SarstWZ6dZhAiUplMtBQ0JVVEJBsykRQ0JVVEJBsykRRERCQblBRERKRIA81SbdemHYCIVE7nKYiISJG6j6SqwjA8IgzDI9KOQ0Qqo+4jqbabk+XZaQYhIpXJREtB5ymIiGRDJpKCzlMQEcmGTCQFERHJBiUFEREp0kCzVFs+7QBEpHI6T0FERIrUfSRVFYbh7DAMZ6cdh4hURt1HUm3XJ8uz0wxCRCqjloKIiBQpKYiISFEmkoLOaBYRyYZMJAWd0Swikg0aaJZq+1raAYhI5XSegoiIFGWi+0hGjzAM54ZhODftOESkMuo+kmq7JlmenWYQIlIZtRRERKRISUFERIqUFEREpEhJQUREijTQLNV2ZdoBiEjldJ6CiIgUqftIqioMw9PDMDw97ThEpDLqPpJq+0ayPDvNIESkMmopiIhIUSaSgi6dLSKSDZlICrp0tohINmQiKYiISDZooFmqbVHaAYhI5XSegoiIFKn7SKoqDMNzwjA8J+04RKQy6j6SavtislyaahQiUhG1FEREpEhJQUREipQURESkSElBRESKNNAs1XZJ2gGISOV0noKIiBSp+0iqKgxDLwxDL+04RKQy6j6SaguSZSHVKESkImopiIhIkZKCiIgUKSmIiEiRkoKIiBRpoFmq7cK0AxCRyuk8BRERKRqy7iMzm2FmG8xsmZn9YKj2I9kShuEHwjD8QNpxiEhlhrr76L+dcxcP8T4kWz6ZLH+aahQiUpGhHmh+m5ktN7MLhng/IiJSBf1KCmZ2tZk9Z2bOzE4sKZ9lZg+Y2apkObPkYRuA2cBbgUvMbEo39U5KupmKN2D6oJ6RiIhUrL8thV8AZwFrysqvA5Y452YBS4Dru1Y451qcc7udc83AcuDYbupdRDyoXHpbPqBnICIiVdOvpOCc+61z7oXSMjObBswDbkmKbgHmmdnUZP3EZGnAqcArHp+4Bji67Pb6gT8NERGphsEMNB8BrHPOdQA45zrMbH1SvhE43cy+AbQBtznnNpRX4JzbBmwrLYtziIxg70s7ABGp3JDNPnLO3Q3cPVT1Szb5vr8p7RhEpHKDmX30AnC4mdUCJMvD6L6bqFdmtjgZxHbE4woyQoVheFEYhhelHYeIVKbipOCcewlYCZyfFJ0PrHDObaygrsXOOXPOGfG4goxcFyU3ERmB+jsl9dtmtpZ4uuhSM3siWXUpcIWZrQKuSO6LiMgI1a8xBefcp4FPd1P+FHBatYMSEZF06NLZIiJSlImkoIFmEZFsyERS0EDzqPKO5CYiI5B+T0FERIoy0VKQ0SMMw8vCMLws7ThEpDJKClJtfnITkREoE0lBA80iItmQiaSggWYRkWzIRFIQEZFsUFIQEZEiTUkVEZGiTLQUNNAsIpINailIVYVh+BkA3/evTjsWERm4TLQUZFR5V3ITkRFISUFERIqUFEREpEhJQUREivr1y2siA9CcdgAiUrlMzD4ys8XAV8qKNftIRGSYZSIplNKUVBGR9GhMQaoqDMMvhWH4pbTjEJHKKClItb05uYnICKSkICIiRUoKIiJSpKQgIiJFOk9Bqm1z2gGISOUyMSVV5ymIiGRDJpJCKZ2nICKSHo0pSFWFYXhVGIZXpR2HiFRGYwpSbQvTDkBEKqeWgoiIFCkpiIhIkZKCiIgUaUxBqm1t2gGISOU0JVVERIrUfSQiIkVKClJVYRheE4bhNWnHISKVyURSMLPFZubMzBF3HcnINTe5icgIlImk4Jxb7Jwz55wBR6cdj4jIWJWJpCAiItmgpCAiIkU6T0GqbVXaAYhI5XSegohIL7wgmg5cBnyzkM9tTTueoabuIxGR3gXAF4DlXhCN+t4VJQWpqjAMbwjD8Ia045CB84Koxgui070gmj9M+7Ph2ld/eUF0hhdEl5cVn5ssTwBO8YLo8GEOa1gpKUi1zUpuI4oXRHVeEB3rBdGYfE94QXQWcbft74D7vCAajqnhVwCPeEH02j5is2GIBS+ITgN+C3zHC6JZSdmrgdnAPyeb/R2w1guij/ezzileEE0diniHyph8A4h08YKoIXmDPw08C2z0gug2L4guS/qSR4Xekp0XRPsDNwPtwCeBTuA/hvLD2AuiSez9XfYze9nuWuDpwSZrL4je7QXR8mS/PXlLyd/vT5ZvTpbfJ06aH0zuX9nP1+e/gJe8IPrYgAJOkZKCjEleEDV6QXQJ8Wyp7wFbgL8hfhMvAJYAz3lBdJMXRCemF2nlkm+p93hBtAXY5QXRqT1sehVwBPDhQj53HfB/iT8M391L3VO9IGrygujcnrbpwxXAQcAO4LQe9nEecCkwE3h1N+vHl91/rRdEl3tBdEhZ+Tjg34mTz5d7ielYYAPwAPCepOyNwHrgGWBZybbHEHcn9cgLognA6cndzw1Fkk264OqrWaeSgowpSb/5ZcRv8uuAF4F3AAsK+dy3C/ncR4GjgDnEieF9wB+9ILoj6WKpZiyTKvmg8ILoEC+IPugF0YF9bPoJ4E1ACGwHrvWCqLasrg8BlwP/VsjnHkiK/wP4M/B5L4jGe0F0UDd1nw3MA37mBdHreol1oRdE/9HNNguBR4FfUZYUkg/31cTfzluT4gVl27wD2OkFUemH/PXAd4B82b4+CUwHVgCXekF0QA/hHkvcWvwVMM8LosnJ87y3kM854KvJdvcny2N6qKdL13jJXcRdqsf1sX2fvCCq94KooaToH4HnvSDab7B1dxn1I+ky7FamHUAfLib+sP8d8HFgafKGL0ruPw0s8oLoq8TTET8N/I8XRJ9Mvk0PWPJmvhjwgeOBqcC9XhC9rZDPtfWzjsnAb5LH7/GC6CfA5YV8bnfZdrXAJcBvCvncpV4Q3Qf8iPgb+jVJMroQuAG4D/hcyfNv94LoX9ibNA/wgugFYH4hn9uYbLaA+AN7G/D3gNdNrMcDy4FaIOcF0amFfO75ZPXxxMfgD8D7vSA6FPgx0EHcatmf+Bv6hcTf0BcAP0zqNeBrSb3/4AVRRPw7Hl3X3JpTEsN44Erg18SthAeAm70g+mAhn2tOuqU+AfyUOCncDdwLLE6e1yHAncnr8pwXRNOS2P4EHFr+nMt0JcLPA28DPpL8Xf46vQk4Efj38v/FZP3riFsutcnrsQJ4uxdEpxDPiqol/p/6zz7i6RedpyCjVhiGVxF/Iy1au7XmuHtX1W8GTrjwtJZ/Zd+L963yff8TyeNvIBk073TUbN1tJ27caRMfXlM/q5DPrQ7D8IfE30CLNr1sf7nriYY/A23vPLH1vMY6V1tbQ0uno2FXi81Yt61m3B/X1z0KPPLOE1vPae3gqPH1rD1wvPtTUsUdNz/U+C3goAtPa/lZad2djppH19Ye/vj6uunj6t2itxzX9sU9bRzWUMumgya4Jyxuc9zo+/6NH/3K7R865Yj2Hx0wzj0xoYFNzsHW3Xby4+trD1qzpfa/Jza6mQuPaZtVV8OOgya4x2tr6EpKed/3C9+76daTWtp52Iz2hlo27W7jqP0b3dP7NfIp3/eXfuwrtz9y6lHts2praG7r4MBp+7sHk8df6fv+/WEYnr692X66p43DDxzvHt3ebCfVGK3tnbxz6VMNDx96QOfO1x3d9lxDLdu3Ntvcxjpeamln2kPP1bFjT037aTPavjHrkM43AGzeZXOdo+bgie4PwIU3P9T4mqMmdxROOaL9z7ta7ZgJDW51XQ27d+yx45c/W//4njabfuFpLX8LXNTcysHb99gJk8a7xxrr2PqTRxoOae+0OWe+uu0HR0/pPGpPGwdta7aTG2rZ0trB5F8/2fAl4JsnvKp9+2GTOhsNOqfu735XY3QCzb7vn+sFUf1Jh7W3HjO1Y/UB41hTcog2+75/Xtf/3uZddklnJ+Om7u9+v2WXnbBjjx2w/Nn6SYV8rjm5kvBc52DTy7agwzG+1njgl//bcAZwyocXtFxqxqyOTuo2vWwLAduyu8YeWVP3AnDEeae03NXcZgs7OtnPoN2MtoMnuu/6vv+F/rw3epOJ7iNdJVWGQ3snDa0dTAN+0t03st7UGJ0HjnNPJ3dv6K7bZ3cr017cUeMDnwW+uLPFjt/ZYrO3NdvJO/bYHDM6DpvUeTNwSiGfu3jyfu7JcfWsb25jenMrB5dUtQT4y7bdNqu9k8auwh3Ndmxrux0NXPD+ea03TRrvnpnY6J5t7eDg7c020zmKMe1qsY/VGK3j69kMYAYHTXB/nDTe3QacZbit+ze6p6bs51aUJISiA8a71ikT3e+n7Oce2X+cW11jtLZ22GSIWyEdnRxXV8vOuhr3cqejsbPzlb0Om162A1vaObShjk3j6tk+aYJ7rNMx7okNdVeQfJOvq2F3fR07DWhpZ1ptDbuPO7TjTcBhsw7pfKSrrvoatrd3sv/GnbbgvmfqFgKfq63hpYmNrK2vYUdLm71qd6sdVWO0NdS624FJD6+u/fLW3XbcnnabWmO0NdaxzQzeMLNtAdC8q8VmbdttM3e12pEArR1MTnb3p0I+1zKhwa0EaKzjpSQhFBXyubaaGnZ3dlrx2LR1MG7jy/YaL4j294Ko/k8ba97d1sFBjXVsBJjQ4DZ0OhqAs7wgOnTt1pozd+5heks7kzoc42uMtu3NdirwUaBpW7PNAGhuY5qDmoMmuD/MPqTj28Qtih2bd9W8tq2DSePr3bpx9W59eycH7NxDVWY5qaUgVZV8e8b3/Q+nHUs5L4j+BrgGmFPI557ua/se6riM+EP744V87vsl5e8CbifuEjk36ZpoAA4jHqOoJ+7K6Syrr5G4+2YOcf//JGAp8DBxK6aTuNvh98TjIDcU8rnLy+r4Z+LB4WXABcDJxP3YVxbyuasqeZ7dPO/vE3dhTCVuPT0BXAS8RNy9clYhn1vuBdFE4jGJtwITgTcU8rkHkzquJp7SuQT4FMlx8IJoRfJc31/I527rZt+nJq8HwAvE3UtfKORz/+QF0UL29vF/AXiK+Dh02Q7cUcjnPlxS36+Bc0q22QF0jTPMK+RzK5KZZ1cBQSGfe6mbmB4j/px6D2DEXVT/CPyCuPvp35JNZxfyuVXJDK9txOMSC9h77gPEg9ufB24qKbuzkM+90wuiB5LX8eSuLzLJeRTfSbabmTzHF4GrCvncF8tjHSiNKUi1ZWIaZxiGPwPoas4nPgA8WmlCSFyX1PMtL4h+Wcjn1ntB9EbgNuK+3r8q5HPNAIV8rhVYndy6VcjnWrwgej9xYvgN8QfUM8AbiPuzf0I8O2oZcYLY50O+kM99zguiJ5LYngF2EY+JfGsQz7PcncTfYs8AZiRlDxN/IEGciJYT99t/kHh84JuFfK50jOmrwPnECWEHcb88wK3ARuDnPey7ifi1PYU4IUA8PkIhn3sg6XNfQPw6lc9SOjB5fKkH2JsUvgP8a0ksTyf1riXuv+/JBuBVxAlgHvGgOcC7kvKHgdO6PsgL+dxOL4geJ25FTgA+QzyofRHxMX2SvUnhN8RjBmcTj0t8tqxl+13iLxAHFPK5ZwGSMSMfUFIQ6cGU0jteEB1FPL5w5WAqLeRznV4QXQw8BjzoBdFW4m9rzxK3EHZUUOfzXhCdSTwYOof4W3czsNoLog8m+/KAJcmHVXd1/MALovuBfyD+9vq+Qj7XUsFT7MldxMnmAuIB5peJP0A7iafznuwF0bHA3wLfL+Rz+5zcVcjntntBdAHxh9+lhXyuPSn/BvCNnnacfCDOSz78fw78oJDPvVCy/iHgIQAviP7cTRUryu7/EPgS0FLI565IHtdV127650niKcxdzkiWdcSzqb7VTRflb4mTJ8C1yb6irpVeEH2L+HX9IfFU6XuJX98flVZSyOecF0TvK6v7dva2TgZFSUHGCj9Z/nSwFRXyuWe8ILqQePbSHuKunS8X8rnNg6hzbdIVMrOQzz1cUr7aC6JPEM+G+ac+6ngWuMALoprybqrBKuRzu7wg+jnx67gGaCrkcx0AXhD9gfhD8fPEs4d6/LZayOeWEXenVRLDg8TdcX3F+SLxzKD/A3ydspZC0p3zceIP9i6fY2Cfh/exNyk8yb7TTR/q5jFXEZ8Ud113yaeQzwVdfyctvxOAWwr53IZuti1POD8jboUMmpKCjBUfAB4p5HPdfZMcsKTve5/+70HWuY29feel5T8h7kbqbz1VTQglbibuUjkZuLp0l8TfUo8nbs3s8yE2zE4EjizkcyuIu5T2UToelNz/lwHu475keTPxl4J/Z28XF3STFJLEPx32HdjvxieJX+tF/QmmkM+t84LoyP5s2xclBam2B/reZHh58fVr5lOlb1Jj2D3EA7lzeOW3758T98s/TDfz8Idb0mKruNXWz31sSj7gNwAOWEd8wl/XGMrzPTyutbvybrZbTjxGM5CYqjJrSElBqqoa86Sr5J6Sv7u6jsI0AhktkvGU1xOPG9xRUr7Wi692+qdCPrcrtQCHWSGfW1dy9/aSacqbqvUBnQZNSZVRzwuiR4FdhXzu9D43FhkEL77i6/OFfO4vacdSKbUUpKp6mAqaGi+I5hD3gferb1ZkMEonCYxUSgpSbVP63mTohWF4V/xX4/3Efb63phmPyEihpCCjVddllecDTxXyufVpBiMyUmTi2kciQ2gOr5yPLiK9UFKQUSu5QNyriadRikg/qPtIqu2evjcZHu2djCe+1rxaCiL9pKQgVeX7/lf73mpY3LFxp50IvBa1FET6Td1HMir5vn/1PU83dF0NdTBXRRUZU5QUpKrCMLxr73TQ1M0B1hXyuZ1pByIyUigpSLWNZ+900NSEYbjs3BNa34O6jkQGRElBRiXnoKOTCWiQWWRAlBRkVOpwNLh45pFaCiIDoKQgo1J7BxOSP5UURAZgyJOCmS0ys6VDvR/JjDsouaxyWto7lRREKjGk5ymYWT0wdyj3Idni+/7VfW819J7fUrvu5RY7EtA1j0QGYKhbChcCtwzxPkT20fR8XdvTf6n940j+sRORNPQrKZjZ1Wb2nJk5MzuxpHyWmT1gZquS5cySdTXA25xzv+ql3klmNqP0Bkyv/OlI2sIwXBaG4bK046irccfX17pVacchMtL0t6XwC+AsYE1Z+XXAEufcLGAJcH3JuvcC/9VHvYuIf2Wt9Dag3yUVKecF0f5vnN12+DtPbF2YdiwiI02/koJz7rfOuRdKy8xsGjCPvd1DtwDzzGxqcn82cJGZ/RKYa2YXd1P1NcDRZbfXD/hZiLzSLIC6GnanHYjISDOYgeYjgHXOuQ4A51yHma1Pyjc6574OfB3AzJY6575XXoFzbhuwrbTMzMo3ExmoOQB1tUoKIgM1LOcpOOfOGY79iCTmGFBXQ3PagYiMNINJCi8Ah5tZLUCyPCwpHxAzW5wMYjvicQUZucLklqY5NUazGZp5JDJAFScF59xLwErg/KTofGCFc25jBXUtds6Zc86IxxVkhPJ9/7u+73+3674XRLUphHHM81trngFuTGHfIiNaf6ekftvM1hJPF11qZk8kqy4FrjCzVcAVyX0Zw8IwnBCG4QQAL4gmAtu8IHrrMIdx8P9uqFvp+/6Nw7xfkRGvv7OPPu2cm+6cq3POHeqcOyEpf8o5d5pzblay1I+ZyJ3JDaAdmAicNswxTJ7Y6HaFYXjwMO9XZMTLxAXxNKYwOhXyuT3Ai8BRw7VPL4gagInnzGk9F7htuPYrMlpkIiloTGFUWwPMGMb9TQYwo20Y9ykyamQiKciotpphbCmQJIUaJQWRiigpyFBbAxzpBdFw/a9NAagx2odpfyKjypBeOlvGpBvL7q8GGoBDGZ7LWKulIDIImUgKZrYY+EraccjgdTMNtOsiikcxPElhCsDOFrtxSt3Az5kRGesy0X2kgebRIwzDg8umgq5OljOGKYTJAHc+3nCT7/s/HaZ9iowamUgKMqrcxiungpa2FIbDFKD9Q69tmRSG4RHDtE+RUUNJQYZUIZ/bBWxieFsKW2pruBm4eZj2KTJqKCnIcFjD8LYUNg/TvkRGnUwMNMuotwY4rhoVeUE0D/gocGUhn9vZzSaTgS3V2JfIWJSJloIuczHqrQZmeEE0qF9Q8oLoXOA+4FPAJ3rYbDJqKYhULBNJQbOPRpVrk1upNcB4oOIL1HlBtBAoAM8ADwGLvCCq72bTKailIFIxdR9JVfUwDXR1spwBVHrugA+0AWcDZwJ3JGU/Ktuuq6Xw8wr3IzKmZaKlIKNHGIZHdDMVtDgt1QuiWi+IKvky8mbgd4V8bjtwF/Ak8JnSLikviMYBE4Atvu8XfN8vVLAfkTFNSUGqrbupoF1J4bPAOuBxL4j26Sb0gmi8F0Rf8oLozWXl04CTgHsACvlcJ3A1MBd4U8mmk5PlljAMZ4dhOHuwT0ZkrDHnsvUztmY2g3iw+Wjn3OpUg5EBC8NwGfGH9cqkKO/7fuHDX7z9L6fNaJ9aX8uWtg4ONMNNGu8ea6jj877vL/2Xa297+8RGd2t7JxMBGuvYeMA490xtDZ+9+aHGI6dO7LzljbPb/tBYx04A57CNL9vCFS/U/f7/LX7PmWEYntPSxje3NtvcA8e5x8c3cASw0vf9s9N4HURGqky0FDT7aFT5MXsTQtHxr+p4/8ET3QOT93OPT97PrQA6t+62uU+9WDPPC6I3PrGh9scdnYw/cJx7YkKDW93azsE79tirk4e/2YyXG2opTkE1w42vd2vbOjjDC6LXALR0MAmgoY7tSQw/HvJnKzLKqKUgqfCC6HDisYHjAANWAe8u5HOrkvX/ClwOLCQeVH6okM+9u6yOycCzQCvwXuAqYGIhn5s/XM9DZLTJREtBxp5CPrcOeD3x7zmHwOu6EkLiu0A98CCwH/EHfnkdW4AzgJ3AUuIE8puhjVxkdFNLQTLLC6ICcDrw9kI+93Av200DlhG3Ot5ZyOfuHJ4IRUYftRQkyz4AHNNbQgAo5HMvEc9C+hRw93AEJjJaqaUgIiJFav6CfK0AAAQHSURBVCmIiEiRkoKIiBRlIinoPAURkWzQmIKIiBRloqUgIiLZoKQgIiJFSgoiIlKUxR/ZqU2W080G9euNIiJj0VrnXHulD85iUpiZLJenGoWIyMj0GuCxSh+cxaTw52T5BuD5NAMhmQWVgfr6+7j+bNfXNj2t72/5dOKE/npgbR+xDLVqHr+hPnb93ba3bQa6rruyrBy/kfbe68+2w/Xe29V7mL3TlNTeY3HOuar1YVVaX38f15/t+tqmp/X9LR+tx2+oj11/t+1tm4Gu66FsBhk4fiPtvdefbUfKe08DzSIiUqSk0Lt/yEh9/X1cf7bra5ue1g+0PAuqGdtQH7v+btvbNgNdN1aO3WDqq+bxGxHvPXUfSVXp+I1sOn4j12juPtpGnAG3pR2IVETHb2TT8Ru5qnLsMtdSEBGR9GSxpSAiIilRUhARkSIlBRERKVJSEBGRohGTFMzsTDN70MzuN7Mg7XhkYMxsgZn9Ljl+X0s7Hhk4M1tkZkvTjkMGxsxmmNkGM1tmZj/oa/ssXvuoJ38GznLOtZrZvWZ2rXNud9pBSb+tcM6dAWBm95jZAc65HWkHJf1jZvXA3LTjkIr9t3Pu4v5sOGJaCs659c651uRuB9CZZjwyMM65NgAzqwXWA0roI8uFwC1pByEVe5uZLTezC/raMJWkYGZXm9lzZubM7MSS8llm9oCZrUqWM7t57FuAPznn9gxr0FJU6fEzsw8BTwLbBnO9d6lcJcfOzGqAtznnfpVK0FJU4XtvAzAbeCtwiZlN6W0fabUUfgGcBawpK78OWOKcmwUsAa4vXWlm04EvABpTSFdFx88592NgDnCYmZ00HIHKPio5du8F/mt4wpM+DPj4OedanHO7nXPNxJfWPrbXPTjnUrsBq4ETk7+nEZ+eXZvcr03uT03uNwJLgdlpxqxb5cev5HE3AjPTjn8s3wZ47P4e+DXwS2ATcHHa8Y/12wCP38RkacCvgFf1VneWxhSOANY55zoAkuX6pBzgQ8DxwPXJKPrh6YQpPejr+P1VctzuI/65wGdSilP21euxc8593Tn3Fufc24GVzrnvpReqdKOv997pZvYIcD9wt3NuQ2+VjZjZR865/wT+M+04pDLOuVuBW9OOQwbHOXdO2jHIwDjn7gbu7u/2WWopvAAcnsxO6ZqlclhSLtmn4zdy6diNbFU9fplJCs65l4CVwPlJ0fnEc9s3pheV9JeO38ilYzeyVfv4pXLpbDP7NvGMhkOJB642O+dOMLM5wE3AQcBW4CPOuaeHPUDplY7fyKVjN7INx/HT7ymIiEhRZrqPREQkfUoKIiJSpKQgIiJFSgoiIlKkpCAiIkVKCiIiUqSkICIiRUoKIiJSpKQgIiJF/x+LYnSDxr/stAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 21;\n",
       "                var nbb_unformatted_code = \"x, y = kde_ne(true_data)\\nplt.plot(x[::50], y[::50] / 2)  # downsample the curves to make plotting faster\\ntruth = ([0, 1e3, 2e3, 1e5], [1e6, 5e3, 2e4, 2e4])\\n\\n\\nplt.plot(\\n    *truth, \\\"--\\\", color=\\\"darkgrey\\\", label=\\\"Truth\\\", drawstyle=\\\"steps-post\\\",\\n)\\nplt.xscale(\\\"log\\\")\\nplt.yscale(\\\"log\\\")\\nplt.legend()\\nplt.xlim(1e2, 1e5)\";\n",
       "                var nbb_formatted_code = \"x, y = kde_ne(true_data)\\nplt.plot(x[::50], y[::50] / 2)  # downsample the curves to make plotting faster\\ntruth = ([0, 1e3, 2e3, 1e5], [1e6, 5e3, 2e4, 2e4])\\n\\n\\nplt.plot(\\n    *truth, \\\"--\\\", color=\\\"darkgrey\\\", label=\\\"Truth\\\", drawstyle=\\\"steps-post\\\",\\n)\\nplt.xscale(\\\"log\\\")\\nplt.yscale(\\\"log\\\")\\nplt.legend()\\nplt.xlim(1e2, 1e5)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x, y = kde_ne(true_data)\n",
    "plt.plot(x[::50], y[::50] / 2)  # downsample the curves to make plotting faster\n",
    "truth = ([0, 1e3, 2e3, 1e5], [1e6, 5e3, 2e4, 2e4])\n",
    "\n",
    "\n",
    "plt.plot(\n",
    "    *truth, \"--\", color=\"darkgrey\", label=\"Truth\", drawstyle=\"steps-post\",\n",
    ")\n",
    "plt.xscale(\"log\")\n",
    "plt.yscale(\"log\")\n",
    "plt.legend()\n",
    "plt.xlim(1e2, 1e5)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### XSMC"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 22;\n",
       "                var nbb_unformatted_code = \"data = sim_data(de)\";\n",
       "                var nbb_formatted_code = \"data = sim_data(de)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data = sim_data(de)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 23;\n",
       "                var nbb_unformatted_code = \"sampled_heights = parallel_sample(data)\";\n",
       "                var nbb_formatted_code = \"sampled_heights = parallel_sample(data)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sampled_heights = parallel_sample(data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 24;\n",
       "                var nbb_unformatted_code = \"lines_xsmc = parallel_kde(sampled_heights)\";\n",
       "                var nbb_formatted_code = \"lines_xsmc = parallel_kde(sampled_heights)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "lines_xsmc = parallel_kde(sampled_heights)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### PSMC"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 25;\n",
       "                var nbb_unformatted_code = \"psmc_out = run_psmc(data)\";\n",
       "                var nbb_formatted_code = \"psmc_out = run_psmc(data)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "psmc_out = run_psmc(data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 26;\n",
       "                var nbb_unformatted_code = \"lines_psmc = [(x_psmc, r(x_psmc)) for r in psmc_out]\";\n",
       "                var nbb_formatted_code = \"lines_psmc = [(x_psmc, r(x_psmc)) for r in psmc_out]\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "lines_psmc = [(x_psmc, r(x_psmc)) for r in psmc_out]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Combined plot for paper"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1800x675 with 4 Axes>"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 27;\n",
       "                var nbb_unformatted_code = \"plot_combined(lines_psmc, lines_xsmc, truth, axs[1])\\naxs[1].set_title(\\\"Growth\\\")\\nfig\";\n",
       "                var nbb_formatted_code = \"plot_combined(lines_psmc, lines_xsmc, truth, axs[1])\\naxs[1].set_title(\\\"Growth\\\")\\nfig\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_combined(lines_psmc, lines_xsmc, truth, axs[1])\n",
    "axs[1].set_title(\"Growth\")\n",
    "fig"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Zigzag"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 28;\n",
       "                var nbb_unformatted_code = \"import stdpopsim\\n\\nspecies = stdpopsim.get_species(\\\"HomSap\\\")\\nmodel = species.get_demographic_model(\\\"Zigzag_1S14\\\")\\nde = [\\n    msp.PopulationParametersChange(time=0, initial_size=14312)\\n] + model.demographic_events\";\n",
       "                var nbb_formatted_code = \"import stdpopsim\\n\\nspecies = stdpopsim.get_species(\\\"HomSap\\\")\\nmodel = species.get_demographic_model(\\\"Zigzag_1S14\\\")\\nde = [\\n    msp.PopulationParametersChange(time=0, initial_size=14312)\\n] + model.demographic_events\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import stdpopsim\n",
    "\n",
    "species = stdpopsim.get_species(\"HomSap\")\n",
    "model = species.get_demographic_model(\"Zigzag_1S14\")\n",
    "de = [\n",
    "    msp.PopulationParametersChange(time=0, initial_size=14312)\n",
    "] + model.demographic_events"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Perfect data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 29;\n",
       "                var nbb_unformatted_code = \"true_data = np.array(\\n    [\\n        next(sim.trees()).get_time(2)\\n        for sim in msp.simulate(\\n            num_replicates=10000, demographic_events=de, sample_size=2,\\n        )\\n    ]\\n)\";\n",
       "                var nbb_formatted_code = \"true_data = np.array(\\n    [\\n        next(sim.trees()).get_time(2)\\n        for sim in msp.simulate(\\n            num_replicates=10000, demographic_events=de, sample_size=2,\\n        )\\n    ]\\n)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "true_data = np.array(\n",
    "    [\n",
    "        next(sim.trees()).get_time(2)\n",
    "        for sim in msp.simulate(\n",
    "            num_replicates=10000, demographic_events=de, sample_size=2,\n",
    "        )\n",
    "    ]\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(100.0, 100000.0)"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 30;\n",
       "                var nbb_unformatted_code = \"x, y = kde_ne(true_data)\\nplt.plot(x[::50], y[::50] / 2)  # downsample the curves to make plotting faster\\n\\nf = plot_de(de, 14312)\\nx_zz = np.geomspace(1e2, 1e6, 1000)\\ntruth = (x_zz, f(x_zz))\\n\\n\\nplt.plot(\\n    *truth, \\\"--\\\", color=\\\"darkgrey\\\", label=\\\"Truth\\\", drawstyle=\\\"steps-post\\\",\\n)\\nplt.xscale(\\\"log\\\")\\nplt.yscale(\\\"log\\\")\\nplt.legend()\\nplt.xlim(1e2, 1e5)\";\n",
       "                var nbb_formatted_code = \"x, y = kde_ne(true_data)\\nplt.plot(x[::50], y[::50] / 2)  # downsample the curves to make plotting faster\\n\\nf = plot_de(de, 14312)\\nx_zz = np.geomspace(1e2, 1e6, 1000)\\ntruth = (x_zz, f(x_zz))\\n\\n\\nplt.plot(\\n    *truth, \\\"--\\\", color=\\\"darkgrey\\\", label=\\\"Truth\\\", drawstyle=\\\"steps-post\\\",\\n)\\nplt.xscale(\\\"log\\\")\\nplt.yscale(\\\"log\\\")\\nplt.legend()\\nplt.xlim(1e2, 1e5)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x, y = kde_ne(true_data)\n",
    "plt.plot(x[::50], y[::50] / 2)  # downsample the curves to make plotting faster\n",
    "\n",
    "f = plot_de(de, 14312)\n",
    "x_zz = np.geomspace(1e2, 1e6, 1000)\n",
    "truth = (x_zz, f(x_zz))\n",
    "\n",
    "\n",
    "plt.plot(\n",
    "    *truth, \"--\", color=\"darkgrey\", label=\"Truth\", drawstyle=\"steps-post\",\n",
    ")\n",
    "plt.xscale(\"log\")\n",
    "plt.yscale(\"log\")\n",
    "plt.legend()\n",
    "plt.xlim(1e2, 1e5)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### XSMC"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 31;\n",
       "                var nbb_unformatted_code = \"data = sim_data(de, recombination_rate=1e-9)\";\n",
       "                var nbb_formatted_code = \"data = sim_data(de, recombination_rate=1e-9)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data = sim_data(de, recombination_rate=1e-9)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 32;\n",
       "                var nbb_unformatted_code = \"sampled_heights = parallel_sample(data, rho_over_theta=1e-9 / mu)\";\n",
       "                var nbb_formatted_code = \"sampled_heights = parallel_sample(data, rho_over_theta=1e-9 / mu)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sampled_heights = parallel_sample(data, rho_over_theta=1e-9 / mu)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 33;\n",
       "                var nbb_unformatted_code = \"lines_xsmc = parallel_kde(sampled_heights)\";\n",
       "                var nbb_formatted_code = \"lines_xsmc = parallel_kde(sampled_heights)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "lines_xsmc = parallel_kde(sampled_heights)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### PSMC"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 34;\n",
       "                var nbb_unformatted_code = \"psmc_out = run_psmc(data, rho_over_theta=1e-9 / mu)\";\n",
       "                var nbb_formatted_code = \"psmc_out = run_psmc(data, rho_over_theta=1e-9 / mu)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "psmc_out = run_psmc(data, rho_over_theta=1e-9 / mu)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 35;\n",
       "                var nbb_unformatted_code = \"lines_psmc = [(x_psmc, r(x_psmc)) for r in psmc_out]\";\n",
       "                var nbb_formatted_code = \"lines_psmc = [(x_psmc, r(x_psmc)) for r in psmc_out]\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "lines_psmc = [(x_psmc, r(x_psmc)) for r in psmc_out]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Combined plot for paper"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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iIisWqPAeyZdFxERERERkVXKLOWySMaYZuAaJgaeLga8SbtWB52qr1cUceX0rl2irq4ZxpjGGW6+H7gaeMRae90ydUlERETOATrHEBERkcWm8wsREZFz22KvwTSBtXYIuK98AcAY04ALOlWynK4DOoBQ1aGGiSLAVUvZ1zVkeKU7ICIiIucknWOIiIjIYtP5hYiIyDlsSQNMU7HWjgL/Wb4AYIypxwWQqoNOlzIedJoccBIREREREREREREREZEVsuwBpqlYa7PAA8ADxpg64CeAdwA/taIdW52aZritkl4uIiIiMlc6xxAREZHFpvMLERGRc9iqCDCVy+a9AbgTeD0wU43e85q1dmS624wxwXL2RURERM4dOseQlZZKpRqAv6na9Cu+74+uVH9ERGThdH4hIiJybluxAJMxpgX4SeAtwGuBWOWmSbtaXDm9Lyxf70REREREZJlFgXdVXf8tQAEmERERERGRVWpZA0zGmHZc2bs7gVfjvkTC2UGlInAfLqj0JWvt8WXrpIiIiIiIiIiIiIiIiMxoyQNMxpiNwJtxmUq3Vt3n5KBSHvgWLqj0FWtt31L3TUREREREREREREREROZuSQJMxpituCylO4GbAa9y06RdR4F/xwWV7rLWDi1Ff0RERERERERERERERGTxLFqAyRizCxdQegvwMsaDSZODSoPAXcAXgW9Ya7OL1QcRERERERERERERERFZegsOMBljPoALLF1XvXnSbr3AV3GZSt+01hYWer8iIiIiIiIiIiIiIiKyMhYjg+lPAMvZQaXjwJdwQaV7rbWlRbgvERERERERERERERERWWGLvQZTHvgE8GngAWutXeT2RUREREREREREREREZIUtZoDJAhHgvcDNwCPGmIeBR4BHrbUji3hfIiIiIiIiIiIiIiIiskIWO4Op0ual5cs7ytusMeZZXLDpEeBh4BFr7eAS3L+IiIiIiIiIiIiIiIgsocUIMH0PuBportpmcBlNld8NcAlwMfCzL+1kzEGqAk64oFPvIvRJRERERETWFgsMTLouIiIiIiIiq9SCA0zW2lsBjDEXA9cC15V/XgO0TXOYKf+8ANgD3PnSDcYc5uxMpxML7aeIiIiIiKxevu8PMP33BxEREREREVllFq1EnrV2P7Af+JfKNmPMBYwHnCo/103TRCXotAvYCbypqp3jwMPW2jcu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\n",
      "text/plain": [
       "<Figure size 1800x675 with 4 Axes>"
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 36;\n",
       "                var nbb_unformatted_code = \"plot_combined(lines_psmc, lines_xsmc, truth, axs[2])\\naxs[2].set_title(\\\"Zigzag\\\")\\nfig\";\n",
       "                var nbb_formatted_code = \"plot_combined(lines_psmc, lines_xsmc, truth, axs[2])\\naxs[2].set_title(\\\"Zigzag\\\")\\nfig\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_combined(lines_psmc, lines_xsmc, truth, axs[2])\n",
    "axs[2].set_title(\"Zigzag\")\n",
    "fig"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x7f09ec5b6050>"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 37;\n",
       "                var nbb_unformatted_code = \"axs[0].legend()\";\n",
       "                var nbb_formatted_code = \"axs[0].legend()\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "axs[0].legend()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 38;\n",
       "                var nbb_unformatted_code = \"fig.savefig(os.path.join(PAPER_ROOT, \\\"figures\\\", \\\"xsmc_psmc.pdf\\\"))\";\n",
       "                var nbb_formatted_code = \"fig.savefig(os.path.join(PAPER_ROOT, \\\"figures\\\", \\\"xsmc_psmc.pdf\\\"))\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig.savefig(os.path.join(PAPER_ROOT, \"figures\", \"xsmc_psmc.pdf\"))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Additional diagnostics"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXgAAAD7CAYAAABgzo9kAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAURElEQVR4nO3dfZBddX3H8c9n726iJqPb5SkkIcYYYqlWdiIMg03EhyqWWqTWVjNiHKhVOp04Ce2gtiPQlNoO4JChxAZtScA4mT7oILRRKVUjdLCWIVsfaAiJrNk8ICG4fVjDZh++/eOe4OZys+fs7tl77/7yfs3cuff+8t1zv7C7n3v2d879HUeEAADpaWt2AwCA6UHAA0CiCHgASBQBDwCJIuABIFEtEfC2220vtt3e7F4AIBUtEfCSFkp6KrsHAJSgVQIeAFAyAh4AEkXAA0CiCHgASBQBDwCJIuABIFEEPAAkioAHgEQR8ACQKJYGwClj6Lmn148ODizKq2ubPWdfR9e86xvREzCdCHicMkYHBxYduOu63ry6BVffvHj6uwGmH1M0AJAoAh4AEkXAA0CiCHgASFShgLe9zPYjtndn9+fWqbnR9jO2e7LbxvLbBQAUVXQPfpOkjRGxTNJGSXeepO6eiOjObn9QSocAgEnJDXjbZ0paLmlbNrRN0nLbZ0xnYwCAqSmyB3+OpAMRMSJJ2f3BbLzW+21/z/YDti+utzHbndn1V1+4iUv1AUDpyvyg0yZJfx4RQ7bfLukrts+LiCM1dWsl3VDi6wIA6iiyB98naYHtiiRl9/Oz8RdExNMRMZQ9/pfs319XZ3sbJL2q5rZysv8BAID6cvfgI+IZ2z2SVknamt3vjIjDY+tsL4iIA9njbkmLJT1RZ3v9kvprvnay/QOFDbmjO5au6C5Qp9mNaAiYZkWnaK6RdLft6yX9VNJqSbK9XdL1EfGopE/bfoOkEUnHJH0wIp6ehp6BSRke1dyex/v259W9bSXHhJCGQgEfEbskXVRn/LIxjz9UYl8AgCnik6wAkCgCHgASRcADQKIIeABIFAEPAIki4AEgUQQ8ACSKgAeARBHwAJCoMleTBJLQ0V7pGjy0d8t4NW2z5+zr6Jp3fYNaAiaFgAdqjRybs//b9427KNlZl/xWd4dEwKOlEfBArZB7Hu/rH6+EBckwEzAHDwCJIuABIFEEPAAkioAHgEQR8ACQKAIeABJFwANAogh4AEgUAQ8AiSLgASBRBDwAJIqAB4BEEfAAkCgCHgASRcADQKIIeABIFAEPAIki4AEgUYUC3vYy24/Y3p3dnztO7Wts/8z2reW1CQCYqKJ78JskbYyIZZI2SrqzXpHtSvZv95bTHgBgsnID3vaZkpZL2pYNbZO03PYZdco/IemfJO0urUMAwKS0F6g5R9KBiBiRpIgYsX0wGz98vMj2+ZIulfQWSZ862cZsd0rqrBnmCvUAULIiAZ/Ldoekz0m6KnsDGK98raQbynhdAMDJFQn4PkkLbFey8K5Imp+NH3e2pFdL2p6Fe6ck2355RHykZnsbJG2pGVso6aFJ9A8AOIncgI+IZ2z3SFolaWt2vzMiDo+p2Sfp9OPPbd8oaW5E/FGd7fVL6h87lrPHDwCYhKJn0VwjaY3t3ZLWZM9le7vtC6arOQDA5BWag4+IXZIuqjN+2Unqb5xaWwCAqeKTrACQKAIeABJFwANAoko5Dx5opkPPDqwfODq0KK/u9Iq7JO1vQEtASyDgMeMNHB1atG7Djt68unuuXc7PO04pTNEAQKIIeABIFAEPAIki4AEgUQQ8ACSKgAeARBHwAJAoAh4AEkXAA0CiCHgASBQBDwCJIuABIFEEPAAkioAHgEQR8ACQKAIeABJFwANAogh4AEgUAQ8AiSLgASBRXIQYmISO9krX4KG9W/Lq2mbP2dfRNe/6BrQEvAgBD0zG8GD7gc3X9eaVLbj65sXT3wxQH1M0AJAoAh4AEkXAA0CimIPHjHfa7GPdN61a0p1X19E2OrsR/Zyqhp57ev3o4MCivDoOPDdOoYC3vUzS3ZJOk3RE0uqIeLKm5ipJ6ySNSqpI+nxE3F5uu8CLefj5uXvu37w/r27pR9e4Ef2cqkYHBxYduIsDz62k6BTNJkkbI2KZpI2S7qxT8yVJ50dEt6Q3SvpD268vp00AwETlBrztMyUtl7QtG9omabntM8bWRcT/RERkT18mqUNSCADQFEWmaM6RdCAiRiQpIkZsH8zGD48ttH25pL+Q9GpJn4yI79duzHanpM6a4YWT6B0AMI5Sz6KJiPsi4rWSlkn6oO3X1ClbK+mpmttDZfYBACi2B98naYHtSrb3XpE0PxuvKyL22f6upHdJeqLmnzdI2lIztlCEPGYSe3YsXXFFXtmQO8SpO2iW3ICPiGds90haJWlrdr8zImqnZ86LiP/KHp8u6S2Svlxne/2S+mu+dtL/AUBThNzzeF9/XtnbVjL9iOYpOkVzjaQ1tndLWpM9l+3tti/Iaj5i+4fZm8G/SrojIh4ovWMAQCGFzoOPiF2SLqozftmYx+tK7AsAMEUsVQAAiSLgASBRBDwAJIqAB4BEsZokgHEVXSVSbuuW1DvtDaEwAh7AuAaPHbv8J9++L7du/pvenf8mgIYi4AGMa3hUc3se78tdjnneSi1pRD8ojjl4AEgUe/DANOpor3QNHtq7Ja+OqxxhOhDwwHQaHmw/sJmrHKE5mKIBgEQR8ACQKAIeABJFwANAogh4AEgUZ9EAKAeXMWw5BDyAcnAZw5bDFA0AJIqAB4BEEfAAkCgCHgASRcADQKIIeABIFAEPAIki4AEgUQQ8ACSKgAeARLFUAVrWoWcH1g8cHVqUV3d6xV2Sci8KDZxqCHi0rIGjQ4vWbdjRm1d3z7XLW/fnuIUX4OINNH2t+4sBpKCFF+BK4g0U42IOHgASVeid2fYySXdLOk3SEUmrI+LJmppPSXq/pBFJQ5L+OCK+Xm67AGa6jvZK1+ChvVvy6tpmz9nX0TXv+ga0lKyif3ptkrQxIrbavlLSnZLeWlPzXUmfiYif2T5f0g7bZ0fE0RL7BTDTDQ+2H9h8XW9e2YKrb148/c2kLTfgbZ8pabmkt2dD2yTdYfuMiDh8vK5mb/17kqzqHv8JB2dsd0rqrHkZLgAAACUrsgd/jqQDETEiSRExYvtgNn74JF+zWtLeiKh35H2tpBsm0ywAoLjSj47bvkTSn+nne/y1NkjaUjO2UNJDZfcC4OROm32s+6ZVS7rz6jraRrmE6gxVJOD7JC2wXcn23iuS5mfjJ7B9saStkt4dEU/U21hE9Evqr/m6CTcOYGo8/PzcPfdvzj2/felH1/ALOkPlniYZEc9I6pG0KhtaJWnn2Pl3SbJ9oaS/k/TeiHis7EYBABNT9Dz4ayStsb1b0prsuWxvt31BVvNZSS+VdKftnuz2y6V3DAAopNAcfETsknRRnfHLxjy+sMS+AABTxCdZASBRBDwAJIqAB4BEsUoc0AJYnwXTgYAHWgHrs2AaMEUDAIki4AEgUUzRAAkqcjk+LsWXPgIeaAUlX7u1yOX4uBRf+vgGA62gha/dipmLgEfLYjlbYGoIeLQslrMFpoazaAAgUQQ8ACSKgAeARBHwAJAoDrICM4jd1rWnr39LXl1bm7sl9U57Q2hpBDwwg4yORnveB5gk6ba1l6xoQDtocQQ8kKDOWUNdN61aMu4nY/n8QPoIeCBBleHn2/fcv3ncT8by+YH0EfAAGqvkdXdwcgQ8gMZi3Z2G4TRJAEgUAQ8AiWKKBg1X5GIUEhekAKaKgEfDFbkYhcQFKYCpYooGABJFwANAogh4AEgUAQ8AiSoU8LaX2X7E9u7s/tw6Ne+w/ajtQdu3lt8qAGAiiu7Bb5K0MSKWSdoo6c46NT+S9GFJt5TUGwBgCnID3vaZkpZL2pYNbZO03PYZY+siYk9E9EgaLr1LAMCEFTnP+BxJByJiRJIiYsT2wWz88ERf0HanpM6aYdacAICSNeODJGsl3dCE1wVmvFkdbbPy1nmXWOsdVUUCvk/SAtuVbO+9Iml+Nj4ZGyRtqRlbKOmhSW4POHUMH2vLW+ddYq13VOUGfEQ8Y7tH0ipJW7P7nREx4emZbHv9kk74AbX5WQSAshU9i+YaSWts75a0Jnsu29ttX5A9XmF7v6RrJX3U9n7bl05H0wCAfIXm4CNil6SL6oxfNubxw+JgKQC0DD7JCgCJIuABIFEEPAAkioAHgERxxRw03Gmzj3XftGpJd14dH9YBpoaAR8N5+Pm5e+7fnHutVT6sA0wNUzQAkCgCHgASRcADQKIIeABIFAdZUZpDzw6sHzg6tCiv7vSKuyTlHmQFMDUEPEozcHRo0boNO3rz6u65djk/d0ADMEUDAIliTypRRadL5ry0Y9/Zp8+5vhE9AWgsAn6GKRrcbW3uXrdhx715dbetvWRxKY0BaDkE/AxTdJ77trWXrGhAOwBaGAGP0rDGDNBaCHiUhjVmgNZCwE/B0HNPrx8dHMidD/fsl70qBn/21Hg1bbPn7OvomsfBTgClIeCnYHRwYNGBu67rzaubf9XNKw5uvu6b49UsuPrmxUVes+g0SOesoa4i25vVUene09e/Ja+Os22AmYeAn2GKToMs+si6JUW2d2xoZG7Bg7aLi2wPQOsg4FtF+6zuwUN7t+SVdbi9KR/zL7KnzxIEKFNHe6WryO8E05snR8C3iBg6Nvfg5vzpnrOuuqUp37Mie/osQYBSDQ+2HyjwO1F0evNUxC9kiwi7K5auuKJAaaFTDGd1tM26adWS3O0VnasHMPMQ8C1iNNTe83hff17dO1e62CmGw8fa9ty/OXd7RefqO2cNdeW9YXB+O0plzy6y0zPkjmJ7PacgAh6FVIafb897w+D8dpQq5CI7PW9bqYWNaGcmIuDrKHp+u9zWLal32hsCgEkg4OuYyPntDWhnWhWdq2f6BZh5CPgGKHgAtTkBWnCunukXYOYh4BugyAHUwgdPAaAgrugEAIkqFPC2l9l+xPbu7P7cOjUV2xtt77W9x/aHy28XAFBU0SmaTZI2RsRW21dKulPSW2tqPiBpqaRzJZ0maaftByOit6xmT6boWS+js+a+eXBwcDivblalY14sXbEnd3tuW1Dmh5MATJzd1pW3jMapulhebsDbPlPScklvz4a2SbrD9hkRcXhM6fskfT4iRiUdtn2vpN+WdEvN9joldda8zPFwXuhJTEU/9vA333vku1/PrTv74nee/eA9d+3Mq/vV1b+76MEdPc/n1r3yDZWCdd5/+MhLxqvp3denvJpWr2vl3squa+Xeita1cm8TqftR74871tz+8LjHuD7+oTf+0uW/9qbFeduawfZHxIt3XiNi3JukN0j6Yc3Y45KW14x9X9KFY55fJ+n2Otu7UVJw48aNG7fSbovr5XczzqLZIGlLzdgsSUskPSlpZILbWyjpIUkr1VorGdLXxNDXxLVqb/Q1MWX0VffrigR8n6QFtisRMWK7Iml+Nj7WPkmvlPQf2fNFkn5cu7GI6JdU78+p3QV6eZExUzr7GzHfXxR9TQx9TVyr9kZfEzOdfeWeRRMRz0jqkbQqG1olaWfN/Lsk/YOk37PdZvsMSVdI+scymwUAFFf0PPhrJK2xvVvSmuy5bG+3fUFW8wVJP1J1muU7ktZHxFMl9wsAKKjQHHxE7JJ0UZ3xy8Y8HpH0++W1BgCYihQ+ydov6U9Vf16/mehrYuhr4lq1N/qamGnry9mpiwCAxKSwBw8AqIOAB4BEJRHwtm+wHbZf1+xejrPda3uX7Z7sdmmze5Ik2y+x/de2n7T9fdufa4GeFo/5/9ST/b97rtl9SZLtd9nemfX1n7bf0+yeJMn2r9t+LPse7rD9qib1cavtp2p//4osUNikvuqON7Mv26dlZyQ+kX0/v5ydaj51eUsVtPpN1XVyvqrqpfNe1+x+xvTVUv2M6et2Sbfp58dfzmp2T3V63CDpjhbow5J+evz7KOn1kv5XUluT+/oFSc9KWpY9v1LS15rUywpJ59T+vEv6hqQrx/T3jRbpq+54M/uS1CXpzWNqbpH0t2W83oy+4Ift2ZI2qvrhq281t5vWZ3uupNWSFkb2kxQRP2luVyeyPUvVlUlb4i8eSaOSXpE97pR0KKoL6jXTUkk/iYjjn/7eLukLtk+PiGcb2UhEPCyd8GnMiSxQ2NC+xhtvlHqvHxHP6cT8+o5KOuV8pk/RrJe0NVroY8c1vmj7e7Y/m62i2WyvlnRE0g22H7X9Ldutdl3ZyyUdiIjHmt1I9ib4O5K+YvvHku5V9Q2y2XZLmmf7wuz5B7L7/AvFN8Y5qn4PR6QXPiNzMBvHOGy3qRru95WxvRkb8LYvlnSBpM82u5eTWBkR50u6UNU/9e9ocj+SVFF1UbedEXGBpI9L+rLtlze3rRNcLemuZjchSbbbJX1S0rsj4pWSfkPS32d/CTVNRPy3qstz32b7UUlnqnoOde61DtDy/krS/6mkvJixAS/pEknnSXrKdq+qK7J93fY7mtpVJiL6svtBVd+EfqW5HUmqLgg3rOqfzIqIf1c2l9vMpo6zvUDV7+sXm91LplvS/Ij4N0nK7gdU/blrqoh4MCJWZG/Ud0h6qaS9TW7ruBcWKJSqV3tT/QUKMYbtW1W9YNL7ypoGnLEBHxF/GRHzI2JxRCxWdbnMSyPigSa3JttzbL8ie2xJ71d1wbamyuZnv6lsbtT2MlX3/nKvXtUgH5L0zxFxpNmNZParehGa10iS7fMknaUWCFLb87L7NkmflrQpIgaa21VVFF+gEBnbn1b12htXZDuF5Ww3O9Y242V78e+KiB+0QC9LJH1J1SmRiqoXSPlYRBxqamN6obe7VL2s4pCkP4mIrza3q6psMbuPRcTXmt3LcbY/IOkTqh5slaQbIuLeJrYkSbL9N6r+VThL0gOS1kVE7tXFpqGP2yW9R9I8Vf8aPBIRr7X9i5LuVvWMn59KWh0RT7RAX3XHm9mXqsd5fqDqsZWjWelTEfGbU369VAIeAHCiGTtFAwAYHwEPAIki4AEgUQQ8ACSKgAeARBHwAJAoAh4AEkXAA0Ci/h/05QvPc4BkmQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "application/javascript": [
       "\n",
       "            setTimeout(function() {\n",
       "                var nbb_cell_id = 39;\n",
       "                var nbb_unformatted_code = \"b = np.linspace(4, 12, 32)\\nfor d in np.array(sampled_heights)[..., 0], true_data:\\n    plt.hist(np.log(d).reshape(-1), bins=b, density=True, alpha=0.5)\";\n",
       "                var nbb_formatted_code = \"b = np.linspace(4, 12, 32)\\nfor d in np.array(sampled_heights)[..., 0], true_data:\\n    plt.hist(np.log(d).reshape(-1), bins=b, density=True, alpha=0.5)\";\n",
       "                var nbb_cells = Jupyter.notebook.get_cells();\n",
       "                for (var i = 0; i < nbb_cells.length; ++i) {\n",
       "                    if (nbb_cells[i].input_prompt_number == nbb_cell_id) {\n",
       "                        if (nbb_cells[i].get_text() == nbb_unformatted_code) {\n",
       "                             nbb_cells[i].set_text(nbb_formatted_code);\n",
       "                        }\n",
       "                        break;\n",
       "                    }\n",
       "                }\n",
       "            }, 500);\n",
       "            "
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "b = np.linspace(4, 12, 32)\n",
    "for d in np.array(sampled_heights)[..., 0], true_data:\n",
    "    plt.hist(np.log(d).reshape(-1), bins=b, density=True, alpha=0.5)"
   ]
  }
 ],
 "metadata": {
  "celltoolbar": "Edit Metadata",
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
