diff --git a/experiments/exp1/figs/calibration.pdf b/experiments/exp1/figs/calibration.pdf index 2f9d7f2..ed95fbf 100644 Binary files a/experiments/exp1/figs/calibration.pdf and b/experiments/exp1/figs/calibration.pdf differ diff --git a/experiments/exp1/figs/contours.pdf b/experiments/exp1/figs/contours.pdf index d81f956..c27c45e 100644 Binary files a/experiments/exp1/figs/contours.pdf and b/experiments/exp1/figs/contours.pdf differ diff --git a/experiments/exp1/figs/mean_std_hist.pdf b/experiments/exp1/figs/mean_std_hist.pdf index 67a40fc..f99ad2a 100644 Binary files a/experiments/exp1/figs/mean_std_hist.pdf and b/experiments/exp1/figs/mean_std_hist.pdf differ diff --git a/experiments/exp1/figs/multiplicative_bias_hist.pdf b/experiments/exp1/figs/multiplicative_bias_hist.pdf index 9dd66ea..028d0d7 100644 Binary files a/experiments/exp1/figs/multiplicative_bias_hist.pdf and b/experiments/exp1/figs/multiplicative_bias_hist.pdf differ diff --git a/experiments/exp1/figs/traces.pdf b/experiments/exp1/figs/traces.pdf index 1091610..3741c6b 100644 Binary files a/experiments/exp1/figs/traces.pdf and b/experiments/exp1/figs/traces.pdf differ diff --git a/experiments/exp1/make_figures.py b/experiments/exp1/make_figures.py index 4490a56..924e23f 100755 --- a/experiments/exp1/make_figures.py +++ b/experiments/exp1/make_figures.py @@ -6,7 +6,6 @@ os.environ["JAX_PLATFORMS"] = "cpu" os.environ["JAX_ENABLE_X64"] = "True" -from math import sqrt import jax.numpy as jnp import matplotlib.pyplot as plt @@ -36,6 +35,9 @@ def make_trace_plots(g_samples: Array, n_examples: int = 25) -> None: ax1.plot(g1) ax2.plot(g2) + ax1.set_ylabel("g1") + ax2.set_ylabel("g2") + ax1.set_title(f"Index: {ii}") pdf.savefig(fig) @@ -87,6 +89,7 @@ def make_histogram_mbias(g_samples: Array) -> None: mbias = (g1.mean(axis=1) - 0.02) / 0.02 fig, ax = plt.subplots(1, 1, figsize=(7, 7)) ax.hist(mbias, bins=31, histtype="step") + ax.set_xlabel("m") pdf.savefig(fig) plt.close(fig) @@ -95,6 +98,7 @@ def make_histogram_means_and_stds(g_samples: Array) -> None: fname = "figs/mean_std_hist.pdf" with PdfPages(fname) as pdf: g1 = g_samples[:, :, 0] + g2 = g_samples[:, :, 1] means = g1.mean(axis=1) stds = g1.std(axis=1) @@ -102,6 +106,27 @@ def make_histogram_means_and_stds(g_samples: Array) -> None: fig, ax = plt.subplots(1, 1, figsize=(7, 7)) ax.hist(means, bins=31, histtype="step") ax.set_title(f"Std: {means.std():.5g}") + ax.set_xlabel("Mean of posterior of g1") + ax.axvline(means.mean(), linestyle="--", color="k", label="mean") + ax.legend() + pdf.savefig(fig) + plt.close(fig) + + fig, ax = plt.subplots(1, 1, figsize=(7, 7)) + ax.hist(stds, bins=31, histtype="step") + ax.set_xlabel("Std of posterior of g1") + ax.axvline(stds.mean(), linestyle="--", color="k", label="mean") + ax.legend() + pdf.savefig(fig) + plt.close(fig) + + means = g2.mean(axis=1) + stds = g2.std(axis=1) + + fig, ax = plt.subplots(1, 1, figsize=(7, 7)) + ax.hist(means, bins=31, histtype="step") + ax.set_title(f"Std: {means.std():.5g}") + ax.set_xlabel("Mean of posterior of g2") ax.axvline(means.mean(), linestyle="--", color="k", label="mean") ax.legend() pdf.savefig(fig) @@ -109,8 +134,29 @@ def make_histogram_means_and_stds(g_samples: Array) -> None: fig, ax = plt.subplots(1, 1, figsize=(7, 7)) ax.hist(stds, bins=31, histtype="step") - ax.axvline(1e-3 / sqrt(1000), linestyle="--", color="k") - ax.set_title(f"Std_correct: {1e-3 / sqrt(1000) / sqrt(2):.5g}") + ax.set_xlabel("Std of posterior of g2") + ax.axvline(stds.mean(), linestyle="--", color="k", label="mean") + ax.legend() + pdf.savefig(fig) + plt.close(fig) + + g_mag = jnp.sqrt(g1**2 + g2**2) + means = g_mag.mean(axis=1) + stds = g_mag.std(axis=1) + fig, ax = plt.subplots(1, 1, figsize=(7, 7)) + ax.hist(means, bins=31, histtype="step") + ax.set_xlabel("Mean of posterior of |g|") + ax.set_title(f"Std: {means.std():.5g}") + ax.axvline(means.mean(), linestyle="--", color="k", label="mean") + ax.legend() + pdf.savefig(fig) + plt.close(fig) + + fig, ax = plt.subplots(1, 1, figsize=(7, 7)) + ax.hist(stds, bins=31, histtype="step") + ax.set_xlabel("Std of posterior of |g|") + ax.axvline(stds.mean(), linestyle="--", color="k", label="mean") + ax.legend() pdf.savefig(fig) plt.close(fig) diff --git a/experiments/exp2/figs/contours.pdf b/experiments/exp2/figs/contours.pdf index 1dd4a63..8ccaf57 100644 Binary files a/experiments/exp2/figs/contours.pdf and b/experiments/exp2/figs/contours.pdf differ diff --git a/experiments/exp2/figs/convergence_hist.pdf b/experiments/exp2/figs/convergence_hist.pdf index 8b79b92..c81e73e 100644 Binary files a/experiments/exp2/figs/convergence_hist.pdf and b/experiments/exp2/figs/convergence_hist.pdf differ diff --git a/experiments/exp2/figs/timing.pdf b/experiments/exp2/figs/timing.pdf index 7635ae1..e389441 100644 Binary files a/experiments/exp2/figs/timing.pdf and b/experiments/exp2/figs/timing.pdf differ diff --git a/experiments/exp2/figs/traces.pdf b/experiments/exp2/figs/traces.pdf index e94c845..8d2030a 100644 Binary files a/experiments/exp2/figs/traces.pdf and b/experiments/exp2/figs/traces.pdf differ diff --git a/experiments/exp2/figs/traces_adapt.pdf b/experiments/exp2/figs/traces_adapt.pdf index a34e6f7..baae334 100644 Binary files a/experiments/exp2/figs/traces_adapt.pdf and b/experiments/exp2/figs/traces_adapt.pdf differ diff --git a/experiments/exp2/figs/traces_out.pdf b/experiments/exp2/figs/traces_out.pdf new file mode 100644 index 0000000..1c245eb Binary files /dev/null and b/experiments/exp2/figs/traces_out.pdf differ diff --git a/experiments/exp2/make_figures.py b/experiments/exp2/make_figures.py index 93d8306..8d44b99 100755 --- a/experiments/exp2/make_figures.py +++ b/experiments/exp2/make_figures.py @@ -1,6 +1,7 @@ #!/usr/bin/env python3 import os +from typing import Iterable os.environ["CUDA_VISIBLE_DEVICES"] = "" os.environ["JAX_PLATFORMS"] = "cpu" @@ -25,15 +26,22 @@ def make_trace_plots( samples_dict: dict[str, Array], truth: dict[str, Array], fpath: str, - n_examples: int = 25, + n_examples: int = 50, ) -> None: """Make example figure showing example trace plots for each parameter.""" - # by default, we choose 10 random traces to plot in 1 PDF file. n_gals, _, _ = samples_dict["lf"].shape + indices = np.random.choice(np.arange(0, n_gals), size=(n_examples,), replace=False) + make_trace_at_indices(indices, samples_dict, truth, fpath) + +def make_trace_at_indices( + indices: Iterable, + samples_dict: dict[str, Array], + truth: dict[str, Array], + fpath: str, +): with PdfPages(fpath) as pdf: - for _ in tqdm(range(n_examples), desc="Making traces"): - idx = np.random.choice(np.arange(0, n_gals)).item() + for idx in tqdm(indices, desc="Making traces"): chains = {k: v[idx] for k, v in samples_dict.items()} tv = {p: q[idx].item() for p, q in truth.items()} @@ -93,12 +101,16 @@ def make_convergence_histograms(samples_dict: dict[str, Array]) -> None: ess[p].append(effective_sample_size(chains) / n_samples_total) # print rhat outliers + outliers_indices = set() for p in rhats: rhat = np.array(rhats[p]) _ess = np.array(ess[p]) - n_outliers = sum((rhat < 0.99) | (rhat > 1.05) | (_ess < 0.25)) + outliers = (rhat < 0.99) | (rhat > 1.05) | (_ess < 0.25) + n_outliers = sum(outliers) with open("figs/outliers.txt", "a", encoding="utf-8") as f: print(f"Number of R-hat outliers for {p}: {n_outliers}", file=f) + indices = np.argwhere(outliers) + outliers_indices = outliers_indices.union(set(indices.ravel())) with PdfPages(fname) as pdf: for p in samples_dict: @@ -117,6 +129,8 @@ def make_convergence_histograms(samples_dict: dict[str, Array]) -> None: pdf.savefig(fig) plt.close(fig) + return outliers_indices + def make_timing_plots(results_dict: dict) -> None: print("INFO: Making timing plots...") @@ -177,12 +191,19 @@ def main(): # make plots make_trace_plots(samples, truth, fpath="figs/traces.pdf") make_contour_plots(samples, truth) - make_convergence_histograms(samples) + out_indices = make_convergence_histograms(samples) make_timing_plots(results) # on adaption too adapt_states = results[max_n_gal]["adapt_info"].state.position - make_trace_plots(adapt_states, truth, fpath="figs/traces_adapt.pdf", n_examples=50) + make_trace_plots(adapt_states, truth, fpath="figs/traces_adapt.pdf") + + # outliers + if len(out_indices) > 0: + make_trace_at_indices(out_indices, samples, truth, fpath="figs/traces_out.pdf") + else: # avoid confusion with previous + if Path("figs/traces_out.pdf").exists(): + os.remove("figs/traces_out.pdf") if __name__ == "__main__": diff --git a/notebooks/check-g-mag-random.ipynb b/notebooks/check-g-mag-random.ipynb new file mode 100644 index 0000000..9bd5de7 --- /dev/null +++ b/notebooks/check-g-mag-random.ipynb @@ -0,0 +1,170 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [], + "source": [ + "rng = np.random.RandomState(43)" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": {}, + "outputs": [], + "source": [ + "g1, g2 = rng.normal(size=(2, 1_000_000))*1e-3 + 0.02" + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[1.00132769e-06, 6.64097921e-10],\n", + " [6.64097921e-10, 9.97662766e-07]])" + ] + }, + "execution_count": 49, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.cov(g1, g2)" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(0.0010006631265643401, 0.000998830200162854, 0.0009997776905801786)" + ] + }, + "execution_count": 50, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.std(g1), np.std(g2), np.std(np.sqrt(g1**2 + g2**2)) " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1.6044601312014296e-09,\n", + " 1.5979783261011428e-09,\n", + " 3.204493672957289e-09,\n", + " 9.995554305818354e-07)" + ] + }, + "execution_count": 51, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.var(g1**2), np.var(g2**2), np.var(g1**2 + g2**2)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "# g1+= 0.02" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1.4332765422958652e-06, 1.4438625190160518e-06, 2.032142858328091e-06)" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "4.019049885896081e-05" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.std(g1**2 + g2**2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "bpd_gpu2", + "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.10.14" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/notebooks/check-likelihood-toy1.ipynb b/notebooks/check-likelihood-toy1.ipynb new file mode 100644 index 0000000..3d69b63 --- /dev/null +++ b/notebooks/check-likelihood-toy1.ipynb @@ -0,0 +1,1141 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "e7fde7a8-0644-4415-a68a-f82fe14c78c7", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "import os \n", + "os.environ[\"CUDA_VISIBLE_DEVICES\"] = \"0\"\n", + "os.environ[\"JAX_ENABLE_X64\"] = \"True\"\n" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "0042638c-5358-42cc-a2a5-bf27b226783e", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "from functools import partial\n", + "\n", + "from tqdm import tqdm\n", + "\n", + "import jax.numpy as jnp\n", + "from jax import random\n", + "import matplotlib.pyplot as plt\n", + "\n", + "from jax import jit, vmap, grad\n", + "\n", + "from bpd.prior import sample_ellip_prior, shear_transformation, ellip_mag_prior\n", + "from bpd.likelihood import shear_loglikelihood\n", + "from bpd.pipelines.toy_ellips import pipeline_toy_ellips_samples\n" + ] + }, + { + "cell_type": "markdown", + "id": "047469b2", + "metadata": {}, + "source": [ + "## Fisher and likelihood" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "df99f49b-4baf-44a2-9984-95da885fe345", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2024-12-03 04:44:33.866694: W external/xla/xla/service/gpu/nvptx_compiler.cc:836] The NVIDIA driver's CUDA version is 12.2 which is older than the PTX compiler version (12.6.20). Because the driver is older than the PTX compiler version, XLA is disabling parallel compilation, which may slow down compilation. You should update your NVIDIA driver or use the NVIDIA-provided CUDA forward compatibility packages.\n" + ] + } + ], + "source": [ + "g1, g2 = 0.02, 0.02\n", + "true_g = jnp.array([g1, g2])" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "819a7534-5ee8-4e06-a035-6eb9937d89b4", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "seed = 42\n", + "key = random.key(seed)\n", + "k1, k2 = random.split(key, 2)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "7aef7d7d-8efc-4ada-a5f1-ae2a3100d35c", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "sigma_e=1e-3\n", + "sigma_e_int = 4e-2" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "4114dda7-9858-41c5-94ed-5e57fd285e3e", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "pipe = jit(partial(pipeline_toy_ellips_samples, g1=g1, g2 = g2, sigma_e=sigma_e, sigma_e_int=sigma_e_int, sigma_m=1e-5, n_gals=1000, \n", + " n_samples_per_gal=100, )\n", + " )" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "eb33b64e-1ad8-47d6-a5cf-7471846f71d7", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "e_post, e_obs, e_sheared = pipe(k1)" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "7c09a0a2-e496-4195-bb6e-b96686f2aa57", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(Array(0.00073002, dtype=float64),\n", + " Array(0.00072945, dtype=float64),\n", + " Array(0.0007295, dtype=float64),\n", + " Array(0.00070711, dtype=float64, weak_type=True))" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# compare std deviations \n", + "e_sheared[:, 0].std(), e_obs[:,0].std(), e_post[:, :, 0].std(), sigma_e / jnp.sqrt(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "d6523b5f-1f70-45da-922f-8c6cc4216eb0", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlEAAAGgCAYAAACKWjL/AAAAP3RFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMS5wb3N0MSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8kixA/AAAACXBIWXMAAA9hAAAPYQGoP6dpAABR3klEQVR4nO3de1xU550/8M8Mt0kVBuUaBEJ41UtirYkaLsaUZEvBFDWYZmlpV2lqEve3pnVD3UW72dKkr5Ymq61dY+4RE7oVpbW7Gq2GgJoIeAnBbbzUVDRhiFyiKQPBDUR4fn+czjiHOYPMYS7nzHzer9e8Es55ZubMM4Pz4Tnf5zkGIYQAEREREbnF6O8DICIiItIjhigiIiIiFRiiiIiIiFRgiCIiIiJSgSGKiIiISAWGKCIiIiIVGKKIiIiIVGCIIiIiIlKBIYqIiIhIBYYoIiIiIhVUhajNmzcjLS0NJpMJmZmZOHbs2Kjta2pqMGPGDJhMJsyaNQt79+6V7d+5cyfy8vIQExMDg8GAEydOOD1Ga2srli5diri4OERFRaGoqAhdXV2yNu+//z7uu+8+xMbGIioqCgsWLMCBAwfs+//3f/8XxcXFSElJwQ033IBbbrkFv/71r9V0AREREQW5UHfvsH37dpSWluL5559HZmYmNm7ciPz8fJw9exbx8fFO7RsbG1FcXIyKigosWrQIv/3tb1FYWIh3330XX/rSlwAA/f39WLBgAYqKivDwww87PUZ/fz/y8vIwe/Zs1NfXAwD+/d//HYsXL8aRI0dgNEpZcNGiRZg6dSrq6+txww03YOPGjVi0aBFaW1uRmJiI5uZmxMfH4ze/+Q1SUlLQ2NiIRx55BCEhIXj00UfH9PqHh4dx8eJFREZGwmAwuNt9RERE5AdCCPT19SEpKcmeGzzxoG7JyMgQq1atsv88NDQkkpKSREVFhWL7oqIiUVBQINuWmZkpVq5c6dT2woULAoBoaWmRbd+/f78wGo3CarXat/X09AiDwSBqa2uFEEJ8/PHHAoB466237G16e3sFAHsbJf/0T/8k7rnnHtcveASLxSIA8MYbb7zxxhtvOrxZLJYxf+dfj1sjUYODg2hubsa6devs24xGI3Jzc9HU1KR4n6amJpSWlsq25efn47//+7/H/LwDAwMwGAyIiIiwbzOZTDAajTh8+DByc3MRExOD6dOn47XXXsOcOXMQERGBF154AfHx8Zg7d67Lx7ZarZg8efKozz0wMGD/WQgBALBYLIiKihrzayAiIiL/6e3tRUpKCiIjIz32mG6FqEuXLmFoaAgJCQmy7QkJCfjzn/+seJ/Ozk7F9p2dnWN+3qysLEyYMAFlZWX4+c9/DiEE1q5di6GhIXR0dAAADAYD3nzzTRQWFiIyMhJGoxHx8fHYt28fJk2apPi4jY2N2L59O/bs2ePyuSsqKvDEE084bY+KimKIIiIi0hlPluLoYnZeXFwcampqsHv3bkycOBFmsxk9PT2YM2eO/bymEAKrVq1CfHw83n77bRw7dgyFhYVYvHixPWg5OnnyJO677z6Ul5cjLy/P5XOvW7cOVqvVfrNYLF57nURERKQfbo1ExcbGIiQkxGlWXFdXFxITExXvk5iY6FZ7V/Ly8tDa2opLly4hNDQU0dHRSExMRHp6OgCgvr4er7/+Ov7617/aR4ieffZZ1NbW4tVXX8XatWvtj3X69Gl89atfxSOPPILHH3981OeNiIiQnUYkIiIiAtwciQoPD8fcuXNRV1dn3zY8PIy6ujpkZ2cr3ic7O1vWHgBqa2tdtr+e2NhYREdHo76+Ht3d3ViyZAkA4MqVKwDgVHFvNBoxPDxs//nUqVO45557UFJSgp/97GeqjoGIiIjI7SUOSktLUVJSgnnz5iEjIwMbN25Ef38/HnzwQQDA8uXLMWXKFFRUVAAAVq9ejZycHGzYsAEFBQWorq7GO++8gxdffNH+mJ988gna2tpw8eJFAMDZs2cBSKNYthGryspK3HLLLYiLi0NTUxNWr16Nxx57DNOnTwcghbVJkyahpKQEP/7xj3HDDTfgpZdewoULF1BQUABAOoX3d3/3d8jPz0dpaam9LiskJARxcXGqOpCIiIiClJopfZs2bRKpqakiPDxcZGRkiCNHjtj35eTkiJKSEln7HTt2iGnTponw8HAxc+ZMsWfPHtn+yspKxWmI5eXl9jZlZWUiISFBhIWFialTp4oNGzaI4eFh2eMcP35c5OXlicmTJ4vIyEiRlZUl9u7da99fXl6u+Dw33XTTmF+71WoVAGTLLRAREZG2eeP72yDE3+bs05j09vbCbDbDarVydh4REZFOeOP7Wxez84iIiIi0hiGKiIiISAW3C8uJiEYaGgLefhvo6ABuvBG46y4gJMTfR0VE5F0MUUQ0Ljt3AqtXA+3t17YlJwO//jVw//3+Oy4iIm/j6TwiUm3nTuCBB+QBCgA++kjavnOnf46LiMgXGKKISJWhIWkESml+r23bP/+z1I6IKBAxRBGRKm+/7TwC5UgIwGKR2hERBSKGKCJSReG63uNqR0SkNwxRRKTKjTd6th0Rkd4wRBGRKnfdJc3CMxiU9xsMQEqK1I6IKBAxRBGRKiEh0jIGgHOQsv28cSPXiyKiwMUQRUSq3X8/8LvfAVOmyLcnJ0vbuU4UEQUyLrZJRONy//3AffdxxXIiCj4MUUQ0biEhwN13+/soiIh8i6fziIiIiFRgiCIiIiJSgSGKiIiISAWGKCIiIiIVGKKIiIiIVGCIIiIiIlKBIYqIiIhIBYYoIiIiIhUYooiIiIhUYIgiIiIiUoEhioiIiEgFhigiIiIiFRiiiIiIiFRgiCIiIiJSgSGKiIiISAWGKCIiIiIVGKKIiIiIVGCIIiIiIlKBIYqIiIhIBYYoIiLSL6sVaG9X3tfeLu0n8hKGKCIi0ierFVi4EMjJASwW+T6LRdq+cCGDFHkNQxQREelTXx/Q3Q2cPw/cffe1IGWxSD+fPy/t7+vz51FSAGOIIiIifUpOBg4eBNLTrwWpxsZrASo9XdqfnOzf46SAFervAyAiIlItJUUKSrbgdOed0nZbgEpJ8ePBUaDjSBQREelbSgpQVSXfVlXFAEVexxBFRET6ZrEAy5bJty1b5lxsTuRhDFFERKRfjkXk6elAQ4O8RopBiryIIYqIiPSpvd25iHz+fOdic1frSBGNEwvLiYhInyIjgfh46f8di8gdi83j46V2RF7AEEVERPpkNgP79knrQI1cxiAlBTh0SApQZrN/jo8CHkMUERHpl9nsOiRxfSjyMlU1UZs3b0ZaWhpMJhMyMzNx7NixUdvX1NRgxowZMJlMmDVrFvbu3Svbv3PnTuTl5SEmJgYGgwEnTpxweozW1lYsXboUcXFxiIqKQlFREbq6umRt3n//fdx3332IjY1FVFQUFixYgAMHDsja/OAHP8DcuXMRERGB2267Tc3LJyIiInI/RG3fvh2lpaUoLy/Hu+++i9mzZyM/Px/d3d2K7RsbG1FcXIwVK1agpaUFhYWFKCwsxMmTJ+1t+vv7sWDBAjz11FOKj9Hf34+8vDwYDAbU19ejoaEBg4ODWLx4MYaHh+3tFi1ahKtXr6K+vh7Nzc2YPXs2Fi1ahM7OTtnjfe9738M3v/lNd186ERER0TXCTRkZGWLVqlX2n4eGhkRSUpKoqKhQbF9UVCQKCgpk2zIzM8XKlSud2l64cEEAEC0tLbLt+/fvF0ajUVitVvu2np4eYTAYRG1trRBCiI8//lgAEG+99Za9TW9vrwBgb+OovLxczJ49+7qvdySr1SoAyI6FiIiItM0b399ujUQNDg6iubkZubm59m1GoxG5ubloampSvE9TU5OsPQDk5+e7bK9kYGAABoMBERER9m0mkwlGoxGHDx8GAMTExGD69Ol47bXX0N/fj6tXr+KFF15AfHw85s6d687LdHru3t5e2Y2IiIjIrRB16dIlDA0NISEhQbY9ISHB6ZSZTWdnp1vtlWRlZWHChAkoKyvDlStX0N/fjzVr1mBoaAgdHR0AAIPBgDfffBMtLS2IjIyEyWTCL3/5S+zbtw+TJk1y52XKVFRUwGw2228pvIwAERERQSeLbcbFxaGmpga7d+/GxIkTYTab0dPTgzlz5sBolF6CEAKrVq1CfHw83n77bRw7dgyFhYVYvHixPWipsW7dOlitVvvNwtVviYiICG4ucRAbG4uQkBCnWXFdXV1ITExUvE9iYqJb7V3Jy8tDa2srLl26hNDQUERHRyMxMRHp6ekAgPr6erz++uv461//iqioKADAs88+i9raWrz66qtYu3atW89nExERITuNSERERAS4ORIVHh6OuXPnoq6uzr5teHgYdXV1yM7OVrxPdna2rD0A1NbWumx/PbGxsYiOjkZ9fT26u7uxZMkSAMCVK1cAwD4yZWM0GmUz+IiIiIg8we3FNktLS1FSUoJ58+YhIyMDGzduRH9/Px588EEAwPLlyzFlyhRUVFQAAFavXo2cnBxs2LABBQUFqK6uxjvvvIMXX3zR/piffPIJ2tracPHiRQDA2bNnAUijWLYRq8rKStxyyy2Ii4tDU1MTVq9ejcceewzTp08HIIW1SZMmoaSkBD/+8Y9xww034KWXXsKFCxdQUFBgf65z587h008/RWdnJ/7v//7PvibVrbfeivDwcHe7g4iIiIKVmil9mzZtEqmpqSI8PFxkZGSII0eO2Pfl5OSIkpISWfsdO3aIadOmifDwcDFz5kyxZ88e2f7KykoBwOlWXl5ub1NWViYSEhJEWFiYmDp1qtiwYYMYHh6WPc7x48dFXl6emDx5soiMjBRZWVli7969sjY5OTmKz3XhwoUxvXYucUBERKQ/3vj+NgghhH/imz719vbCbDbDarXaa6+IiAKa1ap8fToAaG/n9elIF7zx/a2L2XlEROQnViuwcCGQkwOMnJ1ssUjbFy6U2hEFGYYoIiJyra8P6O4Gzp8H7r77WpCyWKSfz5+X9vf1+fMox85qlUbPlLS3MwySWxiiiIjIteRk4OBBID39WpBqbLwWoNLTpf1Kp/q0hqNq5GEMUURENLqUFHmQuvNOeYDSy5UcAm1UjfyOIYqIiK4vJQWoqpJvq6rST4ACAmtUjTSBIYqIiK7PYgGWLZNvW7bM+bSY1gXKqBppAkMUERGNzvF0V3o60NAgH83RY5DS+6gaaQJDFBERudbe7ny6a/5859Nirma8aVGgjKqR3zFEERGRa5GRQHy88+kux9Ni8fFSOz0ItFE18iuuWO4mrlhOREEnUFYsb2+XljEYWQM1MlgdOsTi8gDkje9vty9ATEREQcZsdh2S9BQ2bKNqgPKo2t1362tUjfyOIYqIiIKD2Qzs26c8qpaSIo1A6WVUjTSBIYqIiIJHoIyqkSawsJyIiIhIBYYoIiIiIhUYooiIiIhUYIgiIiIiUoEhioiIiEgFhigiIiIiFRiiiIiIiFRgiCIiIiJSgSGKiIiISAWGKCIiIiIVGKKIiIiIVGCIIiJtslqB9nblfe3t0n4iIj9iiCIi7bFagYULgZwcwGKR77NYpO0LFzJIEZFfMUQRkfb09QHd3cD588Ddd18LUhaL9PP589L+vj5/HiURBTmGKCLyHrWn5JKTgYMHgfT0a0GqsfFagEpPl/YnJ3vnuImIxoAhioi8Y7yn5FJS5EHqzjvlASolxduvgIhoVAxRROQdnjgll5ICVFXJt1VVMUARkSYwRBGRd3jilJzFAixbJt+2bJnzyBYRkR8wRBH5iren7GtxSYDxnJJzHLFKTwcaGuSBjEGKiPyMIYrIF7w9ZV/LSwKoOSXX3u48YjV/vvPIlqvQSETkAwxRRL7g7Sn7Wl4SQM0puchIID7eecTKcWQrPl5qR0TkJwxRRL7g7Sn7Wl0SQO0pObMZ2LcPOHTIecQqJUXavm+f1I6IyE8MQgjh74PQk97eXpjNZlitVkRFRfn7cEhvHEOFjSen7Hv78d3R3i6dRhxZAzUyWB06xPWeiMjrvPH9zZEoIl/y9pR9LS0JwFNyRBTgOBLlJo5E0bgE00gUIBWy9/UpjzS1t0sBiqfkiMgHOBJFpGfenrKvxSUBzGbXp+qSkxmgiEjXGKKIfMHbU/a5JAARkc+F+vsAiIKCrT4IUK4Puvvu8dUHefvxiYjICWui3MSaKFLN2/VBrD8iInLJG9/fHIki8hWz2XWI8cQUf28/PhERybAmioiIiEgFhigiIiIiFRiiiIiIiFRQFaI2b96MtLQ0mEwmZGZm4tixY6O2r6mpwYwZM2AymTBr1izs3btXtn/nzp3Iy8tDTEwMDAYDTpw44fQYra2tWLp0KeLi4hAVFYWioiJ0dXXJ2rz//vu47777EBsbi6ioKCxYsAAHDhyQtWlra0NBQQG+8IUvID4+Hv/yL/+Cq1evqukGIiIKVlar6yVD2tul/RTw3A5R27dvR2lpKcrLy/Huu+9i9uzZyM/PR3d3t2L7xsZGFBcXY8WKFWhpaUFhYSEKCwtx8uRJe5v+/n4sWLAATz31lOJj9Pf3Iy8vDwaDAfX19WhoaMDg4CAWL16M4eFhe7tFixbh6tWrqK+vR3NzM2bPno1Fixahs7MTADA0NISCggIMDg6isbERr776KrZu3Yof//jH7nYDEREFK6sVWLhQujbkyEVsLRZp+8KFDFLBQLgpIyNDrFq1yv7z0NCQSEpKEhUVFYrti4qKREFBgWxbZmamWLlypVPbCxcuCACipaVFtn3//v3CaDQKq9Vq39bT0yMMBoOora0VQgjx8ccfCwDirbfesrfp7e0VAOxt9u7dK4xGo+js7LS3ee6550RUVJQYGBhQPP7PPvtMWK1W+81isQgAsmMhIqIgYrEIkZ4uBCD9t61N2t7WJt9usfj3OP2tp8d1H1gs0n4fslqtHv/+dmskanBwEM3NzcjNzbVvMxqNyM3NRVNTk+J9mpqaZO0BID8/32V7JQMDAzAYDIiIiLBvM5lMMBqNOHz4MAAgJiYG06dPx2uvvYb+/n5cvXoVL7zwAuLj4zF37lz7scyaNQsJCQmyY+nt7cWpU6cUn7uiogJms9l+S/HH9ceIiMh93jrllpzsfDWAxkbnqwYE89IiQTJa51aIunTpEoaGhmQhBAASEhLsp8xG6uzsdKu9kqysLEyYMAFlZWW4cuUK+vv7sWbNGgwNDaGjowMAYDAY8Oabb6KlpQWRkZEwmUz45S9/iX379mHSpEmjHottn5J169bBarXabxZ/XH+MiIjc4+0vcdvVAGxB6s475QEq2P/g7usDurudr93peI3P7m6pHaDbGjNdzM6Li4tDTU0Ndu/ejYkTJ8JsNqOnpwdz5syB0Si9BCEEVq1ahfj4eLz99ts4duwYCgsLsXjxYnvQUiMiIgJRUVGyGxERaZy7X+JqpKQAVVXybVVVDFCAe6N1Oh61citExcbGIiQkxGlWXFdXFxITExXvk5iY6FZ7V/Ly8tDa2oru7m5cunQJVVVV+Oijj5Ceng4AqK+vx+uvv47q6mrceeedmDNnDp599lnccMMNePXVV0c9Fts+IiIKEL445WaxAMuWybctW+YcBILVWEfrfBF4vcStEBUeHo65c+eirq7Ovm14eBh1dXXIzs5WvE92drasPQDU1ta6bH89sbGxiI6ORn19Pbq7u7FkyRIAwJUrVwDAPjJlYzQa7TP4srOz8d5778lmEtbW1iIqKgq33nqrquMhIo3T6WkC8gBvnnJz/IJPTwcaGuSBjUFKMpbROj3XmLlbiV5dXS0iIiLE1q1bxenTp8UjjzwioqOj7TPeli1bJtauXWtv39DQIEJDQ8X69evFmTNnRHl5uQgLCxPvvfeevc3ly5dFS0uL2LNnjwAgqqurRUtLi+jo6LC32bJli2hqahLnzp0TVVVVYvLkyaK0tNS+/+OPPxYxMTHi/vvvFydOnBBnz54Va9asEWFhYeLEiRNCCCGuXr0qvvSlL4m8vDxx4sQJsW/fPhEXFyfWrVs35tfvjep+IvKSnh4hsrLkM6hsbDOpsrJ8PkuIXPDWbK6GBmnGnO3W0KD+GG3Hwtl5Y+PYJ7ab0u+ju21V8Mb3t9shSgghNm3aJFJTU0V4eLjIyMgQR44cse/LyckRJSUlsvY7duwQ06ZNE+Hh4WLmzJliz549sv2VlZUCgNOtvLzc3qasrEwkJCSIsLAwMXXqVLFhwwYxPDwse5zjx4+LvLw8MXnyZBEZGSmysrLE3r17ZW0++OADce+994obbrhBxMbGih/+8Ifi888/H/NrZ4gi0pFg+rLT2HRyt3kr8Hrji5nhfGxG/p41NCj/PjrydOB1oJkQFcwYooh0Rs0/5GOlleASCF/q3gi8wfDea5Wa91OHI1G6mJ1HRAHG3Tql8dQ1easuRkszinRcmGvn6bqY9nbn+86f7/wcrj5X12M2uz6W5GRpfzCLjATi451/zxx/H+PjpXaAfmvMPBbHggRHoojGyd1RE0+NsgR6XYw3R128zXFUR2k0Ii3N/eMPhNE5vRvraJ2Pfpd4Ok8DGKKIxsndfzA98Q+st04TaC24ePl0iFcohZ2RgXfmTHVhh6fc9MFHgZchSgMYoog8wN3wMZ6w4u2go7Xg4sXCXK8YGZKPHHHuz9BQIY4e9feRkjf5IPB64/vbIIQQ/jydqDe9vb0wm82wWq1cvZxoPBxrIGxGq1Nytz0g1bvk5DjXQI2svzh0aHxr0DQ2SrVWNg0NUv3NWFmtUr2S0jG0t0t1I2OpsVHTR1rgeNyhocDVq87/1cPrIE3zxvc3C8uJyD/cvWSGmktsuFvcCrhfxD7eVas9VaCu18JcQHo/tm27FpiAa8Hp8GHPFIITeQFDFJGe+Ws1bk88r7vhQ01YMZuBffukkaaRYSslRdq+b9+1UR53A40ngosnZtZ5eyaaL0yfLt0cVVUBmZmuAy+Rv3nsxGCQYE0UaYa/Zh954nl9WRPlDneK2D05o2i8ry8QZqK1tUmz8FzVlrEQnMaJheUawBBFmuGvKfbjfV5/zM5zx1gDjaeDy3gL1PU8E01rsxwpIDFEaQBDFGmKv758xvO8/lonSu3rGy3QeDq46G1mnSdobb0tClicnacBnJ1HmuOvGVnjeV53Z6N5avaaO8Y7485dep1ZN162OrTubufXauuT+Hh57RqRCt74/maIchNDFGmSr7/w/f283ubrQDOyQL2qSiqaH+vlafwRMj1J78dPusAlDojI2Xin2Ovteb3N10sFjHdmnZau4acWr0NHOsUQRaRn/lobSM9rEo3GH0sFqFnLylEgXHx4rNragOPHlfcdPy7tJ/Ilj1VXBQkWlpNm6HV2npZ5oohdTbH5eAvUg2F224cfCjFxonQJmCNH5PuOHJG2T5wotSNS4I3vb45EEenVeEcwtPy8/lpE1N3FOUdSe2ptvKezHPv+/HmpTm2s9VT+oOb97eoCPvtMWsl8wQLg6FFp+9Gj0s9Xr0r7u7q8d9xEI7Cw3E0sLCdN8VdBrjefV8+ztXx1rT5X9FDoP5731zEwhYYCzzwDPProtZ8PH5ZWOCdSwMJyIpLzV0GuN59XzzU+ycnO9VONjc51Vt4IUHop9B/P+5uZKQUl2zX2/vEfGaDIrxiiiEhb/BlEPMEfp9b0VOg/3vc3M1MagXL0zDMMUOQXPJ3nJp7OI/IRvS8+6atTa94+heitU7dq31/HU3o2HImiMeDpPCIKHikp0qKTjqqq9BGgfHlqzZuF/t5cg0rN+zuyJur556+d2nMsNifyEYYoItImvdT4jOTrU2vjnVE4Gm/Wp7n7/h4/Lg9Qhw8DK1fKa6QWLHC9jhSRFzBEEZH26KnGx5E/FusEvFfo7636NDXvb0ICYDI5n7pzLDY3maR2RD7Cmig3sSaKyMv8vUzAeOh5eYbReLI+bTzvb1ubtA7UHXc4P+7x41KASk1173goaHjj+zvUI49C5Cu8UGngs9X4AMo1PrYg4ulFRD3BdmpN6TNqO7Wmx8+orX7JsVBebX3aeN7f1FTXIUkpWBF5GUei3MSRKD8K1L/yyRnDsrZ4eqYk31/yA87Oo+Cm50UYtcxfl1gZjb8WESVn3qhP4/tLAYIhivRD74swapE3p7CT73k6EPurUJ5IJxiiSF/0dqFVrePoXuDwRiD210WuiXSCIYr0R8+LMGoNR/cChzcCsTfXoCIKACwsdxMLyzVA75cD0SL2aWAYWb9UVSUtYMnRWiIWlhPpdhFGrePoXmDg6W4in2KICiZanIXlDha5eo9eL7GiVf78XWMgJvIZhqhgEQizsFjk6h0c3fMsd3/XPB24fBGI9f4HGWmHzj9LDFHBIhBmYbHI1fM4uud57vyuefqPG18E4kD4g4y0IQA+SwxRwSJQZmFxkT7P0svonp7+WnXnd82Tf9z4KhAHwh9kpA2B8FkS5Bar1SoACKvV6u9DUaetTYj0dCGAa7f0dGk7BaeeHiEsFuV9Fou03596eoTIylL+nNo+z1lZ/j/Okcb6u+bYLj1diIYG+c9j/d30ZT956piJfPhZ8sb3N5c4cFNALHHQ2Ci/kGhDg/QXK5EWtbdLw/ojZ5mNPHV16JD/RlJdXQturL9rnlpiwpfXpOOyGOQpPvoscYkDGj/OwiK90fqpaFd1HRYLUFwsb+vqd81TM+p8ebqbswDJU3T8WWKICiZjKTrVU+0JBQ8tr3+kVNdhsQALFgBtbVKbpCQgNdV1gbce/7jR4zGTNun4s8QQpUdqgs5Yik6/8hXgnnt0PVNCtxher0+rf62OHClbsADIyroWoFJTgSNHgMOHlQu89bjEhB6PmbRJ758lj1VXBQm/F5arLR4dy/3mzBEiLc25oG9k4Z+rImRSR6+F076m9UkRSseXmio/vpHvp8WiXESr5d85PR4zaZOPP0ve+P7mSJTeqJ0SOpY1lurrgbfe0m7tSaAKhGm+3qaHv1aVRsq2bZP/vo1cz0wvS0w40uMxkzYFwmfJY3EsSPh9JEoI708J1fpf/IGIU8Zd08vIh9rfG60vMaFEj8dM2uTDzxKXONAAzSxx4O0poVwGwfc4ZVyZbfZbd7dzX9j6LD7ev6vVjxwpq6qSCmO1UvxORNpZ4mDz5s1IS0uDyWRCZmYmjh07Nmr7mpoazJgxAyaTCbNmzcLevXtl+3fu3Im8vDzExMTAYDDgxIkTTo/R2tqKpUuXIi4uDlFRUSgqKkJXV5d9/8GDB2EwGBRvx48ft7fbsWMHbrvtNnzhC1/ATTfdhP/4j/9Q0wX+580iWx3PlNA1rRZO+5vWL/fDS+cEJk72oDFwO0Rt374dpaWlKC8vx7vvvovZs2cjPz8f3d3diu0bGxtRXFyMFStWoKWlBYWFhSgsLMTJkyftbfr7+7FgwQI89dRTio/R39+PvLw8GAwG1NfXo6GhAYODg1i8eDGGh4cBAPPnz0dHR4fs9tBDD+Hmm2/GvHnzAAB//OMf8Z3vfAf/+I//iJMnT+LZZ5/Fr371KzzzzDPudoP/eSvo6KH2JFBpKbxq7QtEy5f7CYS6Dn/Q2mfMUQBc0418xN3zfxkZGWLVqlX2n4eGhkRSUpKoqKhQbF9UVCQKCgpk2zIzM8XKlSud2l64cEEAEC0tLbLt+/fvF0ajUXYes6enRxgMBlFbW6v4vIODgyIuLk48+eST9m3FxcXigQcekLX7z//8T5GcnCyGh4cVH+ezzz4TVqvVfrNYLIFbE6WX2pNApKWaKM4WdB9rhNyj9c8Y/y0MSH6fnTc4OIjm5mbk5ubatxmNRuTm5qKpqUnxPk1NTbL2AJCfn++yvZKBgQEYDAZERETYt5lMJhiNRhw+fFjxPrt27cLly5fx4IMPyh7HZDLJ2t1www1ob2/Hhx9+qPg4FRUVMJvN9luKv0+tePPUAf+i9g+tnQ7ibEH3jXekTMujMt6g9c+Y1lfJJ81wK0RdunQJQ0NDSEhIkG1PSEhAZ2en4n06Ozvdaq8kKysLEyZMQFlZGa5cuYL+/n6sWbMGQ0ND6OjoULzPK6+8gvz8fCQ7fMjz8/Oxc+dO1NXVYXh4GO+//z42bNgAAC4fZ926dbBarfabxd+ns7wZdLReexKotBZebV8gaWmuv0C2bWOY9hR3Tx0FQuDSQ0jR8ir5pBm6WCcqLi4ONTU12L17NyZOnAiz2Yyenh7MmTMHRqPzS2hvb8f+/fuxYsUK2faHH34Yjz76KBYtWoTw8HBkZWXhW9/6FgAoPg4AREREICoqSnbzK28HHS3XnviSL7+otBheo6KAyZOB0FDnL5Df/la6JtxYakIC4Qvf29wZlQmkWh09hBRO9qDrcCtExcbGIiQkRDYrDgC6urqQmJioeJ/ExES32ruSl5eH1tZWdHd349KlS6iqqsJHH32E9PR0p7aVlZWIiYnBkiVLZNsNBgOeeuopfPrpp/jwww/R2dmJjIwMAFB8HM1i0PEuf3xRae097esDenqAq1fl29evB7797bGdbgmkL3xvcmdURuunwdyl9ZCipckepEluhajw8HDMnTsXdXV19m3Dw8Ooq6tDdna24n2ys7Nl7QGgtrbWZfvriY2NRXR0NOrr69Hd3e0UlIQQqKysxPLlyxEWFqb4GCEhIZgyZQrCw8Oxbds2ZGdnIy4uTtXxUAAKtC8qNZKTpRGn0FD59qKisZ9ucdWPp05J15dT6kc/jU4NDQ/h4AcHse29bTj4wUEMDQ/59gBcjcqkpspHZWyBy/Fixlo7DeYOLYcUzlSmsXC3Er26ulpERESIrVu3itOnT4tHHnlEREdHi87OTiGEEMuWLRNr1661t29oaBChoaFi/fr14syZM6K8vFyEhYWJ9957z97m8uXLoqWlRezZs0cAENXV1aKlpUV0dHTY22zZskU0NTWJc+fOiaqqKjF58mRRWlrqdHxvvvmmACDOnDnjtO/jjz8Wzz33nDhz5oxoaWkRP/jBD4TJZBJHjx4d8+vXxIrl5H1ami3nD46vPzRUvgp3aKgQR464/zjp6ULs3y9ERMTYrivnI78//XuR/MtkgZ/Afkv+ZbL4/enfyxv6YpZdQ4O8r5OSlGevpaZe60e9XlVAy79jnJ0XkLzx/a3qsi+bNm0SqampIjw8XGRkZIgjDv+g5uTkiJKSEln7HTt2iGnTponw8HAxc+ZMsWfPHtn+yspKAcDpVl5ebm9TVlYmEhISRFhYmJg6darYsGGD4rIExcXFYv78+YrH/fHHH4usrCwxYcIE8YUvfEF89atflR37WDBEBZFgvfzNyC+QnTvlfeDuF4hSP44MUX76cvr96d8Lw08MsgCFn0AYfmIQhp8YrgUpXwQ8d/spKUnerqHBO8flDVoPKVpfgoFU4WVfNEAzl32ha6xW6ZSQ0imM9nZpFpnamqJgvPyN42VWfvvbazVQNqGhwKxZwIEDY+/Xkf2YlARcvOjXS6QMDQ8h7ddpaO9VLnw3wIDkqGRcuP8thPzdV68d36FDnj9dpnTZmOJioK1N2p+aKs2ItPVTaqq03bYf0FZB9vXo4VI+3vx3hfzCG9/fDFFuYojSGG/+YxzM17KzWoGzZ6UvcqXrwaWlAW+9NbZ+UOpHDYSAgx8cxD2v3nPddgf234i7mzq8d3zt7VKR/cgQabFItWOOfQTI+07P1+ljSCEf08y184g0w1tF4MFeVNrXJw9QIxcA/eCDsS0A6qof29qcZ/75eFZWR5/y2nCK7bwZTkZbJ+zwYWnUztHVq9cClO192bZNvq6XHq7Tp7UZqUQqMESRvnlj0T6trSDuD55YAHS0fkxNlU7nOfLxrKwbI28cW7tP4d2AN9o6YYDzDMlLl+Sz9iwWKfBOmiQFKV9fVYBrgVEQY4gi/fP0on1aW0HcHzyxAKirfnQUEQHs3++XUb67Uu9CclQyDDAo7jcIIMUK3PUhvB/wlEZlbKN4bW1SaLKNSA0OXhvFcxzps1qBHTt8W0fEtcAoyLEmyk2sidIwTxaBs17DM0b2o2P9T2oqsHcvMHOm82k/bxRvK9h5Zice2PEAAEDg2j+Fhr/97+9m/wz3r3nF9/VGSnVSgLxGKilJGqVyPLXn61qo0eq5/PB+Eo2GNVFErnh60T7Wa3jGyH50HJ06fFgKUIDfRvnuv+V+/K7od5gSNUW2PflKCH731Rdw/9If+ec0rtIonq1GylZYfvGifwMUoI9r4BF5EUei3MSRKA1Smh6ux9lKwUKDo3xDw0N4+/Qf0fHjx3BjZz/u2taIkJvSrjXwx7R7V/2kxWU3gnkmK+kGlzjQAIYojeHpBO/QYNDxCa2/bi2HFS2GOyIHPJ1HNBKLwD0vmIuFtXwaV8vLbmj5GnhEXsQQRfrmiVlkJMcLMGuPlpfd0HK4I/IyhijSPy2PHugRi4W1R6sjrloOd0Q+EHr9JkQUdGxfzrYvSFuti1bqb4KNbcRVqV7LNuLqj3otW7gDlMOdrRifp9MpQLGw3E0sLCeP0nohM4uF6Xq0/hkm+hsWlgciXjIheGm9gJvFwjQWPJ1OQYwhyp+0/iVK3qXlAm4WC2sD/8gi0jSGKH/S8pcoeZ9WC7hZLKwN/COLSPMYovxJq1+i5DuevniyJ2h1JliwcfVH1qlT0jX0lP7I4ugUkU+xsNxNXiks1/IqxOQbWivgZrGwNow8rfrcc8CSJcDAgHQNvcOHr/0b4Y9L0xDpCAvLA1VKinS9N0dVVQxQwUKLBdwsFvY9pfon2+hfaqoUpPLzpQA1EksAiPyCIUoLtPglSr7hqwJuFihr22j1TwBw9ar856QkoK2NJQBEfsYQ5W+cBaVd3g4evirgZoGy9jnWP33lK8CxY9J2i0Wqf7p4Ud4+NPTa6NRodXQMz0RexRDlT5wFpV2+CB6+KuDmLFDts00ySUsDPvhACkZ/+IMUoNrapDZJSdItIkLaNnJ0amQJAMMzkdcxRPkTZ0Fply+Ch68unsxZoPqQkgJs3y6NMl29Ctx/vzxAGY3SiFRCgvTzyNGp73xHHpYYnom8T5BbrFarACCsVqtnHrCnRwiLRXmfxSLtJ/9oaxMiPV0IQPpvQ4P857Y2fx+hexxfj+2mx9ehR+78nu/cKX+PYmOFSE6W/j80VIj/+R8hUlOlnyMihKiqkrYDQqSlyd/PQPsME42Dx7+/hRBc4sBNvHZekAm05Se0tpRCMLCdVuvudv7cjFyWoLfX+fNmYxuhsv03NRV45RVg5UqpvW17ero0imkbWQy0zzCRSlzigMjXAmn5Cc4C9Y+xnlY7e1Z+ivX55+WP8+yzUs2ULUht3HgtQKWnS2tGKZUABNJnmEhrPDamFSS8MRxIGhYop8D8eVqHp6yv3/9Hj8p/PnLE+XMXGirErl3SKTtXn0el/vTkZ5jvJemYN76/GaLcxBAVRAKlnsRiUT7uka/P1ZfjePT0CJGVpdxftufPygqOL9/RwoxjPzkGqPR0qUbKseZpZM1UQ8PYnnO8n2G+l6RzDFEawBAVJPwZPDzNn19+gdSPntDQ4DoA9fQIceyYcn8dPXptBMoWqK43quTpvud7STrHEKUBDFF+4uvTCIH2V7c/T8MEyojeeI3ltNpon7sjR+QjUtfrR298hvleko5xdp4GcHaeH7gzu8mT13TjRXg9J9BmiLn72Rh5ZYKqKqmoX2mlcaXHbm+XFsc8f14qLn/rLan9yMd1nJWn5jjHItDeSwoanJ1HwclfiwbyIryeE0gzxNxdCdzdKxMofe4cF+a1BSjg+gvzeuMzHEjvJdE4MUSR9nHFbf0LpOUV3A31nrgyga9Wtx+LQHgveU1B8hCGKNIHxy+c6110lbQl0C6y7W6o91QA0sLIqDfey9ECzenT0k2J2rDDawqSBzFEkX7wNIL+BOpFtt0N9VoIQO4aGW4c38vUVGDXrvG/l6MFmlOngDlzpNupU/J94wk7vKYgeRBDFOlHIJxGCDaBfJHtQA71SuHG9l6mpko/P/SQ1G487+VogebrXwcGBqTb17/uubDD8gDyJI/N8wsSXOLATzi1Wr8CdZXrQFnNXomrNaFOnrx28eORa0KpfS9H+91OTZU/nyd/7wP5/SNFXCdKAxii/ICL/JHWBEOo9+VrHC3QeDPsjLb4KQUcb3x/83QeaV8gnxIi/QnUOq+RfDmZY7RTo946bcryAPIAhijSPi1N76bANdZp78EU6lNSgOeek29zDDCeWg5gtEDjjbATaDNGyW+4YrmbuGI5KeLq5vrm7qr4wfJ+nzoFzJ0rFXfb2MIj4JmrBYy2mrutiL2t7forvY+V4+rvjo9xvdXfSfe4YjmRFnHdGf1zd9q7HpcscJfjDDkASEqSQs3588CCBdJtvMsBjHZqNDVVCk9tbdL/e+q0aTCNJJLXMUQRjRfXndG/6017T0sDtm1zPfIUaAHZFm5sASY1Fbh4UdqXlOQcbtSO2IwWaPbuBSIipNvevZ4LO74oD+CK6EGDp/PcxNN5pMidC8ySdildXDctDZg8Gejp8e0FsP1p5OlNwLlfIiKA5mZg5szxP5erU6O21cpvvdV5n1ZPm/rrgul0XTydR6RVvCxNYFCaCfarX0kBKphGGkeO1ij1y65d4w9QtudyNZJ1663KAQrQ7mlTjkwHFVUhavPmzUhLS4PJZEJmZiaOHTs2avuamhrMmDEDJpMJs2bNwt69e2X7d+7ciby8PMTExMBgMODEiRNOj9Ha2oqlS5ciLi4OUVFRKCoqQldXl33/wYMHYTAYFG/Hjx+3t9u/fz+ysrIQGRmJuLg4fOMb38AHH3ygphuI5AJ5BetgoTQT7Ic/BH7729FXuN61y/Vj6vX0jWO4UeqX//f/OItNCVdEDy7uLixVXV0twsPDxZYtW8SpU6fEww8/LKKjo0VXV5di+4aGBhESEiKefvppcfr0afH444+LsLAw8d5779nbvPbaa+KJJ54QL730kgAgWlpaZI/x6aefivT0dLF06VLxpz/9SfzpT38S9913n7jjjjvE0NCQEEKIgYEB0dHRIbs99NBD4uabbxbDw8NCCCHOnz8vIiIixLp168S5c+dEc3Oz+MpXviJuv/32Mb9+LrZJLnEFZH273uKSR44ov78nTwqRlaX8XtseMysrMFZmD9SFRb2B/x5ojiZWLM/IyBCrVq2y/zw0NCSSkpJERUWFYvuioiJRUFAg25aZmSlWrlzp1PbChQuKIWr//v3CaDTKXnhPT48wGAyitrZW8XkHBwdFXFycePLJJ+3bampqRGhoqD14CSHErl27hMFgEIODg65ftAOGKFLELxp9G+uq+H/4g/MK14G8on4gvzZf4IromuL3FcsHBwfR3NyM3Nxc+zaj0Yjc3Fw0NTUp3qepqUnWHgDy8/NdtlcyMDAAg8GAiIgI+zaTyQSj0YjDhw8r3mfXrl24fPkyHnzwQfu2uXPnwmg0orKyEkNDQ7BaraiqqkJubi7CwsJcPndvb6/sRiQTLCtYB7KxTHs3m4HHHpPfb9ky6esxUE/fcDkA9bgielBwK0RdunQJQ0NDSEhIkG1PSEhAZ2en4n06Ozvdaq8kKysLEyZMQFlZGa5cuYL+/n6sWbMGQ0ND6OjoULzPK6+8gvz8fCQ7/MN1880344033sCPfvQjREREIDo6Gu3t7dixY4fL566oqIDZbLbfUljfQiPxi0b/rjftfds24K9/BT74QHmFayAwJxbwagHqcEX0oKGL2XlxcXGoqanB7t27MXHiRJjNZvT09GDOnDkwGp1fQnt7O/bv348VK1bItnd2duLhhx9GSUkJjh8/jkOHDiE8PBwPPPAAhIuVHtatWwer1Wq/Wfjhp5H4RRMYXM0Sa28HiouvBShXI40GQ2BOLAiGhUU9iSPTQSXUncaxsbEICQmRzYoDgK6uLiQmJireJzEx0a32ruTl5aG1tRWXLl1CaGgooqOjkZiYiPT0dKe2lZWViImJwZIlS2TbN2/eDLPZjKefftq+7Te/+Q1SUlJw9OhRZGVlOT1WRESE7DQikSKz2fWXiSdP4wTL5Ua0xDbSCCiPNNrW/bFalU/f6Hkkitw31s8LR6YDglsjUeHh4Zg7dy7q6urs24aHh1FXV4fs7GzF+2RnZ8vaA0Btba3L9tcTGxuL6Oho1NfXo7u72ykoCSFQWVmJ5cuXO9U5XblyxWnkKiQkxP46iDQtkC8vo+UVnscy0vjyy8CSJTx9QxyZDjbuVqJXV1eLiIgIsXXrVnH69GnxyCOPiOjoaNHZ2SmEEGLZsmVi7dq19vYNDQ0iNDRUrF+/Xpw5c0aUl5c7LXFw+fJl0dLSIvbs2SMAiOrqatHS0iI6OjrsbbZs2SKamprEuXPnRFVVlZg8ebIoLS11Or4333xTABBnzpxx2ldXVycMBoN44oknxPvvvy+am5tFfn6+uOmmm8SVK1fG9Po5O4/8JlBnSvX06HuJAK28Lz09rp/DYtFu/xH5iCaWOBBCiE2bNonU1FQRHh4uMjIyxJEjR+z7cnJyRElJiaz9jh07xLRp00R4eLiYOXOm2LNnj2x/ZWWlAOB0Ky8vt7cpKysTCQkJIiwsTEydOlVs2LDBvv6To+LiYjF//nyXx75t2zZx++23iwkTJoi4uDixZMkSxcDlCkMU+VUgLqWglRCilhZCoBaOgUjjvPH9zWvnuYnXziO/U7q+m95ngen92oP+rlVrb5dO547sr5H9euiQPpdaIPIAb3x/M0S5iSGKNKGxUZpGb9PQIM0A0rNADIe+pPcgSuRlvAAxEQXuIn689uD48CLYRD7HEEWkJ4G8iJ+Ww6GWZw86YhAl8imGKCK9CORF/LQcDvW0tISWgyhRAGKIItKLQL28jNbDYV8f0N3tHOgcg193t9TOn7QcRIkCFEMUkV4E6iJ+vgyHak7LJSdr/wLDWg+iRAGKs/PcxNl5ROPgaikAqxV4/31g2jTnEOipJQJsp+W6u50LrW2jOPHxroOolmcPjve1EQUBzs4jIv0arbaotxf41reUa4s8dZHb8Z6W03LRdqCOUhJpHEMUEfmGv2uLxntaTutF22az62P3VBAlIhmGKNIWvUwlJ/dpobZI7VpKLNomIgUMUaQdeppKTupoYUFId0/LsWibiFxgiCLt8PfpHvINf9cWuXtaLlCXliCicWOIIu3Qwuke8j5/1hapOS3Hom0icoEhirRFC6d7yHv8WVs0ntNyLNomIgUMUaQ9/j7dQ97h79oirZ+W46QKIt0J9fcBEDlxdbqHI1H6ZgsxgHKIsS0I6a0QYzstp7TYp+20nCcW9VSDi2US6RJHokhbOJU8cGmhtkirp+U4qYJIlxiiSDv8fbqHvE+rIcbfOKmCSJd4Oo+0w9+ne4j8yfFzbptUAXBSBZGG8QLEbuIFiL3M1QVqAc9diJZIyxobrwUoQDqlPX++/46HKEDwAsQU+Hi6h/TGk7PqtH59PiKSYYgiIlLLk5cq4qQKIt1hiCIiUstTs+o4qYJIlxiiiIjU8tSsOq0vBEpEilhY7iYWlhORE8eRJ5uxzKpznEgxclKF40QKTqogGjcWlhMRaZGaSxWNrKdynFQxsp6KkyqINIkhiohovNTMquMq5US6xxBFRDQeamfVcZVyIt1jiCIiUmu8s+ocC8dtq5Q7PhZXKSfSNIYoIiK1PDGrTk09FRFpAmfnuYmz88htvJSNZ2mtP8d7PGpn9hGRWzg7j0hvPLmiNWmzP8dzqSKuUk6kawxRRN7EGVieFUj9yVXKiXSPIYrImzgDy7MCqT+5SjmR7rEmyk2siSJVWPfiWYHSn1qr7yIKYKyJItIrzsDyrEDpz/HUUxGR3zFEEfmCmhWtfclqdV17096uvcJ3rfcnEQUFhigib3M89TRlivIMrOPHgbY2/xyfFme8jYYz2ohIIxiiiLzJcQaWwQB0dgIhIfLi6Oxs6TZzpn+ClJ5mvHFGGxFpCEMUkTfZZmBNmQIYjcDQELBgAXDxovTFP2UK8NFH0vbPPgO6unx/jHqa8cYZbUSkIZyd5ybOziO32WZgffSRFKCuXgVCQ4FnngFWrZICVGgocPgwkJnpv+PUy4w3zmgjIhW88f3NEOUmhigal6NHrwUpGy0EKJvGRukiuDYNDdLpMiIineMSB0R6l5kpjUA5euYZbQQozngjInILQxSRLx09Cjz6qHzbo49K2/2JM96IiNzGEEXkK46n8kJDgeefl/579aq03V9BijPeiIhUURWiNm/ejLS0NJhMJmRmZuLYsWOjtq+pqcGMGTNgMpkwa9Ys7N27V7Z/586dyMvLQ0xMDAwGA06cOOH0GK2trVi6dCni4uIQFRWFoqIidDnMZDp48CAMBoPi7fjx4wCAn/zkJ4r7J0yYoKYbiMbu+HF5gDp8GFi5UvqvY5D622fVpzjjjYhIFbdD1Pbt21FaWory8nK8++67mD17NvLz89Hd3a3YvrGxEcXFxVixYgVaWlpQWFiIwsJCnDx50t6mv78fCxYswFNPPaX4GP39/cjLy4PBYEB9fT0aGhowODiIxYsXY3h4GAAwf/58dHR0yG4PPfQQbr75ZsybNw8AsGbNGqc2t956K/7+7//e3W4gck9CAmAyOReRZ2ZeC1Imk9TO18xmYN8+4NAh51l4KSnS9n37OOONiGgk4aaMjAyxatUq+89DQ0MiKSlJVFRUKLYvKioSBQUFsm2ZmZli5cqVTm0vXLggAIiWlhbZ9v379wuj0SisVqt9W09PjzAYDKK2tlbxeQcHB0VcXJx48sknXb6WEydOCADirbfectlmJKvVKgDIjoVoTD78UIhjx5T3HTsm7SciIq/wxve3WyNRg4ODaG5uRm5urn2b0WhEbm4umpqaFO/T1NQkaw8A+fn5LtsrGRgYgMFgQEREhH2byWSC0WjE4cOHFe+za9cuXL58GQ8++KDLx3355Zcxbdo03HXXXaM+d29vr+xGpEpqKnDHHcr77rhD2k9ERLrhVoi6dOkShoaGkDDilENCQgI6OzsV79PZ2elWeyVZWVmYMGECysrKcOXKFfT392PNmjUYGhpCR0eH4n1eeeUV5OfnI9nFKsufffYZ/uu//gsrVqwY9bkrKipgNpvttxQtLTpIREREfqOL2XlxcXGoqanB7t27MXHiRJjNZvT09GDOnDkwGp1fQnt7O/bv3z9qQPrDH/6Avr4+lJSUjPrc69atg9Vqtd8snOpNREREAELdaRwbG4uQkBDZrDgA6OrqQmJiouJ9EhMT3WrvSl5eHlpbW3Hp0iWEhoYiOjoaiYmJSE9Pd2pbWVmJmJgYLFmyxOXjvfzyy1i0aJHTKNlIERERstOIRERERICbI1Hh4eGYO3cu6urq7NuGh4dRV1eH7OxsxftkZ2fL2gNAbW2ty/bXExsbi+joaNTX16O7u9spKAkhUFlZieXLlyMsLEzxMS5cuIADBw5c91QeERERkStujUQBQGlpKUpKSjBv3jxkZGRg48aN6O/vtxdwL1++HFOmTEFFRQUAYPXq1cjJycGGDRtQUFCA6upqvPPOO3jxxRftj/nJJ5+gra0NFy9eBACcPXsWgDSKZRuxqqysxC233IK4uDg0NTVh9erVeOyxxzB9+nTZ8dXX1+PChQt46KGHXL6GLVu24MYbb8S9997r7ssnIiIikqiZ0rdp0yaRmpoqwsPDRUZGhjhy5Ih9X05OjigpKZG137Fjh5g2bZoIDw8XM2fOFHv27JHtr6ysFACcbuXl5fY2ZWVlIiEhQYSFhYmpU6eKDRs2iOHhYadjKy4uFvPnz3d57ENDQyI5OVn86Ec/UvPSucQBERGRDnnj+9sghBB+zHC6442rQBMREZF3eeP7Wxez84iIiIi0hiGKiIiISAWGKCIiIiIVGKKIiIiIVGCIIiIiIlKBIYqIiIhIBYYoIiIiIhUYooiIiIhUYIgiIiIiUoEhioiIiEgFhihyzWoF2tuV97W3S/uJiIiCFEMUKbNagYULgZwcwGKR77NYpO0LFzJIERFR0GKIImV9fUB3N3D+PHD33deClMUi/Xz+vLS/r8+fR0lEROQ3DFGkLDkZOHgQSE+/FqQaG68FqPR0aX9ysn+Pk4iIyE9C/X0ApGEpKVJQsgWnO++UttsCVEqKHw+OiIjIvzgSRaNLSQGqquTbqqoYoIiIKOgxRNHoLBZg2TL5tmXLnIvNiYiIggxDFLnmWESeng40NMhrpBikiIgoiDFEkbL2duci8vnznYvNXa0jRUREFOBYWE7KIiOB+Hjp/x2LyB2LzePjpXZERERBiCGKlJnNwL590jpQI5cxSEkBDh2SApTZ7J/jIyIi8jOGKHLNbHYdkrg+FBERBTnWRBERERGpwBBFREREpAJDFBEREZEKDFFEREREKjBEEREREanAEEVEBABWq+vFY9vbpf1ERA4YooiIrFZg4UIgJ8f5ckYWi7R94UIGKSKSYYgiIurrA7q7na8L6Xj9yO5uqR0R0d8wRBERJSc7XxeysdH5+pFcZJaIHHDFciIiQH5dyPPngTvvlLbbApTt+pFERH/DkSgiIpuUFKCqSr6tqooBiogUMUQREdlYLMCyZfJty5Y5F5sTEYEhiohI4lhEnp4ONDTIa6QYpIhoBIYoIqL2duci8vnznYvNXa0jRURBiYXlRESRkUB8vPT/jkXkjsXm8fFSOyKiv2GIIiIym4F9+6R1oEYuY5CSAhw6JAUos9k/x0dEmsQQRUQESAHJVUji+lBEpIA1UUREREQqMEQRERERqcAQRURERKQCQxQRERGRCgxRRERERCowRBERERGpwBBFREREpIKqELV582akpaXBZDIhMzMTx44dG7V9TU0NZsyYAZPJhFmzZmHv3r2y/Tt37kReXh5iYmJgMBhw4sQJp8dobW3F0qVLERcXh6ioKBQVFaGrq8u+/+DBgzAYDIq348eP29sJIbB+/XpMmzYNERERmDJlCn72s5+p6QYiIiIKYm6HqO3bt6O0tBTl5eV49913MXv2bOTn56O7u1uxfWNjI4qLi7FixQq0tLSgsLAQhYWFOHnypL1Nf38/FixYgKeeekrxMfr7+5GXlweDwYD6+no0NDRgcHAQixcvxvDwMABg/vz56OjokN0eeugh3HzzzZg3b579sVavXo2XX34Z69evx5///Gfs2rULGRkZ7nYDERERBTmDEEK4c4fMzEzccccdeOaZZwAAw8PDSElJwfe//32sXbvWqf03v/lN9Pf34/XXX7dvy8rKwm233Ybnn39e1vaDDz7AzTffjJaWFtx222327W+88Qbuvfde/PWvf0VUVBQAwGq1YtKkSXjjjTeQm5vr9Lyff/45pkyZgu9///v493//dwDAmTNn8OUvfxknT57E9OnTx/R6BwYGMDAwYP+5t7cXKSkpsFqt9mMhIiIibevt7YXZbPbo97dbI1GDg4Nobm6WhRaj0Yjc3Fw0NTUp3qepqckp5OTn57tsr2RgYAAGgwERERH2bSaTCUajEYcPH1a8z65du3D58mU8+OCD9m27d+9Geno6Xn/9ddx8881IS0vDQw89hE8++cTlc1dUVMBsNttvKbYLkxIREVFQcytEXbp0CUNDQ0hISJBtT0hIQGdnp+J9Ojs73WqvJCsrCxMmTEBZWRmuXLmC/v5+rFmzBkNDQ+jo6FC8zyuvvIL8/HwkO1zz6vz58/jwww9RU1OD1157DVu3bkVzczMeeOABl8+9bt06WK1W+81isYz5uImIiChw6WJ2XlxcHGpqarB7925MnDgRZrMZPT09mDNnDoxG55fQ3t6O/fv3Y8WKFbLtw8PDGBgYwGuvvYa77roLd999N1555RUcOHAAZ8+eVXzuiIgIREVFyW5EREREoe40jo2NRUhIiGxWHAB0dXUhMTFR8T6JiYlutXclLy8Pra2tuHTpEkJDQxEdHY3ExESkp6c7ta2srERMTAyWLFki237jjTciNDQU06ZNs2+75ZZbAABtbW1jrpMiIiIicmskKjw8HHPnzkVdXZ192/DwMOrq6pCdna14n+zsbFl7AKitrXXZ/npiY2MRHR2N+vp6dHd3OwUlIQQqKyuxfPlyhIWFyfbdeeeduHr1KlpbW+3b3n//fQDATTfdpOp4iIiIKDi5NRIFAKWlpSgpKcG8efOQkZGBjRs3or+/317AvXz5ckyZMgUVFRUApCUFcnJysGHDBhQUFKC6uhrvvPMOXnzxRftjfvLJJ2hra8PFixcBwH5qLTEx0T5iVVlZiVtuuQVxcXFoamrC6tWr8dhjjzmNHtXX1+PChQt46KGHnI49NzcXc+bMwfe+9z1s3LgRw8PDWLVqFb72ta/JRqeIiIiIrkuosGnTJpGamirCw8NFRkaGOHLkiH1fTk6OKCkpkbXfsWOHmDZtmggPDxczZ84Ue/bske2vrKwUAJxu5eXl9jZlZWUiISFBhIWFialTp4oNGzaI4eFhp2MrLi4W8+fPd3nsH330kbj//vvFxIkTRUJCgvjud78rLl++PObXbrVaBQBhtVrHfB8iIiLyL298f7u9TlSw88Y6E0RERORdfl8nioiIdMRqBdrblfe1t0v7iUg1higiokBktQILFwI5OcDI9e0sFmn7woUMUkTjwBBFRBSI+vqA7m7g/Hng7ruvBSmLRfr5/Hlpf1+fP4+SSNcYooiIAlFyMnDwIJCefi1INTZeC1Dp6dJ+h6s6EJF73F7igIiIdCIlRQpKtuB0553SdluA4rVAicaFI1FERIEsJQWoqpJvq6pigCLyAIYoIqJAZrEAy5bJty1b5lxsTkRuY4giIgpUjkXk6elAQ4O8RopBimhcGKKIiAJRe7tzEfn8+c7F5q7WkSKi62JhORFRIIqMBOLjpf93LCJ3LDaPj5faEZEqDFFERIHIbAb27ZPWgRq5jEFKCnDokBSgzGb/HB9RAGCIIiIKVGaz65DE9aGIxo01UUREREQqMEQRERERqcAQRURERKQCQxQRERGRCgxRRERERCowRBERERGpwBBFREREpAJDFBEREZEKDFFEREREKnDFcjcJIQAAvb29fj4SIiIiGivb97bte9wTGKLc1NfXBwBIsV3Mk4iIiHSjr68PZg9dM9IgPBnJgsDw8DAuXrwIIQRSU1NhsVgQFRXl78MKOr29vUhJSWH/+wH73n/Y9/7DvvcfT/W9EAJ9fX1ISkqC0eiZaiaORLnJaDQiOTnZPiwYFRXFXyg/Yv/7D/vef9j3/sO+9x9P9L2nRqBsWFhOREREpAJDFBEREZEKDFEqRUREoLy8HBEREf4+lKDE/vcf9r3/sO/9h33vP1ruexaWExEREanAkSgiIiIiFRiiiIiIiFRgiCIiIiJSgSGKiIiISAWGKCIiIiIVAjZEbd68GWlpaTCZTMjMzMSxY8dGbV9TU4MZM2bAZDJh1qxZ2Lt3r33f559/jrKyMsyaNQsTJkxAUlISli9fjosXL8oe45NPPsF3vvMdREVFITo6GitWrMCnn36q+Hznzp1DZGQkoqOj3ToWPdBr3586dQrf+MY3kJaWBoPBgI0bN6p6/f6k175/6aWXcNddd2HSpEmYNGkScnNzr3vsWqPXvt+5cyfmzZuH6OhoTJgwAbfddhuqqqrUdYKf6LXvHVVXV8NgMKCwsHDMr1sr9Nr/W7duhcFgkN1MJpN7L14EoOrqahEeHi62bNkiTp06JR5++GERHR0turq6FNs3NDSIkJAQ8fTTT4vTp0+Lxx9/XISFhYn33ntPCCFET0+PyM3NFdu3bxd//vOfRVNTk8jIyBBz586VPc7ChQvF7NmzxZEjR8Tbb78tvvjFL4ri4mKn5xscHBTz5s0T9957rzCbzW4di9bpue+PHTsm1qxZI7Zt2yYSExPFr371K4/0ia/oue+//e1vi82bN4uWlhZx5swZ8d3vfleYzWbR3t7umc7xMj33/YEDB8TOnTvF6dOnxblz58TGjRtFSEiI2Ldvn2c6x8v03Pc2Fy5cEFOmTBF33XWXuO+++8bVH76m5/6vrKwUUVFRoqOjw37r7Ox06/UHZIjKyMgQq1atsv88NDQkkpKSREVFhWL7oqIiUVBQINuWmZkpVq5c6fI5jh07JgCIDz/8UAghxOnTpwUAcfz4cXubP/7xj8JgMIiPPvpIdt9//dd/Ff/wD/8gKisrnd5UNceiJXrue0c33XST7kJUoPS9EEJcvXpVREZGildffXXUdloRSH0vhBC33367ePzxx6/bTgv03vdXr14V8+fPFy+//LIoKSnRXYjSc/+P9fdhNAF3Om9wcBDNzc3Izc21bzMajcjNzUVTU5PifZqammTtASA/P99lewCwWq0wGAz24cGmpiZER0dj3rx59ja5ubkwGo04evSofVt9fT1qamqwefNmjx2LVui97/Us0Pr+ypUr+PzzzzF58uQxtfenQOp7IQTq6upw9uxZfOUrX7lue38LhL5/8sknER8fjxUrVoz6WrUoEPr/008/xU033YSUlBTcd999OHXq1KiveaSAC1GXLl3C0NAQEhISZNsTEhLQ2dmpeJ/Ozk632n/22WcoKytDcXGx/YrSnZ2diI+Pl7ULDQ3F5MmT7Y9z+fJlfPe738XWrVtdXona3WPREr33vZ4FWt+XlZUhKSnJ6R9bLQqEvrdarZg4cSLCw8NRUFCATZs24Wtf+9roL1wD9N73hw8fxiuvvIKXXnrp+i9Wg/Te/9OnT8eWLVvwP//zP/jNb36D4eFhzJ8/H+3t7dd/8bbnHXNLAiAVvRUVFUEIgeeee86t+z788MP49re/rYu/8LSIfe8/vuz7X/ziF6iursbBgwfdL/IMQL7o+8jISJw4cQKffvop6urqUFpaivT0dNx9993jOHL982bf9/X1YdmyZXjppZcQGxvricMNON7+7GdnZyM7O9v+8/z583HLLbfghRdewE9/+tMxPU/AjUTFxsYiJCQEXV1dsu1dXV1ITExUvE9iYuKY2tve0A8//BC1tbWydJuYmIju7m5Z+6tXr+KTTz6xP059fT3Wr1+P0NBQhIaGYsWKFbBarQgNDcWWLVvcOhYt0nvf61mg9P369evxi1/8Am+88Qa+/OUvu9cJfhIIfW80GvHFL34Rt912G374wx/igQceQEVFhfud4WN67vvW1lZ88MEHWLx4sb3Na6+9hl27diE0NBStra2q+8VX9Nz/SsLCwnD77bfj3LlzY+sABGCICg8Px9y5c1FXV2ffNjw8jLq6OlnidJSdnS1rDwC1tbWy9rY39C9/+QvefPNNxMTEOD1GT08Pmpub7dvq6+sxPDyMzMxMANJ53BMnTthvTz75pP0vwKVLl475WLRK732vZ4HQ908//TR++tOfYt++fbJaB60LhL4faXh4GAMDA2PvBD/Rc9/PmDED7733nqzNkiVLcM899+DEiRNISUkZd/94m577X8nQ0BDee+893HjjjWPvhHGVpWtUdXW1iIiIEFu3bhWnT58WjzzyiIiOjrZPXVy2bJlYu3atvX1DQ4MIDQ0V69evF2fOnBHl5eWyKZeDg4NiyZIlIjk5WZw4cUI2HXJgYMD+OAsXLhS33367OHr0qDh8+LCYOnWq4pRLG6WZAdc7Fq3Tc98PDAyIlpYW0dLSIm688UaxZs0a0dLSIv7yl794sIe8R899/4tf/EKEh4eL3/3ud7Ln6evr82APeY+e+/7nP/+5eOONN0Rra6s4ffq0WL9+vQgNDRUvvfSSB3vIe/Tc9yPpcXaenvv/iSeeEPv37xetra2iublZfOtb3xImk0mcOnVqzK8/IEOUEEJs2rRJpKamivDwcJGRkSGOHDli35eTkyNKSkpk7Xfs2CGmTZsmwsPDxcyZM8WePXvs+y5cuCAAKN4OHDhgb3f58mVRXFwsJk6cKKKiosSDDz446peAq1+q0Y5FD/Ta966eKycnZzzd4VN67fubbrpJ8XnKy8vH0x0+pde+/7d/+zfxxS9+UZhMJjFp0iSRnZ0tqqurx9UXvqbXvh9JjyFKCP32/z//8z/bjzshIUF8/etfF++++65br90ghBBjH7ciIiIiIiAAa6KIiIiIfIEhioiIiEgFhigiIiIiFRiiiIiIiFRgiCIiIiJSgSGKiIiISAWGKCIiIiIVGKKIiIiIVGCIIiIiIlKBIYqIiIhIBYYoIiIiIhX+P0uz+YEsHamfAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# example (sanity check)\n", + "plt.scatter(e_post[0, :, 0], e_post[0, :, 1], marker='x', color='r')\n", + "plt.scatter(e_obs[0, 0], e_obs[0, 1], marker='o', color='g')\n", + "plt.scatter(e_sheared[0, 0], e_sheared[0, 1], marker='o', color='b')" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "f92c145f-ba49-4bc2-b62e-e982f18c8a0d", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "prior = ellip_mag_prior\n", + "interim_prior = partial(ellip_mag_prior, sigma=sigma_e_int)\n", + "_likelihood = jit(partial(shear_loglikelihood, prior=prior, interim_prior=interim_prior, sigma_e=sigma_e))\n", + "likelihood = lambda g, e_post: _likelihood(g, e_post=e_post)" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "f1e8015b-6c12-4db1-8e6b-311a856996a8", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# sanity check\n", + "g1s = jnp.linspace(0.019, 0.021, 1000)\n", + "gs = jnp.stack([g1s, jnp.full_like(g1s, g2)], axis=-1)\n", + "plt.plot(g1s, vmap(likelihood, in_axes=(0, None))(gs, e_post))\n", + "plt.axvline(0.02)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "7e115c8e-9f61-47d1-b1e2-d9635215d42c", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Array([ -6663.44839376, -21045.23239405], dtype=float64)" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# test we can do gradients\n", + "grad(likelihood)(true_g, e_post)" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "06d5056f-dca0-4954-b68f-18e4903b172d", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "# optax to find maximum point" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "id": "2e3380ae-4cfe-44dc-b7fe-47343aaeb6e9", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "# get error via Fisher information matrix\n", + "grad1 = lambda g, e: grad(likelihood)(g, e)[0]\n", + "grad2 = lambda g, e: grad(likelihood)(g, e)[1]" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "id": "dce148d4-e691-4245-969e-11597faff1f4", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "i11, i12 = - grad(grad1)(true_g, e_post)\n", + "i21, i22 = - grad(grad2)(true_g, e_post)" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "id": "66298526-34a7-4039-ac26-7eac52ff281c", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "inf_mat = jnp.array([[i11, i12], [i21, i22]])\n", + "cov = jnp.linalg.inv(inf_mat)" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "id": "9e3da837-fcc7-4fc7-8cbf-c129b690412f", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(Array([[1.00150753e+09, 4.93783690e-01],\n", + " [4.93783691e-01, 1.00150995e+09]], dtype=float64),\n", + " Array([[ 9.98494743e-10, -4.92297073e-19],\n", + " [-4.92297074e-19, 9.98492322e-10]], dtype=float64))" + ] + }, + "execution_count": 38, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "inf_mat, cov" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "id": "9e8acaf0-50df-4b8c-8155-cb6ea8448a2f", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(Array(3.16227766e-05, dtype=float64, weak_type=True),\n", + " Array(3.15989674e-05, dtype=float64),\n", + " Array(3.15989291e-05, dtype=float64))" + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "1e-3 / jnp.sqrt(1000), jnp.sqrt(cov[0][0]), jnp.sqrt(cov[1][1]), " + ] + }, + { + "cell_type": "markdown", + "id": "933dd466-32b3-41f1-bcdd-f1e5a54def41", + "metadata": {}, + "source": [ + "### Plot as a function of number of galaxies" + ] + }, + { + "cell_type": "code", + "execution_count": 73, + "id": "9a468422-abe3-4182-bebd-a18999bc1e0c", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "def get_fisher_cov(e_post, true_g, likelihood_fnc):\n", + " grad1 = lambda g:grad(likelihood_fnc)(g, e_post=e_post)[0]\n", + " grad2 = lambda g: grad(likelihood_fnc)(g, e_post=e_post)[1]\n", + " i11, i12 = - grad(grad1)(true_g)\n", + " i21, i22 = - grad(grad2)(true_g)\n", + " inf_mat = jnp.array([[i11, i12], [i21, i22]])\n", + " cov = jnp.linalg.inv(inf_mat)\n", + " return cov" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "id": "b10c69eb-895d-4d1a-a1a4-e71c522dcb30", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "seed = 42\n", + "key = random.key(seed)\n", + "k1, k2 = random.split(key, 2)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "id": "b2f255eb-05f0-4ec5-8a74-aa19ffee90e1", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "g1, g2 = 0.02, 0.02\n", + "true_g = jnp.array([g1, g2])" + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "id": "e6d1d8bb-ef31-448b-b856-26a18340c502", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "sigma_e=1e-3\n", + "sigma_e_int = 4e-2\n", + "sigma_m = 1e-5" + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "id": "d8c15e9f-ad89-4360-beac-eb0ddc11a83e", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "pipe = jit(partial(pipeline_toy_ellips_samples, g1=g1, g2 = g2, \n", + " sigma_e=sigma_e, \n", + " sigma_e_int=sigma_e_int, \n", + " sigma_m=sigma_m, \n", + " n_gals=100_000, \n", + " n_samples_per_gal=100, \n", + " )\n", + " )\n", + "e_post, e_obs, e_sheared = pipe(k1)" + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "id": "7ef485d3-3bbc-4a17-b8b9-c86268533bc0", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 6/6 [00:08<00:00, 1.38s/it]\n" + ] + } + ], + "source": [ + "covs = []\n", + "\n", + "prior = ellip_mag_prior\n", + "interim_prior = partial(ellip_mag_prior, sigma=sigma_e_int)\n", + "likelihood_fnc = jit(partial(shear_loglikelihood, sigma_e=sigma_e, prior=prior, interim_prior=interim_prior)) \n", + "\n", + "n_galaxies = (1, 10, 100, 1000, 10_000, 100_000)\n", + "\n", + "for ii in tqdm(n_galaxies):\n", + " e_samples = e_post[:ii]\n", + " cov = get_fisher_cov(e_samples, true_g, likelihood_fnc)\n", + " covs.append(cov)\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 79, + "id": "c635d4f8-94a0-4ef9-ac2a-9b2187b8ad82", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(Array(0.00070658, dtype=float64),\n", + " Array(0.00070711, dtype=float64, weak_type=True))" + ] + }, + "execution_count": 79, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# what is actual std of first component?\n", + "from bpd.prior import sample_ellip_prior\n", + "ellips_unsheared = sample_ellip_prior(k1, sigma=sigma_e, n=100_000)\n", + "ellips_unsheared[:, 0].std(), 1e-3 / jnp.sqrt(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "id": "5ed49df5-54a4-4549-948b-9b69905a52cf", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0, 0.5, 'Sigma on g1')" + ] + }, + "execution_count": 80, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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7r9KdOjQgZMnT7Jo0aLUK28xMTH4+vre9vhTp07dclctNDQUm81201smKleuzJ9//nnf4/hnifyn/Pnzk5SUxIULFyhSpAhLly7ljTfewG63M2TIEHr37p167N32mS1DlzhnqFWrVprujbu7u+Pu7m7aeMrWbs7F33IT6LjzLdUUh4VceVTiREQk62nfvj1169bFbrdjsVhYtWoVzZo1u+2x8fHxeHh43LQtNDSUzp0789FHH6Vu8/b2duoYPT09gRvP5KWkpDB48GDWrl2Ln58f1atXp127duTOnfuu+x6GDF3iAgICsFqtXLx48abtFy9eJG/evOk0qn/H6uJCeN1hBG5+Dbvj5skNdgcYgIthx2NmW848N4dC5erc8VwiIiKerlYOfNz8vo7dfuIa3X/ccc/jpvaoSa1it84UvV12WhUrVozAwEC2bdtG3bp12bp1K19++eVtjw0ICOD69es3bQsNDWX48OGULFkyzdn369q1awAEBgayfft2ypcvT4ECNy6utGzZktWrV9O5c+e77nsYMvQzcW5ublSvXp3ff/89dZvdbuf333+nbt266Tiyf6dq827sfnQMl42bm/olIzdbK37EUUsx/Ilkxtx57A/P+FOcRUQk/RiGgZeby319HisVSD4/D+5wIwiDG7NUHysVeF/nM4w7nenu2rZty+LFi7HZbBiGgcVy+zpStWpVDhw4kPrz8ePHiYiIoGrVqg+Ue7/27dtHwYIFCQgIIDw8PLWkARQoUIBz5248t363fQ9Dupe4mJgYwsLCUm95njhxgrCwME6fPg3A4MGDmTRpEtOmTePgwYP07duX2NhYevTokY6j/veqNu9GwNAj7G/6MztrfM3+pj8TOPQIdZ8ZRO7+v/Gt9+tMiH+cThO3svPktfQeroiIZAFWi8GwNuUAbilyf/88rE05rHd63sdJ2rZty6JFi9i8efNdL8o0b96c/fv3p16NCwkJwWq1/qtJDfdj48aNd7zFm5Gke4nbuXMnVatWTW3VgwcPpmrVqnzwwQcAdOzYkW+++YYPPviAKlWqEBYWxsqVK9PtPW/OZHVxoXy9VtRo3Yfy9VqlvhfOP3cgvV/9DzWL5iI6IYV+k39n77p56TxaERHJClpUyMe456uR1+/mZ83y+nkw7vlqD+U9cbVq1SIiIoLvv//+rmWpYsWKVKtWjTlz5gA3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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure(figsize=(7,7))\n", + "stds = [jnp.sqrt(cov[0][0]) for cov in covs]\n", + "\n", + "\n", + "plt.plot(n_galaxies, stds, '-o', label='$\\sqrt{(F^{-1})_{00}}$')\n", + "plt.plot(n_galaxies, sigma_e / jnp.sqrt(jnp.array(n_galaxies)), '--o', label='$\\sigma_{e} / \\sqrt{N}$')\n", + "plt.xscale('log')\n", + "\n", + "plt.plot(n_galaxies, sigma_e / jnp.sqrt(2 * jnp.array(n_galaxies)), '-o', label='$\\sigma_{e} / \\sqrt{2N}$')\n", + "plt.plot(n_galaxies, ellips_unsheared[:, 0].std() / jnp.sqrt(jnp.array(n_galaxies)), '--o', label='$\\sigma_{e_{1}} / \\sqrt{N}$')\n", + "# plt.plot(n_galaxies, jnp.sqrt(e_sheared[:, 0]**2 + e_sheared[:,1]**2).std() * jnp.sqrt(2) / jnp.sqrt(jnp.array(n_galaxies)), '-.o', label='$\\sigma_{e^{s}} \\sqrt{2}/ \\sqrt{N}$')\n", + "\n", + "\n", + "plt.yscale('log')\n", + "plt.legend()\n", + "plt.xlabel(\"N Galaxies\")\n", + "plt.ylabel(\"Sigma on g1\")" + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "id": "e21e00eb-d592-4c81-a075-35243b1e8936", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0, 0.5, 'Absolute fractional difference')" + ] + }, + "execution_count": 81, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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kQaDAa+//jpUKhUCAgIQEBAADw8PvPHGG+zcptty41a2h7SJEBERUZ1sXuLn3//+Nz777DO8/fbbpsXFDx48iCVLlkCn0+Gtt96ye5LUOqSyM5uIiKjZsLmI/OKLLxATE4Px48ebxvr164dOnTrhH//4B4tIqpebm2r6sTObiIioybP5dnZBQQF69epVbbxXr14oKCiwS1LU+lwouAbttQo4KeTo4c2mGiIioqbO5iKyf//++PDDD6uNf/jhh+jfv79dkqLWJyVHAwDo5esGJweugU9ERNTU2Xw7e9myZRgzZgz27NmD0NBQAEB8fDwuXLiAHTt22D1Bah2Mt7KD+TwkERFRs2DzlM+IESNw6tQpPProo9BoNNBoNHjsscdw8uRJDB8+vCFypFbA2FTTj0UkERFRs2DzTCQA+Pn5sYGG7MZspxo21RARETULNs9E7tq1CwcPHjR9/dFHH2HAgAH461//iqtXr9o1OWodsq6UokhXCScHNtUQERE1FzYXkS+++CIKCwsBAKmpqYiKisIjjzyCzMxMREVF2T1BavmMs5C9fd3hqGBTDRERUXNg8+3szMxMBAUFAQC+//57jBs3Dv/5z3+QlJSERx55xO4JUst3Y6cad4kzISIiImvZPO3j5OSE0tJSAMCePXvw8MMPAwA8PT1NM5REtrjRVOMhbSJERERkNZtnIocNG4aoqCjce++9OHz4MDZt2gQAOHXqFDp37mz3BKllMxgE0ri8DxERUbNj80zkhx9+CAcHB3z33Xf4+OOP0alTJwDAzp07MWrUKLsnSC1bVkEpisoq4ewgR3fvtlKnQ0RERFayuYi84447EBsbiz/++AORkZGm8ffffx8rV66sVxIfffQRunTpAqVSiZCQEBw+fLjW+G+//Ra9evWCUqlE3759qy1yLoTAokWL4OvrCxcXF4SFheH06dNmMQUFBZg2bRrc3d3h4eGByMhIFBcXm44vWbIEMpms2svV1dUUs27dumrHlUql6XhFRQVefvll9O3bF66urvDz88P06dNx8eLFen1OLVFKtgYAm2qIiIiam3r9q63X6/Hdd9/hjTfewBtvvIHvvvsOlZWV9Upg06ZNiIqKwuLFi5GUlIT+/fsjPDwc+fn5FuMPHTqEqVOnIjIyEseOHUNERAQiIiKQlpZmilm2bBlWrlyJ1atXIyEhAa6urggP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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure(figsize=(7,7))\n", + "stds = [jnp.sqrt(cov[0][0]) for cov in covs]\n", + "\n", + "std1 = jnp.array(stds)\n", + "std2 = sigma_e / jnp.sqrt(jnp.array(n_galaxies))\n", + "res = jnp.abs((std1 - std2) / std2)\n", + "\n", + "plt.plot(n_galaxies, res, '-o', label='$(\\sqrt{(F^{-1})_{00}}, \\sigma_{e} / \\sqrt{N})$')\n", + "plt.xscale('log')\n", + "\n", + "\n", + "plt.legend()\n", + "plt.xlabel(\"N Galaxies\")\n", + "plt.ylabel(\"Absolute fractional difference\")" + ] + }, + { + "cell_type": "code", + "execution_count": 87, + "id": "e35ecc39-bfdd-4570-b78b-df239aaec982", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "# likelihood_fnc = jjit(partial(shear_loglikelihood, prior=prior, interim_prior=interim_prior)) \n", + "grad_likelihood = lambda g, e: grad(likelihood_fnc)(g, e_post=e)" + ] + }, + { + "cell_type": "code", + "execution_count": 88, + "id": "e509ad09-1110-474e-ad8a-a5959cb03310", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 6/6 [00:40<00:00, 6.70s/it]\n" + ] + } + ], + "source": [ + "# what about mean prediction\n", + "import optax\n", + "from optax import adam\n", + "\n", + "peak_gs = []\n", + "\n", + "for ii in tqdm(n_galaxies):\n", + "\n", + " solver = adam(learning_rate=0.003)\n", + " # params = {'g': jnp.array([0.019, 0.019])}\n", + " curr_g = jnp.array([0.019, 0.019])\n", + " opt_state = solver.init(curr_g)\n", + "\n", + "\n", + " for _ in range(1000):\n", + " grad_val = -grad_likelihood(curr_g, e_post[:ii])\n", + " updates, opt_state = solver.update(grad_val, opt_state, curr_g)\n", + " curr_g = optax.apply_updates(curr_g, updates)\n", + " \n", + " peak_gs.append(curr_g)\n", + " \n", + " \n" + ] + }, + { + "cell_type": "code", + "execution_count": 89, + "id": "e50eab33-bfe0-4542-9bb5-9a0284f06200", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "peak_gs = jnp.array(peak_gs)" + ] + }, + { + "cell_type": "code", + "execution_count": 97, + "id": "566fea49-bfec-4f48-96cf-8eca46ccc0f3", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 97, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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ERERz1Od399ut7ZRTSm8iIiIeB6PX9tIREREpDJeE17UKi0iIlI3aNhIRERETKdhIxEREfFaCi8iIiLiURReRERExKN4TXjRhF0REZG6wesm7Obk5BAaGsq+ffs0YVdERMRD5ObmEhUVRXZ2NiEhIWc91qlrG7mDvLw8AKKiokyuRERERKorLy/vnOHF6+682O12Dh48SMOGDbFYLCQkJFS40nRF+8+173QqdNVdncpqr433V+XYsx2j66zrfC7eep0r2l9XrnNVjj+f61zZ19zpOldWY229vy783eFwOMjLyyMyMhKr9eyzWrzuzovVaqVly5Zl2z4+PhVe3Ir2V3VfcHCwS/7nqKz22nh/VY492zG6zrrO5+Kt17mi/XXlOlfl+PO5zpV9zZ2uc2Xnr63315W/O851x+U0r5mwW5kxY8ZUeX9V97lKTc9dnfdX5dizHaPr7LxjdZ1r/n5XXueK9teV61yV48/nOlf2NXe6zs44v7v+TLvb3x0V8bpho9qkp/e6hq6za+g6u4aus2voOruOO1xrr7/z4kwBAQFMnDiRgIAAs0vxarrOrqHr7Bq6zq6h6+w67nCtdedFREREPIruvIiIiIhHUXgRERERj6LwIiIiIh5F4UVEREQ8isKLiIiIeBSFFydZsGABF198MRdddBHvvvuu2eV4rRtuuIFGjRoxbNgws0vxavv27aNv377ExsbSsWNHZs2aZXZJXik7O5suXboQHx9Phw4dmDJlitklebUTJ04QHR3NI488YnYpXismJoaOHTsSHx9Pv379au08apV2gtLSUmJjY1myZAkhISF07tyZlStX0rhxY7NL8zpLly4lLy+P6dOnM3v2bLPL8VqHDh0iMzOT+Ph4MjIy6Ny5M9u3b6d+/fpml+ZVbDYbRUVFBAUFUVBQQIcOHVi7dq3+7qgl//znP9m5cydRUVG89NJLZpfjlWJiYti0aRMNGjSo1fPozosTpKam0r59e1q0aEGDBg0YPHgw3377rdlleaW+ffvSsGFDs8vwehEREcTHxwPQvHlzmjRpwrFjx8wtygv5+PgQFBQEQFFREQ6HA/17snbs2LGDbdu2MXjwYLNLESdQeAFSUlIYMmQIkZGRWCwW5s6de8YxycnJxMTEEBgYSNeuXUlNTS372sGDB2nRokXZdosWLThw4IArSvcoNb3OUnXOvNZpaWnYbDaioqJquWrP44zrnJ2dTVxcHC1btmT8+PE0adLERdV7Dmdc50ceeYTnnnvORRV7JmdcZ4vFQp8+fUhISOCjjz6qtVoVXoCCggLi4uJITk6u8OszZ85k3LhxTJw4kXXr1hEXF8egQYPIyspycaWeTdfZdZx1rY8dO8Zdd93FO++844qyPY4zrnNoaCjr169n165dfPzxx2RmZrqqfI9R0+s8b9482rZtS9u2bV1Ztsdxxs/zihUrSEtLY/78+Tz77LNs2LChdop1SDmA44svvii3LzEx0TFmzJiybZvN5oiMjHQ899xzDofD4fjxxx8d119/fdnXH3zwQcdHH33kkno91flc59OWLFniuOmmm1xRplc432tdWFjo6NWrl2PGjBmuKtWj1eRn+rTRo0c7Zs2aVZtlerzzuc4TJkxwtGzZ0hEdHe1o3LixIzg42PHUU0+5smyP44yf50ceecQxderUWqlPd17Oobi4mLS0NAYOHFi2z2q1MnDgQFatWgVAYmIimzZt4sCBA+Tn5/P1118zaNAgs0r2SFW5zuIcVbnWDoeD4cOH079/f+68806zSvVoVbnOmZmZ5OXlAZCTk0NKSgoXX3yxKfV6qqpc5+eee459+/axe/duXnrpJUaNGsUTTzxhVskeqSrXuaCgoOznOT8/nx9++IH27dvXSj2+tfKpXuTIkSPYbDbCw8PL7Q8PD2fbtm0A+Pr68vLLL9OvXz/sdjuPPvqougWqqSrXGWDgwIGsX7+egoICWrZsyaxZs+jevbury/VoVbnWP/74IzNnzqRjx45l494ffPABl156qavL9VhVuc579uzh3nvvLZuo+8ADD+gaV1NV/+6QmqnKdc7MzOSGG24AjE66UaNGkZCQUCv1KLw4ydChQxk6dKjZZXi977//3uwS6oSePXtit9vNLsPrJSYmkp6ebnYZdcrw4cPNLsFrXXDBBaxfv94l59Kw0Tk0adIEHx+fMybRZWZm0rx5c5Oq8j66zq6ja+0aus6uoevsGu52nRVezsHf35/OnTuzePHisn12u53FixdruMKJdJ1dR9faNXSdXUPX2TXc7Tpr2AhjYtHOnTvLtnft2kV6ejphYWG0atWKcePGkZSURJcuXUhMTOS1116joKCAESNGmFi159F1dh1da9fQdXYNXWfX8KjrXCs9TB5myZIlDuCMV1JSUtkxb775pqNVq1YOf39/R2JiomP16tXmFeyhdJ1dR9faNXSdXUPX2TU86TprbSMRERHxKJrzIiIiIh5F4UVEREQ8isKLiIiIeBSFFxEREfEoCi8iIiLiURReRERExKMovIiIiIhHUXgRERERj6LwIiIiIh5F4UVEREQ8isKLiIiIeBSFFxEREfEo/x/K1fwAqV4KugAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(n_galaxies, jnp.abs(peak_gs[:, 0] - 0.02), '-o', label=\"$|\\hat{g} - g|$\")\n", + "plt.plot(n_galaxies, sigma_e/ jnp.array(n_galaxies), '-o', label=\"$\\sigma_e / N$\")\n", + "plt.xscale('log')\n", + "plt.yscale(\"log\")\n", + "plt.legend()" + ] + }, + { + "cell_type": "markdown", + "id": "42edd2b9-adf7-4c30-aa47-920dcadc1bfd", + "metadata": {}, + "source": [ + "## Sanity check scatter of magnitude after shear" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "9e8f2984-b14e-475e-93e5-6a3e44db99e0", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(Array(0.00070613, dtype=float64), Array(0.00060315, dtype=float64), 0.001)" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# sanity check magnitude scatter\n", + "from bpd.prior import sample_ellip_prior, shear_transformation, sample_mag_ellip_prior\n", + "k1 = random.key(42)\n", + "g1 = 0.02\n", + "sigma_e = 1e-3\n", + "e_samples = sample_ellip_prior(k1, sigma=sigma_e, n=100_000)\n", + "e_sheared = shear_transformation(e_samples, jnp.array([g1, 0.]))\n", + "\n", + "ep_mag = jnp.sqrt(e_sheared[:, 0]**2 + e_sheared[:, 1]**2)\n", + "e_mag = jnp.sqrt(e_samples[:, 0]**2 + e_samples[:, 1]**2)\n", + "\n", + "ep_mag.std(), e_mag.std(), sigma_e" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "46623275-179a-4a9a-8f77-0b31f14f39ff", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(Array(0.00070637, dtype=float64),\n", + " Array(0.00070665, dtype=float64),\n", + " Array(0.00060315, dtype=float64))" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "e_sheared[:, 0].std(), e_samples[:, 0].std(), e_mag.std()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cf9cccd1", + "metadata": {}, + "outputs": [], + "source": [ + "# error on mean shear? " + ] + }, + { + "cell_type": "markdown", + "id": "82be2d18-f0d8-4c13-af2e-6b56dc7081b9", + "metadata": { + "jp-MarkdownHeadingCollapsed": true, + "tags": [] + }, + "source": [ + "## Test no noise" + ] + }, + { + "cell_type": "markdown", + "id": "3987466f", + "metadata": {}, + "source": [ + "**Note:** Does not work" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d47af84d-b9a6-42f3-b772-7624692050f1", + "metadata": {}, + "outputs": [], + "source": [ + "g1, g2 = 0.02, 0.02\n", + "true_g = jnp.array([g1, g2])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e1c2eb17-24f1-4f79-a5d6-b38afe4b2c49", + "metadata": {}, + "outputs": [], + "source": [ + "seed = 42\n", + "key = random.key(seed)\n", + "k1, k2 = random.split(key, 2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ff8ec725-85fa-46e9-bfcb-dbabb2fbc75f", + "metadata": {}, + "outputs": [], + "source": [ + "sigma_e=1e-3\n", + "sigma_e_int = 4e-2" + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "id": "e74db65c-9db6-45de-ba8b-a626007e6468", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "((1000, 2), (1000, 2))" + ] + }, + "execution_count": 76, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ellips = sample_ellip_prior(key, sigma=sigma_e, n=1000)\n", + "ellips_sheared = shear_transformation(ellips, (g1, g2))\n", + "ellips.shape, ellips_sheared.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "id": "a2c95803-4b25-44cf-886f-a59f94560a19", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 77, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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RKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAkMNURERKQJDDVERESkCQw1REREpAldCjWrVq3CsGHDYDKZUFRUhL1793bYftOmTRg5ciRMJhPGjBmD7du3Kx4XQmDZsmXIzc1FUlISSkpKcOzYMUWbYcOGQZIkxdcTTzzRlcsnIiIiDYo51GzcuBGLFy/G8uXLsX//fowdOxalpaU4efKkavvdu3dj5syZmDdvHg4cOICpU6di6tSpOHToUKDNU089heeeew5r1qzBnj17kJKSgtLSUrhcLsW5HnvsMdTU1AS+Fi5cGOvlExERkUZJQggRyxOKiopw2WWX4YUXXgAA+Hw+5OfnY+HChViyZElE+7KyMjQ1NWHbtm2BY5MmTUJhYSHWrFkDIQTy8vJw//3342c/+xkAwOFwIDs7G+vWrcOMGTMAyD019913H+67774uvVGn0wmLxQKHwwGz2dylcxAREVHviuXzO6aemtbWVlRUVKCkpCR4Ap0OJSUlKC8vV31OeXm5oj0AlJaWBtp/9dVXsNlsijYWiwVFRUUR53ziiSeQkZGBcePG4emnn4bH44l6rW63G06nU/FFRERE2pUQS+NTp07B6/UiOztbcTw7OxtHjhxRfY7NZlNtb7PZAo/7j0VrAwD33HMPLr30UqSnp2P37t1YunQpampq8Otf/1r1dVesWIFHH300lrdHREREcSymUNOXFi9eHPjvSy65BAaDAXfccQdWrFgBo9EY0X7p0qWK5zidTuTn5/fKtRIREVHvi2n4KTMzE3q9HrW1tYrjtbW1yMnJUX1OTk5Oh+39/8ZyTkCu7fF4PPj6669VHzcajTCbzYov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ExFRd+KGlhQz//To0GnSfqHHQwMNZx0REVF/wlBDXaa2qi/QfQvsERERxYLDT3ROOOuIiIh6Emc/Ua/hrCMiIuovOPxEREREmsBQQ0RERJrAUENERESawFBDREREmsBQQ0RERJrAUENERESawFBDREREmsBQQ0RERJrAUENERESaMGBWFPbvBuF0Ovv4SoiIiKiz/J/bndnVacCEmoaGBgBAfn5+H18JERERxaqhoQEWi6XDNgNmQ0ufz4ejR4/i4osvxvHjx7mpZTdxOp3Iz8/nPe1mvK/dj/e0+/Gedj/e00hCCDQ0NCAvLw86XcdVMwOmp0an02HIkCEAALPZzF+WbsZ72jN4X7sf72n34z3tfrynSmfrofFjoTARERFpAkMNERERacKACjVGoxHLly+H0Wjs60vRDN7TnsH72v14T7sf72n34z09NwOmUJiIiIi0bUD11BAREZF2MdQQERGRJjDUEBERkSYw1BAREZEmxHWoqa+vx6xZs2A2m2G1WjFv3jw0NjZ2+ByXy4W7774bGRkZSE1NxbRp01BbW6toU1lZiSlTpiA5ORmDBw/Gz3/+c3g8nsDj//u//wtJkiK+bDZbj7zPnrZq1SoMGzYMJpMJRUVF2Lt3b4ftN23ahJEjR8JkMmHMmDHYvn274nEhBJYtW4bc3FwkJSWhpKQEx44dU7Tpys8unvTFPR02bFjE7+QTTzzR7e+tr3T3Pd2yZQuuvvpqZGRkQJIkHDx4MOIcnfl7Ec/64p5eeeWVEb+nCxYs6M631ee68762tbXhgQcewJgxY5CSkoK8vDzMnj0b1dXVinNo/W9qp4k4ds0114ixY8eKjz76SPz9738X3/rWt8TMmTM7fM6CBQtEfn6+2LVrl9i3b5+YNGmSmDx5cuBxj8cjRo8eLUpKSsSBAwfE9u3bRWZmpli6dGmgzV//+lcBQBw9elTU1NQEvrxeb4+9156yYcMGYTAYxMsvvyw+++wzcfvttwur1Spqa2tV23/44YdCr9eLp556Snz++efioYceEomJieLTTz8NtHniiSeExWIRW7duFf/85z/FddddJ4YPHy5aWloCbbrys4sXfXVPzzvvPPHYY48pficbGxt7/P32hp64p7///e/Fo48+Kn77298KAOLAgQMR5znb34t41lf39IorrhC333674vfU4XD01Nvsdd19X+12uygpKREbN24UR44cEeXl5WLixIli/PjxivNo+W9qLOI21Hz++ecCgPj4448Dx/70pz8JSZLEiRMnVJ9jt9tFYmKi2LRpU+DY4cOHBQBRXl4uhBBi+/btQqfTCZvNFmizevVqYTabhdvtFkIEQ82ZM2d64J31rokTJ4q777478L3X6xV5eXlixYoVqu1vvPFGMWXKFMWxoqIicccddwghhPD5fCInJ0c8/fTTgcftdrswGo3ijTfeEEJ07WcXT/ringohh5qVK1d24zvpP7r7nob66quvVD+AO/P3Ip71xT0VQg4199577zlde3/Wk/fVb+/evQKA+Oabb4QQ2v+bGou4HX4qLy+H1WrFhAkTAsdKSkqg0+mwZ88e1edUVFSgra0NJSUlgWMjR45EQUEBysvLA+cdM2YMsrOzA21KS0vhdDrx2WefKc5XWFiI3Nxc/Md//Ac+/PDD7nx7vaK1tRUVFRWK+6HT6VBSUhK4H+HKy8sV7QH5/vjbf/XVV7DZbIo2FosFRUVFinsc688uXvTVPfV74oknkJGRgXHjxuHpp59WDJvGq564p53Rmb8X8aqv7qnf66+/jszMTIwePRpLly5Fc3NzzOfoj3rrvjocDkiSBKvVGjiHVv+mxipuN7S02WwYPHiw4lhCQgLS09Oj1rbYbDYYDIbAL4JfdnZ24Dk2m00RaPyP+x8DgNzcXKxZswYTJkyA2+3GSy+9hCuvvBJ79uzBpZde2h1vr1ecOnUKXq9X9f0eOXJE9TnR7k/o/fMf66hNrD+7eNFX9xQA7rnnHlx66aVIT0/H7t27sXTpUtTU1ODXv/71Ob+vvtQT97QzOvP3Il711T0FgJtuugnnnXce8vLy8Mknn+CBBx7A0aNHsWXLltjeRD/UG/fV5XLhgQcewMyZMwMbXmr5b2qs+l2oWbJkCZ588skO2xw+fLiXrkbdRRddhIsuuijw/eTJk/Hll19i5cqV+MMf/tCHV0YD2eLFiwP/fckll8BgMOCOO+7AihUruOQ69Rvz588P/PeYMWOQm5uLq666Cl9++SUuuOCCPryy/q+trQ033ngjhBBYvXp1X19Ov9Tvhp/uv/9+HD58uMOv888/Hzk5OTh58qTiuR6PB/X19cjJyVE9d05ODlpbW2G32xXHa2trA8/JycmJmN3g/z7aeQFg4sSJ+OKLL2J9u30qMzMTer1e9f12dA87au//92xtYv3ZxYu+uqdqioqK4PF48PXXX8f6NvqVnrinndGZvxfxqq/uqZqioiIAiLu/n2p68r76A80333yDnTt3Bnpp/OfQ6t/UWPW7UJOVlYWRI0d2+GUwGFBcXAy73Y6KiorAcz/44AP4fL7A/yThxo8fj8TEROzatStw7OjRo6isrERxcTEAoLi4GJ9++qniF8T/C3TxxRdHve6DBw8iNzf3XN9+rzIYDBg/frzifvh8PuzatStwP8IVFxcr2gPy/fG3Hz58OHJychRtnE4n9uzZo7jHsf7s4kVf3VM1Bw8ehE6ni+iWjjc9cU87ozN/L+JVX91TNf5p3/H291NNT91Xf6A5duwY3n//fWRkZEScQ6t/U2PW15XK5+Kaa64R48aNE3v27BH/+Mc/xIgRIxRT2KqqqsRFF10k9uzZEzi2YMECUVBQID744AOxb98+UVxcLIqLiwOP+6d0X3311eLgwYNix44dIisrSzGle+XKlWLr1q3i2LFj4tNPPxX33nuv0Ol04v333++dN96NNmzYIIxGo1i3bp34/PPPxfz584XVag3M/rr55pvFkiVLAu0//PBDkZCQIH71q1+Jw4cPi+XLl6tOP7ZareKPf/yj+OSTT8SPfvQj1SndHf3s4llf3NPdu3eLlStXioMHD4ovv/xSvPbaayIrK0vMnj27d998D+mJe3r69Glx4MAB8d577wkAYsOGDeLAgQOipqYm0OZsfy/iWV/c0y+++EI89thjYt++feKrr74Sf/zjH8X5558vvvvd7/bum+9B3X1fW1tbxXXXXSeGDh0qDh48qJgK75+RK4S2/6bGIq5DzenTp8XMmTNFamqqMJvNYu7cuaKhoSHwuH9a4V//+tfAsZaWFnHXXXeJQYMGieTkZHH99dcr/ogJIcTXX38tvv/974ukpCSRmZkp7r//ftHW1hZ4/MknnxQXXHCBMJlMIj09XVx55ZXigw8+6PH321Oef/55UVBQIAwGg5g4caL46KOPAo9dccUVYs6cOYr2b775prjwwguFwWAQ3/72t8V7772neNzn84mHH35YZGdnC6PRKK666ipx9OhRRZuz/eziXW/f04qKClFUVCQsFoswmUxi1KhR4pe//KVwuVw9+j57U3ff01deeUUAiPhavnx5oE1n/l7Es96+p5WVleK73/2uSE9PF0ajUXzrW98SP//5zzW1To0Q3Xtf/Z9jal+hn21a/5vaWZIQQvRy5xARERFRt+t3NTVEREREXcFQQ0RERJrAUENERESawFBDREREmsBQQ0RERJrAUENERESawFBDREREmsBQQ0RERJrAUENERESawFBDREREmsBQQ0RERJrAUENERESa8P8DY5T+DwgilqMAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.scatter(ellips[:, 0], ellips[:, 1], marker='x')\n", + "plt.scatter(ellips_sheared[:, 0], ellips_sheared[:, 1], marker='x')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "693a9e74-461d-40bd-982e-05fecf445b52", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 78, + "id": "c54b282a-e272-4f05-ac7e-758582542305", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(1000, 1, 2)" + ] + }, + "execution_count": 78, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# # here we assume no observation noise, only 1 sample is needed\n", + "# e_post = ellips_sheared.reshape(-1, 1, 2)\n", + "# e_post.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 79, + "id": "d678bbf0-a608-408c-b21b-f04eb46809fa", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "prior = partial(ellip_mag_prior, sigma=sigma_e)\n", + "interim_prior = partial(ellip_mag_prior, sigma=sigma_e_int)" + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "id": "65cb1014-2774-4ffe-bb5e-54ad1c80eb1b", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "# NOTE: what does it mean to use an interim prior when we don't infer from it? \n", + "likelihood = jjit(partial(shear_loglikelihood, prior=prior, interim_prior=interim_prior)) " + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "id": "563a0577-a138-4fbb-b350-bfaf9d013de0", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Array(-218.62124169, dtype=float64)" + ] + }, + "execution_count": 81, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# compile\n", + "likelihood(true_g, e_post)" + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "id": "4026775d-f415-413a-98d6-3609daf58695", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 82, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "g1s = jnp.linspace(0.019, 0.021, 1000)\n", + "gs = jnp.stack([g1s, jnp.full_like(g1s, g2)], axis=-1)\n", + "plt.plot(g1s, vmap(likelihood, in_axes=(0, None))(gs, e_post))\n", + "plt.axvline(0.02)" + ] + }, + { + "cell_type": "code", + "execution_count": 105, + "id": "f99f5c1b-c8e2-4634-b28a-71d189de2d10", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Array(-218.62124169, dtype=float64)" + ] + }, + "execution_count": 105, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "likelihood(true_g, e_post)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fb264ba7-52c8-4b8f-82b7-95c3de92caf1", + "metadata": {}, + "outputs": [], + "source": [ + "# find optimum function using optax" + ] + }, + { + "cell_type": "code", + "execution_count": 98, + "id": "ab165848-3584-457b-9868-9e22723ebb4b", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "# calculate fisher information matrix to compute std error estimated\n", + "grad1 = lambda g, e: grad(likelihood)(g, e)[0]\n", + "grad2 = lambda g, e: grad(likelihood)(g, e)[1]" + ] + }, + { + "cell_type": "code", + "execution_count": 103, + "id": "c2cb8890-1bb0-4e80-9d8e-9f688ddd9148", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Array([nan, nan], dtype=float64)" + ] + }, + "execution_count": 103, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "grad(grad1)(jnp.array([0.02, 0.02]), e_post)" + ] + }, + { + "cell_type": "code", + "execution_count": 104, + "id": "0671b694-e52f-41c9-959b-71f2f6963efc", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Array(nan, dtype=float64)" + ] + }, + "execution_count": 104, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "grad1(true_g, e_post)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7ecba248-b68a-4e00-a8aa-904cd96acddc", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "bpd_gpu2", + "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.10.14" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/notebooks/benchmarks/NUTS-benchmark1.ipynb b/notebooks/old/benchmarks/NUTS-benchmark1.ipynb similarity index 100% rename from notebooks/benchmarks/NUTS-benchmark1.ipynb rename to notebooks/old/benchmarks/NUTS-benchmark1.ipynb diff --git a/notebooks/benchmarks/NUTS-benchmark2.ipynb b/notebooks/old/benchmarks/NUTS-benchmark2.ipynb similarity index 100% rename from notebooks/benchmarks/NUTS-benchmark2.ipynb rename to notebooks/old/benchmarks/NUTS-benchmark2.ipynb diff --git a/notebooks/benchmarks/NUTS-benchmark2_2.ipynb b/notebooks/old/benchmarks/NUTS-benchmark2_2.ipynb similarity index 100% rename from notebooks/benchmarks/NUTS-benchmark2_2.ipynb rename to notebooks/old/benchmarks/NUTS-benchmark2_2.ipynb diff --git a/notebooks/benchmarks/NUTS-benchmark2_3.ipynb b/notebooks/old/benchmarks/NUTS-benchmark2_3.ipynb similarity index 100% rename from notebooks/benchmarks/NUTS-benchmark2_3.ipynb rename to notebooks/old/benchmarks/NUTS-benchmark2_3.ipynb diff --git a/notebooks/benchmarks/NUTS-benchmark2_4.ipynb b/notebooks/old/benchmarks/NUTS-benchmark2_4.ipynb similarity index 100% rename from notebooks/benchmarks/NUTS-benchmark2_4.ipynb rename to notebooks/old/benchmarks/NUTS-benchmark2_4.ipynb diff --git a/notebooks/benchmarks/NUTS-benchmark2_5.ipynb b/notebooks/old/benchmarks/NUTS-benchmark2_5.ipynb similarity index 100% rename from notebooks/benchmarks/NUTS-benchmark2_5.ipynb rename to notebooks/old/benchmarks/NUTS-benchmark2_5.ipynb diff --git a/notebooks/benchmarks/NUTS-benchmark3_1.ipynb b/notebooks/old/benchmarks/NUTS-benchmark3_1.ipynb similarity index 100% rename from notebooks/benchmarks/NUTS-benchmark3_1.ipynb rename to notebooks/old/benchmarks/NUTS-benchmark3_1.ipynb diff --git a/notebooks/benchmarks/chees-benchmark1.ipynb b/notebooks/old/benchmarks/chees-benchmark1.ipynb similarity index 100% rename from notebooks/benchmarks/chees-benchmark1.ipynb rename to notebooks/old/benchmarks/chees-benchmark1.ipynb diff --git a/notebooks/check_galaxy_samples.ipynb b/notebooks/old/check_galaxy_samples.ipynb similarity index 99% rename from notebooks/check_galaxy_samples.ipynb rename to notebooks/old/check_galaxy_samples.ipynb index 5c6aeb1..317dce7 100644 --- a/notebooks/check_galaxy_samples.ipynb +++ b/notebooks/old/check_galaxy_samples.ipynb @@ -631,7 +631,6 @@ "cell_type": "markdown", "id": "08ba5088-32e7-4b3a-b23b-04e87abf4ef3", "metadata": { - "jp-MarkdownHeadingCollapsed": true, "tags": [] }, "source": [ @@ -835,7 +834,9 @@ { "cell_type": "markdown", "id": "ee405526-3c91-4d37-9c86-11e18363dcd6", - "metadata": {}, + "metadata": { + "tags": [] + }, "source": [ "## Samples from shear inference intermediate step" ] diff --git a/notebooks/explorations/benchmark-fourier-gpu-07-24.ipynb b/notebooks/old/explorations/benchmark-fourier-gpu-07-24.ipynb similarity index 100% rename from notebooks/explorations/benchmark-fourier-gpu-07-24.ipynb rename to notebooks/old/explorations/benchmark-fourier-gpu-07-24.ipynb diff --git a/notebooks/explorations/chees_setup.ipynb b/notebooks/old/explorations/chees_setup.ipynb similarity index 100% rename from notebooks/explorations/chees_setup.ipynb rename to notebooks/old/explorations/chees_setup.ipynb diff --git a/notebooks/explorations/divergences_v3.ipynb b/notebooks/old/explorations/divergences_v3.ipynb similarity index 100% rename from notebooks/explorations/divergences_v3.ipynb rename to notebooks/old/explorations/divergences_v3.ipynb diff --git a/notebooks/explorations/efficiency-int-posteriors.ipynb b/notebooks/old/explorations/efficiency-int-posteriors.ipynb similarity index 100% rename from notebooks/explorations/efficiency-int-posteriors.ipynb rename to notebooks/old/explorations/efficiency-int-posteriors.ipynb diff --git a/notebooks/explorations/int-post-random-mcmc.ipynb b/notebooks/old/explorations/int-post-random-mcmc.ipynb similarity index 100% rename from notebooks/explorations/int-post-random-mcmc.ipynb rename to notebooks/old/explorations/int-post-random-mcmc.ipynb diff --git a/notebooks/interim_posterior_toy_prior_check.ipynb b/notebooks/old/explorations/interim_posterior_toy_prior_check.ipynb similarity index 100% rename from notebooks/interim_posterior_toy_prior_check.ipynb rename to notebooks/old/explorations/interim_posterior_toy_prior_check.ipynb diff --git a/notebooks/explorations/investigate-ess-v1.ipynb b/notebooks/old/explorations/investigate-ess-v1.ipynb similarity index 100% rename from notebooks/explorations/investigate-ess-v1.ipynb rename to notebooks/old/explorations/investigate-ess-v1.ipynb diff --git a/notebooks/explorations/noise_limit.ipynb b/notebooks/old/explorations/noise_limit.ipynb similarity index 100% rename from notebooks/explorations/noise_limit.ipynb rename to notebooks/old/explorations/noise_limit.ipynb diff --git a/notebooks/explorations/test-jax1.ipynb b/notebooks/old/explorations/test-jax1.ipynb similarity index 100% rename from notebooks/explorations/test-jax1.ipynb rename to notebooks/old/explorations/test-jax1.ipynb diff --git a/notebooks/explorations/transfer-guard-example-v1.ipynb b/notebooks/old/explorations/transfer-guard-example-v1.ipynb similarity index 100% rename from notebooks/explorations/transfer-guard-example-v1.ipynb rename to notebooks/old/explorations/transfer-guard-example-v1.ipynb diff --git a/notebooks/explorations/transfer-guard-example-v2.ipynb b/notebooks/old/explorations/transfer-guard-example-v2.ipynb similarity index 100% rename from notebooks/explorations/transfer-guard-example-v2.ipynb rename to notebooks/old/explorations/transfer-guard-example-v2.ipynb diff --git a/notebooks/figures/toy-ellipticities.ipynb b/notebooks/old/figures/toy-ellipticities.ipynb similarity index 100% rename from notebooks/figures/toy-ellipticities.ipynb rename to notebooks/old/figures/toy-ellipticities.ipynb diff --git a/notebooks/interim-image-posterior-draft2.ipynb b/notebooks/old/interim-image-posterior-draft2.ipynb similarity index 100% rename from notebooks/interim-image-posterior-draft2.ipynb rename to notebooks/old/interim-image-posterior-draft2.ipynb diff --git a/notebooks/is-shear-convergence.ipynb b/notebooks/old/is-shear-convergence.ipynb similarity index 100% rename from notebooks/is-shear-convergence.ipynb rename to notebooks/old/is-shear-convergence.ipynb diff --git a/notebooks/shear-image-pipeline-draft1.ipynb b/notebooks/old/shear-image-pipeline-draft1.ipynb similarity index 100% rename from notebooks/shear-image-pipeline-draft1.ipynb rename to notebooks/old/shear-image-pipeline-draft1.ipynb diff --git a/notebooks/summary-results1.ipynb b/notebooks/old/summary-results1.ipynb similarity index 99% rename from notebooks/summary-results1.ipynb rename to notebooks/old/summary-results1.ipynb index 35abb7b..b59b75a 100644 --- a/notebooks/summary-results1.ipynb +++ b/notebooks/old/summary-results1.ipynb @@ -2700,7 +2700,7 @@ ], "metadata": { "kernelspec": { - "display_name": "bpd_gpu2", + "display_name": "NERSC Python", "language": "python", "name": "python3" }, @@ -2714,7 +2714,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.14" + "version": "3.11.7" } }, "nbformat": 4, diff --git a/notebooks/test-shear-inf-with-prior1.ipynb b/notebooks/test-shear-inf-with-prior1.ipynb index 1ee9588..d0a2e1f 100644 --- a/notebooks/test-shear-inf-with-prior1.ipynb +++ b/notebooks/test-shear-inf-with-prior1.ipynb @@ -319,7 +319,7 @@ "kernelspec": { "display_name": "bpd_gpu2", "language": "python", - "name": "bpd_gpu2" + "name": "python3" }, "language_info": { "codemirror_mode": { diff --git a/pyproject.toml b/pyproject.toml index 3f26dfc..0b7a77e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -16,6 +16,7 @@ dependencies = [ "jax >=0.4.30", "jaxlib", "blackjax >=1.2.0", + "optax >=0.2.0", "numpyro >=0.13.0", ]