vidf v3_ELSSCIL {
    float version = 3.0;                                   /* version      */
    string mission = "MARS";                               /* mission      */
    string spacecraft = "Mars_Express";                    /* spacecraft   */
    string experiment = "ASPERA-3";                        /* exp_desc     */
    string instrument = "ELS";                             /* inst_desc    */
    string contact = "Dr. Rickard Lundin";
    string contact = "Swedish Institute of Space Physics";
    string contact = "Box 812 S-981 28.Kiruna";
    string contact = "Sweden";
    string contact = "rickard@irf.se";
/*
 *  This VIDF contains the science data from ELS.  Data is stored
 *  for the low range of the ELS power supply as a function of the
 *  DAC representation.   The DAC range is 12 bits representing a +5V
 *  control voltage.  This control voltage sets the ELS deflection
 *  supply which has a range of 0V to 20.99V for the low range.
 *  Stored data value is the number of counts received in the
 *  accumulation interval of the ELS packets.
 * 
 *  The following is a list of tables which are in this vidf
 *    TABLE 0:  Polynomial coefficients which places the data into
 *              math buffer.
 *    TABLE 1:  Polynomial coefficients which converts sensor index
 *              into fraction of voltage range.
 *    TABLE 2:  Maximum control input voltage [volts].
 *    TABLE 3:  Maximum deflection low range voltage [volts].
 *    TABLE 4:  Anode K-factors [eV/Volt].
 *    TABLE 5:  Detector Efficiencies.
 *    TABLE 6:  Efficiency Adjustement Factor For Each Anode [fractional number]
 *    TABLE 7:  Geometric Factors [cm**2-sr]
 *    TABLE 8:  MCP Transparency [fraction]
 *    TABLE 9:  Grid Transparency [fraction]
 *    TABLE 10: Active Anode Area Ratio [fraction]
 *    TABLE 11: Amplitude Adjustment or Scaling Factor 
 *    TABLE 12: Detector Resolution [fractional number]
 *    TABLE 13: Energy Conversion [erg/eV]
 *    TABLE 14: Conversion from Energy Intensity to Distribution Funct
 *    TABLE 15: Number of spectra summed together
 *    TABLE 16: Number of steps summed together
 *    TABLE 17: Polynomial coefficients which places the value on 1 into the
 *              math buffer.
 *    TABLE 18: Shift Calibration Set 3 to Upper bytes of 4-byte integer -
 *              High Range Sweep Summation (MSB)
 *    TABLE 19: Shift Calibration Set 4 to Lower bytes of 4-byte integer -
 *              High Range Sweep Summation (LSB)
 *    TABLE 20: Shift Calibration Set 5 to Upper bytes of 4-byte integer -
 *              Total Range Sweep Summation (MSB)
 *    TABLE 21: Shift Calibration Set 6 to Lower bytes of 4-byte integer -
 *              Total Range Sweep Summation (LSB)
 *    TABLE 22: Shift Calibration Set 7 to Upper bytes of 4-byte integer -
 *              Total Range Anode Summation (MSB)
 *    TABLE 23: Shift Calibration Set 8 to Lower bytes of 4-byte integer -
 *              Total Range Anode Summation (LSB)
 *    TABLE 24: Convert Temperature Calibration (cal set 0) Value to Voltage
 *    TABLE 25: Convert Temperature Calibration (cal set 0) Value to milliamp
 *    TABLE 26: Convert Temperature Calibration (cal set 0) Value to degrees C
 *    TABLE 27: Convert from eV to Joule [Joule/eV]
 *    TABLE 28: Constant number 2 for conversion used in energy to velocity
 *    TABLE 29: Contains the electron mass in [kg]
 *    TABLE 30: Contains the constant number 1000 for converting from m to km
 *    TABLE 31: Contains the constant number 1000 for converting m/s into km/s
 *    TABLE 32: Polynomial coefficients for rescaling MCP reference to 5V
 *    TABLE 33: Polynomial coefficients for rescaling MCP reference to voltage
 *    TABLE 34: Polynomial coefficients for rescaling MCP monitor to 5V
 *    TABLE 35: Polynomial coefficients for rescaling MCP monitor to voltage
 *    TABLE 36: ASCII strings which define what state the bit values
 *              represent for the status flags defined
 *    TABLE 37: Table conversion factors to determine number of summations 
 * 
 *  The following are units which can be derived from the tables.
 *  The format is to give the tables applied followed by the
 *  operations and unit definition
 * 
 *  DATA TYPE  TABLES          OPERS            UNIT
 *    Scan      1              0                Dimensionless fraction
 *    Scan      1,2            0,3              control voltage
 *    Scan      1,3            0,3              deflection voltage
 *    Scan      1,3,4          0,3,3            eV
 *    Scan      1,3,4,27       0,3,3,3          Joule
 *    Scan      1,3,4,27,28,   0,3,3,3,3,       m/s
 *               29             64
 *    Scan      1,3,4,27,28,   0,3,3,3,3,       km/s
 *               29,31          64,3
 *    Sweep     0              0                cnts/accum
 *    Sweep     1,3,6,         1000,1003,1000,  cnts/accum (eff. cor)
 *               0,5,-1        0,4,2003
 *    Sweep     1,3,6,         1000,1003,1000,  cnts/sec
 *               0,5,-1        150,4.2003
 *    Sweep     1,3,6,         1000,1003,1000,  cnts/(cm**2-str-s)
 *               0,5,-1,7,11   150,4,2003,4,3
 *    Sweep     1,3,6,         1000,1003,1000,  cnts/(cm**2-str-s-eV)
 *               0,5,-1,7,1,   150,4,2003,4,1000,
 *               3,4,-1,       1003,1003,2004,
 *               12,11         4,3
 *    Sweep     1,3,6,         1000,1003,1000,  ergs/(cm**2-str-s-eV)
 *               0,5,-1,7,     150,4,2003,4,
 *               12,13         4,3
 *    Sweep     1,3,6,         1000,1003,1000,  sec**3/km**6
 *               0,5,-1,7,1,   150,4,2003,4,1000,  
 *               3,4,-1,       1003,1003,2004,
 *               12,-1,14,     4,2004,3,
 *               11            3
 *    Sweep     1,3,6,         1000,1003,1000,  sec**3/m**6
 *               0,5,-1,7,1,   150,4,2003,4,1000,  
 *               3,4,-1,       1003,1003,2004,
 *               12,-1,14,     4,2004,3,
 *               11,30,30,30,  3,4,4,4,
 *               30,30,30      4,4,4
 *    Sweep     15             0                Number Spectra Summed
 *    Sweep     16             0                Number Energies Summed
 *    Cal       18,19          0,1              High Range Sweep Sum
 *    Cal       20,21          0,1              Total Range Sweep Sum
 *    Cal       22,23          0,1              Total Anode Sum or Sum on MCP
 *    Cal       24             0                Temperature in monitor voltage
 *    Cal       25             0                Temperature in monitor milliamp
 *    Cal       26             0                Temperature in degrees C
 *    Cal       32             0                MCP reference to control volt.
 *    Cal       33             0                MCP reference to voltage
 *    Cal       34             0                MCP monitor to control volt.
 *    Cal       35             0                MCP monitor to voltage
 *    Mode      36             0                ASCII Mode Strings
 *    Mode      37             0                # Spectra in Time Sum
 *    Mode      37             0                # Energy Levels in Energy Sum
 * 
 *  Data_len is set to the maximum, assuming that all sensors are returned.
 *  (128 steps + 4 cal.) * 2 bytes * 16 sensors + 5 cal. * 2 bytes +
 *  4 (nanosecond timing) + 20 bytes for the rest of the elements in the 
 *  data record.
 *
 */
    int s_year = 2003;                                     /* ds_year      */
    int s_day = 1;                                         /* ds_day       */
    int s_msec = 0;                                        /* ds_msec      */
    int s_usec = 0;                                        /* ds_usec      */
    int e_year = 2010;                                     /* de_year      */
    int e_day = 1;                                         /* de_day       */
    int e_msec = 0;                                        /* de_msec      */
    int e_usec = 0;                                        /* de_usec      */
    int smp_id = 1;                                        /* smp_id       */
    int sen_mode = 2;                                      /* sen_mode     */
    int n_qual = 5;                                        /* n_qual       */
    int n_cal_sets = 9;                                    /* cal_sets     */
    int n_tbls = 38;                                       /* num_tbls     */
    int n_consts = 8;                                      /* num_consts   */
    int n_status = 23;                                     /* status       */
    int n_sensors = 16;                                    /* sen          */
    int swp_len = 4096;                                    /* swp_len      */
    int max_nss = 4;                                       /* max_nss      */
    int data_len = 4556;                                   /* data_len     */
    int fill_flag = 1;                                     /* fill_flg     */
    int fill = 65535;                                      /* fill value   */
    int da_method = 0;                                     /* da_method    */
    int nano_defined = 1;                                  /* nsec timetag */
    struct PitchAngle {
      int format = 1;
      string project = "MARS";
      string mission = "Mars_Express";
/*    string experiment = "AUXILIARY";  */
/*    string instrument = "Attitude";  */
/*    string vinstrument = "ATTOSUN";  */
/*    int bx = 0;  */
/*    int by = 2;  */
/*    int bz = 1;  */
      string experiment = "MODELS";
      string instrument = "MAG";
      string vinstrument = "SAF_BMod";
      int bx = 0;
      int by = 1;
      int bz = 2;
      int num_tbls = 0;
    };
    struct Status0 {
        string name = "Software Version - Upper Byte";    /* name      */
        int state = 255;                                  /* state     */
    };
    struct Status1 {
        string name = "Software Version - Lower Byte";    /* name      */
        int state = 255;                                  /* state     */
    };
    struct Status2 {
        string name = "Software Mode";                    /* name      */
        int state = 5;                                    /* state     */
    };
    struct Status3 {
        string name = "Time Summation";                   /* name      */
        int state = 17;                                   /* state     */
    };
    struct Status4 {
        string name = "Step Summation";                   /* name      */
        int state = 3;                                    /* state     */
    };
    struct Status5 {
        string name = "Log Compression";                  /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status6 {
        string name = "Sector 0 Enable";                  /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status7 {
        string name = "Sector 1 Enable";                  /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status8 {
        string name = "Sector 2 Enable";                  /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status9 {
        string name = "Sector 3 Enable";                  /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status10 {
        string name = "Sector 4 Enable";                  /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status11 {
        string name = "Sector 5 Enable";                  /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status12 {
        string name = "Sector 6 Enable";                  /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status13 {
        string name = "Sector 7 Enable";                  /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status14 {
        string name = "Sector 8 Enable";                  /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status15 {
        string name = "Sector 9 Enable";                  /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status16 {
        string name = "Sector 10 Enable";                 /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status17 {
        string name = "Sector 11 Enable";                 /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status18 {
        string name = "Sector 12 Enable";                 /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status19 {
        string name = "Sector 13 Enable";                 /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status20 {
        string name = "Sector 14 Enable";                 /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status21 {
        string name = "Sector 15 Enable";                 /* name      */
        int state = 2;                                    /* state     */
    };
    struct Status22 {
        string name = "Number Of Active Anodes";          /* name      */
        int state = 16;                                   /* state     */
    };
    string qual_names = "Good Data";                       /* name */
    string qual_names = "Questionable Data";               /* name */
    string qual_names = "Invalid Data";                    /* name */
    string qual_names = "Bad Data";                        /* name */
    string qual_names = "Unknown State";                   /* name */
    struct Sensor0 {
        string name = "ELS Anode 0";                      /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor1 {
        string name = "ELS Anode 1";                      /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor2 {
        string name = "ELS Anode 2";                      /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor3 {
        string name = "ELS Anode 3";                      /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor4 {
        string name = "ELS Anode 4";                      /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor5 {
        string name = "ELS Anode 5";                      /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor6 {
        string name = "ELS Anode 6";                      /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor7 {
        string name = "ELS Anode 7";                      /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor8 {
        string name = "ELS Anode 8";                      /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor9 {
        string name = "ELS Anode 9";                      /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor10 {
        string name = "ELS Anode 10";                     /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor11 {
        string name = "ELS Anode 11";                     /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor12 {
        string name = "ELS Anode 12";                     /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor13 {
        string name = "ELS Anode 13";                     /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor14 {
        string name = "ELS Anode 14";                     /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor15 {
        string name = "ELS Anode 15";                     /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 16;                                 /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct CalSet0 {
        string name = "ELS Temperature";                  /* name         */
        int use = 0;                                      /* use          */
        int word_len = 8;                                 /* word length  */
        int target = 0;                                   /* target       */
        int scope = 1;                                    /* scope        */
    };
    struct CalSet1 {
        string name = "ELS MCP Bias Reference";           /* name         */
        int use = 0;                                      /* use          */
        int word_len = 8;                                 /* word length  */
        int target = 0;                                   /* target       */
        int scope = 1;                                    /* scope        */
    };
    struct CalSet2 {
        string name = "ELS MCP Bias Monitor";             /* name         */
        int use = 0;                                      /* use          */
        int word_len = 8;                                 /* word length  */
        int target = 0;                                   /* target       */
        int scope = 1;                                    /* scope        */
    };
    struct CalSet3 {
        string name = "Total Range Anode Summation (MSB)";/* name         */
        int use = 0;                                      /* use          */
        int word_len = 16;                                /* word length  */
        int target = 0;                                   /* target       */
        int scope = 1;                                    /* scope        */
    };
    struct CalSet4 {
        string name = "Total Range Anode Summation (LSB)";/* name         */
        int use = 0;                                      /* use          */
        int word_len = 16;                                /* word length  */
        int target = 0;                                   /* target       */
        int scope = 1;                                    /* scope        */
    };
    struct CalSet5 {
        string name = "Low Range Sweep Summation (MSB)";  /* name         */
        int use = 0;                                      /* use          */
        int word_len = 16;                                /* word length  */
        int target = 0;                                   /* target       */
        int scope = 0;                                    /* scope        */
    };
    struct CalSet6 {
        string name = "Low Range Sweep Summation (LSB)";  /* name         */
        int use = 0;                                      /* use          */
        int word_len = 16;                                /* word length  */
        int target = 0;                                   /* target       */
        int scope = 0;                                    /* scope        */
    };
    struct CalSet7 {
        string name = "Total Range Sweep Summation (MSB)";/* name         */
        int use = 0;                                      /* use          */
        int word_len = 16;                                /* word length  */
        int target = 0;                                   /* target       */
        int scope = 0;                                    /* scope        */
    };
    struct CalSet8 {
        string name = "Total Range Sweep Summation (LSB)";/* name         */
        int use = 0;                                      /* use          */
        int word_len = 16;                                /* word length  */
        int target = 0;                                   /* target       */
        int scope = 0;                                    /* scope        */
    };
    struct Table0 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 0
 *  This table contains the sets of polynomial coefficients which
 *  put the data value into the working math buffer.
 */
        int tbl_var = 0;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, 0};                           /* scale factor */
        int values [2] = {0, 1};                          /* values       */
    };
    struct Table1 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 1
 *  This table contains the 1/index maximum value of the voltage DAC.
 *  Dividing the control index by this number gives the fractional
 *  amount of the voltage range used in deflecting the electron.
 */
        int tbl_var = 2;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, -12};                         /* scale factor */
        int values [2] = {0, 244200244};                  /* values       */
    };
    struct Table2 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 2
 *  This table contains the maximum control input voltage [volt].
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [1] = {0};                              /* scale factor */
        int values [1] = {5};                             /* values       */
    };
    struct Table3 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 3
 *  This table contains the maximum low range deflection voltage
 *  [volt].
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [1] = {-2};                             /* scale factor */
        int values [1] = {2099};                          /* values       */
    };
    struct Table4 {
        int tbl_sca_sz = 16;                              /* tbl_sca_sz   */
        int tbl_ele_sz = 16;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 4
 *  This table contains the k-factors for each anode [eV/volt].
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 1, 2, 3, 4, 5,                               /*  000 - 005  */
          6, 7, 8, 9, 10, 11,                             /*  006 - 011  */
          12, 13, 14, 15                                  /*  012 - 015  */
        };
        int scale [16] = {                                /* scale factor*/
          -3, -3, -3, -3, -3, -3,                         /*  000 - 005  */
          -3, -3, -3, -3, -3, -3,                         /*  006 - 011  */
          -3, -3, -3, -3                                  /*  012 - 015  */
        };
        int values [16] = {                               /* values      */
          7167, 7152, 7141, 7165, 7188, 7625,             /*  000 - 005  */
          7262, 7266, 7275, 7254, 7262, 7255,             /*  006 - 011  */
          7255, 7271, 7253, 7188                          /*  012 - 015  */
        };
    };
    struct Table5 {
        int tbl_sca_sz = 16;                              /* tbl_sca_sz   */
        int tbl_ele_sz = 16;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 5
 *  This table contains the detector efficiencies for the detector
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0,  1,  2,  3,  4,  5,                          /*  000 - 005  */
          6,  7,  8,  9, 10, 11,                          /*  006 - 011  */
         12, 13, 14, 15                                   /*  012 - 015  */
        };
        int scale [16] = {                                /* scale factor*/
          -2, -2, -2, -2, -2, -2,                         /*  000 - 005  */
          -2, -2, -2, -2, -2, -2,                         /*  006 - 011  */
          -2, -2, -2, -2                                  /*  012 - 015  */
        };
        int values [16] = {                               /* values      */
           95,  95,  95,  95,  95,  95,                   /*  000 - 005  */
           95,  95,  95,  95,  95,  95,                   /*  006 - 011  */
           95,  95,  95,  95                              /*  012 - 015  */
        };
    };
    struct Table6 {
        int tbl_sca_sz = 163;                             /* tbl_sca_sz   */
        int tbl_ele_sz = 163;                             /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 6
 *  This table contains the efficiency adjustment factor for the detector.
 *  This is a description of how the anode varies relative to the other
 *  anodes and is described by voltage dependent functions.
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
           9, 11, 11,  9,  9,  9,                         /*  000 - 005  */
          11, 11, 11,  9,  9, 11,                         /*  006 - 011  */
          11, 10, 11, 11                                  /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
            0,   9,  20,  31,  40,  49,                   /*  000 - 005  */
           58,  69,  80,  91, 100, 109,                   /*  006 - 011  */
          120, 131, 141, 152                              /*  012 - 015  */
        };
        int scale [163] = {                               /* scale factor*/
           -6,  -9, -11, -14, -17, -20, -24, -28, -32,    /*  000 - 008  */
           -6,  -9, -11, -13, -16, -19, -22, -26, -29,    /*  009 - 017  */
          -33, -37,                                       /*  018 - 019  */
           -6,  -9, -11, -14, -17, -20, -23, -26, -30,    /*  020 - 028  */
          -34, -38,                                       /*  029 - 030  */
           -6,  -9, -11, -14, -17, -20, -24, -28, -32,    /*  031 - 039  */
           -6,  -9, -11, -14, -17, -20, -24, -27, -32,    /*  040 - 048  */
           -6,  -9, -11, -14, -17, -20, -24, -27, -32,    /*  049 - 057  */
           -7, -10, -12, -14, -17, -20, -23, -26, -30,    /*  058 - 066  */
          -34, -38,                                       /*  067 - 068  */
           -6,  -9, -12, -15, -17, -20, -23, -26, -30,    /*  069 - 077  */
          -34, -38,                                       /*  078 - 079  */
           -6,  -9, -12, -14, -17, -19, -23, -26, -30,    /*  080 - 088  */
          -33, -38,                                       /*  089 - 090  */
           -6,  -9, -11, -14, -17, -20, -24, -28, -32,    /*  091 - 099  */
           -6,  -9, -11, -14, -17, -20, -24, -27, -32,    /*  100 - 108  */
           -6, -10, -12, -14, -17, -20, -23, -26, -30,    /*  109 - 117  */
          -34, -38,                                       /*  118 - 119  */
           -6,  -9, -12, -14, -17, -20, -23, -26, -30,    /*  120 - 128  */
          -33, -38,                                       /*  129 - 130  */
           -6,  -8, -11, -13, -16, -19, -23, -26, -30,    /*  131 - 139  */
          -34,                                            /*  140  */
           -6,  -9, -12, -14, -17, -20, -23, -26, -30,    /*  141 - 149  */
          -33, -38,                                       /*  150 - 151  */
           -6,  -9, -11, -14, -16, -19, -23, -26, -29,    /*  152 - 160  */
          -33, -37                                        /*  161 - 162  */
        };
        int values [163] = {                              /* values      */
           2141859, -6024497,  1794353, -2796459,         /*  000 - 003  */
           2543964, -1395010,  4532808, -8024142,         /*  004 - 007  */
           5954283,                                       /*  008  */
           1660858, -6522166,  3691054, -1073737,         /*  009 - 012  */
           1839852, -1977613,  1369280, -6096699,         /*  013 - 016  */
           1685387, -2630885,  1771363,                   /*  017 - 019  */
           2021935, -5955053,  1878866, -3736588,         /*  020 - 023  */
           5172668, -5034701,  3363807, -1488898,         /*  024 - 027  */
           4137518, -6504663,  4399947,                   /*  028 - 030  */
           1659460, -4954925,  1526991, -2516840,         /*  031 - 034  */
           2433297, -1420192,  4915142, -9275283,         /*  035 - 038  */
           7345382,                                       /*  039  */
           1731412, -5380326,  1709947, -2884332,         /*  040 - 043  */
           2826155, -1658431,  5735419, -1076440,         /*  044 - 047  */
           8447731,                                       /*  048  */
           1811691, -5230411,  1584896, -2629686,         /*  049 - 052  */
           2573125, -1519547,  5306596, -1006748,         /*  053 - 056  */
           7984914,                                       /*  057  */
           9984187,  2018039, -3170439,  1589455,         /*  058 - 061  */
          -3484247,  4156025, -2951669,  1283619,         /*  062 - 065  */
          -3351854,  4821632, -2933104,                   /*  066 - 068  */
           1593066, -2964337,  3217016,  9241350,         /*  069 - 072  */
          -3138800,  4137379, -3044785,  1346434,         /*  073 - 076  */
          -3552330,  5151235, -3156380,                   /*  077 - 079  */
           2097414, -3125151, -4329302,  4317461,         /*  080 - 083  */
          -9923385,  1177737, -8280358,  3573841,         /*  084 - 087  */
          -9293869,  1335333, -8131189,                   /*  088 - 090  */
           2062909, -4885969,  1427184, -2260352,         /*  091 - 094  */
           2111094, -1194770,  4024074, -7416131,         /*  095 - 098  */
           5754756,                                       /*  099  */
           2180664, -6296202,  1891070, -3064724,         /*  100 - 103  */
           2948811, -1724577,  5997964, -1138182,         /*  104 - 107  */
           9060635,                                       /*  108  */
           1603139, -8534362, -8667849,  4394307,         /*  109 - 112  */
          -8845054,  9830094, -6619258,  2766078,         /*  113 - 116  */
          -7009821,  9858768, -5896570,                   /*  117 - 119  */
           2026128, -3624418,  1755093,  2385497,         /*  120 - 123  */
          -6688306,  8554336, -6280654,  2795381,         /*  124 - 127  */
          -7448619,  1092352, -6770721,                   /*  128 - 130  */
           4264294, -2121222,  8360316, -1760020,         /*  131 - 134  */
           2193857, -1690439,  8124086, -2368735,         /*  135 - 138  */
           3831171, -2635711,                             /*  139 - 140  */
           1871975, -2714091, -1640371,  3116431,         /*  141 - 144  */
          -7626180,  9286905, -6636238,  2903883,         /*  145 - 148  */
          -7657761,  1117466, -6928145,                   /*  149 - 151  */
           1714980, -7089766,  3259217, -8410868,         /*  152 - 155  */
           1347052, -1391524,  9397261, -4114030,         /*  156 - 159  */
           1123482, -1737531,  1161350                    /*  160 - 162  */
        };
    };
    struct Table7 {
        int tbl_sca_sz = 16;                              /* tbl_sca_sz   */
        int tbl_ele_sz = 16;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 7
 *  This table contains the geometric factors for each anode
 *  [cm**2-sr].
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 1, 2, 3, 4, 5,                               /*  000 - 005  */
          6, 7, 8, 9, 10, 11,                             /*  006 - 011  */
          12, 13, 14, 15                                  /*  012 - 015  */
        };
        int scale [16] = {                                /* scale factor*/
          -6, -6, -6, -6, -6, -6,                         /*  000 - 005  */
          -6, -6, -6, -6, -6, -6,                         /*  006 - 011  */
          -6, -6, -6, -6                                  /*  012 - 015  */
        };
        int values [16] = {                               /* values      */
          588, 588, 588, 588, 588, 588,                   /*  000 - 005  */
          588, 588, 588, 588, 588, 588,                   /*  006 - 011  */
          588, 588, 588, 588                              /*  012 - 015  */
        };
    };
    struct Table8 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 8
 *  This table contains the MCP transparency factor as quoted by the 
 *  manufacture
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [1] = {-2};                             /* scale factor */
        int values [1] = { 58 };                          /* values       */
    };
    struct Table9 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 9
 *  This table contains the Grid transparency factor as determined by the 
 *  manufactures specifications (see SwRI document ES-SGT-15-03561).
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [1] = {-2};                             /* scale factor */
        int values [1] = { 81 };                          /* values       */
    };
    struct Table10 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 10
 *  This table contains the fraction of the ratio between the manufactured
 *  anode versus the theoretical anode.
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [1] = {-2};                             /* scale factor */
        int values [1] = { 87 };                          /* values       */
    };
    struct Table11 {
        int tbl_sca_sz = 16;                              /* tbl_sca_sz   */
        int tbl_ele_sz = 16;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 11
 *  This table contains the amplitude adjustment factors for each anode.
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 1, 2, 3, 4, 5,                               /*  000 - 005  */
          6, 7, 8, 9, 10, 11,                             /*  006 - 011  */
          12, 13, 14, 15                                  /*  012 - 015  */
        };
        int scale [16] = {                                /* scale factor*/
          -6, -6, -6, -6, -6, -6,                         /*  000 - 005  */
          -6, -6, -6, -6, -6, -6,                         /*  006 - 011  */
          -6, -6, -6, -6                                  /*  012 - 015  */
        };
        int values [16] = {                               /* values      */
          2632867, 1000000,  635386,  712443,  810931,    /*  000 - 004  */
           896400, 1370552,  928571,  665921, 1000000,    /*  005 - 009  */
           807453, 1000000,  988789, 1461922,  928571,    /*  010 - 014  */
          2146711                                         /*  015        */
/*        1000000, 1000000, 1000000, 1000000, 1000000, */ /*  000 - 004  */
/*        1000000, 1000000, 1000000, 1000000, 1000000, */ /*  005 - 009  */
/*        1000000, 1000000, 1000000, 1000000, 1000000, */ /*  010 - 014  */
/*        1000000                                      */ /*  015        */
        };
    };
    struct Table12 {
        int tbl_sca_sz = 16;                              /* tbl_sca_sz   */
        int tbl_ele_sz = 16;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 12
 *  This table contains the detector resolution as a fractional
 *  number.
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 1, 2, 3, 4, 5,                               /*  000 - 005  */
          6, 7, 8, 9, 10, 11,                             /*  006 - 011  */
          12, 13, 14, 15                                  /*  012 - 015  */
        };
        int scale [16] = {                                /* scale factor*/
          -5, -5, -5, -5, -5, -5,                         /*  000 - 005  */
          -5, -5, -5, -5, -5, -5,                         /*  006 - 011  */
          -5, -5, -5, -5                                  /*  012 - 015  */
        };
        int values [16] = {                               /* values      */
          8653, 8394, 8331, 8579, 8124, 8480,             /*  000 - 005  */
          8194, 7890, 7812, 8094, 8095, 8346,             /*  006 - 011  */
          8297, 7353, 7396, 8843                          /*  012 - 015  */
        };
    };
    struct Table13 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 13
 *  This table contains the conversion factor from eV to erg [erg/eV]
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [1] = {-15};                            /* scale factor */
        int values [1] = {1602};                          /* values       */
    };
    struct Table14 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 14
 *  This factor contains the mass dependency in computing
 *  distribution (needed since we make computation using the
 *  particle energy and not velocity) and also the necessary
 *  scaling to put units in s**3/km***6
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005  */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011  */
          1, 1, 1, 1                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [1] = {-7};                             /* scale factor */
        int values [1] = {1616895};                       /* values       */
    };
    struct Table15 {
        int tbl_sca_sz = 34;                              /* tbl_sca_sz   */
        int tbl_ele_sz = 34;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 15
 *  This table is mode dependent on the time summation mode which determines
 *  the number of spectra being accumulated into the summation of counts.
 */
        int tbl_var = 0;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 17;                             /* crit_act_sz  */
        struct CriticalAction {                           /* crit act def */
            int status [16] = {                           /* status used  */
                      3,  3,  3,  3,  3,  3,  3,  3,      /*  0000 - 0007 */
                      3,  3,  3,  3,  3,  3,  3,  3       /*  0008 - 0015 */
            };
            int offset [16] = {                           /* act offsets  */
                      0,  0,  0,  0,  0,  0,  0,  0,      /*  0000 - 0007 */
                      0,  0,  0,  0,  0,  0,  0,  0       /*  0008 - 0015 */
            };
            int table [17] = {                            /* action table */
                      0,  2,  4,  6,  8, 10, 12, 14,      /*  0000 - 0007 */
                     16, 18, 20, 22, 24, 26, 28, 30,      /*  0008 - 0015 */
                     32                                   /*  0016        */
            };
        };
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          -1, -1, -1, -1, -1, -1,                         /*  000 - 005  */
          -1, -1, -1, -1, -1, -1,                         /*  006 - 011  */
          -1, -1, -1, -1                                  /*  012 - 015  */
        };
        int scale [34] = {                                /* scale factor*/
           0,  0,  0,  0,  0,  0,  0,  0,  0,  0,         /*  000 - 009  */
           0,  0,  0,  0,  0,  0,  0,  0,  0,  0,         /*  010 - 019  */
           0,  0,  0,  0,  0,  0,  0,  0,  0,  0,         /*  020 - 029  */
           0,  0,  0,  0                                  /*  030 - 033  */
        };
        int values [34] = {                               /* values      */
           1,  0,  1,  0,  2,  0,  3,  0,  4,  0,         /*  000 - 009  */
           5,  0,  6,  0,  7,  0,  8,  0,  9,  0,         /*  010 - 019  */
          10,  0, 11,  0, 12,  0, 13,  0, 14,  0,         /*  020 - 029  */
          15,  0, 16,  0                                  /*  030 - 033  */
        };
    };
    struct Table16 {
        int tbl_sca_sz = 6;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 6;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 16
 *  This table is mode dependent on the step summation mode which determines
 *  the number of Energy steps being accumulated into the summation of counts.
 */
        int tbl_var = 0;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 3;                              /* crit_act_sz  */
        struct CriticalAction {                           /* crit act def */
            int status [16] = {                           /* status used  */
                      4,  4,  4,  4,  4,  4,  4,  4,      /*  0000 - 0007 */
                      4,  4,  4,  4,  4,  4,  4,  4       /*  0008 - 0015 */
            };
            int offset [16] = {                           /* act offsets  */
                      0,  0,  0,  0,  0,  0,  0,  0,      /*  0000 - 0007 */
                      0,  0,  0,  0,  0,  0,  0,  0       /*  0008 - 0015 */
            };
            int table [3] = {0, 2, 4};                    /* action table */
        };
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          -1, -1, -1, -1, -1, -1,                         /*  000 - 005  */
          -1, -1, -1, -1, -1, -1,                         /*  006 - 011  */
          -1, -1, -1, -1                                  /*  012 - 015  */
        };
        int scale [6] = {                                 /* scale factor*/
           0,  0,  0,  0,  0,  0                          /*  000 - 005  */
        };
        int values [6] = {                                /* values      */
           1,  0,  2,  0,  4,  0                          /*  000 - 005  */
        };
    };
    struct Table17 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 17
 *  This table contains the sets of polynomial coefficients which
 *  place the value on 1 into the working data buffer.
 */
        int tbl_var = 0;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, 0};                           /* scale factor */
        int values [2] = {1, 0};                          /* values       */
    };
    struct Table18 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 18
 *  This table is a function of calibration set 5, Low Range Sweep
 *  Summation (MSB).  This table is a polynomial to adjust the value to
 *  the upper bytes of a 4-byte integer.
 */
        int tbl_var = -6;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, 0};                           /* scale factor */
        int values [2] = {0, 65536};                      /* values       */
    };
    struct Table19 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 19
 *  This table is a function of calibration set 6, Low Range Sweep
 *  Summation (LSB).  This table is a polynomial to adjust the value to
 *  the lower bytes of a 4-byte integer.
 */
        int tbl_var = -7;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, 0};                           /* scale factor */
        int values [2] = {0,     1};                      /* values       */
    };
    struct Table20 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 20
 *  This table is a function of calibration set 7, Total Range Sweep
 *  Summation (MSB).  This table is a polynomial to adjust the value to
 *  the upper bytes of a 4-byte integer.
 */
        int tbl_var = -8;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, 0};                           /* scale factor */
        int values [2] = {0, 65536};                      /* values       */
    };
    struct Table21 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 21
 *  This table is a function of calibration set 8, Total Range Sweep
 *  Summation (LSB).  This table is a polynomial to adjust the value to
 *  the lower bytes of a 4-byte integer.
 */
        int tbl_var = -9;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, 0};                           /* scale factor */
        int values [2] = {0,     1};                      /* values       */
    };
    struct Table22 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 22
 *  This table is a function of calibration set 3, Total Range Anode
 *  Summation (MSB).  This table is a polynomial to adjust the value to
 *  the upper bytes of a 4-byte integer.
 */
        int tbl_var = -4;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, 0};                           /* scale factor */
        int values [2] = {0, 65536};                      /* values       */
    };
    struct Table23 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 23
 *  This table is a function of calibration set 4, Total Range Anode
 *  Summation (LSB).  This table is a polynomial to adjust the value to
 *  the lower bytes of a 4-byte integer.
 */
        int tbl_var = -5;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, 0};                           /* scale factor */
        int values [2] = {0,     1};                      /* values       */
    };
    struct Table24 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 24
 *  This table contains the sets of polynomial coefficients which
 *  converts calibration set 0 telemetry to voltage.
 */
        int tbl_var = -1;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, -8};                          /* scale factor */
        int values [2] = {0, 1960784};                    /* values       */
    };
    struct Table25 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 25
 *  This table contains the sets of polynomial coefficients which
 *  converts calibration set 0 telemetry to microamp.
 */
        int tbl_var = -1;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, -6};                          /* scale factor */
        int values [2] = {0, 1620483};                    /* values       */
    };
    struct Table26 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 26
 *  This table contains the sets of polynomial coefficients which
 *  converts calibration set 0 telemetry to degrees C.
 */
        int tbl_var = -1;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {-1, -6};                         /* scale factor */
        int values [2] = {-2732, 1620483};                /* values       */
    };
    struct Table27 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 27
 *  This table contains the conversion factor from eV to Joule [Joule/eV]
 */
        int tbl_var = 2;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005   */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011   */
          1, 1, 1, 1                                      /*  012 - 015   */
        };
        int offset [16] = {                               /* offsets      */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005   */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011   */
          0, 0, 0, 0                                      /*  012 - 015   */
        };
        int scale [1] = {-22};                            /* scale factor */
        int values [1] = {1602};                          /* values       */
    };
    struct Table28 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 28
 *  This table contains the constant number 2 for conversion used in energy
 *  to velocity.
 */
        int tbl_var = 2;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005   */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011   */
          1, 1, 1, 1                                      /*  012 - 015   */
        };
        int offset [16] = {                               /* offsets      */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005   */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011   */
          0, 0, 0, 0                                      /*  012 - 015   */
        };
        int scale [1] = {0};                              /* scale factor */
        int values [1] = {2};                             /* values       */
    };
    struct Table29 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 29
 *  This table contains the electron mass in [kg].
 */
        int tbl_var = 2;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005   */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011   */
          1, 1, 1, 1                                      /*  012 - 015   */
        };
        int offset [16] = {                               /* offsets      */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005   */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011   */
          0, 0, 0, 0                                      /*  012 - 015   */
        };
        int scale [1] = {-33};                            /* scale factor */
        int values [1] = {911};                           /* values       */
    };
    struct Table30 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 30
 *  This table contains the constant number 1000 for converting from m to km.
 *  This Table contains the number of m in a km [m/km]
 */
        int tbl_var = 1;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005   */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011   */
          1, 1, 1, 1                                      /*  012 - 015   */
        };
        int offset [16] = {                               /* offsets      */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005   */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011   */
          0, 0, 0, 0                                      /*  012 - 015   */
        };
        int scale [1] = {3};                              /* scale factor */
        int values [1] = {1};                             /* values       */
    };
    struct Table31 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 31
 *  This table contains the constant number 1000 for converting from m/s 
 *  to km/s.  This Table contains the number of m/s in a km/s [m/km]
 */
        int tbl_var = 2;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        int format [16] = {                               /* format       */
          1, 1, 1, 1, 1, 1,                               /*  000 - 005   */
          1, 1, 1, 1, 1, 1,                               /*  006 - 011   */
          1, 1, 1, 1                                      /*  012 - 015   */
        };
        int offset [16] = {                               /* offsets      */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005   */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011   */
          0, 0, 0, 0                                      /*  012 - 015   */
        };
        int scale [1] = {3};                              /* scale factor */
        int values [1] = {1};                             /* values       */
    };
    struct Table32 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 32
 *  This table contains the sets of polynomial coefficients which
 *  converts calibration set 1 (MCP reference) telemetry into its 
 *  control voltage.
 */
        int tbl_var = -2;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, -8};                          /* scale factor */
        int values [2] = {0, 1960784};                    /* values       */
    };
    struct Table33 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 33
 *  This table contains the sets of polynomial coefficients which
 *  converts calibration set 1 (MCP reference) telemetry into the 
 *  voltage across the MCP network.
 */
        int tbl_var = -2;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, -4};                          /* scale factor */
        int values [2] = {0, 117647};                     /* values       */
    };
    struct Table34 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 34
 *  This table contains the sets of polynomial coefficients which
 *  converts calibration set 1 (MCP monitor) telemetry into equilvant 
 *  control voltage.
 */
        int tbl_var = -3;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, -8};                          /* scale factor */
        int values [2] = {0, 1764706};                    /* values       */
    };
    struct Table35 {
        int tbl_sca_sz = 2;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 2;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 35
 *  This table contains the sets of polynomial coefficients which
 *  converts calibration set 1 (MCP monitor) telemetry into the 
 *  voltage across the MCP network.
 */
        int tbl_var = -3;                                 /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [16] = {                               /* format       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
        int offset [16] = {                               /* offsets     */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int scale [2] = {0, -4};                          /* scale factor */
        int values [2] = {0, 117647};                     /* values       */
    };
    struct Table36 {
        int tbl_sca_sz = 0;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 9;                               /* tbl_ele_sz   */
        int tbl_type = 1;                                 /* tbl_type     */
/*
 *  Table 36
 *  This table is an ASCII look-up table which indicates what
 *  the settings of the bit status monitors represents.
 */
        int tbl_var = 4;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [23] = {                               /* format       */
          -1, -1, 0, -1, -1, 0,                           /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0, 0, 0,                               /*  012 - 017  */
          0, 0, 0, 0, -1                                  /*  018 - 022  */
        };
        int offset [23] = {                               /* offsets     */
          -1, -1, 4, -1, -1, 0,                           /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2, 2, 2,                               /*  012 - 017  */
          2, 2, 2, 2, -1                                  /*  018 - 022  */
        };
        string values [9] = {                             /* values      */
          "Off", "On",  "Disabled",                       /*  000 - 002  */
          "Enabled", "Undefined", "Booting",              /*  003 - 005  */
          "Safe", "Prom", "Normal"                        /*  006 - 008  */
        };
    };
    struct Table37 {
        int tbl_sca_sz = 20;                              /* tbl_sca_sz   */
        int tbl_ele_sz = 20;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *  Table 37
 *  This table is a look-up table which indicates the normalization factor
 *  for the science data.  It applies to Time and Step summations.
 */
        int tbl_var = 4;                                  /* tbl_var      */
        int tbl_expand = 1;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_sz  */
        int format [23] = {                               /* format       */
          -1, -1, -1,  0,  0, -1,                         /*  000 - 005  */
          -1, -1, -1, -1, -1, -1,                         /*  006 - 011  */
          -1, -1, -1, -1, -1, -1,                         /*  012 - 017  */
          -1, -1, -1, -1, -1                              /*  018 - 022  */
        };
        int offset [23] = {                               /* offsets     */
          -1, -1, -1,  3,  0, -1,                         /*  000 - 005  */
          -1, -1, -1, -1, -1, -1,                         /*  006 - 011  */
          -1, -1, -1, -1, -1, -1,                         /*  012 - 017  */
          -1, -1, -1, -1, -1                              /*  018 - 022  */
        };
        int scale [20] = {                                /* scale factor */
           0,  0,  0,  0,  0,  0,  0,  0,  0,  0,         /*  000 - 009  */
           0,  0,  0,  0,  0,  0,  0,  0,  0,  0          /*  010 - 019  */
        };
        int values [20] = {                               /* values      */
           1,  2,  4,  1,  1,  2,  3,  4,  5,  6,         /*  000 - 009  */
           7,  8,  9, 10, 11, 12, 13, 14, 15, 16          /*  010 - 019  */
        };
    };
    struct Constant0 {
           int id = 1;
    /*
     *     Elevation angle as measured from the spacecraft +C axis
     */
           int scale[16] = {   -2,  -2,  -2,  -2,  -2,  -2,  -2,  -2,
                               -2,  -2,  -2,  -2,  -2,  -2,  -2,  -2  };
           int values[16] = { -16875, -14625, -12375, -10125,
                               -7875,  -5625,  -3375,  -1125,
                               1125,  3375,  5625,  7875,
                              10125, 12375, 14625, 16875  };
    };
    struct Constant1 {
           int id = 2;
    /*
     *     Azimuthal angle offsets measured from the spacecraft +A axis 
     *     in the direction of the spacecraft +B axis
     */
           int scale[16] = {    0,   0,   0,   0,   0,   0,   0,   0,
                                0,   0,   0,   0,   0,   0,   0,   0  };
           int values[16] = { 270, 270, 270, 270, 270, 270, 270, 270,
                               90,  90,  90,  90,  90,  90,  90,  90  };
    };
    struct Constant2 {
           int id = 3;
    /*
     *     Azimuthal field of view in the frame of the spacecraft (spacecraft
     *     A-B plane)
     */
           int scale[16] = {   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
                               -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1  };
           int values[16] = {  50,  50,  50,  50,  50,  50,  50,  50,
                               50,  50,  50,  50,  50,  50,  50,  50  };
    };
    struct Constant3 {
           int id = 4;
    /*
     *     Initial Aperture Elevation Angle as measured from the spacecraft 
     *     +C axis
     */
           int scale[16] = {   -2,  -2,  -2,  -2,  -2,  -2,  -2,  -2,
                               -2,  -2,  -2,  -2,  -2,  -2,  -2,  -2  };
           int values[16] = { 15925, 13675, 11425,  9175,
                               6925,  4675,  2425,   175,
                                175,  2425,  4675,  6925,
                               9175, 11425, 13675, 15925  };
    };
    struct Constant4 {
           int id = 5;
    /*
     *     Final Aperture Elevation Angle as measured from the spacecraft 
     *     +C axis
     */
           int scale[16] = {   -2,  -2,  -2,  -2,  -2,  -2,  -2,  -2, 
                               -2,  -2,  -2,  -2,  -2,  -2,  -2,  -2  };
           int values[16] = { 17825, 15575, 13325, 11075,
                               8825,  6575,  4325,  2075,
                               2075,  4325,  6575,  8825,
                              11075, 13325, 15575, 17825  };
    };
    struct Constant5 {
           int id = 6;
    /*
     *     Component of the aperture normal vector with respect to the +A axis
     *     of the magnetometer.
     */
           int scale[16] = {    0,   0,   0,   0,   0,   0,   0,   0,
                                0,   0,   0,   0,   0,   0,   0,   0  };
           int values[16] = {       0,       0,       0,       0, 
                                    0,       0,       0,       0,
                                    0,       0,       0,       0,
                                    0,       0,       0,       0 };
    };
    struct Constant6 {
           int id = 7;
    /*
     *     Component of the aperture normal vector with respect to the +B axis
     *     of the magnetometer.
     */
           int scale[16] = {   -6,  -6,  -6,  -6,  -6,  -6,  -6,  -6, 
                               -6,  -6,  -6,  -6,  -6,  -6,  -6,  -6  };
           int values[16] = { -195090, -555570, -831470, -980785, 
                              -980785, -831470, -555570, -195090,
                               195090,  555570,  831470,  980785,
                               980785,  831470,  555570,  195090 };
    };
    struct Constant7 {
                int id = 8;
    /*
     *     Component of the aperture normal vector with respect to the +C axis
     *     of the magnetometer.
     */
                int scale[16] = {   -6,  -6,  -6,  -6,  -6,  -6,  -6,  -6, 
                                    -6,  -6,  -6,  -6,  -6,  -6,  -6,  -6  };
                int values[16] = { -980785, -831470, -555570, -195090,
                                    195090,  555570,  831470,  980785,
                                    980785,  831470,  555570,  195090,
                                   -195090, -555570, -831470, -980785 };
    };
}
