vidf v3_HPADLR {            /* Updated February 18, 2008 */
    float version = 3.0;                                   /* version      */
    string mission = "ClusterII mission";                  /* mission      */
    string spacecraft = "CLUSTER-3";                       /* spacecraft   */
    string experiment = "CIS";                             /* exp_desc     */
    string instrument = "HIA_PAD (Pitch angle - 2 spin resolution)"; /* inst_desc    */
    string contact = "Dr. Henri Reme";
    string contact = "CESR BP 4346";
    string contact = "9 Ave Colonel Roche";
    string contact = "Cedex, Toulouse, 31029, France";
    string contact = "email henri.reme@cesr.cnes.fr";
/*
 *             CLUSTERII:CLUSTER-3:CIS:HIA_PAD:HPADLR
 * 
 *  This virtual contains pitch angle cut data from the CIS HIA
 *  dectector. The CIS Level 1 data source is product 19. The start-
 *  up phase of the acquisition reference frame with respect to the
 *  spin pulse is expressed in 1/2048ths of a spin. The azimuthal
 *  offset is computed onboard according FGM IEL data. The first sensor
 *  set contains the first magnetic field B direction matching slice;
 *  the second half the 180 deg displaced slice (could be other than
 *  180 deg due to changing magnetic field).
 * 
 *  The source calibration file for this VIDF is:
 *  C3_L1_CISHIA_20021102_V02_3DCOxxxxxx.tab,v 1.1 2003/10/29
 * 
 *  The following is a list of tables which are in this vidf
 *    TABLE  0:  center energies (eV)
 *    TABLE  1:  telemetry decom table
 *    TABLE  2:  MCP energy-dependent efficiencies
 *    TABLE  3:  geometry factors (cm**2-str-KeV/KeV)
 *    TABLE  4:  Energy-dependent efficiencies
 *    TABLE  5:  sector dependent corrections
 *    TABLE  6:  dead-time correction
 *    TABLE  7:  Spin accumulation correction
 *    TABLE  8:  Factor by which polar sectors are summed
 *    TABLE  9:  Energy bin width
 *    TABLE 10:  conversion from eV to ergs
 *    TABLE 11:  Conversion factors to distribution func (s**3/km**6)
 *    TABLE 12:  Conversion of dis fn from (s**3/km**6) to (s**3/cm**6)
 *    TABLE 13:  Conversion of dis fn from (s**3/km**6) to (s**3/m**6)
 *    TABLE 14:  Table of value 2/m (gm-1) used in E->V conversion
 *    TABLE 15:  Conversion of cm to m
 *    TABLE 16:  Conversion of cm to km
 *    TABLE 17:  Electron charge in Coulombs
 *    TABLE 18: Polynomial to place spacecraft potential into math buffer
 * 
 *  The following is a list of constants defined in this vidf
 *             No constants defined at this time
 * 
  *  The following are some of the units which can be derived from the
 *  included tables. The format is to give the tables applied followed
 *  by the operations and unit definition.  Note that for brevity we
 *  represent the table sequence 1,2,4,5,7,8 by T_S1 and the operation
 *  sequence 0,154,4,4,4,4 by O_S1.0
 * 
 *    DATA    TABLES            OPERS             UNIT
 *    Scan    0                 0                 eV
 *    Sweep   1                 0                 cnts/accum
 *    Sweep   1,2,4,5,7,8       0,4,4,4,4,4       cnts/accum (eff. cor)
 *    Sweep   T_S1              O_S1              cnts/sec
 *    Sweep   T_S1,3            O_S1,4            cnts/(cm**2-str-s)
 *    Sweep   T_S1,3,0          O_S1,4,4          cnts/(cm**2-str-s-eV)
 *    Sweep   T_S1,3,10         O_S1,4,3          ergs/(cm**2-str-s-eV)
 *    Sweep   T_S1,3,11,10,0,10,0  O_S1,4,3,4,4,4,4  sec**3/km**6
 *    Sweep   T_S1,3,11,10,0,10,0,12 O_S1,4,3,4,4,4,4,3 sec**3/cm**6
 *    Sweep   T_S1,3,11,10,0,10,0,13 O_S1,4,3,4,4,4,4,3 sec**3/m**6
 */
    int s_year = 2002;                                    /* ds_year      */
    int s_day = 306;                                      /* ds_day       */
    int s_msec = 3600000;                                 /* ds_msec      */
    int s_usec = 0;                                       /* ds_usec      */
    int e_year = 2020;                                    /* 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 = 3;                                       /* n_qual       */
    int n_cal_sets = 0;                                   /* cal_sets     */
    int n_tbls = 19;                                      /* num_tbls     */
    int n_consts = 0;                                     /* num_consts   */
    int n_status = 7;                                     /* status       */
    int n_sensors = 16;                                   /* sen          */
    int swp_len = 31;                                     /* swp_len      */
    int max_nss = 2;                                      /* max_nss      */
    int data_len = 1016;                                  /* data_len     */
    int fill_flag = 1;                                    /* fill_flg     */
    int fill = 255;                                       /* fill value   */
    int da_method = 0;                                    /* da_method    */
    struct Status0 {
        string name = "CIS Operational Mode";             /* name      */
        int state = 16;                                   /* state     */
    };
    struct Status1 {
        string name = "CIS HIA Product Number";           /* name      */
        int state = 25;                                   /* state     */
    };
    struct Status2 {
        string name = "CIS HIA PAD Parity Indicator";     /* name      */
        int state = 3;                                    /* state     */
    };
    struct Status3 {
        string name = "CIS HIA PAD startup phase 1";      /* name      */
        int state = 2048;                                 /* state     */
    };
    struct Status4 {
        string name = "CIS HIA PAD first sampled 1";      /* name      */
        int state = 16;                                   /* state     */
    };
    struct Status5 {
        string name = "CIS HIA PAD startup phase 2";      /* name      */
        int state = 2048;                                 /* state     */
    };
    struct Status6 {
        string name = "CIS HIA PAD first sampled 2";      /* name      */
        int state = 16;                                   /* state     */
    };
    string qual_names = "Good data";                      /* name */
    string qual_names = "Error uncompressing data";       /* name */
    string qual_names = "Bad Data";                       /* name */
    struct PotentialSource {
        int format = 1;                                   /* pot format   */
        string project = "CLUSTERII";                     /* pot project  */
        string mission = "CLUSTER-1";                     /* pot mission  */
        string experiment = "EFW";                        /* pot exper    */
        string instrument = "POTENTIAL";                  /* pot inst     */
        string vinstrument = "SCPOT_SP";                  /* pot vinst    */
        int potential_sensor = 0;                         /* pot sensor   */
        int num_tbls = 0;                                 /* num pot tbls */
        float constant_value = -2.0;                      /* replace with */
    };
    struct StartOfSpin {
        string project = "CLUSTERII";                     /* spin_project */
        string mission = "CLUSTER-1";                     /* spin_mission */
        string experiment = "AUXILIARY";                  /* spin_exper   */
        string instrument = "OA";                         /* spin_inst    */
        string vinstrument = "CSPSPIN";                   /* spin_vinst   */
        int sensor = 0;                                   /* spin_sensor  */
        int msec_adj = 0;                                 /* msec_adj     */
        int nsec_adj = 0;                                 /* nsec_adj     */
    };
    struct Sensor0 {
        string name = "HIA  - sensor 0";                  /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor1 {
        string name = "HIA  - sensor 1";                  /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor2 {
        string name = "HIA  - sensor 2";                  /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor3 {
        string name = "HIA  - sensor 3";                  /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor4 {
        string name = "HIA  - sensor 4";                  /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor5 {
        string name = "HIA  - sensor 5";                  /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor6 {
        string name = "HIA  - sensor 6";                  /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor7 {
        string name = "HIA  - sensor 7";                  /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor8 {
        string name = "HIA  - sensor 8";                  /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor9 {
        string name = "HIA  - sensor 9";                  /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor10 {
        string name = "HIA  - sensor 10";                 /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor11 {
        string name = "HIA  - sensor 11";                 /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor12 {
        string name = "HIA  - sensor 12";                 /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor13 {
        string name = "HIA  - sensor 13";                 /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor14 {
        string name = "HIA  - sensor 14";                 /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Sensor15 {
        string name = "HIA  - sensor 15";                 /* name          */
        int d_type = 0;                                   /* d_type        */
        int status = 1;                                   /* status        */
        int tdw_len = 8;                                  /* tdw_len       */
        int time_offset = 0;                              /* time_offset   */
    };
    struct Table0 {
        int tbl_sca_sz = -16;                             /* tbl_sca_sz   */
        int tbl_ele_sz = 31;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                          TABLE 00
 *  This table contains the center energies in eV
 *  These values are from mkhiaenergies.c but unverified
 *  This table is only for energy table 0, which is OK for MS
 */
        int tbl_var = 2;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        int format [16] = {                               /* format       */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  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 [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 [31] = {                               /* values       */
          2899021, 2179730, 1638906, 1232268, 926524, 696639, /*  000 - 005  */
          523792, 393831, 296116, 222645, 167403, 125868, /*  006 - 011  */
          94638, 71157, 53502, 40227, 30246, 22741,       /*  012 - 017  */
          17099, 12856, 9666, 7268, 5464, 4108,           /*  018 - 023  */
          3089, 2322, 1746, 1313, 987, 742,               /*  024 - 029  */
          558                                             /*  030 - 030  */
        };
    };
    struct Table1 {
        int tbl_sca_sz = -16;                             /* tbl_sca_sz   */
        int tbl_ele_sz = 256;                             /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                          TABLE 01
 *  Look up table converting telemetry to counts/accum
 */
        int tbl_var = 0;                                  /* tbl_var      */
        int tbl_expand = 1;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        int format [16] = {                               /* format       */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  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 [16] = {                                /* scale factor */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  012 - 015  */
        };
        int values [256] = {                              /* values       */
          0, 1, 2, 3, 4, 5,                               /*  000 - 005  */
          6, 7, 8, 9, 10, 11,                             /*  006 - 011  */
          12, 13, 14, 15, 16, 17,                         /*  012 - 017  */
          18, 19, 20, 21, 22, 23,                         /*  018 - 023  */
          24, 25, 26, 27, 28, 29,                         /*  024 - 029  */
          30, 31, 32, 33, 35, 37,                         /*  030 - 035  */
          39, 41, 43, 45, 47, 49,                         /*  036 - 041  */
          51, 53, 55, 57, 59, 61,                         /*  042 - 047  */
          63, 66, 70, 74, 78, 82,                         /*  048 - 053  */
          86, 90, 94, 98, 102, 106,                       /*  054 - 059  */
          110, 114, 118, 122, 126, 132,                   /*  060 - 065  */
          140, 148, 156, 164, 172, 180,                   /*  066 - 071  */
          188, 196, 204, 212, 220, 228,                   /*  072 - 077  */
          236, 244, 252, 264, 280, 296,                   /*  078 - 083  */
          312, 328, 344, 360, 376, 392,                   /*  084 - 089  */
          408, 424, 440, 456, 472, 488,                   /*  090 - 095  */
          504, 528, 560, 592, 624, 656,                   /*  096 - 101  */
          688, 720, 752, 784, 816, 848,                   /*  102 - 107  */
          880, 912, 944, 976, 1008, 1056,                 /*  108 - 113  */
          1120, 1184, 1248, 1312, 1376, 1440,             /*  114 - 119  */
          1504, 1568, 1632, 1696, 1760, 1824,             /*  120 - 125  */
          1888, 1952, 2016, 2112, 2240, 2368,             /*  126 - 131  */
          2496, 2624, 2752, 2880, 3008, 3136,             /*  132 - 137  */
          3264, 3392, 3520, 3648, 3776, 3904,             /*  138 - 143  */
          4032, 4224, 4480, 4736, 4992, 5248,             /*  144 - 149  */
          5504, 5760, 6016, 6272, 6528, 6784,             /*  150 - 155  */
          7040, 7296, 7552, 7808, 8064, 8448,             /*  156 - 161  */
          8960, 9472, 9984, 10496, 11008, 11520,          /*  162 - 167  */
          12032, 12544, 13056, 13568, 14080, 14592,       /*  168 - 173  */
          15104, 15616, 16128, 16896, 17920, 18944,       /*  174 - 179  */
          19968, 20992, 22016, 23040, 24064, 25088,       /*  180 - 185  */
          26112, 27136, 28160, 29184, 30208, 31232,       /*  186 - 191  */
          32256, 33792, 35840, 37888, 39936, 41984,       /*  192 - 197  */
          44032, 46080, 48128, 50176, 52224, 54272,       /*  198 - 203  */
          56320, 58368, 60416, 62464, 64512, 67584,       /*  204 - 209  */
          71680, 75776, 79872, 83968, 88064, 92160,       /*  210 - 215  */
          96256, 100352, 104448, 108544, 112640, 116736,  /*  216 - 221  */
          120832, 124928, 129024, 135168, 143360, 151552, /*  222 - 227  */
          159744, 167936, 176128, 184320, 192512, 200704, /*  228 - 233  */
          208896, 217088, 225280, 233472, 241664, 249856, /*  234 - 239  */
          258048, 270336, 286720, 303104, 319488, 335872, /*  240 - 245  */
          352256, 368640, 385024, 401408, 417792, 434176, /*  246 - 251  */
          450560, 466944, 483328, 499712                  /*  252 - 255  */
        };
    };
    struct Table2 {
        int tbl_sca_sz = -16;                             /* tbl_sca_sz   */
        int tbl_ele_sz = 31;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                          TABLE 02
 *  This table contains MCP efficiency and grid transparancy
 *  as a function of energy step.
 *  From MCP_fitting_peram T(E).
 */
        int tbl_var = 2;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        int format [16] = {                               /* format       */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  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 [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 [31] = {                               /* values       */
          738930, 751583, 760967, 759594, 754206, 746128, /*  000 - 005  */
          715486, 670369, 623966, 582021, 546493, 517526, /*  006 - 011  */
          494471, 476416, 462433, 451689, 443480, 437234, /*  012 - 017  */
          432497, 428911, 426202, 424158, 422616, 421454, /*  018 - 023  */
          420580, 419921, 419426, 419054, 418773, 418562, /*  024 - 029  */
          418404                                          /*  030 - 030  */
        };
    };
    struct Table3 {
        int tbl_sca_sz = 16;                              /* tbl_sca_sz   */
        int tbl_ele_sz = 16;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                          TABLE 03
 *  This table contains the detector geometry factors from
 *  geom_factor (HS)  in [cm^2-sr-keV/keV]  (includes dE/E)
 */
        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, 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 */
          -7, -7, -7, -7, -7, -7,                         /*  000 - 005  */
          -7, -7, -7, -7, -7, -7,                         /*  006 - 011  */
          -7, -7, -7, -7                                  /*  012 - 015  */
        };
        int values [16] = {                               /* values       */
          4615, 4615, 4615, 4615, 4615, 4615,             /*  000 - 005  */
          4615, 4615, 4615, 4615, 4615, 4615,             /*  006 - 011  */
          4615, 4615, 4615, 4615                          /*  012 - 015  */
        };
    };
    struct Table4 {
        int tbl_sca_sz = -16;                             /* tbl_sca_sz   */
        int tbl_ele_sz = 31;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                          TABLE 04
 *  This table contains the energy dependent efficiencies
 *  other than from the MCP. From fitting_param.
 *  1/(Norm_theta * Eff(E))
 */
        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 [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 [31] = {                               /* values       */
          735847, 708799, 689737, 676066, 666139, 658865, /*  000 - 005  */
          653499, 649522, 646564, 644357, 642707, 641473, /*  006 - 011  */
          640548, 639854, 639333, 638942, 638649, 638428, /*  012 - 017  */
          638262, 638138, 638044, 637974, 637921, 637881, /*  018 - 023  */
          637851, 637829, 637812, 637799, 637789, 637782, /*  024 - 029  */
          637777                                          /*  030 - 030  */
        };
    };
    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 05
 *  This table contains the sector dependent efficiency
 *  factors from the anode_effic_table
 */
        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, 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 */
           1, -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       */
          1, 744930, 759370, 846040, 952830, 790750,      /*  000 - 005  */
          791710, 759370, 753400, 784360, 806250, 871770, /*  006 - 011  */
          902870, 781130, 774470, 921950                  /*  012 - 015  */
        };
    };
    struct Table6 {
        int tbl_sca_sz = 16;                              /* tbl_sca_sz   */
        int tbl_ele_sz = 16;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                          TABLE 06
 *  This table contains the amplifier dead time tau from
 *  the dead_time table of 2x10^-5 ms in seconds
 */
        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, 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 */
          -8, -8, -8, -8, -8, -8,                         /*  000 - 005  */
          -8, -8, -8, -8, -8, -8,                         /*  006 - 011  */
          -8, -8, -8, -8                                  /*  012 - 015  */
        };
        int values [16] = {                               /* values       */
          2, 2, 2, 2, 2, 2,                               /*  000 - 005  */
          2, 2, 2, 2, 2, 2,                               /*  006 - 011  */
          2, 2, 2, 2                                      /*  012 - 015  */
        };
    };
    struct Table7 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                          TABLE 07
 *  This table contains the number of spin accumulation
 *  periods. Not needed for this product.
 *  This table is a placeholder to remain consistent with other products.
 */
        int tbl_var = 0;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        int format [1] = {1};                             /* format       */
        int offset [1] = {0};                             /* offsets      */
        int scale [1] = {0};                              /* scale factor */
        int values [1] = {1};                             /* values       */
    };
    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 08
 *  This table contains the number of pole-summed azimuths,
 *  so it is not really needed for this product.
 *  This table is a placeholder to remain consistent with other products.
 */
        int tbl_var = 0;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        int format [1] = {1};                             /* format       */
        int offset [1] = {0};                             /* offsets      */
        int scale [1] = {0};                              /* scale factor */
        int values [1] = {1};                             /* values       */
    };
    struct Table9 {
        int tbl_sca_sz = -16;                             /* tbl_sca_sz   */
        int tbl_ele_sz = 31;                              /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                          TABLE 09
 *  This table contains the delta energies in eV
 *  These values are from mkhiaenergies.c but unverified
 *  This table is only for energy table 0, which is OK for MS
 *                  [placeholder table - not implemented]
 */
        int tbl_var = 2;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        int format [16] = {                               /* format       */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0                                      /*  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 [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 [31] = {                               /* values       */
          0, 0, 0, 0, 0, 0,                               /*  000 - 005  */
          0, 0, 0, 0, 0, 0,                               /*  006 - 011  */
          0, 0, 0, 0, 0, 0,                               /*  012 - 017  */
          0, 0, 0, 0, 0, 0,                               /*  018 - 023  */
          0, 0, 0, 0, 0, 0,                               /*  024 - 029  */
          0                                               /*  030 - 030  */
        };
    };
    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 conversion from eV to ergs
 */
        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] = {-15};                            /* scale factor */
        int values [1] = {1602};                          /* values       */
    };
    struct Table11 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                           TABLE 11
 *  This table contains the mass (proton) dependency used in the conversion
 *  to distribution function (needed since computation uses the particle
 *  energy and not velocity).  It also has necessary scaling to put units
 *  into s**3/km***6
 */
        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] = {-24};                            /* scale factor */
        int values [1] = {1398831};                       /* values       */
    };
    struct Table12 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                           TABLE 12
 *  This table contains the conversion factor taking the velocity
 *  distribution function from (s**3/km**6) to (s**3/cm**6)
 */
        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] = {-30};                            /* scale factor */
        int values [1] = {1};                             /* values       */
    };
    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 taking the velocity
 *  distribution function from (s**3/km**6) to (s**3/m**6)
 */
        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] = {-18};                            /* scale factor */
        int values [1] = {1};                             /* 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 table contains the expression 2 / m, where m is the proton
 *  mass in grams.
 */
        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] = {19};                             /* scale factor */
        int values [1] = {119760};                        /* values       */
    };
    struct Table15 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                           TABLE 15
 *  This table contains the conversion factor taking cm to meters.
 *  Primary purpose is conversion of 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] = {-2};                             /* scale factor */
        int values [1] = {1};                             /* values       */
    };
    struct Table16 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                           TABLE 16
 *  This table contains the conversion factor taking cm to kilometers.
 *  Primary purpose is conversion of 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] = {-5};                             /* scale factor */
        int values [1] = {1};                             /* values       */
    };
    struct Table17 {
        int tbl_sca_sz = 1;                               /* tbl_sca_sz   */
        int tbl_ele_sz = 1;                               /* tbl_ele_sz   */
        int tbl_type = 0;                                 /* tbl_type     */
/*
 *                           TABLE 17
 *  Electron charge in Coulombs
 */
        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 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
 *  Polynomial to place spacecraft potential into math buffer for Spacecraft
 *  Potential Usage. [volts]
 */
        int tbl_var = 3;                                  /* tbl_var      */
        int tbl_expand = 0;                               /* tbl_expand   */
        int crit_act_sz = 0;                              /* crit_act_ele */
        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, 0};                         /* scale factor */
        int values [2] = { 15, -1};                       /* values       */
    };
}
