{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/yoachim/git_repos/sims_maf/python/lsst/sims/maf/runComparison/runComparison.py:24: UserWarning: \n", "The generateDiffHtml method requires bokeh to be installed\n", "but it is not needed to use the other methods in this class.\n", "Run: pip install bokeh then restart your jupyter notebook kernel.\n", " 'but it is not needed to use the other methods in this class.'+'\\n'+\n" ] } ], "source": [ "import os\n", "import warnings\n", "import numpy as np\n", "import matplotlib.pylab as plt\n", "%matplotlib inline\n", "import pandas as pd\n", "import glob\n", "\n", "# Let's try out making some beta radar plots\n", "from lsst.sims.maf.runComparison import RunComparison" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# Starting with example at\n", "# https://matplotlib.org/examples/api/radar_chart.html\n", "\n", "from matplotlib.path import Path\n", "from matplotlib.spines import Spine\n", "from matplotlib.projections.polar import PolarAxes\n", "from matplotlib.projections import register_projection\n", "\n", "def radar_factory(num_vars, frame='circle'):\n", " \"\"\"Create a radar chart with `num_vars` axes.\n", "\n", " This function creates a RadarAxes projection and registers it.\n", "\n", " Parameters\n", " ----------\n", " num_vars : int\n", " Number of variables for radar chart.\n", " frame : {'circle' | 'polygon'}\n", " Shape of frame surrounding axes.\n", "\n", " \"\"\"\n", " # calculate evenly-spaced axis angles\n", " theta = np.linspace(0, 2*np.pi, num_vars, endpoint=False)\n", " # rotate theta such that the first axis is at the top\n", " theta += np.pi/2\n", " \n", " # FFS, need to make sure we don't go over 360\n", " theta = theta % (2.*np.pi)\n", "\n", " def draw_poly_patch(self):\n", " verts = unit_poly_verts(theta)\n", " return plt.Polygon(verts, closed=True, edgecolor='k')\n", "\n", " def draw_circle_patch(self):\n", " # unit circle centered on (0.5, 0.5)\n", " return plt.Circle((0.5, 0.5), 0.5)\n", "\n", " patch_dict = {'polygon': draw_poly_patch, 'circle': draw_circle_patch}\n", " if frame not in patch_dict:\n", " raise ValueError('unknown value for `frame`: %s' % frame)\n", "\n", " class RadarAxes(PolarAxes):\n", "\n", " name = 'radar'\n", " # use 1 line segment to connect specified points\n", " RESOLUTION = 1\n", " # define draw_frame method\n", " draw_patch = patch_dict[frame]\n", "\n", " def fill(self, *args, **kwargs):\n", " \"\"\"Override fill so that line is closed by default\"\"\"\n", " closed = kwargs.pop('closed', True)\n", " return super(RadarAxes, self).fill(closed=closed, *args, **kwargs)\n", "\n", " def plot(self, *args, **kwargs):\n", " \"\"\"Override plot so that line is closed by default\"\"\"\n", " lines = super(RadarAxes, self).plot(*args, **kwargs)\n", " for line in lines:\n", " self._close_line(line)\n", "\n", " def _close_line(self, line):\n", " x, y = line.get_data()\n", " # FIXME: markers at x[0], y[0] get doubled-up\n", " if x[0] != x[-1]:\n", " x = np.concatenate((x, [x[0]]))\n", " y = np.concatenate((y, [y[0]]))\n", " line.set_data(x, y)\n", "\n", " def set_varlabels(self, labels):\n", " self.set_thetagrids(np.degrees(theta), labels)\n", "\n", " def _gen_axes_patch(self):\n", " return self.draw_patch()\n", "\n", " def _gen_axes_spines(self):\n", " if frame == 'circle':\n", " return PolarAxes._gen_axes_spines(self)\n", " # The following is a hack to get the spines (i.e. the axes frame)\n", " # to draw correctly for a polygon frame.\n", "\n", " # spine_type must be 'left', 'right', 'top', 'bottom', or `circle`.\n", " spine_type = 'circle'\n", " verts = unit_poly_verts(theta)\n", " # close off polygon by repeating first vertex\n", " verts.append(verts[0])\n", " path = Path(verts)\n", "\n", " spine = Spine(self, spine_type, path)\n", " spine.set_transform(self.transAxes)\n", " return {'polar': spine}\n", "\n", " register_projection(RadarAxes)\n", " return theta\n", "\n", "\n", "def unit_poly_verts(theta):\n", " \"\"\"Return vertices of polygon for subplot axes.\n", "\n", " This polygon is circumscribed by a unit circle centered at (0.5, 0.5)\n", " \"\"\"\n", " x0, y0, r = [0.5] * 3\n", " verts = [(r*np.cos(t) + x0, r*np.sin(t) + y0) for t in theta]\n", " return verts" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['mw_heavy',\n", " 'ss_heavy',\n", " 'rolling_exgal_mod2_dust_sdf_0.20',\n", " 'ddf_heavy',\n", " 'baseline_nexp1',\n", " 'barebones',\n", " 'baseline_nexp2',\n", " 'dm_heavy']" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Run names\n", "# Note that the run names are not entirely standard -- some are _v1.5_10yrs and some are v1.5_10yrs.\n", "\n", "# just sym-link this in whereever one might be running\n", "dbdir = '../potential_schedulers'\n", "run_names = [os.path.split(i)[-1].replace('.db', '') for i in glob.glob(os.path.join(dbdir, '*10yrs.db'))]\n", "\n", "short_run_names = [run.replace('v1.5_10yrs', '').rstrip('_') for run in run_names]\n", "\n", "# temp remove the new one\n", "run_names = [run for run in run_names if 'scale' not in run]\n", "short_run_names = [run for run in short_run_names if 'scale' not in run]\n", "\n", "short_run_names\n", "\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "# then get list of science batch outputs\n", "\n", "sciroot = '../potential_schedulers/'\n", "glanceroot = '../potential_schedulers/'\n", "ssoroot = '../sso/'\n", "\n", "all_runs = [run for run in run_names]\n", "sci_dirs = [os.path.join(sciroot, f'sci_{run}') for run in run_names]\n", "\n", "# and list of NEO outputs\n", "\n", "all_runs += [run for run in run_names]\n", "sso_dirs = [os.path.join(ssoroot, f'{run}/sso') for run in run_names]\n", "\n", "# and add glance outputs\n", "\n", "all_runs += [run for run in run_names]\n", "glance_dirs = [os.path.join(glanceroot, f'{run}') for run in run_names]\n", "\n", "all_runs = short_run_names + short_run_names + short_run_names\n", "all_dirs = sci_dirs + glance_dirs + sso_dirs" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "# Connect to all of the resultsDb output databases\n", "rc = RunComparison(baseDir='', runlist=all_runs, rundirs=all_dirs)\n", "# Get the info on all of their summary metrics.\n", "mdict = rc.buildMetricDict() \n", "# rc.addSummaryStats(mdict) # this just adds ALL metrics \n", "rc.summaryStats" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['fO All visits HealpixSlicer',\n", " 'Parallax Error @ 22.4 All visits HealpixSlicer',\n", " 'Parallax Error @ 24.0 All visits HealpixSlicer',\n", " 'Normalized Parallax @ 22.4 All visits HealpixSlicer',\n", " 'Normalized Parallax @ 24.0 All visits HealpixSlicer',\n", " 'Parallax Coverage @ 22.4 All visits HealpixSlicer',\n", " 'Parallax Coverage @ 24.0 All visits HealpixSlicer',\n", " 'Parallax-DCR degeneracy @ 22.4 All visits HealpixSlicer',\n", " 'Parallax-DCR degeneracy @ 24.0 All visits HealpixSlicer',\n", " 'Proper Motion Error @ 20.5 All visits HealpixSlicer',\n", " 'Proper Motion Error @ 24.0 All visits HealpixSlicer',\n", " 'Normalized Proper Motion @ 20.5 All visits HealpixSlicer',\n", " 'Normalized Proper Motion @ 24.0 All visits HealpixSlicer',\n", " 'RapidRevisits All visits HealpixSlicer',\n", " 'Periodic_amp_1.00_mag_21 HealpixSlicer',\n", " 'Periodic_amp_1.00_mag_24 HealpixSlicer',\n", " 'Periodic_amp_0.10_mag_21 HealpixSlicer',\n", " 'Periodic_amp_0.10_mag_24 HealpixSlicer',\n", " 'Periodic_amp_0.05_mag_21 HealpixSlicer',\n", " 'Periodic_amp_0.05_mag_24 HealpixSlicer',\n", " 'SNIa UserPointsSlicer',\n", " 'KN UserPointsSlicer',\n", " 'TDEsAsciiMetric HealpixSlicer',\n", " 'DD:ELAISS1 SNIa UserPointsSlicer',\n", " 'DD:XMM-LSS SNIa UserPointsSlicer',\n", " 'DD:ECDFS SNIa UserPointsSlicer',\n", " 'DD:COSMOS SNIa UserPointsSlicer',\n", " 'DD:290 SNIa UserPointsSlicer',\n", " 'DD:EDFSa SNIa UserPointsSlicer',\n", " 'DD:EDFSb SNIa UserPointsSlicer',\n", " 'SNIa_Detected UserPointsSlicer',\n", " 'SNIa_Nobs UserPointsSlicer',\n", " 'SNIa_PrePeak UserPointsSlicer',\n", " 'SNIa_WellSampled UserPointsSlicer',\n", " 'KN_Detected UserPointsSlicer',\n", " 'KN_Nobs UserPointsSlicer',\n", " 'KN_PrePeak UserPointsSlicer',\n", " 'KN_WellSampled UserPointsSlicer',\n", " 'DD:ELAISS1 SNIa_Detected UserPointsSlicer',\n", " 'DD:ELAISS1 SNIa_Nobs UserPointsSlicer',\n", " 'DD:ELAISS1 SNIa_PrePeak UserPointsSlicer',\n", " 'DD:ELAISS1 SNIa_WellSampled UserPointsSlicer',\n", " 'DD:XMM-LSS SNIa_Detected UserPointsSlicer',\n", " 'DD:XMM-LSS SNIa_Nobs UserPointsSlicer',\n", " 'DD:XMM-LSS SNIa_PrePeak UserPointsSlicer',\n", " 'DD:XMM-LSS SNIa_WellSampled UserPointsSlicer',\n", " 'DD:ECDFS SNIa_Detected UserPointsSlicer',\n", " 'DD:ECDFS SNIa_Nobs UserPointsSlicer',\n", " 'DD:ECDFS SNIa_PrePeak UserPointsSlicer',\n", " 'DD:ECDFS SNIa_WellSampled UserPointsSlicer',\n", " 'DD:COSMOS SNIa_Detected UserPointsSlicer',\n", " 'DD:COSMOS SNIa_Nobs UserPointsSlicer',\n", " 'DD:COSMOS SNIa_PrePeak UserPointsSlicer',\n", " 'DD:COSMOS SNIa_WellSampled UserPointsSlicer',\n", " 'DD:290 SNIa_Detected UserPointsSlicer',\n", " 'DD:290 SNIa_Nobs UserPointsSlicer',\n", " 'DD:290 SNIa_PrePeak UserPointsSlicer',\n", " 'DD:290 SNIa_WellSampled UserPointsSlicer',\n", " 'DD:EDFSa SNIa_Detected UserPointsSlicer',\n", " 'DD:EDFSa SNIa_Nobs UserPointsSlicer',\n", " 'DD:EDFSa SNIa_PrePeak UserPointsSlicer',\n", " 'DD:EDFSa SNIa_WellSampled UserPointsSlicer',\n", " 'DD:EDFSb SNIa_Detected UserPointsSlicer',\n", " 'DD:EDFSb SNIa_Nobs UserPointsSlicer',\n", " 'DD:EDFSb SNIa_PrePeak UserPointsSlicer',\n", " 'DD:EDFSb SNIa_WellSampled UserPointsSlicer',\n", " 'YearCoverage night g HealpixSlicer',\n", " 'Kuiper rotSkyPos g HealpixSlicer',\n", " 'Kuiper rotTelPos g HealpixSlicer',\n", " 'N stars to Precision 0.10 g HealpixSlicer',\n", " 'YearCoverage night u HealpixSlicer',\n", " 'Kuiper rotSkyPos u HealpixSlicer',\n", " 'Kuiper rotTelPos u HealpixSlicer',\n", " 'N stars to Precision 0.10 u HealpixSlicer',\n", " 'DD:ELAISS1, u UserPointsSlicer',\n", " 'DD:XMM-LSS, u UserPointsSlicer',\n", " 'DD:ECDFS, u UserPointsSlicer',\n", " 'DD:COSMOS, u UserPointsSlicer',\n", " 'DD:290, u UserPointsSlicer',\n", " 'DD:EDFSa, u UserPointsSlicer',\n", " 'DD:EDFSb, u UserPointsSlicer',\n", " 'YearCoverage night z HealpixSlicer',\n", " 'Kuiper rotSkyPos z HealpixSlicer',\n", " 'Kuiper rotTelPos z HealpixSlicer',\n", " 'N stars to Precision 0.10 z HealpixSlicer',\n", " 'DD:ELAISS1, g UserPointsSlicer',\n", " 'DD:XMM-LSS, g UserPointsSlicer',\n", " 'DD:ECDFS, g UserPointsSlicer',\n", " 'DD:COSMOS, g UserPointsSlicer',\n", " 'DD:290, g UserPointsSlicer',\n", " 'DD:EDFSa, g UserPointsSlicer',\n", " 'DD:EDFSb, g UserPointsSlicer',\n", " 'DD:ELAISS1, z UserPointsSlicer',\n", " 'DD:XMM-LSS, z UserPointsSlicer',\n", " 'DD:ECDFS, z UserPointsSlicer',\n", " 'DD:COSMOS, z UserPointsSlicer',\n", " 'DD:290, z UserPointsSlicer',\n", " 'DD:EDFSa, z UserPointsSlicer',\n", " 'DD:EDFSb, z UserPointsSlicer',\n", " 'DD:ELAISS1, y UserPointsSlicer',\n", " 'DD:XMM-LSS, y UserPointsSlicer',\n", " 'DD:ECDFS, y UserPointsSlicer',\n", " 'DD:COSMOS, y UserPointsSlicer',\n", " 'DD:290, y UserPointsSlicer',\n", " 'DD:EDFSa, y UserPointsSlicer',\n", " 'DD:EDFSb, y UserPointsSlicer',\n", " 'YearCoverage night y HealpixSlicer',\n", " 'Kuiper rotSkyPos y HealpixSlicer',\n", " 'Kuiper rotTelPos y HealpixSlicer',\n", " 'N stars to Precision 0.10 y HealpixSlicer',\n", " 'DD:ELAISS1, i UserPointsSlicer',\n", " 'DD:XMM-LSS, i UserPointsSlicer',\n", " 'DD:ECDFS, i UserPointsSlicer',\n", " 'DD:COSMOS, i UserPointsSlicer',\n", " 'DD:290, i UserPointsSlicer',\n", " 'DD:EDFSa, i UserPointsSlicer',\n", " 'DD:EDFSb, i UserPointsSlicer',\n", " 'DD:ELAISS1, r UserPointsSlicer',\n", " 'DD:XMM-LSS, r UserPointsSlicer',\n", " 'DD:ECDFS, r UserPointsSlicer',\n", " 'DD:COSMOS, r UserPointsSlicer',\n", " 'DD:290, r UserPointsSlicer',\n", " 'DD:EDFSa, r UserPointsSlicer',\n", " 'DD:EDFSb, r UserPointsSlicer',\n", " 'YearCoverage night r HealpixSlicer',\n", " 'Kuiper rotSkyPos r HealpixSlicer',\n", " 'Kuiper rotTelPos r HealpixSlicer',\n", " 'N stars to Precision 0.10 r HealpixSlicer',\n", " 'YearCoverage night i HealpixSlicer',\n", " 'Kuiper rotSkyPos i HealpixSlicer',\n", " 'Kuiper rotTelPos i HealpixSlicer',\n", " 'GalaxyCountsMetric_extended i HealpixSlicer',\n", " 'N stars to Precision 0.10 i HealpixSlicer',\n", " 'Length of Survey (days)',\n", " 'NChanges filter, observationStartMJD',\n", " 'OpenShutterFraction',\n", " 'tEff',\n", " 'Number of Exposures',\n", " 'Percents',\n", " 'Counts',\n", " 'Slew Count All visits',\n", " 'Mean slewTime All visits',\n", " 'Median slewTime All visits',\n", " 'Min slewTime All visits',\n", " 'Max slewTime All visits',\n", " 'Nvisits as function of Alt/Az HealpixSlicer',\n", " 'OpenShutterFraction OneDSlicer',\n", " 'Filter Changes OneDSlicer',\n", " 'Count observationStartMJD HealpixSlicer',\n", " 'CoaddM5 HealpixSlicer',\n", " 'parallax HealpixSlicer',\n", " 'properMotion HealpixSlicer',\n", " 'Slew Time Histogram All visits OneDSlicer',\n", " 'Zoom Slew Time Histogram All visits OneDSlicer',\n", " 'Slew Distance Histogram All visits OneDSlicer',\n", " 'Zoom Slew Distance Histogram All visits OneDSlicer',\n", " 'Percents_greedy',\n", " 'Percents_blob, yy, a',\n", " 'Percents_blob, yy, b',\n", " 'Percents_DD:ELAISS1',\n", " 'Percents_DD:XMM-LSS',\n", " 'Percents_DD:EDFS',\n", " 'Percents_blob, iz, a',\n", " 'Percents_blob, iz, b',\n", " 'Percents_blob, zy, a',\n", " 'Percents_blob, zy, b',\n", " 'Percents_blob, ri, a',\n", " 'Percents_blob, ri, b',\n", " 'Percents_blob, gr, a',\n", " 'Percents_blob, gr, b',\n", " 'Percents_DD:ECDFS',\n", " 'Percents_blob, ug, a',\n", " 'Percents_blob, ug, b',\n", " 'Percents_blob, ur, a',\n", " 'Percents_blob, ur, b',\n", " 'Percents_DD:COSMOS',\n", " 'Counts_greedy',\n", " 'Counts_blob, yy, a',\n", " 'Counts_blob, yy, b',\n", " 'Counts_DD:ELAISS1',\n", " 'Counts_DD:XMM-LSS',\n", " 'Counts_DD:EDFS',\n", " 'Counts_blob, iz, a',\n", " 'Counts_blob, iz, b',\n", " 'Counts_blob, zy, a',\n", " 'Counts_blob, zy, b',\n", " 'Counts_blob, ri, a',\n", " 'Counts_blob, ri, b',\n", " 'Counts_blob, gr, a',\n", " 'Counts_blob, gr, b',\n", " 'Counts_DD:ECDFS',\n", " 'Counts_blob, ug, a',\n", " 'Counts_blob, ug, b',\n", " 'Counts_blob, ur, a',\n", " 'Counts_blob, ur, b',\n", " 'Counts_DD:COSMOS',\n", " 'tEff i',\n", " 'Number of Exposures i',\n", " 'Nvisits as function of Alt/Az i HealpixSlicer',\n", " 'Count observationStartMJD i HealpixSlicer',\n", " 'CoaddM5 i HealpixSlicer',\n", " 'tEff g',\n", " 'Number of Exposures g',\n", " 'Nvisits as function of Alt/Az g HealpixSlicer',\n", " 'Count observationStartMJD g HealpixSlicer',\n", " 'CoaddM5 g HealpixSlicer',\n", " 'tEff u',\n", " 'Number of Exposures u',\n", " 'Nvisits as function of Alt/Az u HealpixSlicer',\n", " 'Count observationStartMJD u HealpixSlicer',\n", " 'CoaddM5 u HealpixSlicer',\n", " 'Hourglass year 1-2 HourglassSlicer',\n", " 'tEff y',\n", " 'Number of Exposures y',\n", " 'Nvisits as function of Alt/Az y HealpixSlicer',\n", " 'Count observationStartMJD y HealpixSlicer',\n", " 'CoaddM5 y HealpixSlicer',\n", " 'Hourglass year 0-1 HourglassSlicer',\n", " 'Hourglass year 4-5 HourglassSlicer',\n", " 'Hourglass year 6-7 HourglassSlicer',\n", " 'Hourglass year 7-8 HourglassSlicer',\n", " 'Hourglass year 8-9 HourglassSlicer',\n", " 'Hourglass year 9-10 HourglassSlicer',\n", " 'tEff z',\n", " 'Number of Exposures z',\n", " 'Nvisits as function of Alt/Az z HealpixSlicer',\n", " 'Count observationStartMJD z HealpixSlicer',\n", " 'CoaddM5 z HealpixSlicer',\n", " 'Hourglass year 2-3 HourglassSlicer',\n", " 'Hourglass year 3-4 HourglassSlicer',\n", " 'Hourglass year 5-6 HourglassSlicer',\n", " 'tEff r',\n", " 'Number of Exposures r',\n", " 'Nvisits as function of Alt/Az r HealpixSlicer',\n", " 'Count observationStartMJD r HealpixSlicer',\n", " 'CoaddM5 r HealpixSlicer',\n", " 'PairFraction (g or r or i) HealpixSlicer',\n", " 'Discovery_Time NEO 3 quads in 30 nights detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 15 nights SNR=4 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 15 nights SNR=4 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 15 nights SNR=4 detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 15 nights SNR=0 detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 15 nights trailing loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 25 nights detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 30 nights SNR=4 detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 20 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 20 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 20 nights detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 4 pairs in 20 nights detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 15 nights SNR=3 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 15 nights SNR=3 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 15 nights SNR=3 detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 12 nights detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 15 nights SNR=5 detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 triplets in 30 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 triplets in 30 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 triplets in 30 nights detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 triplets in 30 nights detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 30 nights SNR=4 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 30 nights SNR=4 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 30 nights SNR=4 detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 30 nights detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 20 nights detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 15 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 15 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 15 nights detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO Single detection detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO Single detection detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO Single detection detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO Single pair detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO Single pair detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO Single pair detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 30 nights trailing loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 30 nights trailing loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 30 nights trailing loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 15 nights detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 4 pairs in 20 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 4 pairs in 20 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 4 pairs in 20 nights detection loss MoObjSlicer',\n", " 'Discovery_Time NEO Single pair detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 30 nights SNR=5 detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 30 nights SNR=5 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 30 nights SNR=5 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 30 nights SNR=5 detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 30 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 30 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 30 nights detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 15 nights SNR=0 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 15 nights SNR=0 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 15 nights SNR=0 detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 15 nights SNR=3 detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 15 nights SNR=4 detection loss MoObjSlicer',\n", " 'Discovery_Time NEO Single detection detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 quads in 30 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 quads in 30 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 quads in 30 nights detection loss MoObjSlicer',\n", " 'Discovery_Time NEO 3 pairs in 30 nights trailing loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 15 nights trailing loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 15 nights trailing loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 15 nights trailing loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 15 nights SNR=5 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 15 nights SNR=5 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 15 nights SNR=5 detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 25 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 25 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 25 nights detection loss MoObjSlicer',\n", " 'Discovery_N_Chances NEO 3 pairs in 12 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness NEO 3 pairs in 12 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 12 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 quads in 30 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 quads in 30 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 quads in 30 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 quads in 30 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights SNR=0 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights SNR=0 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights SNR=0 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights SNR=0 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights trailing loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights trailing loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights trailing loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights trailing loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 25 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 25 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 25 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 25 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 30 nights SNR=4 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 30 nights SNR=4 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 30 nights SNR=4 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 30 nights SNR=4 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 4 pairs in 20 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 4 pairs in 20 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 4 pairs in 20 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 4 pairs in 20 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 12 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 12 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 12 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 12 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights SNR=5 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights SNR=5 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights SNR=5 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights SNR=5 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 triplets in 30 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 triplets in 30 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 triplets in 30 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 triplets in 30 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 30 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 30 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 30 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 30 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 20 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 20 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 20 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 20 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO Single pair detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO Single pair detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO Single pair detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO Single pair detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 30 nights SNR=5 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 30 nights SNR=5 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 30 nights SNR=5 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 30 nights SNR=5 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights SNR=3 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights SNR=3 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights SNR=3 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights SNR=3 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights SNR=4 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights SNR=4 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights SNR=4 detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 15 nights SNR=4 detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO Single detection detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO Single detection detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO Single detection detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO Single detection detection loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=22.00 NEO 3 pairs in 30 nights trailing loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 30 nights trailing loss MoObjSlicer',\n", " 'DifferentialCompleteness@Time@H=20.00 NEO 3 pairs in 30 nights trailing loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=20.00 NEO 3 pairs in 30 nights trailing loss MoObjSlicer',\n", " 'CompletenessOverTime NULL MoObjSlicer',\n", " 'CumulativeCompleteness 15, 30 loss nights pairs NEO 3 in detection MoObjSlicer',\n", " 'DifferentialCompleteness 15, 30 loss nights pairs NEO 3 in detection MoObjSlicer',\n", " 'Color_Asteroid NEO MoObjSlicer',\n", " 'FractionPop 6 of ugrizy NEO MoObjSlicer',\n", " 'FractionPop 5 of grizy NEO MoObjSlicer',\n", " 'FractionPop 4 of grizy NEO MoObjSlicer',\n", " 'FractionPop 2 of g, r or i, z or y NEO MoObjSlicer',\n", " 'LightcurveInversion_Asteroid NEO MoObjSlicer',\n", " 'FractionPop Lightcurve Inversion NEO MoObjSlicer',\n", " 'Fraction of population for colors or lightcurve inversion NEO MoObjSlicer',\n", " 'Percents_twilight_neo',\n", " 'Counts_twilight_neo',\n", " 'CumulativeCompleteness 15, 30 loss pairs detection nights NEO in 3 MoObjSlicer',\n", " 'DifferentialCompleteness 15, 30 loss pairs detection nights NEO in 3 MoObjSlicer',\n", " 'CumulativeCompleteness 30, 15 in nights detection pairs 3 NEO loss MoObjSlicer',\n", " 'DifferentialCompleteness 30, 15 in nights detection pairs 3 NEO loss MoObjSlicer',\n", " 'CumulativeCompleteness 30, 15 3 detection loss pairs in nights NEO MoObjSlicer',\n", " 'DifferentialCompleteness 30, 15 3 detection loss pairs in nights NEO MoObjSlicer',\n", " 'CumulativeCompleteness 15, 30 detection loss nights in NEO 3 pairs MoObjSlicer',\n", " 'DifferentialCompleteness 15, 30 detection loss nights in NEO 3 pairs MoObjSlicer',\n", " 'Percents_blob, y',\n", " 'Percents_blob, zz, a',\n", " 'Percents_blob, zz, b',\n", " 'Percents_blob, ii, a',\n", " 'Percents_blob, ii, b',\n", " 'Percents_blob, rr, a',\n", " 'Percents_blob, rr, b',\n", " 'Percents_blob, gg, a',\n", " 'Percents_blob, gg, b',\n", " 'Percents_blob, u',\n", " 'Counts_blob, y',\n", " 'Counts_blob, zz, a',\n", " 'Counts_blob, zz, b',\n", " 'Counts_blob, ii, a',\n", " 'Counts_blob, ii, b',\n", " 'Counts_blob, rr, a',\n", " 'Counts_blob, rr, b',\n", " 'Counts_blob, gg, a',\n", " 'Counts_blob, gg, b',\n", " 'Counts_blob, u',\n", " 'CumulativeCompleteness 15, 30 NEO 3 in detection nights loss pairs MoObjSlicer',\n", " 'DifferentialCompleteness 15, 30 NEO 3 in detection nights loss pairs MoObjSlicer',\n", " 'CumulativeCompleteness 30, 15 3 in detection loss NEO pairs nights MoObjSlicer',\n", " 'DifferentialCompleteness 30, 15 3 in detection loss NEO pairs nights MoObjSlicer',\n", " 'Percents_ham, west, g',\n", " 'Percents_ham, west, r',\n", " 'Percents_ham, east, r',\n", " 'Percents_ham, east, g',\n", " 'Percents_ham, west, u',\n", " 'Percents_ham, east, u',\n", " 'Counts_ham, west, g',\n", " 'Counts_ham, west, r',\n", " 'Counts_ham, east, r',\n", " 'Counts_ham, east, g',\n", " 'Counts_ham, west, u',\n", " 'Counts_ham, east, u',\n", " 'CumulativeCompleteness 15, 30 detection nights 3 NEO pairs loss in MoObjSlicer',\n", " 'DifferentialCompleteness 15, 30 detection nights 3 NEO pairs loss in MoObjSlicer']" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "list(mdict.keys())" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "# If there are only some we want to focus on instead of reading all of them .. (much faster)\n", "keys = ['fO All visits HealpixSlicer', \n", " 'Parallax Error @ 24.0 All visits HealpixSlicer',\n", " 'Proper Motion Error @ 24.0 All visits HealpixSlicer', \n", " 'Periodic_amp_0.10_mag_24 HealpixSlicer',\n", " 'TDEsAsciiMetric HealpixSlicer',\n", " 'SNIa_PrePeak UserPointsSlicer',\n", " 'GalaxyCountsMetric_extended i HealpixSlicer',\n", " 'CumulativeCompleteness NEO 3 pairs in 15 nights detection loss MoObjSlicer',\n", " 'CumulativeCompleteness@Time@H=22.00 NEO 3 pairs in 15 nights detection loss MoObjSlicer',\n", " 'N stars to Precision 0.10 g HealpixSlicer']\n", "for k in keys:\n", " if k not in mdict:\n", " print(k)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "mdict_sub = {}\n", "for k in keys:\n", " mdict_sub[k] = mdict[k]\n", "rc.addSummaryStats(mdict_sub)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# something is still odd about the sso metrics .. the summary stats should have more info?\n", "# Oh .. I'm not recording all of the relevant info into the summary table, but it is saved in \n", "# actual metric output files (the cumulative completeness metric is a summary result, but it's 2d)\n", "# SO for now, just take the cumulative completeness NEO .. it's the completeness at H=22. \n", "# We would really also want completeness at the bright end, and \n", "# probably weight by completeness at year 2 as well as 10" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
fOArea fO All visits HealpixSlicerfOArea/benchmark fO All visits HealpixSlicerfONv MedianNvis fO All visits HealpixSlicerfONv MinNvis fO All visits HealpixSlicerfONv/benchmark MedianNvis fO All visits HealpixSlicerfONv/benchmark MinNvis fO All visits HealpixSlicerMedian Parallax Error (WFD) Parallax Error @ 24.0 All visits HealpixSlicer95th Percentile Parallax Error Parallax Error @ 24.0 All visits HealpixSlicerMean Parallax Error @ 24.0 All visits HealpixSlicerRms Parallax Error @ 24.0 All visits HealpixSlicer...TDEsAsciiMetric HealpixSlicerMax TDEsAsciiMetric HealpixSlicerMin TDEsAsciiMetric HealpixSlicerN(+3Sigma) TDEsAsciiMetric HealpixSlicerN(-3Sigma) TDEsAsciiMetric HealpixSlicerSNIa_PrePeak UserPointsSlicerN Galaxies (WFD) GalaxyCountsMetric_extended i HealpixSlicerN Galaxies (all) GalaxyCountsMetric_extended i HealpixSlicerCumulativeCompleteness NEO 3 pairs in 15 nights detection loss MoObjSlicerN stars to Precision 0.10 g HealpixSlicer
mw_heavy18814.4456451.045247920.0872.01.1151521.0569708.28419747.85297419.61474495.398854...8117.00.2500000.036.00.00.170751.004981e+101.205900e+100.5968217.056013e+08
ss_heavy18975.5900251.054199889.0846.01.0775761.0254558.508767539.72803295.567306361.058703...9309.00.2962960.057.00.00.170759.951830e+091.216792e+100.5966537.149288e+08
rolling_exgal_mod2_dust_sdf_0.2017819.0433810.989947911.0795.01.1042420.9636369.39129340.95355917.78698256.462794...8383.00.3214290.043.00.00.156509.875209e+091.216644e+100.5913256.954544e+08
ddf_heavy18101.8853401.005660904.0835.01.0957581.0121218.51715850.18375920.27383370.559784...8117.00.3928570.054.00.00.163509.884248e+091.181162e+100.5841077.122747e+08
baseline_nexp118173.2253001.009624944.0875.01.1442421.0606068.21864147.08113119.91462897.665071...8117.00.2500000.052.00.00.169501.010741e+101.208061e+100.5976517.164745e+08
barebones18499.7105281.0277621122.01043.01.3600001.2642427.61189716.23493110.13872022.116464...5963.00.1481480.0128.00.00.036501.061271e+101.099271e+100.6101565.425678e+08
baseline_nexp217383.4499800.965747872.0805.01.0569700.9757588.70198750.43281220.58709876.438000...8117.00.2592590.095.00.00.157509.859187e+091.178951e+100.5829217.010446e+08
dm_heavy18169.0288321.009390949.0881.01.1503031.0678798.92574545.34767720.322550146.114300...8117.00.2222220.048.00.00.170501.010657e+101.206574e+100.5718277.270122e+08
\n", "

8 rows × 47 columns

\n", "
" ], "text/plain": [ " fOArea fO All visits HealpixSlicer \\\n", "mw_heavy 18814.445645 \n", "ss_heavy 18975.590025 \n", "rolling_exgal_mod2_dust_sdf_0.20 17819.043381 \n", "ddf_heavy 18101.885340 \n", "baseline_nexp1 18173.225300 \n", "barebones 18499.710528 \n", "baseline_nexp2 17383.449980 \n", "dm_heavy 18169.028832 \n", "\n", " fOArea/benchmark fO All visits HealpixSlicer \\\n", "mw_heavy 1.045247 \n", "ss_heavy 1.054199 \n", "rolling_exgal_mod2_dust_sdf_0.20 0.989947 \n", "ddf_heavy 1.005660 \n", "baseline_nexp1 1.009624 \n", "barebones 1.027762 \n", "baseline_nexp2 0.965747 \n", "dm_heavy 1.009390 \n", "\n", " fONv MedianNvis fO All visits HealpixSlicer \\\n", "mw_heavy 920.0 \n", "ss_heavy 889.0 \n", "rolling_exgal_mod2_dust_sdf_0.20 911.0 \n", "ddf_heavy 904.0 \n", "baseline_nexp1 944.0 \n", "barebones 1122.0 \n", "baseline_nexp2 872.0 \n", "dm_heavy 949.0 \n", "\n", " fONv MinNvis fO All visits HealpixSlicer \\\n", "mw_heavy 872.0 \n", "ss_heavy 846.0 \n", "rolling_exgal_mod2_dust_sdf_0.20 795.0 \n", "ddf_heavy 835.0 \n", "baseline_nexp1 875.0 \n", "barebones 1043.0 \n", "baseline_nexp2 805.0 \n", "dm_heavy 881.0 \n", "\n", " fONv/benchmark MedianNvis fO All visits HealpixSlicer \\\n", "mw_heavy 1.115152 \n", "ss_heavy 1.077576 \n", "rolling_exgal_mod2_dust_sdf_0.20 1.104242 \n", "ddf_heavy 1.095758 \n", "baseline_nexp1 1.144242 \n", "barebones 1.360000 \n", "baseline_nexp2 1.056970 \n", "dm_heavy 1.150303 \n", "\n", " fONv/benchmark MinNvis fO All visits HealpixSlicer \\\n", "mw_heavy 1.056970 \n", "ss_heavy 1.025455 \n", "rolling_exgal_mod2_dust_sdf_0.20 0.963636 \n", "ddf_heavy 1.012121 \n", "baseline_nexp1 1.060606 \n", "barebones 1.264242 \n", "baseline_nexp2 0.975758 \n", "dm_heavy 1.067879 \n", "\n", " Median Parallax Error (WFD) Parallax Error @ 24.0 All visits HealpixSlicer \\\n", "mw_heavy 8.284197 \n", "ss_heavy 8.508767 \n", "rolling_exgal_mod2_dust_sdf_0.20 9.391293 \n", "ddf_heavy 8.517158 \n", "baseline_nexp1 8.218641 \n", "barebones 7.611897 \n", "baseline_nexp2 8.701987 \n", "dm_heavy 8.925745 \n", "\n", " 95th Percentile Parallax Error Parallax Error @ 24.0 All visits HealpixSlicer \\\n", "mw_heavy 47.852974 \n", "ss_heavy 539.728032 \n", "rolling_exgal_mod2_dust_sdf_0.20 40.953559 \n", "ddf_heavy 50.183759 \n", "baseline_nexp1 47.081131 \n", "barebones 16.234931 \n", "baseline_nexp2 50.432812 \n", "dm_heavy 45.347677 \n", "\n", " Mean Parallax Error @ 24.0 All visits HealpixSlicer \\\n", "mw_heavy 19.614744 \n", "ss_heavy 95.567306 \n", "rolling_exgal_mod2_dust_sdf_0.20 17.786982 \n", "ddf_heavy 20.273833 \n", "baseline_nexp1 19.914628 \n", "barebones 10.138720 \n", "baseline_nexp2 20.587098 \n", "dm_heavy 20.322550 \n", "\n", " Rms Parallax Error @ 24.0 All visits HealpixSlicer \\\n", "mw_heavy 95.398854 \n", "ss_heavy 361.058703 \n", "rolling_exgal_mod2_dust_sdf_0.20 56.462794 \n", "ddf_heavy 70.559784 \n", "baseline_nexp1 97.665071 \n", "barebones 22.116464 \n", "baseline_nexp2 76.438000 \n", "dm_heavy 146.114300 \n", "\n", " ... TDEsAsciiMetric HealpixSlicer \\\n", "mw_heavy ... 8117.0 \n", "ss_heavy ... 9309.0 \n", "rolling_exgal_mod2_dust_sdf_0.20 ... 8383.0 \n", "ddf_heavy ... 8117.0 \n", "baseline_nexp1 ... 8117.0 \n", "barebones ... 5963.0 \n", "baseline_nexp2 ... 8117.0 \n", "dm_heavy ... 8117.0 \n", "\n", " Max TDEsAsciiMetric HealpixSlicer \\\n", "mw_heavy 0.250000 \n", "ss_heavy 0.296296 \n", "rolling_exgal_mod2_dust_sdf_0.20 0.321429 \n", "ddf_heavy 0.392857 \n", "baseline_nexp1 0.250000 \n", "barebones 0.148148 \n", "baseline_nexp2 0.259259 \n", "dm_heavy 0.222222 \n", "\n", " Min TDEsAsciiMetric HealpixSlicer \\\n", "mw_heavy 0.0 \n", "ss_heavy 0.0 \n", "rolling_exgal_mod2_dust_sdf_0.20 0.0 \n", "ddf_heavy 0.0 \n", "baseline_nexp1 0.0 \n", "barebones 0.0 \n", "baseline_nexp2 0.0 \n", "dm_heavy 0.0 \n", "\n", " N(+3Sigma) TDEsAsciiMetric HealpixSlicer \\\n", "mw_heavy 36.0 \n", "ss_heavy 57.0 \n", "rolling_exgal_mod2_dust_sdf_0.20 43.0 \n", "ddf_heavy 54.0 \n", "baseline_nexp1 52.0 \n", "barebones 128.0 \n", "baseline_nexp2 95.0 \n", "dm_heavy 48.0 \n", "\n", " N(-3Sigma) TDEsAsciiMetric HealpixSlicer \\\n", "mw_heavy 0.0 \n", "ss_heavy 0.0 \n", "rolling_exgal_mod2_dust_sdf_0.20 0.0 \n", "ddf_heavy 0.0 \n", "baseline_nexp1 0.0 \n", "barebones 0.0 \n", "baseline_nexp2 0.0 \n", "dm_heavy 0.0 \n", "\n", " SNIa_PrePeak UserPointsSlicer \\\n", "mw_heavy 0.17075 \n", "ss_heavy 0.17075 \n", "rolling_exgal_mod2_dust_sdf_0.20 0.15650 \n", "ddf_heavy 0.16350 \n", "baseline_nexp1 0.16950 \n", "barebones 0.03650 \n", "baseline_nexp2 0.15750 \n", "dm_heavy 0.17050 \n", "\n", " N Galaxies (WFD) GalaxyCountsMetric_extended i HealpixSlicer \\\n", "mw_heavy 1.004981e+10 \n", "ss_heavy 9.951830e+09 \n", "rolling_exgal_mod2_dust_sdf_0.20 9.875209e+09 \n", "ddf_heavy 9.884248e+09 \n", "baseline_nexp1 1.010741e+10 \n", "barebones 1.061271e+10 \n", "baseline_nexp2 9.859187e+09 \n", "dm_heavy 1.010657e+10 \n", "\n", " N Galaxies (all) GalaxyCountsMetric_extended i HealpixSlicer \\\n", "mw_heavy 1.205900e+10 \n", "ss_heavy 1.216792e+10 \n", "rolling_exgal_mod2_dust_sdf_0.20 1.216644e+10 \n", "ddf_heavy 1.181162e+10 \n", "baseline_nexp1 1.208061e+10 \n", "barebones 1.099271e+10 \n", "baseline_nexp2 1.178951e+10 \n", "dm_heavy 1.206574e+10 \n", "\n", " CumulativeCompleteness NEO 3 pairs in 15 nights detection loss MoObjSlicer \\\n", "mw_heavy 0.596821 \n", "ss_heavy 0.596653 \n", "rolling_exgal_mod2_dust_sdf_0.20 0.591325 \n", "ddf_heavy 0.584107 \n", "baseline_nexp1 0.597651 \n", "barebones 0.610156 \n", "baseline_nexp2 0.582921 \n", "dm_heavy 0.571827 \n", "\n", " N stars to Precision 0.10 g HealpixSlicer \n", "mw_heavy 7.056013e+08 \n", "ss_heavy 7.149288e+08 \n", "rolling_exgal_mod2_dust_sdf_0.20 6.954544e+08 \n", "ddf_heavy 7.122747e+08 \n", "baseline_nexp1 7.164745e+08 \n", "barebones 5.425678e+08 \n", "baseline_nexp2 7.010446e+08 \n", "dm_heavy 7.270122e+08 \n", "\n", "[8 rows x 47 columns]" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rc.summaryStats # Note that this includes all summary stat values for each of these metrics.\n", "# Maybe we just want medians for now, but including something about the tails (95th percentiles? rms?) would be good.\n", "# It looks like the raw summary stat recorded for TDE may be something spurious. \n", "# The metric itself calculates the fraction of TDEs possible to detect at each point in the sky.\n", "# The median value would be better to use for now." ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "# Or if there are just specific metrics that we would like to investigate .. \n", "cols_dict = {'fO': 'fONv/benchmark MedianNvis fO All visits HealpixSlicer',\n", " 'Parallax': 'Median Parallax Error (WFD) Parallax Error @ 24.0 All visits HealpixSlicer',\n", " 'Proper Motion': 'Median Proper Motion Error (WFD) Proper Motion Error @ 24.0 All visits HealpixSlicer',\n", " 'N Gals': 'N Galaxies (all) GalaxyCountsMetric_extended i HealpixSlicer',\n", " 'SNe Ia': 'SNIa_PrePeak UserPointsSlicer',\n", " 'TDE': 'Median TDEsAsciiMetric HealpixSlicer', \n", " 'NEO': 'CumulativeCompleteness NEO 3 pairs in 15 nights detection loss MoObjSlicer',\n", " 'N Stars': 'N stars to Precision 0.10 g HealpixSlicer'}" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
fOParallaxProper MotionN GalsSNe IaTDENEON Stars
mw_heavy1.1151528.2841972.0462441.205900e+100.170750.0357140.5968217.056013e+08
ss_heavy1.0775768.5087672.0939141.216792e+100.170750.0357140.5966537.149288e+08
rolling_exgal_mod2_dust_sdf_0.201.1042429.3912932.2371541.216644e+100.156500.0357140.5913256.954544e+08
ddf_heavy1.0957588.5171582.1015401.181162e+100.163500.0357140.5841077.122747e+08
baseline_nexp11.1442428.2186412.0252231.208061e+100.169500.0357140.5976517.164745e+08
barebones1.3600007.6118971.8606361.099271e+100.036500.0000000.6101565.425678e+08
baseline_nexp21.0569708.7019872.0963061.178951e+100.157500.0357140.5829217.010446e+08
dm_heavy1.1503038.9257452.2080351.206574e+100.170500.0357140.5718277.270122e+08
\n", "
" ], "text/plain": [ " fO Parallax Proper Motion \\\n", "mw_heavy 1.115152 8.284197 2.046244 \n", "ss_heavy 1.077576 8.508767 2.093914 \n", "rolling_exgal_mod2_dust_sdf_0.20 1.104242 9.391293 2.237154 \n", "ddf_heavy 1.095758 8.517158 2.101540 \n", "baseline_nexp1 1.144242 8.218641 2.025223 \n", "barebones 1.360000 7.611897 1.860636 \n", "baseline_nexp2 1.056970 8.701987 2.096306 \n", "dm_heavy 1.150303 8.925745 2.208035 \n", "\n", " N Gals SNe Ia TDE NEO \\\n", "mw_heavy 1.205900e+10 0.17075 0.035714 0.596821 \n", "ss_heavy 1.216792e+10 0.17075 0.035714 0.596653 \n", "rolling_exgal_mod2_dust_sdf_0.20 1.216644e+10 0.15650 0.035714 0.591325 \n", "ddf_heavy 1.181162e+10 0.16350 0.035714 0.584107 \n", "baseline_nexp1 1.208061e+10 0.16950 0.035714 0.597651 \n", "barebones 1.099271e+10 0.03650 0.000000 0.610156 \n", "baseline_nexp2 1.178951e+10 0.15750 0.035714 0.582921 \n", "dm_heavy 1.206574e+10 0.17050 0.035714 0.571827 \n", "\n", " N Stars \n", "mw_heavy 7.056013e+08 \n", "ss_heavy 7.149288e+08 \n", "rolling_exgal_mod2_dust_sdf_0.20 6.954544e+08 \n", "ddf_heavy 7.122747e+08 \n", "baseline_nexp1 7.164745e+08 \n", "barebones 5.425678e+08 \n", "baseline_nexp2 7.010446e+08 \n", "dm_heavy 7.270122e+08 " ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Pull out the exact summary stats we want and rename them to simpler column values\n", "subDF = rc.summaryStats[cols_dict.values()]\n", "subDF = subDF.rename(mapper=dict(map(reversed, cols_dict.items())), axis=1)\n", "subDF" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
fOParallaxProper MotionN GalsSNe IaTDENEON Stars
mw_heavy0.9745761.0079771.0103790.9982111.0073751.00.9986110.984824
ss_heavy0.9417371.0353011.0339171.0072271.0073751.00.9983300.997843
rolling_exgal_mod2_dust_sdf_0.200.9650421.1426821.1046461.0071050.9233041.00.9894150.970662
ddf_heavy0.9576271.0363221.0376830.9777330.9646021.00.9773380.994138
baseline_nexp11.0000001.0000001.0000001.0000001.0000001.01.0000001.000000
barebones1.1885590.9261750.9187310.9099460.2153390.01.0209230.757274
baseline_nexp20.9237291.0588111.0350980.9759040.9292041.00.9753540.978464
dm_heavy1.0052971.0860371.0902670.9987691.0059001.00.9567901.014708
\n", "
" ], "text/plain": [ " fO Parallax Proper Motion N Gals \\\n", "mw_heavy 0.974576 1.007977 1.010379 0.998211 \n", "ss_heavy 0.941737 1.035301 1.033917 1.007227 \n", "rolling_exgal_mod2_dust_sdf_0.20 0.965042 1.142682 1.104646 1.007105 \n", "ddf_heavy 0.957627 1.036322 1.037683 0.977733 \n", "baseline_nexp1 1.000000 1.000000 1.000000 1.000000 \n", "barebones 1.188559 0.926175 0.918731 0.909946 \n", "baseline_nexp2 0.923729 1.058811 1.035098 0.975904 \n", "dm_heavy 1.005297 1.086037 1.090267 0.998769 \n", "\n", " SNe Ia TDE NEO N Stars \n", "mw_heavy 1.007375 1.0 0.998611 0.984824 \n", "ss_heavy 1.007375 1.0 0.998330 0.997843 \n", "rolling_exgal_mod2_dust_sdf_0.20 0.923304 1.0 0.989415 0.970662 \n", "ddf_heavy 0.964602 1.0 0.977338 0.994138 \n", "baseline_nexp1 1.000000 1.0 1.000000 1.000000 \n", "barebones 0.215339 0.0 1.020923 0.757274 \n", "baseline_nexp2 0.929204 1.0 0.975354 0.978464 \n", "dm_heavy 1.005900 1.0 0.956790 1.014708 " ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Let's normalize everything and reverse proper motion & parallax error so bigger is better.\n", "# note you can normalize inside the runcomparison metric, but doing it explicitly here to reverse might be easier\n", "baseline = 'baseline_nexp1'\n", "for k in ['Parallax', 'Proper Motion']:\n", " subDF[k] = 1 - (subDF[k] - subDF[k][baseline]) / subDF[k][baseline]\n", "for k in ['N Gals', 'SNe Ia', 'TDE', 'fO', 'NEO', 'N Stars']:\n", " subDF[k] = subDF[k] / subDF[k][baseline]\n", "subDF" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "metric_names = list(cols_dict.keys())\n", "theta = radar_factory(len(metric_names), frame='polygon')" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAbsAAAFECAYAAAC+rZDSAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzs3Xd4VFXCx/HvuXdqZtImvRe60qWIFQEVyyprRV37Wta6FgRXt+juK6irrtstK/burr2w1rUgIKACSQgQIL23aZl2z/tHEqQkEGBCEM7neXzEzMm550omvznnniKklCiKoijKgUwb6AYoiqIoSn9TYacoiqIc8FTYKYqiKAc8FXaKoijKAU+FnaIoinLAU2GnKIqiHPBU2CkHDSHEDUKIYiHEc0KIWUKI74UQJUKIVUKIWQPdPkVR+o9Q6+yUg4UQogQ4CYgDXgOOl1JuFEIUAP8FzpBSfj+QbVQUpX+onp1yUBBC/BMoBN4EvgDukVJuBOj693xgzsC1UFGU/qTCTjkoSCmvBqqB44B1wPLtinwDHLqv26Uoyr6hwk45GAlg+/H7nr6mKMoBQoWdcjBaA0zY7mvjgaIBaIuiKPuACjvlYPRH4HYhRD5A179/BTwwYC1SFKVfmQa6AYqyr0kpvxVCzAXeEkKYgRBwm5Ty2wFumqIo/UQtPVAURVEOeGoYU1EURTngqbBTFEVRDngq7BRFUZQDngo7RVEU5YCnwk5RFEU54KmwUxRFUQ54KuwURVGUA54KO0VRFOWAp8JOURRFOeCpsFMOSkIIXQjxByHEtIFui6Io/U9tF6YcVIQQKYmJiddYLJYrk5OTk4LBoPB4PKWNjY1/CIVC/5FSBge6jYqiRJ8KO+WAJ4QQwOSMjIw7Y2JiJt98883xF110kdnpdPLpp5+Sn5/Pww8/7H7xxRd9kUjkuYaGhoeklJUD3W5FUaJHhZ1ywBJCOBwOx4WxsbG3Tpw4MWHu3LlJRxxxBJ3Z1+nTTz9l6tSpAAQCAV5++eXI/fff39zU1FRSXV19N/CxlNIYmDtQFCVaVNgpBxwhxLC0tLS5ZrP51CuuuMJx9dVXx6Smpm5Tpuauu2h9+RVkJILQdRLOOZuM3/52y+vffvstf/zjH1s+/PBDT0dHx9/a2toelVK27Ot7URQlOlTYKQcEIYTJZDKdnpKScmd+fn7WvHnzkk855RSh6zpSSsLhMOFwGCkljffMx/vqqzvU4Tz7LFLuuAOTyYSu6wghaGtrY+HChYGHH37YHQgE/ldTU/N/UsoVA3CLiqLsBRV2yo+aECIjLS3tFl3XL5k+fbpz1qxZ1tTUVMLh8NZltgSYpmk4L7kUYew4Mik1jbZ/PU44HCYSiWzzmtlsZvXq1bz44ovedevWNbS2tv7B6/U+J6Xs6PebVBRlr6mwU350uiacHJufnz/fbrcfeskll8SceeaZemJiIhaLBavVislk2ubZ3NaKh4/ote4RJcU7fE1KSTAYJBAIEAgE2LRpE08++WTwjTfe8Ou6/np5efndUsqyaN2foijRp8JO+dEQQsTHxsZeHhMTc8Oxxx4bO2fOHNeECRN2qw4ZClEyegz09HOv64xYs7rPdYVCIV5//XXj3nvvba6pqSmrra292zCM96WUkV1/t6Io+5IKO2W/J4QYnZGR8SuLxTLt2muvjb388sttLpdrt+sJNzdTecON+L/5psfXE86bvc0kld1RXFzMAw880Pb22297Q6HQY83NzX+TUjbsUWWKokSdCjtlvySEsFqt1rMTExNvHz58eOrtt9+ePGPGDDRtzzb96SgpoeKaa4k0NuK69FI61q3D++mnSMOge7Az+29/JXb69L1qt8fj4Zlnngk+9NBD7V6vd2l1dfUfgK+leqMpyoBSYafsV4QQeSkpKTebTKbZF1xwgf3666+Pzc3N3as629//gOp589BiYki+4QasBQVbXlvS2MjEuDjq588nVFtL/gsvYBs2dG9vAyklixcv5t57721aunRpm9vt/qPX631aSund68oVRdltKuyUASeE0IDjMzMzf5OSkjJk7ty5rjPPPFO3WCx7Va80DBr/+lca//4PrIMHk3z99egJCduUWdLYyOTkZMLNzdTddReaw0H+q69gSkzcq2tvrb6+nkceecT36KOPesPh8Lu1tbULpJQlUbuAoii7pMJOGTBCiKSEhIRfWK3Wq0888UTHrbfemjBq1Kio1B3xeKi+7TY8H3+C45hjcF10EcJs3qFcd9gBBDZsoH7+fOzjxpL7r3/1WH6v2hSJ8O6778r58+c3bdq0qaqhoeEP4XD4DSllKKoXUhRlByrslH1OCDEpIyPjDrvdPuWXv/xl3MUXX2yNi4uLWv3B8nIqfnENwY0bSTz/fJwzZvS6DGHrsAPwfvklTY8+SuL555H+m99ErU3b27BhAw8//HD7K6+84guHw880Njb+SUpZ3W8XVJSDnAo7ZZ8QQsTExMRcEBcXN2fcuHGuefPmJR199NG9htCe8n71FZW/vAkMg+RrrsF26KE7Lb992AG0vPQS7nffJf13vyVx9uyotm97fr+fl156KXz//fe3tLa2rq6urv498Kma0KIo0aXCTulXQoghaWlpt5lMptMuu+wyxzXXXONIT0+P+nWklLQ8/TR1996HOTOTlBtvxLTdfpg96SnspGHQ8NBDdKxZQ+7CJ3BMmhT19vZk+fLl3Hfffc2fffaZp6Oj489tbW2PSynb9snFFeUAp8JOibqufSpPTUlJuTMnJyd33rx5ST/5yU80k8nUL9czgkFqf/s72v7zH+yHHUbSlVei2Wx9+t6ewg7A8PmovftuZIef/FdexZKdFe1m96qlpYXHH3+8429/+5s7GAx+UlNTc4+U8rt91gBFOQCpsFOiRgiR5nK5rjebzZf99Kc/jbnpppvihw7d+2n8OxOqr6fy+hvo+O474mbNIv700xG7sRavt7ADCNXWUnvXXViys8l/4Xk0hyNaze4TwzD46KOPmD9/fmNxcXFDa2vrgo6OjpeklIF92hBFOQCosFP2Stc+lUdlZmb+OjY2dtwtt9wSf8EFF5hjYmL6/dr+77+n8rrriLS7Sfr5z4mZOHG369hZ2AH4V62i4cEHcU6bRvafH96tII2miooK/vKXv3ieffZZXyQSebm+vv4BKeWmAWmMovwIqbBT9ogQItbpdF7qcDhuOuKII+Lmzp3rmjRpUtQnnPSm7Y03qPn1b9Di40m54QYse7jwfFdhB9D+/vu0vvACyddeS8r11+3RdaIlGAzy73//O7JgwYKWhoaG9V0HzH6gDphVlJ1TYafsFiHEyPT09Hlms/mEX/ziF84rrrjCnryLsIgmGQ5T/8CDNC9ciHXECJKvvRY9NnaP6+tL2EkpaX78cbxffEHWn/5E3MwT9/h60bR69WoeeOCB1vfee88bCAQeaW1t/buUsmmg26Uo+yMVdsouCSEsZrP5jKSkpDsGDx6cfvvttyfNnDlT7Ok+lXsq0tZG1c234P3yS5wzZpB43nmIvZz00pewg87TEuoXLCBYWUn+C89jG9H7MUH7mtvt5qmnngo+9NBD7R0dHYu79uNcppYvKMoPVNgpvRJC5CQnJ99kMpnOnz17dsyNN94Ym5+fPyBtCWzYQMU11xKqqsJ14YU4p06NSr19DTuASGsrtXfdhbBaKXj1FUxJSVFpQ7RIKfniiy9YsGBB04oVK1ra29vv9/l8z0opfQPdNkUZaCrslG107VM5LTMz8zcul2v4bbfd5jrnnHN0q9U6YG1yf/IJ1bfOAZNOynXXY43iDM/dCTuA4MaN1N1zD7aRI8l7ciFiL/fv7C+1tbX885//9D3++OPecDj8Zl1d3X1SytKBbpeiDBQVdgoAQojE+Pj4K20227UzZsxw3nrrrYljx44d0DZJKWl69DEa/vQnLHl5JN9wQ9R6U3d/284rmwIYEjQBZ+db+c3Yvm1Z5v36a5r+8Q8Szj6L9Lvv3meTcvZEOBzm7bffNubPn99cUVFR3rUf51tSyvBAt01R9iUVdlsRQkSAVYAJKAYujsYQkBDiSeBtKeWrQohPgVullD2fILqPCSHGZ2Rk3GG1Wo+58cYbYy+99FJrfHz8QDcLw++n5o47aH/3PWIOPxzXZZehRal3efe37by0ccelaucW9D3wWl99lfa33iLtzjtx/eyCqLSrv5WWlvLQQw+1vf76675QKPRkU1PTn6WUtf19XSGEBB6UUt7S9d+3Ak4p5e+2K5cG/AvIAczAJinlyUKIfOAIKeXz/d1W5cClwm4rQgiPlNLZ9efngOVSygf7+L26lDLSy2tPsh+FnRDCZrfbz4uPj587evTopHnz5iVPnTp1v+mhhKqrqbj2OgIlJSScfTaxJ5+8222TUhKWkpBhEJaSsGEQkZKIlBz/voee5ulrwCcnx2ISGroQmITAomnoPUzEkYZB458fxv/9KnIffwzHlCl7drMDwOfz8fzzz4cfeOCBlvb29u+69uP8vL8mtAghOoAaYKKUsnEnYfcIUCSlfLjrv0dLKb8XQkyl8z1z6m5cs9f3o3JwUmG3le3C7mpgtJTyGiHE63R+2rQBD0spH+0uDzwInAjcAkwDfgLYga+Aq6SUsrewE0L8A5jYVf5VKeVvhRDxwFLgNCnlWiHEC8DHUsrHonB/hWlpaXN0XT/jkksuibnmmmucWVn7bhusvvB98w2V19+A0dFB8i9+gX3MmB7LGVLij0TwhsP4I2E6IhE6IhECEQNJ58+0WdMwa93BpdERgc9qDP65NsRdpie4QP8YHYMIGs9FpvHb8GX8e7oVkFsCMtQVkgCaENh0HbuuY9N1bMEQgfvuRbo9FLz6yh6v9RtIy5Yt4957723+4osv2n0+35/cbvdCKWV7NK/R9T75PzoD7o6dhN2bwFNSyte2+/rXwAhgI/AU8B/gGaB7S5vrpJRfdYXib+kM1rF0vrdeBrIBHfi9lPKlaN6b8uOhwm4r3WEnhDABrwHvSyn/IYRwSSmbhRB2YBlwrJSyqWt45lwp5ctd3++SUjZ3/fkZ4GUp5Vs7CbvuenXgI+CGrk+yxwN3Aw8Dl0gpZ+7FPemapp2Ulpb2m8zMzPx58+YlnX766Zo5yme1RUPLSy9T+/vfY0pJIeWGGzBnZgIQjERwh8O0h0K4wyH84TAgiDHpxOgm7KYfAsiq6Wjb9QJL2sK8VObnrYoO/BG4y/QE5anf8GpcLAadPbqz2t3k1k/gEfPPOafAzhn5NpKs2/boIoZBhxHB3xWsvnAEf10t8Q8+iBGfQOT//kB8Rgbx8fHExcXRX3uB9oempiYee+wx/z/+8Q9PMBj8sLa29h4p5epo1N0VdpnA98AY4Ap6DrsTgZeAlcCHwEIpZfX2PTshRAxgSCk7hBBDgBeklBO6yr0DjJRSbhRCnAnMlFJe0fV98Wpj7YOXCrutbPXMDuBz4BYpZVAI8Tvgp11fzwdOlFJ+LYQIA9bu4ZKuN9dtQAzgAv4ipVywk7C7GriSzmeEGcD1UsoXu+p6FDgTGCOlrNyDe0lJTEy8zmKx/PwnP/lJzM0335wwYj9aG7Y1GQpRN38+Lc+/gG3UKGxXXEG72URrMIQnHMKsacSZzMSaO/+J0fVdDmsGI5JF1QFeLPOzsjmMRYMjkzROTNUobbmKV+KcsHUdUnJ2u4clnr+zpl1i1uDELCuzC+yMdZl2er2ONWuo/+MfsRwxBXH77bS73bS1tSGEIDExEZfLRVJSErY+bk49kAzDYNGiRcyfP7+xtLS0rqmp6f9CodBrUsrgnta51YfIu4EQ4KeHsOsq6wJmAicBJwAjgUPZNuzigb/S2XuLAEOllDHdPTsp5XFd5YYCH9DZu3tbSvn5nt6D8uP34/nouW/4pZTbTEHsegPNAKZIKX1dYdX9W6tjq6CzAX8HJkgpK7oCstffbkKIAuBWOp9jtHQFoq3rNY3OYRs/naHZp7Dr2qdySmZm5p1DhgyZePPNN8f97Gc/szidzj7d/EAINzdTfv0NBJYvJzBtGtUnzcQhDRIk5DocOE2mHXpqO1Pti/DyRj+vbuqgJSjJsAkuztWZntCOw/Mx9U2LeTVhu6ADEILX4pw8l1zFOvJYVBfh4+oAb1cEGBanM7vQzik5NhymHdtiO/RQEs8/n5ZnnyXpzbcovOmXnfcWDtPS0kJzczObNm0iFAqRlJREamoqSUlJ+2XPT9M0Zs6cycyZM5M3bdqU/Je//OWR559//qHU1NQXGhoaHpRSVuxF9X8CVgALeyvQNTLyPPC8EOJt4Bhg+11hbgLq6OwlakDHVq95t6qrVAhxGHAyMF8IsUhKefdetF/5Edv/3m37n3igpSvohgOH91KuO9gahRBO4Czg1Z3UG0fnG7OtaxbaScCnXa/dROds0F8BTwghpkgpQ71VJIRwOp3Oi9PS0m6ePHly/Ny5c5OmTJmy30w42Z6Ukvb2dmoWLyb8+9+jtbuRF19M2tFHM9i0815UTwwp+bI+xItlfv5XGwQko5JbONFViVUspzK8kTs7/LRYdeh8JNdzPYCrbC7HWwoZ65rBBVlH8L8WCx/UGdz1rYcHVns5PdfGuQU2BsVt+9ZxzphBsKKCpkcewTpkCPGnnoLJZCIlJYWUlBSGDRtGOBymubmZhoYGiouLsdvtpKenk5aWtl/2+vLz83nggQdi77nnnthXXnnl+vvuu++CrKystV37cX60u/txdg3ZvwxcDjyx/etCiGnA113vtVhgEFBO51/N1nvCxQOVUkpDCHExnc/jdiCEyASapZTPdg2lXrI77VUOLGoYcytbT1DZ6mtW4HUgC1gLpAC/k1J+un15IcQfgNnAJqAC2Cyl/N1OhjGfBCYDZUAAeJPOiS1vAJOklG4hxIOAW0r52x7aOzw3N/d3hmFMu/LKKx1XXXVVTGofDiwdKO3t7VRVVVFXV0fcmjXYH30MLSaGlBtvxFpQsNv1tQYMXtvs48XKcuplJXZHFYnOajr0Svyic9TNJCWFoQg5kRhcZJJMBo/YFmP0lKcSBHBkR4TZbU0cHhC0Jh5DvWsG30Xy+KDOYHGzQVjCpGQzswvtTMuwYNY6K5PhMPX33ktw82bynnsO+8idn5Lu8Xiora2ltrYWIQRZWVlkZGQwkAv4d+W7777jj3/8Y8uHH37ok1I+WldX9xcpZcvOvme7iV9pdE40ua+HZ3ZzgEuBMJ09toVSygeEEGbgfSAZeBJ4m85n6j7gEzqH/509PNs7EbifzrAMAb/YX5b8KPueCrsfGSGEWdf107Ozs+enp6en3HHHHXEnn3yy0PUeP9wOuEAgQGVlJZWVldhsNjIzMrD8+980//MRrIMHk3z99egJCX2qK2iEKAtW83HTRj5qLqMiXIGw1iC0zk6vWQqGBsOMDPgYGoyQIlMwm4bSZs4B8cNkk9fNq/jaXNGZbN0kjAtnkihj+MZUQbsWIDUiOLu9jTPd7dgthTQkHc9G5xF82GThv/URGgKQYhWcXWDnrHwbaXadSHt755ZimkbBa69iSknp0735/X6qqqqorq7GYrGQm5tLeno6+3r/0b5qa2vjiSeeCPz1r38NGobx5aZNm+6UUi4f6HYpSm9U2P1ICCEyk5OTf2k2my859thjE+fMmWMaP378QDerR1JKGhoa2Lx5M36/n+zsbLKzs9GDIarn3obno49xHHMMrosuQvQyK9RvBFgfqGBtRzlrO8op9m+iLFiNQefSKRmxEhdJZrwRYUpHHZM91eSFQrSZs6i0DaXWWkBE630rr9fNq1hirkAKEBImh3KYFRoFQASDYr2eJeZy1umNaBKO9Xf29iYEO3t7ta4ZfBXI44P6CN+2SjQB0zIszC60M85bTf0992AdPpy8Z55G280txdxuN+Xl5dTX15OSkkJ+fj7763NXwzB46aWXeOSRRzpKS0srWltbF/j9/heklP6BbpuibE2F3X6sa8LJ1MzMzF8nJCSMvOSSS1zjx4/XjzzyyP3yGU8oFKKiooLy8nISEhLIz88noavXFiwvp+KaawmWlZF4/vk4Z8zY8mzOHfFR2lHO2sDmrnDbTHmwFqN7vZyMIejLIujPJCGSwlmmRs6KfEuerwhdhvHoCVTahlJlG0KHvnvH/YRTRmNq+L7X1xuFl6WmCpabK/GKIFlhjXPaW5jldmOxdvb2iu1TeL/RwicNBu4wFDh1rgsUc8grjxL/05+Scc//7dHzU8MwqKurY+PGjQghKCwsJDU1db98FtvY2Mgnn3zC0qVL/c8//7w7HA7/p76+/n4p5YaBbpuigAq7/ZIQIj4+Pv7nNpvthqlTpzpvvfVWl9VqJRgMMnbsWPa3IcuOjg42bNhAfX09OTk55ObmYtmqN+P96isqf3kTGAaWqy6hrNDeFWybKenYTHWocUvZRC2WPFMq5mAG5S05bGjMQ4TjOM1ZygWW/zEq8A22iIegsFFtG0ylbShtppQdZ1f20a7Cbks5IqzW61hiLmej3oxJCqb7w5zX2siYkKA58ViqEqfzkS+PD+oN1nkkF6/9gNnF/8X4xY0ceuPVe9S+bm63m7KyMlpaWigoKOjsKe9nPwc+n49ly5ZRUFDAsmXLjAULFjRVVVVtrquru9swjHfVjibKQFJhtx8RQozJyMj4lcViOe66666Lvfzyy22xsbGsWLGCuLg4hg0btl99qvd6vaxbt462tjYKCwvJysra8oxJSkmtt5bNj/+NuEf+TXOKlYfPsVMS697y/al6AnmmVPJMaeSb0kiQaSypS+KDGitNAZ3B5kaujvmUacZXuEK1GGjUW/OotA2l3pKLFHv/y76vYbe1OuFmibmCFaZKOkSY/LDGuW0tnOZpR+vq7S23HME79SaOevcpJlev5pnTf8mU2adw0qh0rKY9b3cwGKSsrIyamhqys7MpKCjYr5YwBINBli1bRkZGBoWFhZSUlPDAAw+0vvXWW/5QKPR4c3PzX6WU9QPdTuXgo8JugAkhrDab7dyEhIR5hxxySMrtt9+ePG3aNDRNIxAIsHTpUvLy8sjdj7ai8vl8lJaW4na7GTJkCCmpKVR5qihqLqK4qZiS5hJK69Zw9hvNHLdKsnSo4N+zUkiLSSPfnEaeKY1cUyoOzYaUUNxm4v1qG4sbLZhlkIvsiznb9DmDQyUIJC2mNKpsQ6i2DSakRXf4dk/CrluQCN+bqlliqqBCb8UqBSf6QpzX2sjwsEZz4jFsth9D6MnXsba1cMOxN+BLzWT2pFzOn5RLjitmz9sdDrN582bKy8vJyckhPz9/vwk9wzBYuXIlVquVQw89FCEEXq+XZ599NvTAAw+0eb3eb7oOmP2qv/bjVJTtqbAbQDk5OTdFIpHbL7zwQvt1113nzMnJ2fKa3+9n6dKlDB8+nLS0tAFs5Q8CgQBFJUWsbVhLyBWiOlxNcXNnuHlDnWt5daEzQqZzxQstZGxqp27GaKwzZ2DVt51O7w/DZ/VW3quyUenTONpUzOW2T5gSWY5FBvBpTqpsQ6myDcVr6ttszT2xN2G3tSqtjSWmcr41VRMUEYaGdGa3NXGKx00wlE/NOxJ/XDIPnnE7X9UGkBKOG57KhVPyOHZICpq2h8Ow4TCbNm2ioqKC/Px88vLy9osZnFJKioqKCAQCjB07dpse/9dff829997btHTpUl9NTc1PpJTfDXBzlYOACrsBIoSIycrKKv/Xv/6VdNRRR+FwOLa85vF4+Oabbxg1ahRJA3gadjASZF3rOtY0rGHppqWUtJRQE64haHSuYbNoFnJic8iNyyUvLo+8uDxyKgM4f/1XhMdH8LxTMMYM36bOzV6dD6ptfFprIUPWcbH1U07TvsRlNBMWZmqshVTahtJsztzj53C7I1ph162DEN+aqvnaXE6t5sYuNU7xBjl3bSvyv/GYBiVRc8tveb0+lY9L6mn1h8hx2fnZ5DzOnpCDy7Fnh8GGw2HWr19PbW0tw4YNIz09fb8Y8i4tLaW1tZXDDjtsm2eMVVVVvPPOO9x9992fVFZWThvAJioHCRV2A8ThcFw5Z86ch375y1/GrFy5kkmTJuFwOGhvb2f58uWMHz+efXmunC/ko7SllKKmIkqaSyhqKmJ963oiXXMKbJqNvPi8LaGWG5dLekw6uvbDLzDToi+x3v8vZJyT4GVnIjM7F7iHDFjSaOH9ahtVbQFO0xfzM8tnDJNlSAQNlmyqbEOpteZjiH27QXW0w66bRFKutbLEVM4qUw0hYXDRMjj1wzDxwz3ETcujZvC5vC+O5N1SD8U1biy6xqljMrjw8DzG5iTsUVj5/X5KSkrw+XyMGjWKuLi+nc/XnzZt2kR1dTWTJk3CZDJRVVXFxo0bmTx5MmPHjm0oKioaK6WsHuh2Kgc2FXYDQAgh0tPTS1euXDk4PT2d1tZWVq5cySGHHEJRURETJ07s13VV7cF2SppKKG4upqipiOLmYja1bdpyNE6sJZYcRw5pkTRyYnIYlj+MtLg0NNHL8Fg4guXRl7G8/B6RwbkEL/4pOGNo7NBYVGPlkxoT4yKrmG3+jKliJSYitJtcncOU1iEEdEfP9e4D/RV2W/MRZIWpiiXmck77bzsnrpAsP0FwZFodudJCQ8HpfJ/2U16pTuKLdQ34QwaHZsZx0ZQ8ThuThd2y+xNaWltbWbVqFYmJiQwbNoyBPuWie0lKTk4O5eXlTJ48GbPZzMKFC8Nz5sx5oLGxcd6ANlA54KmwGwBCiEknn3zyu++8886WMcrKykpWrlzJ5MmTieaWX43+RkqaSyhuKt4SblWeqi2vu2wucmNzt/TWcp25mBpNBN1B4vPisTh3Mazm9mK762+YvllN+KjDCJw+nVVuG+9VWuloqeQM/XN+avqKeDwENDtV1iFU2YbSbkraJ8OUu7Ivwq6bRLJRNjL49RVkVgf43QU6sel2zmuuZYannYBrJJWFs3k9PJl3Sj1UNPuJs5k467AcfnZ4LoUpu/cBSEpJeXk5ZWVlDBs2jMyuI5MGyvfff09FRQXTpk3DbrcDnT3RwsLC2tra2tyd7f+qKHtLhd0AyMzMfOull1469eijjwbYMnQ5bNgw1q5du2VIc3d0T/W2X6e7AAAgAElEQVQvai7aEm5FTUU0+Bu2lEmLSSMnNmebocg4yw/DXEF3kLbNbdiT7DjSHbscRhObq7D/6k+I2kY8s07kvfzJrKjycERoCWeZ/scgUU0EnTprPpW2oTRacpC99Q4HyL4Mu26aP0DGS/8jLMPcdWkMmxxeEjAzyxfk3KZqMrDSkH8aS12n8UJVEss2NhM2JEcOTuKiKflMH56KSe/7/8dAIMDq1asxDINRo0YNyIYE3UOX2dnZVFVVMXny5C2zR6+//vr2f/7zn5eHQqGdbZyuKHtFhd0+JoRILiwsLF6/fn2yEAKPx8OyZcu2DF12D2k2pzfzyJpHqPXWku5I58bxN3JK4SkAGNKgwl3RGWjNRZQ0lVDUXERboPNcSg2NDGfGlh5bXlweObE5xJh7nuouDUl7RTshX4iEggRMtl1PYde/Wont9/8gouu8Pv0s3OYWThOfc4RehIak0ZxBtW0oNdZCwtr+u7HxQIQdgLmpnayXv6AjI5H/Xj2Bb0KllHaUA5JJETvnN1VzjNdNh2skm/LO5qWOw3lvnZtGT5D0OBsXTM7l3Ek5pMb2Pbhqa2spLi5myJAhZGdn99/NbWfrZ3Rms5mKigoqKyuZNGkSuq6zYcMGjj766O+qq6vH7ro2RdkzKuz2MZfL9eu77777zuuuu87i9/tZsmQJ48aN22YyysurXmbBygWEthrVMWtmJqVPwh/2U9Jcgi/sAzqn+mfHZpMX+0NvLTs2e4ep/r0J+UK0lrViT7bjSNt1bw4p0Z55C/vC12hKTKR5ipPjnSuJEQHatARq7YOpsg3Frw/8xIi+GKiwA4jZUEP6O8tomTCEyoum0254Weldy0rfWtyGl2SsnOENcE5TFcnCSn3+aXzmPIXnK118X9mGSRPMHJnOhYfnManA1acJLaFQiO+/77zf0aNH9/uzvO2DrltZWRlNTU1MmDABIQRTpkxp/Prrr4+RUhb3a4OUg5YKu31ICKGlpaVVrFu3LtNisfD1118zatQoXC7XNuVOePUEarw1PdYxKGHQlmDLi8sj05mJSdv9xcRSSry1XvzNfhIKEjDH7PqXXn29D8vvHia7qBhzboTCSfV0mKzU2AZRZx9Ciyltv3gOtzsGMuwAEpaV4lpcQs3ph9M4YxzQ2XMv7Shnha+YDYFKNARHRuyc31jJET4PPtehlGafxTPeSSxa78EbiDAk1clFU/KYNS6LWNuu/y6rqqooLS1l9OjR/ba8pbeg67Z27Vp8Ph9jx47lrbfeklddddXTNTU1l/RLY5SDngq7fUjX9ZMuuuii5x977LGExYsXM3To0B4XjI9+avSWmZHbe+LEHc683G1G2KC1rBXdqhOXE4fYyYLmiCEpKW1A++xNJrz3OaLVIHmMh/aRKbQ6BlFvzcMQ+8fOHd0kgGYB3YzUTKCZQHT+W2qmbQJZ2pMR/q69OaWBMMLQ9c+WP0cCiP7a1lFKUt9fjmN9NZuvPBn3yLxtXm4Jt7PCV8J3vlK8hp90bJzl6eCspkoSNCt1eafxgXUmz5S7KGv0EmPROWN8Fj87PI/h6TvvXfv9fpYvX05aWhqDBw+O6rq8XQVd561L1qxZg6ZpDBs2jLy8vIaqqqoCKaW3x29QlL2gwm4fysrKWvz+++8f7vP5yMjI6HULsN56dkm2JO4/9v69akPQE6R1YyuxWbHYXfZey7ndHdQu/h/ZGz9ibN0aar+MJ2LodEzNoHHYSIJa79+7r0ihI80OMNmRJhuYbMiu4VthBCES2ja0jDDIMGKrA7YjCYPQWzcAonPyTHc4dgejZgLd2rUPp0SEOyDcgQh3IMI+CPkQvR193kciFCbz1S8xtfvYcOuZBNITdygTlhFKOjax0lvMpmANOhpTI3bOb6xgos+D13Uoa9LP4In2w/h4o59QRDIxP5ELp+Qz89B0LKaeJ7QYhkFxcTFut5vx48dvs4H3nupL0HWTUvLNN9+QkpLC008/7bvvvvtu9Xg8/9jrRijKdlTY7SNCiPwxY8Yse+aZZ5LNZjPDhw/vtexbG97iV1/8apuvmYWZi4ZdxJF5R+5xG3wNPrx1XhIHJ/Y4CUUaBs1FqzF/9z4T2r8gXvio2JCEe7mVSJydmlMPJ+TavSN0okUiwByDNDuRFmdnyEkDEfIgQn4I+xGRDogE2Z3+ye4MY0pEZ6B2B6vJgTTH/NCOoBsR9HT2BHfz/nS3n6yX/kckxsr6OWdhxPT+zLUh1MJKXwnf+dbRIQPkEMPZHh9nNFXg1GzU5JzKm6YTeGpTInXuIEkOC+dNyuW8yblkJfT8IaWmpoa1a9cyfvz4vVqIvjtB1y0SibB48WISExOZPn16WV1d3WC1Z6YSbSrs9pG0tLS/3HHHHdceddRRYty4cTsdMlpas5TLF12O0+zEE/KQZEvi9NzTGeoZimuIq0+zJbcmpaS9vJ1IMEJCYQLadtPWZVMV/iWLGFTxEdmyFp+0ssIyGq1IJ3F5Ob68VOpnHoZh3bcLk6VmQdoSkLZEpMmGCHq3hEo0elQQnWd2UuhIixPMTqQlFmmydgZfRwsi0LZNT3JnrNVNZP77KzxDstj0i1NgF8sLQkaYoo4yVniLqQzVY0ZnRsTO+Q2bGeP34k08hOXJs3isZTxfVgYRAqaPSOPCw/M4anDyDvtxut1uli9fztChQ/doTd6eBF23QCDA4sWLuf/++1vffffdk6WUi3e7AYqyEyrs9gEhhDUzM7PqueeeSzrmmGN2uVHvnV/cyaLNi3ho6kNY9B+GlULeEC1lLbsVeEbYoGV9C5ZYC85M55aQ1QMexKpPcaxZxFB/EYYUrNCGsy5pHHpyJgXPfoJzfQ2t4wfRfMQhsIcbFe8OCWBxYtiSkNZ4hBHuCoyWzqHDfrhmf0xQkQiwxGLYErruI4IItCL8TYhIYKffG7umnJSPvqVx6mhqzux7L7421MQKbzGr/OsJyhCDhJOz3R5mNVZg021UZp3Cq8zgqc2JtHdEyEuK4cLD8zjrsGwSYrb6GQuFWL58OYmJiQwdOrTPz/H2Jui6eTweFi5cyIIFC96rqqo6eY8qUZReqLDbB+x2+0Vnn332E4899phute58SYAv5OO4l4/jsLTDuHTkpTu8vjuBFwlEaF7XjDPT2fl8zojgLP8GfeUH5NUtxkqIDUYGX8VMxpMzAldKDPaqRvIefQ+T20fjtLF4hvf/eiypW5ExKRg2FyLs6wyF3egR7Y19MRtzSw/VngxCIHwNnffYy6SXpP+tJv7bMirPn0rLlBG7da2AEWS1fwPLfcXUhZqwYeLEiJ0L6jcxosOLJ2EEixNP4+9N41lZH8Fq0jhtTCYXTclnVHbn8hfDMFi1ahWGYTBmzJhdfjiLRtB1q62t5eijj/auX7++QErZsOvvUJS+UWG3D+Tl5W1+5513ckeOHLnLsm+Xvc3tn9/O3IlzGeYa1mOZvgRed5mE/ATiAxU41nxA8rqPiQ230iydLBKHsyllLKl5iTitnaESt3IDOc98jGE1UXvKJIJp/Xe0jhQ60p6MEZOMkEZnAHQ075OA29q+XnogdQvSnoJhT+qc5OKr7+z1bV3IMEh/Ywm26iY23nAavsKM3b+OlFSHGljuLWaNfwNhIgwXcZzT3s6pTRVYNCubMk7mhcg0nq1MoiMkGZMdz4VT8jl1dAZWk8aGDRtoaGhgwoQJvYZYNIOu29133x35+9//vqC2tvbOqFSoKKiw63dCiLHHHHPMZ5999lmfnvpftegqSltLWXD0gt43XuaHMBuifUveyiexeBoIOlOonHw5NelH0VG6icFyJXFrP8Tl3kRQ6nxkjGdJzCT0vFyGJAd/GJk0JKnvLSPt/eV0ZCRSd/JEIo7+2VJK6lYMRzrSmoDmb+gMOWPgtkQcqHV2EsDswIhJRVpi0Xz1ncHXFfZaR5DMlz9HCxusn3PmXk0M8hsBvvetY4WvmMZwKw5h4aSwnfPryhgS8OJOGMFnsafw54axlLZqxNvNnDsxhwsm52LqaKWsrIxJkyax/ahEfwQddD47HD58eHN1dXWqlP215kM52Kiw62f5+flvPPbYY6cdf/zxuyxb563jhNdO4JSCU/jpkJ/usnz8qg8oXPwwpq7z5QCCmGg0Z5AeqkRDssIYzFscSV3qIYzKMUiKCW9Th9YRJPvpj4hftYn2Q3JpnDoKTLu/y/6uSLMTw5mJ1M1onlpER1O/PIPbXQO9qBy6ermONIyYFERHC5qnBmGEMDe7yXr5cwKpCWy4aRbSsneBIqWkPFjLcl8xJf6NRDAYJRI4t62Nk5o2o+s21qfN5KnAcbxUk0LEgGOHpvCT4fEkBWtoiMnj4Y83Ut3qJzXWzBmDTNx85tH9sgvLZZdd1vbUU09dEIlE3ol65cpBSYVdPxJCxOfl5a0vKytL7svp0QtXL+TB5Q8y/6j5pDl2fTr56GfPx+qp3+HrYanx98hpfG2fRE6OndGpXsz6jn/PloY28h59D2tdK03HHEr76IKo74AiLbEYcbkQCaF5qzun5u9H9oew6yYRSHsShjMDEfKhuSuIWV9B+ltLaBs3iIpLj4/a34834uc7XykrfCW0RNqJEzZODds4v3Y9eUEfbXHD+MhxMn+qG0u5z8y51q+4gRfJoJFqmcx94XNYpB/DgjNGM2tcVlTatLWioiJOOOGE5ZWVlROiXrlyUNq/tr44wMTHx19x3XXXOfsSdFJK3lj/BoMSBvUp6AAsnp6f32sYPKadwa8nbQZ6DhdHSSW5TyxCSEnNrMPpyEnp0zX7SppiMOJzQRporWWIsD+q9R+IBBLhb0T4G5G2RCKuYXjGZNDc4iXpi9V0ZCXRcOJhUbmWQ7dzROwYpjhHUxaoYrmvmBflZp7PSuYwkcS5bc2cVvMQp+s2nssu5BlbKyeZ7KSHM7mxpZUFnschBPd/YO2XsDvkkENIS0vLFUIUSinLon4B5aCjwq6fCCFEWlra9ZdffnmfHn6VNJewoW0DFx5yYZ+vEXSm9Nizq5bJuIO9DEVKSdJnq8j4z1eEEp3UnjqJcHz0Dk+VurWzJ6eZ0NorEKH9qyf3YyCgc8lFRwvSnkzTCadjaQmQ/vZSOjJcuEcXRO9aQjDIls0gWzbtES/f+tay0lfCbXESV8JwDg3DUtoJdO2/WmM28btkF9DMbe6XObr1qKi1ZXvz5s1Luu66624Frum3iygHjf3rcLEDy9SpU6c6ExN33PqpJ29ueBOTZmJi2sQ+X6By8uWE2DbUfNLCfeFzSLCFdygvQhGynvuEzNe+xJefRtXZR0ct6KTQiMTlEnENRfjq0ZuKVdDtJQFo/kb0xtXUn3Q0HVmZ5Dz1Edaqpn65Xpzu4JjY8VyfOptzXCfgMifxueYjsN3IRIem8XBiApmiicxedmSJhlmzZmkmk+lMIcS+P4BPOeCosOsnmZmZv77ttttcuy4JISPEuxvfZUzKGJyWvp9GXZs8mTAW/NKMIQWVRjLzQj/nPY5kZkHrNmVNbV4K//wGriVraZk0lLpTJiIt0enYG9YEIskjEZEgesMqtK5z9ZToEEhEsJHak8YgLRbyH12E7u6/Gaya0Bhmy+O8pJm9lqk16dSQxE3TB/VbO8xmMxdffLHDZrPN7reLKAcNNYzZD4QQmYcccsjI8ePH96n84urFNHc0c8GIC/p8jZA3RMzKj7Hj55LQbSw3jcQd1EmwhTmroIlJiQ5ilq4k/e2vMLd4QAikgLqTJ+AdvPtbQfVEamaM+HwQorMnN4BLCA4GRoyZupPHk/Hal+T96yM2X30mEauX/pzWGq/F0ma4d/h6WjjCisKrSOsoJxzO2nLqeLRde+21joULF84FnuyXCygHDdWz6wfJycm/nDNnTt/GL+kcwoy1xDIqeVSfyocDYVrKWihs/YhKUqmIHcKvj97MfdPL+NWR5YzLbMOx6kuyX/wES4un8xmQlJ0z+SLRWbRt2JOJJB2C8DeiN5eqoNtHAumJNE4bg2PDRtJf/xhzIB1h9M+epVo4hhn26Zi3+0xsMwzSG8exPPEU8vPz+eabbzCM/tkMICsri5EjRyYLIfr2yVFReqHCLsqEEGaTyXTh7Nmz+/RRtz3YziflnzApfVKfDmE1wgYt61rIjG8hvn4NT4VmcHhOD5+83/4SLbRtAGkRA9dXe3cQtBQakcTBSFsCeuMqtI6WvapP2X2eETm0jh+E68sVxC77FFMwCS3kJAr7Ym+hhWPQw7EcEpfKKQlHE693Dq9rCH7d2MwMWx6vLq8kKS2DxMREVq1aRX8tY7r99tuTMzIyfrXrkorSOxV2UWYymU4/++yzY2y2vj1TX7RpEUEjyBGZR+yyrDQkLetbcGY6ydr0HgHMvKsfxaEpO551aW7peXKIyb3nSwCk2dH5bK6jFb1l/T7f2kv5QfMRh+DLSyXz1U8xV6xEk2ZMwRSQe/+W7g66kLUehGRUzGBuSDuPsxNnYCAR9nRmBd/GGwjyxrfVDB06FMMw2LBhQxTubEfHHXccVqv1GCFE/+1fpxzwVNhFWUpKyp033nhjnw8Ee3PDm2Q6MsmPy99l2fbydixxFpyOCK61H/JG+AiGZxr0dC5nKKHnWZbh2N2fPScBw5lJJL4AvXktWvfJ3srA0QT1Mw8jFO8g71/vI9ybMXQP5o40RGTnm43vtNrtgm5rQ215JOpxPBMfS7yvnHPiS3hm8WYAxowZQ11dHXV1dXt1Wz0RQnD99dfHxcfHXxX1ypWDhgq7KBJCjMjPz88aNKhvM9Qq2itYWb+SKZlTdnmUiq/ehxE2cGY4SSr9L6ZIB88axzM5q73H8t5BO24ebJjNNB/Zt+eC3aTQMFxDkZoFvXHNLo+oUfYdw2qm7tRJiHCEvEffg0g7IWs9plACWmj399LcWdBB5yzNiY5DKTZaWOlM5irrIopq2llR3oqmaUyYMIGioiI8nugvObnsssusNpvtWiF2smGsouyE+sGJovT09Lm33357Ul/Lv132NgLBlIwpOy0X9ATxNniJL4hHACmr3+A7OQgjKZUEWw/75EpJTHkDwQQHoVg7EgjF2mk4fgJtR56I1Pv2yV9qls5JKB0t6O2bonJYqhJdoUQn9TMPw1bTQvbTHwFhQtY6NMOCKejq83O8XQVdt7ExQ7EKCwtTcihsX8ooSw3Pft3Zu7NarYwfP57ly5cTCkV3wlJCQgLTp093AtOiWrFy0FBhFyVCCIfJZDr55JNP7tNEcCklb254k+Gu4bjsvS/HM8IGrRtbSRyUiKZrxFWtIKatkidDJzAlu+denaO0CmtDG62ThlJx6fFsvOE0Ki49Hu/gFPTW9URcw3cZeNLsIJI0Ar19M5pPHSu2P/PnpdJ81CHEf7+R1Pe/AQFhSxNShDEHUkHu/Eeyr0EHYNUsjIsZxmc0U222cWvCp7z9fTVNns4ef3x8PIWFhXz33XdRn7AyZ86cxMzMzF9HtVLloKHCLkpiY2MvvvLKKx263rcTA75t+JZKT+VOJ6ZIKWnZ0EJsVuyWc+tSV79JK7EstY5jUGLPk01cXxYRsVl6XE8nQt5dBp5hcxFJGITeXIII7jjTU9n/tI0txD0ih7T3viFu5QYQEDG3EzG5MQfSwOh5pu/uBF23iY5DkcCT6UM40rOImIibl7+p3PJ6Tk4Ouq6zefPmaNzaFmPHjiUxMfEQIUT/nyisHHBU2EWBEEI4HI5brrrqqpi+fs+bG97Eqls5LK33jX29tV5MNlPnKeOAxV1H/KbFPB8+jvHZHT+cR7cV3e0j7vuNuIdnI3s5qmdngWfEpCId6er53I+NEDQcN5qOjERynvkYW2XnJCLD5CdsacIcSNlhPd6eBB1AgimW4bZ83jT7CcogNyZ+xXNfbyZi/FDH6NGj2bx5M21t0d1N57bbbktMSUm5KaqVKgcFFXbRcfikSZPiU1NT+1Q4EAnw/sb3GZ82Hpup5yUKIW8If7OfuJwfJnamFL8DSF42juOwjJ57XIlfr0WLGLhH5u20DT0FnuFIR9qT0JpKEOrMzB8fk07dyRMxrGbyHn0P3e0DQGohwtYGTIHkLYG3p0HX7XDnKLwyyMupgzgr8h41rR4+K/1hU3Jd1xk/fjzffvstkUj0fpbOOeccXdf1C4QQlqhVqhwUVNhFQWZm5q/nzp3b54kpn1Z8iifk6XUIUxqy8zldYSKiq/smIkGSi97lE2MsKel2Ysw9rHEzJK4v1+DPSurTydZbB14kNgdpje8MOtT6uR+riMNG7akTMbl95P1rESLcGTRSCxPqCjw9GLdXQQeQbUkjy5zKCw4LzmAdZ9hXblmG0C02NpacnByKior2+r662Ww2zj333Biz2bzr040VZSsq7PaSECLF4XBMnDJl5zMqt/bmhjdJtCYywjWix9fby9uJSYnBZP/hOUti2edYOlp5KnwCU7J6HhpyllZibXLTvote3TbtD3kRwXakIwPRpmZcHgiCqQk0TB+LY0MNma98Dt0TRbQwEZMbPRxP2NS2x0HXbbJzJNXSw8cJ6VxjW8Snaxsob/JtU6agoACPx0N9/Y5HUe2pG2+8MTY5OfmOqFWoHBRU2O0ll8t13U033RS3q3Vy3Zr8TXxZ9SWHZx6O1sOSoUB7gHBHmJjUbR//pa5+gwrS2OwYQnZcsOe2fLGGiN3S4xq73hjOLNB0tKY1GH2Ypan8OHiHZdMyYQiur4oZMW8hI6//B8N+8ywJyzYQtNVgCiUgIns3EjjCVkC87uRJVwoF/tWM0sp4bum2vTshBOPGjWPNmjVRW45QUFDAoEGDMoQQh0alQuWgoMJuLwghdLPZfMWFF17Y598a7218j4iM9DiEKQ1J++b2zvV0W4WnvXE9sXVFPBk6vsd9MKHzCJ+4VZtwj8iBXiambM+ISUFaYtFa1qP1YZam8uMSdDmRAky+AAKwtLjJePVN4pcXdQ5pBpMQvczS7AtNaExwHMJ3so01Nie3xH/CS8sq6Aht+4zOZrNRWFhIcfHe7cu6tXnz5iWlp6ff3tfyQognhBD1QojVvbx+gRDi+65/vhJCjIlaY5X9ggq7vaBp2kmnnnpqjNPZ9zPo3tzwJvlx+WQ5s3Z4zV3pxp5ix2Td9hdQ2uo3CGDhHe0oRqfuuA8mQOLXJQhD9nkI07AmYMSkorWUbjkhpi/LEpQfD9fikh1GKrVQmPS3loAWIWxtxBTYu/00x8cMxyLMLEzL56iOzzD7Gnh3Vc0O5XJzc/F4PDQ1Refg2ZkzZwqz2XyCEKKvW8U8CfR+QB9sBI6VUo4Gfg88updNVPYzKuz2Qlpa2m9uueWW+L6WX9eyjuLmYqZk7vh8L+QLEfQEcaRtu6elHnDjWvcR/4kcwbCMCGa9h+cshoHryyJ8OcmEE3YdvNLsxIjLRW9eu8NmzirwDhy9bfrdvUm41EKELc19WnjeG5tmZUzMED7SPLRoBlc7Pt1hogp0DmeOGTOG1atXR+U4IF3Xufrqq52xsbGX9KW8lPJ/QPNOXv9KStl9hMfXgFrLd4BRYbeHhBCDMjMzC0aM6HmSSU/eKnsLXehMTp+8zdellLRtbiMuL26HPTKTSz5AjwR5Onw8h/eyD6azuAJLiwf3yPxdtkHqtq4F42sRRrjHMirwDgzhuJ43A996k3CpB4iY2jEHUvb4iKBJjpFEMHg6bQjniv+ypqKB1VU7TqJyOBykp6dTVla2ZxfazpVXXmmPiYm5SfT1gXnfXQ68F+U6lQGmwm4PpaWl3Tp37tze9/naTsSI8PaGtxmVPIo467aHIvib/JhsJiyO7R79SYOUNW/yLUMwXKkkxfQcTq4viwjHWPEWpu+0DVJoRFxD0FvX73LBuAq8HzfDnkTj8dMxtnt+KwFp0hGBHyaLGCYfht6BHurzecPbcJniGWLL4zWbgSnSyizzki37ZW5v8ODBVFZW4vfv+VFT3ZKTk5kyZUo8cOReV9ZFCHEcnWE3N1p1KvsHFXZ7QAhh13X9jFmzZvX5/9+S2iU0+Bt2mJhiRAw8NZ5tFo93i6tcjr29mieCJ3B4L/tgmlo9xK3Z3DkxRe+9ORIwEgaheWsRoZ6f+21PBd6Pk2FPwnCk48vWaJg+ZpvNwNvGFGBpcpO7cBFstdg7YmpHSB0t3OdNgLYx2TGSdhngdVcW19j/y+srK2nz7zj7Utd1RowYEbW1d3PnznVFa79MIcRo4HHgdClldB4uKvsNFXZ7wG63z7744osdZrN514W7vLXhLRwmB2NStp3k5a3x4khxoPVwKF3q6jdpFbF8bRnH8CTfDq9D1yQEQ+5yxxTpSAcjstubOqvA+3HpDjq9qRghDbzDsrfZDLz52FE0Th1F3Jpysp//7Ic1eF2bR+vhuB22FeuLPEsG6eYkno2PJS+4jpGRYl5bXtlj2bS0NILBIK2trXtzqwBMnjwZp9M5XgiRtjf1CCFygX8DF0opS/e6Ycp+R4XdHoiPj5977bXX/j977x0eR3Xv/7/OzDateu+2XHC3ccXGNNNrMCWEACGh3hBuQmjfAPne5He/ucnF3IRACgmXAAkJDh1iG2NTjE2zwR0b9ybZ6l1abZ+Z8/tjJdmydiWtdo1V5vU8fh5r5uxnzkq7857POZ8SfkMkDO6gmw/KPmBO3hys6tEbiR7Q8TX5uuXUQagOZlrZF7wYPI9Zhd6wdTDRDTLW7sQzIhstNfJ0pC0ZIyELpeVQX6fcBVPwBgfHC10kXFNLaJw7nvT1e8hd+sXRE0Ki2RqwBDKjDlgRQnBa4hTKpJtPk9K4J/ED/vF5WcTOB5MmTWLHjh0xd0YQQvDAAw+kZmZm/rCXcS8B64DxQohyIcTtQoi7hBB3tQ/5OZAJ/EkIsVUIsTGmiZkMOEyxixIhxKypU6dmFhZ2Tx2IxAdlH+DTfd2WMF3lLpIKkzpLgh1Lzs5lSCQv6+cxpyB8bl3yzsNYm8eJrqMAACAASURBVN20Ti2JeG2pWNBTR6M27Y2pOoopeAObvgpdB82njaNlagk5H2wh88MvO49LJYhuaW0XvOjmMCVhDEmKk79lFXKm9jmB+lI+2x9+NTA1NRWn0xmxs/ltt91GTk4OU6ZMCXteSsk999zD2LFj+f3vf2+VUt4lhIiYYCqlvEFKmS+ltEopi6SUz0kpn5ZSPt1+/g4pZbqUcnr7v9nRvXuTgY4pdlGSn5//04cffjgrmtcsPbCUHGcOY9KOdjDXfBqaT8OR3r0QtNACZO58hw+NmWTnOkiyhS+km/HZDrREB56SyCs4RupoFNdhhB6+6ko0mII3MIlW6AAQgoZzptI2Jp+Ct9aStuHoyp1h8QASRY9u/04VKrMTJ7JeuDhos3CHYxX/+Lw04vjx48ezZ8+esN7dLbfcwsqVKyO+dsWKFezbt499+/bx7LPPoihKuqIol0c1YZNhhSl2USCESHc4HGede+65fX5NVVsVG6o3MD9/fpe0AleFi6SCpG6pBgAZBz/C5m/lrz3UwbQ2ukjeeQTXpBERA1MMRyZgoPiawp7vD6bgDSz6JXQdKIK6i2fiLcqi6MUPSdp1uPOUZmtEDaaC0bdqPB3Mck7CgsrzOaO4XvmQT3eWUdUSPvLS6XSSnp5OVVX3JPSzzz6bjIzIwc5Llizhu9/9LkII5s2bR1JSkpqVlfWLqCZrMqwwxS4KUlNT/+2ee+7pcx1MgOWHliORzCuY13lM82rofh17anixyPlqCWUin0MJpzAyNXyKQPq6XSAlrskjwp6XihUjpQiluX/7dD1hCt7AICaha0daVKovn0MgI5kRz75LQmn7sqKQaLYmLMGMqJYznaqDqc5TWGkN4MfDVcqnvPTF4YjjTznlFPbt2xf13l1FRQXFxcWdP48ePZrMzMyRQoixURkyGTaYYtdHhBCKw+H491tvvbXPd3cpJUv3L2Vc+jhynEd73bkqXSQXJof16px1e0mq3c1fAxcyr7iVsLqqG2Ss3YW3JBctpftSUyjNYDRKS9kJ60tnCt7JJR5C14G0W6leOA/DYaPk6Xew1YRWAqTqA6Gj6H2OxQJCaQhBdBZnj+Aux/u89MVhAlr4OSYkJJCRkRHWu+txzmHE8dZbb03Jzc39SVSGTIYNptj1nfMuuOCCpNTUPlcHY0fDDg61HuoSmKL7dTSfhi0lfO3onK+W4BN23hZnMjOvLeyYlK/KsLZ6ItbBlAmZYGgo/thDu3vCFLyTQzyFrgM90UHVVfPAkIx66m0sLaFcTM3ahBpMiWo5M9uazhh7Ea86reTqR5jg3ch7O6sjjh8zZgwHDhyIyrsrKiriyJEjnT+Xl5fz7W9/W7FYLAuFEAl9NmQybDDFro8UFBT8/MEHH4yqxMTSA0uxKlZm5x4N7GqrbiMpP/xeneprIWP/at7UzmB8noYtXB1MQq18tCQHnpLundGlUDCSi1BawlewiDem4H29nAih60BLS6J64VwsbT5KnnobxeMHIdFtzViCaVHZmps4hSb8LE/N5vv298LWy+zA6XSSmJhIfX19n+1feeWV/P3vf0dKyeeff05qairFxcXceuutiQkJCTdFNVmTYYEpdn1ACFGUkZExYfr06X1+TVAP8s6hd5iRMwOnNbTUaGgGgdZA2AhMgOzOOpgXcXqEiinW+laS9rQHpijd/3xGUiGKuwYhw5cWOxGYgvf1cCKFroNATho1l8/BUdNEyTMrEAENQ/GCVKPqfzfaXkS2JZ0XMjI4Q26mtnQHe2vCp9BAqIzY/v37O3++4YYbOP3009mzZw9FRUU899xzPP300zz99NMAXHbZZYwePZqxY8dy55138qc//QmAu+++OzE1NdVcyjTpRv+bWQ0jsrOz7/vJT37S5zqYAJ9UfEKLv6XLEqanzoMz2xnWq+uog7mFcWhpWeQkht/DyFi7ExC0Tu6+hClVO9KRhlK3PZqpxoVjBU9t3N1r7U2T6Pg6hK4D74hsai+aSc7KTRS/8D6Hb78Y3daIJZBJUKmBPsRndSSZL2/5hPUJTm7V3+XFz+fxi4Xh8+ZSUlKQUuJyuUhOTuall17q1f5TTz3V7Xh+fj7Tp09PF0LMkVJu6NMbNhkWmJ5dLwghbBaL5cZvfetbUcVgLzuwjBRbCpMzQ82UpZR46j0kZIXfTkg9shGHq5rnA5G9OnSd9M934ynJRU/ubsdIHYnSergv96ITgunhnRi+TqHrwD2ukIZzppC6rZSCVz9BiiCGEogYrLJ1wy7uve1X3HPLf/Gvl98HYKpzLE7FwV+zi/mW+jH/+mQr02fPZdq0abzzzjvdbIwaNYrS0tKY5/7www9n5efn/9+YDZkMKUyx6wWr1Xr19ddfn2i39/3m3eJvYU35Gublz0NVQhrpb/ZjT7aHrYEJocCUJpHCZ9aZTMoKX6g5ZVspVpeX1qlhvDpbCiBQ/OHz8r4uTMGLLydD6DpoPXU0TbNPIfOzneS8swHd2hIKVjmulJihGzz/x9d45Fff57d/eYTP1mymvKwaq7Aw0zmRtaqXWovGdfa1PPjHV3n55Ze5++67u10vLy+P+vp6gsHuBaSj4eyzz8bhcJwhhMiMyZDJkMIUu17Iysr6jx//+Md97YYMwMpDK9EMrcsSprvWHbYGJoCttYrUw+v5R/B8ZhV4IjYvyPhsB8HkBLwjugamSEBPKUZp/XqCUnrDFLz4cDKFroOm0yfQOmkEuSs3kfHJNgxLG6rW9euwf08ZuQXZ5OZnYbFamH/OTDasDS2lz0mchILCHxIyuU1dyeK1B2lubqagoKDbtYQQFBYWUlFREdOchRDce++9Kenp6Xf1PtpkuGCKXQ8IISaPHTs2r6SkJKrXLT2wlKKkIoqTQ0mvekBH6hKrM3w1+ZwdyzAQvKSfx2kRGrTa6lpI3lOBa/JIjq8KLW0pCD2A0HxRzfNEYgpebAwEoQNACOrPm4Z7VB4Fr39C4vYvUbTELt5dY30LmdlHozUzs9NoagitMCSpTiYnjGF1ppNkSyPF9R9x5e338Yc//CHs5UaMGNElpaC/3HLLLTabzfYDIYR5jzMBTLHrkfz8/EcefvjhqJZCSltK2Va/jfkFR8uD9bRXJzQ/WbtXsErOIivbTqo9Qh3MtTuRQoSiMI9DJhehuMK3UzmZmILXPwaM0HWgKNReMhNfXgbFf38fx6GdqFpS52kZrsTKMc9jc5Om4hc6/0jM4Hbru1x09y+5+eabMYzu783hcGCz2WhtjbBv3UdSUlK4+OKLE4ELYzJkMmQwxS4CQohki8Vy0SWXXBJVvMeyg8tQUJibPxcIBab4GnwkZIQXu4z9a7D6Xfw1GLkOpgjqpK/bjWd0LnpS17QFaUsGqSO02Ds/nwhMwYuOASd07UirhZpvnIaWlkjx82+QUObqLCOWmZVGQ93RAgYNdc2kZxwtvpBnzSR4MMDrGWnMEjtpqd6PV1oj5tUVFxfHxbt74IEH0goKCn4esyGTIYEpdhFITk6+5Qc/+EGSEiaXLRKGNFh2YBkTMyeS7gjlnwc9QSwJloiBKbk7llAqCjjgGMuY9PDLkCnbDmJx+2idUtL9mslFKK7YbwwnElPw+sZAFboODIeNqivnYdgsFD/3AvaaUC7nmPEjqK6oo7aqAS2osfajzcw+vWuKgX2nSr0S5N2kFL4rVhIsnkN2dnbY6+Tm5lJbWxtzr7tp06aRlZU1TgjRc2djk2GBKXZhEEKIxMTE+++8886oyg5tqtlElbuqS2CKt8GLIyN8EnlizW4S6/byXHu6QaT60hmf7iSY4sQ7ouvNQVqcICUiGL6L+UDCFLyeGehC14GenED1wnkITaPk6TewtHhQVZXbfngt//3TP3P/Hf/N6WfPoLgkn1dfeIeN60KBKt+9eCGy0eD3VidXqZ8w7vTzMSJomaqqpKWl0djYGPN8H3roofTs7Oz7YzZkMugxxS48Z8yfPz8lKyuqtnUsO7AMh+pgZs5MILSE6W/x40gLL3Y5O5bgEw7eZj4z88PXwbTVNJG0vzJUB/M4NTQS8xDuyDUHBxqm4IVnsAhdB8GMZKq/cRqWllZK/vwOijfAjNMm8+Rf/4Pfv/BzrrnxIgC+9b3LmH36VACKR+Zz6agzqUyzscuhcqn2IR/uro14jXhEZQJce+21qsVi+bYQwvzADXNMsQtDYWHhz6KtmOLVvLxb+i6zcmdht4S+V0F3EKvTGrYTucXbQvr+NbyhncG4XJ0ES/ibXMZnu5CKoG1ScZfjUihIWzLiBBd7jjem4HVlsAldB/78DGqumI+jqp6Rz65EBHvvrnFqwjgcws5fs4r5nvV9/rl2f8SxWVlZ1NfXx7yUabfbufHGG512u/2bMRkyGfSYYnccQojcpKSkmaeddlpUr1t9eDUezdNlCdPX5ItYBzNr90pUI8jftIsjVkwRQY30L3bjHp2P7jwuMCUhC8Vbf9KqpcSCKXghBqvQdeAdkUb1VZeTtLeCon+sIuK6ZDs2xcqMxPGstgXRLK0kH3yH0vrwBRQURSEtLY2mptgbD//oRz9KysjI+GnMhkwGNabYHUdmZuYPH3jggbRoGrRCKLcu05HJ+Izxncf8Lf7wDVoNnewdS9nMBAIpmRQkB8LaTN16EIvHH7ZiiuHMQXgiLwMNdIa74A12oevAPS6X+vNPJ23LAfLf+BR68cTmJE5GIHghI4/bLCtY/EXkQgh5eXlUV8e+TD9y5EjGjRuXI4SYFrMxk0GLKXbHIIRQLRbL7TfddFNUBbLrPHWsq1rHvIJ5KO05rJpPQ7EoKGHKoaQe2YCjrYZne6qDCWR8tpNAWiK+oq57h9KaGEoiN2Irq3SyGa6CN1SEDkB4Gmg89wKaZ4wh6+OvyH5vc4/jU9UkJiaM5l+JNk5RD7Jrw4f4IiyB5uTkUFdXF5d5PvLII1l5eXmPxMWYyaDEFLtjsFgsV1x11VVOpzN8Wa9IvHPoHQxpMD//6BJmj4EpXy2hUUnjM3UG03LCB6bYqxpJPFAVqphyfGCKM3tQe3XHMtwEbygJHYDAQPhd1J9/Oq7xReS9vZ70tTt7fM3cxCl40Hk9JZ1v6W+z7MvKsOMsFgtWqxWvN/Yc0gsvvBCbzXa+ECIlZmMmgxJT7I4hOzv7Z/fdd1/fW5G3s/TAUkanjiY/Kb/zmL/Fjy21e/8ve0sFaUc28IL/PGYWeIiQfkfGZzsxVAXXxOMCUwBpT0Wc5ILP8WS4CN5QE7oOhLcemZBF3QXT8YzMofDlj0nefiji+EJbDsW2XBanp3Oxup7ln22KODY7Ozsu3p2iKNx9993JKSkpt8dszGRQYopdO0KIU4qKikaOHz++98HHsKdxD3ub9nJ6wemdx6SUaH4Ni6P7amjOjmXoqLykn8fcCHUwRUAjff0ePGPyMZzH3fytSYigGxGuRNMgZqgL3lAVOgARaEXak5GqQs2ls/HnpDLi+fdxHgjfkxHgtMQpVIkgnzjtzK57ky+PhI8qjpfYAdxxxx2OhISEH4toN+RNhgSm2LWTm5v7k4cffjiqdAMIeXWqUDkt72j0ZmfKwXHfKSXoI2v3Cj5gNplZdjISwncTT92yH9UbCOXWHYeRkInwNkQ7zUHBUBW8oSx0ECqDKQJtYEtG2ixUXzkXLTmBkv99B3tl+M/qBEcJaWoyf8vM5yb1Q15euzfsuNTUVFpbW2NOQQDIzMzkrLPOSgbOjtmYyaDDFDtACOFUVXXhlVdeGdXvQzM0lh9czrTsaSTbjrY9CbgC2JO736wz9q/GEnDznP8iTo/g1UGoYkogPQlfYdca1KElzDSEb3Dl1kXDUBO8oS50HQhvA0ZC6PNqJNipXjgPqSiMeuptrI2ubuMVoTAncRJfWoJU2X0oX71Gk7t7VLIQAqfTiccTnypBP/nJTzIKCgp+FhdjJoMKU+wAp9N502233ea0WKIKwmRd5ToafA1dcusgJHa25OP266Qk56sllCqF7LePYVxm+C+vvbKBxNIaXGEqpmB1IjTPkFvCPJ6hInjDRegAhL8FaU/t/GRqKU6qFs5D8Qcpeept1LbuQSbTnROwCSvPZ+TzHbGC1zeGr/GakZFBQ0N8VjPmzJlDSkrKqUKI/N5HmwwlTLEDUlJS/s/dd9+dGO3rlh1YRpI1iWnZR9N3pJRoPg3VoXYZm1izi8SG/Tzrv4h5Ra7jW9J1kvlp+MAUGPpe3bEMdsEbTkIHIJChzhuWo+Vkg1kp1FxxGraGVkqefgfh75oq41BsTHeO54MEQaa1kq/WLscIk5iemZkZlzqZHTz44INpWVlZ98TNoMmgYNiLnRBizvTp0zPy86N70HMFXKw6soo5eXOwKkebsuoBHdWudtuvy9mxFK9wsEyewZz8CIEp/iBpG/bgHluA4egeySntqYjA0InC7I3BKnjDTeg6EP5WpK1rZL+vMJPaS2aRcLiOkc+/C3rXnLrTEidjIPlHagaXe/7FJ/u7t/1JTU2luTl+D3k33HCDRVXVW4QQ0S3lmAxqhr3YFRQU/Ee0DVoB3i97n4Ae6LaEGXQHsSZ27Uhu8TaRcWANb+hnMTZHJ9EW/gaYtnk/qi8YtmKKBKRiQ+jhq60MVQab4A1XoYN2sbN3T2PzjMmn/txpJO88QtHiNV3KiqVbUhjnKOGNlCTOsGxh5cdru71eVUMPj7ree/3NvuB0OrnmmmucFotlYVwMmgwKhrXYCSEyHQ7H6WefHX1w1rIDy8hLzGN06ugux4PuILbErl5Z9q4VKIYWatBaFNkzy/h0B4GMZPz5YYJCrUmIYPgE9KHOYBG84Sx0AGgepNUZdkfZNWUkjfMmkL5hL3lL13U5Ny9xCi6h83ZSIqeUvkR5U/f97JSUlJi7lx/L/fffn5Kdnf0fcTNoMuAZ1mKXlpZ217333psSbdpNRVsFG2s2cnr+6d2WK4OeUNpBJ4ZO9s5lbBKT8CdlUZziD2vTcaQO5+G6sK18AKQ9BeGP35d9sDHQBW/YCx3tKQiaDyzhKwc1zzmFlmklZK/6kqxVWzuPF9vyyLdm8UJ6Nteqa3h93a5ur01LS6OlJX5L+GPHjmXkyJGFQogJcTNqMqAZtmInhFDsdvsPvve970V953z7wNsAXRLJO9ADOort6K81rexz7G11POMPeXURG7R+thPDotI2oSjseWlPQQSGr9jBwBU8U+iOIvwtSFuEIkRC0HD2VNpOKSD/X+tIW7+n/bBgbuJUjqga25ySwIYX8Wtdlyzj7dkBPPzww5kFBQVmvcxhwrAVO+DCSy65JDElJbpSeVJKlh5YyoT0CWQldC3QbOgGQhFdvL2cHUtoUNL5TJnOqbnhlyEVX4C0jftwnxI+MAVAKnbQw3uFw4mBJnim0HVFBNuQth4CmxVB7YUz8BRlUbR4NUk7Ql0PJiWMIllJ5Ln0XL6pv8PK7V3rZSYlJeFydc/Xi4UrrrhCEUJcJoSIOhLbZPAxbMWupKRk0QMPPJAW7eu21W/jsOswpxd29+o0n4Yl4WiAl725nNTyzbwQOJ8Z+R5savj8uNRN+1H9wbAVUwCkYkEYwUHZu+5EMFAEzxS6MAQ9SEsvhdQtKjWXzyGQmcLI594jobQGVajMSZzEJrtEtzew46M3urzEbrcTCMQ3OEtVVe68805nenr6rXE1bDIgGZZiJ4QYmZKSMmbq1KlRv3bZgWXYFBuzc2d3O6d5u9bDzNmxFA2Vl7TzmBeplY+UZH66A39WCv689PBDLE7Q4lNBYqhwsgXPFLrwCGmAUHoteyDtVqoXzkV32in583Ls1U3MTJyAVVh4Pi2LMxteZ1dV1++MxWIhGIxvW6u77rrLmZiY+H/NeplDn2EpdoWFhQ/dcccdUS9dBPQAKw6tYGbuTBKOSZ7tQPfrnWKnBL1k7XmXD5hDWoaNbGf4L2nC4ToSyuvDV0zpwOpEBE2xO56TJXim0PWM0APQh7+H7nRQtXAeACV/epvkVo1pCafwbqKNydYdvLtmTZfxiYmJcSsb1kFubi7jx49PBebG1bDJgGPYiZ0Qwg7ccPXVV0f93j8u/5jWQGu33LoOdH8ooRwgc98qLAE3z/p7STf4bAeGVcU1PnxgCrQ3azXFLixft+CZQtcHgm6ktW89IbW0RKqvnIfF7WPUn5YzXxlHUEheSkklb/cLuHxHHxLjWSPzWL7zne8kFBUV/WfcDZsMKIad2Nnt9m9efPHFicnJyb0PPo6lB5aSZk9jYsbEsOc1v4ZqUzvrYB5SitlnG8PECHUwFa+ftI37aTulEGm3hh0DIC0J5jJmD3xdgmcKXd8Qmgd627c7hkBOKtWXz8FW28zM5z5jolLEy6mpXCI+ZvkXRxvBJiQkxKWR6/HMmzcPh8MxVwiR1ftok8HKsBO7jIyMn15xxRVWuz26m2KTr4mPyz9mXv48VEUNO8bQDBSLQlL1DpyNh3jGfxHzCltRI/yW0zbsQwlquMJUTOmCUMybay+caMEzha7vCM2PtET3N/AVZ1N34QycB6u56y0vLnRWJ1lxrX2us71PQkLCCfHsHA4H3/3ud5PS09PvjrtxkwHDsBI7IcS08ePH52RkZGCzhQ/xj8SKQyvQpR5xCRNAEEo7yNmxBI9IYKkxn9MKIoRLS0nGZzvw56Tiz4kcFCoRMMS7HMSLEyV4ptBFiR4ANbrvF4B7XCEN50wlf2cN97xn4/nULC71vc0XB2qBkCj5/fFPv7Hb7Vx22WUWm832fSFE+CdZk0HPsBK7/Pz8Rx555JEsKSWKEt1bX3pgKSOSR1CUHCHp25CggMXTRPrBT3hDP5ux2RrJ9vD1/BJKa0iobIxYMaUTxYrQ4xuBNpSJt+CZQtcPjABSiV7sAFpPHUXTnHHM3+Jl7jqN8oQ2vlq1GAiJ0okSO4vFwmWXXeZUFOXiuF/AZEAwbMROCJFis9nOv+CCC6J+7cHmg+xo2NGjV2cEDVSLSvau5SiGxvPBizg9UroB7RVTrBbaxkUOTAFCT8jDrPhzrMRL8Eyh6x+xxvA3zRtP8+Rirl0r2VSayfSKl6lt9WGz2eKeawdgtVrRNI0HHnggLS8v7+dxv4DJgGDYiF1KSsrtd999d3J/0mmWHVyGIhTm5keOTjY0A1WV5Ox8m43KZLzOTEal+cKOVTx+0jbtp218IdLWc5cRqdoQhil20RKr4JlCFyuyfQm+HwhB47mncmhsEgvWQFpVOas+fK9bHdp4YbFY0DSNyZMnk5OTM0YIMeqEXMjkpDIsxE4IIRISEn58xx13ODRNI5qO5IY0WHZgGVMyp5Bqj1Dzj1CpsOyGjdjc9fyv72Lm9VAHM339HhRNp3VKSe8TMD27ftNfwTOFLnZEP/ftOlEU2i6ax54ige+zFHLf+z2afmL+Fh1iB/Dwww9n5OTkPHhCLmRyUhkWYgecffbZZydnZGQQrdhtqN5AjaemxyVMAKlLig+vpEHJ4DNxKjPzegpM2YkvN41ATmTx7ESoYGh9nq9JV6IVPFPo4oShhz67MZBocfLeVUVUZAoKPj7C2jeXAXRGZ8aLY8Xu6quvVlRV/aYQInzrBpNBS69iJ4TQhRBbhRBfCSFeE0L0PYEmzgghFgghpBDi9mOOzWg/FvFprLCw8OcTJ07MqKysRNd1LBYLd9xxBzt37oz0kk6WHlhKgiWB6TnTexznaCojo2E7fwtcwKl5HhyW8F9I58FqHNVNoYopfUAKBcybbkz0VfBMoYsj7WXDYmWOOoZfXa/idUD6r36GraExbk1cOxBCdAqozWbj5ptvdjocjusjjJVCiMeP+flBIcR/tv//P4UQFe33y45/ae3nzhRCrBdC7G7/929xfRMmvdKXT6NXSjldSjkFCAB3HXtShDghHqIQIpwLth049oP4beDLHmzkp6SkTPvoo4+orKzEMAyEEDz77LNMmjSpx+t7gh7eL3ufOblzsPWyJJO//x00LPxTOzdyHUxCgSm6zULbuMIe7R19A6opdnGgN8EzhS7exEfs8mQKmc5sHr3ehtUIkPjbJ/DX1MRhfpH50Y9+lJSWlvZwhNN+4JoeEtCfaL9fdvxrFkLkAf8E7pJSTgDOBL4vhLj8BEzfJALRfho/AcYKIUqEELuEEH8CNgPFQogbhBDb2z3AxzpeIIRoE0I8LoTYLIRYJYTIbj8+RgixUgixSQjxSUcTRSHE34QQvxVCrAYeCzOHw4BDCJHbXrz1EmDFMdebLoT4XAixTQjxVnp6+k/OOeec9I0bN3LTTTdx3XXXYRgGCxYsYOPGjQC89NJLTJ06lSlTpvDQQw8BsPzgcmY/Mxuv5uWjvR9x23230VDX0G0yGftWMf6v36bw4HICUuUsdRtVru7CmLphL+N/9nfSNuxFSInzYHXffuNmQnncOFbwEvdWU/zX9znlZ7+k+G+rSNzfYApdPJFGaFUiDpwZLGFXDvzqeoHRWs+Wqy7gy1kT2DlhIvvOO5+WZcvicp0OioqKmDRpUpYQYkaY0xrwDHBfFCb/HfiblHIzgJSyHvgJEElQTU4Aff40tntZlxLyrADGA3+XUs4AgoSE6TxgOjBHCHFV+7hEYLOUcibwEfD/tR9/BviRlHIW8CDwp2MuNw64QEr5QITpvA5cB8wnJLbHJt/8HXhISjkN+Mrn893529/+Vp09ezaLFy/m5Zdfxmo9WpqrsrKShx56iA8//JCtW7eyYcMG/t+r/4//XPufqEmhPQeRKBAXCp5Z+kyXSWTsW8WI1b8lxV+PAJzCz39bnsO/dy+bq5I6x6Vu2EvRSx9ha3YjACWok73qSxL3lEf8fXdiLmPGFRF0k7ruA7JXbcHq8iIAa6ub3CXLSdp9+GRPb8gg4rSMCeAmABK2FllYMRMyXGBzCwSgVVZS9bOfx13wHnnkkaz8/PyfRjj9FHCTECLcpvt9xyxhrm4/NhnYdNy4je3HTb4m+hKpkSCEAfzGrwAAIABJREFU2Nr+/0+A54ACoExK+Xn78TnAGillHYAQYjFwNvAvwABeaR/3IvCmECKJkFC9dkw48bFrS69JKXtamH+13eYE4KV2W7R/+NKklB+1/3zE6XQ6EhKOdiiQUnYJYd6wYQMLFiwgOzsbgJtuuomnW57GZ+uaNiBVyaHMQ12OFX3xHFaja5KrUwR4QHmNKw4+zsz8ULPWvGVfoAS7Bpkomk7G2l24eygADbTfMEyxiycZn2xFOa5VjKLp5Ly3heAXe07SrIYYqg2kBCP2ggiJwsMZ7VWEclq65/FJn4/aJ54k9Rvf6Pc1Wlq6Fms/77zzsFqtC4QQyVLKLtFmUspWIcTfgXuA44t1PiGl/M1xxyKVQTJLI32N9EXsvFLKLtEZ7WLhPvZQFNeUhDzK5uPtHoM7wvGQASmrhRBB4ELgx7SLXZhxzYFAQFmzZg3Nzc1s2rSJ5uZmgsFg5891dXVUV1ezpr2dyO7du/FNDp8fpzk06r6q6/zZ1lYbdlyBaKDZZ8HqywPA2hS+Q7nF5UXLntbTWwXVjm4Zj/m9iB8W19LwJ6TEWzL6653MEEUg2j+xsX9u9wW+ouMWk98U3l6wsrLzO9xfjn19IBBA13U7oTiFcDxJaFXpr30wvQOYDRz7wZsF9B4hZxI3+h6D3zNfAL9r37RtAm4A/tB+TgG+CbwM3Ah82v5kdEgIcZ2U8rX2vbdpUsqIgSZh+DmQI6XUOzw1KWWLEKJJCHGWlPITYJKmaa4pU6akFBcXM27cOGbMmEFpaSlpaWnMmjWLwsJC/vKXvzBlyhTS09P55S9/SerUVFpk97Y8qlcle0p258+BrTnYwwhepcwkzaERdIT25YLpSdjCCJ6WnIClbluPb1JPG4PirjJb/MQRLSURa2v356lgehKHbz/zJMxo6KEGU5EigGGJvUvBC9VHaDFC35/x5RrZYeK/rAUFLFiwoN/XWLNmTZfX//Of/9QDgcBfpZRh65NJKRuFEK8CtwPP92L+KeALIcSbUsqtQohMQts+v+j3hE2iJi6L6lLKKuARYDWhyMjNUsol7afdwGQhxCZCe3odf+CbgNuFEF8SevJZGOU110op/xXm1PeAXwshtgHTFUX577/85S/eW265hbvuuovrr7++S7fj/Px8Hn30Uc4991xOPfVUZs6cySNnPoJD7Zpmo0qVtD1dCzaXz72doNI1ss8jbTxuXMcloxs7j1V/Yy6GtetzhWFRaZwfvlVQ1zcav70Pk1DUZf2F52NYuuaAGVYr1Vf0nEtpEgVSIEV8ViOmJIzt/P8/Fwh8xz2iC4eDnPvujcu1Onjsscea6urqftvLsMeB46Myj92z2yqEKGm/P34H+IsQYjewFnheShnfjUaTHhHxTtDsdgEh2qSUSb2PPGHXTy4uLj5QWlqarSgKra2t7Nu3j1mzZvX4uuUHl/O7zb+jyl0FwJkFZ3Lb1Nu6jcvYt4rsT58l2V+HAP4neB27is7h0rFNXcalbthL3rIvsDa1IYCG+RNpmX1Kr/PXU0YifE0ogcjpDCZ949j0gqTdh8l5bzPIkEdXc8UZuKeeQdBeB4qZxB8raiAdQ/Ug1dgLN7/Z9CH73AdI03XqLAqXb9O5/iOJzS2wFhSQc9+9Me3XQVfPbtu2bVx66aVrKyoqzoh58iYDhngtYw5YpJSu/Pz891auXHnjZZddJhRFwTB6D/i4fPTlXD76cqSUfHfFd9levx2v5iXBktBlXOMp59N4yvkEquuZu+x7jJPVfOLtnnrQMmccLXPGobq8TPj5P7C6+rgsKY2YK1GYdM+jc48vQv90J21TJnPkO6cBIIx6rP5sU/DigIhTayq37mW39xDfdrmYLq4gcfr1zL95Pqp64r4Tjz/+eHNlZaW5xDjEOOHrYyfTq+ugurr60UWLFjVA19JAfUEIwYNzHqQl0MK7pe9GHGc4kqgqOo8rxDpq6jRa/OG/jHpyAs2zxpK0uxzF33ukWjxDuIcrfU0Yl0oQzR4SPIwh/xx4YpEC4rCMuc27Dx2Dq1vbyD/vLnRdj7o9V290FJoAaG1t5d1333UD78f1IiYnnWFxF5VS7ti/f39VaWlp1GIHcGr2qVw08iLeLX2XJl9T2DFCERwpvhQLGt9WPmR9RUpEew3nTEUJ6iTv6ENel6GBYt54+0u0lVFMwYsTUkHGmDIjpWSLexdTfRr1zGLapFBaWry7H3SUEAT429/+FggEAn+W0kxuHWoMC7EDqK+v/9WTTz7pUlW1X7X17p15L7rUWbJ/SdjzikWhLSGf5uI53GJ7n02VTiIVafcVZ+MelUfK9kNg9PL0awSQsVSPH8b0twSYKXixI1BBxFbDsixQRYPeyg2uZnzTbzlhLX6CwSAWiwUpJU8++WRrU1PT0yfkQiYnlWEjdsFg8K1XXnnF099Ox8UpxXx7/Lf5tOJTyl3dK58oFgVDM6idejUZsoUzg5vYUZcY0V7DgqlYWzw4S3uu8xdzq5RhSqy1Lk3BixFJzF1cN3t2k2jA+LYU5l5wbZflxnjS0Qnlo48+wufzfSal7F4X0GTQM2zETkoZ0HV98auvvtrvx83vT/s+TquT1/a+1u2cYlUwggYtxbPxphbyb7YVrKuI3MKn5dRRBFMTSfnyUMQxQKiXnSl2URGvos6m4PWTOAidR/ex23uIq1wuDhZ8kySHDb/fj93e/87zkQgGg9hsNhYtWtRQVVX1q7hfwGRAMGzEDqCuru6JX//6142KovRrKTPNkca/Tfs3ttdvZ2dD1+IHQoj2L7lC7dSrmcJBkpsrqHFbwxtTVRrOmozzSB3Wxgi97wCMIFKJYMOkG/HuXmAKXj+QKjLGJcwvvXvRMbii1cfYi78PhKqanAix8/v9NDc38+WXXzZKKTfE/QImA4JhJXZSyvLGxsbdpaWlBAL96/5948QbyU/M57W9r2GEuZlKKakfdxGa1cltlhV8Xh45UKVx/iQMi9qjd3didimGJieqTY8peNEhpAVE/1M3jgamBKi3nsHYkSMA8Pl8J0zsXn/9dX9LS8v/xN24yYBhWIkdQGVl5S/efPNNX3/37uyqnXtm3kNZaxmfV33e5ZxiCy1lGjYn9RMu4TJ1PUeqdfxaeMnSkxNomTmW5N1HED2kIQipI8O29jPp4ET3ozMFr+8IaUHGIHaHA9U06K182+XCMvfOzuMejwenM/69o9va2nj99dc9Xq/3n3E3bjJgGHZiB3y4fv361poYGkBeNuoyJmZM5K19bxHQj3qIqk1F94eWb2qnXIWKwbV8yJaayKmG9R1pCDt7SEMIesB60hrED3i+rsarpuD1DWHYMJT+dzvY7N5Foi4Z6c7htDMu7Dx+osTuvffek1LKt6SUZgHaIcywEzsppeH3+3+3ePHifj96KkLhwdkP0uBr4IOyDzqPq3YVzR8y608toHnEXL5r+YBNR5xEqsrmG5GNe1QuqdtKiTRIBN1IU+zC8nV3GDcFr3cUw4pU+rdN4DF87PIdYmFbGzWjb8RmPVqcwev1cmy7rnixePFib1VV1aK4GzYZUAw7sQNobGz884svvuiJpS7oafmncXbh2Sw/tBxXIBRgYnFYOj07gJpp15COi9nezZS1RN5raDhnGtYWNwml4VsGiaDHFLswfN1C14EpeL0gVRD9+3ts84QCUy5p1Zh2addatCfCs9u9ezeNjY1HpJT74mrYZMAxLMVOStkkpfxs9erVvQ/ugftn349f97PsQKh4ucVhQfMedRhdhTNwp47gdusK1vUQqNIyfRTBFCepXx4MP0DzIC2m2B3LyRK6DkzBi4BU+p1MLqVkS9supvn8NCZeSF5WVpdzhmHEvSbmE0880XL48OGH4mrUZEAyLMUOoLS09D8WLVpUH4uNMWljuHrs1aw+spoad01I7HzHrI4KQd2p1zBJlGGtq6QtEOGLqqo0nDUF5+HwaQgd9THN9q0hTrbQdWAKXndi2a87HKim3mjlW6420s7+QZdzPp8Ph8MR4ZX9w+12s2TJEq+UcnlcDZsMSIat2EkpN2/fvr2hoqIiJjv/Pv3fsak23tj3BkIJ5doduzzacMr5BKxJfE9dyYbK5Ih2Gs+YiKEqpGwLn4YgNB9Y4r9fMdgYKELXgSl4XVEMW7/367a4d5FoSHJ8o5gxY06Xcy6Xi+TkyN+f/rB48eKgYRh/lVKaLS6GAcNW7ABaWloee+qpp7q3rI6CbGc2t06+lY01G9nftB/VoaL7ji7jGNYEGiZdxiXqRkorghFLYerJTlpmjSV5V3nYNAThb0HaI1dkGQ4MNKHrwBS8oyi6A0PxRf26jsCUK11teCbegqJ0TddpaWkhJSXyVkC0SCl5/PHHW+rq6n4XN6MmA5phLXZer/elF154wX1s5/L+8L3J3yPTkckre1/BkmAh6Olqr3bKQgSSK7XV7G6IvPcW6oagkbzrSLdzItCKtMfvyz7YiLfQJe4pR/X4SP1iE+N//g9SN+yNyZ4peIQqCEkVlOj37LZ59qFhcF6rwuyLbup2vqWlhdTU+D3sffHFF7S1tW2WUvY/B8lkUDGsxU5K6dN1/c1//etfMd09nVYnP5zxQw40H2BHYAcBd9dlnEByLk0lZ3CDZTVbjkSOyvSOyMFdkhtayjw+UlTzIi0Jw3Lf7kQIXfaqLxEyVKHG1tRG0UsfmYIXI8KwIZXoizWEAlN2MM3nx5V+JanJ3R8I29raSEqKX2vMxx57rKGysvK/4mbQZMAzrMUOoKam5jePPfZYY6x2rhp7FaNTR7OkfAneNm+387XTriGNNia1bKHBE/lG2LBgKrZmNwllXdMQBCCC3mG3b3cili4z1u5C0bp6H0pQI2/ZFzHbHs6CpxgODDV6sTsSqKbecHFtq5viC3/Q7XwwGERRlLg1ba2vr2fdunWtwGdxMWgyKBj2YielPFBZWXlo165dMdmxKBYemP0Atd5a1rWs4/gcvrb8qbSmjeYW9V0+L4+80d4yfXQoDWFr90AVERhe+3Ynao/O4ur+MAJgbWqLi/3hKnj93a/b7N5Jkm6QoU1hwrjx3c43NTWRkZERjykC8Mwzz3jdbvcTMpZEW5NBx7AXO4CamppfPP744y2x2jmr8Czm5M3hw7YPaW1t7XpSCBqmX8N4pRxRXUFQj1DiWVVpPGsyzsO13W6+wteMdKTHOs1BwYkSusT9lRGrawfT47dMNuwETwpAiXq/zmv42OU9xBVuN+rMO8KOaWxsjJvY6brO008/3dbW1va3uBg0GTSYYgcYhrHi7bffdre1xfZkL4TggdkP4DbcLD/YPXWnYex5+Kwp3Mh7bKuN3Ni1cf6kUBrCcd0QhO5HKhakiG9i7UDjRAid4vGTs2Ijue9sJJCehGHp+js0rBaqvzE3LtfqYDgJnqInYKjhPeae2ObZhyYk81sdzDn3qrBjGhoa4iZ2K1eulMFg8D0pZQ99tUyGIqbYAVJKXdO0v/zjH//oX4LQMUzOnMxFxRfxUd1HNHq7bgVKi43GKZdzgbqZ0iORL6WlOEPdEHZ174ageBuRjvgt6Qw0ToTQJe6rpGjxGpwHq6m+4jT2/vwmym9cQCA9CQkE0pMov+EcWuaMi8v1jmW4CJ6iOzHU6OooSynZ4goFpuj538Jh69630TAMgsFg3BLKFy1a1FBdXf1oXIyZDCpMsWunoaHhqSeeeKI1Hsv498+5Hyklb+57s9u52skLAcEF3o8ob43cgTxSGoLwNSATMmOe40Ak3kKnePzkvLOR3BUbCWSlsP8n36Tu4lmgKrTMGceeX9zMnl//P/b84uYTInQdDHnBkwJhWJAiuhSeI4Ea6qSLha0+xl98V9gxjY2NpKfHZ+n+0KFDHDhwoEpKuSMuBk0GFabYtSOlrHO73RvWrVsXs63C5EIuyrqIdVXrKGst63IumJRF/aizuF5dw5byHtIQRubgCZOGIDQfUrUhxdD608U9vWBfJcWLV+M8VE31N+Zy4IFr8BecvIeEoSx4oSVMX9Sdhre07SDRMEhnLsWFBWHH1NXVkZ2dHYdZwu9+9ztXfX39r+JizGTQMbTumDFSWVn5X4899lhDPGzdMvEWkixJvLrn1W6RmfWnXkuK8DC6bgueYOQ/Qf05U8KmISi+obWUGU+hC3lzG8hdsRF/dir7H7qOuotmgnryP+pDVfAU3YlhiW4J02v42Ok7xBVtbtLO+H7EcfX19XERO5/PxyuvvOIJBoNvxWzMZFBy8u8AA4vP169f31JbG77VTjSMLhzNxakXs6txF9vrt3c5586dSGPaKdysvM/mysiBKq3TxxBMTiD1+EAVTx3SmRPzHAcC8RS6xL0V7d5cTcibu/8a/PkD66FgyAmeVNo7k0e33d0RmDLTlc7MeeeHHeP3+xFCYLV238uLlldffVXXdX2xlDLmfXmTwYkpdscgpZRut/vx//3f/425Y7Hdbuec1HMoTCrk9b2vYxx7IxeC5pnXMlapxKg4ErFeprSoNJ45GWdZ1zQEofsBibTEtwr81028hK5zb27lpgHnzYVjKAmeqiWiq21RLWFKKdnS+hXTfH4co25GVcK/uLq6mtzc3LjM89e//nVjXV3dE3ExZjIoGZh3g5OIy+V64ZlnnnHrev96ch1LYV4hN4+4mfK2cj6t+LTLucYxZ+O2pnGNtooDTZGrojSeOTlsNwThrsFw5sU8x5NFXIROypA392Job67qynkD0psLx5AQPAmKlohhia6WenmghjrauMwV5NRLbo04rrq6mry82D/jW7ZsobGxcZeUsjxmYyaDFlPsjkNK6dY07Z133nkn5rDMvLw8xuhjmJY1jX/t/xd+7WgpJanaaJh6JeepWyk7HDk/SUtx0jJjTCgNIXC0E4nwNSIdqchoowIGAPEQOtXjI7fDm8tNY/9D11F/4YwB682FY7ALnjAcoXY+IrqvyubW7SQaBlm2BWRGiLTUNA2v1xuXtj6/+c1vmsw6mCaD587wNVJdXb3o0UcfjTlQJTk5Gb/fz70z7qXZ38y7Ze92Od8w5Qo0VOa3fEKzL3KieMM5U1ECXdMQBCC8jYMuDSFmoWv35opeXENCWS1VC+dx4L6rB4U3F47BLHiqloRuia4Qg9fwszNQxhVtbgoX/DDiuJqamrgsYTY3N7Nq1ao24MOYjZkMakyxC4OUcndpaWnFgQMHYraVn59PTjCH80ecz8pDK2nxH61KpjkzqC5ZwDfVj/nySORNeG9JLp6ROd3SEBRPDUZi3qDphBCr0IX15i4YXN5cOAal4BkqQqpINbp4j+3uPWhCMsVTyOSpMyOOKy8vp7CwMNZZ8vzzz/t9Pt9TUg6gBogmJ4XBfZc4gdTV1f3yd7/7XWvvI3umsLCQiooK7p15L0EjyJIDS7qcb515NUnCR3H1VrQevo4N50zF1tRGwuG6zmNCDyA0L9KeFus0TzgxCZ2UJO4p7+rN3X81/ryhUyd0sAmeRUtFt0T39egITJnq85M58Q6ECL8EHwwG8fl8MTdrlVLyhz/8obWlpeWZmAyZDAlMsYuApmlLXnvtNY/XG329v2NJTEzEMAxybblcN+46Pi7/mKq2qs7z7pwJVKdO4Nt8wM7ayIEqLTPCpyEorgqM5MIB7d3FInSq20fu8g3kvrsZf176UW8uTu1eBhKDRvAMFWHYoq6FWR6spVa4udAlmXXRDRHHVVZWkp+fH+ssWb16NX6//xMpZVPMxkwGPUPvjhEnpJRBTdP+8corr2i9j+6Z4uJijhw5wg+m/wCH6uC1va91Oe+afS0lSg3G4cOR59ORhlBag6X52DQEH0IPIG0Ds4t5v4Wuw5tbvIaEw3VUXXU6B+67akh5c+EYDIKnaikhry7aiinNX5JoGOQnX4azh1qXhw8fpri4OMZZwqOPPlpfVVVlVkwxAUyx65H6+vonf/3rX8f8VFhQUEBlZSXp9nTunHYnW+u2sqdxT+f5ltFn0WLN4BLfaqrbItfLbDwj1A0hdVtpl+OKqxyZXBTrNONOf4XuWG/Ol5fOvoevo/786UPSmwvHgBY8qaDo9qiLPnsNPzuDh7m0zcP4i34UcZzL5cJqtZKQEFuT4oqKCr766qsGKeXmmAyZDBmGx92jn0gpK5ubm7/atGlTTHasVispKSk0NDTwnYnfIdeZy6t7Xu1MNJeqhbopCzlb3c7h0sg5S1pqIq0zxpC083DXNATNC4aGtMUeph0v+iV0UpK0u5yixas7vbmD911FIHdoe3PhGKiCpwZT0K2uqL26r9r2EBSSSf5TGDVqbMRxZWVljBgxIsZZwh//+Ed3c3PzYzEbMhkymGLXC5WVlf/1P//zP429j+yZkpISDh06hMPi4EczfsSh1kOsr17fed417XICWJnV+Bk+LfKdpP6cqaiB7t0QFNdh9JSRA2Lvrj9Cp7p95L69gZz3NuPLzxh23lw4BpzgGRYUw4GhRpdELqVkc+t2pvj9jJjxg4jjNE2jrq4u5kTyYDDICy+84PH5fC/FZMhkSDF87yR9Z81HH33U1tQU22pmRkYGPp8Pr9fLFaOvYFz6ON7c9yZBI9QWRUtI48iIc1mofMruisg5d96SXDwjsknZ3r0bggi0IZ3xqRDfX6IWOilJ2n0k5M0dqaPy6vkcvHd4enPhGEiCZwmmo1mbovbqKoK11CoeFrRamXnOlZHHVVRQUFCAEuMDzltvvWXouv6GlNIXkyGTIYUpdr0gpZQ+n+/3zz77bMxfnJKSEkpLS1EVlQdmP0C9t55Vh1d1nvfOuRqn8JNXuZWe2uo1LJiGrbFrGgKA4jqCkVRw0jqZRyt0aluHN7cl5M098i0azjt1WHtz4RgIgid0ByCRqr/XscezuXELTsOgJPtarJbwn00pJaWlpZSUlMQ2UWDRokWNtbW1v47ZkMmQwryr9IGWlpZn//jHP7YZRmx5qQUFBVRXV6NpGvML5jO/YD5vH3ibtkAoutKbfQqHUyZzjb6KsqbIgSot08egJSWQcnw3BKmjtFVhJMeejBstUQmdlCTtCuPN5Qz8fMGTxUkVPAmWYFrIq4sSn+Fnp17OxW0+Zlz67xHH1dfXk5ycjN0eucdjX9i5cyfV1dUHpZQHYzJkMuQwxa4PSClbgsHgh6tWrep9cA+oqkpRURGH21MM7p91P17Ny9sH3+4c455zLUWiHr3sUCQzSKtKw5mTuqUhAAhPLdKeilS/vo4I0Qid2uYjd9l6ct7fgq8g0/TmouBkCZ6iJWEoPlCiL46+vXUXQSGZYEwlJydy+a99+/YxdmzkwJW+8vjjjzfX1NT8ImZDJkMO8w7TR6qqqh599NFH62O1U1JSQllZGYZhMD5jPAvHLuTDIx9S5wktSbaNOYNGSxbntn2Eyx95ObLxzMmgiG5pCAJQW0ox0kZ/LcEqfRa6Y725inoqrz2Dg/cuNL25KPnaBc9QUbVkdGtL72OPQ0rJFtdXTPb7mXz6vRHHNTc3o6pqzBVT2traWL58uccwjJUxGTIZkphi10eklFt37dpVd+TIkd4H94DVaiUnJ4eKigoAfjj9h6hC5Y19b4QGKCqVkxYyT9lFRVnkckxaaiItYdIQAETABUE3MvHEtgDqq9Cpbd6j3lxhJvse/hYNC6aZ3lw/+doET4I1kIlma4y6swFARaCWGtXLGW2JTJtzTsRx8fLq/v73vweDweBfpJSx9+cyGXKYd5soaG5uXvSHP/whujLvYRg7diwHDhwIlRFLzOV7k7/H+ur1HGwObTMEZl6OHxtT6tah9+AsdaYh7O4uwErrEQxnzglbzuyT0ElJ0s7DoSooHd7cj829uXjwdQieoidhKMF+BaUAbG7YhNMwmFB0Y8Q6mK2trQSDQTIzY+veIaXkiSeeaGlsbHwqJkMmQxZT7KLA5/O98uKLL3oCgegqvR+P3W4nJyeH8vJQL8nbptxGhiODV/e+ipQS3ZHCvsLzuUyu5XBtZLXzluTiKc4OBaocF74pMFCbD6Knj4n7cmZfhE5t85K3bD05H2zFV5TFvkeub/fmBl//vYHKCRU8Q0UNJqFbm/v1cp/hZ5dRwQVtAeZe+v2I43bv3s2ECRP6O8tO1q5di8fjWS+lrOt9tMlwxBS7KJBS+nVdf/XNN9+MeZnkWO8u0ZrI3afezd6mvWyt2wqAfvo1OESQ7MNfRjYiBA0L2rshHOn+HRfBNkTAhUyKvahuB70K3THenKOigcpvnsnBexYSyE6N2xxMjnJCBK9z+bKpX8uXANubdxBQYKJlLinJ4ffimpub0XWdjIzYexE+9thjDZWVlb+M2ZDJkMUUuyipra19fNGiRTHXy7TZbBQUFFBaWgrANeOuoSSlhNf3vo5maASyRrEv+VQuDayhwR35z9QyY2x7GkJp2PNK6xEMRybSmhTrlHsVOtXlJW/pF+R8sBVvUVYo0vKcqaY3d4KJt+CpWiqGEuj38qWUkq1tXzHJ72fugv8TcczOnTuZOHFiLFMFoLa2lvXr17cAn8dszGTIYopdlEgpS+vq6vZ/9dVXMdsaM2YMZWVlBINBrIqV+2bdR5W7ik/KPwGgbdY15ItGtIORU4Y60xAOVWNp6V7GSSBRm/ahp41BKv2/EfYodFKSvOMwRYtX46hspPKbZ3LI9Oa+VuIleEJ3oOj2fi9fAlT4q6m2+JnryeSUiaeGHVNbW4vdbictLfb926efftrT1tb2Gyl7KsVgMtwxxa4fVFdX/+Lxxx/v/92gHYvFwujRo9m7dy8A5xafy8ycmSw5sASv5kUbN48aNZf5LZ8Q0CN7Rx1pCCnbwufmCd2P0lqGkT6uX/t3PQldhzeXvWor3hHZpjd3EolZ8AwLlkA6QXt91CXBjmVL3SYSDINZp9wefp5Ssnv37rh4dbqu88wzz7jdbvffYzZmMqQxxa4fGIbx7ooVKzwulytmWyNGjKChoQG3240QggdWiySRAAAgAElEQVRnP0hroJUVh1aAolI2fiGzxF7qD0deOdVSE2mZPobknUe6pSF0oPibEYFWjJToKspHFDopSd5R1unNVVx3Fod+ZHpzJ5t+C54U7ft0DSD6XynIZwTYKapY0KYz78Kbw44pLS0lOzsbp9PZ7+t0sHz5cqnr+jtSyuiqU5sMO0yx6wdSSiMQCDz9wgsvxBaWCQghmDx5Mh3LolOzp3JJySW8V/oeTb4m1NMuw4OD8dXrerTTcM5UVH+QpD3lka/lKgeLE8PRt4CASEKnurzkLfmC7FVf4h2Rw96fXk/j2VNMb26AELXgSbAEMtBVN1KN7SO9vWEbAQVOTTgHu6176S+/309paSnjxo2L6TodPProow3V1dWL4mLMZEhjil0/aWpq+vOTTz7ZGo9tgszMTKxWK9XV1QDcM/MeDAze2v8WhiOJHXnnc56+noaGyDciz6hcPMVZpIZJQ+hAAErTPozkwl5734UVOilJ/qqM4sWrsVd3eHNXEswamF3ShzPRCJ4aTAUhMSyxpZBKKfnSs4MJ/gDnXvJI2DG7du1i/PjxWCyxB9IcOHCAsrKyCinl7piNmQx5TLHrJ1LKeq/Xu+7TTz+Ni71Jkyaxe/duNE2jOLmYGybcwGcVn1HuKkfOvwa70Egv3RrZgBA0nDMVW6MLR3nkqmZC6qgNe9BTRyMt4btBhxM61eUhb8nnZH/4JZ4ROex7xPTmBjp9ETwlmISQVjRrY0z7dAAV3kqqrAHm+PMpKCrpdr6xsRGv10t+fnxSYZ588snWuro6M93ApE+YYhcDlZWVv1y0aFFDPGw5HA5KSkrYvTv0kPr9ad8nyZbEq3tfReSMZLtzJud5P8Hrj7yf0jJzLFqSg9StkYtIAwgjgNq0Fz19HFLt2l2hm9B1enNrsFc3UfEt05sbTPQkeIqWgKo70WyxBaR0sLVuIwmGwZnTunc30HWd7du3M23atIjVVKLB6/Xy2muveTRNWxKzMZNhgSl2sbFh8+bNTR3Lj7EycuRIWltbaWxsJNWeyv/P3pmHN1Xl//99bm6Splu67yt0XyjQsooIgha+I4IyI4go8hMVEBkUFJRRZ9BhEUYUEFBwHBEVURYFRbAsyk5poWzdgG50SdO0SZqkWW7u+f3RRSht6ZIu4H09Dw/NXc45SdP7Pp9zPsuLfV7EpYpLuFxxGer+j8OLqEGvX232fipmUXlf82EIN0O4Gog012B1iwIltQ/BxkInqjbAZ3edNRdcZ83dL1hzdxtNCR6xSiHi5LBIlTYROiNvxhVROe7XEwweNvG28zk5OfD394eDg0PHOwOwbds2juO4LZRSi00aFLjnEcSuA1BKqVarXblx40aDLdojhKBPnz64ePEirFYrnox6En4Oftiesx2SmCQUMX5IqjwGnm9+n1DVEIaQf+f+zDow1UWwukfBau/5h9DxVjhdyq+15srVKJ40HHlzBGvubuZmwSOcDKzZDRaJst0ZUhpzsfwcTAyQ6JIMRnTrY0Wj0aCiogK9e/e2SV8AsHLlSrVKpfrIZg0K3PMIYtdBDAbD1s2bN+s5rmmX/7bi6OiIwMBAZGZmQiKS4O/9/46i6iKcLD2N3N6PIg55MJQ0n/6Pc3GsC0MoBLHceUyMsQrErAWVh4KpyoVYo6uz5i7AEOKN3DeeaIjjE7i7oYwFVrEWYrMHLJLKdtWna7JdSnHRlIkIkwVjxi665ZzVasX58+fRt29fmyxfAsDZs2eh0WguUkpLbNKgwJ8CQew6CKXUwHHcj3v37u1YGfObCA0NRXV1NZRKJcaEjkGMewx2Xd0FdtAoVEOGXsUtZ0VSPRBXG4aQ1XwYQj28zB1U4gSmMgdO1/QIuMWaGweLu2DN3SsQqx1EnBMs0nKIzW42y6VZrC9GsdiCAVwI3Nw9bzl35coVBAYGwsmpZe/ftrBy5crKkpKSd23WoMCfAkHsbIBCoXjfVo4qQO1yZt++fXHp0iVwFg4Lkhag0liJQ+UnkObxEO6zpMPUwp6cIdQHNQEekF9oPgwB+GOPTpp3Fn7bfob3j/tQExyE3IVP1lpzNpqJC3Q/jNUOrMUFFmk5qMhk01yaF5SpkPE8kgctuOV4eXk5dDodQkNDO9xHPVVVVfjtt990AI7YrFGBPwWC2NkASmlOYWFhUW5urs3alMlkiIqKwrlz55DknYQHAh7Az3k/QzswGSLwcMlrOQyh4oF4SFTNhyHwMnfw9t5wPfwzArcehrRcgxuTH0DeS+MAx94gXVEFW6BLYDh7iCxyWKTlDdlRbJVL08gZcVmsxBCDGH37j/rjuNGIy5cvo1+/fjZbvgSAzZs3Gw0GwxohD6ZAWxHEzkYolcr3Vq9erbFlm76+vnBwcMC1a9fwauKrMFvNOKQ/izRZIobqjoPnmndE0ySGgXOwqw0ybwQvcwdjtkPAps/geTgD+l7eyH1zEqruiwFlzeCkKrAmTxBr5xR+FegiKCAyy8FYHW4RuobTNhC8i2VpMDIEg70nNIgaz/NIS0tDXFwc7Oxs9x3ieR7r1q3TVVdXb7ZZowJ/GgSxsxEcx+3ZtWuXwWCwiWNmAzExMSgrK4PcKsfj4Y/jSNERXIkZCXdSDdH15i3JP8IQFLeEIfB2bnC6XIKQdZ9CqlTjxuQHkP/SOFjc/thToYwFFjsFWIscjKXjpYEEugFKwJo9ABBwLXhddkTwKKW4zGUj3MRh/Ng/ljCzs7Ph7u4OT0/PFu5uOwcPHoTZbD5EKbXppFLgz4EgdjaCUspZLJb/ffPNN7Zxy6yDYRgkJibiwoULmB45HRKRBIfEubhGAtC34niLe3KqYbEApfD/+jeErvkRQf9NQeB/98B7737oe/k2WHNN7s0RHhapAgwvBWt2hc3LnQt0HrwIYpMXeFENrBL1HePo2it4xZpCFEmsGECiYO9QOykqKSmBWq1GZGRkR95BkyxbtqyirKxsqc0bFvhTIIidDVGpVGtWrVrV4cKujZHJZOjTpw/yL+djesx0pJen46fgYQinhSCK5r2vHa6WAIRAZOFAALA6AyQVKqiGRCH/pUduseaahACcRAVKrBCbvAAqsu0bE7A5xCqF2OQFTqwGz7a+EEB7BO+i6gzseB4T7n8TAKDVapGTk4OkpCSb7tMBQFFRETIzM8sppRk2bVjgT4MgdjaEUlqm1WozUlNTbd62u7s7AgIC0NfaFx4yD/zqXIoq6oDAotPN3uOz5zRII8uPAHDKutF6T0sCWMVacGItxEYvMMI+Xs+kbn+OrXNEaU+V8bYIXo25BpekVRhotEd01ACYzWakp6cjMTERYrG4ve+iWdauXaurqqpaZvOGBf40CGJnY0pKSt5dsWJFZWe0HRoaCgeJA/7m+zfkV+fhE88kDDCdB6PXNnm9uKrpLPbNHW8JKjLCYqcAY3GCSFjW7FnwIohN3gChtY4oHQgWb63gXS49AyNDMCJoEqxWK1JTUxEdHW3TeLp6zGYztm7dajCZTN/ZvHGBPw2C2Nmeo8eOHdOqVDYLu7uF+Ph49BP3Q7BDMH5x08ACwOVaepPXWlybfvBYXNvpdEJ4cFIlQDiITT5CeEIPgOHsG5YtrWKtTfJctkbwMvlc9DLxGD/6ZZw7dw7+/v7w9vbueOdNsHPnTqvVav2WUtp2c1VAoA5B7GwMpZQaDIYPN23aZOyM9gkhGJA0AI84PQKVpRIrXGMxoPoUGO7WWncMZw/lmIfAi299WPFiFmXjBnVgAIBVXA1OogJr9oDILBesvO6AF4E1eYKxymCxK2vXsmVLtCR4RRXXkS+lGCRJQO7Vq5DJZAgJCbFp/zezfPnyyvLy8v90WgcCfwqIEJtpewghzoGBgdfy8/M9GKZz5hNGoxFP/fAUCo0FOFhwFce8J0LXKwFAXRBxXVoo+dls+Ow5DXGVDhZXR5SNGwTNANtUiQYFRJwTGM4BnKTK5g/crkBs9IHFzjZVK7qEWz5zNaioU+ZUDRBeDNbkUVsdgal1ND5wdRsy7DT4IOoj2Etc0b9/f5s7pNRz8eJFjBkz5mRxcfHQTunAhqSlpXmxLLsZQBwEQ6I74AFc4jhuRmJiYnnjk4LYdRK+vr5ff/7550+OGTOm0/o4V3wOz6Q8A3srRQ0D+HBWPFPJQWI3HogKtllG+zvCi8Ba3ADw4CRVtwUv92TuJrEjvASs2RU8Y4RVrLHJkmXr+q0VvLSS7TjBXoGSJZBRinH8YCyevgmdNaEDgGnTpqm3bNnyJKX0l07rxEZkZGT86OPjE+3p6allGEZ4sHYxPM8TpVIpLysru5KQkPBo4/PC7KOTKCsrW7Zs2bLmS4bbgBJTCRgQGEQElBCUill85CkBa/wWfG5mZ3Z9K4wVnEQJXlQDsdEbIoszQIW8mjaDF4E1uYM1u4CTqGCVdJ3QAbVLmmkl27FfegVKMQMQghqGwY/MKazbseDODbQTrVaL/fv36wEc6LRObEucIHTdB8Mw1NPTU4Nay/r28108nj8NlNKLOTk5ivz8/E7r46P0j8A32jAzMgw2ujliuLKLJ8IE4FkDLHalACjERp/a7CvCn337oQxEZleIzZ6wsvrakALGpjkLWjcMSnFUfAXGRhackWHwg2Z/p/X7xRdfmE0m00ZK6d2yVMAIQte91H3+TeqaIHadSGVl5dK1a9dWd1b7Zfqml99KWRFYpgpiXadEQLRMnQOLxa4MhIpqRY+zF0SvLVACkVkOsdELlDHBIi2r3ZvrQmuOpzzyTSX4WXkU629sQSXb9KNCyXbOoCil+PDDD7VqtXpDp3RwjyISiRKjoqJiIiMjY2JiYqJ//fVX25SGr2PixIkhn3/+uSsATJo0KTgtLe2uCbwVfMc7EbPZ/P0333yzeunSpU5SqdTm7fs4+KBUX3r7CUIwKjgAMcpvEHHDCT7OCfDwiQfpxL2V28dAYZVoYKXVEFnkEFvksLI68Kyu6/YS7zZ4ttb5xGoHK1s7YehKgTPxZlwz3UB2TQGu1hTASCyQ8BSDTEZkSKXQim7//nhynfO7PHr0KCwWSyqltHNieHoAW08VuK05mOuvrDZJPJ2k5rmjwounDg7u0AxVKpXyWVlZVwBgx44dzm+++WbAQw89lG2bEd/Kt99+W9AZ7XYWgmXXiVBKzSKRaOd3331nm5LQjXg65GmIG6XwsuN5zFJpMdYaC4PIAz84GbERZ/Dxjc3Yl78L2bpcmPnmqyXYHMLDKqmqtfRAIDb6QGR2AXgh9Vg9xCoBa/KA2OwOyhhhsSsFL9Z1idBprDqc1V/BV6p9WFX2JXZUHUSB/ioe1lVhmUKDNebBeC7uY4yhg2HH37qaaMfzGOc4ulPGtWzZsqqioqJ/dkrjPYCtpwrc3t17Jbi82iShAMqrTZJ3914J3nqqwM1WfWg0GpFcLufqfmaGDBkSERMTEx0RERGzdetWFwDQarXMiBEjwiIjI2PCw8NjN23a5AoAR48etR8wYEBkbGxs9LBhw8ILCgpuS4szcODAyN9//90eAOzt7fu9/PLL/pGRkTEJCQlRRUVFLACUlJSwycnJvePi4qLj4uKiDxw4YFNLsy0Ill0nc+PGjWUrVqx4aurUqTZNLVFcXIxQYyjeGfovrD69ApVWLXw4K6ZV8egV9jpiXGMxPzoaOhjxXcpKXNcfxUVZOc5qj0CkAUJYb4Q79kaYNBCubBdUIycUVrEWVlYLxmoPsdkDlFjBszrwTNcu0fUIKAPGag8R5wBKrLCyWlCR+c73dbRbSlHGqZBTU4AcUyHKLLU+VO6cBE/oDBhr0MDN6g1t7BxEPjwDV/NvwGg0YvH0TZDvWIAfNPuhZAk8OYq/ODyIBO8J0Ov1cHCw3TOsuLgYly5dqgFg+7x7XcRr32cE5pRV2zd3/kqp1sFivdWLy8TxzL/2XA757mxRk+UiInycDCv/mlDUUr8mk4mJioqKMZlMpKKiQvzzzz/nAIC9vT3/008/XXVzc+NLS0vZQYMGRU2ZMkW9c+dOZx8fH8uRI0euAoBKpRKZTCYyd+7coJ9++umqn58ft2nTJtcFCxb4f/fdd/nN9VtTU8MMGTJEt3bt2uKZM2cGrF271vP9998vffHFFwNfffVVRXJysi43N1eSnJwcfv369cstvYfOQhC7ToZSWhgaGnr1119/7ffQQw/ZpM3i4mLk5eVh0KBBEIvFGB8x/rZrTCYTUlNTERgYiEVPrYOVp0g98QsyUz+EgsnGcXsLfrEqAACerCvC7YIQLg1CgMQLDOlEg7/OkYUXGUB4CRirA8RmV/AiI3hWD0rM967wUYCxysBYHUAoC15kgEVS0aH0Xq2Bo1YUmEqRYyxAjqkAWqseBEAA74kJGidM0+Ui1GJBtsswOD08B4H9k2HleZw7dw4ymawhjm7u3z7A3EZtq9VqnDlzBgMHDrSJ4FFK8d5773FqtXrJvVygtbHQ3el4a7l5GTMlJcVh+vTpoTk5OZd5nifz5s0LOHXqlCPDMCgvL5fcuHGD7d+/f83ixYsDZ82a5T9+/HjNmDFjdKmpqXa5ubmyBx98MAKorSPo6enZ4nKQWCymkydP1gBAYmKiPiUlxRkAjh8/7pybmyurv06n04mqqqoYV1fXLnc6EsSuC8jPz1+0bt26vQMHDhTL5fIOtdVY6JpDKpViyJAhSE9Ph16vR3R0NAYPG4vBw8biRmEe7tu/Fo5FO3HRnsOv9jxOWdQ4ocuAjEjR2y4A4dIg9LYLhIyx/V4jAIAAVGSGVWSGlQIML4PI4gzCs+BFNeBFNaDMPSB8lICx2oHhZSBWaW3ZHbEGlOncpeQa3ohcYxFyjAW4broBE7VAQsSIFPdGiEaExyouYQBNgxZOKAx9CsYxcxHj3QtAbS7K1NRU+Pn5ITQ0tMV+XFxc0K9fP5sJXk5ODvbu3WvQ6XRfdqihbuZOFtjAf6fEl1ebJI2PezlJzT/MGWaTPbbRo0frq6qq2NLSUnbHjh1ylUrFXrx4MVMqlVJ/f//4mpoapk+fPqb09PQrO3bskC9evNg/JSVF+8QTT6jDwsJqzp8/n9XavliWpfXxlizLguM4AtROXs6ePZvp6OjY7RMXYc+ua0g5ffq08ujRozCZ2p9lpLVCV49IJEJSUlL9Fw4cV+u2HhAUivuf/wDRCzIR1fsf+EeFA44VFGKpQoN4gxR5NcXYpT6MD8q+xBcVe3FClwGlpQqdNtEmAC+qASetgMVOAcpYIOKcIDb6gjV5gOEcAHqXfFUpQHgWIosTxEYviE3eILwUVpEeFrtSWCXqThO6Sk6LU7qL2FKxFx+UbcUP6iMosShxn2M/TBKNxxtF4diQdQxLlfvgI5Hi+tAVcHozB3HTPoRDndBptVqcOHECvXv3vqPQ1XOz4On1rS8r1Jjy8nLs3LkTFovlO0qpbasg9zDmjgovlrLMLdaNlGX4uaPCi23Vx7lz5+x4noe3tzen0WhEHh4eFqlUSvfs2eNUUlIiAYD8/Hyxk5MTP3v27Mp58+Ypzp8/b9+nTx9jZWUlm5KS4gAAJpOJnD17tl1el8OGDdOuWLHCq/71iRMnZC1d35kIll0XQCnlXV1d12VkZPzLxcVFPGTIEIhEbXPQaKvQ1UMIQWxsLIqKinD8+HEkJSU1zL7t7GQYOH4mMH4mrp77HX6/rcOG0hSIiBXf28XgmFcQrtFKHNSewUGcgavIGeF2gQiXBiFI6guWdIKTCaG1y5ysoVY4qBiMVVaboxEElFjAMyZQkQmUWLrf8qMEhJeC4SUgvBSEZ0EZDryoBhaJqlOXKCmlKLaUI8dYiBxjAZRcbSnFQIk3xruOQDgbBS5fjd5XD2AY3QGeMLju9SD4UXMRGHn/bWWeSktLkZ2djf79+8PZuW37uB218LRaLa5cuYJdu3apFArF+226+S6k3uvS1t6Y9Xt2QO33Y8OGDfksy2LGjBmVY8eODYuLi4uOjY01hIaGGgEgLS1N9sYbbwQwDAOWZen69esL7Ozs6LZt267NnTs3qLq6WmS1WsmsWbMUSUlJbc5N9+mnnxbNmDEjKCIiIsZqtZJBgwZVDx06tLAj77G9COnCughCiFtoaGjWwYMHPSsqKtpU4LK9QteYqqoqnD9/HrGxsfDy8mryGq2yGLn71iE47xt40CoUUG8ccRuOokB35Fiv4VLNNVgoBwkRI1Tqjwi7IIRJA+EoanYv3nbQ2pRZhJeA4aUgvBggFJRYQBkOlHCgjAWUcK0Ob2hVujAKAAwILwahLAjPglBxbdUHQsEzZlDGBJ4xA4TrVAG28BzyzMXIMRYg11gIHV8DBgTRsl5IdIhGf/toqNUyGHKP4j79AfQipdAwLqiInILg5DlgXfxvf3uUIjs7G1VVVUhMTIREctvqWqtRq9U4d+5cmwTPaDTi1KlTcHZ2xiOPPJJeUlKS2O4BdCMZGRn5CQkJnZo1SeDOZGRkeCQkJIQ0Pi6IXRfi5+e36+uvv57g5eUFSiliY2PveI+thK4ek8mE9PR0uLi4IDIystm8hrzFhJwjX4M9uwlhpsvQUymOSYdDEzwSRg8jzhkyka7PRKW1tpaen9izwcnFR+zeaYmBb4OSP0SoToAIZeuWPWmdGFoB8KCEr8vb+cd3nuGcwbP19QAZgDIglAFQ9z8lAAhArHWCamkkqp3/FnVWA66aipBtLECeqRgWykFGpOjrEIlEhxj0tY8AQ+2Rcb0Y7kUH8JD1KByJETccYiEZMhNegycBbNN7r0ajEenp6XB1dUVUVJRNfm9tETyO43DixAnExMTgrbfe0mzevHm6xWLZ1eFBdAOC2PUMBLHrARBCkpKTk/ft27fPo15wevfu3ez1tha6eiilyMnJQUVFBfr37w+ZrOVldGX2KZSnrEG4cj8k4HAa8cjzfhiB4X2hYRRI12chTZ+Ja6YiUABOjAPC7AIRbheEUIkfJIztK1e3CgrUecLcKmA3KZTIIq9NqgzgZkGkuEkYu3iplFKKCk5d5z1ZiGKzAhSAOytHkkMMkhxiEC0LBUtY5Gt4FOacQ5/KA7iPuQgLWBT7/x98HpoLu5ABLfajVCpx6dKlFi399tIaweN5HqdPn0ZgYCDc3NzQq1evMoVCEUgp7fqcaDZAELueQXNiJ+zZdSGU0rO+vr6VpaWlHvX7GyzLIjg4+LZrO0vogNp9vMjISLi7u+PUqVOIiIiAv//ty1v1eEYOhmfkYJg15cja/zHCsr7EIMV/UFTmiROOD6NP+AhMCHgQWqsO5w3ZSNdnIcOQg3OGLLAQIUTqVyt+0iC4sLavZN38GwVqxYprsOUaT+1EnBN4tv1OFbaCpzyKzIpagTMWNFjMoVJ//NVtNJIcYhAk8QUhBBYeSCvSgeYdwUPGX/EXRgm1xAOlCQvgM/JFhDi2LFxWqxVZWVnQaDQYPHjwHSc77eFOe3iUUqSlpcHb2xsBAQHYvHmzxWKx/PduFTqBno9g2XUx9vb2/+/VV19d89577zlwHIfTp08jNDQUfn5+Ddd0ptA1xmKx4MKFCwCAPn36tK4/qwUlp7+H5fh6BOsvwEClOCgahsqgZMSFBsCOBTjKIbMmH+n6TKQbsqCw1GZ98mLdEGYXiAhpEPw7O6avFXRniZ/69Fw5xgJcNRWhhjeBhQixst5IdIxBokM03Nk/QlWUNcD53EIEle3HWByHjJhRIu8P5wdegmPCBEB057mrVqvFuXPnEBAQgF69enX6cnNTFh6lFBkZGZDJZIiMjASlFNHR0crs7Ow+lNK7o95SEwiWXc9AWMbsIRBCZH5+fvn5+fleYrEYFosFJ0+eRFRUFLy8vLpU6G7mxo0byM3NRXR0NHx8fFp9n6EgHSUH1iCoeC8ksOAUjcVFt2QER/aHv9MfQlZiVuJc3XJntjEfVvCwZ+zQWxqAcLsg9JYGwK6zYvpaoKvFTmvV11lvhcg3FcMKHg6MDP0dopDkEIM+9hG3xDbyFLig5FCem4ahuv0YxGTBRKRQ9ZoAn9Evg/GNb1W/PM8jJycH5eXl6Nu3b5u9LTvCzYJnb2+Py5cvg1KKuLg4EEJw5swZPPbYY78WFxc/3GWD6gQEsesZCGLXg/D29t64fv365ydOnMgAtU4jp0+fhoeHByorK7tc6OoxmUy4ePEiACA+Ph5tSV5N9RW4cfATOFz4H9y4chTxnjhoNxpMr5Ho6++Im3MI6601uGDIRbohE+f02dDxBjAgCJT41Dq52AXBXSTvEieXzhY7SikUXGXD8mRpXXoub7F73f5bNCLsgiFqFMZRbQZO5GvgUHgYj/Ip8CWVUEt8gYHPw2XodMC+9SkUq6qqcOHCBfj5+aF3796dWmy1OdRqNdLT0+Hm5gZCCPr06dPw+504caJq586dj1FKj3b5wGyIIHY9A0HsehCEkN5JSUknU1NTG3Lg5efn4/Lly+jXr98tS5rdQWlpKbKyshAaGorg4OC2iY6Vg+b8buh+/xj+mnTUUAn2kftQ7JuMvmFBcGsUmspTHrnGIqTXeXcWmWtTmLmJnBFWJ3zBEp/bxMBWdIbYWevTc5lqLTiNVQcCIEwahCTHWgcTP7Fnk59rrhq4nHsNsZX7MZacgpRwKPccCteRcyCOGgMwrf8czGYzMjMzodPpkJCQAEdHRxu+y7ZBKUV6ejoUCgWGDx/eMBaVSoW4uLj8srKyXnd7erCeIHaEkMTx48dX7t69Ow+o3abw8vJK6Nu3r/7gwYNX3d3dE3Jyci55enpaCwoKxCEhIX1++eWX7OTkZB0AuLq6JmRmZl7y8fFpCBBds2aN+9mzZx22bNnSEB83cODAyFWrVhUNHz68xwX/Cw4qPQhK6TV/f//8rKwsz6ioKBQXF+PGjRsYMWIE0tLSIBKJ4O3t3W3j8/X1haenJ3JycnDs2DHExsbCza2VloSIhTzxr5An/hVcyQWofl2DR/J+gKT0ME4VxyDF+WH4hPugyOAAACAASURBVCUi1kMEQgCGMIiUBSNSFown3cegwqJGuiGrbq8vE2f0lyAlYoRKAxpi+hxE3ZaEoVlqeBOu1qXnuma6ARM1Q0JY9LGPQKJDNPrZRzXrnGOyAiduWKDPO42HTQcwgbkKEyuDPnoqpCNegpdnRJvGQilFYWEhrl+/jvDw8FusqO6AUorLly+DZVkMGTIEqampDXt4mzZtqtHr9avvdqFrF6mfueG3Ff7QlUvg6GXGAwuLMeC5DgWVy2QyPjs7W6bT6YijoyPdtWuXs7e3twUAGIZBQkKC/tChQ46TJk3SHD582CE6Otpw9OhRh+TkZF1GRobU1dWVu1no7iUEsesmysrK3l29evWXb7/9tvzmPbpBgwbhzJkz4DiuRQ/JzoZlWcTExKC6uhqXLl2CRCJBdHQ07O1bHzzO+vVBwLTNgOF9VB7bjOizmzFY9yFunPPAXtFomIJHYmiwE+xvWrH1ELvgYflgPCwfDCNvxuWaq0jX14pfljEPBICf2Ks2k4tdMLxZt257kFdx2trsJaYCFJrKwIOHXOSI+5wSkOgQjThZGKRM8wHapXrg2PUq+JSkYBI5BE+igcYxGDVDl0GWNBVSu7bvqymVSmRmZsLd3R3Dhg3rluXwm6l3RhGJRA2iW++lmZSUhPXr1+uqq6s/79ZBdgepn7lh/xvB4Ey1a8o6hQT736h1y+6g4I0aNUrz3XffuUyfPr3qm2++cZs4cWLliRMnHAFg8ODBuuPHjztMmjRJc/z4ccc5c+Yodu3a5QpAceTIEcekpCRdW/vbuXOn85IlS/zMZjMJDg42bdu2LV8ul/MLFizw/eWXX1xMJhOTlJSk++qrrwrOnz9vN23atNCLFy9mAkB2drZk3LhxYStXrixat26d16+//noNAHbt2uW8YcMGzwMHDlzryGdxM4LYdRM8z/+8Z88e04MPPojHH3+84aEklUoxePDgBsFrKiyhK3FycsKQIUNQXl6O1NRUeHh4IDw8vG1ZNuzd4Pbw68CoV2G68hPER9ZhpmobjNd3YO+1+5DtkYy+4cEIafRst2MkSHSIQaJDDCilyDeXNAjfkeo0HKlOg/MtMX3+EDOd95WmlKLEomxwMCnnap9JAWIvjHMdjiSHGPSWBrToYWqlwNkyimvXszGk+gAWM6kQMTzU/iNBR86BvNdIoB17avXptliWRWJiok1L7rQXnueRlpYGZ2dnRERENExKXFxc0LdvX7z33nuwWq0HKaXV3TxU27P7pUCUX2l+Zlh20QG85dZZGmdisG9hCM5tbbLED7xiDJjwcYsJpgHg6aefrnznnXd8J02apM7MzLR/7rnnVPViN2zYMP17773nCwDp6ekOq1atKlm/fr03AJw8edJx6NChTYrdnj17XKOiohrWwQsLC6UAUFpayi5dutT3999/z3F2duYXL17s8+6773qvWrWq9LXXXitftWpVKQBMmDAhdNu2bfIpU6ZoLBYLuXLliiQmJsa8ZcsWtwkTJlSNGzeuet68eUElJSWsn58f99///tf92WeftemSsCB23QSl1CqRSJ545ZVXPvroo4/833jjDff/+7//IyKRCGKxGIMHD8bZs2dhNpsRFhbWrctQAODl5QVPT08UFhbi+PHj8PX1Re/evdtmOYhYSOPHwzt+PKC4At3hdXg0+3tIKo/g9Mko/Gj3MFx6D8AQPxHEjZ73hBCESv0RKvXHRLdRUHPVdTF9mXXOLn/E9NVncpGzHd+jslAO+aYSZDek56p1pomyC0WyyxAkOsTAR+x+x3bUJuBQvhmk8AQe4/fj/zEFMEqcYO77AhzuexFubq1LutyY6upqZGdnw2w2IyoqqvXLzZ0Mx3FITU2Fl5fXLYkTNBoNPv/8c9OaNWu0ZrP5ZElJyfxuHGb30Vjo7nS8DQwaNKjmxo0b0k2bNrmNHj1ac/O5Bx54QD9lyhR7rVbLcBxH5HI5HxQUZLp06ZL07NmzjgsXLlQ01ea4ceOqGu/ZAcCRI0ccrl27Zjdw4MAoALBYLCQxMVEHAPv27XP64IMPfIxGI6NWq9mYmJgaAJoJEyZUbt261W3p0qVlu3btcv3222+vMwyDJ554QrVp0ya3l156SZWenu64c+fOvI5+FjcjiF03YjabfwPQlxAS/cILLyxkWfb/XnjhBYcXX3zR3svLCwMGDEBGRgYuXryI+Pj4bhc8QgiCg4MRGBiIwsJCHDt2rKEMTJvzKXrHwGPyeqDm3zCc/gIxpz7BIOMalFxxw44ro1Hl/yDuD3WGVzNzYxfWCSOckzDCOQkWyiGrJq8uk8sV7NMcxz4chzfrhjC7IETYBcFP7HmLxXXRcBWHq1OhseogFzlipNMAxNuHAaj1Fq1Nz5WP63XpueyIFH0dIpDoEIN+9pGtygVKKZBZBZy6pkRERQrmiA7DlehQ7RIO7v7VsEuYBEjaZ4FptVrk5ubCaDQiMjISHh4e7WqnMzAajThz5gxCQ0MRGBgIAMjIyMDKlSurUlJS9CaT6WO1Wv0JpbSqm4faedzJAlsVEQ+d4vY/GkdvM1443OESP2PGjFG/8847gQcOHMguLy9veM47OTnxQUFBprVr13rEx8cbAGDgwIH63bt3y1UqFZuQkNCmZM+UUgwbNky7Z8+eW4TJYDCQ+fPnB58+ffpKWFiY5dVXX/UzGo0MADz99NNVf/vb33pNnjy5ihCC+Ph4EwDMmjVL9Ze//CXMzs6Ojhs3rsrWS/CC2PUAKKWZAJ4lhDisWLHimfXr1y8YOHCgfOHChe6DBw9Gbm4uzpw5g8TERLBs9//KGIZBSEgIAgMDUVRUhBMnTsDd3R1hYWFtz8Yhc4X9iHnA8JfBZ/8C2ZF1eFmxHabiXdhTOAT7XZIR2zsUfT0BphmtFxMW8fbhiLcPxzMej6DEomxY7jypy8Bx3XnYM3YIkwYizC4QJqsFB6pPwlKXrENj1WGv+nfk1BSgmupxoy49l5vIGSOdk5DoEIMYWS+ISes++xoOOHKDojTvMpJN+/E+kw7CEhh6jQGGvwSn4PtuqzjQWlQqFa5evQqe5xEWFgYPD49unwTdjFarRXp6OuLi4uDk5IStW7da33///UqVSpVdUlKyBMBBSmmXF+7scTywsPiWPTsAYKU8HlhokxI/s2bNqpDL5daBAwfW7N279xbPqIEDB+o2btzotWjRohIAGDZsmG769Omh/fr107c1LGXEiBH6+fPnB126dEkaFxdnqq6uZvLy8sR+fn4cAPj4+HAajYbZs2eP67hx46oAIDY21sQwDN5++22/xx57rGF/MiQkxOLt7W35z3/+47tv376cDn8Ijej+J6dAA5RSPYANhJCNP/744+CzZ8/+w97efsCrr74qHzlypOTkyZMYMGAA7OzaVVrK5ohEIoSEhCA4OBilpaU4e/YsZDIZQkNDG+KpWg0jAhP9F7hG/wUoz4Ll6Ho8enk7/qr7HannIrBdlAxZyAA8GMTCqQUjkhACf4kX/CW1+2g6q6F2mVOfiXOGbFyoyW3yPg5WXDFdR4jEDxPdRiPRIRohEr82vYfCaiAlzwh5yVE8SQ4gnCmG0c4F/IB5EA+aAUd5QOs/j5uwWq0oKSlBfn5+Q9YRFxeXdrXVmSiVSly+fBmenp5YtmxZ9ddff22wWq3fKJXKDyild9xr+lNR74RiY2/Menr37m156623yps6N2zYMN3nn3/u9cADD+gB4L777jMoFArJ1KlT27xH5ufnx33yySf5kydP7mU2mwkAvPPOO8V9+vTRPPXUU8qYmJjYgIAAc0JCwi05+R5//PHKd999N2DFihW3iPvkyZNVH3/8MZuYmNjmckJ3Qoiz6+EQQjzd3NxeEovFzycnJzuPHDnScfz48XB1de3uod0GpRRVVVXIy8uDXq9HUFAQ/P392+8RWKMGl/4lTMc3wsFwA2XUFd9YR6PI+0EM7yVHeBuf91ZqxVVjEd4p3tjsNdvClrepTY4HTpUB6XmlGKT9FX8T/QYnUgO9exzsh80GiZsIiNs3OdHr9SgsLERZWRl8fHwQEhLSKXksOwqlFNeuXcPu3bvx448/qq5evVpaWVm51GQy7aCUmrt7fF1FT4izu9t55plngvr162d45ZVX2v05CkHl7YAQQgF8QCmdX/d6AQBHSuk/m7h2DIAlAJwBGAFkA3iNUtpsoUJCyD8B6Cilq1oxFhHDMGN8fHz+6eXlFfvCCy9IZ8yYwXS3a3lzGI1GFBUVobi4GM7OzggKCoK7eztL//A8cPVX6H5fB8cbv8NMWezhh+CQLBnhvXphuB8gbUPM+Zz85ajg1Lcd92BdsC5kUavaqKgBDhTw0BZlYKL1AEaIMmAlLLioRyEdOhsISGrXUiXHcSgtLUVhYSEIIQgKCoKvr2+bi/12FeXl5Vi6dCm3a9euGovFsqe0tHQZpfRSa+8nhLgDOFj30geAFYCy7nUCgAwAYgAcgC8AfEgp5QkhIwD8AODmvaIFlNKUjr2j9iOIXceIjY2Nlslk/NGjR3NkMlm7hUkQu3ZACDECKAUwgFJa0ZzYEULiAOwC8Gjd/hsIIY8CUFNKf2+h/X+ilWLX6L5egYGB/+B5/vGpU6eyL7/8skN3xuS1BKUUlZWVKCwshFqthpeXF/z9/SGXtzMdmDIH5pMbQTK+gdhqQDofhm0YA95/IJJDWfi1wt/jmPYcPlXuhJlaGo5JiBgveD6OYc79WngvwAUVcPi6HkGq3zGVOYBQRgGTnSfEg2aASZoOOLU9GYDVakV5eTmKi4uh0+ng4+ODoKCgNsU0diWUUqSmpmL58uVVZ86csej1+uVqtXpzR0MIGv89EEJ0lFLHup+9AHwN4Dil9J06sVtAKX2kY+/Gdghi1zMQxK4dEEJ0AP6NWoFb3ILYfQngEKW0yeBYQsjzAF4AIAFwFcDTlFLDzX/chJC5AGaidgZ7hVI6uRXjs3Nycprq6Oj4elxcnOuiRYs8Ro4c2aMcFm7m5od6dXU1PDw84OvrCzc3t7bnazRqQc9/BePxjZBV56OcumArNxqXXR7E0F4uGOANiFr4GI5pz2Fb5X5UcGp4sC6Y7JbcrNDpLMChIuBK/g0km/bjcfYY7GGC0XcA7IbOBKIfBdi2eaNaLBYoFAqUlZWhurq645OALsBgMODrr7/mVq1aVWUwGC4VFRW9A+CYrbKftCR2da97AUgF4AHgAQhiJ9AEgti1gzqx8wNwAbVLKs+jabFLBzCdUprRTDvulFJV3c/vAVBQStc2ErsSAKGUUhMhxIVSevs6W8tjTfT19X1TKpUOnzt3rtP06dOlPdGJoR6r1YqKigqUlZWhsrISjo6O8PT0hJeXV9ssGp4Hrh2E6fh6SPMPwQIR9loH4wdRMoJCwvBwEODaQj7rIjWHQJem/bSuaYB9eVaIStMxhezHUNEVWBkJaNxfwQ5+EfDr2+phUkqhVquhVCqhVCphtVrh5eUFX19fODs791iBA4CcnBysXr1as2vXLgPHcZ+rVKq1nVGK505iV3esCkAUgGjcvow5kVJqs4wbbUUQu56BkBuznVBKtYSQLQDmAqi50/U37UHYA/i07g83rk7kXAA4AtjfxK0XAHxFCNkNYHc7xpkGYCIhxPVf//rXCytWrHhp1KhRjq+99ppr376tfyh3FfX5P729vUEpRXV1NZRKJS5cuICamhrI5XK4ubnBzc0NTk5OzYsBwwDhD0Ea/hBQcRWiM59iXPpWPMYdx/nrvfFlbjLU3oOQHCJGjNudt9HMVuBYKXAsT4v+1UfwDzYF/mwFzA5+wJB/QtTvGcDhzkHkVqsVarUalZWVqKyshMFggFwuh6enJxITE3uMR21zcByHPXv28MuXL68sKioqVCqV73Ict7cHFFe9+Td4tCdZdgI9G8Gya4H6mSUhxA1AOoDPUfuZ/bPRdbctY9685EkIyQMwgVKaQQh5FsAISumzjSw7EYDhAB4F8H8AYjvyYCGEMAAe9PPze9vV1TX69ddfd33iiSdEPf0hC9SmmdJqtVCpVKisrIROp4NEIoFcLodcLoezszMcHR2bd9owVQPnv4H55EZI1NdQQeX4yjoKv8lGYUiIK0YEAKfLgC+yAGUNhaeMYHwooDYDRYX5mMjvx3j2BKSwgAu6H+yQF4GIsc0WRzWbzdDpdNBoNFCr1dBqa6uMu7i4NAi2vb19j7be6ikrK8OGDRsMn332mZ7juB8VCsX7lFKbxzw1hbCMKWALBMuuA1BKKwkh2wE8B+C/TVzyPoBdhJBT9Q4qqLXs6nECUEoIEQN4CsAtsSV1whRIKT1MCDkGYApqLcA2LWU2GjMPIAVACiEkcMGCBfMWLlz41KRJk+z//ve/O4WGti89VVfAMAxcXFzg4uLSkGrKZDJBo9FAo9GgvLwcer0eVqsVMpkM9vb2Df9kMhns7OwgSXoOkgEzgOuH4XpyA+Ze24WXLD/gp6xBeP/yw/An5dgl2g4/aQVKre74Nac/xjAFSGJyYBXLwPR9Ghj0AkSeUbBwHEw1RhiNRtTU1MBgMMBgMECv18NisUAikcDR0RFyuRwhISFwdnbusd6TTUEpxdGjR7F8+XLVuXPnqrRa7UqDwbCVUtpjyrcQQjwBbASwjlJK74aJQ3cgEokSw8PDG1agHn/88cqlS5fabMm5qXI/zR3vaWWABLFrPf8BMKepE5TSi4SQvwPYQghxAqACUAjgnbpL3gJwGkABgIuoFb+bEQHYSgiRo3aZZnVb9+xaoi6gdz4h5I3169c/tn379sW9e/f2feONN9zHjBlDuqOYZ1uRSqXw8vKCl5dXwzFKKYxGY4P4VFdXo7y8HCaTCSaTCTzPAxABgXPg6P0E/Ip/xtgb+zHeegI8JWBI7aqGP1HhWeZXqOCMvMgXUeI1AhaRPXBFAUABlmUhlUohlUphb28PJycneHt7w97evu1p0noQWq0WX3zxhfnDDz/UGo3GkyUlJe8BSO1B5XZkhJDz+CP04EsAH9x0/v668/W8Ryn9visH2BG+zf7WbWPGRn9VjUriLnM3z0yYWTwpclKHgsqlUimflZV1xVZjvJcQxK4Fbl5CoZQqcKu11vjanwD81My5DQA2NHH8nze9HNbugbaSugDfbwF8SwiJfe65594Qi8UPz5o1y/H555+X9aT8iq2BEAKZTAaZTAZ39+b30SilsFqtsFjGwWKshv7DvnAl+tuuq+HF8Hv8XQSxLBiGuSuWHdvDpUuXsGrVKvUvv/yiN5lMG9Vq9YZ6B6rupPH2AKW0WfOYUnoEgLyTh9RpfJv9rdv7qe8Hm61mBgAqaiok76e+HwwAHRW8xqhUKlFiYmL0Dz/8kJuQkGAaN25c6IgRI6rnz59fsXr1ao+PPvrIx8vLy9KrVy+jRCKhW7ZsKfz666/ly5cv97VYLIyrqyv37bffXg8MDGz3tkpPKAMkiN2fFErpZQBTCSFOy5Yte/ajjz56ZejQofLXX3/dbdCgQffUg54QApZla/OKymSQkaZXVfyYSjDSFlw372LMZjN27NhhXb58eVVFRUVuXZ7KA0Keys7hreNvBV6tutrs5DirKsuB47lb/sjMVjOz/MzykN25u5ss8RPmGmZ49753W0y7ZjKZmKioqJj61/Pnzy99/vnnq1avXl04bdq00NmzZyvUajU7f/78ivz8fPGqVat809PTr7i4uPBDhw6NiI2NrQGAhx56SDd58uQshmHwwQcfeCxZssRn06ZNN1rqu6eXARLE7k9OXSDwWkLIul27dt13+vTptxwdHfvPnz9fPnXqVHFPDWzuCEaZD+xrSps+3g3j6UyKioqwdu1a3datWw1Wq/Xb8vLyDyil+d09rj87jYXuTsdbS3PLmI899ph2+/btrq+//npwWlraZQA4evSow6BBg6q9vb2tdddU5eTk2AFAXl6eZMKECQFKpVJsNpuZwMBA05367ullgASxEwAA1O3THAOQTAjxfvPNN+e8/fbbz02YMMH+lVdekUdGRnb3EG2G/dgl4H54Gaz1j1yznMgO9mOXdOOobAfP8zh48CCWLVtWkZmZWV5VVbXMZDJ9Rym94wNLwDbcyQIbuX1kfEVNxW0bvh4yD/M3j3zT4RI/jbFarcjJybGTSqV8RUUF27t3b0tLW7Nz5swJ+vvf/1721FNPafbu3eu0ZMkSv/b23VPKAPV8zwSBLodSqqioqHhLoVAEbdq06ZkHH3zw7MCBA5U7d+7kOa67w6xsQJ8nwI5fC8gDQUEAeWDt6z5PdPfIOkRVVRVWrlxp7NWrl3LatGnbDx8+PLq0tDTWaDRuFYSuZzEzYWaxRCS5ZQlZIpLwMxNm2qTET2OWLFniHRERYfziiy+uP/fccyEmk4ncf//9+tOnTzsplUqRxWLBDz/80JBdvrq6WhQUFGQBgP/97393DixtgREjRujPnj3reOnSJWld28yFCxekBoOBAW4tA1R/T2vKAD3//PNtCvMQLDuBZqmL8/sRwI+EkPDZs2e/Nnfu3PHTp093mD17toOvr293D7H99HkC6PMEfjtyBCNGjOju0XSItLQ0vP/++5W//fZbtdFoXKPRaD6jlGrufKdAd1HvhGJrb8zGe3YPPvigZubMmRVffvmlR1paWqarqyv//fffVy9atMh39erVJa+88krpgAEDor28vCwRERE1crncCgCLFy8uefLJJ3t7e3ubk5KS9PX7b+2hp5QBEoLKBdoEIUQmk8mmyOXy1/v27eu2aNEij+HDh9+1Di1H7lKxq6mpwbZt27hVq1ZVaTSaS8XFxUsA/NaDwgb+dNyNQeUajYaRy+W8xWJBcnJy2LPPPlvxzDPP2CzsqTO4UxkgIahcwCZQSmsAfAbgM0LIgAsXLvxDKpUOnTdvnvOzzz4rcXZ27u4h3tNcu3YNH374ofb77783cBy3paKi4iNKaUl3j0vg7uS1117z+/33351NJhN54IEHtFOnTu3RQldfBuiTTz5pczFgwbIT6DCEEHdXV9eZEolkVnJyssOCBQtc4uPju3tYreJusOysVit++uknumzZMlVBQUFxXZ7KHym9qUaRQLdzN1p29yKCZSfQadQFJP+bELJsy5YtD6WkpLzt4eERsXDhQte//vWvors5y0h3Ul5ejo0bNxo+/fRTvdVq/bmsrGw5pTSru8clIHA3IoidgM2oC1DeD2A/ISR43rx5ry5YsGDylClT7OfOnesYFBTU3UPs8VBKceLECaxYsUJ15swZjU6nW6XX67dQSm9P+SIgINBqhNADgU6BUlpQXl7+99LS0qB169bNHDx48JURI0ZU7N+/vy5npcDN6HQ6rF+/3hIREaF84oknft6zZ884hUIRptPpNghCJyDQcQTLTqBTqYvv+gq1tfr65OTkvCGRSEbNnj3bacaMGXZubm7dPcRu5cqVK/jPf/6j/umnnwwWi+XTysrK9ZRSZXePS0DgXkOw7AS6DErphZKSkicLCgrC/v3vf78ZExNT8Le//a0yNTW1u4fWpVgsFmzfvp3v379/xejRo8/873//m6pQKIJUKtW/BKET6AgikSgxKioqJjIyMiYmJib6119/dbBV2/7+/vGlpaV3rYF01w5c4O6FUqoFsJoQ8uH3338//MSJE285OzsnLFiwwGXKlCmsTCbr7iF2CsXFxVi3bp3+iy++0Fut1h3l5eWrKKXXu3tcAt1D5Tfb3FTr1/tzFRUS1sPD7D57drHbk5NtVuJnx44dzm+++WbAQw891Kr0YzzPg1J6V9VibAuCZSfQbdBafisuLh6dlZXVZ9GiRatCQ0PLZs+erb169Wp3D88mUEpx6NAhPPzwwxUDBgzIXrNmzZzS0tJghUIxWxC6Py+V32xzK1++PJhTKiWgFJxSKSlfvjy48pttNlvX12g0IrlcztX9zAwZMiQiJiYmOiIiImbr1q0uQG35nF69esVOnTo1KDY2NubatWuSnTt3Ovft2zcqJiYmeuzYsb00Gk2DTixZssQ7Pj4+Oj4+Pro+/VdOTo5kyJAhERERETFDhgyJyM3NlQDAxIkTQ5599tnAfv36RQUEBMR//vnnDenA3nrrLe+4uLjoiIiImFdeecUPALRaLTNixIiwyMjImPDw8NhNmza5woYIlp1Aj4BSWgrgDULIW5s2bXp09+7dbwUHBwcsWrTI/ZFHHiF322xTrVbj888/N61Zs6babDb/VlJSspRSmt7d4xLoGkreXBxoys1ttoiGMSvLARbLLWmHqMnEKJYuDdHs3NlkiR9peLjBb+m/W1Xix2QykYqKCvHPP/+cAwD29vb8Tz/9dNXNzY0vLS1lBw0aFDVlyhQ1AOTn59tt2rQpf+vWrYUtleMBAGdnZ+vFixcz161b5/7yyy8HHj58+OrMmTODpkyZonr55ZdVH374ofusWbMCU1JSrgGAQqEQnz17Nuv8+fN2jz32WNj06dOrdu7c6Xz16lW7CxcuZFJKMXr06LB9+/Y5KhQK1sfHx3LkyJGrQG0dvrZ85ndCEDuBHkVdPs6dAHYSQiJnzpy5UCQSPfL88887zJw5097b27u7h9gi58+fx8qVK6sOHTqkq6mpWafRaD61ZdV5gXuERkJ3x+Ot5OZlzJSUFIfp06eH5uTkXOZ5nsybNy/g1KlTjgzDoLy8XHLjxg0WAHx9fc2jRo3SAy2X4wGAadOmVQLA888/X/mPf/wjEADOnTvnsG/fvmsAMGvWrMp//etfAfXXP/roo2qRSITExESjSqUSA8Avv/zi/PvvvzvHxMTEAIDBYGCysrLsRo0aVb148eLAWbNm+Y8fP14zZsyYhn5tgSB2Aj0WSmk2gP9HCHFYtWrV1I0bN76WlJTksnDhQvf77ruvx+TjNBqN2L59u3XlypWVlZWVmXWFUQ8JeSr/vNzJAsu9f3g8p1Telm2B9fQ0h3633SYlfkaPHq2veQ1L7QAABm1JREFUqqpiS0tL2R07dshVKhV78eLFTKlUSv39/eNramoYoNbqq7+nuXI89TDMHztfhJA7fr/t7Owarqn/c6CUYt68eaWvvfbabdlm0tPTr+zYsUO+ePFi/5SUFG29RWkLhD07gR4PpVRfXV39SVlZWfjevXv/8uSTT/4cHh5e8fHHH1uqq6u7bVx5eXmYN29edWhoqOL1119fc+nSpf7FxcUPUEoPCkIn0BLus2cXE6n0loBTIpXy7rNn26zEz7lz5+x4noe3tzen0WhEHh4eFqlUSvfs2eNUUlLSZFqj5srx1J/fsmWLGwB89tlnrv369dMDQL9+/fSbN292BYBPPvnELSkpqUWLbOzYsdovv/zSo34vMC8vT1xcXMzm5+eLnZyc+NmzZ1fOmzdPcf78eZvWUhYsO4G7hjoBOQ3gL4QQj6VLl766dOnSmUOHDrV/+umnpbGxsZBKpQ3/xGIxWJYFy7JttgJ5ngfHceA4DmazGSaTCSaTCQaDAYcOHcKWLVsMZWVlZQqFYrHRaNwh5KkUaAv1Xpe29sa8ucQPpRQbNmzIZ1kWM2bMqBw7dmxYXFxcdGxsrCE0NLTJ8jgtlOMx1bVP+vTpE8XzPNm2bdt1ANiwYUPhtGnTQj766CMfd3d3bsuWLfktjfHxxx/XXr582W7AgAFRQK1l+dVXX+VlZWVJ33jjjQCGYcCyLF2/fn1BRz6LxgiJoAXuagghIoZhkv38/Ja4u7uHTZ8+3Xn48OGkXqwsFgtaKjir0+ng6OjYVLsNQimRSGAwGLB7927Lt99+q+N5/pfi4uJ/U0ovd+Z7E7i7EBJB9wyaSwQtiJ3APQMhJNTLy2uBSCT669NPP23/8ssvOwYEBLR4T0tVDyilOH36NFasWFF58uRJjcFg+KC6uvoLSmn3rZ0K9FgEsesZNCd2wp6dwD0DpTRPoVC8VFpaGrxmzZo5AwYMyBo1alRFSkoK2jKpMxgM+PTTTy1RUVEVEydOPLB79+7xCoWit1arXScInYDA3YmwZydwz0EpNQL4AsAXhJB+mZmZb0okkhFz5sxxmjFjhtTFxaXJ+7Kzs7F69WrNDz/8oLdYLP9VqVTrKKWKLh28gIBApyAsYwr8KSCEuDg7O8+QyWQvjxw50um1115z7d+/Pw4ePAi1Ws2vWLFCVVxcXFBWVraE5/mfKaXW7h6zwN1FRkbG9fj4+CqGYYSHajfB8zy5ePGia0JCQq/G5wSxE/hTQWrdMkf6+fm97ezsHKvX6+3MZvM3CoXifUrpvZGjTKBbyMjI+NHHxyfG09NTIwhe18PzPFEqlfKysrIrCQkJjzY+L4idwJ8WQogXgGpKaU13j0Xg7ictLc2LZdnNAOIg+EN0BzyASxzHzUhMTCxvfFIQOwEBAQGBex5h9iEgICAgcM8jiJ2AgICAwD2PIHYCAgICAvc8gtgJCAgICNzzCGInICAgIHDPI4idgICAgMA9jyB2AgICAgL3PILYCdz1EEIWE0IuE0IuEELOE0IG1R0/Qgg5e9N1SYSQI21su8VClAICAncHQiJogbsaQsgQAI8A6E8pNRFCPADcXIXZixAyllK6r3tGKCAg0BMQLDuBux1fABWUUhMAUEorKKUlN51fCeAfjW8ihIgIISsJIal1FuGLLXVCCHEkhBwkhKQTQi4SQsb///bu2DWKIAzD+PMWQkDBgIiFiFqorRgCdnKNtdaCCmLAwtZ/wCRdKsHKwsbCWhAiIunERoI2IilM61WCRUThs3CL9ZRDuHiww/Prdmd2v5nqZWbZ3X2dhaT/yrDT0L0ATiT5mORhkksT7a+Bb0lGE+dvAV+qahlYBm4nOT2lzh5wtaouACNgo/uotKQBMOw0aFX1FVgCVoAx8DTJzYluq/y5ursMXE+yDbwBjgBnppQKsJ7kHfASOA4cm3kCkubCZ3YavO7fc1vAVpL3wA3gca/9VZL7wMXeZQHuVtXmP5a5BhwFlqrqe5JPwMLso5c0D67sNGhJziXpr8jOA7t/6boG3OsdbwJ3khzo7nM2ycEppQ4Dn7ugGwEnZxy6pDlyZaehOwQ8SLII/AB2+LWl+Zuqep5k3Dv1CDgFvO2evY2BK1PqPAGeda8ybAMf9mf4kubB/9lJkprnNqYkqXmGnSSpeYadJKl5hp0kqXmGnSSpeYadJKl5hp0kqXmGnSSpeT8B/P1HDikMHlkAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, axes = plt.subplots(figsize=(5, 5), subplot_kw=dict(projection='radar'))\n", "axes.set_rgrids([0.8, 1.0, 1.2, 1.5])\n", "\n", "data = subDF.loc[baseline, :]\n", "axes.plot(theta, data, 'o-', label='Baseline')\n", "axes.fill(theta, data, alpha=0.25, label='')\n", "\n", "\n", "data = subDF.loc['mw_heavy', :]\n", "axes.plot(theta, data, 'o-', label='MW Heavy')\n", "axes.fill(theta, data, alpha=0.25, label='')\n", "\n", "data = subDF.loc['rolling_exgal_mod2_dust_sdf_0.20', :]\n", "axes.plot(theta, data, 'o-', label='Exgal Heavy')\n", "axes.fill(theta, data, alpha=0.25, label='')\n", "\n", "data = subDF.loc['barebones', :]\n", "axes.plot(theta, data, 'o-', label='Barebones')\n", "axes.fill(theta, data, alpha=0.25, label='')\n", "\n", "\n", "axes.set_varlabels(metric_names)\n", "axes.legend(loc=(1.04,0))" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, axes = plt.subplots(figsize=(5, 5), subplot_kw=dict(projection='radar'))\n", "axes.set_rgrids([0.92, 1.0, 1.05, 1.1])\n", "\n", "data = subDF.loc[baseline, :]\n", "axes.plot(theta, data, 'o-', label='Baseline')\n", "axes.fill(theta, data, alpha=0.25, label='')\n", "\n", "#data = subDF.loc['barebones', :]\n", "#axes.plot(theta, data, 'o-', label='Barebones')\n", "#axes.fill(theta, data, alpha=0.25, label='')\n", "\n", "data = subDF.loc['mw_heavy', :]\n", "axes.plot(theta, data, 'o-', label='MW Heavy')\n", "axes.fill(theta, data, alpha=0.25, label='')\n", "\n", "data = subDF.loc['rolling_exgal_mod2_dust_sdf_0.20', :]\n", "axes.plot(theta, data, 'o-', label='Exgal Heavy')\n", "axes.fill(theta, data, alpha=0.25, label='')\n", "\n", "\n", "axes.set_varlabels(metric_names)\n", "axes.legend(loc=(1.04,0))" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.2" } }, "nbformat": 4, "nbformat_minor": 2 }