{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# afwTables: A Guided Tour\n", "
Owner(s): **Imran Hasan** ([@ih64](https://github.com/LSSTScienceCollaborations/StackClub/issues/new?body=@ih64))\n", "
Updated for DC2 by: Douglas Tucker ([@douglasleetucker](https://github.com/LSSTScienceCollaborations/StackClub/issues/new?body=@douglasleetucker))\n", "
Last Verified to Run: **2021-03-09**\n", "
Verified Stack Release: **21.0.0**\n", "\n", "Catalogs of astronomical objects and their many measurements will be a primary data product that LSST provides. Queries of those catalogs will be the starting point for almost all LSST science analyses. On the way to filling the LSST database with these catalogs, the science pipelines will generate and manipulate a lot of internal tables; the python class that the Stack defines and uses for these tables is called an \"afwTable\". \n", "\n", "### Learning Objectives:\n", "\n", "After working through this tutorial you should be able to: \n", "1. Make a bare bones afw schema and table;\n", "2. Set and get values in a schema and table;\n", "3. Navigate large schemas;\n", "4. Read and write a source detection catalog table;\n", "5. Learn to use source detection catalog methods, and to avoid common pitfalls;\n", "6. Learn to use source match vectors.\n", "\n", "### Logistics\n", "This notebook is intended to be runnable on `lsst-lsp-stable.ncsa.illinois.edu` from a local git clone of https://github.com/LSSTScienceCollaborations/StackClub.\n", "\n", "## Set-up" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The next few cells give you some options for your \"Set-up\" section - you may not need them all." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll need the `stackclub` package to be installed. If you are not developing this package, you can install it using `pip`, like this:\n", "```\n", "pip install git+git://github.com/LSSTScienceCollaborations/StackClub.git#egg=stackclub\n", "```\n", "If you are developing the `stackclub` package (eg by adding modules to it to support the Stack Club tutorial that you are writing, you'll need to make a local, editable installation. In the top level folder of the `StackClub` repo, do:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:48.434765Z", "iopub.status.busy": "2021-04-23T20:35:48.431034Z", "iopub.status.idle": "2021-04-23T20:35:50.297507Z", "shell.execute_reply": "2021-04-23T20:35:50.298720Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "/home/kadrlica/notebooks/.beavis/StackClub/Basics\r\n" ] } ], "source": [ "! cd .. && python setup.py -q develop --user && cd -" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "When editing the `stackclub` package files, we want the latest version to be imported when we re-run the import command. To enable this, we need the %autoreload magic command." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:50.309305Z", "iopub.status.busy": "2021-04-23T20:35:50.307995Z", "iopub.status.idle": "2021-04-23T20:35:50.337931Z", "shell.execute_reply": "2021-04-23T20:35:50.338893Z" } }, "outputs": [], "source": [ "%load_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "You can find the Stack version that this notebook is running by using eups list -s on the terminal command line:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:50.347413Z", "iopub.status.busy": "2021-04-23T20:35:50.346201Z", "iopub.status.idle": "2021-04-23T20:35:52.412095Z", "shell.execute_reply": "2021-04-23T20:35:52.413266Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "nb-kadrlica-r21-0-0\r\n", "lsst_distrib 21.0.0+973e4c9e85 \tcurrent v21_0_0 setup\r\n" ] } ], "source": [ "# What version of the Stack am I using?\n", "! echo $HOSTNAME\n", "! eups list -s | grep lsst_distrib" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "For this tutorial we'll need the following modules:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:52.424726Z", "iopub.status.busy": "2021-04-23T20:35:52.423393Z", "iopub.status.idle": "2021-04-23T20:35:52.784914Z", "shell.execute_reply": "2021-04-23T20:35:52.783699Z" } }, "outputs": [], "source": [ "%matplotlib inline\n", "#%matplotlib ipympl\n", "\n", "import os\n", "import warnings\n", "import numpy as np\n", "import matplotlib as mpl\n", "import matplotlib.pyplot as plt\n", "plt.style.use('seaborn-poster')\n", "from IPython.display import IFrame, display, Markdown\n", "plt.style.use('seaborn-talk')" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:52.791056Z", "iopub.status.busy": "2021-04-23T20:35:52.789801Z", "iopub.status.idle": "2021-04-23T20:35:53.428066Z", "shell.execute_reply": "2021-04-23T20:35:53.426666Z" } }, "outputs": [], "source": [ "plt.style.use('seaborn-talk')\n", "import lsst.daf.persistence as dafPersist\n", "import lsst.daf.base as dafBase\n", "import lsst.geom\n", "import lsst.afw.table as afwTable\n", "from astropy.io import ascii" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Your first table\n", "\n", "To begin, we will make a bare-bones afw table so that we can clearly showcase some important concepts. First we will make the simplest possible table, by hand. While creating tables by hand will not likely be the standard use case, it is useful from a tutorial standpoint, as it will allow us to excercise some concepts one at a time" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.434804Z", "iopub.status.busy": "2021-04-23T20:35:53.433317Z", "iopub.status.idle": "2021-04-23T20:35:53.452341Z", "shell.execute_reply": "2021-04-23T20:35:53.451323Z" }, "slideshow": { "slide_type": "-" } }, "outputs": [], "source": [ "# afw tables need a schema to tell the table how its data are organized\n", "# Lets have a look at a simple schema:\n", "min_schema = afwTable.SourceTable.makeMinimalSchema()" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.457648Z", "iopub.status.busy": "2021-04-23T20:35:53.456446Z", "iopub.status.idle": "2021-04-23T20:35:53.473758Z", "shell.execute_reply": "2021-04-23T20:35:53.474775Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Schema(\n", " (Field['L'](name=\"id\", doc=\"unique ID\"), Key(offset=0, nElements=1)),\n", " (Field['Angle'](name=\"coord_ra\", doc=\"position in ra/dec\"), Key(offset=8, nElements=1)),\n", " (Field['Angle'](name=\"coord_dec\", doc=\"position in ra/dec\"), Key(offset=16, nElements=1)),\n", " (Field['L'](name=\"parent\", doc=\"unique ID of parent source\"), Key(offset=24, nElements=1)),\n", ")\n", "\n" ] } ], "source": [ "# But what is the schema exactly? Printing it out can be informative\n", "print(min_schema)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Our schema contains 4 Fields: one for each celestial coordinate, an id that uniquely defines it, and a 'parent', which lists the id of the source this source was deblended from. We will deal with the parent column in more detail in a few cells, but for now you can ignore it.\n", "\n", "Each field has some accompanying information to go along with it. In addition to its name, we get a helpful docstring describing it. We also get the units that values for this field must have. For example, any value associated with the id key has to be a long integer, and all entries for celestial coordniates have to be instances of an Angle class. We will showcase the Angle class shortly.\n", "\n", "If printing out the schema gives you more information that you want, you can get the names. If the names are informative enough, this might be all you need." ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.480179Z", "iopub.status.busy": "2021-04-23T20:35:53.478979Z", "iopub.status.idle": "2021-04-23T20:35:53.499448Z", "shell.execute_reply": "2021-04-23T20:35:53.500466Z" } }, "outputs": [ { "data": { "text/plain": [ "{'coord_dec', 'coord_ra', 'id', 'parent'}" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "min_schema.getNames()" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.505866Z", "iopub.status.busy": "2021-04-23T20:35:53.504624Z", "iopub.status.idle": "2021-04-23T20:35:53.520283Z", "shell.execute_reply": "2021-04-23T20:35:53.521378Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Schema(\n", " (Field['L'](name=\"id\", doc=\"unique ID\"), Key(offset=0, nElements=1)),\n", " (Field['Angle'](name=\"coord_ra\", doc=\"position in ra/dec\"), Key(offset=8, nElements=1)),\n", " (Field['Angle'](name=\"coord_dec\", doc=\"position in ra/dec\"), Key(offset=16, nElements=1)),\n", " (Field['L'](name=\"parent\", doc=\"unique ID of parent source\"), Key(offset=24, nElements=1)),\n", " (Field['F'](name=\"r_mag\", doc=\"r band flux\", units=\"mag\"), Key(offset=32, nElements=1)),\n", ")\n", "\n" ] } ], "source": [ "# We can also add another field to the schema, using a call pattern like this:\n", "min_schema.addField(\"r_mag\", type=np.float32, doc=\"r band flux\", units=\"mag\")\n", "# Lets make sure the field was added by printing out the schema once more:\n", "print(min_schema)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can also ask for a ordered list of names. In this case where our schema contains only 4 names, there is not a clear advantage. However, we will soon encounter schemas that contain many dozens of names. Sifting through a ordered list of these may be preferable. The ordering here is not alphabetical, but instead mirrors the ordering of these fields in the schema. You can check that is the case by comparing the ordering of output in the next cell to the one above" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.526577Z", "iopub.status.busy": "2021-04-23T20:35:53.525287Z", "iopub.status.idle": "2021-04-23T20:35:53.540896Z", "shell.execute_reply": "2021-04-23T20:35:53.539904Z" } }, "outputs": [ { "data": { "text/plain": [ "['id', 'coord_ra', 'coord_dec', 'parent', 'r_mag']" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "min_schema.getOrderedNames()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "> We pause here to point out some caveats. \n", "1. Schemas are append only. You can add new fields, but you cannot remove them. \n", "2. The units you use have to be understood by astropy. You can find a list of acceptable units at the bottom of this page http://docs.astropy.org/en/stable/units/index.html#module-astropy.units\n", "3. Specific types are allowed. The short and long of it is you may use floats, ints, longs, strings, Angle objects, and arrays. For more details you can go to the bottom of this page http://doxygen.lsst.codes/stack/doxygen/x_masterDoxyDoc/afw_table.html" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now that we have a schema, we can use it to make a table.\n" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.545920Z", "iopub.status.busy": "2021-04-23T20:35:53.544695Z", "iopub.status.idle": "2021-04-23T20:35:53.559334Z", "shell.execute_reply": "2021-04-23T20:35:53.558415Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "our minimal table has 0 rows\n" ] } ], "source": [ "min_table = afwTable.BaseCatalog(min_schema)\n", "# our table is empty, and we can check this by looking at its length\n", "print('our minimal table has {} rows'.format(len(min_table)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we will add some data to our minimal catalog. Catalogs are collections of 'records', which themselves contain data. Therefore, we must first create records, and hand those records over in turn to our Table. Records must adhere to the schema that the Table has, and so we must add data in field by field." ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.563813Z", "iopub.status.busy": "2021-04-23T20:35:53.562697Z", "iopub.status.idle": "2021-04-23T20:35:53.575626Z", "shell.execute_reply": "2021-04-23T20:35:53.576551Z" } }, "outputs": [], "source": [ "# make a new record.\n", "rec = min_table.addNew()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.581967Z", "iopub.status.busy": "2021-04-23T20:35:53.580870Z", "iopub.status.idle": "2021-04-23T20:35:53.613226Z", "shell.execute_reply": "2021-04-23T20:35:53.614432Z" } }, "outputs": [ { "data": { "text/plain": [ "dict_keys(['id', 'coord_ra', 'coord_dec', 'parent', 'r_mag'])" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# grab a hold of the keys for the record. We will use these to add data \n", "field_dict = min_schema.extract('*') #this returns a dictionary of all the fields\n", "field_dict.keys()" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.622748Z", "iopub.status.busy": "2021-04-23T20:35:53.621416Z", "iopub.status.idle": "2021-04-23T20:35:53.643844Z", "shell.execute_reply": "2021-04-23T20:35:53.642645Z" } }, "outputs": [], "source": [ "# access the dictionary one field at a time, and grab each field's key. \n", "# note these are instances of a Key object, and not to be confused with python dictionary keys.\n", "id_key = field_dict['id'].key\n", "ra_key = field_dict['coord_ra'].key\n", "dec_key = field_dict['coord_dec'].key\n", "parent_key = field_dict['parent'].key\n", "r_mag_key = field_dict['r_mag'].key\n", "\n", "#use the keys to add data in our record\n", "rec.set(id_key, 1)\n", "rec.set(r_mag_key, 19.0)\n", "rec.set(ra_key, lsst.geom.Angle(.2, units=lsst.geom.radians))\n", "rec.set(dec_key, lsst.geom.Angle(-3.14, units=lsst.geom.radians))\n", "rec.set(parent_key, 0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice to set the ra and dec, we needed to create `geom.Angle` objects for them. The object contains both the value of the angle, and the units the angle is in. The units keyword is set to radians by default, and all the DM code works on radians internally. To keep consistency with this, it is largely considered good pratice to work in radians too, setting the keyword for clarity. \n", "\n", "If you insisted that the angle be in other units, you can set them using the the units keyword. Other typical choices are degrees, arcminutes, arcseconds. You can learn more about `lsst.geom.Angle` objects [here]( http://doxygen.lsst.codes/stack/doxygen/x_masterDoxyDoc/classlsst_1_1geom_1_1_angle.html)\n", "\n", "Additionally, we set the parent to zero. This means this record refers to the object before any deblending occoured. Lets look at our table now to see how it stands." ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.649306Z", "iopub.status.busy": "2021-04-23T20:35:53.648127Z", "iopub.status.idle": "2021-04-23T20:35:53.670852Z", "shell.execute_reply": "2021-04-23T20:35:53.669679Z" } }, "outputs": [ { "data": { "text/plain": [ "\n", " id coord_ra coord_dec parent r_mag\n", " rad rad mag \n", "--- -------- --------- ------ -----\n", " 1 0.2 -3.14 0 19.0" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "min_table" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will flesh out the parent column a bit more by adding our next record. Notice we can keep using the keys we defined above. Also notice our second record's parent is listed as 1. This means the object 2 was the result of being deblended from object 1, i.e. object 2 is a child object of object 1." ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.677109Z", "iopub.status.busy": "2021-04-23T20:35:53.675920Z", "iopub.status.idle": "2021-04-23T20:35:53.699266Z", "shell.execute_reply": "2021-04-23T20:35:53.698017Z" } }, "outputs": [ { "data": { "text/plain": [ "\n", " id coord_ra coord_dec parent r_mag\n", " rad rad mag \n", "--- -------- --------- ------ -----\n", " 1 0.2 -3.14 0 19.0\n", " 2 3.14 2.0 1 18.5" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rec = min_table.addNew()\n", "rec.set(id_key, 2)\n", "rec.set(r_mag_key, 18.5)\n", "rec.set(ra_key, lsst.geom.Angle(3.14, units=lsst.geom.radians))\n", "rec.set(dec_key, lsst.geom.Angle(2.0, units=lsst.geom.radians))\n", "rec.set(parent_key, 1)\n", "min_table" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "One more caveat to note: in the output in the cell above, the table prints coordinates in radians by default" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.704698Z", "iopub.status.busy": "2021-04-23T20:35:53.703288Z", "iopub.status.idle": "2021-04-23T20:35:53.719736Z", "shell.execute_reply": "2021-04-23T20:35:53.718692Z" } }, "outputs": [], "source": [ "# your turn. add one more record to our table\n", "\n" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.724431Z", "iopub.status.busy": "2021-04-23T20:35:53.723253Z", "iopub.status.idle": "2021-04-23T20:35:53.740031Z", "shell.execute_reply": "2021-04-23T20:35:53.738989Z" } }, "outputs": [ { "data": { "text/plain": [ "\n", "id: 2\n", "coord_ra: 3.14 rad\n", "coord_dec: 2 rad\n", "parent: 1\n", "r_mag: 18.5" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# now that we have multiple records in our table, we can select particular ones\n", "# tables support indexing\n", "min_table[1]" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.744775Z", "iopub.status.busy": "2021-04-23T20:35:53.743578Z", "iopub.status.idle": "2021-04-23T20:35:53.759282Z", "shell.execute_reply": "2021-04-23T20:35:53.758318Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1\n", "2\n" ] } ], "source": [ "# you may iterate over them too\n", "for rec in min_table:\n", " print(rec.get(id_key))" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.763634Z", "iopub.status.busy": "2021-04-23T20:35:53.762532Z", "iopub.status.idle": "2021-04-23T20:35:53.777068Z", "shell.execute_reply": "2021-04-23T20:35:53.778004Z" } }, "outputs": [ { "data": { "text/plain": [ "2" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# you can grab values from particular records by using our schema keys\n", "min_table[1].get(id_key)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Using source catalogs produced by DM\n", "\n", "A more typical use case will be to read in a catalog that is produced by a DM process. We will show how to read in and work with a source catalog produced from the Data Management Stack in the following section. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Data access\n", "If you know the path to your source catalog, there is a quick way to read it in. However, it is often more powerful to use the 'data butler' to fetch data for you. The butler knows about camera geometry, sensor characteristics, where data are located, and so forth. Having this anciliary information on hand is often very useful. For completeness we will demonstrate both ways of reading in a source catalog, with the note that it is largely considered better practice to use the data butler. \n", "\n", "The data butler has its own tutorial(s), and so we will defer further details on it until later. For now, you may think of it as an abstraction that allows you to quickly fetch catalogs for you. The user just needs to point the butler to where to look and what to look for.\n", "\n", "Currently, we have examples from the HSC Twinkles data set (HSC) and from the DESC DC2 data set (DC2). Uncomment the `dataset` you wish to use." ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:53.784135Z", "iopub.status.busy": "2021-04-23T20:35:53.782990Z", "iopub.status.idle": "2021-04-23T20:35:55.397852Z", "shell.execute_reply": "2021-04-23T20:35:55.396495Z" } }, "outputs": [], "source": [ "#dataset='HSC'\n", "dataset='DC2'\n", "\n", "# Temporary \"fix\" so one does not need to restart kernel \n", "# when switching from DC2 to HSC...\n", "# See also: https://lsstc.slack.com/archives/C3UCAEW3D/p1584386779038000\n", "#import lsst.afw.image as afwImage\n", "#print(afwImage.Filter.getNames())\n", "#afwImage.Filter.reset()\n", "import lsst.obs.base as obsBase\n", "obsBase.FilterDefinitionCollection.reset()\n", "#print(afwImage.Filter.getNames())\n", "\n", "\n", "if dataset == 'HSC':\n", " # The HSC RC gen2 repository\n", " \n", " # The direct path to the file we first want to investigate\n", " file_path = '/datasets/hsc/repo/rerun/RC/v20_0_0_rc1/DM-25349-sfm/01327/HSC-Z/output/SRC-0038938-032.fits'\n", "\n", " # The data directory containing some HSC data organized as Butler expects\n", " datadir = \"/datasets/hsc/repo/rerun/RC/v20_0_0_rc1/DM-25349/\" \n", "\n", " # Define a dictionary with the filter, ccd, and visit we wish to view\n", " dataId = {'filter': 'HSC-Z', 'ccd': 32, 'visit': 38938} \n", " \n", " \n", "elif dataset == 'DC2':\n", " # The DC2 calexp gen2 repository\n", "\n", " # The data directory containing some DC2 data organized as Butler expects\n", " datadir = '/datasets/DC2/DR6/Run2.2i/patched/2021-02-10/rerun/run2.2i-calexp-v1/'\n", " \n", " # The direct path to the file we first want to investigate\n", " file_path = datadir + 'src/00512055-i/R20/src_00512055-i-R20-S11-det076.fits'\n", "\n", " # Define a dictionary with the filter, ccd, and visit we wish to view\n", " dataId = {'filter':'i', 'visit': 512055, 'raftName': 'R20', 'detector': 76}\n", " \n", " \n", "else:\n", " msg = \"Unrecognized dataset: %s\"%dataset\n", " raise Exception(msg)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:55.405661Z", "iopub.status.busy": "2021-04-23T20:35:55.404356Z", "iopub.status.idle": "2021-04-23T20:35:55.547318Z", "shell.execute_reply": "2021-04-23T20:35:55.546042Z" } }, "outputs": [], "source": [ "# Accessing the afwTable source catalog by directly pointing to the appropriate file...\n", "source_cat = afwTable.SourceCatalog.readFits(file_path)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:35:55.553940Z", "iopub.status.busy": "2021-04-23T20:35:55.552476Z", "iopub.status.idle": "2021-04-23T20:36:00.392364Z", "shell.execute_reply": "2021-04-23T20:36:00.391009Z" } }, "outputs": [], "source": [ "# here's the way to get the same catalog with a butler: \n", "butler = dafPersist.Butler(datadir)\n", "\n", "# use the dataId and the 'src' to get the source catalog. \n", "source_cat = butler.get('src', **dataId)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can find the path to the file again with the `butler.getURI` function" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:00.399163Z", "iopub.status.busy": "2021-04-23T20:36:00.397837Z", "iopub.status.idle": "2021-04-23T20:36:00.435317Z", "shell.execute_reply": "2021-04-23T20:36:00.436541Z" } }, "outputs": [ { "data": { "text/plain": [ "'/datasets/DC2/DR6/Run2.2i/patched/2021-02-10/rerun/run2.2i-calexp-v1/src/00512055-i/R20/src_00512055-i-R20-S11-det076.fits'" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "butler.getUri('src', **dataId)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A few comments are in order on questions you may be having about the butler, and the previous cell. First, there is no good way to know which `dataId`s exist. That means you have to know ahead of time which `dataId`s it makes sense to use. DM is working hard on fixing this. Second, the string `'src'` refers to a very specific data product in the DM philosophy, which is a catalog that contains _the results of different measurement algorithms on detected sources on an individual CCD image_. We will meet some other catalogs later in the tutorial. For now, lets get to know this `src` catalog." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### afw source catalog schemas" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:00.442617Z", "iopub.status.busy": "2021-04-23T20:36:00.441168Z", "iopub.status.idle": "2021-04-23T20:36:00.473392Z", "shell.execute_reply": "2021-04-23T20:36:00.474502Z" } }, "outputs": [ { "data": { "text/plain": [ "Schema(\n", " (Field['L'](name=\"id\", doc=\"unique ID\"), Key(offset=0, nElements=1)),\n", " (Field['Angle'](name=\"coord_ra\", doc=\"position in ra/dec\"), Key(offset=8, nElements=1)),\n", " (Field['Angle'](name=\"coord_dec\", doc=\"position in ra/dec\"), Key(offset=16, nElements=1)),\n", " (Field['L'](name=\"parent\", doc=\"unique ID of parent source\"), Key(offset=24, nElements=1)),\n", " (Field['Flag'](name=\"calib_detected\", doc=\"Source was detected as an icSource\"), Key['Flag'](offset=32, bit=0)),\n", " (Field['Flag'](name=\"calib_psf_candidate\", doc=\"Flag set if the source was a candidate for PSF determination, as determined by the star selector.\"), Key['Flag'](offset=32, bit=1)),\n", " (Field['Flag'](name=\"calib_psf_used\", doc=\"Flag set if the source was actually used for PSF determination, as determined by the\"), Key['Flag'](offset=32, bit=2)),\n", " (Field['Flag'](name=\"calib_psf_reserved\", doc=\"set if source was reserved from PSF determination\"), Key['Flag'](offset=32, bit=3)),\n", " (Field['I'](name=\"deblend_nChild\", doc=\"Number of children this object has (defaults to 0)\"), Key(offset=40, nElements=1)),\n", " (Field['Flag'](name=\"deblend_deblendedAsPsf\", doc=\"Deblender thought this source looked like a PSF\"), Key['Flag'](offset=32, bit=4)),\n", " (Field['D'](name=\"deblend_psfCenter_x\", doc=\"If deblended-as-psf, the PSF centroid\", units=\"pixel\"), Key(offset=48, nElements=1)),\n", " (Field['D'](name=\"deblend_psfCenter_y\", doc=\"If deblended-as-psf, the PSF centroid\", units=\"pixel\"), Key(offset=56, nElements=1)),\n", " (Field['D'](name=\"deblend_psf_instFlux\", doc=\"If deblended-as-psf, the instrumental PSF flux\", units=\"count\"), Key(offset=64, nElements=1)),\n", " (Field['Flag'](name=\"deblend_tooManyPeaks\", doc=\"Source had too many peaks; only the brightest were included\"), Key['Flag'](offset=32, bit=5)),\n", " (Field['Flag'](name=\"deblend_parentTooBig\", doc=\"Parent footprint covered too many pixels\"), Key['Flag'](offset=32, bit=6)),\n", " (Field['Flag'](name=\"deblend_masked\", doc=\"Parent footprint was predominantly masked\"), Key['Flag'](offset=32, bit=7)),\n", " (Field['Flag'](name=\"deblend_skipped\", doc=\"Deblender skipped this source\"), Key['Flag'](offset=32, bit=8)),\n", " (Field['Flag'](name=\"deblend_rampedTemplate\", doc=\"This source was near an image edge and the deblender used \"ramp\" edge-handling.\"), Key['Flag'](offset=32, bit=9)),\n", " (Field['Flag'](name=\"deblend_patchedTemplate\", doc=\"This source was near an image edge and the deblender used \"patched\" edge-handling.\"), Key['Flag'](offset=32, bit=10)),\n", " (Field['Flag'](name=\"deblend_hasStrayFlux\", doc=\"This source was assigned some stray flux\"), Key['Flag'](offset=32, bit=11)),\n", " (Field['D'](name=\"base_NaiveCentroid_x\", doc=\"centroid from Naive Centroid algorithm\", units=\"pixel\"), Key(offset=72, nElements=1)),\n", " (Field['D'](name=\"base_NaiveCentroid_y\", doc=\"centroid from Naive Centroid algorithm\", units=\"pixel\"), Key(offset=80, nElements=1)),\n", " (Field['Flag'](name=\"base_NaiveCentroid_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=32, bit=12)),\n", " (Field['Flag'](name=\"base_NaiveCentroid_flag_noCounts\", doc=\"Object to be centroided has no counts\"), Key['Flag'](offset=32, bit=13)),\n", " (Field['Flag'](name=\"base_NaiveCentroid_flag_edge\", doc=\"Object too close to edge\"), Key['Flag'](offset=32, bit=14)),\n", " (Field['Flag'](name=\"base_NaiveCentroid_flag_resetToPeak\", doc=\"set if CentroidChecker reset the centroid\"), Key['Flag'](offset=32, bit=15)),\n", " (Field['D'](name=\"base_SdssCentroid_x\", doc=\"centroid from Sdss Centroid algorithm\", units=\"pixel\"), Key(offset=88, nElements=1)),\n", " (Field['D'](name=\"base_SdssCentroid_y\", doc=\"centroid from Sdss Centroid algorithm\", units=\"pixel\"), Key(offset=96, nElements=1)),\n", " (Field['F'](name=\"base_SdssCentroid_xErr\", doc=\"1-sigma uncertainty on x position\", units=\"pixel\"), Key(offset=104, nElements=1)),\n", " (Field['F'](name=\"base_SdssCentroid_yErr\", doc=\"1-sigma uncertainty on y position\", units=\"pixel\"), Key(offset=108, nElements=1)),\n", " (Field['Flag'](name=\"base_SdssCentroid_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=32, bit=16)),\n", " (Field['Flag'](name=\"base_SdssCentroid_flag_edge\", doc=\"Object too close to edge\"), Key['Flag'](offset=32, bit=17)),\n", " (Field['Flag'](name=\"base_SdssCentroid_flag_noSecondDerivative\", doc=\"Vanishing second derivative\"), Key['Flag'](offset=32, bit=18)),\n", " (Field['Flag'](name=\"base_SdssCentroid_flag_almostNoSecondDerivative\", doc=\"Almost vanishing second derivative\"), Key['Flag'](offset=32, bit=19)),\n", " (Field['Flag'](name=\"base_SdssCentroid_flag_notAtMaximum\", doc=\"Object is not at a maximum\"), Key['Flag'](offset=32, bit=20)),\n", " (Field['Flag'](name=\"base_SdssCentroid_flag_resetToPeak\", doc=\"set if CentroidChecker reset the centroid\"), Key['Flag'](offset=32, bit=21)),\n", " (Field['Flag'](name=\"base_SdssCentroid_flag_badError\", doc=\"Error on x and/or y position is NaN\"), Key['Flag'](offset=32, bit=22)),\n", " (Field['D'](name=\"base_Blendedness_old\", doc=\"Blendedness from dot products: (child.dot(parent)/child.dot(child) - 1)\"), Key(offset=112, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_raw\", doc=\"Measure of how much the flux is affected by neighbors: (1 - child_instFlux/parent_instFlux). Operates on the \"raw\" pixel values.\"), Key(offset=120, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_raw_child_instFlux\", doc=\"Instrumental flux of the child, measured with a Gaussian weight matched to the child. Operates on the \"raw\" pixel values.\", units=\"count\"), Key(offset=128, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_raw_parent_instFlux\", doc=\"Instrumental flux of the parent, measured with a Gaussian weight matched to the child. Operates on the \"raw\" pixel values.\", units=\"count\"), Key(offset=136, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_abs\", doc=\"Measure of how much the flux is affected by neighbors: (1 - child_instFlux/parent_instFlux). Operates on the absolute value of the pixels to try to obtain a \"de-noised\" value. See section 4.9.11 of Bosch et al. 2018, PASJ, 70, S5 for details.\"), Key(offset=144, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_abs_child_instFlux\", doc=\"Instrumental flux of the child, measured with a Gaussian weight matched to the child. Operates on the absolute value of the pixels to try to obtain a \"de-noised\" value. See section 4.9.11 of Bosch et al. 2018, PASJ, 70, S5 for details.\", units=\"count\"), Key(offset=152, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_abs_parent_instFlux\", doc=\"Instrumental flux of the parent, measured with a Gaussian weight matched to the child. Operates on the absolute value of the pixels to try to obtain a \"de-noised\" value. See section 4.9.11 of Bosch et al. 2018, PASJ, 70, S5 for details.\", units=\"count\"), Key(offset=160, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_raw_child_xx\", doc=\"Shape of the child, measured with a Gaussian weight matched to the child. Operates on the \"raw\" pixel values.\", units=\"pixel^2\"), Key(offset=168, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_raw_child_yy\", doc=\"Shape of the child, measured with a Gaussian weight matched to the child. Operates on the \"raw\" pixel values.\", units=\"pixel^2\"), Key(offset=176, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_raw_child_xy\", doc=\"Shape of the child, measured with a Gaussian weight matched to the child. Operates on the \"raw\" pixel values.\", units=\"pixel^2\"), Key(offset=184, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_raw_parent_xx\", doc=\"Shape of the parent, measured with a Gaussian weight matched to the child. Operates on the \"raw\" pixel values.\", units=\"pixel^2\"), Key(offset=192, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_raw_parent_yy\", doc=\"Shape of the parent, measured with a Gaussian weight matched to the child. Operates on the \"raw\" pixel values.\", units=\"pixel^2\"), Key(offset=200, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_raw_parent_xy\", doc=\"Shape of the parent, measured with a Gaussian weight matched to the child. Operates on the \"raw\" pixel values.\", units=\"pixel^2\"), Key(offset=208, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_abs_child_xx\", doc=\"Shape of the child, measured with a Gaussian weight matched to the child. Operates on the absolute value of the pixels to try to obtain a \"de-noised\" value. See section 4.9.11 of Bosch et al. 2018, PASJ, 70, S5 for details.\", units=\"pixel^2\"), Key(offset=216, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_abs_child_yy\", doc=\"Shape of the child, measured with a Gaussian weight matched to the child. Operates on the absolute value of the pixels to try to obtain a \"de-noised\" value. See section 4.9.11 of Bosch et al. 2018, PASJ, 70, S5 for details.\", units=\"pixel^2\"), Key(offset=224, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_abs_child_xy\", doc=\"Shape of the child, measured with a Gaussian weight matched to the child. Operates on the absolute value of the pixels to try to obtain a \"de-noised\" value. See section 4.9.11 of Bosch et al. 2018, PASJ, 70, S5 for details.\", units=\"pixel^2\"), Key(offset=232, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_abs_parent_xx\", doc=\"Shape of the parent, measured with a Gaussian weight matched to the child. Operates on the absolute value of the pixels to try to obtain a \"de-noised\" value. See section 4.9.11 of Bosch et al. 2018, PASJ, 70, S5 for details.\", units=\"pixel^2\"), Key(offset=240, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_abs_parent_yy\", doc=\"Shape of the parent, measured with a Gaussian weight matched to the child. Operates on the absolute value of the pixels to try to obtain a \"de-noised\" value. See section 4.9.11 of Bosch et al. 2018, PASJ, 70, S5 for details.\", units=\"pixel^2\"), Key(offset=248, nElements=1)),\n", " (Field['D'](name=\"base_Blendedness_abs_parent_xy\", doc=\"Shape of the parent, measured with a Gaussian weight matched to the child. Operates on the absolute value of the pixels to try to obtain a \"de-noised\" value. See section 4.9.11 of Bosch et al. 2018, PASJ, 70, S5 for details.\", units=\"pixel^2\"), Key(offset=256, nElements=1)),\n", " (Field['Flag'](name=\"base_Blendedness_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=32, bit=23)),\n", " (Field['Flag'](name=\"base_Blendedness_flag_noCentroid\", doc=\"Object has no centroid\"), Key['Flag'](offset=32, bit=24)),\n", " (Field['Flag'](name=\"base_Blendedness_flag_noShape\", doc=\"Object has no shape\"), Key['Flag'](offset=32, bit=25)),\n", " (Field['D'](name=\"base_FPPosition_x\", doc=\"Position on the focal plane\", units=\"mm\"), Key(offset=264, nElements=1)),\n", " (Field['D'](name=\"base_FPPosition_y\", doc=\"Position on the focal plane\", units=\"mm\"), Key(offset=272, nElements=1)),\n", " (Field['Flag'](name=\"base_FPPosition_flag\", doc=\"Set to True for any fatal failure\"), Key['Flag'](offset=32, bit=26)),\n", " (Field['Flag'](name=\"base_FPPosition_missingDetector_flag\", doc=\"Set to True if detector object is missing\"), Key['Flag'](offset=32, bit=27)),\n", " (Field['D'](name=\"base_Jacobian_value\", doc=\"Jacobian correction\"), Key(offset=280, nElements=1)),\n", " (Field['Flag'](name=\"base_Jacobian_flag\", doc=\"Set to 1 for any fatal failure\"), Key['Flag'](offset=32, bit=28)),\n", " (Field['D'](name=\"base_SdssShape_xx\", doc=\"elliptical Gaussian adaptive moments\", units=\"pixel^2\"), Key(offset=288, nElements=1)),\n", " (Field['D'](name=\"base_SdssShape_yy\", doc=\"elliptical Gaussian adaptive moments\", units=\"pixel^2\"), Key(offset=296, nElements=1)),\n", " (Field['D'](name=\"base_SdssShape_xy\", doc=\"elliptical Gaussian adaptive moments\", units=\"pixel^2\"), Key(offset=304, nElements=1)),\n", " (Field['F'](name=\"base_SdssShape_xxErr\", doc=\"Standard deviation of xx moment\", units=\"pixel^2\"), Key(offset=312, nElements=1)),\n", " (Field['F'](name=\"base_SdssShape_yyErr\", doc=\"Standard deviation of yy moment\", units=\"pixel^2\"), Key(offset=316, nElements=1)),\n", " (Field['F'](name=\"base_SdssShape_xyErr\", doc=\"Standard deviation of xy moment\", units=\"pixel^2\"), Key(offset=320, nElements=1)),\n", " (Field['D'](name=\"base_SdssShape_x\", doc=\"elliptical Gaussian adaptive moments\", units=\"pixel\"), Key(offset=328, nElements=1)),\n", " (Field['D'](name=\"base_SdssShape_y\", doc=\"elliptical Gaussian adaptive moments\", units=\"pixel\"), Key(offset=336, nElements=1)),\n", " (Field['D'](name=\"base_SdssShape_instFlux\", doc=\"elliptical Gaussian adaptive moments\", units=\"count\"), Key(offset=344, nElements=1)),\n", " (Field['D'](name=\"base_SdssShape_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=352, nElements=1)),\n", " (Field['D'](name=\"base_SdssShape_psf_xx\", doc=\"adaptive moments of the PSF model at the object position\", units=\"pixel^2\"), Key(offset=360, nElements=1)),\n", " (Field['D'](name=\"base_SdssShape_psf_yy\", doc=\"adaptive moments of the PSF model at the object position\", units=\"pixel^2\"), Key(offset=368, nElements=1)),\n", " (Field['D'](name=\"base_SdssShape_psf_xy\", doc=\"adaptive moments of the PSF model at the object position\", units=\"pixel^2\"), Key(offset=376, nElements=1)),\n", " (Field['F'](name=\"base_SdssShape_instFlux_xx_Cov\", doc=\"uncertainty covariance between base_SdssShape_instFlux and base_SdssShape_xx\", units=\"count*pixel^2\"), Key(offset=384, nElements=1)),\n", " (Field['F'](name=\"base_SdssShape_instFlux_yy_Cov\", doc=\"uncertainty covariance between base_SdssShape_instFlux and base_SdssShape_yy\", units=\"count*pixel^2\"), Key(offset=388, nElements=1)),\n", " (Field['F'](name=\"base_SdssShape_instFlux_xy_Cov\", doc=\"uncertainty covariance between base_SdssShape_instFlux and base_SdssShape_xy\", units=\"count*pixel^2\"), Key(offset=392, nElements=1)),\n", " (Field['Flag'](name=\"base_SdssShape_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=32, bit=29)),\n", " (Field['Flag'](name=\"base_SdssShape_flag_unweightedBad\", doc=\"Both weighted and unweighted moments were invalid\"), Key['Flag'](offset=32, bit=30)),\n", " (Field['Flag'](name=\"base_SdssShape_flag_unweighted\", doc=\"Weighted moments converged to an invalid value; using unweighted moments\"), Key['Flag'](offset=32, bit=31)),\n", " (Field['Flag'](name=\"base_SdssShape_flag_shift\", doc=\"centroid shifted by more than the maximum allowed amount\"), Key['Flag'](offset=32, bit=32)),\n", " (Field['Flag'](name=\"base_SdssShape_flag_maxIter\", doc=\"Too many iterations in adaptive moments\"), Key['Flag'](offset=32, bit=33)),\n", " (Field['Flag'](name=\"base_SdssShape_flag_psf\", doc=\"Failure in measuring PSF model shape\"), Key['Flag'](offset=32, bit=34)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmPsfMoments_x\", doc=\"HSM Centroid\", units=\"pixel\"), Key(offset=400, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmPsfMoments_y\", doc=\"HSM Centroid\", units=\"pixel\"), Key(offset=408, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmPsfMoments_xx\", doc=\"HSM moments\", units=\"pixel^2\"), Key(offset=416, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmPsfMoments_yy\", doc=\"HSM moments\", units=\"pixel^2\"), Key(offset=424, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmPsfMoments_xy\", doc=\"HSM moments\", units=\"pixel^2\"), Key(offset=432, nElements=1)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmPsfMoments_flag\", doc=\"general failure flag, set if anything went wrong\"), Key['Flag'](offset=32, bit=35)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmPsfMoments_flag_no_pixels\", doc=\"no pixels to measure\"), Key['Flag'](offset=32, bit=36)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmPsfMoments_flag_not_contained\", doc=\"center not contained in footprint bounding box\"), Key['Flag'](offset=32, bit=37)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmPsfMoments_flag_parent_source\", doc=\"parent source, ignored\"), Key['Flag'](offset=32, bit=38)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmShapeRegauss_e1\", doc=\"PSF-corrected shear using Hirata & Seljak (2003) ''regaussianization\"), Key(offset=440, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmShapeRegauss_e2\", doc=\"PSF-corrected shear using Hirata & Seljak (2003) ''regaussianization\"), Key(offset=448, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmShapeRegauss_sigma\", doc=\"PSF-corrected shear using Hirata & Seljak (2003) ''regaussianization\"), Key(offset=456, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmShapeRegauss_resolution\", doc=\"resolution factor (0=unresolved, 1=resolved)\"), Key(offset=464, nElements=1)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmShapeRegauss_flag\", doc=\"general failure flag, set if anything went wrong\"), Key['Flag'](offset=32, bit=39)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmShapeRegauss_flag_no_pixels\", doc=\"no pixels to measure\"), Key['Flag'](offset=32, bit=40)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmShapeRegauss_flag_not_contained\", doc=\"center not contained in footprint bounding box\"), Key['Flag'](offset=32, bit=41)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmShapeRegauss_flag_parent_source\", doc=\"parent source, ignored\"), Key['Flag'](offset=32, bit=42)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmShapeRegauss_flag_galsim\", doc=\"GalSim failure\"), Key['Flag'](offset=32, bit=43)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmSourceMoments_x\", doc=\"HSM Centroid\", units=\"pixel\"), Key(offset=472, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmSourceMoments_y\", doc=\"HSM Centroid\", units=\"pixel\"), Key(offset=480, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmSourceMoments_xx\", doc=\"HSM moments\", units=\"pixel^2\"), Key(offset=488, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmSourceMoments_yy\", doc=\"HSM moments\", units=\"pixel^2\"), Key(offset=496, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmSourceMoments_xy\", doc=\"HSM moments\", units=\"pixel^2\"), Key(offset=504, nElements=1)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmSourceMoments_flag\", doc=\"general failure flag, set if anything went wrong\"), Key['Flag'](offset=32, bit=44)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmSourceMoments_flag_no_pixels\", doc=\"no pixels to measure\"), Key['Flag'](offset=32, bit=45)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmSourceMoments_flag_not_contained\", doc=\"center not contained in footprint bounding box\"), Key['Flag'](offset=32, bit=46)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmSourceMoments_flag_parent_source\", doc=\"parent source, ignored\"), Key['Flag'](offset=32, bit=47)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmSourceMomentsRound_x\", doc=\"HSM Centroid\", units=\"pixel\"), Key(offset=512, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmSourceMomentsRound_y\", doc=\"HSM Centroid\", units=\"pixel\"), Key(offset=520, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmSourceMomentsRound_xx\", doc=\"HSM moments\", units=\"pixel^2\"), Key(offset=528, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmSourceMomentsRound_yy\", doc=\"HSM moments\", units=\"pixel^2\"), Key(offset=536, nElements=1)),\n", " (Field['D'](name=\"ext_shapeHSM_HsmSourceMomentsRound_xy\", doc=\"HSM moments\", units=\"pixel^2\"), Key(offset=544, nElements=1)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmSourceMomentsRound_flag\", doc=\"general failure flag, set if anything went wrong\"), Key['Flag'](offset=32, bit=48)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmSourceMomentsRound_flag_no_pixels\", doc=\"no pixels to measure\"), Key['Flag'](offset=32, bit=49)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmSourceMomentsRound_flag_not_contained\", doc=\"center not contained in footprint bounding box\"), Key['Flag'](offset=32, bit=50)),\n", " (Field['Flag'](name=\"ext_shapeHSM_HsmSourceMomentsRound_flag_parent_source\", doc=\"parent source, ignored\"), Key['Flag'](offset=32, bit=51)),\n", " (Field['F'](name=\"ext_shapeHSM_HsmSourceMomentsRound_Flux\", doc=\"HSM flux\"), Key(offset=552, nElements=1)),\n", " (Field['D'](name=\"base_CircularApertureFlux_3_0_instFlux\", doc=\"instFlux within 3.000000-pixel aperture\", units=\"count\"), Key(offset=560, nElements=1)),\n", " (Field['D'](name=\"base_CircularApertureFlux_3_0_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=568, nElements=1)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_3_0_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=32, bit=52)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_3_0_flag_apertureTruncated\", doc=\"aperture did not fit within measurement image\"), Key['Flag'](offset=32, bit=53)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_3_0_flag_sincCoeffsTruncated\", doc=\"full sinc coefficient image did not fit within measurement image\"), Key['Flag'](offset=32, bit=54)),\n", " (Field['D'](name=\"base_CircularApertureFlux_4_5_instFlux\", doc=\"instFlux within 4.500000-pixel aperture\", units=\"count\"), Key(offset=576, nElements=1)),\n", " (Field['D'](name=\"base_CircularApertureFlux_4_5_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=584, nElements=1)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_4_5_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=32, bit=55)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_4_5_flag_apertureTruncated\", doc=\"aperture did not fit within measurement image\"), Key['Flag'](offset=32, bit=56)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_4_5_flag_sincCoeffsTruncated\", doc=\"full sinc coefficient image did not fit within measurement image\"), Key['Flag'](offset=32, bit=57)),\n", " (Field['D'](name=\"base_CircularApertureFlux_6_0_instFlux\", doc=\"instFlux within 6.000000-pixel aperture\", units=\"count\"), Key(offset=592, nElements=1)),\n", " (Field['D'](name=\"base_CircularApertureFlux_6_0_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=600, nElements=1)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_6_0_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=32, bit=58)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_6_0_flag_apertureTruncated\", doc=\"aperture did not fit within measurement image\"), Key['Flag'](offset=32, bit=59)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_6_0_flag_sincCoeffsTruncated\", doc=\"full sinc coefficient image did not fit within measurement image\"), Key['Flag'](offset=32, bit=60)),\n", " (Field['D'](name=\"base_CircularApertureFlux_9_0_instFlux\", doc=\"instFlux within 9.000000-pixel aperture\", units=\"count\"), Key(offset=608, nElements=1)),\n", " (Field['D'](name=\"base_CircularApertureFlux_9_0_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=616, nElements=1)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_9_0_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=32, bit=61)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_9_0_flag_apertureTruncated\", doc=\"aperture did not fit within measurement image\"), Key['Flag'](offset=32, bit=62)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_9_0_flag_sincCoeffsTruncated\", doc=\"full sinc coefficient image did not fit within measurement image\"), Key['Flag'](offset=32, bit=63)),\n", " (Field['D'](name=\"base_CircularApertureFlux_12_0_instFlux\", doc=\"instFlux within 12.000000-pixel aperture\", units=\"count\"), Key(offset=624, nElements=1)),\n", " (Field['D'](name=\"base_CircularApertureFlux_12_0_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=632, nElements=1)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_12_0_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=640, bit=0)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_12_0_flag_apertureTruncated\", doc=\"aperture did not fit within measurement image\"), Key['Flag'](offset=640, bit=1)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_12_0_flag_sincCoeffsTruncated\", doc=\"full sinc coefficient image did not fit within measurement image\"), Key['Flag'](offset=640, bit=2)),\n", " (Field['D'](name=\"base_CircularApertureFlux_17_0_instFlux\", doc=\"instFlux within 17.000000-pixel aperture\", units=\"count\"), Key(offset=648, nElements=1)),\n", " (Field['D'](name=\"base_CircularApertureFlux_17_0_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=656, nElements=1)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_17_0_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=640, bit=3)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_17_0_flag_apertureTruncated\", doc=\"aperture did not fit within measurement image\"), Key['Flag'](offset=640, bit=4)),\n", " (Field['D'](name=\"base_CircularApertureFlux_25_0_instFlux\", doc=\"instFlux within 25.000000-pixel aperture\", units=\"count\"), Key(offset=664, nElements=1)),\n", " (Field['D'](name=\"base_CircularApertureFlux_25_0_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=672, nElements=1)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_25_0_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=640, bit=5)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_25_0_flag_apertureTruncated\", doc=\"aperture did not fit within measurement image\"), Key['Flag'](offset=640, bit=6)),\n", " (Field['D'](name=\"base_CircularApertureFlux_35_0_instFlux\", doc=\"instFlux within 35.000000-pixel aperture\", units=\"count\"), Key(offset=680, nElements=1)),\n", " (Field['D'](name=\"base_CircularApertureFlux_35_0_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=688, nElements=1)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_35_0_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=640, bit=7)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_35_0_flag_apertureTruncated\", doc=\"aperture did not fit within measurement image\"), Key['Flag'](offset=640, bit=8)),\n", " (Field['D'](name=\"base_CircularApertureFlux_50_0_instFlux\", doc=\"instFlux within 50.000000-pixel aperture\", units=\"count\"), Key(offset=696, nElements=1)),\n", " (Field['D'](name=\"base_CircularApertureFlux_50_0_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=704, nElements=1)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_50_0_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=640, bit=9)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_50_0_flag_apertureTruncated\", doc=\"aperture did not fit within measurement image\"), Key['Flag'](offset=640, bit=10)),\n", " (Field['D'](name=\"base_CircularApertureFlux_70_0_instFlux\", doc=\"instFlux within 70.000000-pixel aperture\", units=\"count\"), Key(offset=712, nElements=1)),\n", " (Field['D'](name=\"base_CircularApertureFlux_70_0_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=720, nElements=1)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_70_0_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=640, bit=11)),\n", " (Field['Flag'](name=\"base_CircularApertureFlux_70_0_flag_apertureTruncated\", doc=\"aperture did not fit within measurement image\"), Key['Flag'](offset=640, bit=12)),\n", " (Field['D'](name=\"base_GaussianFlux_instFlux\", doc=\"instFlux from Gaussian Flux algorithm\", units=\"count\"), Key(offset=728, nElements=1)),\n", " (Field['D'](name=\"base_GaussianFlux_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=736, nElements=1)),\n", " (Field['Flag'](name=\"base_GaussianFlux_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=640, bit=13)),\n", " (Field['D'](name=\"base_LocalBackground_instFlux\", doc=\"background in annulus around source\", units=\"count\"), Key(offset=744, nElements=1)),\n", " (Field['D'](name=\"base_LocalBackground_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=752, nElements=1)),\n", " (Field['Flag'](name=\"base_LocalBackground_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=640, bit=14)),\n", " (Field['Flag'](name=\"base_LocalBackground_flag_noGoodPixels\", doc=\"no good pixels in the annulus\"), Key['Flag'](offset=640, bit=15)),\n", " (Field['Flag'](name=\"base_LocalBackground_flag_noPsf\", doc=\"no PSF provided\"), Key['Flag'](offset=640, bit=16)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag\", doc=\"General failure flag, set if anything went wrong\"), Key['Flag'](offset=640, bit=17)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag_offimage\", doc=\"Source center is off image\"), Key['Flag'](offset=640, bit=18)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag_edge\", doc=\"Source is outside usable exposure region (masked EDGE or NO_DATA)\"), Key['Flag'](offset=640, bit=19)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag_interpolated\", doc=\"Interpolated pixel in the Source footprint\"), Key['Flag'](offset=640, bit=20)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag_saturated\", doc=\"Saturated pixel in the Source footprint\"), Key['Flag'](offset=640, bit=21)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag_cr\", doc=\"Cosmic ray in the Source footprint\"), Key['Flag'](offset=640, bit=22)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag_bad\", doc=\"Bad pixel in the Source footprint\"), Key['Flag'](offset=640, bit=23)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag_suspect\", doc=\"Source''s footprint includes suspect pixels\"), Key['Flag'](offset=640, bit=24)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag_interpolatedCenter\", doc=\"Interpolated pixel in the Source center\"), Key['Flag'](offset=640, bit=25)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag_saturatedCenter\", doc=\"Saturated pixel in the Source center\"), Key['Flag'](offset=640, bit=26)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag_crCenter\", doc=\"Cosmic ray in the Source center\"), Key['Flag'](offset=640, bit=27)),\n", " (Field['Flag'](name=\"base_PixelFlags_flag_suspectCenter\", doc=\"Source''s center is close to suspect pixels\"), Key['Flag'](offset=640, bit=28)),\n", " (Field['D'](name=\"base_PsfFlux_instFlux\", doc=\"instFlux derived from linear least-squares fit of PSF model\", units=\"count\"), Key(offset=760, nElements=1)),\n", " (Field['D'](name=\"base_PsfFlux_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=768, nElements=1)),\n", " (Field['F'](name=\"base_PsfFlux_area\", doc=\"effective area of PSF\", units=\"pixel\"), Key(offset=776, nElements=1)),\n", " (Field['Flag'](name=\"base_PsfFlux_flag\", doc=\"General Failure Flag\"), Key['Flag'](offset=640, bit=29)),\n", " (Field['Flag'](name=\"base_PsfFlux_flag_noGoodPixels\", doc=\"not enough non-rejected pixels in data to attempt the fit\"), Key['Flag'](offset=640, bit=30)),\n", " (Field['Flag'](name=\"base_PsfFlux_flag_edge\", doc=\"object was too close to the edge of the image to use the full PSF model\"), Key['Flag'](offset=640, bit=31)),\n", " (Field['Flag'](name=\"base_Variance_flag\", doc=\"Set for any fatal failure\"), Key['Flag'](offset=640, bit=32)),\n", " (Field['D'](name=\"base_Variance_value\", doc=\"Variance at object position\"), Key(offset=784, nElements=1)),\n", " (Field['Flag'](name=\"base_Variance_flag_emptyFootprint\", doc=\"Set to True when the footprint has no usable pixels\"), Key['Flag'](offset=640, bit=33)),\n", " (Field['D'](name=\"ext_photometryKron_KronFlux_instFlux\", doc=\"flux from Kron Flux algorithm\", units=\"count\"), Key(offset=792, nElements=1)),\n", " (Field['D'](name=\"ext_photometryKron_KronFlux_instFluxErr\", doc=\"1-sigma instFlux uncertainty\", units=\"count\"), Key(offset=800, nElements=1)),\n", " (Field['F'](name=\"ext_photometryKron_KronFlux_radius\", doc=\"Kron radius (sqrt(a*b))\"), Key(offset=808, nElements=1)),\n", " (Field['F'](name=\"ext_photometryKron_KronFlux_radius_for_radius\", doc=\"radius used to estimate (sqrt(a*b))\"), Key(offset=812, nElements=1)),\n", " (Field['F'](name=\"ext_photometryKron_KronFlux_psf_radius\", doc=\"Radius of PSF\"), Key(offset=816, nElements=1)),\n", " (Field['Flag'](name=\"ext_photometryKron_KronFlux_flag\", doc=\"general failure flag, set if anything went wrong\"), Key['Flag'](offset=640, bit=34)),\n", " (Field['Flag'](name=\"ext_photometryKron_KronFlux_flag_edge\", doc=\"bad measurement due to image edge\"), Key['Flag'](offset=640, bit=35)),\n", " (Field['Flag'](name=\"ext_photometryKron_KronFlux_flag_bad_shape_no_psf\", doc=\"bad shape and no PSF\"), Key['Flag'](offset=640, bit=36)),\n", " (Field['Flag'](name=\"ext_photometryKron_KronFlux_flag_no_minimum_radius\", doc=\"minimum radius could not enforced: no minimum value or PSF\"), Key['Flag'](offset=640, bit=37)),\n", " (Field['Flag'](name=\"ext_photometryKron_KronFlux_flag_no_fallback_radius\", doc=\"no minimum radius and no PSF provided\"), Key['Flag'](offset=640, bit=38)),\n", " (Field['Flag'](name=\"ext_photometryKron_KronFlux_flag_bad_radius\", doc=\"bad Kron radius\"), Key['Flag'](offset=640, bit=39)),\n", " (Field['Flag'](name=\"ext_photometryKron_KronFlux_flag_used_minimum_radius\", doc=\"used the minimum radius for the Kron aperture\"), Key['Flag'](offset=640, bit=40)),\n", " (Field['Flag'](name=\"ext_photometryKron_KronFlux_flag_used_psf_radius\", doc=\"used the PSF Kron radius for the Kron aperture\"), Key['Flag'](offset=640, bit=41)),\n", " (Field['Flag'](name=\"ext_photometryKron_KronFlux_flag_small_radius\", doc=\"measured Kron radius was smaller than that of the PSF\"), Key['Flag'](offset=640, bit=42)),\n", " (Field['Flag'](name=\"ext_photometryKron_KronFlux_flag_bad_shape\", doc=\"shape for measuring Kron radius is bad; used PSF shape\"), Key['Flag'](offset=640, bit=43)),\n", " (Field['D'](name=\"base_GaussianFlux_apCorr\", doc=\"aperture correction applied to base_GaussianFlux\"), Key(offset=824, nElements=1)),\n", " (Field['D'](name=\"base_GaussianFlux_apCorrErr\", doc=\"standard deviation of aperture correction applied to base_GaussianFlux\"), Key(offset=832, nElements=1)),\n", " (Field['Flag'](name=\"base_GaussianFlux_flag_apCorr\", doc=\"set if unable to aperture correct base_GaussianFlux\"), Key['Flag'](offset=640, bit=44)),\n", " (Field['D'](name=\"base_PsfFlux_apCorr\", doc=\"aperture correction applied to base_PsfFlux\"), Key(offset=840, nElements=1)),\n", " (Field['D'](name=\"base_PsfFlux_apCorrErr\", doc=\"standard deviation of aperture correction applied to base_PsfFlux\"), Key(offset=848, nElements=1)),\n", " (Field['Flag'](name=\"base_PsfFlux_flag_apCorr\", doc=\"set if unable to aperture correct base_PsfFlux\"), Key['Flag'](offset=640, bit=45)),\n", " (Field['D'](name=\"ext_photometryKron_KronFlux_apCorr\", doc=\"aperture correction applied to ext_photometryKron_KronFlux\"), Key(offset=856, nElements=1)),\n", " (Field['D'](name=\"ext_photometryKron_KronFlux_apCorrErr\", doc=\"standard deviation of aperture correction applied to ext_photometryKron_KronFlux\"), Key(offset=864, nElements=1)),\n", " (Field['Flag'](name=\"ext_photometryKron_KronFlux_flag_apCorr\", doc=\"set if unable to aperture correct ext_photometryKron_KronFlux\"), Key['Flag'](offset=640, bit=46)),\n", " (Field['D'](name=\"base_ClassificationExtendedness_value\", doc=\"Set to 1 for extended sources, 0 for point sources.\"), Key(offset=872, nElements=1)),\n", " (Field['Flag'](name=\"base_ClassificationExtendedness_flag\", doc=\"Set to 1 for any fatal failure.\"), Key['Flag'](offset=640, bit=47)),\n", " (Field['I'](name=\"base_FootprintArea_value\", doc=\"Number of pixels in the source''s detection footprint.\", units=\"pixel\"), Key(offset=880, nElements=1)),\n", " (Field['Flag'](name=\"calib_astrometry_used\", doc=\"set if source was used in astrometric calibration\"), Key['Flag'](offset=640, bit=48)),\n", " (Field['Flag'](name=\"calib_photometry_used\", doc=\"set if source was used in photometric calibration\"), Key['Flag'](offset=640, bit=49)),\n", " (Field['Flag'](name=\"calib_photometry_reserved\", doc=\"set if source was reserved from photometric calibration\"), Key['Flag'](offset=640, bit=50)),\n", " (Field['D'](name=\"base_localPhotoCalib\", doc=\"Local approximation of the PhotoCalib calibration factor at the location of the src.\"), Key(offset=888, nElements=1)),\n", " (Field['D'](name=\"base_localPhotoCalibErr\", doc=\"Error on the local approximation of the PhotoCalib calibration factor at the location of the src.\"), Key(offset=896, nElements=1)),\n", " (Field['D'](name=\"base_CDMatrix_1_1\", doc=\"(1, 1) element of the CDMatrix for the linear approximation of the WCS at the src location.\"), Key(offset=904, nElements=1)),\n", " (Field['D'](name=\"base_CDMatrix_1_2\", doc=\"(1, 2) element of the CDMatrix for the linear approximation of the WCS at the src location.\"), Key(offset=912, nElements=1)),\n", " (Field['D'](name=\"base_CDMatrix_2_1\", doc=\"(2, 1) element of the CDMatrix for the linear approximation of the WCS at the src location.\"), Key(offset=920, nElements=1)),\n", " (Field['D'](name=\"base_CDMatrix_2_2\", doc=\"(2, 2) element of the CDMatrix for the linear approximation of the WCS at the src location.\"), Key(offset=928, nElements=1)),\n", " 'base_CircularApertureFlux_flag_badCentroid'->'base_SdssCentroid_flag'\n", " 'base_GaussianFlux_flag_badCentroid'->'base_SdssCentroid_flag'\n", " 'base_GaussianFlux_flag_badShape'->'ext_shapeHSM_HsmSourceMoments_flag'\n", " 'base_LocalBackground_flag_badCentroid'->'base_SdssCentroid_flag'\n", " 'base_NaiveCentroid_flag_badInitialCentroid'->'base_SdssCentroid_flag'\n", " 'base_PsfFlux_flag_badCentroid'->'base_SdssCentroid_flag'\n", " 'base_SdssShape_flag_badCentroid'->'base_SdssCentroid_flag'\n", " 'base_Variance_flag_badCentroid'->'base_SdssCentroid_flag'\n", " 'ext_photometryKron_KronFlux_flag_badInitialCentroid'->'base_SdssCentroid_flag'\n", " 'ext_shapeHSM_HsmPsfMoments_flag_badCentroid'->'base_SdssCentroid_flag'\n", " 'ext_shapeHSM_HsmShapeRegauss_flag_badCentroid'->'base_SdssCentroid_flag'\n", " 'ext_shapeHSM_HsmSourceMomentsRound_flag_badCentroid'->'base_SdssCentroid_flag'\n", " 'ext_shapeHSM_HsmSourceMoments_flag_badCentroid'->'base_SdssCentroid_flag'\n", " 'slot_ApFlux'->'base_CircularApertureFlux_12_0'\n", " 'slot_CalibFlux'->'base_CircularApertureFlux_12_0'\n", " 'slot_Centroid'->'base_SdssCentroid'\n", " 'slot_GaussianFlux'->'base_GaussianFlux'\n", " 'slot_ModelFlux'->'base_GaussianFlux'\n", " 'slot_PsfFlux'->'base_PsfFlux'\n", " 'slot_PsfShape'->'ext_shapeHSM_HsmPsfMoments'\n", " 'slot_Shape'->'ext_shapeHSM_HsmSourceMoments'\n", ")" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#check its schema. Heads up, the schema is pretty big\n", "source_cat.getSchema()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "These schemas tend to be large if many measurement algorithms used. Several algorithms are a part of the base measurement process, like aperture photometry, SDSS shape and centroid measurements. Other measurements are associated with previous calibration steps, like identifying sources to be candidates for PSF modeling. If deblending was run, several outputs from the process are stored in the table as well. Other measurement processess, like shape measurement processes, are considered extensions. All of these measurements often have many fields and analagous flag fields associated with them. To get a list of names of these high level processes only, we can provide the `topOnly=True` keyword arguement to the `getNames` method we met earlier in the tutorial." ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:00.479745Z", "iopub.status.busy": "2021-04-23T20:36:00.478430Z", "iopub.status.idle": "2021-04-23T20:36:00.506183Z", "shell.execute_reply": "2021-04-23T20:36:00.507403Z" } }, "outputs": [ { "data": { "text/plain": [ "{'base', 'calib', 'coord', 'deblend', 'ext', 'id', 'parent'}" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "source_cat.getSchema().getNames(topOnly=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "However, this may be too vague. For example, if you ran KSB and HSM shape measurement, both will be lumped into the 'ext' catagory in the output above, but you may wish to search the schema for one in particular. We can use unix-like pattern matching with the `extract()` method to search the schema. This returns a dictionary where the keys are the schema fields whose names match the pattern you specified, and the values are the fields themselves. " ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:00.513198Z", "iopub.status.busy": "2021-04-23T20:36:00.511762Z", "iopub.status.idle": "2021-04-23T20:36:00.549154Z", "shell.execute_reply": "2021-04-23T20:36:00.550377Z" } }, "outputs": [ { "data": { "text/plain": [ "{'ext_shapeHSM_HsmPsfMoments_flag_badCentroid': SchemaItem(key=Key['Flag'](offset=32, bit=16), field=Field['Flag'](name=\"base_SdssCentroid_flag\", doc=\"General Failure Flag\")),\n", " 'ext_shapeHSM_HsmPsfMoments_flag_badCentroid_edge': SchemaItem(key=Key['Flag'](offset=32, bit=17), field=Field['Flag'](name=\"base_SdssCentroid_flag_edge\", doc=\"Object too close to edge\")),\n", " 'ext_shapeHSM_HsmPsfMoments_flag_badCentroid_noSecondDerivative': SchemaItem(key=Key['Flag'](offset=32, bit=18), field=Field['Flag'](name=\"base_SdssCentroid_flag_noSecondDerivative\", doc=\"Vanishing second derivative\")),\n", " 'ext_shapeHSM_HsmPsfMoments_flag_badCentroid_almostNoSecondDerivative': SchemaItem(key=Key['Flag'](offset=32, bit=19), field=Field['Flag'](name=\"base_SdssCentroid_flag_almostNoSecondDerivative\", doc=\"Almost vanishing second derivative\")),\n", " 'ext_shapeHSM_HsmPsfMoments_flag_badCentroid_notAtMaximum': SchemaItem(key=Key['Flag'](offset=32, bit=20), field=Field['Flag'](name=\"base_SdssCentroid_flag_notAtMaximum\", doc=\"Object is not at a maximum\")),\n", " 'ext_shapeHSM_HsmPsfMoments_flag_badCentroid_resetToPeak': SchemaItem(key=Key['Flag'](offset=32, bit=21), field=Field['Flag'](name=\"base_SdssCentroid_flag_resetToPeak\", doc=\"set if CentroidChecker reset the centroid\")),\n", " 'ext_shapeHSM_HsmPsfMoments_flag_badCentroid_badError': SchemaItem(key=Key['Flag'](offset=32, bit=22), field=Field['Flag'](name=\"base_SdssCentroid_flag_badError\", doc=\"Error on x and/or y position is NaN\")),\n", " 'ext_shapeHSM_HsmPsfMoments_x': SchemaItem(key=Key(offset=400, nElements=1), field=Field['D'](name=\"ext_shapeHSM_HsmPsfMoments_x\", doc=\"HSM Centroid\", units=\"pixel\")),\n", " 'ext_shapeHSM_HsmPsfMoments_y': SchemaItem(key=Key(offset=408, nElements=1), field=Field['D'](name=\"ext_shapeHSM_HsmPsfMoments_y\", doc=\"HSM Centroid\", units=\"pixel\")),\n", " 'ext_shapeHSM_HsmPsfMoments_xx': SchemaItem(key=Key(offset=416, nElements=1), field=Field['D'](name=\"ext_shapeHSM_HsmPsfMoments_xx\", doc=\"HSM moments\", units=\"pixel^2\")),\n", " 'ext_shapeHSM_HsmPsfMoments_yy': SchemaItem(key=Key(offset=424, nElements=1), field=Field['D'](name=\"ext_shapeHSM_HsmPsfMoments_yy\", doc=\"HSM moments\", units=\"pixel^2\")),\n", " 'ext_shapeHSM_HsmPsfMoments_xy': SchemaItem(key=Key(offset=432, nElements=1), field=Field['D'](name=\"ext_shapeHSM_HsmPsfMoments_xy\", doc=\"HSM moments\", units=\"pixel^2\")),\n", " 'ext_shapeHSM_HsmPsfMoments_flag': SchemaItem(key=Key['Flag'](offset=32, bit=35), field=Field['Flag'](name=\"ext_shapeHSM_HsmPsfMoments_flag\", doc=\"general failure flag, set if anything went wrong\")),\n", " 'ext_shapeHSM_HsmPsfMoments_flag_no_pixels': SchemaItem(key=Key['Flag'](offset=32, bit=36), field=Field['Flag'](name=\"ext_shapeHSM_HsmPsfMoments_flag_no_pixels\", doc=\"no pixels to measure\")),\n", " 'ext_shapeHSM_HsmPsfMoments_flag_not_contained': SchemaItem(key=Key['Flag'](offset=32, bit=37), field=Field['Flag'](name=\"ext_shapeHSM_HsmPsfMoments_flag_not_contained\", doc=\"center not contained in footprint bounding box\")),\n", " 'ext_shapeHSM_HsmPsfMoments_flag_parent_source': SchemaItem(key=Key['Flag'](offset=32, bit=38), field=Field['Flag'](name=\"ext_shapeHSM_HsmPsfMoments_flag_parent_source\", doc=\"parent source, ignored\"))}" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "source_cat.getSchema().extract('*HSM*Psf*')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Schemas in source catalogs include fields for measurements, and the associated flag fields for those measurements. To tally how many fields, flag fields, and non-flag fields are contained, we can use several count methods." ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:00.556957Z", "iopub.status.busy": "2021-04-23T20:36:00.555478Z", "iopub.status.idle": "2021-04-23T20:36:00.585889Z", "shell.execute_reply": "2021-04-23T20:36:00.587007Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "the schema contains 234 fields, 115 flags fields and 119 non-flag fields\n" ] } ], "source": [ "nFields = source_cat.schema.getFieldCount()\n", "nFlagFields = source_cat.schema.getFlagFieldCount()\n", "nNonFlagFields = source_cat.schema.getNonFlagFieldCount()\n", "print('the schema contains {} fields, \\\n", "{} flags fields and {} non-flag fields'.format(nFields, nFlagFields, nNonFlagFields ))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If we are just intested in the field names, we can use the `extract()` method, which supports regex pattern matching. `extract()` returns a python dictionary of key-value pairs, where the keys are the names of the schema fields, and the values are the schema items themselves. We are going to tack on the `keys` method to this dictionary so we just get the ids back." ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:00.592844Z", "iopub.status.busy": "2021-04-23T20:36:00.591507Z", "iopub.status.idle": "2021-04-23T20:36:00.631811Z", "shell.execute_reply": "2021-04-23T20:36:00.630612Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "ext_shapeHSM_HsmPsfMoments_flag_badCentroid\n", "ext_shapeHSM_HsmPsfMoments_flag_badCentroid_edge\n", "ext_shapeHSM_HsmPsfMoments_flag_badCentroid_noSecondDerivative\n", "ext_shapeHSM_HsmPsfMoments_flag_badCentroid_almostNoSecondDerivative\n", "ext_shapeHSM_HsmPsfMoments_flag_badCentroid_notAtMaximum\n", "ext_shapeHSM_HsmPsfMoments_flag_badCentroid_resetToPeak\n", "ext_shapeHSM_HsmPsfMoments_flag_badCentroid_badError\n", "ext_shapeHSM_HsmPsfMoments_x\n", "ext_shapeHSM_HsmPsfMoments_y\n", "ext_shapeHSM_HsmPsfMoments_xx\n", "ext_shapeHSM_HsmPsfMoments_yy\n", "ext_shapeHSM_HsmPsfMoments_xy\n", "ext_shapeHSM_HsmPsfMoments_flag\n", "ext_shapeHSM_HsmPsfMoments_flag_no_pixels\n", "ext_shapeHSM_HsmPsfMoments_flag_not_contained\n", "ext_shapeHSM_HsmPsfMoments_flag_parent_source\n" ] } ], "source": [ "for k in source_cat.getSchema().extract('*HSM*Psf*').keys():\n", " print(k)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you already know the id of the field you are interested in, schema's have a `find` method that will return the field in question. For example, it is a safe bet that a schema will contain an id field" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:00.637914Z", "iopub.status.busy": "2021-04-23T20:36:00.636456Z", "iopub.status.idle": "2021-04-23T20:36:00.667371Z", "shell.execute_reply": "2021-04-23T20:36:00.668476Z" } }, "outputs": [ { "data": { "text/plain": [ "SchemaItem(key=Key(offset=0, nElements=1), field=Field['L'](name=\"id\", doc=\"unique ID\"))" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "source_cat.getSchema().find('id')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "When we dumped the entire schema, the very bottom of the schema contained fields are named 'slot_'. These are called aliases in the schema, and can help you deal with any ambiguity in the table. For example, there are several algorithms used to measure the centroid, and many fileds with 'centroid' in their name as a result. If you want to have quick access to one algorithms measurement result, you can set up a slot alias for it. Lets do a working example on the first record in our table." ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:00.674984Z", "iopub.status.busy": "2021-04-23T20:36:00.673652Z", "iopub.status.idle": "2021-04-23T20:36:00.704833Z", "shell.execute_reply": "2021-04-23T20:36:00.705775Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "sloan centroid is 1219.0, 7.0\n", "naive centroid is 1218.9358940603615, 6.956234552894472\n", "slot centroid is (1219, 7)\n" ] } ], "source": [ "slot_centroid = source_cat[0].getCentroid()\n", "naive_cent_x, naive_cent_y = (source_cat['base_NaiveCentroid_x'][0], source_cat['base_NaiveCentroid_y'][0])\n", "sdss_cent_x, sdss_cent_y = (source_cat['base_SdssCentroid_x'][0], source_cat['base_SdssCentroid_y'][0])\n", "\n", "print('sloan centroid is {}, {}'.format(sdss_cent_x, sdss_cent_y))\n", "print('naive centroid is {}, {}'.format(naive_cent_x, naive_cent_y))\n", "print('slot centroid is {}'.format(slot_centroid))" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:00.710558Z", "iopub.status.busy": "2021-04-23T20:36:00.709460Z", "iopub.status.idle": "2021-04-23T20:36:00.740462Z", "shell.execute_reply": "2021-04-23T20:36:00.739555Z" } }, "outputs": [], "source": [ "# aliasing works with other methods\n", "psf_flux_key = source_cat.getPsfFluxSlot().getMeasKey()\n", "id_key = source_cat.getIdKey()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As advertised, the slot centroid and SDSS centroid are the same. We also used some syntactic sugar to access the `naive` centroids and `sdss` centroids, which will be familiar to you if you are an astropy tables user. \n", "\n", "Speaking of astropy tables, you can make an astropy table version of a source catalog:" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:00.745097Z", "iopub.status.busy": "2021-04-23T20:36:00.744087Z", "iopub.status.idle": "2021-04-23T20:36:01.222930Z", "shell.execute_reply": "2021-04-23T20:36:01.224156Z" } }, "outputs": [ { "data": { "text/html": [ "Table length=1875\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
idcoord_racoord_decparentcalib_detectedcalib_psf_candidatecalib_psf_usedcalib_psf_reserveddeblend_nChilddeblend_deblendedAsPsfdeblend_psfCenter_xdeblend_psfCenter_ydeblend_psf_instFluxdeblend_tooManyPeaksdeblend_parentTooBigdeblend_maskeddeblend_skippeddeblend_rampedTemplatedeblend_patchedTemplatedeblend_hasStrayFluxbase_NaiveCentroid_xbase_NaiveCentroid_ybase_NaiveCentroid_flagbase_NaiveCentroid_flag_noCountsbase_NaiveCentroid_flag_edgebase_NaiveCentroid_flag_resetToPeakbase_SdssCentroid_xslot_Centroid_xbase_SdssCentroid_yslot_Centroid_ybase_SdssCentroid_xErrslot_Centroid_xErrbase_SdssCentroid_yErrslot_Centroid_yErrbase_SdssCentroid_flagbase_CircularApertureFlux_flag_badCentroidbase_GaussianFlux_flag_badCentroidbase_LocalBackground_flag_badCentroidbase_NaiveCentroid_flag_badInitialCentroidbase_PsfFlux_flag_badCentroidbase_SdssShape_flag_badCentroidbase_Variance_flag_badCentroidext_photometryKron_KronFlux_flag_badInitialCentroidext_shapeHSM_HsmPsfMoments_flag_badCentroidext_shapeHSM_HsmShapeRegauss_flag_badCentroidext_shapeHSM_HsmSourceMomentsRound_flag_badCentroidext_shapeHSM_HsmSourceMoments_flag_badCentroidslot_Centroid_flagbase_SdssCentroid_flag_edgebase_CircularApertureFlux_flag_badCentroid_edgebase_GaussianFlux_flag_badCentroid_edgebase_LocalBackground_flag_badCentroid_edgebase_NaiveCentroid_flag_badInitialCentroid_edgebase_PsfFlux_flag_badCentroid_edgebase_SdssShape_flag_badCentroid_edgebase_Variance_flag_badCentroid_edgeext_photometryKron_KronFlux_flag_badInitialCentroid_edgeext_shapeHSM_HsmPsfMoments_flag_badCentroid_edgeext_shapeHSM_HsmShapeRegauss_flag_badCentroid_edgeext_shapeHSM_HsmSourceMomentsRound_flag_badCentroid_edgeext_shapeHSM_HsmSourceMoments_flag_badCentroid_edgeslot_Centroid_flag_edgebase_SdssCentroid_flag_noSecondDerivativebase_CircularApertureFlux_flag_badCentroid_noSecondDerivativebase_GaussianFlux_flag_badCentroid_noSecondDerivativebase_LocalBackground_flag_badCentroid_noSecondDerivativebase_NaiveCentroid_flag_badInitialCentroid_noSecondDerivativebase_PsfFlux_flag_badCentroid_noSecondDerivativebase_SdssShape_flag_badCentroid_noSecondDerivativebase_Variance_flag_badCentroid_noSecondDerivativeext_photometryKron_KronFlux_flag_badInitialCentroid_noSecondDerivativeext_shapeHSM_HsmPsfMoments_flag_badCentroid_noSecondDerivativeext_shapeHSM_HsmShapeRegauss_flag_badCentroid_noSecondDerivativeext_shapeHSM_HsmSourceMomentsRound_flag_badCentroid_noSecondDerivativeext_shapeHSM_HsmSourceMoments_flag_badCentroid_noSecondDerivativeslot_Centroid_flag_noSecondDerivativebase_SdssCentroid_flag_almostNoSecondDerivativebase_CircularApertureFlux_flag_badCentroid_almostNoSecondDerivativebase_GaussianFlux_flag_badCentroid_almostNoSecondDerivativebase_LocalBackground_flag_badCentroid_almostNoSecondDerivativebase_NaiveCentroid_flag_badInitialCentroid_almostNoSecondDerivativebase_PsfFlux_flag_badCentroid_almostNoSecondDerivativebase_SdssShape_flag_badCentroid_almostNoSecondDerivativebase_Variance_flag_badCentroid_almostNoSecondDerivativeext_photometryKron_KronFlux_flag_badInitialCentroid_almostNoSecondDerivativeext_shapeHSM_HsmPsfMoments_flag_badCentroid_almostNoSecondDerivativeext_shapeHSM_HsmShapeRegauss_flag_badCentroid_almostNoSecondDerivativeext_shapeHSM_HsmSourceMomentsRound_flag_badCentroid_almostNoSecondDerivativeext_shapeHSM_HsmSourceMoments_flag_badCentroid_almostNoSecondDerivativeslot_Centroid_flag_almostNoSecondDerivativebase_SdssCentroid_flag_notAtMaximumbase_CircularApertureFlux_flag_badCentroid_notAtMaximumbase_GaussianFlux_flag_badCentroid_notAtMaximumbase_LocalBackground_flag_badCentroid_notAtMaximumbase_NaiveCentroid_flag_badInitialCentroid_notAtMaximumbase_PsfFlux_flag_badCentroid_notAtMaximumbase_SdssShape_flag_badCentroid_notAtMaximumbase_Variance_flag_badCentroid_notAtMaximumext_photometryKron_KronFlux_flag_badInitialCentroid_notAtMaximumext_shapeHSM_HsmPsfMoments_flag_badCentroid_notAtMaximumext_shapeHSM_HsmShapeRegauss_flag_badCentroid_notAtMaximumext_shapeHSM_HsmSourceMomentsRound_flag_badCentroid_notAtMaximumext_shapeHSM_HsmSourceMoments_flag_badCentroid_notAtMaximumslot_Centroid_flag_notAtMaximumbase_SdssCentroid_flag_resetToPeakbase_CircularApertureFlux_flag_badCentroid_resetToPeakbase_GaussianFlux_flag_badCentroid_resetToPeakbase_LocalBackground_flag_badCentroid_resetToPeakbase_NaiveCentroid_flag_badInitialCentroid_resetToPeakbase_PsfFlux_flag_badCentroid_resetToPeakbase_SdssShape_flag_badCentroid_resetToPeakbase_Variance_flag_badCentroid_resetToPeakext_photometryKron_KronFlux_flag_badInitialCentroid_resetToPeakext_shapeHSM_HsmPsfMoments_flag_badCentroid_resetToPeakext_shapeHSM_HsmShapeRegauss_flag_badCentroid_resetToPeakext_shapeHSM_HsmSourceMomentsRound_flag_badCentroid_resetToPeakext_shapeHSM_HsmSourceMoments_flag_badCentroid_resetToPeakslot_Centroid_flag_resetToPeakbase_SdssCentroid_flag_badErrorbase_CircularApertureFlux_flag_badCentroid_badErrorbase_GaussianFlux_flag_badCentroid_badErrorbase_LocalBackground_flag_badCentroid_badErrorbase_NaiveCentroid_flag_badInitialCentroid_badErrorbase_PsfFlux_flag_badCentroid_badErrorbase_SdssShape_flag_badCentroid_badErrorbase_Variance_flag_badCentroid_badErrorext_photometryKron_KronFlux_flag_badInitialCentroid_badErrorext_shapeHSM_HsmPsfMoments_flag_badCentroid_badErrorext_shapeHSM_HsmShapeRegauss_flag_badCentroid_badErrorext_shapeHSM_HsmSourceMomentsRound_flag_badCentroid_badErrorext_shapeHSM_HsmSourceMoments_flag_badCentroid_badErrorslot_Centroid_flag_badErrorbase_Blendedness_oldbase_Blendedness_rawbase_Blendedness_raw_child_instFluxbase_Blendedness_raw_parent_instFluxbase_Blendedness_absbase_Blendedness_abs_child_instFluxbase_Blendedness_abs_parent_instFluxbase_Blendedness_raw_child_xxbase_Blendedness_raw_child_yybase_Blendedness_raw_child_xybase_Blendedness_raw_parent_xxbase_Blendedness_raw_parent_yybase_Blendedness_raw_parent_xybase_Blendedness_abs_child_xxbase_Blendedness_abs_child_yybase_Blendedness_abs_child_xybase_Blendedness_abs_parent_xxbase_Blendedness_abs_parent_yybase_Blendedness_abs_parent_xybase_Blendedness_flagbase_Blendedness_flag_noCentroidbase_Blendedness_flag_noShapebase_FPPosition_xbase_FPPosition_ybase_FPPosition_flagbase_FPPosition_missingDetector_flagbase_Jacobian_valuebase_Jacobian_flagbase_SdssShape_xxbase_SdssShape_yybase_SdssShape_xybase_SdssShape_xxErrbase_SdssShape_yyErrbase_SdssShape_xyErrbase_SdssShape_xbase_SdssShape_ybase_SdssShape_instFluxbase_SdssShape_instFluxErrbase_SdssShape_psf_xxbase_SdssShape_psf_yybase_SdssShape_psf_xybase_SdssShape_instFlux_xx_Covbase_SdssShape_instFlux_yy_Covbase_SdssShape_instFlux_xy_Covbase_SdssShape_flagbase_SdssShape_flag_unweightedBadbase_SdssShape_flag_unweightedbase_SdssShape_flag_shiftbase_SdssShape_flag_maxIterbase_SdssShape_flag_psfext_shapeHSM_HsmPsfMoments_xslot_PsfShape_xext_shapeHSM_HsmPsfMoments_yslot_PsfShape_yext_shapeHSM_HsmPsfMoments_xxslot_PsfShape_xxext_shapeHSM_HsmPsfMoments_yyslot_PsfShape_yyext_shapeHSM_HsmPsfMoments_xyslot_PsfShape_xyext_shapeHSM_HsmPsfMoments_flagslot_PsfShape_flagext_shapeHSM_HsmPsfMoments_flag_no_pixelsslot_PsfShape_flag_no_pixelsext_shapeHSM_HsmPsfMoments_flag_not_containedslot_PsfShape_flag_not_containedext_shapeHSM_HsmPsfMoments_flag_parent_sourceslot_PsfShape_flag_parent_sourceext_shapeHSM_HsmShapeRegauss_e1ext_shapeHSM_HsmShapeRegauss_e2ext_shapeHSM_HsmShapeRegauss_sigmaext_shapeHSM_HsmShapeRegauss_resolutionext_shapeHSM_HsmShapeRegauss_flagext_shapeHSM_HsmShapeRegauss_flag_no_pixelsext_shapeHSM_HsmShapeRegauss_flag_not_containedext_shapeHSM_HsmShapeRegauss_flag_parent_sourceext_shapeHSM_HsmShapeRegauss_flag_galsimext_shapeHSM_HsmSourceMoments_xslot_Shape_xext_shapeHSM_HsmSourceMoments_yslot_Shape_yext_shapeHSM_HsmSourceMoments_xxslot_Shape_xxext_shapeHSM_HsmSourceMoments_yyslot_Shape_yyext_shapeHSM_HsmSourceMoments_xyslot_Shape_xyext_shapeHSM_HsmSourceMoments_flagbase_GaussianFlux_flag_badShapeslot_Shape_flagext_shapeHSM_HsmSourceMoments_flag_no_pixelsbase_GaussianFlux_flag_badShape_no_pixelsslot_Shape_flag_no_pixelsext_shapeHSM_HsmSourceMoments_flag_not_containedbase_GaussianFlux_flag_badShape_not_containedslot_Shape_flag_not_containedext_shapeHSM_HsmSourceMoments_flag_parent_sourcebase_GaussianFlux_flag_badShape_parent_sourceslot_Shape_flag_parent_sourceext_shapeHSM_HsmSourceMomentsRound_xslot_ShapeRound_xext_shapeHSM_HsmSourceMomentsRound_yslot_ShapeRound_yext_shapeHSM_HsmSourceMomentsRound_xxslot_ShapeRound_xxext_shapeHSM_HsmSourceMomentsRound_yyslot_ShapeRound_yyext_shapeHSM_HsmSourceMomentsRound_xyslot_ShapeRound_xyext_shapeHSM_HsmSourceMomentsRound_flagslot_ShapeRound_flagext_shapeHSM_HsmSourceMomentsRound_flag_no_pixelsslot_ShapeRound_flag_no_pixelsext_shapeHSM_HsmSourceMomentsRound_flag_not_containedslot_ShapeRound_flag_not_containedext_shapeHSM_HsmSourceMomentsRound_flag_parent_sourceslot_ShapeRound_flag_parent_sourceext_shapeHSM_HsmSourceMomentsRound_Fluxslot_ShapeRound_Fluxbase_CircularApertureFlux_3_0_instFluxbase_CircularApertureFlux_3_0_instFluxErrbase_CircularApertureFlux_3_0_flagbase_CircularApertureFlux_3_0_flag_apertureTruncatedbase_CircularApertureFlux_3_0_flag_sincCoeffsTruncatedbase_CircularApertureFlux_4_5_instFluxbase_CircularApertureFlux_4_5_instFluxErrbase_CircularApertureFlux_4_5_flagbase_CircularApertureFlux_4_5_flag_apertureTruncatedbase_CircularApertureFlux_4_5_flag_sincCoeffsTruncatedbase_CircularApertureFlux_6_0_instFluxbase_CircularApertureFlux_6_0_instFluxErrbase_CircularApertureFlux_6_0_flagbase_CircularApertureFlux_6_0_flag_apertureTruncatedbase_CircularApertureFlux_6_0_flag_sincCoeffsTruncatedbase_CircularApertureFlux_9_0_instFluxbase_CircularApertureFlux_9_0_instFluxErrbase_CircularApertureFlux_9_0_flagbase_CircularApertureFlux_9_0_flag_apertureTruncatedbase_CircularApertureFlux_9_0_flag_sincCoeffsTruncatedbase_CircularApertureFlux_12_0_instFluxslot_ApFlux_instFluxslot_CalibFlux_instFluxbase_CircularApertureFlux_12_0_instFluxErrslot_ApFlux_instFluxErrslot_CalibFlux_instFluxErrbase_CircularApertureFlux_12_0_flagslot_ApFlux_flagslot_CalibFlux_flagbase_CircularApertureFlux_12_0_flag_apertureTruncatedslot_ApFlux_flag_apertureTruncatedslot_CalibFlux_flag_apertureTruncatedbase_CircularApertureFlux_12_0_flag_sincCoeffsTruncatedslot_ApFlux_flag_sincCoeffsTruncatedslot_CalibFlux_flag_sincCoeffsTruncatedbase_CircularApertureFlux_17_0_instFluxbase_CircularApertureFlux_17_0_instFluxErrbase_CircularApertureFlux_17_0_flagbase_CircularApertureFlux_17_0_flag_apertureTruncatedbase_CircularApertureFlux_25_0_instFluxbase_CircularApertureFlux_25_0_instFluxErrbase_CircularApertureFlux_25_0_flagbase_CircularApertureFlux_25_0_flag_apertureTruncatedbase_CircularApertureFlux_35_0_instFluxbase_CircularApertureFlux_35_0_instFluxErrbase_CircularApertureFlux_35_0_flagbase_CircularApertureFlux_35_0_flag_apertureTruncatedbase_CircularApertureFlux_50_0_instFluxbase_CircularApertureFlux_50_0_instFluxErrbase_CircularApertureFlux_50_0_flagbase_CircularApertureFlux_50_0_flag_apertureTruncatedbase_CircularApertureFlux_70_0_instFluxbase_CircularApertureFlux_70_0_instFluxErrbase_CircularApertureFlux_70_0_flagbase_CircularApertureFlux_70_0_flag_apertureTruncatedbase_GaussianFlux_instFluxslot_GaussianFlux_instFluxslot_ModelFlux_instFluxbase_GaussianFlux_instFluxErrslot_GaussianFlux_instFluxErrslot_ModelFlux_instFluxErrbase_GaussianFlux_flagslot_GaussianFlux_flagslot_ModelFlux_flagbase_LocalBackground_instFluxbase_LocalBackground_instFluxErrbase_LocalBackground_flagbase_LocalBackground_flag_noGoodPixelsbase_LocalBackground_flag_noPsfbase_PixelFlags_flagbase_PixelFlags_flag_offimagebase_PixelFlags_flag_edgebase_PixelFlags_flag_interpolatedbase_PixelFlags_flag_saturatedbase_PixelFlags_flag_crbase_PixelFlags_flag_badbase_PixelFlags_flag_suspectbase_PixelFlags_flag_interpolatedCenterbase_PixelFlags_flag_saturatedCenterbase_PixelFlags_flag_crCenterbase_PixelFlags_flag_suspectCenterbase_PsfFlux_instFluxslot_PsfFlux_instFluxbase_PsfFlux_instFluxErrslot_PsfFlux_instFluxErrbase_PsfFlux_areaslot_PsfFlux_areabase_PsfFlux_flagslot_PsfFlux_flagbase_PsfFlux_flag_noGoodPixelsslot_PsfFlux_flag_noGoodPixelsbase_PsfFlux_flag_edgeslot_PsfFlux_flag_edgebase_Variance_flagbase_Variance_valuebase_Variance_flag_emptyFootprintext_photometryKron_KronFlux_instFluxext_photometryKron_KronFlux_instFluxErrext_photometryKron_KronFlux_radiusext_photometryKron_KronFlux_radius_for_radiusext_photometryKron_KronFlux_psf_radiusext_photometryKron_KronFlux_flagext_photometryKron_KronFlux_flag_edgeext_photometryKron_KronFlux_flag_bad_shape_no_psfext_photometryKron_KronFlux_flag_no_minimum_radiusext_photometryKron_KronFlux_flag_no_fallback_radiusext_photometryKron_KronFlux_flag_bad_radiusext_photometryKron_KronFlux_flag_used_minimum_radiusext_photometryKron_KronFlux_flag_used_psf_radiusext_photometryKron_KronFlux_flag_small_radiusext_photometryKron_KronFlux_flag_bad_shapebase_GaussianFlux_apCorrslot_GaussianFlux_apCorrslot_ModelFlux_apCorrbase_GaussianFlux_apCorrErrslot_GaussianFlux_apCorrErrslot_ModelFlux_apCorrErrbase_GaussianFlux_flag_apCorrslot_GaussianFlux_flag_apCorrslot_ModelFlux_flag_apCorrbase_PsfFlux_apCorrslot_PsfFlux_apCorrbase_PsfFlux_apCorrErrslot_PsfFlux_apCorrErrbase_PsfFlux_flag_apCorrslot_PsfFlux_flag_apCorrext_photometryKron_KronFlux_apCorrext_photometryKron_KronFlux_apCorrErrext_photometryKron_KronFlux_flag_apCorrbase_ClassificationExtendedness_valuebase_ClassificationExtendedness_flagbase_FootprintArea_valuecalib_astrometry_usedcalib_photometry_usedcalib_photometry_reservedbase_localPhotoCalibbase_localPhotoCalibErrbase_CDMatrix_1_1base_CDMatrix_1_2base_CDMatrix_2_1base_CDMatrix_2_2
radradpixpixctpixpixpixpixpixpixpixpixpixpixctctctctpix2pix2pix2pix2pix2pix2pix2pix2pix2pix2pix2pix2mmmmpix2pix2pix2pix2pix2pix2pixpixctctpix2pix2pix2ct pix2ct pix2ct pix2pixpixpixpixpix2pix2pix2pix2pix2pix2pixpixpixpixpix2pix2pix2pix2pix2pix2pixpixpixpixpix2pix2pix2pix2pix2pix2ctctctctctctctctctctctctctctctctctctctctctctctctctctctctctctctctctctctctpixpixctctpix
int64float64float64int64boolboolboolboolint32boolfloat64float64float64boolboolboolboolboolboolboolfloat64float64boolboolboolboolfloat64float64float64float64float32float32float32float32boolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolboolfloat64float64float64float64float64float64float64float64float64float64float64float64float64float64float64float64float64float64float64boolboolboolfloat64float64boolboolfloat64boolfloat64float64float64float32float32float32float64float64float64float64float64float64float64float32float32float32boolboolboolboolboolboolfloat64float64float64float64float64float64float64float64float64float64boolboolboolboolboolboolboolboolfloat64float64float64float64boolboolboolboolboolfloat64float64float64float64float64float64float64float64float64float64boolboolboolboolboolboolboolboolboolboolboolboolfloat64float64float64float64float64float64float64float64float64float64boolboolboolboolboolboolboolboolfloat32float32float64float64boolboolboolfloat64float64boolboolboolfloat64float64boolboolboolfloat64float64boolboolboolfloat64float64float64float64float64float64boolboolboolboolboolboolboolboolboolfloat64float64boolboolfloat64float64boolboolfloat64float64boolboolfloat64float64boolboolfloat64float64boolboolfloat64float64float64float64float64float64boolboolboolfloat64float64boolboolboolboolboolboolboolboolboolboolboolboolboolboolboolfloat64float64float64float64float32float32boolboolboolboolboolboolboolfloat64boolfloat64float64float32float32float32boolboolboolboolboolboolboolboolboolboolfloat64float64float64float64float64float64boolboolboolfloat64float64float64float64boolboolfloat64float64boolfloat64boolint32boolboolboolfloat64float64float64float64float64float64
343634344557936651.2451332744442976-0.53045565903060230TrueFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse1218.93589406036156.956234552894472FalseFalseFalseFalse1219.01219.07.07.0nannannannanTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.086105.049958465486105.04995846540.086103.1052514624986103.105251462494.271449931942794.2542075625665740.0315903487455859444.271449931942794.2542075625665740.0315903487455859444.2708254928005024.2539139508001350.033916291563615924.2708254928005024.2539139508001350.03391629156361592TrueTrueTrue-262.275-19.334999999999997FalseFalse0.9990278119943633False4.345879231010214.3312280792960360.077882331067076480.1047330650.0739444350.104379981218.84690333398276.87278768004214988187.664013689381062.63468610808834.2097803959639824.2504450657428290.005477041708410557-55.64649-0.9972387-55.4589FalseFalseFalseFalseFalseFalse-0.0007678702068951279-0.0007678702068951279-0.002654656675990664-0.0026546566759906644.2115317240094474.2115317240094474.25220993487847654.25220993487847650.0053476800103775510.005347680010377551TrueTrueFalseFalseFalseFalseFalseFalse3.1356282234191895-1.885242104530334510.1067352294921880.0011888424633070827FalseFalseFalseFalseFalse1218.69927366308931218.69927366308936.7533400640626336.7533400640626334.238593534867474.238593534867474.2172334472940364.217233447294036-0.010091036319342276-0.010091036319342276TrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse1218.6992894896261218.6992894896266.7533633179629426.7533633179629424.2327459261492444.2327459261492444.22256304619296954.2225630461929695-0.004770052122799666-0.004770052122799666TrueTrueFalseFalseFalseFalseFalseFalse87817.1987817.1956743.421875475.9626770019531TrueFalseFalse79009.4453125670.5922241210938TrueFalseTrue87979.8125855.5762939453125TrueFalseTruenannanTrueTrueTruenannannannannannanTrueTrueTrueTrueTrueTrueTrueTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTrue93977.3066165475393977.3066165475393977.30661654753800.8305163527903800.8305163527903800.8305163527903FalseFalseFalse4.645252887884674.69037668348096TrueFalseFalseFalseFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse93955.7082361896293955.70823618962732.3818139737758732.381813973775862.42971462.429714TrueTrueFalseFalseTrueTrueFalse5582.49267578125FalsenannannannannanTrueTrueFalseFalseFalseFalseFalseFalseFalseTrue1.0795607088414591.0795607088414591.0795607088414590.00.00.0FalseFalseFalse0.98906136114203380.98906136114203380.00.0FalseFalse1.03255321300823470.0FalsenanTrue407FalseFalseFalse0.66068492077529340.000175434508333632025.425073526000387e-051.142678709084647e-051.1416404680850723e-05-5.433135137285505e-05
343634344557936661.2452265917705203-0.5304387733213010FalseFalseFalseFalse2FalsenannannanTrueFalseFalseFalseFalseFalseFalse1304.2947711879066.711072559162486FalseFalseFalseFalse1304.01304.07.07.0nannannannanTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.014486.54704833318614486.5470483331860.021087.82862832549721087.828628325497103.8946985614405521.4170177748502725.642431573094907103.8946985614405521.4170177748502725.642431573094907144.6314931856406626.46998682011205537.32362577803516144.6314931856406626.46998682011205537.32362577803516TrueTrueTrue-261.42499999999995-19.334999999999997FalseFalse0.9990340720357708False12.12593629167147221.64539700024164-3.2835942850554793.36274723.2415016.00267031304.08297104264946.08449638958677310879.1987406224031508.5018511458644.2085626348443494.2494344971955020.006536349832445914-2536.3552686.82227-4527.5195FalseFalseFalseFalseFalseFalse-0.0007807061048532802-0.0007807061048532802-0.0026169248615103714-0.00261692486151037144.2103922662419954.2103922662419954.2511556057577034.2511556057577030.0063909365804903310.006390936580490331TrueTrueFalseFalseFalseFalseFalseFalsenannannannanTrueFalseFalseTrueFalse1310.0228599011891310.0228599011898.165144109369848.1651441093698489.0304920216836489.0304920216836417.80624996192883517.80624996192883524.60773759389016424.607737593890164TrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse1304.0857298415861304.0857298415865.7390707534776855.7390707534776859.8305367973245739.83053679732457310.39365948148456710.393659481484567-0.6784910800190128-0.6784910800190128TrueTrueFalseFalseFalseFalseFalseFalse8245.2348245.2342402.0224609375387.380615234375TrueFalseFalse5208.06201171875586.4589233398438TrueFalseTrue6920.2783203125784.4983520507812TrueFalseTruenannanTrueTrueTruenannannannannannanTrueTrueTrueTrueTrueTrueTrueTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTrue16250.27491725519816250.27491725519816250.2749172551981617.40587554786131617.40587554786131617.4058755478613FalseFalseFalse3.82715440306164775.85764532111628TrueFalseFalseFalseFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse4817.494971777984817.49497177798590.7903741778207590.790374177820762.44023562.440235TrueTrueFalseFalseTrueTrueFalse5521.81640625FalsenannannannannanTrueTrueFalseFalseFalseFalseFalseFalseFalseTrue1.07950424923193561.07950424923193561.07950424923193560.00.00.0FalseFalseFalse0.98885877452390130.98885877452390130.00.0FalseFalse1.03262839082163050.0FalsenanTrue388FalseFalseFalse0.66068492077529340.000175434508333632025.425161897287193e-051.1426873652866909e-051.141640438854007e-05-5.433168196149553e-05
343634344557936671.2455904388452663-0.53037487890810310FalseFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse1634.9314480359969.032211249497715FalseFalseFalseFalse1635.01635.09.09.0nannannannanTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.016083.69886690393716083.6988669039370.016645.14757366721516645.14757366721510.9655095200225739.790548095583441-2.41992535125670910.9655095200225739.790548095583441-2.41992535125670912.33236997626534811.078546052536282-2.42210532505485512.33236997626534811.078546052536282-2.422105325054855TrueTrueTrue-258.11499999999995-19.314999999999998FalseFalse0.9990582661131738False11.55523003596056811.071789535601953-2.91752847775421.7158831.22653331.6440951634.74215566819438.99026309944450117046.858780786861265.67854801126744.2056472046694084.2453493552557670.010481401892374979-1085.8782274.16852-1040.4479FalseFalseFalseFalseFalseFalse-0.0008536316566153355-0.0008536316566153355-0.002469306195039765-0.0024693061950397654.207399414196074.207399414196074.2471090250235884.2471090250235880.0103996452236586270.010399645223658627TrueTrueFalseFalseFalseFalseFalseFalse0.1578720211982727-0.46687072515487670.160196065902709960.5587869882583618FalseFalseFalseFalseFalse1634.4726860630431634.4726860630439.0588985005363079.05889850053630711.07772629394721211.0777262939472129.534835919926929.53483591992692-2.334023793744793-2.334023793744793TrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse1634.4962334589171634.4962334589179.0147117704973189.01471177049731810.01586357145862210.0158635714586229.6744000212199759.674400021219975-1.0185033866986255-1.0185033866986255TrueTrueFalseFalseFalseFalseFalseFalse16056.07616056.0766124.9775390625394.07769775390625TrueFalseFalse10093.265625592.4029541015625TrueFalseTrue13221.6318359375789.9754638671875TrueFalseTrue17352.1933593751183.4234619140625TrueFalseTruenannannannannannanTrueTrueTrueTrueTrueTrueTrueTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTrue17593.43435579306617593.43435579306617593.434355793066924.4192830634271924.4192830634271924.4192830634271FalseFalseFalse2.263800408125969372.98704007942449TrueFalseFalseFalseFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse10697.032232805910697.0322328059600.3334780966854600.333478096685462.803362.8033TrueTrueFalseFalseTrueTrueFalse5540.1015625FalsenannannannannanTrueTrueFalseFalseFalseFalseFalseFalseFalseTrue1.07930170262963741.07930170262963741.07930170262963740.00.00.0FalseFalseFalse0.98836343444007220.98836343444007220.00.0FalseFalse1.03297626722713740.0FalsenanTrue340FalseFalseFalse0.66068492077529340.000175434508333632025.4255062318849715e-051.1427210266113282e-051.1416395471676701e-05-5.4332969390699597e-05
343634344557936681.2458918800916443-0.53031827801987650FalseFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse1909.85423643064957.036537247519804FalseFalseFalseFalse1910.01910.07.07.0nannannannanTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.04667.6770551867284667.6770551867280.06507.2741506744646507.2741506744648.7680114432199959.2900443016201551.97866548926387988.7680114432199959.2900443016201551.978665489263879814.92558950058656314.3401797222505543.81403109606238614.92558950058656314.3401797222505543.814031096062386TrueTrueTrue-255.36499999999998-19.334999999999997FalseFalse0.9990781128457439False5.1450624860048425.75798590834666252.8187260621212697nannannan1909.90253433074967.122012026647483nannan4.2043468292368894.2423746904062250.013897464571754843nannannanTrueFalseTrueFalseFalseFalse-0.0009475395655310479-0.0009475395655310479-0.002362332078411705-0.0023623320784117054.2060984055443024.2060984055443024.2441423954694174.2441423954694170.0138464083369391440.013846408336939144TrueTrueFalseFalseFalseFalseFalseFalse0.067540787160396580.37891325354576110.67480427026748660.5368011593818665FalseFalseFalseFalseFalse1909.42052184863881909.42052184863886.4580278398353426.4580278398353429.8174473396561599.8174473396561598.9727909703798448.9727909703798442.24910850096370042.2491085009637004TrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse1909.46033179356941909.46033179356946.5263964841744296.5263964841744298.8083085414287678.8083085414287678.6501165914702658.6501165914702651.1649684517918691.164968451791869TrueTrueFalseFalseFalseFalseFalseFalse4691.70174691.70171899.677978515625386.30364990234375TrueFalseFalse3102.4384765625583.724853515625TrueFalseTrue4035.127685546875781.5891723632812TrueFalseTruenannanTrueTrueTruenannannannannannanTrueTrueTrueTrueTrueTrueTrueTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTrue5115.9874264318595115.9874264318595115.987426431859855.0388462920753855.0388462920753855.0388462920753FalseFalseFalse4.68397512865334675.37526783516714TrueFalseFalseFalseFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse3252.270500264013252.27050026401588.118464070215588.11846407021562.4773562.47735TrueTrueFalseFalseTrueTrueFalse5515.744140625FalsenannannannannanTrueTrueFalseFalseFalseFalseFalseFalseFalseTrue1.07912569029185271.07912569029185271.07912569029185270.00.00.0FalseFalseFalse0.98828058929598820.98828058929598820.00.0FalseFalse1.03330442046763920.0FalsenanTrue112FalseFalseFalse0.66068492077529340.000175434508333632025.425791937090968e-051.1427490786743164e-051.1416402304585242e-05-5.433403886500767e-05
343634344557936691.2474402257837838-0.53003906711909510FalseFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse3319.95171070927348.926864689455615FalseFalseFalseFalse3320.03320.09.09.0nannannannanTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.010700.987939095710700.98793909570.011022.60519137929811022.6051913792987.45361528999974257.366136229691883-0.5869160795597787.45361528999974257.366136229691883-0.5869160795597788.1144835398651788.913365054799748-0.6908107026365938.1144835398651788.913365054799748-0.690810702636593TrueTrueTrue-241.265-19.314999999999998FalseFalse0.9991766061199018False8.1263435407519047.386380660277821-0.45908894876825021.56298141.05552411.42066053319.7555521918639.12439921538185311191.2341676484831076.23370100132144.220335113898154.2292941327549250.03136264560364299-841.0666547.51514-764.4813FalseFalseFalseFalseFalseFalse-0.0017996797641518843-0.0017996797641518843-0.0018688916368219805-0.00186889163682198054.2221705502303134.2221705502303134.2311306847678074.2311306847678070.0314672312794620840.031467231279462084TrueTrueFalseFalseFalseFalseFalseFalse-0.14952439069747925-0.37242177128791810.29677540063858030.3761681914329529FalseFalseFalseFalseFalse3319.49910228674073319.49910228674079.2677839969057479.2677839969057477.1337664815359387.1337664815359387.4088982954896197.408898295489619-0.549175889246665-0.549175889246665TrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse3319.504147816453319.504147816459.238612623489239.238612623489237.3024875022194477.3024875022194477.3956327903271827.395632790327182-0.2159996355910371-0.2159996355910371TrueTrueFalseFalseFalseFalseFalseFalse10999.21210999.2125031.6591796875391.9811096191406TrueFalseFalse7615.2939453125589.0430297851562TrueFalseTrue10204.095703125786.8228759765625TrueFalseTrue11554.33105468751179.3702392578125TrueFalseTruenannannannannannanTrueTrueTrueTrueTrueTrueTrueTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTrue11674.54875038226611674.54875038226611674.548750382266794.5582766434172794.5582766434172794.5582766434172FalseFalseFalse2.534860941299444774.992414021587TrueFalseFalseFalseFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse8707.8427903845598707.842790384559598.6683910062317598.668391006231762.610162.6101TrueTrueFalseFalseTrueTrueFalse5522.828125FalsenannannannannanTrueTrueFalseFalseFalseFalseFalseFalseFalseTrue1.0784180856408011.0784180856408011.0784180856408010.00.00.0FalseFalseFalse0.99282008662917980.99282008662917980.00.0FalseFalse1.03583591501196270.0FalsenanTrue297FalseFalseFalse0.66068492077529340.000175434508333632025.4272580743385515e-051.1428926225450304e-051.1416389677028427e-05-5.433952282663981e-05
343634344557936701.2453627799299263-0.53041907387413310FalseFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse1427.093336989758411.941475694386597FalseFalseFalseFalse1427.01427.012.012.0nannannannanTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.07791.4202206596047791.4202206596040.09402.094254806869402.0942548068614.96768787997401910.83931086173871-0.264861993233926114.96768787997401910.83931086173871-0.264861993233926121.52485579270492614.202008179428212-0.2379813296912660621.52485579270492614.202008179428212-0.23798132969126606TrueTrueTrue-260.195-19.284999999999997FalseFalse0.9990431217073515False15.71292309569382810.718753414176007-0.65017270008605975.3563683.13215613.65390871426.707812637828711.99201735128658089.3199424354851378.78141871133024.2076974100707264.2476267569462510.007863236150793887-3692.6304152.79446-2518.9707FalseFalseFalseFalseFalseFalse-0.0007990488160669236-0.0007990488160669236-0.0025496109016282676-0.00254961090162826764.2094422862918714.2094422862918714.2493897329002964.2493897329002960.0077605761239374940.007760576123937494TrueTrueFalseFalseFalseFalseFalseFalse0.2595382332801819-0.013558148406445980.338072657585144040.6384589076042175FalseFalseFalseFalseFalse1426.4758623527341426.47586235273411.91780877472602811.91780877472602814.20419197824273314.20419197824273310.61816734283569210.618167342835692-0.01754433298028828-0.01754433298028828TrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse1426.43103037189641426.431030371896411.90246798881478411.90246798881478413.63065209975136613.63065209975136611.26709317278282411.2670931727828240.115528168414335750.11552816841433575TrueTrueFalseFalseFalseFalseFalseFalse7868.957868.952694.201416015625388.0850524902344TrueFalseFalse3800.82470703125584.8306884765625TrueFalseTrue5881.00048828125783.2809448242188TrueFalseTrue8135.2656251177.7481689453125TrueFalseTrue7844.145996093757844.145996093757844.145996093751571.45739746093751571.45739746093751571.4573974609375TrueTrueTrueFalseFalseFalseTrueTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTrue8492.8009163507788492.8009163507788492.8009163507781024.4026392748451024.4026392748451024.402639274845FalseFalseFalse0.658879820933521575.97048089257815TrueFalseFalseFalseFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse4616.7952936959344616.795293695934591.2191761324359591.219176132435963.01132263.011322TrueTrueFalseFalseTrueTrueFalse5523.9892578125False7521.7228149576281465.46607677127264.30814312.3684712.5769567TrueFalseFalseFalseFalseFalseFalseFalseFalseTrue1.079447247014671.079447247014671.079447247014670.00.00.0FalseFalseFalse0.98864148081872420.98864148081872420.00.0FalseFalse1.03276878286680530.0FalsenanTrue216FalseFalseFalse0.66068492077529340.000175434508333632025.425290286050771e-051.1426997742970785e-051.1416384519123379e-05-5.433216053759257e-05
343634344557936711.2471131524236843-0.53010350670621360FalseFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse3020.984972710625214.022454341576745FalseFalseFalseFalse3021.03021.014.014.0nannannannanTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.017768.93394530630417768.9339453063040.017862.90533021365317862.9053302136534.34252410586025754.4362788427606580.176263233377559114.34252410586025754.4362788427606580.176263233377559114.4355540531314674.5927226980183780.233417894329541444.4355540531314674.5927226980183780.23341789432954144TrueTrueTrue-244.25499999999997-19.264999999999997FalseFalse0.999156215474889False4.3490068966341054.4629411849360330.167074499156137730.406589480.291453150.417241223020.92500245133514.00257156922134517950.51099367719839.09836373051034.2143566015542684.2314294844907610.02740421520203051-170.58429-6.5532856-175.0532FalseFalseFalseFalseFalseFalse-0.001562900059916875-0.001562900059916875-0.0019502121949725698-0.00195021219497256984.2161785677785724.2161785677785724.2332351366299464.2332351366299460.0274689619580851320.027468961958085132TrueTrueFalseFalseFalseFalseFalseFalse0.41839516162872314-1.13354563713073731.60185992717742920.03573920577764511FalseFalseFalseFalseFalse3020.84972289863253020.849722898632514.00547068889133814.0054706888913384.35550522370833454.35550522370833454.4659373644861314.4659373644861310.155863207690809080.15586320769080908TrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse3020.84804116532953020.848041165329514.00614179478916614.0061417947891664.3974020468192774.3974020468192774.4435943341797434.4435943341797430.068854261737845580.06885426173784558TrueTrueFalseFalseFalseFalseFalseFalse18007.11318007.11311247.443359375402.7943420410156TrueFalseFalse16086.80859375599.0492553710938TrueFalseTrue17886.7421875793.66455078125TrueFalseTrue19523.902343751183.928466796875TrueFalseTrue21232.31835937521232.31835937521232.3183593751576.3964843751576.3964843751576.396484375TrueTrueTrueFalseFalseFalseTrueTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTrue19372.38632316264619372.38632316264619372.386323162646640.3310562570989640.3310562570989640.3310562570989FalseFalseFalse1.271560470815399874.30862124793678TrueFalseFalseFalseFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse19010.62590266959519010.625902669595616.518646293868616.51864629386862.89157562.891575TrueTrueFalseFalseTrueTrueFalse5593.37841796875False20223.489170778791246.63449889187153.66256412.3684712.5754905TrueFalseFalseFalseFalseFalseFalseFalseFalseTrue1.07857695210839191.07857695210839191.07857695210839190.00.00.0FalseFalseFalse0.99118663427418770.99118663427418770.00.0FalseFalse1.0352099303515310.0FalsenanTrue362FalseFalseFalse0.66068492077529340.000175434508333632025.4269477221717044e-051.1428620562308176e-051.1416371258967178e-05-5.4338360126495364e-05
343634344557936721.2460871751393503-0.53029178165707420FalseFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse2085.90170457884416.413830346552306FalseFalseFalseFalse2086.02086.016.016.0nannannannanTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.03228.73729014979563228.73729014979560.03771.50870067608873771.50870067608874.5682652277537874.448319436293253-2.39671504878223334.5682652277537874.448319436293253-2.39671504878223336.0813605148835496.797393709496359-3.60634742130792856.0813605148835496.797393709496359-3.6063474213079285TrueTrueTrue-253.60499999999996-19.244999999999997FalseFalse0.9990907602237689False281.4937011643079135.2729524623076424.14323371056064nannannan2086.005497290386815.991011494430682nannan4.2051313567683424.2400463908373560.01577510256475004nannannanTrueFalseTrueFalseFalseFalse-0.001010243494183128-0.001010243494183128-0.0022709471250035983-0.00227094712500359834.2069025588714794.2069025588714794.2418090217867234.2418090217867230.015737570301875910.01573757030187591TrueTrueFalseFalseFalseFalseFalseFalse0.10336752235889435-3.8096640110015874.9430580139160160.0644185021519661FalseFalseFalseFalseFalse2086.3663924280382086.36639242803815.27163160132003315.2716316013200334.5572604388787974.5572604388787974.4639092771544124.463909277154412-2.538426720657995-2.538426720657995TrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse2086.42303290929432086.423032909294315.50245943701564315.5024594370156434.5808779433718574.5808779433718574.1847986294992394.184798629499239-0.9199285921841611-0.9199285921841611TrueTrueFalseFalseFalseFalseFalseFalse3484.49023484.49022248.839111328125387.0270690917969TrueFalseFalse3148.235595703125583.7758178710938TrueFalseFalse3040.421875780.4203491210938TrueFalseFalse4239.9941406251175.1754150390625TrueFalseTrue3690.3730468753690.3730468753690.3730468751569.04992675781251569.04992675781251569.0499267578125TrueTrueTrueFalseFalseFalseTrueTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTrue3527.2361621598333527.2361621598333527.236162159833556.1248796708273556.1248796708273556.1248796708273FalseFalseFalse3.590167672212771375.99774312310922TrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse3662.2166487062813662.216648706281589.2818708246247589.281870824624763.10146363.101463TrueTrueFalseFalseTrueTrueFalse5519.30029296875False3420.7137971939633865.89471271297262.575407512.3684712.5754075TrueFalseFalseFalseFalseFalseFalseTrueTrueTrue1.07906732410542981.07906732410542981.07906732410542980.00.00.0FalseFalseFalse0.98843238239107740.98843238239107740.00.0FalseFalse1.03358603510254680.0FalsenanTrue148FalseFalseFalse0.66068492077529340.000175434508333632025.4259758353972965e-051.1427667915344239e-051.1416366695754435e-05-5.433472372808457e-05
343634344557936731.2460685342396929-0.53030384659516630FalseFalseFalseFalse2FalsenannannanTrueFalseFalseFalseFalseFalseFalse2067.149047469184624.22278756687488FalseFalseFalseFalse2067.1746715298872067.17467152988724.7700667143516824.770066714351680.59742430.59742430.62279820.6227982FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.07122.20650892752757122.20650892752750.09548.4120222490789548.4120222490789.49971231845303732.88203309910176-6.5660274252609319.49971231845303732.88203309910176-6.56602742526093113.38635415541350745.7070547731103-6.43695742307399613.38635415541350745.7070547731103-6.436957423073996FalseFalseFalse-253.7932532847011-19.157299332856482FalseFalse0.9990894642681023False11.81053819224913910.600649847970882-10.2867726685676715.033354.58030654.5177262067.37149004990724.6217600377835033754.0969287944013799.94886127771034.2058677251037364.239801081802210.01527669572915257-2013.21521753.4761-1806.9783FalseFalseFalseFalseFalseFalse-0.000992671051061297-0.000992671051061297-0.0022563157767752956-0.00225631577677529564.207651625721884.207651625721884.2415578711154164.2415578711154160.015230798718325140.01523079871832514FalseFalseFalseFalseFalseFalseFalseFalsenannannannanTrueFalseFalseTrueFalse2067.85927112660152067.859271126601521.04412967829031421.0441296782903149.1646253848820869.16462538488208629.2221248378758729.22212483787587-4.5482173480890244-4.5482173480890244FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse2067.89269185386772067.892691853867721.09364538771631821.09364538771631812.42736678537475612.42736678537475626.3442515890551526.34425158905515-2.217668096557341-2.217668096557341FalseFalseFalseFalseFalseFalseFalseFalse7910.10457910.10452069.695068359375389.73248291015625FalseFalseFalse2693.798095703125582.6715087890625FalseFalseFalse4378.96875780.96240234375FalseFalseFalse5913.421386718751175.637939453125FalseFalseTrue6005.620605468756005.620605468756005.620605468751569.6726074218751569.6726074218751569.672607421875FalseFalseFalseFalseFalseFalseTrueTrueTrue6356.3409035801892239.723942448914FalseFalse6827.5151916295293294.16314252502FalseFalsenannanTrueTruenannanTrueTruenannanTrueTrue7751.9316855012347751.9316855012347751.9316855012341131.52811454392641131.52811454392641131.5281145439264FalseFalseFalse0.875287535392342574.36696189251406FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse3551.55801624209433551.5580162420943589.0378013723463589.037801372346363.0896263.08962FalseFalseFalseFalseFalseFalseFalse5511.07568359375FalsenannannannannanTrueTrueFalseFalseFalseFalseFalseFalseFalseFalse1.07912040460025521.07912040460025521.07912040460025520.00.00.0FalseFalseFalse0.98844814917898780.98844814917898780.00.0FalseFalse1.03359732719742040.0False1.0False212FalseFalseFalse0.66068492077529340.000175434508333632025.4259571563760077e-051.1427646693167623e-051.1416332651287857e-05-5.433465085209869e-05
343634344557936741.2475199660735183-0.53003756470193030FalseFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse3389.255466171494422.218811835482253FalseFalseFalseFalse3389.8663201027993389.86632010279922.13283976367349522.1328397636734950.45050120.45050120.437318330.43731833FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.05303.8788658403695303.8788658403690.05756.3341774826455756.3341774826459.7524080581943684.247129305780099-2.260720924797029.7524080581943684.247129305780099-2.2607209247970211.3137274435929085.778565717078011-2.129921538272310711.3137274435929085.778565717078011-2.1299215382723107FalseFalseFalse-240.56633679897197-19.183671602363262FalseFalse0.9991814118594688False8.3703847041733524.7448596760351-1.82092389019672822.94833641.63385191.67130213389.686728648795522.2311010982553445333.575986046344939.33405258668194.22312773794900754.2281765312278480.03175381026742067-1384.7363301.2406-784.9555FalseFalseFalseFalseFalseFalse-0.0018406393644809043-0.0018406393644809043-0.0018200467242237295-0.00182004672422372954.2249699042360194.2249699042360194.2300182359710044.2300182359710040.0318638743215199850.031863874321519985FalseFalseFalseFalseFalseFalseFalseFalse2.039964199066162-1.54610049724578860.52055412530899050.39404594898223877FalseFalseFalseFalseFalse3389.4547844463393389.45478444633922.43401752316211522.43401752316211510.36512197211573710.3651219721157374.142681088327994.14268108832799-2.2848103418979004-2.2848103418979004FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse3389.62301870966673389.623018709666722.0098780417904922.009878041790497.5859161014936167.5859161014936167.2384763345325027.238476334532502-0.5554619473105668-0.5554619473105668FalseFalseFalseFalseFalseFalseFalseFalse5892.53375892.53372880.306884765625390.8804626464844FalseFalseFalse4006.6787109375584.2819213867188FalseFalseFalse5402.00732421875781.9896240234375FalseFalseFalse5839.394531251175.63916015625FalseFalseTrue5931.62988281255931.62988281255931.62988281251569.39465332031251569.39465332031251569.3946533203125FalseFalseFalseFalseFalseFalseTrueTrueTrue6895.5816034674642234.3410961151526FalseFalsenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTrue5788.3724395613355788.3724395613355788.372439561335717.5839753017318717.5839753017318717.5839753017318FalseFalseFalse1.985890572478294373.4174967997843FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse4793.5179017486034793.517901748603592.4361433261323592.436143326132362.74786462.747864FalseFalseFalseFalseFalseFalseFalse5511.08984375False6510.3862992394691622.0266878463174.790934614.8693292.5763247FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.0784576604311971.0784576604311971.0784576604311970.00.00.0FalseFalseFalse0.99329151931973820.99329151931973820.00.0FalseFalse1.0360462751845840.0False1.0False194FalseFalseFalse0.66068492077529340.000175434508333632025.4273320495486866e-051.1428994303754874e-051.1416338359542513e-05-5.4339795066688467e-05
343634344557936751.246226383263327-0.53027367876876440FalseFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse2210.85976094491923.079625279569857FalseFalseFalseFalse2211.28538340341772211.285383403417723.2170204978877223.217020497887720.71356620.71356620.63449440.6344944FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.05563.53362130329155563.53362130329150.06852.7695086956776852.76950869567710.7878884154659298.999372470785568-5.76896124619616310.7878884154659298.999372470785568-5.76896124619616317.7328322627938414.128108313336309-9.78690749003329317.7328322627938414.128108313336309-9.786907490033293FalseFalseFalse-252.3521461659658-19.17282979502112FalseFalse0.9990997136672835False10.9379627823895399.241103236051938-5.9475661070410444.18229343.15830163.5334742211.12784341859423.3427775110387585628.434116262711076.05806286317424.2061091824859974.2383925051342420.017070434841639778-2250.1951223.5533-1901.1113FalseFalseFalseFalseFalseFalse-0.0010600529666371424-0.0010600529666371424-0.002205990945886763-0.0022059909458867634.20787610560771254.20787610560771254.2401629767393394.2401629767393390.01705256459305380.0170525645930538FalseFalseFalseFalseFalseFalseFalseFalse0.13418489694595337-0.76814782619476320.6252529025077820.5688962340354919FalseFalseFalseFalseFalse2211.0307239171522211.03072391715223.45650615835277423.45650615835277410.9627935058245410.962793505824548.9745377841520878.974537784152087-5.707504838231874-5.707504838231874FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse2211.2889950530472211.28899505304723.61758147681707223.6175814768170729.1906814200171769.1906814200171768.1284793849185148.128479384918514-3.05094066218702-3.05094066218702FalseFalseFalseFalseFalseFalseFalseFalse5266.78125266.78122574.275390625390.82659912109375FalseFalseFalse3565.90673828125583.7512817382812FalseFalseFalse4336.63330078125780.912841796875FalseFalseFalse6325.68261718751175.5194091796875FalseFalseTrue8491.65722656258491.65722656258491.65722656251570.550292968751570.550292968751570.55029296875FalseFalseFalseFalseFalseFalseTrueTrueTrue8053.95830968022352240.2958672358227FalseFalsenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTrue6074.2460901480376074.2460901480376074.246090148037821.3509025737825821.3509025737825821.3509025737825FalseFalseFalse4.50333532409741473.31120302912889FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse3998.68436049110643998.6843604911064589.6393808442957589.639380844295763.1148363.11483FalseFalseFalseFalseFalseFalseFalse5524.09765625False9485.4114402807062406.1191332477627.05830917.0893232.5753036FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.07903241838312041.07903241838312041.07903241838312040.00.00.0FalseFalseFalse0.98861944303087830.98861944303087830.00.0FalseFalse1.03380178535742370.0False1.0False180FalseFalseFalse0.66068492077529340.000175434508333632025.42610682571648e-051.1427793815123004e-051.1416338195930921e-05-5.43352112786589e-05
343634344557936761.2451962500250653-0.53046123139783310FalseFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse1272.3513830146424.032025881780996FalseFalseFalseFalse1272.76423433841841272.764234338418424.13699400338404624.1369940033840460.55176190.55176190.5664570.566457FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.0nannannannannannannannannannannannannannannannannannanTrueFalseTrue-261.7373576566158-19.163630059966156FalseFalse0.9990318673001711False6.9355132446531324.9931174656981193.95824142149747972.92791322.11708262.10790661272.470859316777523.8452345414965633765.4011156451884794.8054978617864.2106303496462834.2488529890040330.0056655723406338464-1163.5607-664.0683-837.68787FalseFalseFalseFalseFalseFalse-0.0007593634378133934-0.0007593634378133934-0.0025835359928913864-0.00258353599289138644.2123979102646174.2123979102646174.2506029377237274.2506029377237270.0055400910116027010.005540091011602701FalseFalseFalseFalseFalseFalseFalseFalsenannannannanTrueFalseFalseFalseTruenannannannannannannannannannanTrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse1272.7440287835921272.74402878359224.1113004162980624.111300416298064.621439497024844.621439497024844.5229605884661174.5229605884661171.82849387733337171.8284938773333717FalseFalseFalseFalseFalseFalseFalseFalse3415.6253415.6252400.2177734375390.580810546875FalseFalseFalse3092.236083984375583.704345703125FalseFalseFalse3025.383544921875780.419189453125FalseFalseFalse2697.1584472656251174.3883056640625FalseFalseTrue4025.2570800781254025.2570800781254025.2570800781251569.566406251569.566406251569.56640625FalseFalseFalseFalseFalseFalseTrueTrueTrue6788.6227556616072240.9616330976364FalseFalsenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTruenannannannannannanTrueTrueTrue0.561406531104853572.6233176366386FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse3679.12673031293933679.1267303129393590.4167342683406590.416734268340663.1390863.13908FalseFalseFalseFalseFalseFalseTruenanTrue6512.3697115193591891.34560510308785.566623712.3684712.5775943TrueFalseFalseFalseFalseFalseFalseFalseFalseTrue1.07960348690313261.07960348690313261.07960348690313260.00.00.0FalseFalseFalse0.98901100461658790.98901100461658790.00.0FalseFalse1.03267997109310670.0FalsenanTrue148FalseFalseFalse0.66068492077529340.000175434508333632025.4251311679535574e-051.1426837834805705e-051.141633784541507e-05-5.433156114299284e-05
343634344557936771.2448480884818893-0.5305293049059350FalseFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse954.061989560037829.06547625082474FalseFalseFalseFalse954.5584573071816954.558457307181629.28749736385804429.2874973638580440.203527760.203527760.205920960.20592096FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.00.014623.1111468552614623.111146855260.014772.60175979895814772.6017597989586.6585700611322566.6230565282183010.150485801148428446.6585700611322566.6230565282183010.150485801148428447.1137923986141297.1703165243726490.268658763146544857.1137923986141297.1703165243726490.26865876314654485FalseFalseFalse-264.91941542692814-19.11212502636142FalseFalse0.9990083287121689False6.6700899526002986.62220462593963250.14253491146543850.90801370.63990090.90149504954.573413261197529.240647130333914770.577575810721005.37529190864.2163106455495614.2525712714890850.0016875964101364393-456.44727-9.753943-453.1704FalseFalseFalseFalseFalseFalse-0.0007250129000110385-0.0007250129000110385-0.002710912737762662-0.0027109127377626624.21805458014355054.21805458014355054.25435209462707054.25435209462707050.00153232840200310760.0015323284020031076FalseFalseFalseFalseFalseFalseFalseFalse0.0216637663543224330.134983032941818240.244274020195007320.3268186151981354FalseFalseFalseFalseFalse954.5892800171727954.589280017172729.1935795430455729.193579543045576.7267112752850736.7267112752850736.6110461201482826.6110461201482820.161333897248820330.16133389724882033FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse954.5911073660584954.591107366058429.19697936962498729.1969793696249876.6856238071588666.6856238071588666.6373505871910676.6373505871910670.062876927230968780.06287692723096878FalseFalseFalseFalseFalseFalseFalseFalse14794.82414794.8247587.01318359375399.8371887207031FalseFalseFalse11015.556640625592.1720581054688FalseFalseFalse13865.525390625789.1812744140625FalseFalseFalse15876.2363281251181.3076171875FalseFalseTrue17656.9648437517656.9648437517656.964843751574.43005371093751574.43005371093751574.4300537109375FalseFalseFalseFalseFalseFalseTrueTrueTrue19010.273544669152246.5604151080533FalseFalse15583.9120576083663297.4171022766773FalseFalsenannanTrueTruenannanTrueTruenannanTrueTrue15976.31548302353815976.31548302353815976.315483023538768.9222267674924768.9222267674924768.9222267674924FalseFalseFalse-0.2060061508026404576.23128616726464FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse12558.6418888763312558.64188887633605.0200626167991605.020062616799163.13031463.130314FalseFalseFalseFalseFalseFalseFalse5538.7890625False17480.2721216989271408.54580958985234.14784215.4919442.579028FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.0798414572820871.0798414572820871.0798414572820870.00.00.0FalseFalseFalse0.98999580726124210.98999580726124210.00.0FalseFalse1.0324565015155340.0False1.0False373FalseFalseFalse0.66068492077529340.000175434508333632025.424800863738766e-051.142651257718413e-051.141631890791689e-05-5.433032375204934e-05
........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
343634344557955261.244925596866761-0.534100003225981734363434455795134FalseFalseFalseFalse0True265.03650.014302.230335872551FalseFalseFalseFalseFalseFalseFalse265.05540783004563650.0645410457773FalseFalseFalseFalse265.3843373327795265.38433733277953650.19199488056033650.19199488056030.35503640.35503640.326454370.32645437FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.0108802454588834570.001777105303136017332244.46629341544432301.8701181035360.00243307178184404332313.5006626413732392.313486534111.71957362795913410.884548350098044-0.833682805859934311.81357724113937210.97811028447068-0.863017954125696611.84121765812219711.224752376504247-0.89153645893954611.9707982481893111.372833306333876-0.9179837587383392FalseFalseFalse-271.811156626672217.096919948805603FalseFalse0.9989573372986704False11.86701243918226810.947647323267608-0.85052133293887470.96939220.660206740.8942911265.38989137377713650.228814144786632685.3385264366731334.99957759230854.3235929920891534.2595889100520620.001186514466247905-647.069146.37613-596.9391FalseFalseFalseFalseFalseFalse-0.0005689975927163403-0.00056899759271634030.00164485341291607950.00164485341291607954.3257810721393264.3257810721393264.2618353974945724.2618353974945720.00130121975159247850.0013012197515924785FalseFalseFalseFalseFalseFalseFalseFalse0.0629287138581276-0.15770609676837920.076932124793529510.5851874351501465FalseFalseFalseFalseFalse265.3954672982481265.39546729824813650.26557952194033650.265579521940311.83981406924071911.83981406924071910.90070699062956510.900706990629565-0.8232152061890416-0.8232152061890416FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse265.4015749777141265.40157497771413650.26904275987453650.269042759874511.42350945678687211.42350945678687211.04108798381267711.041087983812677-0.3498216679422893-0.3498216679422893FalseFalseFalseFalseFalseFalseFalseFalse32461.26632461.26611726.7548828125406.55908203125FalseFalseFalse18582.734375601.3409423828125FalseFalseFalse25006.458984375799.4138793945312FalseFalseFalse33084.99218751191.9705810546875FalseFalseFalse37204.1679687537204.1679687537204.167968751584.66271972656251584.66271972656251584.6627197265625FalseFalseFalseFalseFalseFalseFalseFalseFalse38228.407548932592250.487402069827FalseFalse43174.828997186443302.777218786274FalseFalse44777.538067451744619.4269933694495FalseFalse40971.0081236577246591.313718163474FalseFalse42798.946154377489224.212458602919FalseFalse35359.1408310465535359.1408310465535359.140831046551021.21098864870181021.21098864870181021.2109886487018FalseFalseFalse4.47729303142225570.35063074750444FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse20388.27249768881320388.272497688813622.1294365399762622.129436539976262.62342562.623425FalseFalseFalseFalseFalseFalseFalse5516.1201171875False39245.9226878082852199.9076131063576.41425220.196662.5963488FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.08350364922985641.08350364922985641.08350364922985640.00.00.0FalseFalseFalse1.0046363915493891.0046363915493890.00.0FalseFalse1.03693364594445780.0False1.0False727FalseFalseFalse0.66068492077529340.000175434508333632025.424453093819629e-051.1424963875375136e-051.140223856831398e-05-5.432778407166719e-05
343634344557955271.2449142011974526-0.534081377813046234363434455795134FalseFalseFalseFalse0True259.03629.06789.925268903678FalseFalseFalseFalseFalseFalseFalse258.850134883380353628.981691340199FalseFalseFalseFalse259.40859127925853259.408591279258533629.30271399758753629.30271399758750.65759520.65759520.64932910.6493291FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.068203381526565380.00836450220872231314039.77220993234214158.1984924943390.01466618366255045814181.6543284957814392.7409100906738.927871231777169.916565412798029-0.1650323478571949.0198776111759510.312236149233078-0.177016353641093729.79649435259780310.924337185083164-0.287411087492951210.13178378743148411.691328666130014-0.21842560101202887FalseFalseFalse-271.870914087207416.88802713997588FalseFalse0.9989569810133287False8.9038469734924229.939664896806557-0.170947487489246351.47788021.1043151.6498077259.38736296531773629.322823634616314201.0818288979061178.5635248541814.32494362520913444.25837508701950.000687868071908279-870.887916.720427-972.20154FalseFalseFalseFalseFalseFalse-0.000551794109600448-0.0005517941096004480.00165525506129257630.00165525506129257634.3271304511790584.3271304511790584.2606198679797494.2606198679797490.00080093197245355520.0008009319724535552FalseFalseFalseFalseFalseFalseFalseFalse-0.13153430819511414-0.045161198824644090.210033640265464780.5153030157089233FalseFalseFalseFalseFalse259.36634051591665259.366340515916653629.34325518270633629.34325518270638.8833122992771978.8833122992771979.9402903456185329.940290345618532-0.13721134645883798-0.13721134645883798FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse259.3690590944655259.36905909446553629.33620315254263629.33620315254269.2041756022501819.2041756022501819.7219327583232739.721932758323273-0.02025702140040763-0.02025702140040763FalseFalseFalseFalseFalseFalseFalseFalse14237.41314237.4135832.53857421875396.99945068359375FalseFalseFalse8975.0595703125590.1179809570312FalseFalseFalse12007.8681640625787.8740844726562FalseFalseFalse14187.199218751181.004150390625FalseFalseFalse14389.7148437514389.7148437514389.714843751574.31433105468751574.31433105468751574.3143310546875FalseFalseFalseFalseFalseFalseFalseFalseFalse15492.6423395358872248.0755424431914FalseFalse16925.156638151023309.264912592939FalseFalse14889.1581670399614623.583947336352FalseFalse12059.1141975279756590.873601248678FalseFalse13144.8431809004259222.992112822367FalseFalse15379.40486491734715379.40486491734715379.404864917347902.5203054348267902.5203054348267902.5203054348267FalseFalseFalse1.191858614354383767.00529746224609FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse9723.7847568649819723.784756864981605.5613994304086605.561399430408662.6002362.60023FalseFalseFalseFalseFalseFalseFalse5521.943359375False14478.8075335363921594.01453254922974.63603418.3916872.5963664FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.08355294441216831.08355294441216831.08355294441216830.00.00.0FalseFalseFalse1.0046901470391211.0046901470391210.00.0FalseFalse1.03698929256032240.0False1.0False836FalseFalseFalse0.66068492077529340.000175434508333632025.424444753841895e-051.1424962675568037e-051.1402319833101437e-05-5.4327760018417975e-05
343634344557955281.2449254728685806-0.534068244085336634363434455795134FalseFalseFalseFalse0True272.03618.05157.345285942267FalseFalseFalseFalseFalseFalseFalse271.89986913787873617.9669637706247FalseFalseFalseFalse272.0077952577352272.00779525773523618.08788596531353618.08788596531350.97828520.97828520.860786560.86078656FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.038146450537033840.00655079693453541913452.90302236985413541.6113686120280.0184968185953059414519.8430667913814793.4752957306514.55807136648232911.8916865246172081.74065715398178114.81397939758338611.9762852653590151.788732187564357416.83334944078467615.1230156612118541.615190367824830517.9950519888338515.674156878992791.7052546503109858FalseFalseFalse-271.744922047422616.775878859653137FalseFalse0.9989579970335644False14.52154858959229211.6732380351992621.8240235381180572.93159911.876722.3565843271.985021685957463618.01939490931713573.5928396846281370.11326332484874.3248298163064034.2577427906608040.00029433802503238583-2008.3115-252.26007-1614.3938FalseFalseFalseFalseFalseFalse-0.0005369520929267961-0.00053695209292679610.0016517249760515010.0016517249760515014.3270091156412074.3270091156412074.2599862765543594.2599862765543590.000407643032400549540.00040764303240054954FalseFalseFalseFalseFalseFalseFalseFalse0.168817728757858280.208005443215370180.197470620274543760.6490440368652344FalseFalseFalseFalseFalse271.96055321393527271.960553213935273617.9417402773733617.94174027737314.45268924185017814.45268924185017811.70639461816583811.7063946181658381.68095131065669961.6809513106566996FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse271.93258773526895271.932587735268953617.938319247193617.9383192471913.60703747217867313.60703747217867311.94717833459310811.9471783345931080.8382702427531930.838270242753193FalseFalseFalseFalseFalseFalseFalseFalse13439.60713439.6074036.42822265625391.1447448730469FalseFalseFalse7389.86083984375589.20068359375FalseFalseFalse10070.9619140625787.344482421875FalseFalseFalse13503.63183593751181.171142578125FalseFalseFalse13139.821289062513139.821289062513139.82128906251574.448730468751574.448730468751574.44873046875FalseFalseFalseFalseFalseFalseFalseFalseFalse10652.9284970546142232.960802348357FalseFalse9040.8318053034163292.927341895643FalseFalse9874.0014288273674613.265727852803FalseFalse9919.6497056630476583.008173532293FalseFalse10294.9832193997729217.799626462558FalseFalse14711.84997697900914711.84997697900914711.8499769790091050.07430835789271050.07430835789271050.0743083578927FalseFalseFalse-1.27093576179818870.61304277907533FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse7606.5116771521177606.511677152117601.9190801210484601.919080121048462.60244462.602444FalseFalseFalseFalseFalseFalseFalse5508.53759765625False12789.6515357149317362.153455471564521.5484321.548432.596253FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.08358522566711211.08358522566711211.08358522566711210.00.00.0FalseFalseFalse1.00455578852823321.00455578852823320.00.0FalseFalse1.03700096053148070.0False1.0False606FalseFalseFalse0.66068492077529340.000175434508333632025.4244567110010486e-051.1424978128600213e-051.1402363407316377e-05-5.432780858440276e-05
343634344557955291.2449930234151778-0.534250378065634434363434455795176TrueFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse292.16808749330523814.022411544594FalseFalseFalseFalse292.22148283239613292.221482832396133814.36922304124763814.36922304124760.009607330.009607330.015700020.01570002FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.29453677045477880.09667699686331144564868.1575527575625322.45452768910.09667699686331144564868.1575527575625322.45452768911.466322458804388216.571744767738572-1.13422925889409341.50428860986364817.272166136940207-1.26091520024201791.466322458804388216.571744767738572-1.13422925889409341.50428860986364817.272166136940207-1.2609152002420179FalseFalseFalse-271.5427851716760318.73869223041248FalseFalse0.9989585594102354False6.71198188609959118.364199287435890.0440128988354016940.032956090.0385464770.09016892292.16393238909613814.3434382224181252715.45276552443075.4404930252964.3134429091589434.2696285876177240.0054393801746157305-50.677246-0.3323091-138.65459FalseFalseFalseFalseFalseFalse-0.0007195819788363534-0.00071958197883635340.0015587644211417380.0015587644211417384.3156169144449264.3156169144449264.2719072114940684.2719072114940680.0055703054489650850.005570305448965085FalseFalseFalseFalseFalseFalseFalseFalse-8.772138595581055-1.38179361820220950.0047896164469420910.5162673592567444FalseFalseFalseFalseFalse294.1996382128253294.19963821282533814.5288351888573814.5288351888570.89174478276820010.891744782768200115.81910122839711415.819101228397114-1.1374217844519394-1.1374217844519394FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse294.7442204143711294.74422041437113814.54467636259873814.54467636259874.4653302677698454.46533026776984515.11797588964815415.117975889648154-0.6534105071102224-0.6534105071102224FalseFalseFalseFalseFalseFalseFalseFalse407607.9407607.9418216.78125882.6574096679688FalseFalseFalse710495.18751220.579833984375FalseFalseFalse963104.81251535.0306396484375FalseFalseFalse1240726.252084.739501953125FalseFalseFalse1363309.6251363309.6251363309.6252513.8730468752513.8730468752513.873046875FalseFalseFalseFalseFalseFalseFalseFalseFalse1421683.63178253173037.8556368934765FalseFalse1430395.38087511063887.553038286202FalseFalse1440209.1829175655054.740085362096FalseFalse1435583.27515655766901.636873219653FalseFalse1437483.48345720779447.866097401762FalseFalse620225.0850904195620225.0850904195620225.08509041951337.39971141203981337.39971141203981337.3997114120398FalseFalseFalse11.81994493112487873.57381909215054FalseFalseFalseFalseFalseFalseTrueTrueFalseFalseFalseTrueTrueFalseFalse743638.8105053939743638.81050539391364.6619788311961364.66197883119662.4226962.42269FalseFalseFalseFalseFalseFalseTruenanTrue1257987.97995585062226.1164567999474.637756311.3517512.59635FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.0830817954715521.0830817954715521.0830817954715520.00.00.0FalseFalseFalse1.00439559758820841.00439559758820840.00.0FalseFalse1.03648663921009620.0False0.0False1048FalseFalseFalse0.66068492077529340.000175434508333632025.4244977152010895e-051.1424952806722041e-051.1401599944751488e-05-5.4327894828837496e-05
343634344557955301.2449849017092407-0.534252543829114534363434455795176FalseFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse283.89595044622843814.9471834191695FalseFalseFalseFalse284.69071630209805284.690716302098053815.07825814549463815.07825814549460.0159255880.0159255880.0216467830.021646783FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.26082386699537710.10377083092212513925253.35192604331032384.77819019350.1037709442049487925253.23291517471032384.77589233693.83582417951289921.606336075523233.6093100723938234.02959539217449422.5646954252965843.76599415979085663.835822031635304421.6062914554099733.60929993488091944.02959536369675922.5646946402296323.7659940005944765FalseFalseFalse-271.61809283697918.74578258145495FalseFalse0.9989579807078045False5.9426449844949979.0091076930048630.8820389038196103nannannan284.524340331168563815.1342794033917nannan4.3138058130102084.2696646762204160.005530599454272139nannannanTrueFalseTrueFalseFalseFalse-0.0007231597529344941-0.00072315975293449410.00156310637869839260.00156310637869839264.3159806152898664.3159806152898664.2719406558568844.2719406558568840.0056591517891521750.005659151789152175FalseFalseFalseFalseFalseFalseFalseFalse-1.40612506866455080.57061839103698730.0040763407014310360.6713664531707764FalseFalseFalseFalseFalse282.26484332720224282.264843327202243815.57785575704663815.57785575704662.89265160492554062.892651604925540623.314493778323923.31449377832394.3628149493460924.362814949346092FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse281.75348970544064281.753489705440643815.50418117984963815.50418117984967.05678957499024857.056789574990248522.6971778896028722.697177889602872.561956397097992.56195639709799FalseFalseFalseFalseFalseFalseFalseFalse497171.1497171.1402947.3125861.0286865234375FalseFalseFalse750532.93751240.687744140625FalseFalseFalse1044860.01568.1708984375FalseFalseFalse1354671.02121.65771484375FalseFalseFalse1480787.3751480787.3751480787.3752522.5637207031252522.5637207031252522.563720703125FalseFalseFalseFalseFalseFalseFalseFalseFalse1537743.73213529593038.5839910080085FalseFalse1548463.81061814733886.0065839380864FalseFalse1556413.41518165175051.807311913155FalseFalse1554121.6274361766902.115930663038FalseFalse1556428.40965937089445.887952202609FalseFalse1014742.38628386731014742.38628386731014742.38628386731736.4393604359011736.4393604359011736.439360435901FalseFalseFalse11.65636105799086672.53441189968692FalseFalseFalseFalseFalseFalseTrueTrueFalseFalseFalseTrueTrueFalseFalse726378.2072104862726378.20721048621297.98526341686491297.985263416864962.53542362.535423FalseFalseFalseFalseFalseFalseFalse5525.63134765625False1480495.7673235292564.31385061984475.39486415.8262232.596409FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.08307640554735231.08307640554735231.08307640554735230.00.00.0FalseFalseFalse1.00447406989734671.00447406989734670.00.0FalseFalse1.03649363619513980.0False1.0False1118FalseFalseFalse0.66068492077529340.000175434508333632025.424489958032433e-051.1424944972138423e-051.1401597213026765e-05-5.4327865567088934e-05
343634344557955311.2459597573433114-0.534138021490706934363434455795200TrueFalseFalseFalse0FalsenannannanFalseFalseFalseFalseFalseFalseFalse1157.0684062044193876.99298244023FalseFalseFalseFalse1157.7277328631481157.7277328631483877.08589037175623877.08589037175620.108183760.108183760.109902630.10990263FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.000141234468630471871.7344723203582824e-05100394.00468758204100395.746024007651.787011183107534e-05100374.55704271968100376.35077933339.8898352292905639.898462420795319-0.11126984014538749.8899766513791979.899271159990347-0.110932258173968869.8856330920304019.887632087711703-0.119279738203358129.8857827459491299.888487948647086-0.11892021009352799FalseFalseFalse-262.887722671368519.365858903717562FalseFalse0.9990232669897533False9.946129821901049.980610563326843-0.109973180349328220.280377720.198612450.281349721157.72720197729753877.0899307301101492.247257602631430.51442456701264.2705896157521924.276502732466754-0.0005655128086979028-200.542192.217371-201.23743FalseFalseFalseFalseFalseFalse-0.0005459005609173122-0.00054590056091731220.00098098993575551070.00098098993575551074.27260119611635954.27260119611635954.27858286310326454.2785828631032645-0.0005041222702805287-0.0005041222702805287FalseFalseFalseFalseFalseFalseFalseFalse-0.0008491663611494005-0.0263737589120864870.0259396173059940340.5335677862167358FalseFalseFalseFalseFalse1157.72657534902921157.72657534902923877.09374170294453877.09374170294459.9687542411642139.96875424116421310.00150039821389410.001500398213894-0.11454138124371488-0.11454138124371488FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1157.72615125037421157.72615125037423877.09352352490623877.09352352490629.9777070745302059.9777070745302059.9893525160369739.989352516036973-0.04860744545807447-0.04860744545807447FalseFalseFalseFalseFalseFalseFalseFalse101601.5101601.539112.3125449.5788269042969FalseFalseFalse63254.125651.9824829101562FalseFalseFalse81740.515625848.9248657226562FalseFalseFalse105050.02343751234.9793701171875FalseFalseFalse118275.640625118275.640625118275.6406251620.77185058593751620.77185058593751620.7718505859375FalseFalseFalseFalseFalseFalseFalseFalseFalse129807.765661656862281.084105483413FalseFalse137568.916821837433323.564156319519FalseFalse151593.696234822274634.793109774174FalseFalse148448.222777098426602.892701042807FalseFalse150508.95562851439229.945542223006FalseFalse110072.22509005692110072.22509005692110072.225090056921079.37416509708621079.37416509708621079.3741650970862FalseFalseFalse7.2808383433355374.96399300141816FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse67936.3106069664867936.31060696648688.0377525938139688.037752593813963.10587363.105873FalseFalseFalseFalseFalseFalseTruenanTrue129830.014535788162026.73126128919835.79233918.9589162.5909204FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.08335618200788721.08335618200788721.08335618200788720.00.00.0FalseFalseFalse0.99689343250531850.99689343250531850.00.0FalseFalse1.0355210854543740.0False1.0False627FalseFalseFalse0.66068492077529340.000175434508333632025.42540394216434e-051.1425819547440191e-051.1401353045710704e-05-5.433126346157582e-05
343634344557955321.2459743068782572-0.534156196514847434363434455795200FalseFalseFalseFalse0True1167.03898.07115.757626105833FalseFalseFalseFalseFalseFalseFalse1166.21711186389783897.9984480386324FalseFalseFalseFalse1166.53221031349311166.53221031349313898.09719085590633898.09719085590630.60886340.60886340.706619140.70661914FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.0029251840276775170.0001546504244454016718109.9561539466318112.757299550880.001184444795173211818632.3038907512618654.39899654980811.15491579765614614.93343806537913-1.420220880416603911.16206306988840814.971756167447191-1.430384831765552312.34649080464541116.368781026212975-1.53398350895203712.40539577741811616.561542589071205-1.6209449667240896FalseFalseFalse-262.7996778968650319.575971908559065FalseFalse0.9990238023690673False11.26107354852346815.170603859593006-1.2906236054883991.71437191.4138672.3095541166.53921687621463898.168698169969518435.030885100161403.2631637270484.2689139472305974.278012952665926-0.00012723222225750306-1202.8574137.85864-1620.456FalseFalseFalseFalseFalseFalse-0.0005652567545101314-0.00056525675451013140.0009574941177626030.0009574941177626034.2709272024928464.2709272024928464.2800900276726584.280090027672658-6.704677101608862e-05-6.704677101608862e-05FalseFalseFalseFalseFalseFalseFalseFalse-0.2812572717666626-0.26198160648345950.13423523306846620.6411068439483643FalseFalseFalseFalseFalse1166.55179748500271166.55179748500273898.24125363480433898.241253634804311.19804410610057511.19804410610057514.92473515659073914.924735156590739-1.5237920117654569-1.5237920117654569FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1166.55718164080621166.55718164080623898.20375161401853898.203751614018512.28944674358766212.28944674358766214.02943592326304814.029435923263048-0.5196668697889566-0.5196668697889566FalseFalseFalseFalseFalseFalseFalseFalse18454.98418454.9845782.52783203125395.9339904785156FalseFalseFalse9861.30859375591.342041015625FalseFalseFalse12889.2021484375788.9503173828125FalseFalseFalse17960.7792968751183.2213134765625FalseFalseFalse19679.12695312519679.12695312519679.1269531251576.5104980468751576.5104980468751576.510498046875FalseFalseFalseFalseFalseFalseFalseFalseFalse18880.089494569812249.0379281040996FalseFalse19768.2601220520453311.9330688200434FalseFalse25014.356918832874630.939360048382FalseFalse39048.2134919079256601.711980482198FalseFalse41580.724094560959233.325730362205FalseFalse19839.8572708964919839.8572708964919839.857270896491052.00748499425531052.00748499425531052.0074849942553FalseFalseFalse1.781284754093422570.14504646302876FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse10413.5177898155510413.51778981555604.5539709070258604.553970907025863.14723263.147232FalseFalseFalseFalseFalseFalseFalse5510.416015625False20662.841793247071792.0535531452785.2309121.497822.590895FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.08330573667498451.08330573667498451.08330573667498450.00.00.0FalseFalseFalse0.99681330369789430.99681330369789430.00.0FalseFalse1.03544880071832180.0False1.0False710FalseFalseFalse0.66068492077529340.000175434508333632025.42541523568566e-051.1425823599370101e-051.1401271296640192e-05-5.433129852122488e-05
343634344557955331.2464016799647009-0.534148523940537134363434455795242FalseFalseFalseFalse0True1540.03968.016324.295197429892FalseFalseFalseFalseFalseFalseFalse1540.07572163986153968.085464692677FalseFalseFalseFalse1540.18198862407441540.18198862407443968.3660736306113968.3660736306110.133431820.133431820.126554270.12655427FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.0174237811633967120.001180867469927848715976.71722627390815995.6059169630350.001315051903274633316005.65795243901316026.7339394093094.7622878872858714.3391458506335030.16940192777951544.7693474762797754.3463701951931110.173857181019406534.8968833998950794.4275889809234890.116740900283582574.9073839368919834.4377848470274260.12215519959728491FalseFalseFalse-259.0631801137592420.27866073630611FalseFalse0.9990508293882313False4.7856564220742614.3400201655178650.181374719196341880.504170840.339767250.45722291540.18174567584133968.37099890883616143.027985835683850.33726285005534.25159657613344.284953990835918-0.001765865133230056-214.35764-8.124079-194.39684FalseFalseFalseFalseFalseFalse-0.0005862018056268037-0.00058620180562680370.0006485695476134590.0006485695476134594.25354198978074654.25354198978074654.2869800086274244.286980008627424-0.0017315342987500406-0.0017315342987500406FalseFalseFalseFalseFalseFalseFalseFalse-1.034136176109314-0.7933378815650941.11571693420410160.05680600181221962FalseFalseFalseFalseFalse1540.18144492219311540.18144492219313968.37588849181253968.37588849181254.7923717343194184.7923717343194184.3499492355042744.3499492355042740.182590028194041350.18259002819404135FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1540.1807203831481540.1807203831483968.3739640558913968.3739640558914.641740620747964.641740620747964.4526611185652614.4526611185652610.087435417154457050.08743541715445705FalseFalseFalseFalseFalseFalseFalseFalse16121.91416121.91410189.3828125404.27020263671875FalseFalseFalse14091.8662109375596.2533569335938FalseFalseFalse16416.22265625792.023193359375FalseFalseFalse18276.121093751183.3023681640625FalseFalseFalse17431.742187517431.742187517431.74218751575.88708496093751575.88708496093751575.8870849609375FalseFalseFalseFalseFalseFalseFalseFalseFalse19570.986707142672245.894162436687FalseFalse22340.7934170208173294.2504439998133FalseFalsenannanTrueTruenannanTrueTruenannanTrueTrue17504.5658292590217504.5658292590217504.56582925902651.9926799697529651.9926799697529651.9926799697529FalseFalseFalse1.77284670360339871.42793895254714FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse16897.15317951519316897.153179515193616.4026790319986616.402679031998663.18477663.184776FalseFalseFalseFalseFalseFalseFalse5448.1787109375False17408.408317556212947.73104059828062.780603612.8155172.5893126FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.08334757258818651.08334757258818651.08334757258818650.00.00.0FalseFalseFalse0.99443808984283740.99443808984283740.00.0FalseFalse1.0350213584397990.0False0.0False491FalseFalseFalse0.66068492077529340.000175434508333632025.4258108637249615e-051.1426187679838835e-051.1400996716311422e-05-5.433275448024048e-05
343634344557955341.2463917545623717-0.534140266965706434363434455795242FalseFalseFalseFalse0True1533.03958.05078.4093157787665FalseFalseFalseFalseFalseFalseFalse1532.8979251167223958.0055588733926FalseFalseFalseFalse1533.2985261465471533.2985261465473958.2145056411523958.2145056411520.50603020.50603020.399038430.39903843FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.089506706021360850.0101857108955947244285.1770767922324329.2738081903290.014879331588040894554.6202847588014623.41358861241954.976423469103082.997219909527881-1.07215614498170165.0354535625292473.040376792546646-1.08955428884370386.10910153932663.4713852234520304-1.13552620873471446.26663833129817153.557914230927781-1.1568721880462485FalseFalseFalse-259.132014738534520.177145056411522FalseFalse0.9990503853783027False4.8190106385633763.1109897867717518-1.01695782396575441.63463930.960202751.05526771533.31281803305113958.1637006896864368.067301702919740.83825163223424.25251111512031254.284160859090671-0.0019430925863509322-605.5017127.7793-390.89133FalseFalseFalseFalseFalseFalse-0.0005766787891730347-0.00057667878917303470.00066391677085224340.00066391677085224344.25445498125868054.25445498125868054.28619073920799654.2861907392079965-0.0019073619344794328-0.0019073619344794328FalseFalseFalseFalseFalseFalseFalseFalsenannannannanTrueFalseFalseFalseTrue1533.32421516910311533.32421516910313958.10857555558823958.10857555558824.8474789404368274.8474789404368273.012716514998473.01271651499847-1.0322327230917647-1.0322327230917647FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1533.30965031630631533.30965031630633958.19525243376673958.19525243376674.6795061110220794.6795061110220793.9997484734847063.999748473484706-0.7661046200789208-0.7661046200789208FalseFalseFalseFalseFalseFalseFalseFalse4586.96834586.96833018.27001953125391.95452880859375FalseFalseFalse4138.234375584.7791748046875FalseFalseFalse4757.107421875781.8837890625FalseFalseFalse4449.3027343751176.0079345703125FalseFalseFalse5285.527832031255285.527832031255285.527832031251573.20080566406251573.20080566406251573.2008056640625FalseFalseFalseFalseFalseFalseFalseFalseFalse7118.9232383901252246.3398640161217FalseFalse10012.5081443868113296.2084315792385FalseFalse6947.6625084362464610.067918203507FalseFalsenannanTrueTruenannanTrueTrue4695.901521996044695.901521996044695.90152199604563.216179414021563.216179414021563.216179414021FalseFalseFalse2.61225893100450870.26298479226229FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse4941.4804227119434941.480422711943596.4206271584196596.420627158419663.25408663.254086FalseFalseFalseFalseFalseFalseFalse5542.6201171875False6398.78720759911811.7518099206975.3067611.5091832.589332FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.08337016582878241.08337016582878241.08337016582878240.00.00.0FalseFalseFalse0.99448990649746460.99448990649746460.00.0FalseFalse1.0350593771263550.0False0.0False485FalseFalseFalse0.66068492077529340.000175434508333632025.425802673321968e-051.1426183044261079e-051.1401036222190254e-05-5.433272731421545e-05
343634344557955351.246209816635579-0.534179090827244934363434455795246FalseFalseFalseFalse0True1367.03964.014162.995912889626FalseFalseFalseFalseFalseFalseFalse1366.10827515200163964.025837313888FalseFalseFalseFalse1366.67645393660451366.67645393660453964.2030186675213964.2030186675210.15728440.15728440.150545660.15054566FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.0446421481167848660.002357805587475225723657.8558599337923713.7683153678550.00306110947067073123756.28774898392323829.2316356225359.3690225336107377.370060306423696-0.393088836750072179.4776513189316087.396981815981239-0.39934913762659679.4145891089802487.688789229267123-0.45314800740703019.5718478633766137.730585239232739-0.4482303036416853FalseFalseFalse-260.798235460633920.237030186675216FalseFalse0.9990381682747081False9.400241156289427.396204136978322-0.39397214691780490.89681650.56312880.70562421366.67520505360543964.1974665989223931.4582454595951141.57315203420534.25745484854694744.283708771075981-0.0003005810650176955-511.890821.453781-402.76083FalseFalseFalseFalseFalseFalse-0.0006009154773438126-0.00060091547734381260.00076698187956534270.00076698187956534274.2594261697693164.2594261697693164.2857651827937444.285765182793744-0.0002517759641074484-0.0002517759641074484FalseFalseFalseFalseFalseFalseFalseFalse0.45044848322868347-0.16215735673904420.116948127746582030.4460219740867615FalseFalseFalseFalseFalse1366.6741623963991366.6741623963993964.19245845398653964.19245845398659.4044135509028739.4044135509028737.4029448561682687.402944856168268-0.38794831109012534-0.38794831109012534FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1366.68905208921271366.68905208921273964.18749100244673964.18749100244678.7161642751948358.7161642751948357.8838936904643317.883893690464331-0.11136608780855972-0.11136608780855972FalseFalseFalseFalseFalseFalseFalseFalse23834.57423834.57410442.3671875404.6681823730469FalseFalseFalse16091.796875598.8709106445312FalseFalseFalse20455.359375795.5891723632812FalseFalseFalse25980.1269531251188.091064453125FalseFalseFalse27563.61523437527563.61523437527563.6152343751580.6281738281251580.6281738281251580.628173828125FalseFalseFalseFalseFalseFalseFalseFalseFalse26929.918458368632250.593464159613FalseFalse25470.9656187024373303.917026392333FalseFalse31015.6340999927784619.756620950546FalseFalsenannanTrueTruenannanTrueTrue25932.95506071783525932.95506071783525932.955060717835879.9389652818297879.9389652818297879.9389652818297FalseFalseFalse0.2849427086868992563.13756836059633FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse18029.01116386749718029.011163867497616.8479602970584616.847960297058463.15906563.159065FalseFalseFalseFalseFalseFalseFalse5510.5263671875False27625.5591866753061415.58549847480194.14973417.3220922.5900161FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.0832485495510351.0832485495510351.0832485495510350.00.00.0FalseFalseFalse0.99544164041820120.99544164041820120.00.0FalseFalse1.03511566902273830.0False1.0False1017FalseFalseFalse0.66068492077529340.000175434508333632025.4256300513324244e-051.142601195994348e-051.140101350426891e-05-5.433207950710554e-05
343634344557955361.2462284914677926-0.53417697684496334363434455795246FalseFalseFalseFalse0True1383.03965.07756.607699519952FalseFalseFalseFalseFalseFalseFalse1382.93811965408283964.979563651045FalseFalseFalseFalse1383.38149995023081383.38149995023083965.4772895921263965.4772895921260.253744540.253744540.293341460.29334146FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.072838136784574650.00557708580387905612234.82872744478812303.4461020392630.00857437644743952512495.58925766382912603.6577639466016.8018062536200048.168714968408380.4843323733930226.8742512096024018.2509970636727310.47437791860855967.20171635320747958.7579769791504240.87757598791976727.3532087078793428.9499448441448630.8781537892862898FalseFalseFalse-260.631185000497720.249772895921264FalseFalse0.9990393862001781False6.8603336387456858.2079367308116830.49615832203091371.16994630.90686481.39976351383.39136252488673965.48679746581712370.0421923254621054.77991320595474.2568061938976774.283890362370223-0.00042041661181975486-617.0179-44.624443-738.2212FalseFalseFalseFalseFalseFalse-0.0006000253077965103-0.00060002530779651030.00075482121903267010.00075482121903267014.2587761201097794.2587761201097794.285942775567494.28594277556749-0.00037325644974721357-0.00037325644974721357FalseFalseFalseFalseFalseFalseFalseFalse-0.3878018558025360.311886101961135860.248592630028724670.3899599611759186FalseFalseFalseFalseFalse1383.4016504930661383.4016504930663965.49566575771633965.49566575771636.8643081311401486.8643081311401488.2264342809872478.2264342809872470.47545525620141180.4754552562014118FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1383.41183815201821383.41183815201823965.50079463037863965.50079463037867.2176624369928217.2176624369928217.866758284648467.866758284648460.13979133790193160.1397913379019316FalseFalseFalseFalseFalseFalseFalseFalse12393.41712393.4175896.54150390625397.12054443359375FalseFalseFalse8775.59765625589.82568359375FalseFalseFalse10976.267578125786.4100341796875FalseFalseFalse13743.707031251180.1549072265625FalseFalseFalse16206.10742187516206.10742187516206.1074218751575.07775878906251575.07775878906251575.0777587890625FalseFalseFalseFalseFalseFalseFalseFalseFalse16865.241611144972254.3587131420613FalseFalse19667.5973436348723310.402531034628FalseFalsenannanTrueTruenannanTrueTruenannanTrueTrue13410.67371172473813410.67371172473813410.673711724738808.5841857234597808.5841857234597808.5841857234597FalseFalseFalse1.928627597704993168.61652355200523FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse9861.4840460601379861.484046060137603.3405066107052603.340506610705263.13566663.135666FalseFalseFalseFalseFalseFalseFalse5533.28515625False16284.7259427503631868.82545110486585.46134416.4311452.5899448FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.08325554326477261.08325554326477261.08325554326477260.00.00.0FalseFalseFalse0.99533854875002830.99533854875002830.00.0FalseFalse1.03510275254217720.0False1.0False796FalseFalseFalse0.66068492077529340.000175434508333632025.425647548612485e-051.1426028674104553e-051.1401008490956522e-05-5.433214452722326e-05
343634344557955371.2462305663725444-0.534191971652177534363434455795246FalseFalseFalseFalse0True1382.03981.06077.767682285204FalseFalseFalseFalseFalseFalseFalse1381.92074614537553980.940096458849FalseFalseFalseFalse1382.01382.03981.03981.0nannannannanTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.058692292573801750.0033747390457931078646.3732853054128675.6513446458760.0061183814228417128913.602811349598968.4753644104136.30015718872657357.5085910421382071.54522285520240926.320008071782387.6828953973144041.59995366399307036.9600966611655858.775615524027481.6918742621029787.021676385085979.0809990720971041.7758969048229418TrueTrueTrue-260.64520.405000000000005FalseFalse0.9990391955263568False6.31482653083528967.5243232429807551.58517959389432961.4297871.13239971.70363831382.00916507031393981.0143012064628737.164180960042989.1233647647224.2557873601877744.285027130224648-2.9128004546002788e-05-707.1179-177.50429-842.55426FalseFalseFalseFalseFalseFalse-0.0006158978031172688-0.00061589780311726880.00073986166274417820.00073986166274417824.2577569100545544.2577569100545544.2870814448958334.2870814448958331.8702044189392283e-051.8702044189392283e-05TrueTrueFalseFalseFalseFalseFalseFalse-0.39649283885955811.04997193813323970.392429500818252560.34438425302505493FalseFalseFalseFalseFalse1382.01873670202461382.01873670202463981.02764529889243981.02764529889246.31302583505277156.31302583505277157.5209821380669117.5209821380669111.58725242673164081.5872524267316408TrueTrueTrueFalseFalseFalseFalseFalseFalseFalseFalseFalse1382.12421347290141382.12421347290143980.97441373050153980.97441373050156.3714393815867046.3714393815867046.999966101522866.999966101522860.60428084911322310.6042808491132231TrueTrueFalseFalseFalseFalseFalseFalse8644.658644.654399.7158203125391.2361145019531TrueFalseFalse6545.16015625588.3435668945312TrueFalseFalse7983.83544921875785.2445678710938TrueFalseFalse9288.1347656251178.813232421875TrueFalseTrue9585.41308593759585.41308593759585.41308593751573.1035156251573.1035156251573.103515625TrueTrueTrueFalseFalseFalseTrueTrueTrue9355.5672919619832235.992598683454TrueFalsenannanTrueTruenannanTrueTruenannanTrueTruenannanTrueTrue9462.0353629831869462.0353629831869462.035362983186757.4423027504329757.4423027504329757.4423027504329FalseFalseFalse2.498891169048622666.45097640705406TrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse7347.9453123978747347.945312397874599.6611305266663599.661130526666363.1433663.14336TrueTrueFalseFalseTrueTrueFalse5523.42578125False10068.2138345544771280.56829415401673.77741612.3684712.5899615TrueFalseFalseFalseFalseFalseFalseFalseFalseTrue1.08321229004813711.08321229004813711.08321229004813710.00.00.0FalseFalseFalse0.99532683441058470.99532683441058470.00.0FalseFalse1.03505015262780890.0FalsenanTrue657FalseFalseFalse0.66068492077529340.000175434508333632025.425647693673119e-051.1426023636492088e-051.1400948123403016e-05-5.433213975750047e-05
343634344557955381.2461882672325584-0.534187090207485634363434455795246FalseFalseFalseFalse0True1346.03968.05041.801322312057FalseFalseFalseFalseFalseFalseFalse1346.11302020726433967.994720241015FalseFalseFalseFalse1346.2181495882041346.2181495882043968.34810882863173968.34810882863170.84989980.84989980.52247660.5224766FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.076343550806701980.00271591932475334647426.0521220618777446.2756058773180.0056506090521973867803.0557092437977847.39828905211311.6727308658301274.6002444111235822.076938658076537411.7855101746921764.6040857016552422.04452025577719513.781348006592595.8122244592324872.93080927408818314.1481565995855335.81956303448174152.9363363589697977FalseFalseFalse-261.0028185041179520.278481088286323FalseFalse0.9990366438417521False11.967524708968274.6172573107266092.06818761230325963.2294731.47230181.2459811346.27237962535423968.3945622368237558.31137165916151019.81674471262194.2578605522686884.283911651019837-1.2777434470617057e-05-1646.7355-284.58334-635.3361FalseFalseFalseFalseFalseFalse-0.0006079189538759578-0.00060791895387595780.00077629158278883720.00077629158278883724.259840077222864.259840077222864.2859676257581264.2859676257581263.7135704167930355e-053.7135704167930355e-05FalseFalseFalseFalseFalseFalseFalseFalse1.34061634540557860.82434898614883420.356760263442993160.4488206207752228FalseFalseFalseFalseFalse1346.3397643410261346.3397643410263968.4388400134463968.43884001344611.70783276584050711.7078327658405074.6330796862826174.6330796862826172.1269337155036722.126933715503672FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1346.34599343065361346.34599343065363968.37521344482373968.37521344482378.380911084995818.380911084995816.0521002338794256.0521002338794250.5189301138086840.518930113808684FalseFalseFalseFalseFalseFalseFalseFalse7360.7357360.7353563.19091796875392.9546813964844FalseFalseFalse5367.29736328125585.8638916015625FalseFalseFalse6638.17724609375783.1600952148438FalseFalseFalse8230.57324218751177.132080078125FalseFalseFalse9236.03027343759236.03027343759236.03027343751571.5761718751571.5761718751571.576171875FalseFalseFalseFalseFalseFalseFalseFalseFalse10622.4318051375452244.4136250940496FalseFalse10935.0338408964673299.007605796851FalseFalsenannanTrueTruenannanTrueTruenannanTrueTrue8135.8896501709118135.8896501709118135.889650170911776.2610989111075776.2610989111075776.2610989111075FalseFalseFalse-0.1180439361493957568.6740834808746FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse6058.7148217666796058.714821766679597.3943444461914597.394344446191463.08370263.083702FalseFalseFalseFalseFalseFalseFalse5519.94140625False8765.3318792722481467.27786199021674.33460215.9324622.5901086FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.08322447867964011.08322447867964011.08322447867964010.00.00.0FalseFalseFalse0.99556230902499570.99556230902499570.00.0FalseFalse1.0351122896103450.0False1.0False677FalseFalseFalse0.66068492077529340.000175434508333632025.425609203827836e-051.142599015713901e-051.1400997453231113e-05-5.4332000100433e-05
343634344557955391.246187638470928-0.534170462457777334363434455795246FalseFalseFalseFalse0True1349.03951.03878.504248617397FalseFalseFalseFalseFalseFalseFalse1348.98276349045663951.0083385813814FalseFalseFalseFalse1349.2052401955251349.2052401955253951.44013205217063951.44013205217061.09255391.09255391.13113211.1311321FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse0.080210502884424180.0105717251322001729854.3537634330429959.644386299460.02434578992245928211012.01061422169711286.79659297171610.95113828861253312.69923714452103-1.6583173316240411.08821744154952413.399729495488183-1.880139546484168414.81415151780251416.634899665131474-2.40122452885681315.35538764705716918.10858274763087-2.64096708127304FalseFalseFalse-260.972947598044720.10940132052171FalseFalse0.9990369594507188False11.12203765381983612.747188440630683-1.64322808524147382.87878252.1999143.29942971349.15701282446413951.4498191841339977.065675882871291.21120960176154.2589122787071014.2826885677276305-0.000452452689920711-1858.558274.59305-2130.1304FalseFalseFalseFalseFalseFalse-0.0005903278915468046-0.00059032789154680460.00079110781749776850.00079110781749776854.2608867387101594.2608867387101594.284744831467694.28474483146769-0.00040343995079185574-0.00040343995079185574FalseFalseFalseFalseFalseFalseFalseFalse-0.12187790870666504-0.25592482089996340.269766062498092650.6184492707252502FalseFalseFalseFalseFalse1349.10717428634981349.10717428634983951.4652627444343951.46526274443411.20644142951059611.20644142951059612.67509776933058812.675097769330588-1.7621111024931604-1.7621111024931604FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1349.14168065237781349.14168065237783951.48837636138843951.488376361388411.57950814098126511.57950814098126511.97247931768152911.972479317681529-0.6262090686305767-0.6262090686305767FalseFalseFalseFalseFalseFalseFalseFalse9939.6579939.6573163.798583984375391.9346008300781FalseFalseFalse5850.236328125586.36181640625FalseFalseFalse7543.61572265625783.6709594726562FalseFalseFalse9449.08691406251177.7484130859375FalseFalseFalse10961.879882812510961.879882812510961.87988281251572.2585449218751572.2585449218751572.258544921875FalseFalseFalseFalseFalseFalseFalseFalseFalse12832.0449741468762246.825130705269FalseFalse13541.0343992590153300.1335255745475FalseFalse11296.6097211121764618.471900615759FalseFalsenannanTrueTruenannanTrueTrue10805.15810004839710805.15810004839710805.158100048397988.8105123426627988.8105123426627988.8105123426627FalseFalseFalse1.78938842383084969.14901615128935FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse5827.158717963945827.15871796394595.995573615741595.99557361574163.08018563.080185FalseFalseFalseFalseFalseFalseFalse5536.0625False14975.2551161782342801.54290981944548.19670620.5994822.5900831FalseFalseFalseFalseFalseFalseFalseFalseFalseFalse1.08327227191748941.08327227191748941.08327227191748940.00.00.0FalseFalseFalse0.99556474932644370.99556474932644370.00.0FalseFalse1.0351680924713310.0False1.0False676FalseFalseFalse0.66068492077529340.000175434508333632025.425610587080241e-051.1425997152908872e-051.1401063202783515e-05-5.433201106065285e-05
" ], "text/plain": [ "\n", " id coord_ra coord_dec ... base_CDMatrix_1_2 base_CDMatrix_2_1 base_CDMatrix_2_2 \n", " rad rad ... \n", " int64 float64 float64 ... float64 float64 float64 \n", "----------------- ------------------ ------------------- ... ---------------------- ---------------------- -----------------------\n", "34363434455793665 1.2451332744442976 -0.5304556590306023 ... 1.142678709084647e-05 1.1416404680850723e-05 -5.433135137285505e-05\n", "34363434455793666 1.2452265917705203 -0.530438773321301 ... 1.1426873652866909e-05 1.141640438854007e-05 -5.433168196149553e-05\n", "34363434455793667 1.2455904388452663 -0.5303748789081031 ... 1.1427210266113282e-05 1.1416395471676701e-05 -5.4332969390699597e-05\n", "34363434455793668 1.2458918800916443 -0.5303182780198765 ... 1.1427490786743164e-05 1.1416402304585242e-05 -5.433403886500767e-05\n", "34363434455793669 1.2474402257837838 -0.5300390671190951 ... 1.1428926225450304e-05 1.1416389677028427e-05 -5.433952282663981e-05\n", "34363434455793670 1.2453627799299263 -0.5304190738741331 ... 1.1426997742970785e-05 1.1416384519123379e-05 -5.433216053759257e-05\n", "34363434455793671 1.2471131524236843 -0.5301035067062136 ... 1.1428620562308176e-05 1.1416371258967178e-05 -5.4338360126495364e-05\n", "34363434455793672 1.2460871751393503 -0.5302917816570742 ... 1.1427667915344239e-05 1.1416366695754435e-05 -5.433472372808457e-05\n", "34363434455793673 1.2460685342396929 -0.5303038465951663 ... 1.1427646693167623e-05 1.1416332651287857e-05 -5.433465085209869e-05\n", "34363434455793674 1.2475199660735183 -0.5300375647019303 ... 1.1428994303754874e-05 1.1416338359542513e-05 -5.4339795066688467e-05\n", "34363434455793675 1.246226383263327 -0.5302736787687644 ... 1.1427793815123004e-05 1.1416338195930921e-05 -5.43352112786589e-05\n", "34363434455793676 1.2451962500250653 -0.5304612313978331 ... 1.1426837834805705e-05 1.141633784541507e-05 -5.433156114299284e-05\n", "34363434455793677 1.2448480884818893 -0.530529304905935 ... 1.142651257718413e-05 1.141631890791689e-05 -5.433032375204934e-05\n", " ... ... ... ... ... ... ...\n", "34363434455795526 1.244925596866761 -0.5341000032259817 ... 1.1424963875375136e-05 1.140223856831398e-05 -5.432778407166719e-05\n", "34363434455795527 1.2449142011974526 -0.5340813778130462 ... 1.1424962675568037e-05 1.1402319833101437e-05 -5.4327760018417975e-05\n", "34363434455795528 1.2449254728685806 -0.5340682440853366 ... 1.1424978128600213e-05 1.1402363407316377e-05 -5.432780858440276e-05\n", "34363434455795529 1.2449930234151778 -0.5342503780656344 ... 1.1424952806722041e-05 1.1401599944751488e-05 -5.4327894828837496e-05\n", "34363434455795530 1.2449849017092407 -0.5342525438291145 ... 1.1424944972138423e-05 1.1401597213026765e-05 -5.4327865567088934e-05\n", "34363434455795531 1.2459597573433114 -0.5341380214907069 ... 1.1425819547440191e-05 1.1401353045710704e-05 -5.433126346157582e-05\n", "34363434455795532 1.2459743068782572 -0.5341561965148474 ... 1.1425823599370101e-05 1.1401271296640192e-05 -5.433129852122488e-05\n", "34363434455795533 1.2464016799647009 -0.5341485239405371 ... 1.1426187679838835e-05 1.1400996716311422e-05 -5.433275448024048e-05\n", "34363434455795534 1.2463917545623717 -0.5341402669657064 ... 1.1426183044261079e-05 1.1401036222190254e-05 -5.433272731421545e-05\n", "34363434455795535 1.246209816635579 -0.5341790908272449 ... 1.142601195994348e-05 1.140101350426891e-05 -5.433207950710554e-05\n", "34363434455795536 1.2462284914677926 -0.534176976844963 ... 1.1426028674104553e-05 1.1401008490956522e-05 -5.433214452722326e-05\n", "34363434455795537 1.2462305663725444 -0.5341919716521775 ... 1.1426023636492088e-05 1.1400948123403016e-05 -5.433213975750047e-05\n", "34363434455795538 1.2461882672325584 -0.5341870902074856 ... 1.142599015713901e-05 1.1400997453231113e-05 -5.4332000100433e-05\n", "34363434455795539 1.246187638470928 -0.5341704624577773 ... 1.1425997152908872e-05 1.1401063202783515e-05 -5.433201106065285e-05" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "source_cat.asAstropy()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this vein, you may find it more convenient to grab columns from the table and work with them as numpy arrays. As we mentioned above, the defacto unit choice of DM is radians. If you would prefer degrees, you can do something like this" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.230615Z", "iopub.status.busy": "2021-04-23T20:36:01.229320Z", "iopub.status.idle": "2021-04-23T20:36:01.274892Z", "shell.execute_reply": "2021-04-23T20:36:01.273929Z" } }, "outputs": [], "source": [ "ra_deg = np.rad2deg(source_cat['coord_ra'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we will set aside the schema for this table, and look at the table itself so we can examine its methods.\n", "\n", "### afw source catalogs\n", "\n", "Source catalogs support a lot of fast operations for common use cases which we will now discuss. " ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.279465Z", "iopub.status.busy": "2021-04-23T20:36:01.278445Z", "iopub.status.idle": "2021-04-23T20:36:01.309363Z", "shell.execute_reply": "2021-04-23T20:36:01.310182Z" } }, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Sorting is supported. by default catalogs are sorted by id\n", "source_cat.isSorted(id_key)" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.314491Z", "iopub.status.busy": "2021-04-23T20:36:01.313590Z", "iopub.status.idle": "2021-04-23T20:36:01.354444Z", "shell.execute_reply": "2021-04-23T20:36:01.355669Z" } }, "outputs": [ { "data": { "text/plain": [ "['slot_ApFlux_instFlux',\n", " 'slot_ApFlux_instFluxErr',\n", " 'slot_ApFlux_flag',\n", " 'slot_ApFlux_flag_apertureTruncated',\n", " 'slot_ApFlux_flag_sincCoeffsTruncated']" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Find aperture flux columns\n", "[k for k in source_cat.getSchema().extract('*ApFlux*').keys()]" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.361982Z", "iopub.status.busy": "2021-04-23T20:36:01.360537Z", "iopub.status.idle": "2021-04-23T20:36:01.423405Z", "shell.execute_reply": "2021-04-23T20:36:01.424296Z" } }, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# You can cut on the catalog.\n", "# e.g. Make a boolean array to only keep sources with positive psf flux:\n", "psf_mask = source_cat['slot_PsfFlux_instFlux'] > 0\n", "psf_mask &= np.isfinite(source_cat['slot_ApFlux_instFlux'])\n", "psf_mask &= np.isfinite(source_cat['slot_ApFlux_instFluxErr'])\n", "psf_mask &= np.isfinite(source_cat['base_ClassificationExtendedness_value'])\n", "pos_flux = source_cat.subset(psf_mask)\n", "\n", "# You can sort on other keys too:\n", "flux_key = pos_flux.getPsfFluxSlot().getMeasKey()\n", "pos_flux.sort(flux_key)\n", "pos_flux.isSorted(flux_key)" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.432618Z", "iopub.status.busy": "2021-04-23T20:36:01.431646Z", "iopub.status.idle": "2021-04-23T20:36:01.591623Z", "shell.execute_reply": "2021-04-23T20:36:01.591015Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " id coord_ra coord_dec ... base_CDMatrix_1_2 base_CDMatrix_2_1 base_CDMatrix_2_2 \n", " rad rad ... \n", "----------------- ------------------ ------------------- ... ---------------------- ---------------------- ----------------------\n", "34363434455795535 1.246209816635579 -0.5341790908272449 ... 1.142601195994348e-05 1.140101350426891e-05 -5.433207950710554e-05\n", "34363434455795536 1.2462284914677926 -0.534176976844963 ... 1.1426028674104553e-05 1.1401008490956522e-05 -5.433214452722326e-05\n", "34363434455795537 1.2462305663725444 -0.5341919716521775 ... 1.1426023636492088e-05 1.1400948123403016e-05 -5.433213975750047e-05\n", "34363434455795538 1.2461882672325584 -0.5341870902074856 ... 1.142599015713901e-05 1.1400997453231113e-05 -5.4332000100433e-05\n", "34363434455795539 1.246187638470928 -0.5341704624577773 ... 1.1425997152908872e-05 1.1401063202783515e-05 -5.433201106065285e-05\n" ] } ], "source": [ "# You can get the children of particular objects.\n", "# This is useful if you want to understand how one object was deblended, for example:\n", "if dataset == 'HSC':\n", " print(source_cat.getChildren(33447624753285130)) #the argument is the id of the parent object\n", "elif dataset == 'DC2':\n", " print(source_cat.getChildren(34363434455795246)) #the argument is the id of the parent object\n", "else:\n", " msg = \"Unrecognized dataset: %s\"%dataset\n", " raise Exception(msg)\n", " \n", "# Note that this will only work if the source catalog is sorted on id or parent" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can check if catalogs are contiguous in memory." ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.597614Z", "iopub.status.busy": "2021-04-23T20:36:01.596959Z", "iopub.status.idle": "2021-04-23T20:36:01.665747Z", "shell.execute_reply": "2021-04-23T20:36:01.666973Z" } }, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "source_cat.isContiguous()" ] }, { "cell_type": "code", "execution_count": 40, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.673464Z", "iopub.status.busy": "2021-04-23T20:36:01.672040Z", "iopub.status.idle": "2021-04-23T20:36:01.719469Z", "shell.execute_reply": "2021-04-23T20:36:01.718068Z" } }, "outputs": [ { "data": { "text/plain": [ "False" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pos_flux.isContiguous()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Some operations are quicker if catalogs are contiguous in memory, like using numpy-like syntax to create masks. Eli Rykoff performed some benchmark tests showing this is the case for a catalog with about half a million enteries. You can find the full details in a Slack thread [here](https://lsstc.slack.com/archives/C2JPL2DGD/p1525799998000344). Additionally, certain operations will not work on non-contiguous tables." ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.725224Z", "iopub.status.busy": "2021-04-23T20:36:01.723803Z", "iopub.status.idle": "2021-04-23T20:36:01.766269Z", "shell.execute_reply": "2021-04-23T20:36:01.759803Z" } }, "outputs": [], "source": [ "# uncomment the last line if you are curious and want to prove it wont work\n", "# this will not work and give you an error message complaining pos_flux is not contiguous\n", "# pos_flux.asAstropy()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can always force a table to be contiguous by making a deep copy of it. " ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.778776Z", "iopub.status.busy": "2021-04-23T20:36:01.777373Z", "iopub.status.idle": "2021-04-23T20:36:01.857567Z", "shell.execute_reply": "2021-04-23T20:36:01.858925Z" } }, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pos_flux = pos_flux.copy(deep=True)\n", "pos_flux.isContiguous()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In the next few cells, we show a few methods that can be used to search through tables" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.865731Z", "iopub.status.busy": "2021-04-23T20:36:01.864324Z", "iopub.status.idle": "2021-04-23T20:36:01.910513Z", "shell.execute_reply": "2021-04-23T20:36:01.908981Z" } }, "outputs": [ { "data": { "text/plain": [ "slice(1077, 1585, 1)" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Use the between method to get the indices of values within a range:\n", "pos_flux.between(1e4,1e5,psf_flux_key)" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.917410Z", "iopub.status.busy": "2021-04-23T20:36:01.915964Z", "iopub.status.idle": "2021-04-23T20:36:01.952837Z", "shell.execute_reply": "2021-04-23T20:36:01.951489Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "9964.234820884494\n" ] } ], "source": [ "# The slice object tells you the (start, stop, stride) for values that fit our query.\n", "# You can check to see that the first record outside the slice is above the flux threshold\n", "# (since the slice range is different for the HSC dataset and the DC2 dataset we use as \n", "# examples, we utilize an \"if... elif... else...\" block here)\n", "\n", "if dataset == 'HSC':\n", " print(pos_flux[2033].get(psf_flux_key))\n", "elif dataset == 'DC2':\n", " print(pos_flux[1076].get(psf_flux_key))\n", "else:\n", " msg = \"Unrecognized dataset: %s\"%dataset\n", " raise Exception(msg)" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.960208Z", "iopub.status.busy": "2021-04-23T20:36:01.957773Z", "iopub.status.idle": "2021-04-23T20:36:01.989391Z", "shell.execute_reply": "2021-04-23T20:36:01.988092Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "95068.42181208971\n" ] } ], "source": [ "# and that the last element in the slice is inside the threshold\n", "# (again, since the slice range is different for the HSC dataset \n", "# and the DC2 dataset we use as examples, we utilize an \n", "# \"if... elif... else...\" block here)\n", "\n", "if dataset == 'HSC':\n", " print(pos_flux[2311].get(psf_flux_key))\n", "elif dataset == 'DC2':\n", " print(pos_flux[1584].get(psf_flux_key))\n", "else:\n", " msg = \"Unrecognized dataset: %s\"%dataset\n", " raise Exception(msg)" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:01.994987Z", "iopub.status.busy": "2021-04-23T20:36:01.993532Z", "iopub.status.idle": "2021-04-23T20:36:02.021381Z", "shell.execute_reply": "2021-04-23T20:36:02.020279Z" } }, "outputs": [], "source": [ "# your turn. confirm the lower limits of the between query\n", "# pos_flux[...].getPsfFlux\n" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:02.026592Z", "iopub.status.busy": "2021-04-23T20:36:02.025286Z", "iopub.status.idle": "2021-04-23T20:36:02.051079Z", "shell.execute_reply": "2021-04-23T20:36:02.052182Z" } }, "outputs": [ { "data": { "text/plain": [ "1077" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#the upper and lower bound methods work similarly\n", "pos_flux.upper_bound(1e4, psf_flux_key)" ] }, { "cell_type": "code", "execution_count": 48, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:02.057461Z", "iopub.status.busy": "2021-04-23T20:36:02.056156Z", "iopub.status.idle": "2021-04-23T20:36:02.081698Z", "shell.execute_reply": "2021-04-23T20:36:02.080651Z" } }, "outputs": [ { "data": { "text/plain": [ "1585" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pos_flux.lower_bound(1e5, psf_flux_key)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example: Star-Galaxy Separation\n", "\n", "Now that we have introduced the functionality of the source catalog and its schema, we will do a toy example of star-galaxy separation. This small demo will also flags and fields that users are use, and ultimately make a plot." ] }, { "cell_type": "code", "execution_count": 49, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:02.087430Z", "iopub.status.busy": "2021-04-23T20:36:02.086177Z", "iopub.status.idle": "2021-04-23T20:36:02.117135Z", "shell.execute_reply": "2021-04-23T20:36:02.116128Z" } }, "outputs": [], "source": [ "# let's select sources that were not deblended\n", "select_mask = source_cat['deblend_nChild'] == 0\n", "select_mask &= source_cat['parent'] == 0\n", "\n", "# use the extendedness column for a mock star/galaxy seperation\n", "# we only want to use columns where this algorithm worked\n", "# the flag is set true if there was a failure, so we invert the flag values here\n", "select_mask &= ~source_cat['base_ClassificationExtendedness_flag']\n", "\n", "# we will also use the sloan shapes to measure size\n", "select_mask &= ~source_cat['base_SdssShape_flag']\n", "\n", "# and a simple aperture flux for the brightness\n", "select_mask &= ~source_cat['base_CircularApertureFlux_12_0_flag']\n", "\n", "# only consider sources with positive flux\n", "select_mask &= source_cat['base_CircularApertureFlux_12_0_instFlux'] > 0\n", "\n", "size_bright_cat = source_cat.subset(select_mask)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we make a crude size magnitude diagram, color coding the data by their 'extendedness value'. The extendedness will be 1 for extended sources-like galaxies-and 0 for point sources-like stars. One hopes the stars will all live on the stellar locus..." ] }, { "cell_type": "code", "execution_count": 50, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:02.123031Z", "iopub.status.busy": "2021-04-23T20:36:02.122127Z", "iopub.status.idle": "2021-04-23T20:36:02.320059Z", "shell.execute_reply": "2021-04-23T20:36:02.321287Z" } }, "outputs": [ { "data": { "text/plain": [ "(5.0, 15.0)" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAo4AAAHDCAYAAACqIJvPAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAACTR0lEQVR4nO3deZyN5RsG8OvB2PexL9mikCRaCEmJFKIUFSmVFi2iRIslRdZKqyxRlChLKZVUUkokRaTIvq9jncU8vz+uOb85M3POmfecOdvMXN/P53zMvOc97/ucGcw9z/Pc922stRARERERyUyeSA9ARERERLIHBY4iIiIi4ogCRxERERFxRIGjiIiIiDiiwFFEREREHFHgKCIiIiKOKHAUEREREUfCFjgaY14yxqw3xsQZY3YbY94xxpROd05PY8xmY8wpY8wvxpjGmVzzXGPMEmPMSWPMTmNM/9C+CxEREZHcK5wzjmcB3AEgFkBDAFUAvOt60hjTHMCbAB4AUArAxwA+N8YU93QxY0xeAJ8C2ACgLICOAAYaY24N3VsQERERyb1MpDrHGGPaAfjIWls85fPpAPJYa3ukfG4AbAPwrLV2uofXXwVgEYBy1toTKceeB9DcWntVmN6GiIiISK4RyT2OVwNY6/Z5QwCrXZ9YRrRrUo570hDAJlfQmOI3H+d7ZIyJNcbUSXnE+vNaERERkdwkXyRuaoy5CcD9AK50O1wMwLF0px4F4HGpOoDzvXkYwBAAKFSoEJo0aeLny0UkJHbvBk6cAKpUAQoXjvRovNu9G9izByheHKhdO9KjERHJstWrVx+01pb19FzYA0djTFcAbwPoaK39ze2p4wBKpDu9JIDNXi7l7fw4P4c0EcAsAKhTp87fq1at8vPlIpKrvfwy8MILwNVXAx9+GOnRpPrhB6BGDQbe4Xb2LJA3b/jvKyJBYYzZ5u25sC5VG2PuAoPGDtbab9M9vRbAxW7nGgAXIe1ydvrz6xhjirgda+TjfI+stYestZustZvy5YvIBKxI7pOQANx3HzB0KHD8eGjusXEj0KUL8O67obm+y2OPAevWATNnhvY+/vjwQ6BtW6B9+/Df+447gHPPBT76KPz3FpGQC2c5nkcAjAXQ1lr7o4dT3gHQxRhztTEmP4D+AAoCmOflksvA5JkXjTGFjDEXAegDBqYiEs0++wx45x1g5EigTh3gpZeCc92HHgKuuAL4809gwgRg3jzeJ9TKl4+OGbYRI4BrrgHWr+es36FD4R/Dtm18bNgQ/nuLSMiFc8bxFXD/4bfGmBOuh+tJa+1yAA+CAeQxALcAaG+tjQMAY8w5Ka9pkXL+WQAdAFwA4BCAzwGMsdZG0VqRSA729ddAq1bAq6/6/9rWrYGiRYHERGDvXuCrr7ifMauWLQN++glYsADo1w/o3Bm4996sXze7WLAA+OYbfm8SEoBSpTyfF8pqGjNnAtOmAc88E7p7iEjERKwcTzRq0qSJ1R5HEYfuvpsBQuvWDFb8kZwMNG/OoLFUKeC334Du3YFZs9Kel5TEmbMCBZxd99NPgeXLgWHDgIIF/RtTTjBvHvDFF8Bzz3HvZYsWQKdOac956ilg9mzg0Ue5zC4iko4xZrW11mO2sDb1iUhghg0D8uThnjYXa4FBg4AjR4DXXgNiYjy/Nk8eJm/MmAG8+SZQuTL3xbk7fZrB5YkTwJIlQNWqmY+pQwc+cqr33gM++YRf+wsvzPh85858AMDYsZ6vsXEjsHUr92WKiPhJvapFcrIzZ4Bx47jnLNiqVgUmT+Zytcu+fdxTOGkSA0Nf8uYFRo8Gfv0V6NMHGD487fPx8cDBg7xmMPfqrVrFYHfFiuBdM1zeeQeYPz+w7QEukycDr7yStWuEWzSujCUnR3oEIhGhwFEkJ3vqKWDAAC4rh0P58gzKevRgkooHGzZwUvLYMTDrt3Vr4LbbMp5YsiSwcCGXny+6iMes5bJ2VvZDjhrFfXj+JOTMmAE8/3zkg4UHHmCmeL9+gV+jTBngkUeiuzamu3/+AS64gH9PIv31d5kwAahZExg4MNIjEQk7LVWL5GQXX8yi1PXqhed+xnA2y4dHHuHK86FDwKRJ43xfr2G6RlDjxgFPPw20bMkEkMy89hpQogQDWZcePVgCyH2J3ZdTp3jP3buB+vUZuEVK9+585Cb//ANs2cKtCwkJ0bF3df16zuJv2hTpkYiEnWYcRXKio0eB3r0ZyG3aBEycGOkR/V/TpowHW7cO4MVFivDhJHhYuZKzrY8/ziQcl06dgC+/BG6+OfXY77/z6+VeQub++4HGjTnD2awZE02aNw9g0GESHw/s2hX86y5aBHTtyiX+SGjfHpgyhfs7oyFoBLjM/9prHJdILqOsajfKqpYcY9AgLsk2aAD88Uf47jtlCjOh+/QJ3T127gTKlQPy5/d93tGjTJQpUoRL3t7O//prLuXv3Mlgcs4cHncFjUOGsFC5uyNHGKhVqJDVdxM87dsDv/wCjBkT3K0J7dox0L7ttugqci4iIaOsapHc5u67gTVrOFMWLv/9B/Tvz9qMrVoB553n/LWuLN/rr+csqS9OW+iVLJl5gg7AANsVjN50U+rxl1/mmvqgQWnPP3GCX9e4OGDpUv/eZyidOQOcPBmcepjuevdm0H3//cG9rohkSwocRXKi2rWBxYvDe88KFYAmTZjAULmyf6/t0oX7xiZOZCvCcLr1VmZ4DxoEXHVV6vEWLfhIz1rOqrpqTKY3fz4zlx95BLj22pAN2+N9N28GGjUK7nW7duVDRAQKHEUkWAoV4gxdIMqVAw4fBqpVC+6YnLjvPufB6rFjnNX78UfO8J1zTsZzpkzhvsDChcMbOBYv7jxoTExkZ5f69YGePYM7Dmv5y0M0tGAUkaBTcoyIhM/q1UC3bhkDzM8/Z2JK27aRGZcTiYmcgbz4Yi6tn3MOl4Xbt+feyKQkntevH3DLLVy2D6bPP+dS/sKFWb/WtGmsoTl0qOcSN9YCc+dyBtNfN9wAnH8+O/iISI6jGUcRCZ8xY9juLi4OuOaa1ON58nDGMtqdPZt2iXrdOibXFC8O7N8PVKrEdPGAUsYzMXkyg8d8+YCOHbN2rfbtuSxfqxa/9um98QbbETZowAQhf2zfzsD6r7+iOwtdRAKiwFFEwufee1lDsVcvz89PncrgaORI7tOMJjExwLJlDHpr1OCxyy5j1nXx4gwa/ZGc7Dlo82bAAAaNffv6dx9PqlRhYo83557LzkD+vieAvxisXcuZZW+sBV54gX8+80zmCVEiEjVUjseNyvGIRNjll7OkzIMPAq+/nvXrHT3KvXbFimX9WsH03XfcV1m3LrBgQaRH41lCAoPlUAR1f//NJf/kZM5o1q0b/HuISMBUjkdEsod77+Us16OP+v/a5GR2eSlalJ/v3s2l0gIFgJ9/ZgeZaLF+PcsXBdL2z/XLfqhn6TKrk5kVNWpwudxatu4TkWxDgaOIRI/evfkIRNeunK0cPZrFqs+cYfJKUhITW6LJgw9yFrSJx1/ovUtM5P7JI0eYuR2JLPRgyJ8/tdC6iGQrChxFJDKmTGEbu7Fj2d0lq/bvB/btA3bs4Oc1azKzN39+oEyZrF8/mIwJrAzOmTNMPjl4kH9m18BRRLItBY4iuUByMmONcuUiPRI3o0ezj3a1asBTT2X9enPnsj/1DTekHqtTJ+vXjSanTzO7+vhxz8XJQyU5mcGuklhEcj3VcRTJBe6/n7Wehw+P9EjcdOoEXH01O7cAHFzLloHX/ytfnr2pc2pw8+OPQMOG7HBz443hu++ePcCFFzJx6fTp0N3n3Xf5F/XkydDdQ0SyTIGjSC5w9Chw6BBnHaNGx47Av/8Cd97Jz7/4gr2lP/rI+2vWrGFSSU6TnMw9mlddxW+UJ6dO8XHmTGqCTDjs3ctl8V27eH+XPXs4YxwsL70EvP02MH588K4pIkGnpWqRXODdd4E+fYBWrSI9Ejd79nBfYtGiDISGDWNpmqFDPZ//yy/sLFOmDPDHH4FlJEer48c5o3jgAPDrr0C7dhnPadMG+Okn7jcIZzu/Ro1Ym7FECSA2lsdOneLs8K5dfP6997KeHd2pE7vx9Ojh7PxwZZeLSBqq4+hGdRxFHEpKYjHqrPruO5ZmcZLk8ddfLOFSujTL64SyXIxTffuykPaIEUCXLlm71tSpDKYHD47+YOjMGeDSS9kmMimJy+f9+vF7E46g9tAhZpcXLMivfzCSq0Tk/3zVcdRStYj45+672Vlk+vSsX6tVK+eZwfXqsSPJjz9GR9AIcHl9wwbfy+tO3X038PTTGYNGa9nCz9XmMBoULMjvw/jx3Pv45Zcs4h1Ipngg9u/nloVt2zhbKyJho8BRRPyzdSt/YG/cGP57lygRXT2tS5fmn+nH9M03wB13cJY0q4YOZVJMoPUtQ6VYMeDhh4HDh9n95fBhbqYNh7p1gVmzgJkzgQoVwnNPEQGgPY4i4q+ZM4GvvgJuvz3SI4m8ESO4/2/YsLTHx4zhLJy1/HplxenTzDQ+cyZr1wmVW28Ffv+dgfJ114Xvvu5ll0QkbLTH0Y32OIqAe9befpuJKOeeG+nRBJe17Cqzezfw4YdAxYqhuc/06QwYn3iCSS3ufviBy7wDBjjbJ+rq59ygAdsnioiEmPY4iohzw4cz6cNVJufIEQaRd97pfxmYAwf4ulmzgj/OQMTHMzN5+XJg2bLQ3efOOzkrmz5oBICHHmIyyYQJzq6VJw9bE3oKGq0FXngBGDcua+P11+efR2argohEnJaqRSStRo2A2rX5AJj5/PXXnJ07eZLlc5waORKYMQNYt44zfZFWsCADrc2bWTcxEho2ZDB45ZVZv9batQz0CxUCbr45PC0I583jNoVq1YD16/leRCTXUOAoIml17szOJK7s3o4dgSefZI09f4JGALj3XmYdR1MByTvuiOz933sveNeqU4ezmvnzA5UqBe+6vlStyl8iypWL/rJBIhJ02uPoRnscRbywlkkaOanodm7z77/A2LHAI4+wtFFWxMcDMTGabRTJobTHUUScOXSI+9eSk9Me79YNOO+8rGcIS+QMHsykp8GDs36tAgUUNIrkUvqXLyKpunbl0vQLL6Q9vmcPHzmxT3ROkdnqUceOQNOmwPXXh2c8IpIjKXAUkVRlynDvWuXKaY9/9BEfwZitkuBzdfPx1cHmjjuYUX7vveEbl4jkOAocRSTVhx8ymeXuu9Mer1CBvZiz2/LkihUc98KFnp8/fZrZyHfeGV0t/fz177/Ali3MshYRCaFs9lNAREIqTx629cspXn2V5WOefJLB8MmTaZ///Xc+v3Ahl+IDkZQE9OoF9OgBJCY6f92kScAttwA7dwZ2X3czZgBvvMH2hCIiIaTAUURCY/9+oF8/1vqLlIcfZmmhw4eBadP4cHfZZUD//sDjjwNVqgR2j82bU5fy//7b+eveeguYMwcYPz6w+7qrXh144AFmOkejn3/m10lEsj3VcRSR0Bg4EHj3XS59L14cuvts3w4MGQJ07w5ce23a55o144zi4MHsdJK+v3aePMDo0Vm7f506DFCTk4H69Z2/7q67WET7kUeydv9ot2wZ0KED987++SeLsItItqXAUUSC4/Rplu2JiQE++IBtCv/8E7jqqtDed/hwBqhbt2YMHF1efDF09zcGeOkl/1/38MN85HSxsUDp0kDJks56c/viyhxX4XGRiNFStUhO9c477Ngyf3547vfPP5xZ/Oor7tvr1g1YtYozj4F69FHgmmsYFHrTowfQujU73kj0qV+fv0AsX561wPHYMfbsbtKEH4tIRGjGUSSnmjcP+P57tqK78Ubf5yYm8odxmTKB369BA+DZZ9n+rkaNwK9z/DgwZgwDwi++YEA6Zw7wxBNpz7OWmdBXXgl8803g95PQ87dVpSdHj/IXCGuBI0dyVhKXSDYS1hlHY0w3Y8wPxpg4Y0xSuucGG2NOpHtYY8yrPq73nTEmPt1rbgj9OxHJBoYMYSbxsGGZn9u+PQO/uXMDv58xwDPPMIM5K554Anj+eeChh3i9Rx4B+vZNe05iIotZn3cesHRpxmu8+SbQogWDZ8kZqlUDZs3io3r1SI9GJNcK91L1EQBvAHgs/RPW2hettUVdDwAXA7AA3s/kms+7v85a+1nQRy2SHV12GTBlClC7dubnHj/OWZzDh0M/rsw0b87lzUsuAXr2BF55BShUiM9Zy9nHW28FfvmFnWw2bsx4jU8/5dJoVgLhQM2Ywffwfmb/dQXR7bcDl14K/PVX+O4ZCW3bAu3a+T7n5EnutxWRkAhr4Git/dJa+wGALQ5Ovw/AGmvtylCOyRgTa4ypY4ypk5SUlPkLRLKDpCS2Dfz2W2fnL1rEc++7L7TjcqJlS6B4cS5Rp2+jN3s2l7C/+47ntGvHMjTpDR/ODikjRmR8butWFswOlXnzgB9/DN/eUgD49VfuJ3X6/c6pdu4EGjbkL03pa3aKSFBE5R5HY0wBAL0AOOlv9pgx5nEAe8DZybHWWj+q8OJhAEMAYP/+/X6OVCRKvfwyl3nr1wfWrcv8/NhYLv1Ggx9/5Gzinj0MgN1rE9apwyXLKlU4s1epkucMW1cSRXoHDzIwjY9nbcGs7MX0ZsQIoGxZ4LHHgn9tb15+GVizBrj//vDdMxrFxXHWPDGR3+MiRSI9IpEcJyoDRwA3A8gPYFYm5w0CsBFAHIBLAMwEUDzluFMTXfcpV66cH9V7RaJY69bAxRf7V1cwGFatYkeUp54CatYM7Bq33spZwfPOy1jQ+uKLuRybJw8Dxr59mbE7eXLaJfnERD6fPos3Xz4GE3nzAgUKBDa+zNSvz69BMOzdy/2nxYszWz1/fs/ntW/PR25Xrx4TpQoVYgkgEQk6Y9MvBYXjpsa0ArDEWusxcDXGLAOw3lrrYQ3K53VvBzDKWls1kHE1adLErlq1KpCXiuQ+Z88CO3ZwBtA169e+PTOhb7sNmDnT8+uOHwcmTmQB7IoVszaG889nt5ZRo1LL/mzfziXsmBgWn06ffRsXx2LdJUtm7d7h8NNPLEdUqhRnjkuVSvu8tcC2bUDVqgyGRUSCwBiz2lrrYdkmCus4GmPqAWgB4K0AXp4MQJVhRcKhVy/uJxs+PPVYx45MDLn5Zu+ve+wx4OmnuQcxq55/ni0DH32Un//7L7OpN23iUrenfW7FiwceNG7eDKxYEfBw/dasGfD228DUqRmDRoC9qRs2ZPa8iEgYhLscT15jTEFwGRrGmIIpD/dgrw+An621azO5VkljzA3GmKKGGgEYCmB2qMYvIm7i4zNmsN5/P/DDD76LcTdpwr2KVarwvClT0j6fmMgZQSe6dgXGjk1tY3fkCOtRlivH7jWVKvn3nnyJjweuu46ZveFMQunRg/f05PRpfg/OnAnfeEQkVwv3jGMPAKcBfAkgb8rHpwFUAwBjTCEAPeFlttEYs94Y40qYiQHwDIBd4B7H2eBeRX/2N4pIoGbMYBKLv+38HniAy8sAM4/dA8c//uA+tVatMmZUp7dvHwuFnziReuySS9i9ZulS4Oqr/RtXZvLm5UxlbCyTXyLJWmaY9+zJJJ8ZMzKes2cPZ3+7dHEeiIuIZCKsyTHW2ncBvOvj+dMAPKzH/P/5+m4fHwBweRCHJyL+KFgQaNw48Nc//jiznDt2BL78kp9XrAjs2sU9k2fP+m5Rd++9rNe4cWPa4PPyEP23kC8fa0MmJASnE0pWTJrExKC6dRlse/LLLwwqK1XijGThwuEdo8uaNcxezw57SkUkU1G3x1FEcok6dVigu2dPJoH89RcTZ2bPZi3EzPoaN2gA1KoFNGoU/LHNng1ceCGzw93lzx/5oBFgwOgqS+RNp04sDTR6dOSCxnfe4T7N66+PzP2zg9OngUGDmMglkg1EazkeEclNnnmGZXLatmWyhxMvvMBHKHz/Pcv8RHpJ2puWLZllPWcOcOgQl8/TMyZj4BtuRYvy4er8Ixk9/zyrAixZwkLuIlFOgaOIRF5MTNZ7XAfTSy8xGLv99kiPxLtBg1j4u317dv6JRt27c7+qaip6d911DBqjpQC/SCYUOIpIzrNvH7ONAy1CXqwYZ4JcvvmGge0VVwCvvhqcMWZVrVpcqq4aUNna8HGv1fnXXwzIy5eP3HiiTYsWwMqQdtYVCSrtcRSR6HLqFNCtG2szBtKg4NQpLuVeeinw++/BGdOSJcBvvzHhxJ21LNMTCX37sm7lm29G5v7++vZb7nds3ZqtJEUkW1LgKCKR89NPQL9+rL/o8tVXTE6ZPZtdXvxlDJe+CxTIPMHGqeee4z7MV15Je/zGG9ka8bPPgnMffxUo4LlXdzAsW8ZM9+PHg3O9woX5KFgwdGMWkZDTUrVIbrRtG/edFSsW2XE89RQLhickAK+/zmPt2wP33ccyMunbBTpRqBDw44+cCSxXLjjjLFQo7dK1y+7dLB/077/BuU80GTiQ5XwAYPz4rF/vssuAtWsZPKo9oki2pRlHkdxm4UKWsLnmmszPTU4Gpk1jC79QaN2aAUWHDqnH8udnm70hQ/y/nrWcvSxRInhBoy9z5nBm1NXyEGD3nNq1gVmzQn9/l99+Y9mdxMTgXbNVK9bE7NgxeNcsW5bZ8yKSbSlwFMltrE19ZGbsWOCee0KXXTx0KGe12rULzvUeegg4/3zWLwyH6tXZmcV96fXvvzkDuWZNeMYAAH36cIZw1KjgXXPkSPblbtUqeNcUkWxPgaNIbtOpE2eolizJ/NwLLmDXj+rVQz4sj15/nbN3Tz/t7PwDB4D9+4G9e0M3pnfeAfr39z67N20ay+SEqsakJxdcANSvz+STcEpKYvb6rl38U0RyPGMDyVrMoZo0aWJXrVoV6WGIRJfkZCCPl98x9+0DHnuMJUUefDD49+7dG5g6FbjhBrYXzMzJk8zebduWCTLpPf00sGULg79584Dp05mc47SzSWIicO65wPbtDBB79fLr7eQ4rVqxxE5CAnuM//ST89day1nN/PmBAQNCNkQR8Z8xZrW1tomn55QcIyK+eQsaAWDCBODDD4H160MTOL7yClsT3nmns/OLFGGQ6Ul8PAPFXbu4NP7RR6zPWKZMauB45gwTNzwFnQCPt20LbN3KJJ5A7d7N++bPz1nSpKS09Q5drAVuuQXYsYN7JgOtSxkK1rJrzdGj/JolJPj3+j//BIYNY5b1TTdxZltEop4CRxEJXN++3NN3xRWhuX7Roty7FwwFCgD33ssZx65dGYTFxqZ2rNm8mQFlyZLA8uU835NJk7I2jnffBZ54AmjShMFg06YMWH/8kf2n3SUnA6tXMwv+xx+jK3A0holWmzezELm/Rb1r1wauvZbBeOXKoRmjiASdAkcRCVyVKlzyDbadO4G33uIysqc+zIFyz9Ru0YIPF9f+yKQkLkm7B46//go8/DDQuHFq2aBdu7jEeu21wF13McgbPx648EIe8+bECdZGPH2an/tKVMqbl/sl//rLWYLSiRPAJ58wYado0czPz6oaNQKfKSxUyNn2AxGJKtrj6EZ7HEWiRKdOnM264w7gvffCd98ffmB9y19+AWbOZGB43XVcUh06FLjootRs6X79GNRdfDFnBSdPZnZzrVqchfVV5Pq333heiRK+l6r9dd11wOLFLHuzd6/vbQYiIl5oj6OIZC+XX84l0FAtgXvjmoHs3x9YuhSoUIHB2MCB3MPnXprmwQc5xquv5ufNmjGwrFmTQWN8PPdOnjnDzjIlS6a+9uKLUz8uWzZ443fNMp44wRnN7FAzccgQ7vl87TXv2wNEJGpoxtGNZhxFPOjRg0ulkyezcHgwHT7MfYUFCwJffsnly8wcPcpl4dKlgzeOnTuBDz5gHcjChTnzOGUKMGgQWwoC7Hv9xBMMHp2UB9q9m8vWJ0+yHuJFFwVvvL6cdx4Ltj/3HGdKo1lcHJOf9u0DPv6YS+yBWL6cs70NGjBZS0SyRDOOIhK4335j4Pjtt8EPHHfuZEZ20aIMCDMLHA8f5mxkYiKDsQoVgjOOa67h8vIPP3CJPP3+R4AZ2UuWcJxOAsdKlYBXX2XgmFnQ2Ls3sGEDSw+df36g74KuuIIznpdemrXrhEOxYkD37lxWz0oR+J9/5tcvWL3JRcQr/SsTEd8mTuQP5kceCf61L7yQWcpFijjb45eUxCXYpCQ+gsVVvPrwYe/nPP00k1quu875dW+7zdl5P/7IwPXzz7MeOE6dmrXXh5MxLOmUVf36MWhs3jzr1xIRn7RU7UZL1ZLjvfkm9+WdOAHcfbf/s1KJiaypmJTEpJVI7Enbvp1L1cHsZrN0KUvjDBsWmdIw8+cDq1ZxeTl//vDfX0TEja+lagWObhQ4So6zeTMzk6tX57JpvXrAwYN8rk0b4Kuv/Lvev/9y2fX0aXZQmTQJuPLKYI86I2t9ZymLiEjQ+AocVatBJDv7918uTZ496/n5775jaZmVK5nV69oTWLCg884nc+Yw+Ny+nSVkBgwAypVjAsa33wbjXfg2bBgzlZ32fv77by6tS+SdOcO/Z23bAqdOOX/d8OEskB6KGqEikiUKHEWyszvuAO65B3jpJc/P9+rFH8LjxrFDx+zZ3AfWuzd7TDsxYQJrGo4axVm/oUP5A334cGYdO7VnDxNbLrkE+OcfHpsyhddPv/KRlMTlaIBJD1u3MkEnMydPpgYqK1Y4H1tW7NsH3Hwzvz7h9NNPQOvW3r/30WD3bu7f/OEHdr9x6vvvWRvziy9CNzYRCYiSY0Sysxo1uPR84YWen8+bF3jmmdTP69XjD3F/dO/O2cp77009dvnlfPjjhRc4+wmwZt9TT7E+4vHjzAR27bf86y/gxhvZwu7774G332aNxF69Ml7z9Om0mdgxMUCpUvz46FFmgZ9zDvcQZmWp+8gRfg08XeOtt1hKZt06vqdwmTmTM77x8YG1Zdy7l78E3HYb0LJl0IcHgDPFL77IXwTq1k09/t9//PvQq5fnhJZx44D33wcGDw7NuEQkcNZaPVIejRs3tiLZztmzkR6BZ8nJ1k6caO2HH/Lz336ztn59axs2tHbbNmvj461t397aVq2sPXYs9XWff25toULW1qrFc9y99Za1HTpYu369tf37W1upkrXDhqU9Jz7e2hMnrJ0509p8+XidpKTA38fYsdaWL2/tXXd5fv7gQWu7dbN2woTA7xGIHj2srVLF2vfft/axx6y94gp+jZ265x42O2zc2NpRozJ+rUOpRw/eu02b8N1TRBwDsMp6iZU04yiS3WW1rdzkyZylu+mm4IzHZdkydmCJjWUiTqNGnJUDWLvx5puB4sWZoBMTk/q6667jkvo552TMMH73Xe5frFyZpXN27864BJo/PwtLf/01l/Jvv50zr4Hau5c9rF1JRenFxrJ4eDglJnI2dudOfvztt8DatdxC4LTW5i23cD/o1q2cKT15ktsPwuHWW7lntlOn8NxPRIJGgaNIbrZyJfDww+yZ3LJlcNvf1a8PNG7MJd7ixdM+N3068Ouv/Hj06IwFtTt08HzNhx5iQPnEE0zQ6dTJc7eRF19kkNm4MYt7Z8WoUewWE6rl3EDExHB/6aZNDIzLlmVJIX+Wytu04ePee7lfsmnT0I03veuv50NEsh2V43GjcjyS6xw+zGSSokVZfNo1w/fxx8A777Afc8eOwb/v0aPc03jmDDBjRtoe0MGwfj3w+OO8rj8JPNmdtcykv+ii1L2eIiJ+UjkeEfGsdGku/S5ZknZZeMYM9o6ePj312MKFnJUaPTrr9y1ZkrNl27cHP2gEONv55ZepQeOCBVzaDZX4eOCTT/wrORMKY8YA114beM9nEZFMKHAUEc5Ude/OIG7fPmbpdu+edulzwQIGmf4WDQeAXbuAhISMxw8f5vJzINd0l5zM5WlPew1XrUrd6+irpWBW9O3LPaK9e4fm+k6VK8c9lyVKRHYcIpJjaY+jiLCszfLlTDZZvpxBULNmac958UWWvrnzzoyvP3SIs5eeytVMmQI8+STL9yxalPa5YcOAN94AfvuNM2WBmj+f7foqVWIpH/cSPZUrs3NOsWLsiZ1V333HZfwnnwQaNuSxSpVYXL1SpaxfPyt69eL+0JIlIzsOEcmxNOMoIkDhwqyrN2QI0Lmz53PKl2f9xUsuSXt8xAjW6HvgAc+vO36cvbFPn874XNeuTDpp187/Me/bB0ybxqzipk35uOwydsVxV7Ei8McfLETtpLf2rFn8OnjrxjN6NM9xL/g9bBgzlHv39vw+/fHJJwyiX3wxsNfHxmYti1xExAfNOIoI9ewZ2Ov27wcOHOCs4fTpGWckH3uMweG552Z8bfPmge897NGDJXfWrWPBaF+FzZ0W/05IYNHp7duB2rW5xO3pvsnJGQuST5nC7PBWrZhoFIhff+UWgYQE7gFVAWwRiTKacczMv/+ya4RIbnDmDPfrvf665+eXL8/Yn3r8ePbLXr8euPtuz1nMF1+csSRPVlWvztI8558fvGvGxLCLTfPmwFVXeT6ne3dg8WK2NXSXJw9n+rLSoaZCBaBaNWZER3q/pIiIByrH4yZDOZ6FCzm7cO653GCflR8IItnBW29xyblaNWDz5rRLnrt3s7h0YiJnxmrVSn3u5El+vm8f0KIFi3+HQ1ISkC8ICydffME6iMOHp90f6a/Nm7mnMv1yuT+SkhiEZrWwu4hIgFSOJ1D58/Oh/UKSW9x0E+s6durEwGXr1tS9fsWKMSiqXDlj8kWRIsDq1SwmPXRoaMaWkAD06QM8+2zqsWAEjQBnSceOTbtv0ZdPP2USSvps8Fq1shY0AnxPChpFJEppxtGNxwLgO3fyh2TRohEZk0jEDBvGZehOnVjXEUgNIiPxy9SiRcANN7DkzIYNzOIOhvh4ZmIfPswM78aNM39Nx44MHm+6CZg7l1+XaP4F01oG3k6Sg0Qk19OMY1ZUqaKgUXKn06e5BL17d+o+37x5gx8gjR/PLOKVK32f17o19xd26+asK4qrNmXr1kze8aZvX+5ZrF7dWdAIMOHn5pv559y5TKS5/XZnr42Erl2B885jRyARkSwIa+BojOlmjPnBGBNnjElK91wrY4w1xpxwe/yUyfXKGWM+McYcN8YcMMa8ZIxRMCzZ24oVDEJcvZwj5cUXWavwxx850xcqH3/M7Oh33/V9XqFCLIPzyivO9hufPMlM6++/53vwpmpV9nretAnYts3ZmFu3BubMYRLN+vVc0t+61dlrI2H3bq6e/PNPpEciItlcuIOsIwDeAPCYl+fPWmuLuj2aeTnPZWbKn1UAXAagM4AngjJSkUjxVCcwEvLkAS68kNnQTgpn79gBvP9+2vqH48ax8PecOd5fN3AgS9s880yWh/x/yckMGgcNYk1GX/22n3uO9R9//x14IoD/Pp55hglFtWszWA2mdeuYcJNVs2ezq86TT/o+Ly4OuP9+4MMPs35PEcmRwlrH0Vr7JcDZxaxeyxhTA8A1AM611h4DcMwY8xKAZwC8lNXri0RMjx7sedyjR6RHwmXhq65ytjTcvTvw008MdIYM4bGvvwZ++QX47DMul3rSsaPvwM4ba/k1Wr2arx85MjWp5Pnn+WjVin24M3PddazdWKgQs8ZjYpyPI29eBql//snZy+ef9/+9ePLPPxx/4cIMarOyp7NqVT4yM2oU8PbbbC3ZrVvg9xORHCvaCoDnNcbsABADYDWAwdbatV7ObQjgmLXW/dfx3wBUN8YUt9bGObmhMSYWQCwANHS1DxOJpC5d+IgW5cs7O++cc9iT2r2u4qhRLGf19NPBH1dSEgO27duBjRvZ0ebmm/lcxYrsoPLHHwy+Fi3yPWv64IOcFZ0xg20DR470byxt2zKwC2awVagQe04XKuRfIJsVPXpwr2nTpuG5n4hkOxHJqk6ZcVxirc3ndqwCgPIA1gMoCmAggPsANLDW7vZwjR4ARlhrq7kdqwFgC4Cq1tqdDscyFMAQAKhYsSJ2785wKxHxZPp0YMIE4NZbuSRsLYO5cAU5AJf0X3iBM6Jz5jBgdFm9mkFj3rzsalOzpu9r9e7N4ubDh3vuGOOvnj25b3LaNLZkDERcHMcfjB7bIiIO+cqqjpoZR2vtXgB7Uz49CmCQMeZmANcBmOLhJccBlEh3rKTbc05NBDALAMqVK/e3H68Tyd2WLgXWrmVdR4AJK+EMGgHgttv48KRxY2DiRM5IHj6ceeA4ZQr3RgarhuIvvzBw/OabwAPHYHfbERHJomjPQE4G4C19ci2AEsYY958GjQBsTdnz6Ii19pC1dpO1dlO+YBUTFsnpFi0CDh7kvsaXX/bvtb5WOeLjuccwWNq1A958k386yXoOZuHtceNYDP3++wN7/Y4d7Pu9cGHgY1ixAtizx9m5W7eyNqVq+4qID+Eux5PXGFMQQP6UzwumPIwxprUx5lxjTB5jTNGUJeTyAL70dC1r7X8AlgAYbYwpnrJMPRDA2+F5NyI5m7WM4zx6/XXg8885Q1e7tvOLvvMO9zw++mjG5/buBS66CLj0UuDEidTjR474GEgmChUCypRhuZ30y727d7O39mefBXbtzNxwA5OErGW3m/nzeXzyZL7P8eN9v37ECO65HD06sPt/8AFwzTVM/HGiSxfuEZ00KbD7iUiuEO4Zxx4AToPBYN6Uj08DqAYmu3wDLjNvAXA5gDbW2h2uF6fUdnSvsns7+B52AfgVwAIAAf4vKyLuevQA6tRIwIy+v2SchXrwQXZbeeih1GNr1vDYzJnwau1aYMsW4G8Pu0KOHmXweOAAi48DrMHYoAHrJgYyE1aiBPvMr1nD4NHd889z/2Gwyh7t2sVs5PTefptBoKsUzrff8uvw/fe+r3f33UCbNsAttwQ2nthY7v10utxdvjz3iFavHtj9RCRXCHc5nncBvOvl6QkpD1+vL5ru8/0Aoij9VCTn2LkT2LEnL/5942ug0Tomj+zZw+DuhhsyFgWfOBFYsIABoKcuKr17s2TNk0+y40p655/PJfBChVKDvMOHeb2slKJxtdmzFjh0iAGVMVwG/vdfLmNnlbW8zn//Ae+9B3TunPpc27ZAs2ZAnTr8fPx4Zm4/8IDva152WcZe2P649lp+vZ0m1ixaxJndQoUCv6eI5Hja1CciHn34IfDttaNxy8kZwK47gP792Zpvxw4WlE6/BNqvH7OAvdVr/Pln4K+/uBzqyn4eNIizgW+/DVSrxgDLXefOTMKpWtVZtxhfnnySmeC9ejHQ27SJy7llymQ8d/9+LpEvXcoZy5dfBooV83394sU5wxcbm/Z47dppO9eULw+MGZO19+KUk/qbLnnyKGgUkUwpcBTJbX7+mTN6tWr5PK1CBaD72qeAs08AF1zA5eWqVRkglSjBfYj58gEFC/IFDRqwb7M3Y8fy3u6zjfPnswbje+957xxz6aV+vT2vDhxIfXz3HZNBZs9Ou9wOAAkJwJVXAvv2sU/9jh3clzlokPdrG8Ml6FOngJIlU4+fPcvngpl0IyISQQocRXKT775jl5UKFbiM6VrG9cYYBkOXX86Zstdf52zh0aNAw4YMIlesSA0efbnuuoyzlE8+yW4znpJl0vv3X84Epp+VdOrtt1lzsnVr4K232GP67rsznmcMvy4FCzK5ZP9+zlJmJn9+Plz++49Bb5EinN10f87l6FGgTx8G3cFsuSgiEiL6NVgk3N59l4WpP/44/PeOjeWjZEkWls5MQgLQogX32r38MmceY2OBY8e4//DYscDK5yQmMhBs1gxYtowBpXuP6/TOnOE57drxfH+sX88A7r77eI0CBRioTprkeWk2JoYdaX7/HZg6lVnX7oXFnVq8mCWLduxgLUlPpk4FPvqIfwZaBic5mQH9ihWBvV5ExA+acRQJt08+YUZtuXLATTeF994NGrANX4ECXGbOjLUMHuPj05bEufhi9oAuXjzzvX8Ag+VXXmFLvoEDmTzz+efcD7lzJzvOJCQwkLOW5xYrxoQagEFuqVIMLtPvIczMV18Bv/4KHPejL0CxYs7ely89ejAgLFkSqFHD8zm9e3MP5QUXBL6Hc/JkBsK1awMbNgQ8XBERJxQ4ioTbc88xIeOJJyJzf38CogIFGOTGxXGfn7vGjT2/xloGiDt2MPmkWjUmmfz+O7vMDBzIWbLERD734YcMGps04XL4qFE8p1gxzhBWqsRZwOXLeV7Rop7v682ff3LZuXFjzlzedhuXjd97L7SdbooWZcDqS4kSbJuYFU2asDNNJntWRUSCQYGjSLg1acKZqOyiXDk+nEpKAlau5PLsDz8wOBw3jtdwdVGZORP45x+gfn3OtC1YwM83beK+xyuuSC3e7ZJ+D6FTJ04w4CxXjgk+n33GQHLHjrRtCE+f5vXdl/ATEtiP+7rrgAsv9P/e4XDxxQyORUTCwFi1l/q/Jk2a2FWrVkV6GCKRNWECE2IGDw58+fSjjxjMDBvmLKPYWgaVU6cC550HrFuX+tz69UDfvsAllwTWReX0aS4HN2vGsQwdypnUwYNTz/nlF7ZPrFKFM6yu9z1kCDB8OGsqeiruLSKSAxljVltrm3h6TjOOIpJq2zYGe6dPA9dfz9Z4gXj3XXZHadiQdRszM20aULgw8P77fI27Dz9kNvihQ4EFjoUKMcHHZdiwtM9PmAB8+SWLmxcsyCDWFTg2bcpZ0QsuyPw+SUkMSi+4gEv17vr1Yw3LadO49C4ikk0pcBTJ6b7+GnjjDc7aXX2173MrVWK5mvj41E4ngThyhBnFe/dmfq61bMn333/Aa6+xg4y7gQNZtqZVK//HcfgwA1Jv5YISE9nJZedO7n0sUIBJNCVK8Pl27Zx3lpk6FXjhBS5/33JL2pnWTz8FNm9m3ch+/dK+zlrWiNy1y3umt4hIlFDgKJLTvf469xAak3ngGBPDrO+sWrCAy81XXZX5ucZwD+GmTex17bJ6NQPKW25hO0N/rVjBrO1KlbjM7GnJPCYG6NKFxcC3bmVNSWOAKVP8v1/btkDLlsygTn+vp55ihxzXHk93x4+zo83evXz/4c60FxHxgwJHkZzuoYcYDKXvkBIsBw9yFq1Vq9TyOeXKcebSqddfz3hs4kR2ljl2jPsP/RUXx0eJEr5rJL7yCv989lkur8+fzz7WLVv6d79q1bg/0pN77vH+uuLFWYh81y5uD4gm//7LxKa+fblkLyK5ngJHkZyuTRs+QmXMGO5N/OOP1MAxGB57jLNx6fcLOtW2LfdGVqjgrNj58OEMGrdu5VK7S3Iy9y8GktHt1AsvpH588CBnQl3L5ZE0eDAwZw6wezdnkUUk11PgKCJZc+QIaxbWrevs/PnzGYS1b+/7vIsu8q+7zsKFvPYtt7BeZIMGLFXjtHKEMSwWvnMnM7gBBo1XXsll5LlzMybuBNvmzVzeL1qUJY38rVkZbJ068esRbTOhIhIxajkoIlmzeTNrJZYtm/m5f/8N9OzJ3s+7djm7/r59ztoMjhzJrOUbb+SeyQMHeK/atdMGoOvWMajs0CHjNSpWTA0aAQaO+/ZxrN7aBgZTQgKLlMfH+27BGC633859n/fdF+mRiEiUUOAokts8+yxw663c/xcMb77JeoejRmV+brlyDORq1mQrPgB4+mn2kl682PNrOnQArr2WGce+3HQTy+6ULw+ULs1M6s2b+fjjj9TzVq8GNm5kEJvZbGS+fJzFnDvXc6AZbHXrMpHnhx+iY6laRCQdFQB3owLgkuOdPcugbft2luh54IE0Tx85wgm55s0Dr/3tt5YtGSg9/DDw6qsZn2/ThjUQ33iDS6eZOX2aWc0FCjBo/OYbJp+4enNbC7z1FmcdmzcP7nsREckBfBUAV+DoRoGj5AovvsgZtzfeyLCH7sorOeE1ciTw+ONhGs/PP3NG77nnmGGc3u+/cwbxnHPCNCDJsXbu5F/u3r25/1VEPFLnGBFJ5d5qL53ixbmCHBvr5zWTkzlFGcg05eWX8+GyaxdnHh95hH2l+/XjUvZ332V+rbNnU2slvvlm6ixjKE2dyvv07Bn6ewHc//jYY0CtWsCAAc5fZy2/PuH4mkSrQYNYAWDzZu9bI0TEJ+1xFIkW06YxGcFJt5UQmTePS9V33unHizZuZI2/Vq0YQGbVo4+yteBjj3G5OX9+BpN//535azdtYmAwYwY/njGD5Xy2bcv6uDz5+28GuI8+Grx7nDnDWeG//vL8/Ecfcan95ZcZRDrVuTP7gH/5ZVCGmYa1zAI/dSr41w6mjh35S4rTbkAikoECR5Fo8eqrwKxZrIsYIfnyOUuOTmPLFgZNO3eybeBVV6XNwl22jMvNTrVsyf2HLVsy+/rWW1mI+t57M3/teecBffpw1nHFCgafs2eH7mtaqRKXPBs1CuAL58VzzzFhqE8fz8937JjaYaZAAefX3bGD36cNG7I+xj17gGbNuOc0OZnJUc2aBVaoPZy6dk39eyEiAcnFaxYiUaZHD6BqVeDBByM9Ev+0b8+ZvXPO4fLfd98x+cZadmLp0IEZwmvXAqVKZX69Rx7hw6VNGwafDRpk/to8eTgTB3Bm6cgRdnQJVdecYsWclQryR7NmQL163t9viRKcGvbX7NmcFQy0oLq7334Dfv2VxdVPneJe2WLF1GdbJBdQcowbJceIZOL0aeCll4AbbgCaeNg3nZAAPPMMg54ePTjLdc01DCyWL/crsHD91xRwdvc77wCff87x1qkT4EXEI2uBCRP4i07Xrjy2YwfrYObmPZQiOYSyqh1S4CiSiYEDuf+waVMWhgaA6dPZa7pnT/Y0Ti8+ni3//AgoTp3ilskzZ1hNJ1irwAGLj+dey7DVKBIRiRxfgaP2OIpkQ3v3BicPxW+tW7PtXuPGqce++ILLll995fk1BQp4DxpdNRVdQWiKEyc4gbV1Kxu3RNTixcD554enALiISJRT4CiSzbz4IpOYe/eOwM3btmWiy8SJqcfGjGHxbicJKGfPAocPp34+fTpfe9ddabq4lCsHfPAB8OGHwAUXOBjX558zIebQIcdvxbHNm5n4s2ePf6/bsYPlhLSqIyI5iAJHkWzmyBHg6FHg2LEw3tRaTgN6cvgwS70UK+b5+QcfZKS7YAFw221M/Hj7bT7XqBFn8+rUybAM3KoV8268+uorZl1v3w48/zyvOXy4f+/rl194o6FDMz43ZQr3cZYpw8SSuXP9u3aXLny89pqz89etYztEEZEopl3MItmMKzflkkvCeNMnnmCpoD59WHrF5ehR9pHev5+BX+3aLLzdsGFqFfE//mBNwu+/Z83HgwdTa1U2bAj8+WdgY3rxRV4zJga47jouiftbDubDD3mNQ4eYuNOvH/cyxsUBTz7JoPiRRwJbLy9fnski1aunPb57N0sYubc7PHiQtQVPn+ay/Xnn+X8/d99/D6xaxbIzefNm7VoiIm4UOIpkM3nysDVgWO3axaXa7dvTHi9QIHWm0FrWW2zbljN1K1bw+KRJnK1bsoRBZLt2wLPPZn1MN93EoKhHD9Z8fO4556/94ANmXVsLFC7MwPCppxgwPvQQ0KIFkJTEVjrXXBPY+BYuZHZP4cJpj19/PQuHT5oE3HEHjxUowLaKZ854brvorwceYJAeE5O2tJGISBYpcBSRzE2ezOXojh3THi9UiEHQww9z6bh8eQZhxYoBx49zqbZwYaBIEeCHH/hx06aMfrPq4Yf5CMTYsaxFmDcv913WqsXU7aZNmdIdF8d6iWvWBNB/MUWePBmDRoDXLV06bap4sWJMMDp71vNr/NWgAWdOW7TI+rVERNwocBSRzBUpAtxyi+fnSpRg4LVvHwt8f/EF/9ywgUumxYszIzk2lnsSfc0MnjjBRJdOnfzriuKv7t05I1e5Mpe8b7wxbeb3smUMvAINGn35+mvg5Ek2BXcXzPc7e3bwriUi4kZ1HN2ojqNIgI4d4/7AOnWQPG4C8hw7AlxxBZelS5ZkC8L9+5kunb4W4v79DCZvuonLx3PmsL3gpEnBGduZMwxYCxXizKlrz19cHJdy0xclt5YZ0VWqBGdmVEQkm1EdR5Hsxlpm+rqXvQmnI0c4wzhihLPzS5QApk7FHV/dgYUHm+LvxOrsW/3440yoMYbL2J4KaA8ZkpoRXbkyE0rOOSewcZ85AwweDHz5ZeqxtWsZjM6bx72aLsWLe+5k88wzwIUXeu8VLcHz1VfAqFFcoheRbEFL1SLR6IcfGLSVKsUArnz58N5/0iQGW7/9xkDKoVbr38CNWICDxWuwf3VMTOYvOn6cLQlr1QLGj2dpnaJFAxv36NHAyJFc7m7blscuuYSzoUWKsEVeZk6e5JhOngxsDOKMtdyj+s8/nJW+//5Ij0hEHFDgKBKNGjUC2rThrFiZMuG/f58+nKlr2NCvl7Wc9QC2D1iPKl0vZ6azE9u2cW9j8eKckSxaFPjoIwaAnTp5rrHozfXXM2i8+OLUY3nyMBnGqXHjgG7d+D2Q0DGG36dixZz/XRGRiNMeRzfa4yi5Snw8A8TYWAZWkerDvHIlZzeffTa1FM1993G/4zXXMJnE5auvgEGDWLR73LjU48nJTHKxlu9r0CDOMEbali0sQ3T33X716g65RYtYW7N//6zv41y/Hpg2jV/zUCQTiUjY+drjGEX/k4lIWH3/PVv+lSkDDBzIxJVIuPRSPtyNHs1l+p490x7/8ksunxcsmPb4okWcmcybF0hIYEmd8eNDOmxHevRgQe9du4BhwyI9GkpOZm3HrVtZEqhXr6xd7/HHGdAfPgxMnRqMEYpIFFPgKJJbxMfzT1fZl1atOBMWG5u2pmCw/fQTZxI9NZ3++mvgwAG2InRXsiRb5KQ3fDjHf+ONaY9ffjk7sezezYSX1q39G+OqVczs7tgxuHvtatVil5wLLwzeNbMqTx4uEcfGpu1eE6iWLfk9vPbarF9LRKKelqrdaKlasp2tW4FPPmE/6PSzcO4OHUrdR7Z8OWfzsurgQS4P9+7NXtSerFkDXHUVA8G1a5l97XL0KIPJw4c5YxWMICa9v/5iUFqtGntle3PvvSzV06IFazgGk7WR2wYgIhKAqCnHY4zpZoz5wRgTZ4xJSvdce2PMUmPMQWPMkZTzfLY9MMZsNcacMcaccHs0CO27EIkid9/NfWqDB/s+79QpzgodPMiPAzV9OjNhT59mL+cJE7hU6U2pUlwCj41lQW2AgdSePZwZPPdcoE4doGbNwMeU3vz5zKI+dYoziX/+yVlPXyVfBg1igNmvX8bnXnmFmeXJyYGNR0GjiOQg4V6qPgLgDQCFAKSv7lsKwEQA3wI4AeBeAF8YY+paa3f4uOY91tr3QzFYkahXrx6wc2faLGJPqlYFFi/mx5UrB36/F15g+ZSqVVnu5o8/uOTtTfXqnGnMly+1NM8jjwAzZ3KW77vvAh+LN889x2CxRAkm2RQqxALlq1dn3EvpUrMmx5Sea1b14EG+z0D7VouI5BBhDRyttV8CgDGmlYfn0v+v/aYxZgiASwD4ChyzxBgTCyAWABr6WXpEJOJee835uZkFl05cfz2wbh1w661c/r311sxfU6gQTpwABjwMXHYZcFdcHAuMHzuW8dwBA7j8PnVqaoa1v66+mjOdXbty72arVpx9PO88/69VujTLIh0+7D3odGrJEs5e3ntvxp7fIiLZRET2OKYEjkustV4D15Ql5zUA6lpr//FyzlYAhcEAeDuAN621b/s5lqEAhgBAxYoVsXv3bn9eLpLzvPIKMHcuM61vuCHr19u7FyNG5cWzr5TFeecBG9fGAytWcE+je4ma+Hgmk+zaxSXx9BnVTnTpwsBz5kygbl3f5771FvdWjh0b3KVyb7p25df1hhuATz8N/f1ERAKU7crxGGPKAfgYwFhvQWOKOwGsBhAPoBWAD40x8DN4nAhgFgCUK1fu78BGLJKDfPYZE2hq1cp64LhzJ3DBBehxrCSWl/0EDTtdzKzoVq24Z3DUKLYXvP56Li0/9BBrH95yC9avB+68k1sgZ81ycK933uHS97FjwC+/ZB44TpnCPZBVqzJYDjXX/sn77gv9vUREQiTqAkdjTCUAXwP4CsAgX+daa793+/RrY8x4AHcAcBw4WmsPATgEAE2aeAyuRXKXoUNZ2zFYdQfPnkU1bMPiuv2Al9z+yc6Zw6STPHmASpWApUuZpJLi22+BjatP4v4tw4BlN/juLhIXx57Xx44xYahhQy4tX3CB99qC993HPZi+knvSO3iQs5S33OJ/Qe9mzfgQEcnGwppVnRljTHUAPwD4wlrb1/q/jp4MQCmM4r85czhD9eCDkR5J5M2bx6XUF17I2nWGDGEB7Llz+fVNXw6nWTPuu8yXj4Ffut7QDzwALGkxFPccGQM88YTvexUtylI6rVpxFvPrr4Fff+XMozf33stxVavm/D3dcQdw++3AU085f42ISA4S7nI8eY0xBQHkT/m8YMrDGGPOB7AcwAfW2gEOrlXNGHNVyuvzGmOuBNAPwOyQvgnJmVauBDZuZPu0cFi0COjQITXTOZokJnK/YVJS5uf6smgRl46//hq4+WbWcnRXtSq/7uvWsYtN/foMzNq1A44dQ968wOXP38CZwxY+K3Nx1nL2bOCbb3if778HqlRhG8NgqlKFj1q1gntdEZHswlobtgeAXgCsh0d1ANNSPj6R7nG72+v//zmAemDyzHEAcQDWAeiblfE1btzYSi51+rS1o0ZZ+/ff4blfp07WAtZ27mztiRPWDhhg7dKlAV9uyxZr58yxNjk5CGNLSrJ2zRprExL4+bFj1q5d6/915s2z9v77rT1y5P+HJk+2tnFja1995ay1t9xi7dVXW/vXX9b+8gvPq1DB2jx5rP3888DHHxdnbeXK1sbEWLt4sedz7r7b2qZNrV2/3r9rJyfz74qISA4GYJX1Eiupc4wbdY6RsPnuO+CNN1hM+9NPgTFjgEsu4QxcAJo0YbnEMWOAxx4L6kiBK6/kuCZMyLwd35493P9XsSJnANMVv+7WdCtm/1wdndqewfy1NYD9+5kcc+AAM6n37mXbwOef5yxioObMYWLOHXdw1rFLl7Qt8erW5QzzuHH+7XEUEckFsl1WtUiO16pVauFsY9jmLgst9ypVYlfBOnXcDp45w8zlwoWzMlJ2fClYEJg0CUhIYAFvb376iY/KlXn/QoXSPD12zx0oj5vxSOPiQJdhDBK//prL47GxwE03ORtTYiK75Zx7LtCnT8bnu3bln337Am+/zYLg7oHj6NEMhh9+2Nn9REQEgHpVp6EZR8murGUs5erqh+PHgSuuYPC2bBlQoYJ/F4yPZ4u+woV5jb59Wb7m4ovZgcWb5GR2WqlZky380nvgAc70TZ0K1KiReq+TJ1ls26n332fiTdWq7GRToIDn85YvZ+Z2mzbA0097v97u3anBZbBaBK5fz2vVqxec64mIhIlmHEVyOGPcgkaAwd6RI+wpffy4f4HjyZMMOk+dYomcKlVYoufEibSzdp68+y7v6amjzAMPMMh77z1e06VAAT4SE7nMHR/PpeYiRdK+/tQpBsHXXMN2h9dey8AxzRtPp3lzZ20Nb7yRa/0TJgQns37nTnawMYaBdqVKWb+miEgUUOAokhOVLQt88QWDsNq1/XttfDyDzuPHgaNHUzOJP/ww89cNHfr/ot/o3j31OWtZ/3DLFmD+fM5gprdnD4s3nj4NbNoENGqU9vk772Rpn759gYkTgS+/dP6ePv6YjxEjPHeJiY0FypVjq8JgKFiQ2d3GeJ8NFRHJhhQ4iuRUF1wQ2OtKlwY+/5wzj/5cI39+zvB9/z0LZbszBnjuOc7qeeuccs45LDp+6hRw0UUZn4+NZUBcrpzzMbm8/DKXrYsW5V7N9D77jCWD+vfnbO1dd/H4mDHAtGms+ejq/OJEmTKpS/rpZ05FRLIxBY4iklH9+v6/xhjgvPOADz4A3nwzY+LJnXemfrxuHfDbb9yn6L6n8NFH075m40YubQ8cyGuOGMFi4fHx/s3k3XEHULy496A1b152ndm/H9i+HZgxA2jfngXEN2zwXUjcGwWMIpIDRVXnGBGJUps2AZdfzgAsvaNHmSF+/fWYkdANPxVpg18rdPB5uWPX34bEO3tj6a1v+b5v375MtnnySQaY773HdoK33JL2vD//BH7/3ft1+vRhQXJfbUU/+ghYuJDv5847+V5ff53lfF57zfc4RURyCQWOIpK5pUtZvmblSu5XdLdxI7BiBbByJX74sySuOPkVXir9ks/LbT5bDVtQA4u2eVgKP3GCy93JycBllwENGrCWJMAEmqQk7oN8910uK+/dy2SZNm2ArVudvZ/Nm3lN91I+1rKeUZ06TLqpVg0oXx4YPpxLzyIioqVqkVzr0UeBf/9lAFa2rO9z77mHRbobNsxYruayy7gXsEQJDL+2PMrU913qEQDO7VAPWxbnwR0j6mZ8snt3JvY8+SRnG917Zj/xBHDDDazheNddwI8/8t6lSzOgdK9Z+cwzrBE5fDgDS3cLFjBDe+9efj5vHtCzJ9/b4sX8uvjK1hYRyaUcBY7GmKIATllrk9MdjwHQ1Fq7LBSDE8n2zp5l9m+LFkCxYpEbx+zZwF9/MUElb17O5i1YAGzbxmzjzDrC5Mvnve+zMf+PFCsCGDnSx3VWrgQKFULxxR/hoq1bgb8/BNqky7AuUYIZyZ7qOrrqIp57LjO9a9fmuatWZSx2/v33vN+iRRkDx759gX37Upeu33qLM50FCzJgVNAoIuKRzwLgxpiSAGYBuBZAPIC3AQy01iamPF8ewG5rbd7QDzX0VABcgm7AAGD8eM6SLVwYmTGcPcsAa+tWYPJk4O67efz115n4MXYsAyZ31nIGLyYmeONYty41gL7/fuC//4BXXgHeeYezng88wOSVs2eZlV2+vO/rJST4DvB+/pn1IJ97jsGoL/Pm8WvTpw/QsaPfb01EJCfJSgHw4QBqAugMoBSAYQDqGWM6WWvjXdcP2khFcpqKFVk+JpJ75PLmZUHvypVZlNrloYe8v6ZjR3Y+efPNjLN1mUlMZMPsChXSzlKWKMGvw+nT3DP5wgucIfzuOya2LF3KwDFv3syDRiDzWcHLL+fDic6d+RAREZ8ym3HcCuAua+23KZ+XAfAFgIMAOoHBpGYcRXw5ciS1GHSoWBvc6zduDPzxBzBuXOYbFtP79FMGnuXKMXHGvaj2qVPs+PLjj9w3+c47nAl97TXg8cd9d1hZvZrXrFo1oLeU7axZwz/TF0IXEQkxXzOOmWVVlwOw1fWJtfYggDYpx+cB0EYgkcyUKhXaoPG227gU/emnmZ/79tvATTexg4svH33EftDpazFmZsQIYOZMzt7dfDOPDRnCXtAAZxiffJKlbgYP5rHq1blc7goaz5zJmLn97bdA69bMnE5M9G9M4XDkCN/vkCHBud7OnUC7dnzs2BGca4qIBEFmgeMuAHXcD1hrj4J7HqsCyKQHmYiE3JYtfDz+OIMyd8nJ7JSybh0/f+cd4JNPuLfQl1q12G/an4D37Flef/ZszioOGMAe0MOHc/+iS8eOrMdYo0bGa3zxBVC3LtAhpQ7knj1At27AkiVc6i5WDMgThVXE3n2XSUbvvZcx6A1E4cJc1i9TRoXERSSqZLbHcSmA2wCkaQprrT1kjGkD4PtQDUxEHHJ1Vpk3j32gR49Ofe7ll1nC5sILufR5333sGe1P+zyn8uZl4exNmzgL2qoVWwyWK+e78La7zZs52+bKqB40iIFoyZJMpilYkPeJNvfcw69vgwbBmV0uXTq1ZWH6xCURkQjKLHAcAeA8T09Ya/cZY64CZx9FJFJq12bwOGAA9ya6a9SIpWtq1eLn993nve2eP3bs4NJy+iBu+HD+aW3qcvgTT3BsTjz0EJN4XPv6XLOSMTEMHt2tWQM8+CDPHTYMOHyYLQ8joVgxtikMJgWMIhKFfCbH5DZKjpEcyWniTHw8M5UzO/f551liqGNHYPp0z+ckJ7Pzyq5dzMr+4gv/xw2wJNCoUZyxbNcu4zieew64IKX7zI4dXC52zxxP75dfmOl+zjmBjUdEJBfISnKMiETaP/8A11zD5ehAOAkax4/nrKSTDOoTJ4Djx4GTJ72fkycP0KULg9Zjx5yPNb18+dgBJn3QCHAm86mnGFjmzw8UKuR7lu7LL5lc07YtA1IREfGbo8DRGPNaqAciIl7MnAl88w3w2Wehu8fmzZwd3L499dhPPzEx5Ycf0p47ciSPvfee72s++yzQsqXv/ZQHDgDLlwc25oIFOZbrr2eXmDVrWK/Sm9KlmeFevHhqgs22bSzOPnRoYGMQEcllfO5xNMYYAO8CqBeW0YhIRgMGAPv3A82bh+4eEyawWLYrmxlgiZx581gep0WL1ON58gBNm2Z+zSFD2A/aGKBrV8/n3HADE2hefTVrey+LFuXDl0suYW3KggVTA8cpU9iScMsWBY8iIg54DRyNMfkAzAZQF0ALb+eJSIgVLQq88UZo75E/P9CjR9pjvXszaHS1KPRXmzbAihW+ZwGLF+dMYLg666RvPdi/P/dGNmsWnvuLiGRzXpNjjDGLAZwPoLm1dmdYRxUhSo6RXMNa4NFHmYk8eXLq3kBrWczaVQ4n1BITuV8yXPcTEZFMBZoccy2A53NL0CiSqxw8CMyaxf2Ty5alHr/vPhbgfuml8IwjJsa/oPH0aRYaj7TPPwd69Uq7J1REJBfwFTiOBzDBGOOwcq+IRI0PP2Rg6E2ZMqk1Ha+6CgBjsrVLDyJ5/wGc3b0Xj9dbjIkVXmDB8GiwbBlQrx670kTaSy+xFNGIEey/PXo0C5eLiORwXvc4WmsHGGOOA/jCGNPCWrsxjOMSkUBt3coWf2fPApdeygLg6RkDvPhimkOvvw4M3fIeulVchjaXtcWEVw0qoz7uWf4+CgUarK1Zw3Z8V17J8jxZsW0bWxB6S4LZt489sKtV4/J7Vi1ezGSaAQMytjm8+WbuC+3Zk8+/+SYz37/80vO1RERyCJ9Z1dbaYcaYYwC+AqCKuSLZQZkyLIqdnAyUL+/4ZV27Al9+WRRF6rXHtdcB7ZvHoXLiERR8xmHXl/SOHmUx7iNHOAN6zTVMhglUjx58b966wyxezJ7W1apx72RMTOD3shZ4+GFmW8fGMlHI3cMP8wGwxWLt2qmFyEVEcrDMWg7CWvuyMSYuHIMRkSAoWjRj7UUHqlUDvv469fNFPxQHcGHg49izJ7X4d506QJEigV/L5brrvD93223A+vUMLLMSNAKckW3UiG0OMyuDdPfdgWeei4hkM2o56EZZ1SLpJCWxe0sgduxgKZ5ChYCVKzOWwsmu/vwT6NMHuPBC4K23Ij0aEZGgC2nLQWNM/qxeQ0Si0B13cAl29uzAXl+1Kvc4/vJLzgkaAeDTT1mfMtCONyIi2ZjTloOfGmMy1MwwxtQFsDLooxKR8FmxAqhfnwkf8+YxsebYMSajbNsGbNgQ+LVjY7ncCwAJCbyWp1WO3buBe+/lHsVoV7Ys945efnmkRyIiEnZOZxzLAvjDGHOV64Axpg+AVQD+CsXARCRMfv0V2LgR+Ptv4Pnnufz6wgss5zNtGntOB8PttwMXXwwMG8bgcfPm1JqMQ4cyE3rEiODcK1AJCaxx6ct33zGDe9++sAxJRCSaON28dAWAEQAWG2MmAKgNFgh/yFr7bojGJiLh0LcvkDcvS/csXMgZwttu41LznXcG7z7GpD4GDWL9n1tuYb/o7t2Bf/5h72p/LVoELFjAYLds2ayNsV07BtFvvQV07Oj5nHHjOOP4wANZu5eISDbkKHC01p4FMMgYcxrAUABJAFpaa38O4dhEJBzy5AEeeogfX3JJcK99+jSTYwDg/feB//5jhvXjj/O5hAQ+d9VV/y9E7rcRI4CffwYKFAAmTszaeI8fZ/mgw4e9n1OhAjB+fNbuIyKSTTnd45jHGDMcwNMAXgGwBsAcY8yVoRyciDgXHw+sW+d5C2FEPPkki48PH87P8+dnqRxjOGv366+cbcyqjh0ZdN5+O5eZ+/YNqBwRAM5efvst2wmKiEgGTvc4LgPQG8D11tp+4NL1LABLjDEvhGpwIuLcbbcBjRtzC2FU2L6dSS9bt2Z8Lk8e1knMH4SiDIMGAUuXMlnlmWe4BD5oEJeS58zx71rlyinpRUTEB6eB4zEAF1lrlwCAtTbJWjsQwHUAeoVobCLih7x5GYdltfZ10EyezOXpN94I3jWtBXbtYlccT7p0AZo14xfDleQjnIk9dCjSoxCRHMBR4Gitvd5ae8DD8SXIUmsJEQmWmTNZNnHw4OBf+6uv2JJwxQoAv/3GTinr1/t+UdGiXD4uWDB4A3n2WaBBA+D++z0/f+21wI8/Mlht3Rq4/vqM5+zbB1x2GRNhkpKCN7ZotXcv0KQJk58yyxgXEcmEXy0hjDHNANRL+XSDtfZHa61+jRWJAjEx3FIYChMnAp99xu2JTROGM4s5Lg6YO9f7i06dAvr1Ay66KHgZyMePswf28eO+z6tfH/jmG8/PbdgArF3LGpMnTqTWmfSHtXzkyXIPhdBLTmbv7uRk7zO1IiIOOU2OqWqMWQFgOYDRKY8fjDE/G2OqOr2ZMaabMeYHY0ycMSbDr/rGmHbGmPXGmNPGmHXGmGszuV45Y8wnxpjjxpgDxpiXjDHZ4H9ykezlnnuADh1SJvpuugm48kqW0vHlrbeASZOAsWODl7EzfjywbBnw7rupx3bu5HTo6687u8aVVwITJjAaDiRoBFg26Pzzs0f3mEqV2PLx55+5h1NEJAsc9ao2xiwGEAugp7V2Q8qxugDeBXDEWtvO0c2MaQugNIBCACZZa/O5PVcTwDoA9wH4CEBXAJMA1LfWbvVyva8BHAdwV8r4FgOYYq19ycl40lOvapEUp04BTz/NIOvGGwO7xt69QO/eQL16wJgxQR1eGk88weC0YUPg998Du8bZs0zkKVoUKFUq8/MbNGC9x9deY99ql6FDuZdwwoTAe3yLiESYr17VTgPH0wBaWGtXpTt+CYDvrbWF/RxQKwBL0gWOwwC0tta2cDv2Q8p5GfJEjTE1AGwBcK61dnPKsd4AnrHW1vBjLLFg0ImGDRv+/XugP3gkYg4f5na75s25lCq+LVzIP73VtwbA1OyhQ7G9ZAMU/ucPlCkTwgElJTEDu0aNzL+Bn33GQuGPPQY8+CCwZQswciTw4ossyeOqR+mv7t2Bjz9mLciXX2bA68u6dVzuvu221DHv388l8oMHuSm0TZvAxiIiEmG+Akeny7p7wKLf6Z0FsD/QgaXTEMDqdMd+Sznu7fxjrqDR7fzqxpjiftz3YQB/A/h7//5gvRUJp44dgWuu4eSP+Pbff2wG06sX21B7dfPN+LVgC3x89Gpcc00IBvLUU5whnDsX6NmTH2fWbjAhAXj4YdaHnD0bWLyYAdqqVbxOoEEjAJw8yX2AJ08yAMzMBRcw8cc90C1blv2+b72Vv8VkRXIy95EqE1pEoozTtZTnALxsjOlprd0OAMaYcwCMBRCkRrYoBpb9cXcUQH0/zweA4gDiHN53IliTEuXKlfvb4WskihQvztXFkM6KRcrvvwPVqjlbPnUgNpYJNMYApUv7OLF+fTzXahkWLwZqZpKHEpCVK4E//mDf54QEVi+Pj///0ytWAJ9+ytXyIkVSDsbEMMAsW5a1FgcPZqJLMIp1f/AB9yvmyYOAI2VjgDffzPpYAC55v/ACZ1GXLAnONUVEgsBp4Pg0gKoAthhj9qYcqwDgDIAKxphBrhOttfU8vN6J4wBKpDtWEt4DQG/nu55zJCUr/BAANGnicVZWotzChcCxYwyKcpRp09gFpUEDJjYEQfHibNjixIIFjF8uvTQIN540iYktN93EgOi11xisDRzIvYAbNzIoTPH443zLR46wpnflymBgNn9+6jXvvTcIA0tRpAjQti33dnbuDBQrxgScvHkznpuQwD2Vbduy4noonHMOWxsqmUVEoozTwPHDkI6C1gJI36y2EQAvNTWwFkAJY0xNa+0Wt/O3WmvTz0RKDpYvXw4MGgFGeUWKpPZ6DrP8+bl1MChWrgT+/ps1ICdMANq3B55/PvX5iy5Kc3qzZmxl/ckn/MXgl1+AKlWCNBaXd94B3nsPePRRBrQAZ3g/+4xf+337mJGc3ogRHPv8+XxfoXDPPVzyLlo0NNcXEQmQo8DRU3JKIIwxeQHEAMif8rmrMnA8gBkAnjDGdAcwF8DNABoD6OllTP8ZY5YAGG2MuRtMcBkI4O1gjFUk4m66CbjiisBLxkSTCROA6tW5f/Dxx7kn8ccfvZ4+bhy39116KXNn/CqXeOoUA6+KFTkz6C3hZv589rSuXDk1cLz8cu6hLF7cc9AIAC1acI9jQ2/br4OkWLHQXl9EJACOsqqDdjNjegGY5uGpGtbarcaYdgDGAagJZkz3s9Z+5fb6EwD6WGtnpnxeDsBbANqAwedUAE9ZawOqcqtyPJITzZsHfP89Zw8L+1X/gBITgSlT2ISlquOqrV7Mn8/l6ebNedFMHDzIPBG/Vmw/+YSBYPnywKZNDALHjgVmzGAhclcx8lWrgLffZqBYu3ZAb0dEJCfKcjme3EKBYy62bh1w110s6vzee5EeTVBdeCHw55/Ac8+xgk2hQoylnBo4EBg9GmjVCvj2W2evmTYNKLdwMtpfcRSmf//w1kmKj2eGdaVKwPDhPNa5M4PWbt24t1JERLzyFTiqQq0IwMzVVavYgi6HadOGSdkNGgCNGjH7fNUq7mHM1KlTuKLUVtSsWQ+1ajm739GjwMtP7cXX+wch+bM45G3enEvA4VKgADB5ctpjr74K1KnDZXJfTp/mF8ZTUoyIiChwFAHA7OWTJ4FLLon0SIJu3Dj+uXIlJ+NcbYsd6dwZNyxbhsLXjESzVx/zeIq1nGG84ALuSSxWDDj/ilj8+/3lKFnvJPLWrRuU95HB+PHsTjNypPdAz1omwdSvD7yUSUOpX35hIfAqVbi2n36WdNMm3sdpBC0ikgMpcJRsKTGRq4/Hj3MFMstlDvPlY9HAHOzSSxk8FisGFCyY+fkAgLx5cSoxPz75LAYf9/dcpvD999l1r2ZNVtXJmxeY/UkMgE99Xzs5mV/zihWBRx5xNJyJE4EvvwRGDz6Kei+9BBw4ALRuDbTz0vV01iz+UlC9OgfnK8tm1y4GogULMuB0Dxy3b2dSTEwMM8NVJkdEcinHuYrGmD7GmHXGmFMpfaVhjHnKGHNL6IYn4tnRo6xH+PPPwF9/RXo0ni1cCPTvzyTfaFGrlv+JJq/e9Tu+PvchryULGzRgbkmtWn5uZVy8mLOAL77Igo0OvP8+sGgR8MbM4sB11wHXX4+d1a5A+/bAs55aETRsCJx3HgeYWWp2ly4sXrlgQcZz8+dnxF2sGINHEZFcymmv6ocBPANgDIDnAdS31m4xxvQE0Ntae2VohxkeSo7JXqZPZ5/qxx6Lzh7VrqSUIUNYSDsrPvuMScGDBnGfYrht386kmrJlg3jRY8e4NBwby2+mg5o7M2cCn3/O1elzzuGx4cP5NT7/fDaSCZm4OP5Fc1Am5/PP+ZYGDcpQolJEJOoFIznmAQD3WWsXGGOGuB3/DSyfIxJ2d94Z6RH41ro1UKIEJ7Ky6tVXga+/5sTX++9n/Xr++OMPduErVYoryn/9xeo2TuuSb9/OMT/6qFv7QIBfnM8/92sst9/Oh7t+/XiPyy7L/PUffMDa3W3bsrSkP2yx4hgyhDW5n3zS97mvvMI22jEx4f9+iYiEktPAsQaA3z0cPwNArQ1EPHj55eBd6+67mSx8//3Bu6ZT+fLxkTcvg63Nm4EaNYABA5y9/r77uC9xx47gtXJ2V6wY8MYbLM+4YQMr8RQqxFaFJUowh8Y1I/3zzzynQgX/7/Prr1xVL1YMuO02351sevXi16xPn4DeUlB8/z33tD7+uJLERSR4nAaOOwDUB7At3fHWADYFdUQikkG3bnyEy8mTrEyUlATUrQusXs2ckREjWPLS41jOnmXBx0aN0iSrNGgA/Pef757Xv/zCoOy229hpz18//wxMncrZwGnT2Gxn61bOkj7xRGoTmJEjudweyD0uuICdEgsVyjzw7N6dj1AaNQpYtoyB8fnnZ3z+wQcZJMfEcDuHiEgwOA0c3wTwqjHmdMrnNYwxrQGMAtv8iUgOkZwMXHklk5CN4WznK6/wuXHpNqb8+y8DvnvuAYoumouBL16EtmVX47F9bf8/zTdmDB++vP46k4lOnkwb1P3zDzBsGIOw66/3/vqmTYHevZmItHQpC5zfdRdQujSTtl3ee4+dDtu08eMLkqJwYe5b3LuXs4mR9tFHwJo1nAGeNo39vd01bMitDS1bRmZ8IpIzOe1VPcEYUwrAZwAKAfgaXKYeZa19J4TjE8nxrOWMWf36GTu6WAusWMEZpdKlwzem+HggIYFlj+LivJ83dCgTVnbtAmrHtsFilMaR5HPxmJ/ZSv36Mei74460x198kdffvdt34BgTk1rze/duzjx66o4zaxZn6SpXdrYnMr22bTmL9847mc8Ab9jApf1HH+X3Ntj69WM1o02buOf0k0/SPj9rVvDv6VRSEvDaawzQQ/HeRSRyHP/ebK19zhgzElyyzgNgvbX2ZMhGJpLNDR3K2a1XXgHq1fN+3tixDABatmQDG3evv86SPpdcAixf7uy+hw8zAKtcGZg0yf+M8zx5OGu3axeDRm9NX+6/n3voGjViTc0OHUrjWF7ghhv87/vcqBEwd27G4717c4bPnwQj17K0J/36cW/i4MF+DxEAZ/AKFnSWGPTss8DHH7PU5Lx5gd1vzhyOt2nTjM/16ME9nG+9xT2VwfD776yV2b+/77+zmRk5ki0uL7mEf0eyk/79uZ/1tddYGUFE0nIUOKaU3fnVWrsBwCq34wUB3GKtnRGi8YlkWwsW8Afx9Om+m5aUKMFHUQ9pZqVLc5+egwow//fVV8AXXzBwPHPGefazu7JlOTM3aRKTTm68kcXWb7uNLQunTOEs6T//sByOK2kn2G2+mzfnewmWG2/kI71t2/h+unb1XRXoq69YcrJy5czv1akTg95OnQIb69dfs3JA+fLMZPf0fezYkY9gGTqUf2/j4hi0BqpJE86Se9p7Ge2WLGElgblzFTiKeGStzfQBIBlAHID26Y6XB3DWyTWyw6Nx48ZWJFhmz7b23nutPXIk83P37LE2IcHzc/v3e3/Ok8REax9/3NqJE52dv369tddfb+0rr6Q9fuON1gLWdu7Mz7/4wlpjrC1XztpDh6xdssTaZ56x9swZ52MLpbNnrV292tr4eP9fe9ll1ubNa+3o0cEflz9OnrS2Y0dru3WzduNGa+vVs7ZlS2uTkrJ+bfevS2KitUePZjxn+nR+La65xtoff8z6PbOj+fOtffRRa0+ciPRIRCIHwCrrLSb09kSakxg4Dgf3NT7sdlyBo0g217cv/ye49NK0x3/+2drbbrN25Up+npRk7YAB1o4dG/4xOvHYYwz+7rjD/9d27mxt9eoMGoJtxgxru3a1dssWfv7ZZ9becIO1ixbx819/tXbZMn68YgXfQ6lS1u7YYW1ycnDGMH68tVWq8HttrbWtW/PzRYusPXzY2u3beTwhwdqLLuLfh2uuyfy6y5ZZ26mTtQsWBGec2UVysrUvv2zt++9HeiQioeErcHS6x9ECeA3ATwA+NMbUBvBosGY9RSRyBg7kvsj27dMev+wyJqa45M2beXb0n38yw3fwYC5ph1OBAlzOzZ8/43MPPgisXQu8/TbL6qT38cdMBPL02qx6/XWWGypblh9PnsxOQDExzHzu1ImJQStW8Gs+eDC3JviqE+mvzZuBnTtZoghgy86DB7mP9corgT17mNW+bBm3VxQu7DsZyf29LVjAr10wl8yj3bJlLAJfujQ7X4YzcU0k0pwGjgYArLWLjTFXAPgUQE0Aj4VoXCK5VkICf2ifOMG+zKH+oVSlStoA0V8nTjBhJF8+FgX/6isGJlOnBna9U6dYNLxaNeCFFzI+/9FH7ADz9NPcS+cycmTq69JbtgxYv55BjqfA0ZjQBI0AE1cqVAD69uXn/foxaMyXj7UtreXzpUpxHMOHB38M48YxUcUV3H36KbOxmzdnVyKX1q2Biy9m7c30tR9//pl7WHfs4J7dunXZSSgxkSWUjhzhe7AWOH2awWdOVb8+v54lS3rO3hfJ0bxNRbo/wKXqcm6flwPwI4DN0FK1SJYkJFg7dKi1ixfz8/37rS1f3tqCBblcHE0++8za3r2t3buXn3/7rbXnnGPtlVfy8xdesLZxY+7vdGrLFmvj4lI/f/99LpVWqmTtqVMZz7/6aj7fs6fzeyxcaO3AgdaePu38NYF6801rx43LfJm5a1e+jzvv9G8Pa7AdPmzttm2+zzlyxNqqVa3Nk4djfuihtK+vU4dL/bt2Wdurl7WVK1s7ZAif81dyMv8N5HaHDvHv7N9/R3okkhshCHscvwVQMt2x/ADeBfCfk2tkh4cCR4mEMWP4L7FevdRjH31k7dtvez5/82b+cP7227AML41mzTjWBx/k57NmWVuokLUXXOD5/D17GEx4MmuWtc2bW1usGBMyXE6e5D7FZ57x/Lo5c7gncfXqwN9HqOzYwf2J+fNb+9tvGZ9fsMDaPn0YUMXFWTttmufgONqcOcPvUcWK/Hv67LPWvvWWtZdcYu2ECQwqy5Wz9r//rL32Wv4dyZ/f2kaN/Nun+ccf1p5/vrUlSlj79NOBjfXs2eAkEzkxd67zX+7OnPGckOTNXXfx69iuXWBjS2/TJmt//z0415KcL8uBY255KHCUSFi7lj+A77zT2fk9e/Jfbps2wR1HUhIzpX1lk44axcQK94zbb76xduvWjOfu329ttWqcfdq5M+PzTZumBhjugePRo/xavPFGoO8kcuLjmaF+zTXWHj+e8fkmTfie+/UL/9iyKjmZGfiFC1tbpAjfI2DtzTdzxvLff3mea6asVCn+vfYncLzpJl4TYICdma+/ZiDbsyfvs2iRtQ0b8ti+fc7vu3ev519wEhM5I+7pPXz5JX9pqlEjNfj/6y9+PT74IO25Z88y+axMGWuXLk373IIFnLGfNCnt8Rkz+F6GDXP2Hs6e5S+h9epZe8staZ87coQzwqVKMTjPbQ4e5C863n5JmzLF2nvuSbvykdsFFDgCuBRAXrePvT0u8XaN7PZQ4CjZwZdfWnvVVVwSDab+/Vlup3Nna0eMsLZ9e85u+rJ0acYfhC4HDvCH6jnnWLt7d8bnX3+d2cWff572P+yhQ/k/0/nnB/5eotWQIda2asVM6kibO5dff/eZ67g4lgO65x7PwdKpU/x70b69tevWMUvb09+Rtm2tLVDAe/A3Zgz/Dn//fdrjH33E8kNPPuls+X74cP5dadKE5adiYvgoXtzaP//M/PXJydbOnMlfbipVYgC8cyerB+zcyZnv4sX5d/LXX1llYPlyvm7TJmvr1rW2RYvUGc677+Z4WrTg53/9xSB661YGbQBn2Nu3Ty2PdNttNigzi8OG8d8vwHGdOcNZ7+Rkrl5UrGhtzZqef8nz5tgxjm/kyKyNzWXnTv5yMGFC2uPz5vH/HVcFByfee4//R/Tvn/m5HTp4/mXk5EluGSlZks8PHer8/lm1fz/f8/PPh++e/gg0cPz/vsaUj8+m/Jn+oT2OIjnAiy9yRuSuu6xt0ID/Ozz1lPfzt261tnRpa2Njve+RO3Ag48zPsmW+l8x27uR/9KH6T3zzZpbu2bHD+WtOnPAc/GZmzRruyQzlD4dbb+XMVPql8eRkBmBPPOE5CLzuOn6Pb7019dinnzL4KF8+sP2JLlWr8tpVqnh+vkULPn/ffb6vs38/A7WPPuKs4p49/LtWvTofcXGsvXnrrZzBrlDB2ssv5y9X1vI9dOrkfYZ3+nQGuDExDB537OCMoWsmtXNn7uscODB1NrRECZYsOnKEs3yur+3LL/P+NWtyC4K1qbOyhQszWCxenNeLjU39+7RpEwPOFStSx/X88/w34Jqpj4vj7OfmzWnrpsbHp/7SNX0630PDhtY+/DD/bebJw20l5cvz4zp1+AuDU+PGcfw1agReGmrHDgbgH33Ev48A/39x59recPvtzq/rKiN29dWZn/v441z9ePnltMe/+ILXKFiQ35v69Tljbi1/GXD/P2LzZq6MpJ/NDdTzz/PedeqkPX7wYPi2WvgSaOBYDYBx+9jrw9s1sttDgWP2lZzM2QvXP3oJzL59/GE4dSp/UB886P3cI0f4Q+qii5zv3frtN/7gPeccz4XR58/n0n0ouQqbO/0BkJzMJddy5bg0OmECl9KdLGv162f/PyMWCsnJDBAAJia527CBQVHevAxg01u8mLMt7rOfiYkcs7dC6ElJfE27dqnv/99/uZfx+us5nhkzrD3vPAYxjz/OX0Tc9+v++it/aPbu7X3/q8tll/GHevXqfI8PP8ztFK7l7BdfZHBYrhw/nzWL78Fl8mQer1o17XGXZcsYFDVtyhnwhARrX33V2gsvZNDUoAGDwY0buaTcsqW1RYtyhir9TGufPrzXDTekHnvmGS7rG8P3fPAga2pOnpz2tWfOMBByFe2vW5fXeu45zuhXrWrtuecyuLn+ep5z9iy/LvnyMeBq0oTfh6NHU38pyJOHryldmltCMksq+/ZbBpquf/dLl3KGNH1wYy3fxyWX8Gvuy4MP8r6XX85guWtXfo3XruUe5379GMzeeKN/yYAnT/Jr6toi4cvcuQzO3X8+/Pln6t/T/v0Z3OfJk7o14I47OEvs+nc1fTqfr1mTv3gOGpS1OqtHjvD75j77Onkyg/wuXQK75tat1n74If9uWMvrX3RRYCsc2uOowDHHGz+e/zG6logkPM6eTf1Pyolt2/hD6OKLM+43WrCAe8Zq1/b8Qz5YXn2VP2DT7ynz5OWXGRBceCF/AC9caG2tWvyf00mXmYMHuez7ySdZH7cnH3yQGkT16pX2ucRE/pAD+EMzGDZvZiCRN2/qMvNHHzF4qVGDM2Cupdfrr8+47eDECQY7RYpkXKb25JprGLj17Mnlb9dMdfPm/KH/zDM8NmyYtfffz8AvMTF1Gfj0aX7/xo3zfo8zZ3htgIGuy/Hj/PqVKpU2EeurrzhTld7p09w+kv6XrQMHWI3A17+TSZN4/3POYXD+xht8z0eOcCm9UCEuNRcsyLFay/dZvDhfd+GFHGepUkxQWrMmNZjOk4dfQ4ABrK9Ar3lzmyb5bfJkfm89bRtxBaeZFdxfs4a/aKSf7XvmmdSxB8v48UzUS98Fq3HjjN/fjz/mL1bnnsuvpeuc3r35fOfO/Hs+aBA/P3uWv6iMH8/jRYs6C1r98eKL/Hq3bh3Y610dsEaN4uf16/M9BdK0IRhZ1RcDaOD2eQcA8wC8ACC/k2tkh4cCx+zrvff4m5rrt3Fr+cOjb1/+Q49Wu3fzt8IZMyI9kqzZt8/af/5xdu6ZM54Dwz/+YNDYsqV/v8lv2GBt9+784RxMZ89yecv1H++GDTz+7LOcHfFWMuazzxjE+bMUHqh//+XevBIlmG2e3qOPcln0ySeDc79bbuHXwz1bOjmZM2WuclI7d1r7yCPc37djB4Oh2FjOJickcHbvvPOc/dBNSPA+6z1+PIOihg1Tj506xQDgvPP8+/rfcw+X1V97Le3xrVvDk0xy4ACXsl2dfdL79lt291m/njNtLn/+ybamO3dym4H7v4HrrmOwOXiwtb/8wiDTmIwBnLvnn2fw+M03/Dw5mcGjp72H69ZxBjizWWNvTp7kzF0wuw65thl07Zr2+LBhXNJ2X81ITuYvXq7ZuK1buQf52DF+fuqUtT/9lDHgj4/n/9l33RX8JeXkZH7tnbSp9eSmm/iLmesX1e++4/7UQH4RD0bguBJA15SPqwE4nRI4bgUwzsk1ssNDgWP2duBA2n8gM2bwb3jlyuGp3xeIRx+1IV3K9MeYMfyN9dNP/XvdmTOckShdOu0+rUAkJmYMGu+/n8HBkiWeX3PnnfwaBvpbui/9+nGG58or2T/a26yR+5hdszZOsoIDtXQpl1Ezm0lMTmZQ7zQQX7eOMzZlyzJBJL3+/Rmo+rNn01XCybVf9uzZ4Mwof/cd/97dfHPqMdeydcGC1q5a5fxaycnR+39EoBIT0y7N/v03Zy+D1cYyGu3ezb9ne/ZEeiSRkZyctid9VvgKHJ12jqkDYE3KxzcDWGGt7WyMuRLADAD9HV5HJGTSt7jr0IGPqlXZji4a3X8/8O+/7NgRqMOHgRdfBO68kx0/AjVqFHDoEDBhAnDDDc5f5+q6UqBA1r/O+Tz8j7R6NdsFfvstcPXVGZ+/7z5g/36ga1f/7rVhA1CkCHDOOd7PGT8eWLyYX48yZYBjx9gdxSUxkWM6cgT44gt24bnpJnbS6dnT9/3j4rjIXKKEs/GuWgWcey67lfzwA9s7ZtbtxhigXDnvzycn8xxj+PnChcC6dfz4hx+A+Hjg2WeBH39kJ5mxY9nZJm9edjdKTgbmzGE3nOPHgXff5Xt39847/PtZqxY/z5OHj6y68kp+D92VKsXv6f79wPLlQOPGzq5lTMZxZ3f58qXtOlWnDh85WcWK7CCVW4WyA1Ya3iJK9weA4wBqpHz8GYABKR9XBXDayTWyw0MzjuJy4gTrJLZvnzaLMRrdc491nF3oS926XPobMcL/18bFpXaTCbaVK7k8vHhx8PY+/v47Z0hr1sw8yeXsWdbGq1Qp4+b9Y8eYuFC4MBMtnDp8mMupNWta26MHZ5x9zda+8QZn0Zo35+fx8dwP5WkJ8cQJZ7NKu3dzdvGyy1Jn286c4SzrjTdyD2K3bvb/eyhvuy31ta69jgULcuavVCkug3r6GuzZwxnMwoU9J+kEW7duTAiIxgLxItkFfMw4Ov29708A9xtjWgC4GsDilONVABwMXhgrEh22bOGMy48/Anv3Rno0vl17LfsLt2zp3+veeQdo1IgzjADw9dfsjT14sP9jKFYMKF/e/9dt3Mhe177s2cOZsHbtgIcf9v8enhQuDBQtytkpT7OcAO/VtCnw22+cIduzB/jpp7TnFC/O/s3TpgEtWji/f2IiZxx37AA++4yziV9+6f384sU5Xlf/5/z5gUGD2C/Z3aRJwHnneZ7t7N8f6NKFs6YA38/WrcDOnewPDvBrMX48MG8e/z4VLMivUaNGwIgRqdeqWZN9xF98kec98gjw6KNAs2YZ71uyJHs7N2jguY94oM6cYUib3gcfAGvW8N+EiISAt4jS/QGgJYDDYC3HqW7HXwTwiZNrZIeHZhzF3fjx2bN7iVO33sqZpE6dInP/t97iLNRVV6U9HhfH/XU//sjZPldmcJEiqRmOwXD4sOfuLi4NG/K+Q4Zwk/z48cHdDP/UU/b/e3CffTbzme09ezLfvzR4MGf+rrkm7fH4eCZ/AKk1Bq1llrhrlnDSJCYDue/NTEpi0kC07YsbPZpft0ceifRIRHImZHWPo7V2mTGmLIDi1tojbk9NAXAymIGsSLTo1y/SIwitCRO4J69v3+Bds0MHYNs2zkB99BHQvTtw112pz+/cCcTGAoUKcXYrJob75dw99xzw8suc3fvxR86qlSkDvPIKZ5MaNeJ+zLZtszZW972KnoweDSxdCjz1FGfemjb1fN6BA5xxPXGCM5OufWVHj3L/Zf36wJAhGV/33HN8TaNGwN13Zz7eChUyP2f4cM60tWqV9nj+/JxB/fdfoFu31OMdOqR+vGEDv3dbtqQey5vX8yzhoEHA5s3A5MmcDQ23LVuAXbuA7dvDf2+R3M5V4FsANGnSxK5atSrSwxDxaupUBhDt20d6JBklJwPnnw/89x+DvRUruIy+aBHw6adMIHnySS5ZfvstX/Pff3w/hQqlXufrr4Gnnwauugp46aW092jWjNcdMAAYMyZ8782br74CevUCKldmAJkvH/DLL8DJk0weWbcOqFGDQZYrASVaJSQAM2YwmPS17SApiUvVO3Zwu8M994RvjC4JCUzKueEG58lFIuKcMWa1tbaJp+ecZlWLiA9Tp3IG5Omng5Mx6sm33wIPPgiULQusX59xpsda4OxZ73v2Qi1PHs5ArV/PjNeRI5npPWgQMG4ccMEFwOnT/KHvUqNGxuu0acOHJ6+8wv2OgwaF5j14s3gxM8avuirt8bg4zizGxHDfYnIyH6+9xqCxZEmgT5/oDxoBzko6CQLz5WM1gH/+AW67LfTj8iR/fuD22yNzb5HcTjOObjTjKIGIiwPq1gX27QPmz/evlI0/du/mbFCpUgxk0geIN97IEi1vvOF7GXf+fC7BvvgiEy6cOn2awaG/JXdefZVLy+3aMUGjSpXsNUu0aRNw6aV837//zpIfLnFxLHFy4gQwaxbLv1SuzISqxx7jkvH990do4CIiAdKMo0gIFS0KXHEFlyovv9z3uXPmcJaticd/jr5VqsSaht7s2ME9ahs2+A4chw5lXcT8+bn/7tZbU7N1vdmyhcvORYpw36F7wPnWW9x72K8fg9f07r4bWLmSS9T16/u+T6hZy6XkevWc782LjeU+v/z5uZfRXYECfC4uDmjYkEEjwOX3Dz8M7thFRKKBAkeRLMqTh4kgmfn0U5ZJqVwZ+Ouv4BdqnT2bAVr37r7Pu/ZazvitW8cl5O+/Z+Fmb44dYyDq2o8YH582cFywAFi2jIXWPQWOkyYBM2dyb+Jjj0V22XbcOG4naN4c+OYbZ6+JjWV5F/dC2S4FCvB9JSdHbotAVp05wwSpGjX4tRER8SWb/lcnkv3UqgVUr87Eg1AEGeeey0dmRo/mn08/zf2Iro4e3pw5wzp/RYtyD2NsbNrnhw7l8rO3fYc9e7ImZv36kd/rV7Jkak1Ef/jatxqsTiiRMncuMGUKf6Hp3z/ndVARkeDSHkc32uMooZa+xVukJST4nvlMTOR+yLJl+XmgRZWtDfw9W8v9o+XLB+frtncvg9+YmKxfKyc4fhzo3ZtL7tGQqS4ikedrj2M2/j1ZJPvJkyd6gkYg8+Xyvn2Z1DJ+PIPGadOAyy7j8rNT113HPYVr1mR+ricPP8zZymAto1aooKDRXbFi3GqhoFFEnIiqwNEYs94Yc8LtcdoYY40xGeY5jDHVU5476Xb+zkiMWySnio1l8W3X8vTnn3Mf5eLFvl8HsKXd9u3cG7l5M/dU+nL8OOs8/vpr2uPHjgGHD7MOZHazb1/a8kMiItldVC9VG2NeAHCjtTZDLqYxpjqA/wBUtdYGJWDUUrVIWtYCBw8yeDSG2dXjxjHJpXZt7687fJilac6cYdb10aPc6+hrtrVXL2D6dC6Zbt2aejw+npncLVtmrwSUDz7g16lhQxYKFxHJLrLlUrUxJh+AuwG8HeL7xBpj6hhj6iQlJYXyViJBlZwMPPss6zaGQlwcaxMWL54a8NWsCbz+uu+gEeD5MTF8NG7MQuCZLdGfOpX2T5cCBYDWrbNX0AhwpvTYMXaRERHJKaL5v+IbAZQAMCOT834xxuQHsB7AUGvtd37e52EAQwBg//79fr5UJHK+/JJFvMuVYwmezHov+6tXL2DePGZEv/YaAzqntQ9LlQJ+/pmdbMqW5axlTIzvwt9vvMEgsWXLoAw/4u6/n/tCMwuyRUSyk6idcQTQB8Bsa+1RL88fBNAUQA0A1QF8DOALY8yFft5nIoDzAJxXrly5wEYqEgFNmwJXX802eOkDsj/+YFLL2LGBX/+cc1iipWZNJrjUr8++0+7+/tv73sPSpRk0bt7MAKppU3ZY8aZMGeC994B77w18zNHm0kuDH9CLiERSVAaOxphaAK4G8Ja3c6y1J6y1P1trE6y1J621EwEsB9DVn3tZaw9ZazdZazfly25rYZKrlSzJvXOzZmWsI/jOO5yRnDMn8Ou//DLw779MWDl8mJ1x9uxJff6TT4BLLvHeV9pl4ECWwDl5kjOQwZaQwALlLVpwL6WIiIROtEZKfQCstdb+4ufrkgFEUbETkfD4+28GaO3acYn06ae5R/H667N2XVcx6E8/BTZu5F5Dl5gYLi3nzcvEl+LFgYkT0+5lPHuWbRITE1lWJxQ9qg8fZqmf48cZ6PrbzvHUKeCOO1iWZupUvh8REfEs6rKqU/Yr7gTwrLXWa2KMMeZyACcAbAQD4J4AXgVwhbXWR0df75RVLdlV375MWrn0UvZiDpedO9l9pl07LsmuW8ee2u7efZctFl94wf/6ifPnc/l68GAm2XgzcyYD5Qce8PcdAMuXA1demdqGMf34RURyG19Z1dE449gFQEEAM90PGmNaAPgCQD1r7XZwb+PzACoCOAPgLwAdAg0aRbKz/v2B/fuB9u3De98qVVhQ+/77GXhVrJjxnF69Ar/+668DS5YAhQszgPTm9tsDv0ezZvz6lSyZNmicP59JQffcA3TrFvj1RURykqibcYwkzTiKv06fBl56CejUCWjUKNKjiazkZO43DGav4zlzOJv41FPA5ZcH77pOdO3KPs4dOgALF4b33iIikZQt6ziKZAdDhwLDhgEPPRTpkURe+/ZA3bqcIfTXr78CXbow4cZd166c+Qt10DhvHnDFFdyj6fL000CPHsFrdehNUhJnNjdsCO19RESCQYGjSBa0bAlceKHv/XehlpzM5eBOnTKWu4mLY+LKhAmhH8fevcDu3ewuYy2Xr7t3Z/eYzLz6KoO3t7zWUQitTz4BfvqJLRVdLroImDGDvblDaeRIJg5lZUlfRCRcFDiKZMH11wNr16adqQq3Q4cY8Hz2GYtuu3vzTe4NfP55djHJzOefAzffnDbBZvNm4O67WQjcl08+4dLuvfeyR/OcOcDs2QzIMvPII0DnzkCfPqnHTp5kT+xwNHR64QUGus8/H/p7pXfxxUCdOnyIiEQ77XF0oz2Okl2NGcM6iyNHpi0nc/AgcMEFDOTuvJMZzr60bw988QVw663Ahx/yWI8ewPvvA9dey9qQ3iQnA48/zkSWESO4jH/kCGc7AymRevPNwMcfczbu1Vf9f72IiAQmu2VVi4ifnnjC8/EyZViiZvZsZg9n5r77WDLnwQdTj3XvzrI7nTv7fu3q1dyrV6QIrzN8uOfzjh9n4fKOHX2X54mNZeeZChUyH7eIiISHZhzdaMZRotXy5eza0tWvvkicNTx6lMuwoZaQwCXtQoWAt9/O2M3GpXNnJrz07et7id9aFveOjQ3JcEVExAvNOIpkYydOsE7hgQOcQbzqKmev278fePRR7m1s1Cj0SR7583NJOzMVK/JRpYrv84xR0CgiEm2UHCMSJl27cr/hypX+va5gQaBaNaBmTaBGDeevK1kSaNiQyRe1a/t3T2+ee44B6OLFgV/j9deBTZvYIlFERLIXzTiKhMmGDXz8/DNbAzqVLx+wbBmXbo0fndjz5+dewmD67jsGvosWsc1gIIwBihYN6rBERCRMNOMoEiZTpjDDuG/fwF7vT9AYKqNGAf36MWvak99+Y0AZjrqRIiISfppxFAmTyy4L/T7DUGvWzHd29pQpLNlz7BgDzECdPg1s3cpONCIiEj004ygiQTN4MDvVDBiQtevcdBP3Zo4bF5xxiYhIcGjGUUSCpnJlYPr01M937WJyj7/Z0Xnzcm+nezFzERGJPM04iuQwy5YBf/7p/Pxt21hPMSEhuONYv549vJs3Z/tAf8ydC/z+O/DYY5mfO2kS0KoVsHBhAIMUERG/KHAUyUFWrQI6dOAjLs7Za+68k72in3kmNGMKpMdAgQJArVrAjBlA27a+s8PnzQO+/x746KPAxygiIs5oqVokBylTBihfHihenMGXE3XqsKXgRRcFdyz16zOQLViQbQgDMWsWg8YyZdgr25MhQ4BKlYBBgwIfq4iIOKOWg27UclDC7ehR4NVXgT59GPAFQ3x86h5Bp/ytERkuS5cC06YxKKxXL9KjERHJHXy1HNRStUiIbd7M2TJPM2J9+3LGLJi9pAsU8C9oBAIMGsPwS2fr1sB77yloFBGJFgocRUJsxgzg66+BTz/N+NyllwLnncckkmxl40auRbduHZYAUkREooP2OIqE2IABwL59zC5O75FH+Mh2/v4b2LKFqdiJiexvKCIiOZ5mHEWyaM0adlN5+GHPzxcrBrz1FnDHHeEdV0h17Ij4t6ZiQMWZuKl7/qCX8hERkeikwFEkixYuBFasYP1Ed1OmAJ07c1U3XHr2ZHb0ihUZn9u+nWVrgsIYbGx0GyauvAxLlrDQd1ZYC6xbx1aDIiISvbRULZJFAwcy4LnyyrTHp0xhAFehAvDmm+EZyx9/AGvXMoht2jT1uLXADTcA//4LTJ0KdOuW9XtdeCHw7LNMxqlRI2vXeuklJgm1aQN89lnWxyYiIqGhwFEkiwoWBEaNyni8Tx+24OvXL3xjefNNBo39+6c9bgxQqhTrIVasGJx7GRO8ouExMQxAY2KCcz0REQkN1XF0ozqOEmpvvQWMHw/cdBMwcmR4752YCJw5wz2X0WjLFqBKFeXZiIhEmq86jppxFAmj1auBf/7xr5d0sMTERPeMXs2akR6BiIhkRoGjSBhNmABUr849h3/9pcLWIiKSvSirWiSMihZl0Pjss0CvXpEeTWTExwNXX83kncOHA3v9wIHAJ58Ef2wiIuKbZhxFwqxJE3aLqVMn0iOJjKNHWXonLo77GkuX9u/1L78MjB4NnH8+0KVLKEYoIiLeKHAUCbN27cJb2zHalC8PvPYacOwYg2h/derEkj316wd/bCIi4psCRxEJu65dA3/t+ecDP/wQvLGIiIhz2uMoIml06QLUrQssXx7pkYiISLRR4CiSi1kL3Hcf0KEDl44Bdpf55x/gt98iOzYREYk+WqoWycVOnuR+wT17gCVLWJh8+nRg5Urg3nsjPToREYk2ChxFcrGiRYEBA4Dt25l0AgCNGvEhIiKSngJHkVzu8ccjPQIREckutMdRRERERBxR4CgiIiIijihwFBERERFHoipwNMa8a4xJNMaccHs8mMlr2hlj1htjThtj1hljrg3XeEUkcMnJkR6BiIj4K6oCxxTTrbVF3R5veDvRGFMTwCcARgIokfLnPGNM9fAMVUQCcd11LDK+cmWkRyIiIv6IxsDRH3cCWG2tfd9am2CtnQngt5TjjhhjYo0xdYwxdZKSkkI2UBFJtW0b8N9/wF9/RXokIiLij2gMHG8yxhw2xmwyxowxxhT1cW5DAKvTHfst5bhTDwP4G8Df+/fv93OoIsGzfTuwb1+kRxEeH3wATJsG3On4VzwREYkG0RY4TgRwPoAyADoDuBLAOz7OLwbgWLpjRwEU9/Oe5wE4r1y5cn68TCR4Nm0CLrkEuOIKIC4u0qMJvYYNgdtvB4yJ9EhERMQfURU4WmtXW2v3WWuTrbXrAfQDcLMxpoCXlxwH9za6KwnA8Y9ea+0ha+0ma+2mfPlUD10iI08eICYGyJdPwZSIiESvaI+UXHmX3n6UrgVwVbpjjQB8E7IRiYTAuecCq1cD+fMDxYpFejQiIiKeRdWMozGmmzGmZMrHtQGMA7DQWnvGy0tmAGhijOlujIkxxnQH0BjA9LAMWCSIypcHSpWK9ChERES8i6rAEcD9ALYYY04C+ArAzwDucj1pjLndGHPC9bm1djOALgCeAZennwHQ2Vq7NZyDFhEREckNomqp2lrbKpPnZwKYme7YYgCLQzgsEREREUH0zTiKiIiISJRS4CgiIiIijihwFAmTM2eAUaOAjRsjPRIREZHAKHAUCZNnnwUGDQLuuy/SIxEREQmMAkeRMGnaFKhbF2jQINIjCb6zZ4EePYAuXYDTpyM9GhERCZWoyqoWycm6dOEjJ9q7F1i0iO0S16wBmjWL9IhERCQUFDiKSJZVrgwMGMDA8fLLIz0aEREJFQWOIhIUgwdHegQiIhJq2uMoIiIiIo4ocBQRERERRxQ4ioiIiIgjChwlx5s7F7jsMmDMmEiPxD9xccDPPwPWRnokIiIipMBRcrxFi4CVK4ElSyI9Ev906QK0bAmMHRvpkYiIiJCyqiXHGzkSKFoU6N070iPxT5EiQIkSfIiIiEQDBY6S41WoAEycGOlR+G/uXODQIY5fREQkGmipWiRKxcQoaBQRkeiiwFFEosN77wEXXQS88EKkRyIiIl5oqVpEosM33wBr1wIVK0Z6JCIi4oUCRxGJDuPGAeXKAffcE+mRiIiIFwocRSQ6xMYCo0dHehQiIuKD9jiKiIiIiCMKHEVERETEEQWOIiIiIuKIAkcRERERcUSBo4iIiIg4osBRRERERBxR4CgiIiIijihwFBERERFHFDiKiIiIiCMKHEVERETEEQWOIhI9fvgBaNYMeOqpSI9EREQ8UK9qEYke8+cDK1YAycmRHomIiHigwFFEosfQoQwaO3SI9EhERMQDBY4iEj2KFQMmTIj0KERExAvtcRQRERERRxQ4ioiIiIgjChxFRERExBEFjiIiIiLiSFQFjsaYl4wx640xccaY3caYd4wxpX2c38oYY40xJ9weP4VzzCIiIiK5RVQFjgDOArgDQCyAhgCqAHg3s9dYa4u6PZqFeIwiIiIiuVJUleOx1g52+/SAMeYVAB9FajwiIiIikiraZhzTuxrA2kzOyWuM2WGM2WuMWWSMaejPDYwxscaYOsaYOklJSYGPVERERCSHi9rA0RhzE4D7ATzq47SNAC4CUAPA+QD+ALDUGFPJj1s9DOBvAH/v378/sMGKiIiI5AJRGTgaY7oCeAdAR2vtb97Os9butdautdYmWWuPWmsHATgM4Do/bjcRwHkAzitXrlyWxi0iIiKSk0Vd4GiMuQvA2wA6WGu/DeASyQCM05OttYestZustZvy5YuqLZ8iIiIiUSWqAkdjzCMAxgJoa6390cH5rY0x5xpj8hhjihpjhgIoD+DLEA9VREREJNeJqsARwCsAigP41r02o+tJY8zt7p+DJXu+AXAcwBYAlwNoY63dEc5Bi4iIiOQGUbU2a631ucRsrZ0JYKbb5xMATAj1uEREREQk+mYcRURERCRKKXAUEREREUcUOIqIiIiIIwocRURERMQRBY4iIiIi4ogCRxERERFxRIGjiIiIiDiiwFFEREREHFHgKCIiIiKOKHAUEREREUcUOIqIiIiIIwocRURERMQRBY4iIiIi4ogCRxERERFxRIGjiIiIiDiiwFFEREREHFHgKCKRtWoV0K0bsHRppEciIiKZyBfpAYhILjdmDPDRR8Dx40Dr1pEejYiI+KDAUUQi6557gBMngLvvjvRIREQkEwocRSSy2rThQ0REop72OIqIiIiIIwocRURERMQRBY4iIiIi4ogCRxERERFxRIGjiIiIiDiiwFFEREREHFHgKCIiIiKOKHAUEREREUcUOIqIiIiIIwocRURERMQRBY4iIiIi4ogCRxERERFxRIGjiIiIiDiiwFFEREREHFHgKCIiIiKOKHAUEREREUcUOIqIiIiIIwocRURERMQRBY4iIiIi4kjUBY7GmLzGmDHGmAPGmOPGmI+NMWV8nN/OGLPeGHPaGLPOGHNtOMcrIiIikltEXeAI4CkAnQBcBqBKyrH3PJ1ojKkJ4BMAIwGUSPlznjGmeuiHKSIiIpK7RGPgeB+Al6y1W6y1xwA8CaCdMaaah3PvBLDaWvu+tTbBWjsTwG8pxx0xxsQaY+oYY+okJSUF5Q2IiIiI5ET5Ij0Ad8aYkgDOAbDadcxau9kYEwegIYBt6V7S0P3cFL+lHHfqYQBDAGDt2rWnjDEb/Bx2dpMXQHkA+wCcjfBYJOv0/cxZ9P3MWfT9zFly0/fT02QdgCgLHAEUS/nzWLrjRwEU93K+p3Pr+3HPiQBmpXx8yFp7yI/XZjvGmDoA/gbQylq7KdLjkazR9zNn0fczZ9H3M2fR95OiLXA8nvJniXTHSwKI83K+03M9SgkUc3SwKCIiIhIMUbXH0Vp7FMB2ABe7jqUkwBQH8IeHl6x1PzdFo5TjIiIiIhJEURU4ppgEYKAxpoYxpjiAlwB8aa3d6uHcGQCaGGO6G2NijDHdATQGMD18w812DgEYBs2y5hT6fuYs+n7mLPp+5iz6fgIw1tpIjyENY0xeMFjsBaAAgK8B3GetPWiMuR3A29baom7ntwMwDkBNAFsA9LPWfhX2gYuIiIjkcFEXOIqIiIhIdIrGpWoRERERiUIKHEVERETEEQWOIiIiIuKIAkcRERERcUSBo4iIiIg4osBRRERERBxR4CgiIiIijihwzGWMMdcYY342xpwwxhw0xrwR6TFJYIwxFYwxs40xB4wxR4wxS40xDSM9LsmcMaabMeYHY0ycMSbJw/PtjDHrjTGnjTHrjDHXRmKc4oyv76cxpn3Kv82DKf9OfzDGtIjUWCVzmf37dDvvAWOMNcY8E87xRZoCx1zEGNMKwFwAYwHEAqgCYHIEhyRZ8waA0gDqACgPYBWAz4wxJqKjEieOgN+/x9I/YYypCeATACMBlEj5c54xpnoYxyf+8fr9BFAKwEQA5wIoC2AWgC+MMVXDNjrxl6/vJwDAGFMNQH8Af4ZpTFFDnWNyEWPMCgDfW2ufivRYJOuMMX8AeM1aOynl8/MAbARQ1lp7MKKDE0dSfplbYq3N53ZsGIDW1toWbsd+SDlvWNgHKY55+n56OW8vgAettZ+EY1wSGF/fT2PMEgDvAHgg5ZwR4R1d5GjGMZcwxhQBcCmAfMaY31KWTb4zxjSJ9NgkYGMA3GSMKWuMKQjgPgDLFTRmew0BrE537LeU45LNGWMaACiDXDhTlVMYY/oAOGmtnR3psUSCAsfcoxT4/e4OoBeASgC+AvC5MaZk5IYlWfAjgLwA9gM4AaALgHsjOiIJhmIAjqU7dhRA8fAPRYLJGFMOwMcAxlpr/4n0eMR/xphzADwD4MFIjyVSFDjmHsdT/pxmrf3DWpsA7p2KAdAscsOSQBhj8gBYAmATuA+uMIAXAPxgjCkfybFJlh0Hv6fuSgKIC/9QJFiMMZUAfAv+wj4owsORwE0GMMJauyvSA4kUBY65hLX2GICtANJvarUejkn0Kw2gBoCJ1to4a22CtXYy+G+6aWSHJlm0FsDF6Y41Sjku2VBKYtMPAL6w1va1Si7IztoAeDFlu9dBAFcAGJSyDzlXUOCYu7wB4C5jTD1jTD4ATwCIB/BTZIcl/krZx7gJwIPGmCLGmHzGmLvBZc4/Ijs6yYwxJm/KvtT8KZ8XTHkYADMANDHGdDfGxBhjugNoDGB6BIcsPvj6fhpjzgewHMAH1toBER2oOJLJv8+q4H7ji1IeqwC8DuDmyIw2/HxmfkmOMxYMLJYCKAhgDYDrUmYjJfu5EUyQ2QZuOfgXQFdr7ZZIDkoc6QFgmtvnp1P+rGGt3WyM6QJgHICpALYA6Gyt3RreIYofvH4/AQwEUBnAY8aYx9zO6WOtnRme4YmffP373Op+ojEmHkCctXZfmMYWcSrHIyIiIiKOaKlaRERERBxR4CgiIiIijihwFBERERFHFDiKiIiIiCMKHEVERETEEQWOIiIiIuKIAkcREYeMMe8aYxaH6V5DjDF7jDHWGPOYMWaoMWZjOO4tIuKNAkcRkShjjGkIYCiAvgAqApgU0QGJiKRQ5xgRkehTO+XPT1x9jdntTEQksjTjKCISIGNMfmPM2JQl5XhjzO/GmBvSndPEGPOrMeaMMeYvY8y1KR/38nLNoQDmpHyanLJUXd3DeRmWzY0xvYwxZ1I+NsaYz40xP6b0pkdKT/OfjTGLjCJREQmAAkcRkcCNAtATwIMALgTwFYD5xpgGAGCMKQJgEYDtAC4BcD+AF8He4t6MTTkP4DJ1RQA7/B1YykxlLwA1wWVvAHgewDkAeln1mxWRAGipWkQkAClB4UMAHrLWzks5/KQxpjmAJwH0AHA7gIIA7rTWnkh53QAA33q7rrX2hDHmWMrHe93u5/cYrbX7jTE9AXxujEkEMADAddbaA35fTEQEmnEUEQlULQD5AfyQ7vgyAPVSPq4LYL0raEzxM4CwzfZZa78G8Do46zjBWrskXPcWkZxHgaOISPaUDCD9NGSGJXBjTAyAZgDOIjXpRkQkIAocRUQC8y+ABAAt0h1vCWB9yscbANQ3xhR1e/4yZAz4ArEfQKV0xy72cN4IAJVTxtXGGPNAEO4tIrmUAkcRkQBYa08BeA3Ai8aYTsaY84wxowFcCmBMymkzAZwBMM0Yc0HK/scx4GxhVperlwC4wBhzvzGmljGmD4Cb3E8wxlwDoD+AHtbanwA8DGCcMaZ+Fu8tIrmUAkcRkcANAjADwNsA/gRwLYAbrbV/AoC19iSAGwBUB7AaLOQ9JOW1Z7Jy45S9is8AeBbAWnDmc4TreWNMmZSxjbXWLk15zTQACwF8YIwpmJX7i0juZFSRQUQkfIwxlwBYCaCxtfa3SI9HRMQfChxFRELIGHMHgJ0AtoLJKRMAJFhrPe1HFBGJaqrjKCISWmUADAcTWQ4CWArWUxQRyXY04ygiIiIijig5RkREREQcUeAoIiIiIo4ocBQRERERRxQ4ioiIiIgjChxFRERExBEFjiIiIiLiyP8AdGTJsWGUEAgAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.scatter(np.log(size_bright_cat['base_CircularApertureFlux_12_0_instFlux']), \n", " size_bright_cat['base_SdssShape_xx'] + size_bright_cat['base_SdssShape_yy'],\n", " c=size_bright_cat['base_ClassificationExtendedness_value'],\n", " cmap='bwr',\n", " s=4)\n", "plt.xlabel('log flux')\n", "plt.ylabel('size px^2')\n", "plt.ylim([0,20]) #zoom in to make the stellar locus clearer\n", "plt.xlim([5,15])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Our plot shows some star galaxy separation, but also has other interesting features. Some detected sources appear to be smaller than the PSF, some of the point sources have a (crudely) calculated size that occupy the same parameter space as extended sources, and there are a few extremely faint detected point sources. We will leave it to you to delve into this mystery further as a homework assignment since we are primarily focused on understanding tables in this tutorial. By making this plot we exercised some of the methods of the catalog and its schema, to do a minimal analysis example." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Operations with multiple tables/catalogs\n", "\n", "In the next section we will show operations which involve two or more catalogs.\n", "\n", "#### Table concatenation" ] }, { "cell_type": "code", "execution_count": 51, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:02.328224Z", "iopub.status.busy": "2021-04-23T20:36:02.326899Z", "iopub.status.idle": "2021-04-23T20:36:02.416915Z", "shell.execute_reply": "2021-04-23T20:36:02.415566Z" } }, "outputs": [], "source": [ "# Grab a second catalog using the butler:\n", "# (since the dataid keys differ for the HSC and DC2 dataset examples \n", "# we use as examples, we utilize an \"if... elif... else...\" block here)\n", "\n", "if dataset == 'HSC':\n", " dataId2 = {'filter': 'HSC-Z', 'ccd': 31, 'visit': 38938}\n", "elif dataset == 'DC2':\n", " dataId2 = {'filter':'i', 'visit': 512055, 'raftName': 'R20', 'detector': 75}\n", "else:\n", " msg = \"Unrecognized dataset: %s\"%dataset\n", " raise Exception(msg)\n", "\n", "source_cat2 = butler.get('src', dataId2)" ] }, { "cell_type": "code", "execution_count": 52, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:02.424809Z", "iopub.status.busy": "2021-04-23T20:36:02.423289Z", "iopub.status.idle": "2021-04-23T20:36:02.501149Z", "shell.execute_reply": "2021-04-23T20:36:02.499908Z" } }, "outputs": [], "source": [ "# Put our catalogs in a list:\n", "catalogList = [source_cat, source_cat2]\n", "\n", "# The following concatenation function is courtesy of Jim Bosch:\n", "def concatenate(catalogList):\n", " from functools import reduce\n", " \"\"\"Concatenate multiple catalogs (FITS tables from lsst.afw.table)\"\"\"\n", " schema = catalogList[0].schema\n", " for i, c in enumerate(catalogList[1:]):\n", " #check that the schema in the tables are the same\n", " #we can only cat them if this is true\n", " if c.schema != schema:\n", " raise RuntimeError(\"Schema for catalog %d not consistent\" % (i+1))\n", "\n", " # prepare the master catalog\n", " out = afwTable.BaseCatalog(schema)\n", " num = reduce(lambda n, c: n + len(c), catalogList, 0)\n", " # set aside enough space for all the records and their pointers\n", " out.reserve(num)\n", "\n", " # stick in all the records from all catalogs into the master catalog\n", " for catalog in catalogList:\n", " for record in catalog:\n", " out.append(out.table.copyRecord(record))\n", "\n", " return out\n", "\n", "cat_source = concatenate(catalogList)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Catalog matching\n", "\n", "Quick positional matching is supported by the stack, and offers some useful functionality. In the next example, we will match two overlapping observations from different filters together. Getting this data will require us to use a new data repository, so we will have to set up a new butler, then ask for our two tables" ] }, { "cell_type": "code", "execution_count": 53, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:02.508570Z", "iopub.status.busy": "2021-04-23T20:36:02.507056Z", "iopub.status.idle": "2021-04-23T20:36:05.738790Z", "shell.execute_reply": "2021-04-23T20:36:05.737424Z" } }, "outputs": [], "source": [ "# For the rest of this tutorial, we are invoking a new butler -- one for coadd data.\n", "# If you want, you can switch `datasets` as well, too; so we give you that option here:\n", "\n", "#dataset='HSC'\n", "dataset='DC2'\n", "\n", "\n", "# Temporary \"fix\" so one does not need to restart kernel \n", "# when switching from DC2 to HSC...\n", "# See also: https://lsstc.slack.com/archives/C3UCAEW3D/p1584386779038000\n", "#import lsst.afw.image as afwImage\n", "#print(afwImage.Filter.getNames())\n", "#afwImage.Filter.reset()\n", "import lsst.obs.base as obsBase\n", "obsBase.FilterDefinitionCollection.reset()\n", "#print(afwImage.Filter.getNames())\n", "\n", "\n", "if dataset == 'HSC':\n", "\n", " # Good example from the HSC coadds:\n", " \n", " depth = 'WIDE' # WIDE, DEEP, UDEEP\n", " #field = 'SSP_WIDE' # SSP_WIDE, SSP_DEEP, SSP_UDEEP\n", " butler = dafPersist.Butler('/datasets/hsc/repo/rerun/DM-13666/%s/'%(depth))\n", " tract = 15830\n", " patch = '0,3'\n", " filterList = [\"HSC-I\", \"HSC-R\"]\n", " \n", "\n", "elif dataset == 'DC2':\n", "\n", " # Good example from the DC2 coadds:\n", "\n", " butler = dafPersist.Butler('/datasets/DC2/DR6/Run2.2i/patched/2021-02-10/rerun/run2.2i-coadd-wfd-dr6-v1')\n", " tract = 4851\n", " patch = '1,4'\n", " filterList = [\"i\", \"r\"]\n", " \n", "\n", "else:\n", "\n", " msg = \"Unrecognized dataset: %s\"%dataset\n", " raise Exception(msg)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's grab some forced photometry for the (HSC-I/i) band and the (HSC-R/r) band. They will have the same tract and patch, which ensures they will overlap" ] }, { "cell_type": "code", "execution_count": 54, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:05.745488Z", "iopub.status.busy": "2021-04-23T20:36:05.743960Z", "iopub.status.idle": "2021-04-23T20:36:06.928563Z", "shell.execute_reply": "2021-04-23T20:36:06.929776Z" } }, "outputs": [], "source": [ "objects = []\n", "for filter in filterList:\n", " #'field' not needed in dataid\n", " #objects.append(butler.get(\"deepCoadd_forced_src\", dataId={'filter':filter, 'field':field, 'tract':tract, 'patch':patch}))\n", " objects.append(butler.get(\"deepCoadd_forced_src\", dataId={'filter':filter, 'tract':tract, 'patch':patch}))\n", "iSources, rSources = objects" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will need these calib objects for our two bands so that we can calculate magnitudes a little later" ] }, { "cell_type": "code", "execution_count": 55, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:06.939906Z", "iopub.status.busy": "2021-04-23T20:36:06.938556Z", "iopub.status.idle": "2021-04-23T20:36:07.701325Z", "shell.execute_reply": "2021-04-23T20:36:07.702522Z" } }, "outputs": [], "source": [ "calibs = []\n", "for filter in filterList:\n", " #'field' not needed in dataid?\n", " #calibs.append(butler.get(\"deepCoadd_calexp_photoCalib\", dataId={'filter':filter, 'field':field, 'tract':tract, 'patch':patch}))\n", " calibs.append(butler.get(\"deepCoadd_calexp_photoCalib\", dataId={'filter':filter, 'tract':tract, 'patch':patch}))\n", "iCalib, rCalib = calibs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Some quality control flags to prune down the data to give us stars with a signal to noise ratio of 10 or higher. We will use this to index into our catalogs when we do the matching. Note that because these are forced photometry catalogs, the records in each catalog line up so that they should be refering to the same astrophysical sources. That is why we will be able to use our mask on both iSources and rSources. This is not true in general of afwTables." ] }, { "cell_type": "code", "execution_count": 56, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:07.710213Z", "iopub.status.busy": "2021-04-23T20:36:07.708676Z", "iopub.status.idle": "2021-04-23T20:36:07.763411Z", "shell.execute_reply": "2021-04-23T20:36:07.762142Z" } }, "outputs": [], "source": [ "noChildren = iSources['deblend_nChild'] == 0\n", "isGoodFlux = ~iSources['modelfit_CModel_flag']\n", "isStellar = iSources['base_ClassificationExtendedness_value'] < 1.\n", "snr = iSources['modelfit_CModel_instFlux']/iSources['modelfit_CModel_instFluxErr'] > 10\n", "\n", "star_flag = noChildren & isGoodFlux & isStellar & snr" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In order to match catalogs, we must provide a `MatchControl` instance. The `MatchControl` provides configurations for catalog matching. It has three 'switches' in the form of class attributes. They are defined as follows:\n", "\n", "1. `findOnlyClosest`: True by default. If False, all other sources within a search radius are also matched \n", "2. `includeMismatches`: False by default. If False, sources with no match are not reported in the match catalog. If True, sources with no match are included in the match catalog with Null as their match\n", "3. `symmetricMatch`: False by default. If False, the match between source a from catalog a with source b from catalog b is reported alone. If True, the symmetric match between source b and a is also reported." ] }, { "cell_type": "code", "execution_count": 57, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:07.769857Z", "iopub.status.busy": "2021-04-23T20:36:07.768521Z", "iopub.status.idle": "2021-04-23T20:36:07.809807Z", "shell.execute_reply": "2021-04-23T20:36:07.808821Z" } }, "outputs": [], "source": [ "# get a match control, we will keep the default configuration\n", "mc = afwTable.MatchControl()\n", "\n", "# match our two catalogs, setting the match threshold to be one arcsecond\n", "matches = afwTable.matchRaDec(iSources[star_flag], rSources[star_flag],\n", " lsst.geom.Angle(1,lsst.geom.arcseconds), mc)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`afwTable.matchRaDec` returns a list, where each element is an instance of a `Match` class. The `Match` class has three attributes, which gives us information about the matched sources. Let us unpack this a bit before moving on to some analysis" ] }, { "cell_type": "code", "execution_count": 58, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:07.815121Z", "iopub.status.busy": "2021-04-23T20:36:07.814001Z", "iopub.status.idle": "2021-04-23T20:36:07.847463Z", "shell.execute_reply": "2021-04-23T20:36:07.848681Z" } }, "outputs": [ { "data": { "text/plain": [ "997" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# how many sources were actually matched?\n", "len(matches)" ] }, { "cell_type": "code", "execution_count": 59, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:07.854399Z", "iopub.status.busy": "2021-04-23T20:36:07.853105Z", "iopub.status.idle": "2021-04-23T20:36:07.925379Z", "shell.execute_reply": "2021-04-23T20:36:07.926607Z" } }, "outputs": [ { "data": { "text/plain": [ "\n", "id: 21335078244214836\n", "coord_ra: 1.00536 rad\n", "coord_dec: -0.5044 rad\n", "parent: 21335078244188220\n", "deblend_nChild: 0\n", "base_SdssCentroid_x: 7595.01\n", "base_SdssCentroid_y: 15936.9\n", "base_SdssCentroid_xErr: 0.114705\n", "base_SdssCentroid_yErr: 0.121465\n", "base_SdssCentroid_flag: 0\n", "base_SdssCentroid_flag_edge: 0\n", "base_SdssCentroid_flag_noSecondDerivative: 0\n", "base_SdssCentroid_flag_almostNoSecondDerivative: 0\n", "base_SdssCentroid_flag_notAtMaximum: 0\n", "base_SdssCentroid_flag_resetToPeak: 0\n", "base_SdssCentroid_flag_badError: 0\n", "base_TransformedCentroid_x: 7595.01\n", "base_TransformedCentroid_y: 15936.9\n", "base_TransformedCentroid_flag: 0\n", "base_InputCount_flag: 0\n", "base_InputCount_value: 101\n", "base_InputCount_flag_noInputs: 0\n", "base_SdssShape_xx: 2.60641\n", "base_SdssShape_yy: 2.97911\n", "base_SdssShape_xy: 0.12778\n", "base_SdssShape_xxErr: 0.300169\n", "base_SdssShape_yyErr: 0.227159\n", "base_SdssShape_xyErr: 0.343091\n", "base_SdssShape_x: 7595.01\n", "base_SdssShape_y: 15936.9\n", "base_SdssShape_instFlux: 8.84563\n", "base_SdssShape_instFluxErr: 0.509357\n", "base_SdssShape_psf_xx: 3.10643\n", "base_SdssShape_psf_yy: 3.08538\n", "base_SdssShape_psf_xy: 0.00789816\n", "base_SdssShape_instFlux_xx_Cov: -0.0764466\n", "base_SdssShape_instFlux_yy_Cov: -0.00374781\n", "base_SdssShape_instFlux_xy_Cov: -0.087378\n", "base_SdssShape_flag: 0\n", "base_SdssShape_flag_unweightedBad: 0\n", "base_SdssShape_flag_unweighted: 0\n", "base_SdssShape_flag_shift: 0\n", "base_SdssShape_flag_maxIter: 0\n", "base_SdssShape_flag_psf: 0\n", "base_TransformedShape_xx: 2.60407\n", "base_TransformedShape_yy: 3.00102\n", "base_TransformedShape_xy: 0.120437\n", "base_TransformedShape_flag: 0\n", "modelfit_DoubleShapeletPsfApprox_0_xx: 2.37367\n", "modelfit_DoubleShapeletPsfApprox_0_yy: 2.37937\n", "modelfit_DoubleShapeletPsfApprox_0_xy: 0.00721379\n", "modelfit_DoubleShapeletPsfApprox_0_x: -0.00232958\n", "modelfit_DoubleShapeletPsfApprox_0_y: -0.000364612\n", "modelfit_DoubleShapeletPsfApprox_0_0: 0.172794\n", "modelfit_DoubleShapeletPsfApprox_0_1: -6.01944e-05\n", "modelfit_DoubleShapeletPsfApprox_0_2: 0.000262287\n", "modelfit_DoubleShapeletPsfApprox_0_3: -0.000350329\n", "modelfit_DoubleShapeletPsfApprox_0_4: -2.53996e-05\n", "modelfit_DoubleShapeletPsfApprox_0_5: 0.000353144\n", "modelfit_DoubleShapeletPsfApprox_1_xx: 8.18561\n", "modelfit_DoubleShapeletPsfApprox_1_yy: 8.20526\n", "modelfit_DoubleShapeletPsfApprox_1_xy: 0.0248767\n", "modelfit_DoubleShapeletPsfApprox_1_x: -0.00232958\n", "modelfit_DoubleShapeletPsfApprox_1_y: -0.000364612\n", "modelfit_DoubleShapeletPsfApprox_1_0: 0.103664\n", "modelfit_DoubleShapeletPsfApprox_1_1: 0.000153311\n", "modelfit_DoubleShapeletPsfApprox_1_2: -4.24636e-05\n", "modelfit_DoubleShapeletPsfApprox_flag: 0\n", "modelfit_DoubleShapeletPsfApprox_flag_invalidPointForPsf: 0\n", "modelfit_DoubleShapeletPsfApprox_flag_invalidMoments: 0\n", "modelfit_DoubleShapeletPsfApprox_flag_maxIterations: 0\n", "base_CircularApertureFlux_3_0_instFlux: 7.06936\n", "base_CircularApertureFlux_3_0_instFluxErr: 0.316457\n", "base_CircularApertureFlux_3_0_flag: 0\n", "base_CircularApertureFlux_3_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_3_0_flag_sincCoeffsTruncated: 0\n", "base_CircularApertureFlux_4_5_instFlux: 8.70256\n", "base_CircularApertureFlux_4_5_instFluxErr: 0.476818\n", "base_CircularApertureFlux_4_5_flag: 0\n", "base_CircularApertureFlux_4_5_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_4_5_flag_sincCoeffsTruncated: 0\n", "base_CircularApertureFlux_6_0_instFlux: 9.07784\n", "base_CircularApertureFlux_6_0_instFluxErr: 0.63913\n", "base_CircularApertureFlux_6_0_flag: 0\n", "base_CircularApertureFlux_6_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_6_0_flag_sincCoeffsTruncated: 0\n", "base_CircularApertureFlux_9_0_instFlux: 9.97245\n", "base_CircularApertureFlux_9_0_instFluxErr: 0.964298\n", "base_CircularApertureFlux_9_0_flag: 0\n", "base_CircularApertureFlux_9_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_9_0_flag_sincCoeffsTruncated: 0\n", "base_CircularApertureFlux_12_0_instFlux: 10.9126\n", "base_CircularApertureFlux_12_0_instFluxErr: 1.28996\n", "base_CircularApertureFlux_12_0_flag: 0\n", "base_CircularApertureFlux_12_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_12_0_flag_sincCoeffsTruncated: 0\n", "base_CircularApertureFlux_17_0_instFlux: 16.4985\n", "base_CircularApertureFlux_17_0_instFluxErr: 1.83484\n", "base_CircularApertureFlux_17_0_flag: 0\n", "base_CircularApertureFlux_17_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_25_0_instFlux: 18.8538\n", "base_CircularApertureFlux_25_0_instFluxErr: 2.71032\n", "base_CircularApertureFlux_25_0_flag: 0\n", "base_CircularApertureFlux_25_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_35_0_instFlux: 30.793\n", "base_CircularApertureFlux_35_0_instFluxErr: 3.79485\n", "base_CircularApertureFlux_35_0_flag: 0\n", "base_CircularApertureFlux_35_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_50_0_instFlux: nan\n", "base_CircularApertureFlux_50_0_instFluxErr: nan\n", "base_CircularApertureFlux_50_0_flag: 1\n", "base_CircularApertureFlux_50_0_flag_apertureTruncated: 1\n", "base_CircularApertureFlux_70_0_instFlux: nan\n", "base_CircularApertureFlux_70_0_instFluxErr: nan\n", "base_CircularApertureFlux_70_0_flag: 1\n", "base_CircularApertureFlux_70_0_flag_apertureTruncated: 1\n", "base_GaussianFlux_instFlux: 9.55711\n", "base_GaussianFlux_instFluxErr: 0.393142\n", "base_GaussianFlux_flag: 0\n", "base_LocalBackground_instFlux: 0.005688\n", "base_LocalBackground_instFluxErr: 0.0578756\n", "base_LocalBackground_flag: 0\n", "base_LocalBackground_flag_noGoodPixels: 0\n", "base_LocalBackground_flag_noPsf: 0\n", "base_PixelFlags_flag: 0\n", "base_PixelFlags_flag_offimage: 0\n", "base_PixelFlags_flag_edge: 0\n", "base_PixelFlags_flag_interpolated: 0\n", "base_PixelFlags_flag_saturated: 0\n", "base_PixelFlags_flag_cr: 0\n", "base_PixelFlags_flag_bad: 0\n", "base_PixelFlags_flag_suspect: 0\n", "base_PixelFlags_flag_interpolatedCenter: 0\n", "base_PixelFlags_flag_saturatedCenter: 0\n", "base_PixelFlags_flag_crCenter: 0\n", "base_PixelFlags_flag_suspectCenter: 0\n", "base_PixelFlags_flag_clippedCenter: 0\n", "base_PixelFlags_flag_sensor_edgeCenter: 0\n", "base_PixelFlags_flag_rejectedCenter: 0\n", "base_PixelFlags_flag_inexact_psfCenter: 0\n", "base_PixelFlags_flag_bright_objectCenter: 0\n", "base_PixelFlags_flag_clipped: 0\n", "base_PixelFlags_flag_sensor_edge: 0\n", "base_PixelFlags_flag_rejected: 0\n", "base_PixelFlags_flag_inexact_psf: 0\n", "base_PixelFlags_flag_bright_object: 0\n", "base_PsfFlux_instFlux: 10.343\n", "base_PsfFlux_instFluxErr: 0.423546\n", "base_PsfFlux_area: 48.4084\n", "base_PsfFlux_flag: 0\n", "base_PsfFlux_flag_noGoodPixels: 0\n", "base_PsfFlux_flag_edge: 0\n", "base_Variance_flag: 0\n", "base_Variance_value: 0.00371032\n", "base_Variance_flag_emptyFootprint: 0\n", "ext_photometryKron_KronFlux_instFlux: 9.69437\n", "ext_photometryKron_KronFlux_instFluxErr: 0.769312\n", "ext_photometryKron_KronFlux_radius: 2.77981\n", "ext_photometryKron_KronFlux_radius_for_radius: nan\n", "ext_photometryKron_KronFlux_psf_radius: 2.20522\n", "ext_photometryKron_KronFlux_flag: 0\n", "ext_photometryKron_KronFlux_flag_edge: 0\n", "ext_photometryKron_KronFlux_flag_bad_shape_no_psf: 0\n", "ext_photometryKron_KronFlux_flag_no_minimum_radius: 0\n", "ext_photometryKron_KronFlux_flag_no_fallback_radius: 0\n", "ext_photometryKron_KronFlux_flag_bad_radius: 0\n", "ext_photometryKron_KronFlux_flag_used_minimum_radius: 0\n", "ext_photometryKron_KronFlux_flag_used_psf_radius: 0\n", "ext_photometryKron_KronFlux_flag_small_radius: 0\n", "ext_photometryKron_KronFlux_flag_bad_shape: 0\n", "ext_convolved_ConvolvedFlux_seeing: 1.75951\n", "ext_convolved_ConvolvedFlux_0_deconv: 1\n", "ext_convolved_ConvolvedFlux_0_3_3_instFlux: 10.3568\n", "ext_convolved_ConvolvedFlux_0_3_3_instFluxErr: 0.48187\n", "ext_convolved_ConvolvedFlux_0_3_3_flag: 0\n", "ext_convolved_ConvolvedFlux_0_3_3_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_3_3_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_4_5_instFlux: 10.0567\n", "ext_convolved_ConvolvedFlux_0_4_5_instFluxErr: 0.551014\n", "ext_convolved_ConvolvedFlux_0_4_5_flag: 0\n", "ext_convolved_ConvolvedFlux_0_4_5_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_4_5_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_6_0_instFlux: 9.63897\n", "ext_convolved_ConvolvedFlux_0_6_0_instFluxErr: 0.678637\n", "ext_convolved_ConvolvedFlux_0_6_0_flag: 0\n", "ext_convolved_ConvolvedFlux_0_6_0_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_6_0_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_kron_instFlux: 9.69739\n", "ext_convolved_ConvolvedFlux_0_kron_instFluxErr: 0.769551\n", "ext_convolved_ConvolvedFlux_0_kron_flag: 0\n", "ext_convolved_ConvolvedFlux_1_deconv: 0\n", "ext_convolved_ConvolvedFlux_1_3_3_instFlux: 10.0159\n", "ext_convolved_ConvolvedFlux_1_3_3_instFluxErr: 0.128645\n", "ext_convolved_ConvolvedFlux_1_3_3_flag: 0\n", "ext_convolved_ConvolvedFlux_1_3_3_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_3_3_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_4_5_instFlux: 9.87651\n", "ext_convolved_ConvolvedFlux_1_4_5_instFluxErr: 0.137835\n", "ext_convolved_ConvolvedFlux_1_4_5_flag: 0\n", "ext_convolved_ConvolvedFlux_1_4_5_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_4_5_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_6_0_instFlux: 9.75412\n", "ext_convolved_ConvolvedFlux_1_6_0_instFluxErr: 0.16343\n", "ext_convolved_ConvolvedFlux_1_6_0_flag: 0\n", "ext_convolved_ConvolvedFlux_1_6_0_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_6_0_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_kron_instFlux: 9.97061\n", "ext_convolved_ConvolvedFlux_1_kron_instFluxErr: 0.186434\n", "ext_convolved_ConvolvedFlux_1_kron_flag: 0\n", "ext_convolved_ConvolvedFlux_2_deconv: 0\n", "ext_convolved_ConvolvedFlux_2_3_3_instFlux: 9.70625\n", "ext_convolved_ConvolvedFlux_2_3_3_instFluxErr: 0.0950786\n", "ext_convolved_ConvolvedFlux_2_3_3_flag: 0\n", "ext_convolved_ConvolvedFlux_2_3_3_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_3_3_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_4_5_instFlux: 9.82445\n", "ext_convolved_ConvolvedFlux_2_4_5_instFluxErr: 0.0917635\n", "ext_convolved_ConvolvedFlux_2_4_5_flag: 0\n", "ext_convolved_ConvolvedFlux_2_4_5_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_4_5_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_6_0_instFlux: 9.84614\n", "ext_convolved_ConvolvedFlux_2_6_0_instFluxErr: 0.0984979\n", "ext_convolved_ConvolvedFlux_2_6_0_flag: 0\n", "ext_convolved_ConvolvedFlux_2_6_0_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_6_0_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_kron_instFlux: 10.3495\n", "ext_convolved_ConvolvedFlux_2_kron_instFluxErr: 0.111722\n", "ext_convolved_ConvolvedFlux_2_kron_flag: 0\n", "ext_convolved_ConvolvedFlux_3_deconv: 0\n", "ext_convolved_ConvolvedFlux_3_3_3_instFlux: 9.66183\n", "ext_convolved_ConvolvedFlux_3_3_3_instFluxErr: 0.0931103\n", "ext_convolved_ConvolvedFlux_3_3_3_flag: 0\n", "ext_convolved_ConvolvedFlux_3_3_3_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_3_3_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_4_5_instFlux: 9.86911\n", "ext_convolved_ConvolvedFlux_3_4_5_instFluxErr: 0.0838094\n", "ext_convolved_ConvolvedFlux_3_4_5_flag: 0\n", "ext_convolved_ConvolvedFlux_3_4_5_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_4_5_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_6_0_instFlux: 9.94691\n", "ext_convolved_ConvolvedFlux_3_6_0_instFluxErr: 0.0823295\n", "ext_convolved_ConvolvedFlux_3_6_0_flag: 0\n", "ext_convolved_ConvolvedFlux_3_6_0_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_6_0_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_kron_instFlux: 10.7702\n", "ext_convolved_ConvolvedFlux_3_kron_instFluxErr: 0.0918793\n", "ext_convolved_ConvolvedFlux_3_kron_flag: 0\n", "ext_convolved_ConvolvedFlux_flag: 0\n", "modelfit_CModel_initial_instFlux: 10.322\n", "modelfit_CModel_initial_instFluxErr: 0.424537\n", "modelfit_CModel_initial_flag: 0\n", "modelfit_CModel_initial_instFlux_inner: 8.85263\n", "modelfit_CModel_initial_flag_badReference: 0\n", "modelfit_CModel_initial_flag_numericError: 0\n", "modelfit_CModel_exp_instFlux: 10.3243\n", "modelfit_CModel_exp_instFluxErr: 0.424634\n", "modelfit_CModel_exp_flag: 0\n", "modelfit_CModel_exp_instFlux_inner: 8.85265\n", "modelfit_CModel_exp_flag_badReference: 0\n", "modelfit_CModel_exp_flag_numericError: 0\n", "modelfit_CModel_dev_instFlux: 10.3193\n", "modelfit_CModel_dev_instFluxErr: 0.424428\n", "modelfit_CModel_dev_flag: 0\n", "modelfit_CModel_dev_instFlux_inner: 8.85297\n", "modelfit_CModel_dev_flag_badReference: 0\n", "modelfit_CModel_dev_flag_numericError: 0\n", "modelfit_CModel_instFlux: 10.3227\n", "modelfit_CModel_instFluxErr: 0.424568\n", "modelfit_CModel_flag: 0\n", "modelfit_CModel_instFlux_inner: 8.85265\n", "modelfit_CModel_fracDev: 0\n", "modelfit_CModel_objective: 0.0635862\n", "modelfit_CModel_flag_region_maxArea: 0\n", "modelfit_CModel_flag_region_maxBadPixelFraction: 0\n", "modelfit_CModel_flag_badReference: 0\n", "modelfit_CModel_flag_noShapeletPsf: 0\n", "modelfit_CModel_flag_badCentroid: 0\n", "undeblended_base_CircularApertureFlux_3_0_instFlux: 7.95589\n", "undeblended_base_CircularApertureFlux_3_0_instFluxErr: 0.316457\n", "undeblended_base_CircularApertureFlux_3_0_flag: 0\n", "undeblended_base_CircularApertureFlux_3_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_3_0_flag_sincCoeffsTruncated: 0\n", "undeblended_base_CircularApertureFlux_4_5_instFlux: 10.4031\n", "undeblended_base_CircularApertureFlux_4_5_instFluxErr: 0.476818\n", "undeblended_base_CircularApertureFlux_4_5_flag: 0\n", "undeblended_base_CircularApertureFlux_4_5_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_4_5_flag_sincCoeffsTruncated: 0\n", "undeblended_base_CircularApertureFlux_6_0_instFlux: 12.0704\n", "undeblended_base_CircularApertureFlux_6_0_instFluxErr: 0.63913\n", "undeblended_base_CircularApertureFlux_6_0_flag: 0\n", "undeblended_base_CircularApertureFlux_6_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_6_0_flag_sincCoeffsTruncated: 0\n", "undeblended_base_CircularApertureFlux_9_0_instFlux: 16.9095\n", "undeblended_base_CircularApertureFlux_9_0_instFluxErr: 0.964298\n", "undeblended_base_CircularApertureFlux_9_0_flag: 0\n", "undeblended_base_CircularApertureFlux_9_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_9_0_flag_sincCoeffsTruncated: 0\n", "undeblended_base_CircularApertureFlux_12_0_instFlux: 21.2266\n", "undeblended_base_CircularApertureFlux_12_0_instFluxErr: 1.28996\n", "undeblended_base_CircularApertureFlux_12_0_flag: 0\n", "undeblended_base_CircularApertureFlux_12_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_12_0_flag_sincCoeffsTruncated: 0\n", "undeblended_base_CircularApertureFlux_17_0_instFlux: 37.3047\n", "undeblended_base_CircularApertureFlux_17_0_instFluxErr: 1.83484\n", "undeblended_base_CircularApertureFlux_17_0_flag: 0\n", "undeblended_base_CircularApertureFlux_17_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_25_0_instFlux: 139.549\n", "undeblended_base_CircularApertureFlux_25_0_instFluxErr: 2.71032\n", "undeblended_base_CircularApertureFlux_25_0_flag: 0\n", "undeblended_base_CircularApertureFlux_25_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_35_0_instFlux: 202.816\n", "undeblended_base_CircularApertureFlux_35_0_instFluxErr: 3.79485\n", "undeblended_base_CircularApertureFlux_35_0_flag: 0\n", "undeblended_base_CircularApertureFlux_35_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_50_0_instFlux: nan\n", "undeblended_base_CircularApertureFlux_50_0_instFluxErr: nan\n", "undeblended_base_CircularApertureFlux_50_0_flag: 1\n", "undeblended_base_CircularApertureFlux_50_0_flag_apertureTruncated: 1\n", "undeblended_base_CircularApertureFlux_70_0_instFlux: nan\n", "undeblended_base_CircularApertureFlux_70_0_instFluxErr: nan\n", "undeblended_base_CircularApertureFlux_70_0_flag: 1\n", "undeblended_base_CircularApertureFlux_70_0_flag_apertureTruncated: 1\n", "undeblended_base_PsfFlux_instFlux: 11.6928\n", "undeblended_base_PsfFlux_instFluxErr: 0.425969\n", "undeblended_base_PsfFlux_area: 48.4084\n", "undeblended_base_PsfFlux_flag: 0\n", "undeblended_base_PsfFlux_flag_noGoodPixels: 0\n", "undeblended_base_PsfFlux_flag_edge: 0\n", "undeblended_ext_photometryKron_KronFlux_instFlux: 13.1186\n", "undeblended_ext_photometryKron_KronFlux_instFluxErr: 0.742051\n", "undeblended_ext_photometryKron_KronFlux_radius: 2.77981\n", "undeblended_ext_photometryKron_KronFlux_radius_for_radius: nan\n", "undeblended_ext_photometryKron_KronFlux_psf_radius: 2.20522\n", "undeblended_ext_photometryKron_KronFlux_flag: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_edge: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_bad_shape_no_psf: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_no_minimum_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_no_fallback_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_bad_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_used_minimum_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_used_psf_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_small_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_bad_shape: 0\n", "undeblended_ext_convolved_ConvolvedFlux_seeing: 1.75951\n", "undeblended_ext_convolved_ConvolvedFlux_0_deconv: 1\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_instFlux: 11.8071\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_instFluxErr: 0.48187\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_instFlux: 12.0219\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_instFluxErr: 0.551014\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_instFlux: 12.8165\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_instFluxErr: 0.678637\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_kron_instFlux: 13.6048\n", "undeblended_ext_convolved_ConvolvedFlux_0_kron_instFluxErr: 0.769551\n", "undeblended_ext_convolved_ConvolvedFlux_0_kron_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_deconv: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_instFlux: 11.5333\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_instFluxErr: 0.128645\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_instFlux: 12.0165\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_instFluxErr: 0.137835\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_instFlux: 13.0289\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_instFluxErr: 0.16343\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_kron_instFlux: 14.047\n", "undeblended_ext_convolved_ConvolvedFlux_1_kron_instFluxErr: 0.186434\n", "undeblended_ext_convolved_ConvolvedFlux_1_kron_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_deconv: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_instFlux: 11.6644\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_instFluxErr: 0.0950786\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_instFlux: 12.3327\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_instFluxErr: 0.0917635\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_instFlux: 13.3688\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_instFluxErr: 0.0984979\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_kron_instFlux: 14.7584\n", "undeblended_ext_convolved_ConvolvedFlux_2_kron_instFluxErr: 0.111722\n", "undeblended_ext_convolved_ConvolvedFlux_2_kron_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_deconv: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_instFlux: 12.2449\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_instFluxErr: 0.0931103\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_instFlux: 12.9552\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_instFluxErr: 0.0838094\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_instFlux: 13.9043\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_instFluxErr: 0.0823295\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_kron_instFlux: 15.6734\n", "undeblended_ext_convolved_ConvolvedFlux_3_kron_instFluxErr: 0.0918793\n", "undeblended_ext_convolved_ConvolvedFlux_3_kron_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_flag: 0\n", "base_GaussianFlux_apCorr: 1.07864\n", "base_GaussianFlux_apCorrErr: 0\n", "base_GaussianFlux_flag_apCorr: 0\n", "base_PsfFlux_apCorr: 0.994313\n", "base_PsfFlux_apCorrErr: 0\n", "base_PsfFlux_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_0_3_3_apCorr: 1.37926\n", "ext_convolved_ConvolvedFlux_0_3_3_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_0_3_3_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_0_4_5_apCorr: 1.1556\n", "ext_convolved_ConvolvedFlux_0_4_5_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_0_4_5_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_0_6_0_apCorr: 1.06181\n", "ext_convolved_ConvolvedFlux_0_6_0_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_0_6_0_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_0_kron_apCorr: 1.03706\n", "ext_convolved_ConvolvedFlux_0_kron_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_0_kron_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_1_3_3_apCorr: 1.55132\n", "ext_convolved_ConvolvedFlux_1_3_3_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_1_3_3_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_1_4_5_apCorr: 1.21791\n", "ext_convolved_ConvolvedFlux_1_4_5_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_1_4_5_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_1_6_0_apCorr: 1.07711\n", "ext_convolved_ConvolvedFlux_1_6_0_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_1_6_0_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_1_kron_apCorr: 1.0584\n", "ext_convolved_ConvolvedFlux_1_kron_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_1_kron_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_2_3_3_apCorr: 2.05233\n", "ext_convolved_ConvolvedFlux_2_3_3_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_2_3_3_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_2_4_5_apCorr: 1.45072\n", "ext_convolved_ConvolvedFlux_2_4_5_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_2_4_5_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_2_6_0_apCorr: 1.16148\n", "ext_convolved_ConvolvedFlux_2_6_0_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_2_6_0_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_2_kron_apCorr: 1.13441\n", "ext_convolved_ConvolvedFlux_2_kron_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_2_kron_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_3_3_3_apCorr: 2.74687\n", "ext_convolved_ConvolvedFlux_3_3_3_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_3_3_3_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_3_4_5_apCorr: 1.81032\n", "ext_convolved_ConvolvedFlux_3_4_5_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_3_4_5_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_3_6_0_apCorr: 1.32626\n", "ext_convolved_ConvolvedFlux_3_6_0_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_3_6_0_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_3_kron_apCorr: 1.27396\n", "ext_convolved_ConvolvedFlux_3_kron_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_3_kron_flag_apCorr: 0\n", "ext_photometryKron_KronFlux_apCorr: 1.03674\n", "ext_photometryKron_KronFlux_apCorrErr: 0\n", "ext_photometryKron_KronFlux_flag_apCorr: 0\n", "modelfit_CModel_apCorr: 0.992067\n", "modelfit_CModel_apCorrErr: 0\n", "modelfit_CModel_flag_apCorr: 0\n", "modelfit_CModel_dev_apCorr: 0.991726\n", "modelfit_CModel_dev_apCorrErr: 0\n", "modelfit_CModel_dev_flag_apCorr: 0\n", "modelfit_CModel_exp_apCorr: 0.99222\n", "modelfit_CModel_exp_apCorrErr: 0\n", "modelfit_CModel_exp_flag_apCorr: 0\n", "modelfit_CModel_initial_apCorr: 0.992062\n", "modelfit_CModel_initial_apCorrErr: 0\n", "modelfit_CModel_initial_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_kron_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_kron_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_kron_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_kron_flag_apCorr: 0\n", "base_ClassificationExtendedness_value: 0\n", "base_ClassificationExtendedness_flag: 0" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# lets examine the first element in the matches list\n", "# we can grab the record corresponding to this source in the i band catalog\n", "# using the first attribute\n", "matches[0].first" ] }, { "cell_type": "code", "execution_count": 60, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:07.935369Z", "iopub.status.busy": "2021-04-23T20:36:07.934051Z", "iopub.status.idle": "2021-04-23T20:36:08.007541Z", "shell.execute_reply": "2021-04-23T20:36:08.008662Z" } }, "outputs": [ { "data": { "text/plain": [ "\n", "id: 21335078244214836\n", "coord_ra: 1.00536 rad\n", "coord_dec: -0.5044 rad\n", "parent: 21335078244188220\n", "deblend_nChild: 0\n", "base_SdssCentroid_x: 7595.08\n", "base_SdssCentroid_y: 15936.9\n", "base_SdssCentroid_xErr: 0.102302\n", "base_SdssCentroid_yErr: 0.107626\n", "base_SdssCentroid_flag: 0\n", "base_SdssCentroid_flag_edge: 0\n", "base_SdssCentroid_flag_noSecondDerivative: 0\n", "base_SdssCentroid_flag_almostNoSecondDerivative: 0\n", "base_SdssCentroid_flag_notAtMaximum: 0\n", "base_SdssCentroid_flag_resetToPeak: 0\n", "base_SdssCentroid_flag_badError: 0\n", "base_TransformedCentroid_x: 7595.01\n", "base_TransformedCentroid_y: 15936.9\n", "base_TransformedCentroid_flag: 0\n", "base_InputCount_flag: 0\n", "base_InputCount_value: 105\n", "base_InputCount_flag_noInputs: 0\n", "base_SdssShape_xx: 3.44978\n", "base_SdssShape_yy: 3.71045\n", "base_SdssShape_xy: -0.559484\n", "base_SdssShape_xxErr: 0.322392\n", "base_SdssShape_yyErr: 0.239295\n", "base_SdssShape_xyErr: 0.346752\n", "base_SdssShape_x: 7595.05\n", "base_SdssShape_y: 15936.9\n", "base_SdssShape_instFlux: 6.36984\n", "base_SdssShape_instFluxErr: 0.29764\n", "base_SdssShape_psf_xx: 3.38324\n", "base_SdssShape_psf_yy: 3.34278\n", "base_SdssShape_psf_xy: -0.00941772\n", "base_SdssShape_instFlux_xx_Cov: -0.0479784\n", "base_SdssShape_instFlux_yy_Cov: 0.00778111\n", "base_SdssShape_instFlux_xy_Cov: -0.0516037\n", "base_SdssShape_flag: 0\n", "base_SdssShape_flag_unweightedBad: 0\n", "base_SdssShape_flag_unweighted: 0\n", "base_SdssShape_flag_shift: 0\n", "base_SdssShape_flag_maxIter: 0\n", "base_SdssShape_flag_psf: 0\n", "base_TransformedShape_xx: 2.60407\n", "base_TransformedShape_yy: 3.00102\n", "base_TransformedShape_xy: 0.120437\n", "base_TransformedShape_flag: 0\n", "modelfit_DoubleShapeletPsfApprox_0_xx: 2.55898\n", "modelfit_DoubleShapeletPsfApprox_0_yy: 2.5414\n", "modelfit_DoubleShapeletPsfApprox_0_xy: -5.94712e-05\n", "modelfit_DoubleShapeletPsfApprox_0_x: -0.00026666\n", "modelfit_DoubleShapeletPsfApprox_0_y: -0.00279895\n", "modelfit_DoubleShapeletPsfApprox_0_0: 0.16935\n", "modelfit_DoubleShapeletPsfApprox_0_1: 0.000231175\n", "modelfit_DoubleShapeletPsfApprox_0_2: -1.72639e-06\n", "modelfit_DoubleShapeletPsfApprox_0_3: -0.000189367\n", "modelfit_DoubleShapeletPsfApprox_0_4: -0.000286832\n", "modelfit_DoubleShapeletPsfApprox_0_5: 0.000193699\n", "modelfit_DoubleShapeletPsfApprox_1_xx: 8.86817\n", "modelfit_DoubleShapeletPsfApprox_1_yy: 8.80725\n", "modelfit_DoubleShapeletPsfApprox_1_xy: -0.000206098\n", "modelfit_DoubleShapeletPsfApprox_1_x: -0.00026666\n", "modelfit_DoubleShapeletPsfApprox_1_y: -0.00279895\n", "modelfit_DoubleShapeletPsfApprox_1_0: 0.10696\n", "modelfit_DoubleShapeletPsfApprox_1_1: 2.66552e-05\n", "modelfit_DoubleShapeletPsfApprox_1_2: 4.63898e-05\n", "modelfit_DoubleShapeletPsfApprox_flag: 0\n", "modelfit_DoubleShapeletPsfApprox_flag_invalidPointForPsf: 0\n", "modelfit_DoubleShapeletPsfApprox_flag_invalidMoments: 0\n", "modelfit_DoubleShapeletPsfApprox_flag_maxIterations: 0\n", "base_CircularApertureFlux_3_0_instFlux: 4.52102\n", "base_CircularApertureFlux_3_0_instFluxErr: 0.16233\n", "base_CircularApertureFlux_3_0_flag: 0\n", "base_CircularApertureFlux_3_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_3_0_flag_sincCoeffsTruncated: 0\n", "base_CircularApertureFlux_4_5_instFlux: 5.87353\n", "base_CircularApertureFlux_4_5_instFluxErr: 0.244019\n", "base_CircularApertureFlux_4_5_flag: 0\n", "base_CircularApertureFlux_4_5_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_4_5_flag_sincCoeffsTruncated: 0\n", "base_CircularApertureFlux_6_0_instFlux: 6.69019\n", "base_CircularApertureFlux_6_0_instFluxErr: 0.326743\n", "base_CircularApertureFlux_6_0_flag: 0\n", "base_CircularApertureFlux_6_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_6_0_flag_sincCoeffsTruncated: 0\n", "base_CircularApertureFlux_9_0_instFlux: 7.98355\n", "base_CircularApertureFlux_9_0_instFluxErr: 0.492106\n", "base_CircularApertureFlux_9_0_flag: 0\n", "base_CircularApertureFlux_9_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_9_0_flag_sincCoeffsTruncated: 0\n", "base_CircularApertureFlux_12_0_instFlux: 8.87243\n", "base_CircularApertureFlux_12_0_instFluxErr: 0.657244\n", "base_CircularApertureFlux_12_0_flag: 0\n", "base_CircularApertureFlux_12_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_12_0_flag_sincCoeffsTruncated: 0\n", "base_CircularApertureFlux_17_0_instFlux: 9.72514\n", "base_CircularApertureFlux_17_0_instFluxErr: 0.933897\n", "base_CircularApertureFlux_17_0_flag: 0\n", "base_CircularApertureFlux_17_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_25_0_instFlux: 11.9842\n", "base_CircularApertureFlux_25_0_instFluxErr: 1.37912\n", "base_CircularApertureFlux_25_0_flag: 0\n", "base_CircularApertureFlux_25_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_35_0_instFlux: 16.4408\n", "base_CircularApertureFlux_35_0_instFluxErr: 1.9316\n", "base_CircularApertureFlux_35_0_flag: 0\n", "base_CircularApertureFlux_35_0_flag_apertureTruncated: 0\n", "base_CircularApertureFlux_50_0_instFlux: nan\n", "base_CircularApertureFlux_50_0_instFluxErr: nan\n", "base_CircularApertureFlux_50_0_flag: 1\n", "base_CircularApertureFlux_50_0_flag_apertureTruncated: 1\n", "base_CircularApertureFlux_70_0_instFlux: nan\n", "base_CircularApertureFlux_70_0_instFluxErr: nan\n", "base_CircularApertureFlux_70_0_flag: 1\n", "base_CircularApertureFlux_70_0_flag_apertureTruncated: 1\n", "base_GaussianFlux_instFlux: 6.05006\n", "base_GaussianFlux_instFluxErr: 0.201319\n", "base_GaussianFlux_flag: 0\n", "base_LocalBackground_instFlux: 0.00240181\n", "base_LocalBackground_instFluxErr: 0.0304566\n", "base_LocalBackground_flag: 0\n", "base_LocalBackground_flag_noGoodPixels: 0\n", "base_LocalBackground_flag_noPsf: 0\n", "base_PixelFlags_flag: 0\n", "base_PixelFlags_flag_offimage: 0\n", "base_PixelFlags_flag_edge: 0\n", "base_PixelFlags_flag_interpolated: 0\n", "base_PixelFlags_flag_saturated: 0\n", "base_PixelFlags_flag_cr: 0\n", "base_PixelFlags_flag_bad: 0\n", "base_PixelFlags_flag_suspect: 0\n", "base_PixelFlags_flag_interpolatedCenter: 0\n", "base_PixelFlags_flag_saturatedCenter: 0\n", "base_PixelFlags_flag_crCenter: 0\n", "base_PixelFlags_flag_suspectCenter: 0\n", "base_PixelFlags_flag_clippedCenter: 0\n", "base_PixelFlags_flag_sensor_edgeCenter: 1\n", "base_PixelFlags_flag_rejectedCenter: 0\n", "base_PixelFlags_flag_inexact_psfCenter: 1\n", "base_PixelFlags_flag_bright_objectCenter: 0\n", "base_PixelFlags_flag_clipped: 0\n", "base_PixelFlags_flag_sensor_edge: 1\n", "base_PixelFlags_flag_rejected: 0\n", "base_PixelFlags_flag_inexact_psf: 1\n", "base_PixelFlags_flag_bright_object: 0\n", "base_PsfFlux_instFlux: 6.92376\n", "base_PsfFlux_instFluxErr: 0.226925\n", "base_PsfFlux_area: 52.8907\n", "base_PsfFlux_flag: 0\n", "base_PsfFlux_flag_noGoodPixels: 0\n", "base_PsfFlux_flag_edge: 0\n", "base_Variance_flag: 1\n", "base_Variance_value: nan\n", "base_Variance_flag_emptyFootprint: 1\n", "ext_photometryKron_KronFlux_instFlux: 7.26397\n", "ext_photometryKron_KronFlux_instFluxErr: 0.392672\n", "ext_photometryKron_KronFlux_radius: 2.77981\n", "ext_photometryKron_KronFlux_radius_for_radius: nan\n", "ext_photometryKron_KronFlux_psf_radius: 2.29837\n", "ext_photometryKron_KronFlux_flag: 0\n", "ext_photometryKron_KronFlux_flag_edge: 0\n", "ext_photometryKron_KronFlux_flag_bad_shape_no_psf: 0\n", "ext_photometryKron_KronFlux_flag_no_minimum_radius: 0\n", "ext_photometryKron_KronFlux_flag_no_fallback_radius: 0\n", "ext_photometryKron_KronFlux_flag_bad_radius: 0\n", "ext_photometryKron_KronFlux_flag_used_minimum_radius: 0\n", "ext_photometryKron_KronFlux_flag_used_psf_radius: 0\n", "ext_photometryKron_KronFlux_flag_small_radius: 0\n", "ext_photometryKron_KronFlux_flag_bad_shape: 0\n", "ext_convolved_ConvolvedFlux_seeing: 1.83383\n", "ext_convolved_ConvolvedFlux_0_deconv: 1\n", "ext_convolved_ConvolvedFlux_0_3_3_instFlux: 7.00486\n", "ext_convolved_ConvolvedFlux_0_3_3_instFluxErr: 0.256229\n", "ext_convolved_ConvolvedFlux_0_3_3_flag: 0\n", "ext_convolved_ConvolvedFlux_0_3_3_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_3_3_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_4_5_instFlux: 6.92152\n", "ext_convolved_ConvolvedFlux_0_4_5_instFluxErr: 0.287558\n", "ext_convolved_ConvolvedFlux_0_4_5_flag: 0\n", "ext_convolved_ConvolvedFlux_0_4_5_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_4_5_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_6_0_instFlux: 7.16395\n", "ext_convolved_ConvolvedFlux_0_6_0_instFluxErr: 0.349881\n", "ext_convolved_ConvolvedFlux_0_6_0_flag: 0\n", "ext_convolved_ConvolvedFlux_0_6_0_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_6_0_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_0_kron_instFlux: 7.26438\n", "ext_convolved_ConvolvedFlux_0_kron_instFluxErr: 0.392694\n", "ext_convolved_ConvolvedFlux_0_kron_flag: 0\n", "ext_convolved_ConvolvedFlux_1_deconv: 0\n", "ext_convolved_ConvolvedFlux_1_3_3_instFlux: 6.87315\n", "ext_convolved_ConvolvedFlux_1_3_3_instFluxErr: 0.0745953\n", "ext_convolved_ConvolvedFlux_1_3_3_flag: 0\n", "ext_convolved_ConvolvedFlux_1_3_3_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_3_3_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_4_5_instFlux: 6.94272\n", "ext_convolved_ConvolvedFlux_1_4_5_instFluxErr: 0.0793422\n", "ext_convolved_ConvolvedFlux_1_4_5_flag: 0\n", "ext_convolved_ConvolvedFlux_1_4_5_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_4_5_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_6_0_instFlux: 7.12439\n", "ext_convolved_ConvolvedFlux_1_6_0_instFluxErr: 0.0934062\n", "ext_convolved_ConvolvedFlux_1_6_0_flag: 0\n", "ext_convolved_ConvolvedFlux_1_6_0_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_6_0_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_1_kron_instFlux: 7.33198\n", "ext_convolved_ConvolvedFlux_1_kron_instFluxErr: 0.105126\n", "ext_convolved_ConvolvedFlux_1_kron_flag: 0\n", "ext_convolved_ConvolvedFlux_2_deconv: 0\n", "ext_convolved_ConvolvedFlux_2_3_3_instFlux: 6.67326\n", "ext_convolved_ConvolvedFlux_2_3_3_instFluxErr: 0.0501644\n", "ext_convolved_ConvolvedFlux_2_3_3_flag: 0\n", "ext_convolved_ConvolvedFlux_2_3_3_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_3_3_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_4_5_instFlux: 6.90014\n", "ext_convolved_ConvolvedFlux_2_4_5_instFluxErr: 0.0484493\n", "ext_convolved_ConvolvedFlux_2_4_5_flag: 0\n", "ext_convolved_ConvolvedFlux_2_4_5_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_4_5_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_6_0_instFlux: 7.1445\n", "ext_convolved_ConvolvedFlux_2_6_0_instFluxErr: 0.052004\n", "ext_convolved_ConvolvedFlux_2_6_0_flag: 0\n", "ext_convolved_ConvolvedFlux_2_6_0_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_6_0_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_2_kron_instFlux: 7.52964\n", "ext_convolved_ConvolvedFlux_2_kron_instFluxErr: 0.057812\n", "ext_convolved_ConvolvedFlux_2_kron_flag: 0\n", "ext_convolved_ConvolvedFlux_3_deconv: 0\n", "ext_convolved_ConvolvedFlux_3_3_3_instFlux: 6.80213\n", "ext_convolved_ConvolvedFlux_3_3_3_instFluxErr: 0.0485234\n", "ext_convolved_ConvolvedFlux_3_3_3_flag: 0\n", "ext_convolved_ConvolvedFlux_3_3_3_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_3_3_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_4_5_instFlux: 7.04858\n", "ext_convolved_ConvolvedFlux_3_4_5_instFluxErr: 0.0436523\n", "ext_convolved_ConvolvedFlux_3_4_5_flag: 0\n", "ext_convolved_ConvolvedFlux_3_4_5_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_4_5_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_6_0_instFlux: 7.26638\n", "ext_convolved_ConvolvedFlux_3_6_0_instFluxErr: 0.0428443\n", "ext_convolved_ConvolvedFlux_3_6_0_flag: 0\n", "ext_convolved_ConvolvedFlux_3_6_0_flag_apertureTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_6_0_flag_sincCoeffsTruncated: 0\n", "ext_convolved_ConvolvedFlux_3_kron_instFlux: 7.73398\n", "ext_convolved_ConvolvedFlux_3_kron_instFluxErr: 0.0462367\n", "ext_convolved_ConvolvedFlux_3_kron_flag: 0\n", "ext_convolved_ConvolvedFlux_flag: 0\n", "modelfit_CModel_initial_instFlux: 6.87112\n", "modelfit_CModel_initial_instFluxErr: 0.227795\n", "modelfit_CModel_initial_flag: 0\n", "modelfit_CModel_initial_instFlux_inner: 5.7752\n", "modelfit_CModel_initial_flag_badReference: 0\n", "modelfit_CModel_initial_flag_numericError: 0\n", "modelfit_CModel_exp_instFlux: 6.87228\n", "modelfit_CModel_exp_instFluxErr: 0.227836\n", "modelfit_CModel_exp_flag: 0\n", "modelfit_CModel_exp_instFlux_inner: 5.77509\n", "modelfit_CModel_exp_flag_badReference: 0\n", "modelfit_CModel_exp_flag_numericError: 0\n", "modelfit_CModel_dev_instFlux: 6.86897\n", "modelfit_CModel_dev_instFluxErr: 0.227727\n", "modelfit_CModel_dev_flag: 0\n", "modelfit_CModel_dev_instFlux_inner: 5.77521\n", "modelfit_CModel_dev_flag_badReference: 0\n", "modelfit_CModel_dev_flag_numericError: 0\n", "modelfit_CModel_instFlux: 6.87132\n", "modelfit_CModel_instFluxErr: 0.227804\n", "modelfit_CModel_flag: 0\n", "modelfit_CModel_instFlux_inner: 5.77509\n", "modelfit_CModel_fracDev: 0\n", "modelfit_CModel_objective: 0.0181053\n", "modelfit_CModel_flag_region_maxArea: 0\n", "modelfit_CModel_flag_region_maxBadPixelFraction: 0\n", "modelfit_CModel_flag_badReference: 0\n", "modelfit_CModel_flag_noShapeletPsf: 0\n", "modelfit_CModel_flag_badCentroid: 0\n", "undeblended_base_CircularApertureFlux_3_0_instFlux: 5.46422\n", "undeblended_base_CircularApertureFlux_3_0_instFluxErr: 0.16233\n", "undeblended_base_CircularApertureFlux_3_0_flag: 0\n", "undeblended_base_CircularApertureFlux_3_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_3_0_flag_sincCoeffsTruncated: 0\n", "undeblended_base_CircularApertureFlux_4_5_instFlux: 7.63695\n", "undeblended_base_CircularApertureFlux_4_5_instFluxErr: 0.244019\n", "undeblended_base_CircularApertureFlux_4_5_flag: 0\n", "undeblended_base_CircularApertureFlux_4_5_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_4_5_flag_sincCoeffsTruncated: 0\n", "undeblended_base_CircularApertureFlux_6_0_instFlux: 9.65153\n", "undeblended_base_CircularApertureFlux_6_0_instFluxErr: 0.326743\n", "undeblended_base_CircularApertureFlux_6_0_flag: 0\n", "undeblended_base_CircularApertureFlux_6_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_6_0_flag_sincCoeffsTruncated: 0\n", "undeblended_base_CircularApertureFlux_9_0_instFlux: 14.1842\n", "undeblended_base_CircularApertureFlux_9_0_instFluxErr: 0.492106\n", "undeblended_base_CircularApertureFlux_9_0_flag: 0\n", "undeblended_base_CircularApertureFlux_9_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_9_0_flag_sincCoeffsTruncated: 0\n", "undeblended_base_CircularApertureFlux_12_0_instFlux: 17.5964\n", "undeblended_base_CircularApertureFlux_12_0_instFluxErr: 0.657244\n", "undeblended_base_CircularApertureFlux_12_0_flag: 0\n", "undeblended_base_CircularApertureFlux_12_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_12_0_flag_sincCoeffsTruncated: 0\n", "undeblended_base_CircularApertureFlux_17_0_instFlux: 28.1545\n", "undeblended_base_CircularApertureFlux_17_0_instFluxErr: 0.933897\n", "undeblended_base_CircularApertureFlux_17_0_flag: 0\n", "undeblended_base_CircularApertureFlux_17_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_25_0_instFlux: 118.693\n", "undeblended_base_CircularApertureFlux_25_0_instFluxErr: 1.37912\n", "undeblended_base_CircularApertureFlux_25_0_flag: 0\n", "undeblended_base_CircularApertureFlux_25_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_35_0_instFlux: 166.622\n", "undeblended_base_CircularApertureFlux_35_0_instFluxErr: 1.9316\n", "undeblended_base_CircularApertureFlux_35_0_flag: 0\n", "undeblended_base_CircularApertureFlux_35_0_flag_apertureTruncated: 0\n", "undeblended_base_CircularApertureFlux_50_0_instFlux: nan\n", "undeblended_base_CircularApertureFlux_50_0_instFluxErr: nan\n", "undeblended_base_CircularApertureFlux_50_0_flag: 1\n", "undeblended_base_CircularApertureFlux_50_0_flag_apertureTruncated: 1\n", "undeblended_base_CircularApertureFlux_70_0_instFlux: nan\n", "undeblended_base_CircularApertureFlux_70_0_instFluxErr: nan\n", "undeblended_base_CircularApertureFlux_70_0_flag: 1\n", "undeblended_base_CircularApertureFlux_70_0_flag_apertureTruncated: 1\n", "undeblended_base_PsfFlux_instFlux: 8.58191\n", "undeblended_base_PsfFlux_instFluxErr: 0.228508\n", "undeblended_base_PsfFlux_area: 52.8907\n", "undeblended_base_PsfFlux_flag: 0\n", "undeblended_base_PsfFlux_flag_noGoodPixels: 0\n", "undeblended_base_PsfFlux_flag_edge: 0\n", "undeblended_ext_photometryKron_KronFlux_instFlux: 10.7967\n", "undeblended_ext_photometryKron_KronFlux_instFluxErr: 0.379066\n", "undeblended_ext_photometryKron_KronFlux_radius: 2.77981\n", "undeblended_ext_photometryKron_KronFlux_radius_for_radius: nan\n", "undeblended_ext_photometryKron_KronFlux_psf_radius: 2.29837\n", "undeblended_ext_photometryKron_KronFlux_flag: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_edge: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_bad_shape_no_psf: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_no_minimum_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_no_fallback_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_bad_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_used_minimum_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_used_psf_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_small_radius: 0\n", "undeblended_ext_photometryKron_KronFlux_flag_bad_shape: 0\n", "undeblended_ext_convolved_ConvolvedFlux_seeing: 1.83383\n", "undeblended_ext_convolved_ConvolvedFlux_0_deconv: 1\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_instFlux: 8.59701\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_instFluxErr: 0.256229\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_instFlux: 8.99958\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_instFluxErr: 0.287558\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_instFlux: 10.335\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_instFluxErr: 0.349881\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_kron_instFlux: 11.1849\n", "undeblended_ext_convolved_ConvolvedFlux_0_kron_instFluxErr: 0.392694\n", "undeblended_ext_convolved_ConvolvedFlux_0_kron_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_deconv: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_instFlux: 8.52853\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_instFluxErr: 0.0745953\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_instFlux: 9.13359\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_instFluxErr: 0.0793422\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_instFlux: 10.3584\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_instFluxErr: 0.0934062\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_kron_instFlux: 11.2562\n", "undeblended_ext_convolved_ConvolvedFlux_1_kron_instFluxErr: 0.105126\n", "undeblended_ext_convolved_ConvolvedFlux_1_kron_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_deconv: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_instFlux: 8.68863\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_instFluxErr: 0.0501644\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_instFlux: 9.41499\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_instFluxErr: 0.0484493\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_instFlux: 10.5509\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_instFluxErr: 0.052004\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_kron_instFlux: 11.6155\n", "undeblended_ext_convolved_ConvolvedFlux_2_kron_instFluxErr: 0.057812\n", "undeblended_ext_convolved_ConvolvedFlux_2_kron_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_deconv: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_instFlux: 9.36708\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_instFluxErr: 0.0485234\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_instFlux: 10.0594\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_instFluxErr: 0.0436523\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_instFlux: 11.0111\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_instFluxErr: 0.0428443\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_flag_apertureTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_flag_sincCoeffsTruncated: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_kron_instFlux: 12.137\n", "undeblended_ext_convolved_ConvolvedFlux_3_kron_instFluxErr: 0.0462367\n", "undeblended_ext_convolved_ConvolvedFlux_3_kron_flag: 0\n", "undeblended_ext_convolved_ConvolvedFlux_flag: 0\n", "base_GaussianFlux_apCorr: 1.07847\n", "base_GaussianFlux_apCorrErr: 0\n", "base_GaussianFlux_flag_apCorr: 0\n", "base_PsfFlux_apCorr: 0.993075\n", "base_PsfFlux_apCorrErr: 0\n", "base_PsfFlux_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_0_3_3_apCorr: 1.42978\n", "ext_convolved_ConvolvedFlux_0_3_3_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_0_3_3_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_0_4_5_apCorr: 1.17843\n", "ext_convolved_ConvolvedFlux_0_4_5_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_0_4_5_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_0_6_0_apCorr: 1.07081\n", "ext_convolved_ConvolvedFlux_0_6_0_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_0_6_0_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_0_kron_apCorr: 1.03595\n", "ext_convolved_ConvolvedFlux_0_kron_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_0_kron_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_1_3_3_apCorr: 1.58029\n", "ext_convolved_ConvolvedFlux_1_3_3_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_1_3_3_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_1_4_5_apCorr: 1.23343\n", "ext_convolved_ConvolvedFlux_1_4_5_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_1_4_5_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_1_6_0_apCorr: 1.08447\n", "ext_convolved_ConvolvedFlux_1_6_0_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_1_6_0_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_1_kron_apCorr: 1.05209\n", "ext_convolved_ConvolvedFlux_1_kron_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_1_kron_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_2_3_3_apCorr: 2.05076\n", "ext_convolved_ConvolvedFlux_2_3_3_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_2_3_3_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_2_4_5_apCorr: 1.4521\n", "ext_convolved_ConvolvedFlux_2_4_5_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_2_4_5_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_2_6_0_apCorr: 1.16384\n", "ext_convolved_ConvolvedFlux_2_6_0_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_2_6_0_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_2_kron_apCorr: 1.11532\n", "ext_convolved_ConvolvedFlux_2_kron_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_2_kron_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_3_3_3_apCorr: 2.75214\n", "ext_convolved_ConvolvedFlux_3_3_3_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_3_3_3_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_3_4_5_apCorr: 1.81416\n", "ext_convolved_ConvolvedFlux_3_4_5_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_3_4_5_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_3_6_0_apCorr: 1.32924\n", "ext_convolved_ConvolvedFlux_3_6_0_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_3_6_0_flag_apCorr: 0\n", "ext_convolved_ConvolvedFlux_3_kron_apCorr: 1.23656\n", "ext_convolved_ConvolvedFlux_3_kron_apCorrErr: 0\n", "ext_convolved_ConvolvedFlux_3_kron_flag_apCorr: 0\n", "ext_photometryKron_KronFlux_apCorr: 1.03589\n", "ext_photometryKron_KronFlux_apCorrErr: 0\n", "ext_photometryKron_KronFlux_flag_apCorr: 0\n", "modelfit_CModel_apCorr: 0.990821\n", "modelfit_CModel_apCorrErr: 0\n", "modelfit_CModel_flag_apCorr: 0\n", "modelfit_CModel_dev_apCorr: 0.990426\n", "modelfit_CModel_dev_apCorrErr: 0\n", "modelfit_CModel_dev_flag_apCorr: 0\n", "modelfit_CModel_exp_apCorr: 0.990958\n", "modelfit_CModel_exp_apCorrErr: 0\n", "modelfit_CModel_exp_flag_apCorr: 0\n", "modelfit_CModel_initial_apCorr: 0.990752\n", "modelfit_CModel_initial_apCorrErr: 0\n", "modelfit_CModel_initial_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_3_3_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_4_5_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_6_0_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_3_3_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_4_5_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_6_0_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_3_3_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_4_5_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_6_0_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_3_3_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_4_5_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_6_0_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_0_kron_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_1_kron_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_2_kron_flag_apCorr: 0\n", "undeblended_ext_convolved_ConvolvedFlux_3_kron_flag_apCorr: 0\n", "base_ClassificationExtendedness_value: 0\n", "base_ClassificationExtendedness_flag: 0" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# likewise the second attribute gives us the record from the r band catalog\n", "matches[0].second" ] }, { "cell_type": "code", "execution_count": 61, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:08.015010Z", "iopub.status.busy": "2021-04-23T20:36:08.013665Z", "iopub.status.idle": "2021-04-23T20:36:08.060675Z", "shell.execute_reply": "2021-04-23T20:36:08.061912Z" } }, "outputs": [ { "data": { "text/plain": [ "0.0" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#finally the angular seperation is given in radians in the distance attribute\n", "matches[0].distance" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now that we have matched stars in two bands, lets make a color magnitude diagram, displaying how to use matches in a little more depth\n", "first we start out simple and demonstrate how to get the magnitude and magnitude error for one record in our matches object" ] }, { "cell_type": "code", "execution_count": 62, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:08.068556Z", "iopub.status.busy": "2021-04-23T20:36:08.067157Z", "iopub.status.idle": "2021-04-23T20:36:08.105306Z", "shell.execute_reply": "2021-04-23T20:36:08.106519Z" } }, "outputs": [ { "data": { "text/plain": [ "Measurement(value=24.46551613554949256, error=0.04465584335848839931)" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# use the calib object to get magnitudes\n", "# pass in a record and the name of the flux field you are interested in\n", "iCalib.instFluxToMagnitude(matches[0].first, 'modelfit_CModel')" ] }, { "cell_type": "code", "execution_count": 63, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:08.114409Z", "iopub.status.busy": "2021-04-23T20:36:08.112964Z", "iopub.status.idle": "2021-04-23T20:36:08.414609Z", "shell.execute_reply": "2021-04-23T20:36:08.415855Z" } }, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, '$i$')" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# now we make some loops to grab all the magnitudes in the iband and rband\n", "# remember that the i band catalog is accessed with the first attribute\n", "# and the r band catalog is accessed with the second attribute\n", "iMag = [iCalib.instFluxToMagnitude(m.first, 'modelfit_CModel').value for m in matches]\n", "rMag = [rCalib.instFluxToMagnitude(m.second, 'modelfit_CModel').value for m in matches]\n", "\n", "plt.scatter(np.array(rMag) - (iMag), iMag)\n", "plt.ylim([26,18])\n", "plt.xlim([-0.5,3])\n", "plt.xlabel('$r-i$')\n", "plt.ylabel('$i$')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you are only interested in the ids and the angular separation, you can pack the matches into a table." ] }, { "cell_type": "code", "execution_count": 64, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:08.421842Z", "iopub.status.busy": "2021-04-23T20:36:08.420380Z", "iopub.status.idle": "2021-04-23T20:36:08.459393Z", "shell.execute_reply": "2021-04-23T20:36:08.460629Z" } }, "outputs": [ { "data": { "text/plain": [ "\n", " first second distance\n", "----------------- ----------------- --------\n", "21335078244214836 21335078244214836 0.0\n", "21335078244214737 21335078244214737 0.0\n", "21335078244214940 21335078244214940 0.0\n", "21335078244215075 21335078244215075 0.0\n", "21335078244188282 21335078244188282 0.0\n", "21335078244188289 21335078244188289 0.0\n", "21335078244215071 21335078244215071 0.0\n", "21335078244214861 21335078244214861 0.0\n", "21335078244215040 21335078244215040 0.0\n", "21335078244214885 21335078244214885 0.0\n", "21335078244188382 21335078244188382 0.0\n", "21335078244214912 21335078244214912 0.0\n", "21335078244215167 21335078244215167 0.0\n", "21335078244215280 21335078244215280 0.0\n", " ... ... ...\n", "21335078244234932 21335078244234932 0.0\n", "21335078244199114 21335078244199114 0.0\n", "21335078244199070 21335078244199070 0.0\n", "21335078244199112 21335078244199112 0.0\n", "21335078244199126 21335078244199126 0.0\n", "21335078244234646 21335078244234646 0.0\n", "21335078244234942 21335078244234942 0.0\n", "21335078244234974 21335078244234974 0.0\n", "21335078244235012 21335078244235012 0.0\n", "21335078244199128 21335078244199128 0.0\n", "21335078244234946 21335078244234946 0.0\n", "21335078244234753 21335078244234753 0.0\n", "21335078244234947 21335078244234947 0.0\n", "21335078244235127 21335078244235127 0.0\n", "21335078244235142 21335078244235142 0.0\n", "Length = 997 rows" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "matches_table = afwTable.packMatches(matches)\n", "matches_table" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can unpack the matches too:" ] }, { "cell_type": "code", "execution_count": 65, "metadata": { "execution": { "iopub.execute_input": "2021-04-23T20:36:08.466782Z", "iopub.status.busy": "2021-04-23T20:36:08.465418Z", "iopub.status.idle": "2021-04-23T20:36:08.502614Z", "shell.execute_reply": "2021-04-23T20:36:08.501329Z" } }, "outputs": [], "source": [ "unpack_matches = afwTable.unpackMatches(matches_table, iSources, rSources)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Hopefully this gives you some idea of the power of `afwTable`s in matching catalogs together" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Summary\n", "\n", "In this tutorial we introduced afw tables. We introduced schemas, how to navigate them, add to them, and how to create tables based off of them. We covered data access to catalogs produced by DM using the data butler. We went over a some typical use cases for source catalogs, like catalog matching, and understanding bread and butter measurement algorithms." ] } ], "metadata": { "celltoolbar": "Slideshow", "kernelspec": { "display_name": "LSST", "language": "python", "name": "lsst" }, "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.8" }, "livereveal": { "scroll": true, "start_slideshow_at": "selected" } }, "nbformat": 4, "nbformat_minor": 4 }