{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/tthatcher/anaconda3/envs/autocnet/lib/python3.6/site-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n",
      "  from ._conv import register_converters as _register_converters\n"
     ]
    }
   ],
   "source": [
    "import os\n",
    "import sys\n",
    "from functools import singledispatch\n",
    "import warnings\n",
    "\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "\n",
    "sys.path.insert(0, \"/home/tthatcher/Desktop/Projects/Plio/plio\")\n",
    "\n",
    "from plio.examples import get_path\n",
    "from plio.io.io_bae import read_gpf, read_ipf"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Reads a .atf file and outputs all of the \n",
    "# .ipf, .gpf, .sup, .prj, and path to locate the \n",
    "# .apf file (should be the same as all others) \n",
    "def read_atf(atf_file):\n",
    "    with open(atf_file) as f:\n",
    "\n",
    "        files = []\n",
    "        ipf = []\n",
    "        sup = []\n",
    "        files_dict = []\n",
    "        \n",
    "        # Grabs every PRJ, GPF, SUP, and IPF image from the ATF file\n",
    "        for line in f:\n",
    "            if line[-4:-1] == 'prj' or line[-4:-1] == 'gpf' or line[-4:-1] == 'sup' or line[-4:-1] == 'ipf' or line[-4:-1] == 'atf':\n",
    "                files.append(line)\n",
    "        \n",
    "        files = np.array(files)\n",
    "        \n",
    "        # Creates appropriate arrays for certain files in the right format\n",
    "        for file in files:\n",
    "            file = file.strip()\n",
    "            file = file.split(' ')\n",
    "\n",
    "            # Grabs all the IPF files\n",
    "            if file[1].endswith('.ipf'):\n",
    "                ipf.append(file[1])\n",
    "\n",
    "            # Grabs all the SUP files\n",
    "            if file[1].endswith('.sup'):\n",
    "                sup.append(file[1])\n",
    "\n",
    "            files_dict.append(file)\n",
    "\n",
    "        # Creates a dict out of file lists for GPF, PRJ, IPF, and ATF\n",
    "        files_dict = (dict(files_dict))\n",
    "        \n",
    "        # Sets the value of IMAGE_IPF to all IPF images\n",
    "        files_dict['IMAGE_IPF'] = ipf\n",
    "        \n",
    "        # Sets the value of IMAGE_SUP to all SUP images\n",
    "        files_dict['IMAGE_SUP'] = sup\n",
    "        \n",
    "        # Sets the value of PATH to the path of the ATF file\n",
    "        files_dict['PATH'] = os.path.dirname(os.path.abspath(atf_file))\n",
    "        \n",
    "        return files_dict"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/tthatcher/anaconda3/envs/autocnet/lib/python3.6/site-packages/ipykernel_launcher.py:12: UserWarning: The following points found in ipf files missing from gpf file: \n",
      "\n",
      "['P03_002226_1895_XI_09N203W_15', 'P03_002226_1895_XI_09N203W_16', 'P03_002226_1895_XI_09N203W_17', 'P03_002226_1895_XI_09N203W_18', 'P03_002226_1895_XI_09N203W_19', 'P03_002226_1895_XI_09N203W_20', 'P03_002226_1895_XI_09N203W_21', 'P03_002226_1895_XI_09N203W_22', 'P03_002226_1895_XI_09N203W_24', 'P03_002226_1895_XI_09N203W_26', 'P03_002226_1895_XI_09N203W_30', 'P03_002226_1895_XI_09N203W_31', 'P03_002226_1895_XI_09N203W_32', 'P03_002226_1895_XI_09N203W_34', 'P03_002226_1895_XI_09N203W_36', 'P03_002226_1895_XI_09N203W_37', 'P03_002226_1895_XI_09N203W_44', 'P03_002226_1895_XI_09N203W_48', 'P03_002226_1895_XI_09N203W_49', 'P03_002226_1895_XI_09N203W_56', 'P03_002226_1895_XI_09N203W_57', 'P03_002226_1895_XI_09N203W_61', 'P03_002226_1895_XI_09N203W_62', 'P03_002226_1895_XI_09N203W_63', 'P03_002226_1895_XI_09N203W_65', 'P19_008344_1894_XN_09N203W_4', 'P20_008845_1894_XN_09N203W_15'].                   \n",
      "\n",
      "Continuing, but these points will be missing from the control network\n",
      "  if sys.path[0] == '':\n"
     ]
    }
   ],
   "source": [
    "atf_dict = read_atf(get_path('CTX_Athabasca_Middle_step0.atf'))\n",
    "\n",
    "gpf_file = os.path.join(atf_dict['PATH'], atf_dict['GP_FILE']);\n",
    "ipf_list = [os.path.join(atf_dict['PATH'], i) for i in atf_dict['IMAGE_IPF']]\n",
    "\n",
    "gpf_df = read_gpf(gpf_file).set_index('point_id')\n",
    "ipf_df = read_ipf(ipf_list).set_index('pt_id')\n",
    "\n",
    "point_diff = ipf_df.index.difference(gpf_df.index)\n",
    "\n",
    "if len(point_diff) != 0:\n",
    "    warnings.warn(\"The following points found in ipf files missing from gpf file: \\n\\n{}. \\\n",
    "                  \\n\\nContinuing, but these points will be missing from the control network\".format(list(point_diff)))\n",
    "\n",
    "new_df = ipf_df.merge(gpf_df, left_index=True, right_index=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "metadata": {},
   "outputs": [],
   "source": [
    "import math\n",
    "import pyproj\n",
    "\n",
    "# converts columns l. and s. to isis\n",
    "def line_sample_size(record):\n",
    "    with open(atf_dict['PATH'] + '/' + record['ipf_file'] + '.sup') as f:\n",
    "        for i, line in enumerate(f):\n",
    "            if i == 3:\n",
    "                line_size = line.split(' ')\n",
    "                line_size = line_size[-1].strip()\n",
    "                assert int(line_size) > 0, \"Line number {} from {} is a negative number: Invalid Data\".format(line_size, record['ipf_file'])\n",
    "                \n",
    "            if i == 4:\n",
    "                sample_size = line.split(' ')\n",
    "                sample_size = sample_size[-1].strip()\n",
    "                assert int(sample_size) > 0, \"Sample number {} from {} is a negative number: Invalid Data\".format(sample_size, record['ipf_file'])\n",
    "                break\n",
    "                \n",
    "        \n",
    "        line_size = int(line_size)/2.0 + record['l.'] + 1\n",
    "        sample_size = int(sample_size)/2.0 + record['s.'] + 1\n",
    "        return sample_size, line_size\n",
    "    \n",
    "# converts known to ISIS keywords\n",
    "def known(record):\n",
    "    if record['known'] == 0:\n",
    "        return 'Free'\n",
    "    \n",
    "    elif record['known'] == 1 or record['known'] == 2 or record['known'] == 3:\n",
    "        return 'Constrained'\n",
    "    \n",
    "# converts +/- 180 system to 0 - 360 system\n",
    "def to_360(num):\n",
    "    return num % 360\n",
    "\n",
    "# ocentric to ographic latitudes\n",
    "def oc2og(dlat, dMajorRadius, dMinorRadius):\n",
    "    try:    \n",
    "        dlat = math.radians(dlat)\n",
    "        dlat = math.atan(((dMajorRadius / dMinorRadius)**2) * (math.tan(dlat)))\n",
    "        dlat = math.degrees(dlat)\n",
    "    except:\n",
    "        print (\"Error in oc2og conversion\")\n",
    "    return dlat\n",
    "\n",
    "# ographic to ocentric latitudes\n",
    "def og2oc(dlat, dMajorRadius, dMinorRadius):\n",
    "    try:\n",
    "        dlat = math.radians(dlat)\n",
    "        dlat = math.atan((math.tan(dlat) / ((dMajorRadius / dMinorRadius)**2)))\n",
    "        dlat = math.degrees(dlat)\n",
    "    except:\n",
    "        print (\"Error in og2oc conversion\")\n",
    "    return dlat\n",
    "\n",
    "# gets eRadius and pRadius from a .prj file\n",
    "def get_axis(file):\n",
    "    with open(atf_dict['PATH'] + '/' + file) as f:\n",
    "        from collections import defaultdict\n",
    "\n",
    "        files = defaultdict(list)\n",
    "        \n",
    "        for line in f:\n",
    "            \n",
    "            ext = line.strip().split(' ')\n",
    "            files[ext[0]].append(ext[-1])\n",
    "            \n",
    "        eRadius = float(files['A_EARTH'][0])\n",
    "        pRadius = eRadius * (1 - float(files['E_EARTH'][0]))\n",
    "        \n",
    "        return eRadius, pRadius\n",
    "    \n",
    "# function to convert lat_Y_North to ISIS_lat\n",
    "def lat_ISIS_coord(record, semi_major, semi_minor):\n",
    "        ocentric_coord = og2oc(record['lat_Y_North'], semi_major, semi_minor)\n",
    "        coord_360 = to_360(ocentric_coord)\n",
    "        return coord_360\n",
    "\n",
    "# function to convert long_X_East to ISIS_lon\n",
    "def lon_ISIS_coord(record, semi_major, semi_minor):\n",
    "        ocentric_coord = og2oc(record['long_X_East'], semi_major, semi_minor)\n",
    "        coord_360 = to_360(ocentric_coord)\n",
    "        return coord_360\n",
    "\n",
    "def body_fix(record, semi_major, semi_minor):\n",
    "    ecef = pyproj.Proj(proj='geocent', a=semi_major, b=semi_minor)\n",
    "    lla = pyproj.Proj(proj='latlon', a=semi_major, b=semi_minor)\n",
    "    lon, lat, height = pyproj.transform(lla, ecef, record['long_X_East'], record['lat_Y_North'], record['ht'])\n",
    "    return lon, lat, height\n",
    "\n",
    "def socet2isis(prj_file):\n",
    "    eRadius, pRadius = get_axis(prj_file)\n",
    "    new_df['s.'], new_df['l.'] = (zip(*new_df.apply(sample_size, axis=1)))\n",
    "    new_df['known'] = new_df.apply(known, axis=1)\n",
    "    new_df['lat_Y_North'] = new_df.apply(lat_ISIS_coord, semi_major = eRadius, semi_minor = pRadius, axis=1)\n",
    "    new_df['long_X_East'] = new_df.apply(lon_ISIS_coord, semi_major = eRadius, semi_minor = pRadius, axis=1)\n",
    "    new_df['long_X_East'], new_df['lat_Y_North'], new_df['ht'] = zip(*new_df.apply(body_fix, semi_major = eRadius, semi_minor = pRadius, axis = 1))\n",
    "\n",
    "socet2isis('CTX_Athabasca_Middle.prj')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 93,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>val</th>\n",
       "      <th>fid_val</th>\n",
       "      <th>no_obs</th>\n",
       "      <th>l.</th>\n",
       "      <th>s.</th>\n",
       "      <th>sig_l</th>\n",
       "      <th>sig_s</th>\n",
       "      <th>res_l</th>\n",
       "      <th>res_s</th>\n",
       "      <th>fid_x</th>\n",
       "      <th>...</th>\n",
       "      <th>known</th>\n",
       "      <th>lat_Y_North</th>\n",
       "      <th>long_X_East</th>\n",
       "      <th>ht</th>\n",
       "      <th>sig0</th>\n",
       "      <th>sig1</th>\n",
       "      <th>sig2</th>\n",
       "      <th>res0</th>\n",
       "      <th>res1</th>\n",
       "      <th>res2</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>10_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>665.619385</td>\n",
       "      <td>3596.729004</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.059914</td>\n",
       "      <td>0.930311</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128313.564989</td>\n",
       "      <td>3.391233e+06</td>\n",
       "      <td>5966.083985</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>25.000000</td>\n",
       "      <td>18.301328</td>\n",
       "      <td>44.206259</td>\n",
       "      <td>416.201741</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>52.302490</td>\n",
       "      <td>3552.950928</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.063678</td>\n",
       "      <td>0.661294</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128313.564989</td>\n",
       "      <td>3.391233e+06</td>\n",
       "      <td>5966.083985</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>25.000000</td>\n",
       "      <td>18.301328</td>\n",
       "      <td>44.206259</td>\n",
       "      <td>416.201741</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>12453.584473</td>\n",
       "      <td>153.998291</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.063695</td>\n",
       "      <td>-1.055619</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128313.564989</td>\n",
       "      <td>3.391233e+06</td>\n",
       "      <td>5966.083985</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>25.000000</td>\n",
       "      <td>18.301328</td>\n",
       "      <td>44.206259</td>\n",
       "      <td>416.201741</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>13271.141113</td>\n",
       "      <td>309.084717</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.318779</td>\n",
       "      <td>-0.585138</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128313.564989</td>\n",
       "      <td>3.391233e+06</td>\n",
       "      <td>5966.083985</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>25.000000</td>\n",
       "      <td>18.301328</td>\n",
       "      <td>44.206259</td>\n",
       "      <td>416.201741</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>3955.151917</td>\n",
       "      <td>4884.653076</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.239226</td>\n",
       "      <td>-1.113693</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128183.016300</td>\n",
       "      <td>3.391316e+06</td>\n",
       "      <td>6173.166105</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>30.000000</td>\n",
       "      <td>-22.046575</td>\n",
       "      <td>103.403228</td>\n",
       "      <td>173.210013</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>3335.783936</td>\n",
       "      <td>4847.787109</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.247307</td>\n",
       "      <td>-0.587299</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128183.016300</td>\n",
       "      <td>3.391316e+06</td>\n",
       "      <td>6173.166105</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>30.000000</td>\n",
       "      <td>-22.046575</td>\n",
       "      <td>103.403228</td>\n",
       "      <td>173.210013</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>15738.437988</td>\n",
       "      <td>1473.635010</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.239207</td>\n",
       "      <td>1.080801</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128183.016300</td>\n",
       "      <td>3.391316e+06</td>\n",
       "      <td>6173.166105</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>30.000000</td>\n",
       "      <td>-22.046575</td>\n",
       "      <td>103.403228</td>\n",
       "      <td>173.210013</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>16558.700195</td>\n",
       "      <td>1550.609375</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.672877</td>\n",
       "      <td>0.626316</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128183.016300</td>\n",
       "      <td>3.391316e+06</td>\n",
       "      <td>6173.166105</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>30.000000</td>\n",
       "      <td>-22.046575</td>\n",
       "      <td>103.403228</td>\n",
       "      <td>173.210013</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>3821.395218</td>\n",
       "      <td>3528.833252</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.073683</td>\n",
       "      <td>-0.237114</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128283.412103</td>\n",
       "      <td>3.391150e+06</td>\n",
       "      <td>6174.444932</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>100.000000</td>\n",
       "      <td>-7.549561</td>\n",
       "      <td>93.170584</td>\n",
       "      <td>180.058858</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>3207.635559</td>\n",
       "      <td>3510.533997</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.251753</td>\n",
       "      <td>0.008170</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128283.412103</td>\n",
       "      <td>3.391150e+06</td>\n",
       "      <td>6174.444932</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>100.000000</td>\n",
       "      <td>-7.549561</td>\n",
       "      <td>93.170584</td>\n",
       "      <td>180.058858</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>15609.525391</td>\n",
       "      <td>104.845215</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.133406</td>\n",
       "      <td>0.068024</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128283.412103</td>\n",
       "      <td>3.391150e+06</td>\n",
       "      <td>6174.444932</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>100.000000</td>\n",
       "      <td>-7.549561</td>\n",
       "      <td>93.170584</td>\n",
       "      <td>180.058858</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>16423.205566</td>\n",
       "      <td>248.262451</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.487209</td>\n",
       "      <td>0.036399</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128283.412103</td>\n",
       "      <td>3.391150e+06</td>\n",
       "      <td>6174.444932</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>100.000000</td>\n",
       "      <td>-7.549561</td>\n",
       "      <td>93.170584</td>\n",
       "      <td>180.058858</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>2153.976196</td>\n",
       "      <td>4361.888672</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.056901</td>\n",
       "      <td>-0.383259</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128237.603263</td>\n",
       "      <td>3.391208e+06</td>\n",
       "      <td>6058.191244</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>4.536068</td>\n",
       "      <td>-1.643694</td>\n",
       "      <td>74.244153</td>\n",
       "      <td>319.554535</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1537.128662</td>\n",
       "      <td>4321.522827</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.131265</td>\n",
       "      <td>-0.305102</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128237.603263</td>\n",
       "      <td>3.391208e+06</td>\n",
       "      <td>6058.191244</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>4.536068</td>\n",
       "      <td>-1.643694</td>\n",
       "      <td>74.244153</td>\n",
       "      <td>319.554535</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>13939.063232</td>\n",
       "      <td>945.256470</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.019201</td>\n",
       "      <td>0.485372</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128237.603263</td>\n",
       "      <td>3.391208e+06</td>\n",
       "      <td>6058.191244</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>4.536068</td>\n",
       "      <td>-1.643694</td>\n",
       "      <td>74.244153</td>\n",
       "      <td>319.554535</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>14758.876221</td>\n",
       "      <td>1050.970825</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.568393</td>\n",
       "      <td>0.146750</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128237.603263</td>\n",
       "      <td>3.391208e+06</td>\n",
       "      <td>6058.191244</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>4.536068</td>\n",
       "      <td>-1.643694</td>\n",
       "      <td>74.244153</td>\n",
       "      <td>319.554535</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>7103.268066</td>\n",
       "      <td>5039.108643</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.268449</td>\n",
       "      <td>1.000455</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128136.662506</td>\n",
       "      <td>3.391257e+06</td>\n",
       "      <td>6379.310666</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.000000</td>\n",
       "      <td>-50.069808</td>\n",
       "      <td>144.316524</td>\n",
       "      <td>-164.540707</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>6482.278320</td>\n",
       "      <td>5020.032227</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.389532</td>\n",
       "      <td>-0.299258</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128136.662506</td>\n",
       "      <td>3.391257e+06</td>\n",
       "      <td>6379.310666</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.000000</td>\n",
       "      <td>-50.069808</td>\n",
       "      <td>144.316524</td>\n",
       "      <td>-164.540707</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>18884.361816</td>\n",
       "      <td>1641.354675</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.469784</td>\n",
       "      <td>0.023018</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128136.662506</td>\n",
       "      <td>3.391257e+06</td>\n",
       "      <td>6379.310666</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.000000</td>\n",
       "      <td>-50.069808</td>\n",
       "      <td>144.316524</td>\n",
       "      <td>-164.540707</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>19702.115234</td>\n",
       "      <td>1701.690674</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.289877</td>\n",
       "      <td>-0.829150</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128136.662506</td>\n",
       "      <td>3.391257e+06</td>\n",
       "      <td>6379.310666</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.000000</td>\n",
       "      <td>-50.069808</td>\n",
       "      <td>144.316524</td>\n",
       "      <td>-164.540707</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15_8344_8845_4r_mt_z</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>7107.998535</td>\n",
       "      <td>3593.406982</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.466921</td>\n",
       "      <td>1.168062</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Constrained</td>\n",
       "      <td>128249.174579</td>\n",
       "      <td>3.391256e+06</td>\n",
       "      <td>6390.830349</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.000000</td>\n",
       "      <td>-34.817656</td>\n",
       "      <td>145.864550</td>\n",
       "      <td>0.214023</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15_8344_8845_4r_mt_z</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>6492.869385</td>\n",
       "      <td>3582.165405</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.170850</td>\n",
       "      <td>0.372485</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Constrained</td>\n",
       "      <td>128249.174579</td>\n",
       "      <td>3.391256e+06</td>\n",
       "      <td>6390.830349</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.000000</td>\n",
       "      <td>-34.817656</td>\n",
       "      <td>145.864550</td>\n",
       "      <td>0.214023</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15_8344_8845_4r_mt_z</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>18895.054688</td>\n",
       "      <td>179.554443</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.072035</td>\n",
       "      <td>-0.832436</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Constrained</td>\n",
       "      <td>128249.174579</td>\n",
       "      <td>3.391256e+06</td>\n",
       "      <td>6390.830349</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.000000</td>\n",
       "      <td>-34.817656</td>\n",
       "      <td>145.864550</td>\n",
       "      <td>0.214023</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15_8344_8845_4r_mt_z</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>19705.085938</td>\n",
       "      <td>324.950195</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.274030</td>\n",
       "      <td>-0.850105</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Constrained</td>\n",
       "      <td>128249.174579</td>\n",
       "      <td>3.391256e+06</td>\n",
       "      <td>6390.830349</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.000000</td>\n",
       "      <td>-34.817656</td>\n",
       "      <td>145.864550</td>\n",
       "      <td>0.214023</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>5470.346313</td>\n",
       "      <td>4351.367065</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.028473</td>\n",
       "      <td>-0.238015</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128204.345631</td>\n",
       "      <td>3.391202e+06</td>\n",
       "      <td>6276.867247</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.707214</td>\n",
       "      <td>-29.465246</td>\n",
       "      <td>121.908506</td>\n",
       "      <td>19.874949</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>4853.099792</td>\n",
       "      <td>4329.494751</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.165338</td>\n",
       "      <td>-0.327408</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128204.345631</td>\n",
       "      <td>3.391202e+06</td>\n",
       "      <td>6276.867247</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.707214</td>\n",
       "      <td>-29.465246</td>\n",
       "      <td>121.908506</td>\n",
       "      <td>19.874949</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>17255.070313</td>\n",
       "      <td>950.035767</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.007916</td>\n",
       "      <td>0.463232</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128204.345631</td>\n",
       "      <td>3.391202e+06</td>\n",
       "      <td>6276.867247</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.707214</td>\n",
       "      <td>-29.465246</td>\n",
       "      <td>121.908506</td>\n",
       "      <td>19.874949</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16_8344_8845_4r</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>18070.896973</td>\n",
       "      <td>1050.225952</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.328896</td>\n",
       "      <td>0.019526</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128204.345631</td>\n",
       "      <td>3.391202e+06</td>\n",
       "      <td>6276.867247</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.707214</td>\n",
       "      <td>-29.465246</td>\n",
       "      <td>121.908506</td>\n",
       "      <td>19.874949</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17_8344_8845_2r_mt_z</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1569.635620</td>\n",
       "      <td>3009.268188</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.010045</td>\n",
       "      <td>0.244017</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Constrained</td>\n",
       "      <td>128347.636358</td>\n",
       "      <td>3.391165e+06</td>\n",
       "      <td>6030.098225</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2.000000</td>\n",
       "      <td>-10.779830</td>\n",
       "      <td>38.761214</td>\n",
       "      <td>0.236077</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17_8344_8845_2r_mt_z</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>958.730469</td>\n",
       "      <td>2986.515503</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.023370</td>\n",
       "      <td>-0.248643</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Constrained</td>\n",
       "      <td>128347.636358</td>\n",
       "      <td>3.391165e+06</td>\n",
       "      <td>6030.098225</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2.000000</td>\n",
       "      <td>-10.779830</td>\n",
       "      <td>38.761214</td>\n",
       "      <td>0.236077</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_18</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>20183.806641</td>\n",
       "      <td>842.244751</td>\n",
       "      <td>0.022017</td>\n",
       "      <td>0.022017</td>\n",
       "      <td>0.734173</td>\n",
       "      <td>-0.074947</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128202.339732</td>\n",
       "      <td>3.391246e+06</td>\n",
       "      <td>6418.192951</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-38.388316</td>\n",
       "      <td>195.050373</td>\n",
       "      <td>-391.289238</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_2</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1307.308594</td>\n",
       "      <td>303.176514</td>\n",
       "      <td>0.144273</td>\n",
       "      <td>0.144273</td>\n",
       "      <td>-0.061422</td>\n",
       "      <td>-0.263554</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128561.570536</td>\n",
       "      <td>3.391212e+06</td>\n",
       "      <td>6033.697087</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>42.067289</td>\n",
       "      <td>-12.658160</td>\n",
       "      <td>627.742625</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_2</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>708.000000</td>\n",
       "      <td>389.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.073150</td>\n",
       "      <td>-0.271173</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128561.570536</td>\n",
       "      <td>3.391212e+06</td>\n",
       "      <td>6033.697087</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>42.067289</td>\n",
       "      <td>-12.658160</td>\n",
       "      <td>627.742625</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_2</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>4766.673340</td>\n",
       "      <td>3386.207031</td>\n",
       "      <td>0.275627</td>\n",
       "      <td>0.275627</td>\n",
       "      <td>0.164525</td>\n",
       "      <td>0.349547</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128561.570536</td>\n",
       "      <td>3.391212e+06</td>\n",
       "      <td>6033.697087</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>42.067289</td>\n",
       "      <td>-12.658160</td>\n",
       "      <td>627.742625</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_2</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>10235.214355</td>\n",
       "      <td>3187.217224</td>\n",
       "      <td>0.091086</td>\n",
       "      <td>0.091086</td>\n",
       "      <td>0.132736</td>\n",
       "      <td>0.239899</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128561.570536</td>\n",
       "      <td>3.391212e+06</td>\n",
       "      <td>6033.697087</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>42.067289</td>\n",
       "      <td>-12.658160</td>\n",
       "      <td>627.742625</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_3</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1783.903564</td>\n",
       "      <td>465.520996</td>\n",
       "      <td>0.062058</td>\n",
       "      <td>0.062058</td>\n",
       "      <td>-0.198696</td>\n",
       "      <td>-0.105860</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128544.929575</td>\n",
       "      <td>3.391223e+06</td>\n",
       "      <td>6063.941394</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>36.033823</td>\n",
       "      <td>-4.170818</td>\n",
       "      <td>616.480181</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_3</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1184.000000</td>\n",
       "      <td>544.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.088180</td>\n",
       "      <td>-0.049593</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128544.929575</td>\n",
       "      <td>3.391223e+06</td>\n",
       "      <td>6063.941394</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>36.033823</td>\n",
       "      <td>-4.170818</td>\n",
       "      <td>616.480181</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_3</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>5243.208496</td>\n",
       "      <td>3544.375854</td>\n",
       "      <td>0.132941</td>\n",
       "      <td>0.132941</td>\n",
       "      <td>0.257260</td>\n",
       "      <td>0.117777</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128544.929575</td>\n",
       "      <td>3.391223e+06</td>\n",
       "      <td>6063.941394</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>36.033823</td>\n",
       "      <td>-4.170818</td>\n",
       "      <td>616.480181</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_3</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>10711.463867</td>\n",
       "      <td>3318.480347</td>\n",
       "      <td>0.185544</td>\n",
       "      <td>0.185544</td>\n",
       "      <td>0.199301</td>\n",
       "      <td>0.065777</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128544.929575</td>\n",
       "      <td>3.391223e+06</td>\n",
       "      <td>6063.941394</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>36.033823</td>\n",
       "      <td>-4.170818</td>\n",
       "      <td>616.480181</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_4</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1481.028320</td>\n",
       "      <td>2728.334869</td>\n",
       "      <td>0.146920</td>\n",
       "      <td>0.146920</td>\n",
       "      <td>0.182557</td>\n",
       "      <td>-0.000683</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128371.580837</td>\n",
       "      <td>3.391192e+06</td>\n",
       "      <td>6026.496590</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-7.233876</td>\n",
       "      <td>33.324946</td>\n",
       "      <td>574.887719</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_4</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>871.000000</td>\n",
       "      <td>2711.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.195774</td>\n",
       "      <td>-0.000066</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128371.580837</td>\n",
       "      <td>3.391192e+06</td>\n",
       "      <td>6026.496590</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-7.233876</td>\n",
       "      <td>33.324946</td>\n",
       "      <td>574.887719</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_5</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1771.714722</td>\n",
       "      <td>2547.928788</td>\n",
       "      <td>0.019047</td>\n",
       "      <td>0.019047</td>\n",
       "      <td>-0.235171</td>\n",
       "      <td>-0.174079</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128382.785096</td>\n",
       "      <td>3.391193e+06</td>\n",
       "      <td>6047.094091</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>7.498790</td>\n",
       "      <td>33.109007</td>\n",
       "      <td>581.149470</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_5</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1163.000000</td>\n",
       "      <td>2538.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.049005</td>\n",
       "      <td>0.437424</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128382.785096</td>\n",
       "      <td>3.391193e+06</td>\n",
       "      <td>6047.094091</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>7.498790</td>\n",
       "      <td>33.109007</td>\n",
       "      <td>581.149470</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_5</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>10683.771484</td>\n",
       "      <td>5051.076660</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.447100</td>\n",
       "      <td>-0.219764</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128382.785096</td>\n",
       "      <td>3.391193e+06</td>\n",
       "      <td>6047.094091</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>7.498790</td>\n",
       "      <td>33.109007</td>\n",
       "      <td>581.149470</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_6</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1334.450928</td>\n",
       "      <td>4116.788086</td>\n",
       "      <td>0.025015</td>\n",
       "      <td>0.025015</td>\n",
       "      <td>-0.146990</td>\n",
       "      <td>0.192274</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128262.916046</td>\n",
       "      <td>3.391153e+06</td>\n",
       "      <td>6005.944306</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>7.687475</td>\n",
       "      <td>59.859663</td>\n",
       "      <td>375.680663</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_6</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>3</td>\n",
       "      <td>719.000000</td>\n",
       "      <td>4076.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.026541</td>\n",
       "      <td>0.063346</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128262.916046</td>\n",
       "      <td>3.391153e+06</td>\n",
       "      <td>6005.944306</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>7.687475</td>\n",
       "      <td>59.859663</td>\n",
       "      <td>375.680663</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_6</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>13120.587646</td>\n",
       "      <td>694.727905</td>\n",
       "      <td>0.025110</td>\n",
       "      <td>0.025110</td>\n",
       "      <td>-0.040890</td>\n",
       "      <td>-0.136247</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128262.916046</td>\n",
       "      <td>3.391153e+06</td>\n",
       "      <td>6005.944306</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>7.687475</td>\n",
       "      <td>59.859663</td>\n",
       "      <td>375.680663</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_6</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>13940.137207</td>\n",
       "      <td>813.441895</td>\n",
       "      <td>0.064276</td>\n",
       "      <td>0.064276</td>\n",
       "      <td>0.546035</td>\n",
       "      <td>-0.185103</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128262.916046</td>\n",
       "      <td>3.391153e+06</td>\n",
       "      <td>6005.944306</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>7.687475</td>\n",
       "      <td>59.859663</td>\n",
       "      <td>375.680663</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_7</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1335.068604</td>\n",
       "      <td>4256.971436</td>\n",
       "      <td>0.010596</td>\n",
       "      <td>0.010596</td>\n",
       "      <td>-0.102909</td>\n",
       "      <td>0.079389</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128251.433672</td>\n",
       "      <td>3.391139e+06</td>\n",
       "      <td>6004.858382</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>6.358447</td>\n",
       "      <td>61.278242</td>\n",
       "      <td>375.840988</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_7</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>3</td>\n",
       "      <td>719.000000</td>\n",
       "      <td>4216.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.055623</td>\n",
       "      <td>0.013456</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128251.433672</td>\n",
       "      <td>3.391139e+06</td>\n",
       "      <td>6004.858382</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>6.358447</td>\n",
       "      <td>61.278242</td>\n",
       "      <td>375.840988</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_7</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>13120.507813</td>\n",
       "      <td>837.758179</td>\n",
       "      <td>0.047435</td>\n",
       "      <td>0.047435</td>\n",
       "      <td>-0.157931</td>\n",
       "      <td>-0.042074</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128251.433672</td>\n",
       "      <td>3.391139e+06</td>\n",
       "      <td>6004.858382</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>6.358447</td>\n",
       "      <td>61.278242</td>\n",
       "      <td>375.840988</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_7</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>13940.892578</td>\n",
       "      <td>947.472900</td>\n",
       "      <td>0.058218</td>\n",
       "      <td>0.058218</td>\n",
       "      <td>0.589561</td>\n",
       "      <td>-0.111421</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128251.433672</td>\n",
       "      <td>3.391139e+06</td>\n",
       "      <td>6004.858382</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>6.358447</td>\n",
       "      <td>61.278242</td>\n",
       "      <td>375.840988</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_8</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1920.868896</td>\n",
       "      <td>4419.622437</td>\n",
       "      <td>0.017266</td>\n",
       "      <td>0.017266</td>\n",
       "      <td>-0.239689</td>\n",
       "      <td>-0.402891</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128233.257206</td>\n",
       "      <td>3.391152e+06</td>\n",
       "      <td>6042.249840</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.219662</td>\n",
       "      <td>71.414267</td>\n",
       "      <td>336.409684</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_8</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>3</td>\n",
       "      <td>1304.000000</td>\n",
       "      <td>4381.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.117483</td>\n",
       "      <td>-0.229337</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128233.257206</td>\n",
       "      <td>3.391152e+06</td>\n",
       "      <td>6042.249840</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.219662</td>\n",
       "      <td>71.414267</td>\n",
       "      <td>336.409684</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_8</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>13706.094727</td>\n",
       "      <td>1005.043457</td>\n",
       "      <td>0.023364</td>\n",
       "      <td>0.023364</td>\n",
       "      <td>0.177406</td>\n",
       "      <td>0.403161</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128233.257206</td>\n",
       "      <td>3.391152e+06</td>\n",
       "      <td>6042.249840</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.219662</td>\n",
       "      <td>71.414267</td>\n",
       "      <td>336.409684</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_8</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>14526.290039</td>\n",
       "      <td>1104.126831</td>\n",
       "      <td>0.023538</td>\n",
       "      <td>0.023538</td>\n",
       "      <td>0.575510</td>\n",
       "      <td>0.180705</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128233.257206</td>\n",
       "      <td>3.391152e+06</td>\n",
       "      <td>6042.249840</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.219662</td>\n",
       "      <td>71.414267</td>\n",
       "      <td>336.409684</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_9</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>3917.072113</td>\n",
       "      <td>498.847778</td>\n",
       "      <td>0.232865</td>\n",
       "      <td>0.232865</td>\n",
       "      <td>0.095817</td>\n",
       "      <td>-0.483899</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128518.571457</td>\n",
       "      <td>3.391162e+06</td>\n",
       "      <td>6204.163623</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>15.191825</td>\n",
       "      <td>22.094037</td>\n",
       "      <td>544.874936</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_9</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>3317.000000</td>\n",
       "      <td>591.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.298743</td>\n",
       "      <td>-0.045963</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128518.571457</td>\n",
       "      <td>3.391162e+06</td>\n",
       "      <td>6204.163623</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>15.191825</td>\n",
       "      <td>22.094037</td>\n",
       "      <td>544.874936</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_9</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>7374.310547</td>\n",
       "      <td>3575.006104</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>-0.038437</td>\n",
       "      <td>0.471309</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128518.571457</td>\n",
       "      <td>3.391162e+06</td>\n",
       "      <td>6204.163623</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>15.191825</td>\n",
       "      <td>22.094037</td>\n",
       "      <td>544.874936</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>P20_008845_1894_XN_09N203W_9</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>12846.633789</td>\n",
       "      <td>3368.604126</td>\n",
       "      <td>0.397616</td>\n",
       "      <td>0.397616</td>\n",
       "      <td>-0.141172</td>\n",
       "      <td>0.105223</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>Free</td>\n",
       "      <td>128518.571457</td>\n",
       "      <td>3.391162e+06</td>\n",
       "      <td>6204.163623</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>15.191825</td>\n",
       "      <td>22.094037</td>\n",
       "      <td>544.874936</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>919 rows × 23 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                               val  fid_val  no_obs            l.  \\\n",
       "10_8344_8845_4r                  1        0       0    665.619385   \n",
       "10_8344_8845_4r                  1        0       0     52.302490   \n",
       "10_8344_8845_4r                  1        0       0  12453.584473   \n",
       "10_8344_8845_4r                  1        0       0  13271.141113   \n",
       "11_8344_8845_4r                  1        0       0   3955.151917   \n",
       "11_8344_8845_4r                  1        0       0   3335.783936   \n",
       "11_8344_8845_4r                  1        0       0  15738.437988   \n",
       "11_8344_8845_4r                  1        0       0  16558.700195   \n",
       "12_8344_8845_4r                  1        0       0   3821.395218   \n",
       "12_8344_8845_4r                  1        0       0   3207.635559   \n",
       "12_8344_8845_4r                  1        0       0  15609.525391   \n",
       "12_8344_8845_4r                  1        0       0  16423.205566   \n",
       "13_8344_8845_4r                  1        0       0   2153.976196   \n",
       "13_8344_8845_4r                  1        0       0   1537.128662   \n",
       "13_8344_8845_4r                  1        0       0  13939.063232   \n",
       "13_8344_8845_4r                  1        0       0  14758.876221   \n",
       "14_8344_8845_4r                  1        0       0   7103.268066   \n",
       "14_8344_8845_4r                  1        0       0   6482.278320   \n",
       "14_8344_8845_4r                  1        0       0  18884.361816   \n",
       "14_8344_8845_4r                  1        0       0  19702.115234   \n",
       "15_8344_8845_4r_mt_z             1        0       0   7107.998535   \n",
       "15_8344_8845_4r_mt_z             1        0       0   6492.869385   \n",
       "15_8344_8845_4r_mt_z             1        0       0  18895.054688   \n",
       "15_8344_8845_4r_mt_z             1        0       0  19705.085938   \n",
       "16_8344_8845_4r                  1        0       0   5470.346313   \n",
       "16_8344_8845_4r                  1        0       0   4853.099792   \n",
       "16_8344_8845_4r                  1        0       0  17255.070313   \n",
       "16_8344_8845_4r                  1        0       0  18070.896973   \n",
       "17_8344_8845_2r_mt_z             1        0       0   1569.635620   \n",
       "17_8344_8845_2r_mt_z             1        0       0    958.730469   \n",
       "...                            ...      ...     ...           ...   \n",
       "P20_008845_1894_XN_09N203W_18    1        0       1  20183.806641   \n",
       "P20_008845_1894_XN_09N203W_2     1        0       1   1307.308594   \n",
       "P20_008845_1894_XN_09N203W_2     1        0       0    708.000000   \n",
       "P20_008845_1894_XN_09N203W_2     1        0       1   4766.673340   \n",
       "P20_008845_1894_XN_09N203W_2     1        0       0  10235.214355   \n",
       "P20_008845_1894_XN_09N203W_3     1        0       1   1783.903564   \n",
       "P20_008845_1894_XN_09N203W_3     1        0       0   1184.000000   \n",
       "P20_008845_1894_XN_09N203W_3     1        0       1   5243.208496   \n",
       "P20_008845_1894_XN_09N203W_3     1        0       0  10711.463867   \n",
       "P20_008845_1894_XN_09N203W_4     1        0       1   1481.028320   \n",
       "P20_008845_1894_XN_09N203W_4     1        0       1    871.000000   \n",
       "P20_008845_1894_XN_09N203W_5     1        0       1   1771.714722   \n",
       "P20_008845_1894_XN_09N203W_5     1        0       1   1163.000000   \n",
       "P20_008845_1894_XN_09N203W_5     1        0       0  10683.771484   \n",
       "P20_008845_1894_XN_09N203W_6     1        0       1   1334.450928   \n",
       "P20_008845_1894_XN_09N203W_6     1        0       3    719.000000   \n",
       "P20_008845_1894_XN_09N203W_6     1        0       1  13120.587646   \n",
       "P20_008845_1894_XN_09N203W_6     1        0       1  13940.137207   \n",
       "P20_008845_1894_XN_09N203W_7     1        0       1   1335.068604   \n",
       "P20_008845_1894_XN_09N203W_7     1        0       3    719.000000   \n",
       "P20_008845_1894_XN_09N203W_7     1        0       1  13120.507813   \n",
       "P20_008845_1894_XN_09N203W_7     1        0       1  13940.892578   \n",
       "P20_008845_1894_XN_09N203W_8     1        0       1   1920.868896   \n",
       "P20_008845_1894_XN_09N203W_8     1        0       3   1304.000000   \n",
       "P20_008845_1894_XN_09N203W_8     1        0       1  13706.094727   \n",
       "P20_008845_1894_XN_09N203W_8     1        0       1  14526.290039   \n",
       "P20_008845_1894_XN_09N203W_9     1        0       1   3917.072113   \n",
       "P20_008845_1894_XN_09N203W_9     1        0       0   3317.000000   \n",
       "P20_008845_1894_XN_09N203W_9     1        0       0   7374.310547   \n",
       "P20_008845_1894_XN_09N203W_9     1        0       0  12846.633789   \n",
       "\n",
       "                                        s.     sig_l     sig_s     res_l  \\\n",
       "10_8344_8845_4r                3596.729004  0.000000  0.000000  0.059914   \n",
       "10_8344_8845_4r                3552.950928  0.000000  0.000000  0.063678   \n",
       "10_8344_8845_4r                 153.998291  0.000000  0.000000 -0.063695   \n",
       "10_8344_8845_4r                 309.084717  0.000000  0.000000  0.318779   \n",
       "11_8344_8845_4r                4884.653076  0.000000  0.000000 -0.239226   \n",
       "11_8344_8845_4r                4847.787109  0.000000  0.000000 -0.247307   \n",
       "11_8344_8845_4r                1473.635010  0.000000  0.000000  0.239207   \n",
       "11_8344_8845_4r                1550.609375  0.000000  0.000000  0.672877   \n",
       "12_8344_8845_4r                3528.833252  0.000000  0.000000  0.073683   \n",
       "12_8344_8845_4r                3510.533997  0.000000  0.000000 -0.251753   \n",
       "12_8344_8845_4r                 104.845215  0.000000  0.000000  0.133406   \n",
       "12_8344_8845_4r                 248.262451  0.000000  0.000000  0.487209   \n",
       "13_8344_8845_4r                4361.888672  0.000000  0.000000 -0.056901   \n",
       "13_8344_8845_4r                4321.522827  0.000000  0.000000 -0.131265   \n",
       "13_8344_8845_4r                 945.256470  0.000000  0.000000  0.019201   \n",
       "13_8344_8845_4r                1050.970825  0.000000  0.000000  0.568393   \n",
       "14_8344_8845_4r                5039.108643  0.000000  0.000000  0.268449   \n",
       "14_8344_8845_4r                5020.032227  0.000000  0.000000  0.389532   \n",
       "14_8344_8845_4r                1641.354675  0.000000  0.000000 -0.469784   \n",
       "14_8344_8845_4r                1701.690674  0.000000  0.000000  0.289877   \n",
       "15_8344_8845_4r_mt_z           3593.406982  0.000000  0.000000  0.466921   \n",
       "15_8344_8845_4r_mt_z           3582.165405  0.000000  0.000000 -0.170850   \n",
       "15_8344_8845_4r_mt_z            179.554443  0.000000  0.000000 -0.072035   \n",
       "15_8344_8845_4r_mt_z            324.950195  0.000000  0.000000  0.274030   \n",
       "16_8344_8845_4r                4351.367065  0.000000  0.000000 -0.028473   \n",
       "16_8344_8845_4r                4329.494751  0.000000  0.000000  0.165338   \n",
       "16_8344_8845_4r                 950.035767  0.000000  0.000000 -0.007916   \n",
       "16_8344_8845_4r                1050.225952  0.000000  0.000000  0.328896   \n",
       "17_8344_8845_2r_mt_z           3009.268188  0.000000  0.000000  0.010045   \n",
       "17_8344_8845_2r_mt_z           2986.515503  0.000000  0.000000 -0.023370   \n",
       "...                                    ...       ...       ...       ...   \n",
       "P20_008845_1894_XN_09N203W_18   842.244751  0.022017  0.022017  0.734173   \n",
       "P20_008845_1894_XN_09N203W_2    303.176514  0.144273  0.144273 -0.061422   \n",
       "P20_008845_1894_XN_09N203W_2    389.000000  0.000000  0.000000 -0.073150   \n",
       "P20_008845_1894_XN_09N203W_2   3386.207031  0.275627  0.275627  0.164525   \n",
       "P20_008845_1894_XN_09N203W_2   3187.217224  0.091086  0.091086  0.132736   \n",
       "P20_008845_1894_XN_09N203W_3    465.520996  0.062058  0.062058 -0.198696   \n",
       "P20_008845_1894_XN_09N203W_3    544.000000  0.000000  0.000000 -0.088180   \n",
       "P20_008845_1894_XN_09N203W_3   3544.375854  0.132941  0.132941  0.257260   \n",
       "P20_008845_1894_XN_09N203W_3   3318.480347  0.185544  0.185544  0.199301   \n",
       "P20_008845_1894_XN_09N203W_4   2728.334869  0.146920  0.146920  0.182557   \n",
       "P20_008845_1894_XN_09N203W_4   2711.000000  0.000000  0.000000 -0.195774   \n",
       "P20_008845_1894_XN_09N203W_5   2547.928788  0.019047  0.019047 -0.235171   \n",
       "P20_008845_1894_XN_09N203W_5   2538.000000  0.000000  0.000000 -0.049005   \n",
       "P20_008845_1894_XN_09N203W_5   5051.076660  0.000000  0.000000  0.447100   \n",
       "P20_008845_1894_XN_09N203W_6   4116.788086  0.025015  0.025015 -0.146990   \n",
       "P20_008845_1894_XN_09N203W_6   4076.000000  0.000000  0.000000  0.026541   \n",
       "P20_008845_1894_XN_09N203W_6    694.727905  0.025110  0.025110 -0.040890   \n",
       "P20_008845_1894_XN_09N203W_6    813.441895  0.064276  0.064276  0.546035   \n",
       "P20_008845_1894_XN_09N203W_7   4256.971436  0.010596  0.010596 -0.102909   \n",
       "P20_008845_1894_XN_09N203W_7   4216.000000  0.000000  0.000000  0.055623   \n",
       "P20_008845_1894_XN_09N203W_7    837.758179  0.047435  0.047435 -0.157931   \n",
       "P20_008845_1894_XN_09N203W_7    947.472900  0.058218  0.058218  0.589561   \n",
       "P20_008845_1894_XN_09N203W_8   4419.622437  0.017266  0.017266 -0.239689   \n",
       "P20_008845_1894_XN_09N203W_8   4381.000000  0.000000  0.000000 -0.117483   \n",
       "P20_008845_1894_XN_09N203W_8   1005.043457  0.023364  0.023364  0.177406   \n",
       "P20_008845_1894_XN_09N203W_8   1104.126831  0.023538  0.023538  0.575510   \n",
       "P20_008845_1894_XN_09N203W_9    498.847778  0.232865  0.232865  0.095817   \n",
       "P20_008845_1894_XN_09N203W_9    591.000000  0.000000  0.000000  0.298743   \n",
       "P20_008845_1894_XN_09N203W_9   3575.006104  0.000000  0.000000 -0.038437   \n",
       "P20_008845_1894_XN_09N203W_9   3368.604126  0.397616  0.397616 -0.141172   \n",
       "\n",
       "                                  res_s  fid_x     ...            known  \\\n",
       "10_8344_8845_4r                0.930311    0.0     ...             Free   \n",
       "10_8344_8845_4r                0.661294    0.0     ...             Free   \n",
       "10_8344_8845_4r               -1.055619    0.0     ...             Free   \n",
       "10_8344_8845_4r               -0.585138    0.0     ...             Free   \n",
       "11_8344_8845_4r               -1.113693    0.0     ...             Free   \n",
       "11_8344_8845_4r               -0.587299    0.0     ...             Free   \n",
       "11_8344_8845_4r                1.080801    0.0     ...             Free   \n",
       "11_8344_8845_4r                0.626316    0.0     ...             Free   \n",
       "12_8344_8845_4r               -0.237114    0.0     ...             Free   \n",
       "12_8344_8845_4r                0.008170    0.0     ...             Free   \n",
       "12_8344_8845_4r                0.068024    0.0     ...             Free   \n",
       "12_8344_8845_4r                0.036399    0.0     ...             Free   \n",
       "13_8344_8845_4r               -0.383259    0.0     ...             Free   \n",
       "13_8344_8845_4r               -0.305102    0.0     ...             Free   \n",
       "13_8344_8845_4r                0.485372    0.0     ...             Free   \n",
       "13_8344_8845_4r                0.146750    0.0     ...             Free   \n",
       "14_8344_8845_4r                1.000455    0.0     ...             Free   \n",
       "14_8344_8845_4r               -0.299258    0.0     ...             Free   \n",
       "14_8344_8845_4r                0.023018    0.0     ...             Free   \n",
       "14_8344_8845_4r               -0.829150    0.0     ...             Free   \n",
       "15_8344_8845_4r_mt_z           1.168062    0.0     ...      Constrained   \n",
       "15_8344_8845_4r_mt_z           0.372485    0.0     ...      Constrained   \n",
       "15_8344_8845_4r_mt_z          -0.832436    0.0     ...      Constrained   \n",
       "15_8344_8845_4r_mt_z          -0.850105    0.0     ...      Constrained   \n",
       "16_8344_8845_4r               -0.238015    0.0     ...             Free   \n",
       "16_8344_8845_4r               -0.327408    0.0     ...             Free   \n",
       "16_8344_8845_4r                0.463232    0.0     ...             Free   \n",
       "16_8344_8845_4r                0.019526    0.0     ...             Free   \n",
       "17_8344_8845_2r_mt_z           0.244017    0.0     ...      Constrained   \n",
       "17_8344_8845_2r_mt_z          -0.248643    0.0     ...      Constrained   \n",
       "...                                 ...    ...     ...              ...   \n",
       "P20_008845_1894_XN_09N203W_18 -0.074947    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_2  -0.263554    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_2  -0.271173    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_2   0.349547    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_2   0.239899    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_3  -0.105860    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_3  -0.049593    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_3   0.117777    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_3   0.065777    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_4  -0.000683    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_4  -0.000066    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_5  -0.174079    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_5   0.437424    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_5  -0.219764    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_6   0.192274    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_6   0.063346    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_6  -0.136247    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_6  -0.185103    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_7   0.079389    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_7   0.013456    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_7  -0.042074    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_7  -0.111421    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_8  -0.402891    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_8  -0.229337    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_8   0.403161    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_8   0.180705    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_9  -0.483899    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_9  -0.045963    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_9   0.471309    0.0     ...             Free   \n",
       "P20_008845_1894_XN_09N203W_9   0.105223    0.0     ...             Free   \n",
       "\n",
       "                                 lat_Y_North   long_X_East           ht  sig0  \\\n",
       "10_8344_8845_4r                128313.564989  3.391233e+06  5966.083985   0.0   \n",
       "10_8344_8845_4r                128313.564989  3.391233e+06  5966.083985   0.0   \n",
       "10_8344_8845_4r                128313.564989  3.391233e+06  5966.083985   0.0   \n",
       "10_8344_8845_4r                128313.564989  3.391233e+06  5966.083985   0.0   \n",
       "11_8344_8845_4r                128183.016300  3.391316e+06  6173.166105   0.0   \n",
       "11_8344_8845_4r                128183.016300  3.391316e+06  6173.166105   0.0   \n",
       "11_8344_8845_4r                128183.016300  3.391316e+06  6173.166105   0.0   \n",
       "11_8344_8845_4r                128183.016300  3.391316e+06  6173.166105   0.0   \n",
       "12_8344_8845_4r                128283.412103  3.391150e+06  6174.444932   0.0   \n",
       "12_8344_8845_4r                128283.412103  3.391150e+06  6174.444932   0.0   \n",
       "12_8344_8845_4r                128283.412103  3.391150e+06  6174.444932   0.0   \n",
       "12_8344_8845_4r                128283.412103  3.391150e+06  6174.444932   0.0   \n",
       "13_8344_8845_4r                128237.603263  3.391208e+06  6058.191244   0.0   \n",
       "13_8344_8845_4r                128237.603263  3.391208e+06  6058.191244   0.0   \n",
       "13_8344_8845_4r                128237.603263  3.391208e+06  6058.191244   0.0   \n",
       "13_8344_8845_4r                128237.603263  3.391208e+06  6058.191244   0.0   \n",
       "14_8344_8845_4r                128136.662506  3.391257e+06  6379.310666   0.0   \n",
       "14_8344_8845_4r                128136.662506  3.391257e+06  6379.310666   0.0   \n",
       "14_8344_8845_4r                128136.662506  3.391257e+06  6379.310666   0.0   \n",
       "14_8344_8845_4r                128136.662506  3.391257e+06  6379.310666   0.0   \n",
       "15_8344_8845_4r_mt_z           128249.174579  3.391256e+06  6390.830349   0.0   \n",
       "15_8344_8845_4r_mt_z           128249.174579  3.391256e+06  6390.830349   0.0   \n",
       "15_8344_8845_4r_mt_z           128249.174579  3.391256e+06  6390.830349   0.0   \n",
       "15_8344_8845_4r_mt_z           128249.174579  3.391256e+06  6390.830349   0.0   \n",
       "16_8344_8845_4r                128204.345631  3.391202e+06  6276.867247   0.0   \n",
       "16_8344_8845_4r                128204.345631  3.391202e+06  6276.867247   0.0   \n",
       "16_8344_8845_4r                128204.345631  3.391202e+06  6276.867247   0.0   \n",
       "16_8344_8845_4r                128204.345631  3.391202e+06  6276.867247   0.0   \n",
       "17_8344_8845_2r_mt_z           128347.636358  3.391165e+06  6030.098225   0.0   \n",
       "17_8344_8845_2r_mt_z           128347.636358  3.391165e+06  6030.098225   0.0   \n",
       "...                                      ...           ...          ...   ...   \n",
       "P20_008845_1894_XN_09N203W_18  128202.339732  3.391246e+06  6418.192951   0.0   \n",
       "P20_008845_1894_XN_09N203W_2   128561.570536  3.391212e+06  6033.697087   0.0   \n",
       "P20_008845_1894_XN_09N203W_2   128561.570536  3.391212e+06  6033.697087   0.0   \n",
       "P20_008845_1894_XN_09N203W_2   128561.570536  3.391212e+06  6033.697087   0.0   \n",
       "P20_008845_1894_XN_09N203W_2   128561.570536  3.391212e+06  6033.697087   0.0   \n",
       "P20_008845_1894_XN_09N203W_3   128544.929575  3.391223e+06  6063.941394   0.0   \n",
       "P20_008845_1894_XN_09N203W_3   128544.929575  3.391223e+06  6063.941394   0.0   \n",
       "P20_008845_1894_XN_09N203W_3   128544.929575  3.391223e+06  6063.941394   0.0   \n",
       "P20_008845_1894_XN_09N203W_3   128544.929575  3.391223e+06  6063.941394   0.0   \n",
       "P20_008845_1894_XN_09N203W_4   128371.580837  3.391192e+06  6026.496590   0.0   \n",
       "P20_008845_1894_XN_09N203W_4   128371.580837  3.391192e+06  6026.496590   0.0   \n",
       "P20_008845_1894_XN_09N203W_5   128382.785096  3.391193e+06  6047.094091   0.0   \n",
       "P20_008845_1894_XN_09N203W_5   128382.785096  3.391193e+06  6047.094091   0.0   \n",
       "P20_008845_1894_XN_09N203W_5   128382.785096  3.391193e+06  6047.094091   0.0   \n",
       "P20_008845_1894_XN_09N203W_6   128262.916046  3.391153e+06  6005.944306   0.0   \n",
       "P20_008845_1894_XN_09N203W_6   128262.916046  3.391153e+06  6005.944306   0.0   \n",
       "P20_008845_1894_XN_09N203W_6   128262.916046  3.391153e+06  6005.944306   0.0   \n",
       "P20_008845_1894_XN_09N203W_6   128262.916046  3.391153e+06  6005.944306   0.0   \n",
       "P20_008845_1894_XN_09N203W_7   128251.433672  3.391139e+06  6004.858382   0.0   \n",
       "P20_008845_1894_XN_09N203W_7   128251.433672  3.391139e+06  6004.858382   0.0   \n",
       "P20_008845_1894_XN_09N203W_7   128251.433672  3.391139e+06  6004.858382   0.0   \n",
       "P20_008845_1894_XN_09N203W_7   128251.433672  3.391139e+06  6004.858382   0.0   \n",
       "P20_008845_1894_XN_09N203W_8   128233.257206  3.391152e+06  6042.249840   0.0   \n",
       "P20_008845_1894_XN_09N203W_8   128233.257206  3.391152e+06  6042.249840   0.0   \n",
       "P20_008845_1894_XN_09N203W_8   128233.257206  3.391152e+06  6042.249840   0.0   \n",
       "P20_008845_1894_XN_09N203W_8   128233.257206  3.391152e+06  6042.249840   0.0   \n",
       "P20_008845_1894_XN_09N203W_9   128518.571457  3.391162e+06  6204.163623   0.0   \n",
       "P20_008845_1894_XN_09N203W_9   128518.571457  3.391162e+06  6204.163623   0.0   \n",
       "P20_008845_1894_XN_09N203W_9   128518.571457  3.391162e+06  6204.163623   0.0   \n",
       "P20_008845_1894_XN_09N203W_9   128518.571457  3.391162e+06  6204.163623   0.0   \n",
       "\n",
       "                               sig1        sig2       res0        res1  \\\n",
       "10_8344_8845_4r                 0.0   25.000000  18.301328   44.206259   \n",
       "10_8344_8845_4r                 0.0   25.000000  18.301328   44.206259   \n",
       "10_8344_8845_4r                 0.0   25.000000  18.301328   44.206259   \n",
       "10_8344_8845_4r                 0.0   25.000000  18.301328   44.206259   \n",
       "11_8344_8845_4r                 0.0   30.000000 -22.046575  103.403228   \n",
       "11_8344_8845_4r                 0.0   30.000000 -22.046575  103.403228   \n",
       "11_8344_8845_4r                 0.0   30.000000 -22.046575  103.403228   \n",
       "11_8344_8845_4r                 0.0   30.000000 -22.046575  103.403228   \n",
       "12_8344_8845_4r                 0.0  100.000000  -7.549561   93.170584   \n",
       "12_8344_8845_4r                 0.0  100.000000  -7.549561   93.170584   \n",
       "12_8344_8845_4r                 0.0  100.000000  -7.549561   93.170584   \n",
       "12_8344_8845_4r                 0.0  100.000000  -7.549561   93.170584   \n",
       "13_8344_8845_4r                 0.0    4.536068  -1.643694   74.244153   \n",
       "13_8344_8845_4r                 0.0    4.536068  -1.643694   74.244153   \n",
       "13_8344_8845_4r                 0.0    4.536068  -1.643694   74.244153   \n",
       "13_8344_8845_4r                 0.0    4.536068  -1.643694   74.244153   \n",
       "14_8344_8845_4r                 0.0    5.000000 -50.069808  144.316524   \n",
       "14_8344_8845_4r                 0.0    5.000000 -50.069808  144.316524   \n",
       "14_8344_8845_4r                 0.0    5.000000 -50.069808  144.316524   \n",
       "14_8344_8845_4r                 0.0    5.000000 -50.069808  144.316524   \n",
       "15_8344_8845_4r_mt_z            0.0    5.000000 -34.817656  145.864550   \n",
       "15_8344_8845_4r_mt_z            0.0    5.000000 -34.817656  145.864550   \n",
       "15_8344_8845_4r_mt_z            0.0    5.000000 -34.817656  145.864550   \n",
       "15_8344_8845_4r_mt_z            0.0    5.000000 -34.817656  145.864550   \n",
       "16_8344_8845_4r                 0.0    1.707214 -29.465246  121.908506   \n",
       "16_8344_8845_4r                 0.0    1.707214 -29.465246  121.908506   \n",
       "16_8344_8845_4r                 0.0    1.707214 -29.465246  121.908506   \n",
       "16_8344_8845_4r                 0.0    1.707214 -29.465246  121.908506   \n",
       "17_8344_8845_2r_mt_z            0.0    2.000000 -10.779830   38.761214   \n",
       "17_8344_8845_2r_mt_z            0.0    2.000000 -10.779830   38.761214   \n",
       "...                             ...         ...        ...         ...   \n",
       "P20_008845_1894_XN_09N203W_18   0.0    0.000000 -38.388316  195.050373   \n",
       "P20_008845_1894_XN_09N203W_2    0.0    0.000000  42.067289  -12.658160   \n",
       "P20_008845_1894_XN_09N203W_2    0.0    0.000000  42.067289  -12.658160   \n",
       "P20_008845_1894_XN_09N203W_2    0.0    0.000000  42.067289  -12.658160   \n",
       "P20_008845_1894_XN_09N203W_2    0.0    0.000000  42.067289  -12.658160   \n",
       "P20_008845_1894_XN_09N203W_3    0.0    0.000000  36.033823   -4.170818   \n",
       "P20_008845_1894_XN_09N203W_3    0.0    0.000000  36.033823   -4.170818   \n",
       "P20_008845_1894_XN_09N203W_3    0.0    0.000000  36.033823   -4.170818   \n",
       "P20_008845_1894_XN_09N203W_3    0.0    0.000000  36.033823   -4.170818   \n",
       "P20_008845_1894_XN_09N203W_4    0.0    0.000000  -7.233876   33.324946   \n",
       "P20_008845_1894_XN_09N203W_4    0.0    0.000000  -7.233876   33.324946   \n",
       "P20_008845_1894_XN_09N203W_5    0.0    0.000000   7.498790   33.109007   \n",
       "P20_008845_1894_XN_09N203W_5    0.0    0.000000   7.498790   33.109007   \n",
       "P20_008845_1894_XN_09N203W_5    0.0    0.000000   7.498790   33.109007   \n",
       "P20_008845_1894_XN_09N203W_6    0.0    0.000000   7.687475   59.859663   \n",
       "P20_008845_1894_XN_09N203W_6    0.0    0.000000   7.687475   59.859663   \n",
       "P20_008845_1894_XN_09N203W_6    0.0    0.000000   7.687475   59.859663   \n",
       "P20_008845_1894_XN_09N203W_6    0.0    0.000000   7.687475   59.859663   \n",
       "P20_008845_1894_XN_09N203W_7    0.0    0.000000   6.358447   61.278242   \n",
       "P20_008845_1894_XN_09N203W_7    0.0    0.000000   6.358447   61.278242   \n",
       "P20_008845_1894_XN_09N203W_7    0.0    0.000000   6.358447   61.278242   \n",
       "P20_008845_1894_XN_09N203W_7    0.0    0.000000   6.358447   61.278242   \n",
       "P20_008845_1894_XN_09N203W_8    0.0    0.000000  -0.219662   71.414267   \n",
       "P20_008845_1894_XN_09N203W_8    0.0    0.000000  -0.219662   71.414267   \n",
       "P20_008845_1894_XN_09N203W_8    0.0    0.000000  -0.219662   71.414267   \n",
       "P20_008845_1894_XN_09N203W_8    0.0    0.000000  -0.219662   71.414267   \n",
       "P20_008845_1894_XN_09N203W_9    0.0    0.000000  15.191825   22.094037   \n",
       "P20_008845_1894_XN_09N203W_9    0.0    0.000000  15.191825   22.094037   \n",
       "P20_008845_1894_XN_09N203W_9    0.0    0.000000  15.191825   22.094037   \n",
       "P20_008845_1894_XN_09N203W_9    0.0    0.000000  15.191825   22.094037   \n",
       "\n",
       "                                     res2  \n",
       "10_8344_8845_4r                416.201741  \n",
       "10_8344_8845_4r                416.201741  \n",
       "10_8344_8845_4r                416.201741  \n",
       "10_8344_8845_4r                416.201741  \n",
       "11_8344_8845_4r                173.210013  \n",
       "11_8344_8845_4r                173.210013  \n",
       "11_8344_8845_4r                173.210013  \n",
       "11_8344_8845_4r                173.210013  \n",
       "12_8344_8845_4r                180.058858  \n",
       "12_8344_8845_4r                180.058858  \n",
       "12_8344_8845_4r                180.058858  \n",
       "12_8344_8845_4r                180.058858  \n",
       "13_8344_8845_4r                319.554535  \n",
       "13_8344_8845_4r                319.554535  \n",
       "13_8344_8845_4r                319.554535  \n",
       "13_8344_8845_4r                319.554535  \n",
       "14_8344_8845_4r               -164.540707  \n",
       "14_8344_8845_4r               -164.540707  \n",
       "14_8344_8845_4r               -164.540707  \n",
       "14_8344_8845_4r               -164.540707  \n",
       "15_8344_8845_4r_mt_z             0.214023  \n",
       "15_8344_8845_4r_mt_z             0.214023  \n",
       "15_8344_8845_4r_mt_z             0.214023  \n",
       "15_8344_8845_4r_mt_z             0.214023  \n",
       "16_8344_8845_4r                 19.874949  \n",
       "16_8344_8845_4r                 19.874949  \n",
       "16_8344_8845_4r                 19.874949  \n",
       "16_8344_8845_4r                 19.874949  \n",
       "17_8344_8845_2r_mt_z             0.236077  \n",
       "17_8344_8845_2r_mt_z             0.236077  \n",
       "...                                   ...  \n",
       "P20_008845_1894_XN_09N203W_18 -391.289238  \n",
       "P20_008845_1894_XN_09N203W_2   627.742625  \n",
       "P20_008845_1894_XN_09N203W_2   627.742625  \n",
       "P20_008845_1894_XN_09N203W_2   627.742625  \n",
       "P20_008845_1894_XN_09N203W_2   627.742625  \n",
       "P20_008845_1894_XN_09N203W_3   616.480181  \n",
       "P20_008845_1894_XN_09N203W_3   616.480181  \n",
       "P20_008845_1894_XN_09N203W_3   616.480181  \n",
       "P20_008845_1894_XN_09N203W_3   616.480181  \n",
       "P20_008845_1894_XN_09N203W_4   574.887719  \n",
       "P20_008845_1894_XN_09N203W_4   574.887719  \n",
       "P20_008845_1894_XN_09N203W_5   581.149470  \n",
       "P20_008845_1894_XN_09N203W_5   581.149470  \n",
       "P20_008845_1894_XN_09N203W_5   581.149470  \n",
       "P20_008845_1894_XN_09N203W_6   375.680663  \n",
       "P20_008845_1894_XN_09N203W_6   375.680663  \n",
       "P20_008845_1894_XN_09N203W_6   375.680663  \n",
       "P20_008845_1894_XN_09N203W_6   375.680663  \n",
       "P20_008845_1894_XN_09N203W_7   375.840988  \n",
       "P20_008845_1894_XN_09N203W_7   375.840988  \n",
       "P20_008845_1894_XN_09N203W_7   375.840988  \n",
       "P20_008845_1894_XN_09N203W_7   375.840988  \n",
       "P20_008845_1894_XN_09N203W_8   336.409684  \n",
       "P20_008845_1894_XN_09N203W_8   336.409684  \n",
       "P20_008845_1894_XN_09N203W_8   336.409684  \n",
       "P20_008845_1894_XN_09N203W_8   336.409684  \n",
       "P20_008845_1894_XN_09N203W_9   544.874936  \n",
       "P20_008845_1894_XN_09N203W_9   544.874936  \n",
       "P20_008845_1894_XN_09N203W_9   544.874936  \n",
       "P20_008845_1894_XN_09N203W_9   544.874936  \n",
       "\n",
       "[919 rows x 23 columns]"
      ]
     },
     "execution_count": 93,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "new_df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "@singledispatch\n",
    "def read_ipf(arg):\n",
    "    return str(arg)\n",
    "# new_df['known'] = new_df.apply(known, axis=1)\n",
    "\n",
    "@read_ipf.register(str)\n",
    "def read_ipf_str(input_data):\n",
    "    \"\"\"\n",
    "    Read a socet ipf file into a pandas data frame\n",
    "\n",
    "    Parameters\n",
    "    ----------\n",
    "    input_data : str\n",
    "                 path to the an input data file\n",
    "\n",
    "    Returns\n",
    "    -------\n",
    "    df : pd.DataFrame\n",
    "         containing the ipf data with appropriate column names and indices\n",
    "    \"\"\"\n",
    "\n",
    "    # Check that the number of rows is matching the expected number\n",
    "    with open(input_data, 'r') as f:\n",
    "        for i, l in enumerate(f):\n",
    "            if i == 1:\n",
    "                cnt = int(l)\n",
    "            elif i == 2:\n",
    "                col = l\n",
    "                break\n",
    "                \n",
    "    columns = np.genfromtxt(input_data, skip_header=2, dtype='unicode',\n",
    "                            max_rows = 1, delimiter = ',')\n",
    "\n",
    "    # TODO: Add unicode conversion\n",
    "    d = [line.split() for line in open(input_data, 'r')]\n",
    "    d = np.hstack(np.array(d[3:]))\n",
    "    \n",
    "    d = d.reshape(-1, 12)\n",
    "    \n",
    "    df = pd.DataFrame(d, columns=columns)\n",
    "    file = os.path.split(os.path.splitext(input_data)[0])[1]\n",
    "    df['ipf_file'] = pd.Series(np.full((len(df['pt_id'])), file), index = df.index)\n",
    "\n",
    "    assert int(cnt) == len(df), 'Dataframe length {} does not match point length {}.'.format(int(cnt), len(df))\n",
    "    \n",
    "    # Soft conversion of numeric types to numerics, allows str in first col for point_id\n",
    "    df = df.apply(pd.to_numeric, errors='ignore')\n",
    "\n",
    "    return df\n",
    "\n",
    "@read_ipf.register(list)\n",
    "def read_ipf_list(input_data_list):\n",
    "    \"\"\"\n",
    "    Read a socet ipf file into a pandas data frame\n",
    "\n",
    "    Parameters\n",
    "    ----------\n",
    "    input_data_list : list\n",
    "                      list of paths to the a set of input data files\n",
    "\n",
    "    Returns\n",
    "    -------\n",
    "    df : pd.DataFrame\n",
    "         containing the ipf data with appropriate column names and indices\n",
    "    \"\"\"\n",
    "    frames = []\n",
    "\n",
    "    for input_file in input_data_list:\n",
    "        frames.append(read_ipf(input_file))\n",
    "\n",
    "    df = pd.concat(frames)\n",
    "\n",
    "    return df"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}