IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Sep 5, 2012, 4:25:56 PM (14 years ago)
Author:
eugene
Message:

merging change from eam_branches/ipp-20120805: adding psfQF, psfQFperf to both average and measure; deprecate average.Xp

Location:
trunk/Ohana
Files:
14 edited
1 copied

Legend:

Unmodified
Added
Removed
  • trunk/Ohana

  • trunk/Ohana/src/dvomerge/Makefile

    r34260 r34405  
    3333$(SRC)/dvomergeUpdate_catalogs.$(ARCH).o \
    3434$(SRC)/dvomergeUpdate_threaded.$(ARCH).o \
     35$(SRC)/dvomergeHistory.$(ARCH).o \
    3536$(SRC)/dvomergeFromList.$(ARCH).o \
    3637$(SRC)/dvomergeImageIDs.$(ARCH).o \
     
    5657$(SRC)/dvomerge_client.$(ARCH).o \
    5758$(SRC)/dvomergeUpdate_catalogs.$(ARCH).o \
     59$(SRC)/dvomergeHistory.$(ARCH).o \
    5860$(SRC)/dvomergeImageIDs.$(ARCH).o \
    5961$(SRC)/dvo_image_merge_dbs.$(ARCH).o \
  • trunk/Ohana/src/dvomerge/doc/failsafe.txt

    r33963 r34405  
     1
     220120809
     3
     4more on failsafe
     5
     6I need to improve the technique I'm using for failsafe ops / rerun.
     7
     8 * Image.dat PHU keywords:
     9   DVO_DB_ID : %s : hex string with 32 byte "unique" string for DB
     10   DM_NMERGE : %d : number of databases merged into this onea
     11   DM_nnnnnn : %s : DVO_DB_ID of merge (nnnnn)
     12
     13   Note: nnnnnn may be greater than NMERGE if entries are skipped
     14     (only a total of NMERGE nnnnnn values are allowed)
     15
     16 * region.cpt PHU keywords:
     17   DM_NMERGE : %d : number of databases merged into this one (needed?)
     18   MS_nnnnnn : %d : size of merged db entry nnnnnn
     19   MT_nnnnnn : %s : date/time of merged db entry nnnnnn
     20   
     21 Is there a reason for the image entries?  (additional record keeping)
     22
     23 
     24
     25
     26201206??
    127
    228we have a problem with dvomerge and flaky hosts.  the problem is that
  • trunk/Ohana/src/dvomerge/include/dvomerge.h

    r34277 r34405  
    4444  char *notFound;
    4545} IDmapType;
     46
     47// struct to describe a sequence of dvomerges (Image.dat header)
     48typedef struct {
     49  int Nmerge;
     50  char **IDs;
     51} dmhImage;
     52
     53// struct to describe a sequence of dvomerges (Object table : cpt header)
     54typedef struct {
     55  int   Nmerge;
     56  off_t  *size;
     57  time_t *time;
     58  char  **date;
     59} dmhObject;
     60
     61// data on a single table, populated when a new file is merged
     62typedef struct {
     63  off_t  size;
     64  time_t time;
     65  char  *date;
     66} dmhObjectStats;
     67
     68// struct to describe the current status of a single output file:
     69// is it on this machine (valid)? have we already merged or not (missed)?
     70// what is the collection of past merges (history)?  what is the real filename?
     71typedef struct {
     72  int valid;                  // is this object table on this machine?
     73  int missed;                 // did we fail to merge into this table yet?
     74  dmhObject *history;         // complete sequence of previous merges
     75  char *filename;             // true filename on disk
     76} OutputStatus;
    4677
    4778int        main                   PROTO((int argc, char **argv));
     
    130161IDmapType *IDmapLoad               PROTO((char *filename));
    131162int        create_IDmap_lookup     PROTO((IDmapType *IDmap));
     163
     164// dvomerge history functions
     165OutputStatus *OutputStatusInit (int N);
     166int OutputStatusFree (OutputStatus *outstat, int N);
     167
     168int dmhObjectAdd (dmhObject *history, Header *header, dmhObjectStats *inStats);
     169int dmhObjectCheck (dmhObject *history, dmhObjectStats *inStats);
     170dmhObject *dmhObjectRead (char *filename);
     171
     172void dmhObjectStatsFree (dmhObjectStats *stats);
     173dmhObjectStats *dmhObjectStatsRead (char *filename);
     174
     175int dmhImageAdd (FITS_DB *db, dmhImage *history, char *dbID);
     176dmhImage *dmhImageRead (FITS_DB *db) ;
     177int dmhImageCheck (dmhImage *history, char *dbID);
     178
     179char *dmhImageReadID (FITS_DB *db);
     180int dvoCreateID (char *catdir);
     181
  • trunk/Ohana/src/dvomerge/include/dvoverify.h

    r34260 r34405  
    3434int    NNotSorted;
    3535int    CHECK_TOPLEVEL;
     36int    CHECK_IMAGE_ID;
    3637int    LIST_MISSING;
    3738
     
    5253void AddFailures (char *filename);
    5354char **GetFailures (int *N);
     55
     56int LoadImageIDs (char *catdir);
     57int CheckImageID (Catalog *catalog);
  • trunk/Ohana/src/dvomerge/src/dvomergeImageIDs.c

    r33963 r34405  
    2121    return TRUE;
    2222  }
     23  // this operation reads the PHU header (inDB.header)
    2324  if (!dvo_image_load (&inDB, VERBOSE, TRUE)) {
    2425    Shutdown ("can't read input image catalog %s", inDB.filename);
    2526  }
     27  dvo_image_unlock (&inDB); // unlock input
     28
     29  // read the header for the database ID?
     30  char *indbID = dmhImageReadID (&inDB);
     31  if (!indbID) {
     32    Shutdown ("this database is missing a DVO database ID; please generate one before merging\n");
     33  }
    2634
    2735  /*** load output/Images.dat ***/
     
    4149  }
    4250
     51  dmhImage *history = dmhImageRead (&outDB);
     52  if (!history) {
     53    Shutdown ("error reading history for output database\n");
     54  }
     55
     56  // have we already merged this database?
     57  if (dmhImageCheck(history, indbID)) {
     58    // if so, then just match the image IDs
     59    if (VERBOSE) fprintf (stderr, "already merged image table\n");
     60    dvo_image_match_dbs(IDmap, &outDB, &inDB);
     61    dvo_image_unlock (&outDB); // unlock output
     62    return TRUE;
     63  }
     64
    4365  // convert database table to internal structure & add to output image db
    4466  dvo_image_merge_dbs(IDmap, &outDB, &inDB);
    45   dvo_image_unlock (&inDB); // unlock input
    4667
     68  // add the new image db to merge history
     69  // (updates header as well as history structure
     70  if (!dmhImageAdd (&outDB, history, indbID)) {
     71    Shutdown ("error reading history for output database\n");
     72  }
     73   
    4774  SetProtect (TRUE);
    4875  dvo_image_save (&outDB, VERBOSE);
  • trunk/Ohana/src/dvomerge/src/dvomergeUpdate_catalogs.c

    r34260 r34405  
    3131    outlist = SkyListByBounds (outsky, -1, inlist[0].regions[i][0].Rmin + dPos, inlist[0].regions[i][0].Rmax - dPos, inlist[0].regions[i][0].Dmin + dPos, inlist[0].regions[i][0].Dmax - dPos);
    3232
    33     // there may be more than one output region for a given input region.  are any of these output regions relevant to this machine?
     33    OutputStatus *outstat = OutputStatusInit (outlist->Nregions);
     34
     35    // there may be more than one output region for a given input region. 
     36    // are any of these output regions relevant to this machine?
    3437    int found = FALSE;
    35     for (j = 0; !found && (j < outlist[0].Nregions); j++) {
    36       found = (found || HostTableTestHost(outlist[0].regions[j], HOST_ID));
     38    for (j = 0; j < outlist[0].Nregions; j++) {
     39      outstat[j].valid = HostTableTestHost(outlist[0].regions[j], HOST_ID);
     40      found = (found || outstat[j].valid);
    3741    }
    3842
    3943    // skip this input table for if no output files are on this machine
    4044    if (!found) {
     45      OutputStatusFree (outstat, outlist->Nregions);
    4146      SkyListFree (outlist);
    4247      continue;
    4348    }
    4449
    45     // get the stats on this input file (for comparison with the output headers)
    46     struct stat instats;
    47     int stat_result = stat (inlist[0].filename[i], &instats);
    48     if (stat_result) {
    49       if (errno == ENOENT) continue;
    50       fprintf (stderr, "cannot read stats on input file %s\n", inlist[0].filename[i]);
    51       perror ("stats error message:");
    52       exit (2);
    53     }
    54 
    55     // instats.st_size & instats.st_mtime
    56 
    57     // check if any of the output files have NOT yet received data from this input file
    58 
     50    // get stats for history check, skip input catalog if file not found (NULL inStats)
     51    dmhObjectStats *inStats = dmhObjectStatsRead (inlist[0].filename[i]);
     52    if (!inStats) {
     53      if (VERBOSE) fprintf (stderr, "skipping %s, empty \n", inlist[0].filename[i]);
     54      OutputStatusFree (outstat, outlist->Nregions);
     55      SkyListFree (outlist);
     56      continue;
     57    }
     58
     59    // Check if any of the output files have NOT yet received data from this input file
     60    // If none have been missed, we can skip the input file completely
    5961    int missed = FALSE;
    60     for (j = 0; !missed && (j < outlist[0].Nregions); j++) {
    61       if (!HostTableTestHost(outlist[0].regions[j], HOST_ID)) continue;
     62    for (j = 0; j < outlist[0].Nregions; j++) {
     63      if (!outstat[j].valid) continue;
    6264
    6365      // set the parameters which guide catalog open/load/create
     
    6567      snprintf (hostfile, DVO_MAX_PATH, "%s/%s.cpt", HOSTDIR, outlist[0].regions[j]->name);
    6668      char *filename = HOST_ID ? hostfile : outlist[0].filename[j];
    67 
    68       // get the stats on this input file (for comparison with the output headers)
    69       struct stat outstats;
    70       stat_result = stat (filename, &outstats);
    71       if (stat_result) {
    72         if (errno == ENOENT) {
    73           missed = TRUE;
    74           break;
    75         }
    76         fprintf (stderr, "cannot read stats on output file %s\n", filename);
    77         perror ("stats error message:");
    78         exit (2);
    79       }
    80 
    81       FILE *fout = fopen (filename, "r");
    82       if (!fout) {
    83         fprintf (stderr, "problem opening output file to read header %s\n", filename);
    84         perror ("stats error message:");
    85         exit (2);
    86       }
    87 
    88       Header outheader;
    89       if (!gfits_fread_header (fout, &outheader)) {
    90         fprintf (stderr, "problem reading header for output file %s\n", filename);
    91         exit (2);
    92       }
    93      
    94       fclose (fout);
    95 
    96       // XXX note that we are hardwired to v 2
    97       // check the header of output catalog for an existing merge
    98       long long last_size;
    99       char last_moddate[80];
    100       gfits_scan (&outheader, "LMRG_SZ2", "%lld", 1, &last_size);     
    101       gfits_scan (&outheader, "LMRG_DT2", "%s", 1, last_moddate);     
    102 
    103       time_t last_mod = ohana_date_to_sec (last_moddate);
    104 
    105       if (last_size != instats.st_size) {
    106         missed = TRUE;
    107         break;
    108       }
    109      
    110       if (last_mod != instats.st_mtime) {
    111         missed = TRUE;
    112         break;
    113       }
     69      outstat[j].filename = strcreate (filename);
     70
     71      outstat[j].history = dmhObjectRead (outstat[j].filename);
     72
     73      // have we already merged this database?
     74      outstat[j].missed = !dmhObjectCheck (outstat[j].history, inStats);
     75      missed = (missed || outstat[j].missed);
    11476    }
    11577    if (!missed) {
    116       fprintf (stderr, "skipping %s, already merged\n", inlist[0].filename[i]);
     78      if (VERBOSE) fprintf (stderr, "skipping %s, empty or already merged\n", inlist[0].filename[i]);
     79      OutputStatusFree (outstat, outlist->Nregions);
     80      dmhObjectStatsFree (inStats);
     81      SkyListFree (outlist);
    11782      continue;
    11883    }
     
    12590        dvo_catalog_unlock (&incatalog);
    12691        dvo_catalog_free (&incatalog);
     92        OutputStatusFree (outstat, outlist->Nregions);
     93        dmhObjectStatsFree (inStats);
    12794        SkyListFree (outlist);
    12895        continue;
    12996    }
    130 
    131     char *moddate = ohana_sec_to_date (instats.st_mtime);
    13297
    13398    // merge input into the appropriate output tables
    13499    for (j = 0; j < outlist[0].Nregions; j++) {
    135100      // skip tables for which the output files are not on this machine
    136       if (!HostTableTestHost(outlist[0].regions[j], HOST_ID)) continue;
     101      if (!outstat[j].valid) continue;
     102
     103      // skip if we have already done the merge
     104      if (!outstat[j].missed) continue;
    137105
    138106      if (VERBOSE) fprintf (stderr, "output : %s\n", outlist[0].regions[j][0].name);
    139107
    140       // set the parameters which guide catalog open/load/create
    141       char hostfile[DVO_MAX_PATH];
    142       snprintf (hostfile, DVO_MAX_PATH, "%s/%s.cpt", HOSTDIR, outlist[0].regions[j]->name);
    143       outcatalog.filename  = HOST_ID ? hostfile : outlist[0].filename[j];
     108      // the real filename
     109      outcatalog.filename = outstat[j].filename;
    144110
    145111      // load input catalog
     
    151117      outcatalog.catflags = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
    152118
    153 # if (0)
    154       // get the LMRG data from the previous pass
    155       long long last_size;
    156       char last_moddate[80];
    157       int status_size = gfits_scan (&outcatalog.header, "LMRG_SZ", "%lld", 1, &last_size);     
    158       int status_date = gfits_scan (&outcatalog.header, "LMRG_DT", "%s", 1, last_moddate);     
    159 
    160       // save the LMRG data from the previous pass
    161       if (status_size && status_date) {
    162         gfits_modify (&outcatalog.header, "LMRG_SZ1", "%lld", 1, (long long) last_size);     
    163         gfits_modify (&outcatalog.header, "LMRG_DT1", "%s", 1, last_moddate);     
    164       }
    165 
    166       // update header of output catalog
    167       gfits_modify (&outcatalog.header, "LMRG_SZ", "%lld", 1, (long long) instats.st_size);     
    168       gfits_modify (&outcatalog.header, "LMRG_DT", "%s", 1, moddate);     
    169 # endif
    170 
    171       // update header of output catalog
    172       // XXX note that we are hardwired to v 2
    173       gfits_modify (&outcatalog.header, "LMRG_SZ2", "%lld", 1, (long long) instats.st_size);     
    174       gfits_modify (&outcatalog.header, "LMRG_DT2", "%s", 1, moddate);     
     119      dmhObjectAdd (outstat[j].history, &outcatalog.header, inStats);
    175120
    176121      if (!dvo_catalog_backup (&outcatalog, TRUE)) {
     
    196141      fprintf (stderr, "merged %s into %s\n", inlist[0].regions[i][0].name, outlist[0].regions[j][0].name);
    197142    }
     143
     144    OutputStatusFree (outstat, outlist->Nregions);
    198145    SkyListFree (outlist);
    199     free (moddate);
     146    dmhObjectStatsFree (inStats);
    200147
    201148    dvo_catalog_unlock (&incatalog);
  • trunk/Ohana/src/dvomerge/src/dvoverify.c

    r34260 r34405  
    4242  }
    4343
     44  if (CHECK_IMAGE_ID) {
     45    LoadImageIDs (CATDIR);
     46  }
     47
    4448  // load the sky table for the existing database
    4549  sky = SkyTableLoadOptimal (CATDIR, NULL, NULL, FALSE, SKY_DEPTH_HST, VERBOSE);
  • trunk/Ohana/src/dvomerge/src/dvoverify_args.c

    r34260 r34405  
    5353  if ((N = get_argument (*argc, argv, "-skip-toplevel"))) {
    5454    CHECK_TOPLEVEL = FALSE;
     55    remove_argument (N, argc, argv);
     56  }
     57
     58  CHECK_IMAGE_ID = TRUE;
     59  if ((N = get_argument (*argc, argv, "-skip-image-ids"))) {
     60    CHECK_IMAGE_ID = FALSE;
    5561    remove_argument (N, argc, argv);
    5662  }
  • trunk/Ohana/src/dvomerge/src/dvoverify_catalogs.c

    r34260 r34405  
    100100
    101101    char tmpline[DVO_MAX_PATH];
    102     if (VERBOSE)      { snprintf (tmpline, DVO_MAX_PATH, "%s -v", command); strcpy (command, tmpline); }
    103     if (CHECKSORTED)  { snprintf (tmpline, DVO_MAX_PATH, "%s -s", command); strcpy (command, tmpline); }
    104     if (LIST_MISSING) { snprintf (tmpline, DVO_MAX_PATH, "%s -list-missing", command); strcpy (command, tmpline); }
     102    if (VERBOSE)         { snprintf (tmpline, DVO_MAX_PATH, "%s -v", command); strcpy (command, tmpline); }
     103    if (CHECKSORTED)     { snprintf (tmpline, DVO_MAX_PATH, "%s -s", command); strcpy (command, tmpline); }
     104    if (!CHECK_IMAGE_ID) { snprintf (tmpline, DVO_MAX_PATH, "%s -skip-image-ids", command); strcpy (command, tmpline); }
     105    if (LIST_MISSING)    { snprintf (tmpline, DVO_MAX_PATH, "%s -list-missing", command); strcpy (command, tmpline); }
    105106
    106107    fprintf (stderr, "command: %s\n", command);
  • trunk/Ohana/src/dvomerge/src/dvoverify_client.c

    r34260 r34405  
    1919  skylist = SkyListByPatch (sky, -1, &UserPatch);
    2020 
     21  if (CHECK_IMAGE_ID) {
     22    // XXX in client mode, we should be reading a reduced table generated by the calling
     23    // serial program
     24    LoadImageIDs (CATDIR);
     25  }
     26
    2127  dvoverify_catalogs (skylist, &Nbad);
    2228
  • trunk/Ohana/src/dvomerge/src/dvoverify_utils.c

    r34260 r34405  
    4949
    5050// is this file a consistent FITS file?
     51// note that VerifyTableFile only has to read the headers,
     52// not the data blocks (it uses stat for sizes)
    5153int VerifyTableFile (char *filename) {
    5254
     
    194196  // \sum average[].Nmeasure = Nmeasure
    195197
    196   // if the table is NOT SORTED, we have a subset of checks we can make
     198  // if the table is NOT SORTED, do we have a subset of checks we can make?
    197199  if (!catalog.sorted) {
    198200    fprintf (stderr, "!");
     
    231233  }
    232234
     235  // if we have a problem with Nmeasure and/or measureOffset values, we
     236  // cannot do any further check -- we risk segfaults
    233237  if (!status) {
    234238    dvo_catalog_unlock (&catalog);
     
    263267  }
    264268
    265 //  for (i = 0; i < catalog.Naverage; i++) {
    266 //    m = catalog.average[i].measureOffset;
    267 //    for (j = 0; i < catalog.Nmeasure; i++) {
    268 //      objIDsOK &= (catalog.average[i].objID == catalog.measure[m+j].objID);
    269 //      catIDsOK &= (catalog.average[i].catID == catalog.measure[m+j].catID);
    270 //      averefOK &= (catalog.measure[m+j].averef = i);
    271 //    }
    272 //  }
     269  // check the image ID here?
     270  if (CHECK_IMAGE_ID) {
     271    int Nfail = CheckImageID (&catalog);
     272    if (Nfail > 0) {
     273      fprintf (stderr, "ERROR: catalog %s has invalid %d unmatched image IDs\n", catalog.filename, Nfail);
     274      status = FALSE;
     275    }
     276  }
    273277
    274278  dvo_catalog_unlock (&catalog);
     
    278282}
    279283
    280 // gfits_scan(&cpmHeaderTBL, "NAXIS1", "%d", 1, &NbytesPerRow);
    281 // gfits_scan(&cpmHeaderTBL, "NAXIS2", "%d", 1, &Nrows);
    282    
     284static int maxID = 0;
     285static int *IDlist = NULL;
     286
     287// check that every measure->imageID (if set) matches an existing
     288// image->ID.  return the number of failures.
     289int CheckImageID (Catalog *catalog) {
     290
     291  off_t i, j, m, id;
     292  int Nfail = 0;
     293
     294  for (i = 0; i < catalog[0].Naverage; i++) {
     295    m = catalog[0].average[i].measureOffset;
     296    for (j = 0; j < catalog[0].average[i].Nmeasure; j++) {
     297      id = catalog[0].measure[m+j].imageID;
     298      if (id > maxID) {
     299        Nfail ++;
     300        continue;
     301        // is this sufficient to catch IDs set without an image table?
     302      }
     303      if (IDlist) {
     304        if (IDlist[id] < 0) {
     305          Nfail ++;
     306          continue;
     307        }
     308      } else {
     309        if (id > 0) {
     310          Nfail ++;
     311          continue;
     312        }
     313      }
     314    }
     315  }
     316  return Nfail;
     317}
     318
     319int LoadImageIDs (char *catdir) {
     320
     321  int status;
     322  off_t Nimages, i;
     323  Image *images;
     324  FITS_DB inDB;
     325
     326  char ImageCat[DVO_MAX_PATH];
     327  snprintf (ImageCat, DVO_MAX_PATH, "%s/Images.dat", catdir);
     328
     329  // load the iage database table
     330  status = dvo_image_lock (&inDB, ImageCat, 3600.0, LCK_SOFT);  // shorter timeout?
     331  if (!status) {
     332    fprintf (stderr, "ERROR: failure to lock image catalog %s", inDB.filename);
     333    exit (3);
     334  }
     335
     336  // load the image table
     337  if (inDB.dbstate == LCK_EMPTY) {
     338    dvo_image_unlock (&inDB); // unlock input
     339    // this is not an error: we can have no image table for, eg, 2MASS only db
     340    return TRUE;
     341  }
     342  if (!dvo_image_load (&inDB, VERBOSE, TRUE)) {
     343    fprintf (stderr, "can't read input image catalog %s", inDB.filename);
     344    exit (4);
     345  }
     346
     347  images = gfits_table_get_Image (&inDB.ftable, &Nimages, &inDB.swapped);
     348  if (!images) {
     349    fprintf (stderr, "ERROR: failed to read images from src\n");
     350    exit (2);
     351  }
     352
     353  // generate a lookup table for the images
    283354 
     355  // first, find the max imageID
     356  for (i = 0; i < Nimages; i++) {
     357    maxID = MAX(maxID, images[i].imageID);
     358  }
     359
     360  ALLOCATE (IDlist, int, maxID + 1);
     361  for (i = 0; i < maxID + 1; i++) {
     362    IDlist[i] = -1;
     363  }
     364
     365  for (i = 0; i < Nimages; i++) {
     366    int id = images[i].imageID;
     367    IDlist[id] = i;
     368  }
     369
     370  // free image table here?
     371  // (in the future, I'll have to do the image table read in segments
     372  // it is just getting to be too large...)
     373  dvo_image_unlock (&inDB); // unlock input
     374
     375  return TRUE;
     376}
  • trunk/Ohana/src/dvomerge/src/merge_catalogs_old.c

    r33963 r34405  
    320320    output[0].average[Nave].dP             = 0;
    321321
    322     output[0].average[Nave].Xp             = 0;
     322    output[0].average[Nave].stargal        = 0;
    323323    output[0].average[Nave].ChiSqAve       = 0.0;
    324324    output[0].average[Nave].ChiSqPM        = 0.0;
  • trunk/Ohana/src/dvomerge/test/catdir.grizy/Images.dat

    r24745 r34405  
    1 SIMPLE  =                    T /                                                BITPIX  =                    8 /                                                NAXIS   =                    0 /                                                PCOUNT  =                    0 /                                                GCOUNT  =                    1 /                                                BSCALE  =         1.0000000000 /                                                BZERO   =         0.0000000000 /                                                EXTEND  =                    T /                                                NIMAGES =                    0 /                                                ZERO_PT =        25.0000000000 /                                                FORMAT  = 'ELIXIR            ' /                                                END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             XTENSION= 'BINTABLE          ' /                                                BITPIX  =                    8 /                                                NAXIS   =                    2 /                                                NAXIS1  =                  240 /                                                NAXIS2  =                    0 /                                                PCOUNT  =                    0 /                                                GCOUNT  =                    1 /                                                TFIELDS =                   50 /                                                EXTNAME = 'DVO_IMAGE_ELIXIR  ' /                                                TTYPE1  = 'CRVAL1            ' / coordinate at reference pixel                  TUNIT1  = '                  ' /                                                TFORM1  = 'D                 ' /                                                TSCAL1  =         1.0000000000 /                                                TZERO1  =         0.0000000000 /                                                TTYPE2  = 'CRVAL2            ' / coordinate at reference pixel                  TUNIT2  = '                  ' /                                                TFORM2  = 'D                 ' /                                                TSCAL2  =         1.0000000000 /                                                TZERO2  =         0.0000000000 /                                                TTYPE3  = 'CRPIX1            ' / coordinate of reference pixel                  TUNIT3  = '                  ' /                                                TFORM3  = 'E                 ' /                                                TSCAL3  =         1.0000000000 /                                                TZERO3  =         0.0000000000 /                                                TTYPE4  = 'CRPIX2            ' / coordinate of reference pixel                  TUNIT4  = '                  ' /                                                TFORM4  = 'E                 ' /                                                TSCAL4  =         1.0000000000 /                                                TZERO4  =         0.0000000000 /                                                TTYPE5  = 'CDELT1            ' / degrees per pixel                              TUNIT5  = '                  ' /                                                TFORM5  = 'E                 ' /                                                TSCAL5  =         1.0000000000 /                                                TZERO5  =         0.0000000000 /                                                TTYPE6  = 'CDELT2            ' / degrees per pixel                              TUNIT6  = '                  ' /                                                TFORM6  = 'E                 ' /                                                TSCAL6  =         1.0000000000 /                                                TZERO6  =         0.0000000000 /                                                TTYPE7  = 'PC1_1             ' / rotation matrix                                TUNIT7  = '                  ' /                                                TFORM7  = 'E                 ' /                                                TSCAL7  =         1.0000000000 /                                                TZERO7  =         0.0000000000 /                                                TTYPE8  = 'PC1_2             ' / rotation matrix                                TUNIT8  = '                  ' /                                                TFORM8  = 'E                 ' /                                                TSCAL8  =         1.0000000000 /                                                TZERO8  =         0.0000000000 /                                                TTYPE9  = 'PC2_1             ' / rotation matrix                                TUNIT9  = '                  ' /                                                TFORM9  = 'E                 ' /                                                TSCAL9  =         1.0000000000 /                                                TZERO9  =         0.0000000000 /                                                TTYPE10 = 'PC2_2             ' / rotation matrix                                TUNIT10 = '                  ' /                                                TFORM10 = 'E                 ' /                                                TSCAL10 =         1.0000000000 /                                                TZERO10 =         0.0000000000 /                                                TTYPE11 = 'POLYTERMS         ' / higher order warping terms                     TUNIT11 = '                  ' /                                                TFORM11 = '14E               ' /                                                TSCAL11 =         1.0000000000 /                                                TZERO11 =         0.0000000000 /                                                TTYPE12 = 'CTYPE             ' / coordinate type                                TUNIT12 = '                  ' /                                                TFORM12 = '15A               ' /                                                TSCAL12 =         1.0000000000 /                                                TZERO12 =         0.0000000000 /                                                TTYPE13 = 'NPOLYTERMS        ' / order of polynomial                            TUNIT13 = '                  ' /                                                TFORM13 = 'A                 ' /                                                TSCAL13 =         1.0000000000 /                                                TZERO13 =         0.0000000000 /                                                TTYPE14 = 'TZERO             ' / readout time (row 0)                           TUNIT14 = '                  ' /                                                TFORM14 = 'J                 ' /                                                TSCAL14 =         1.0000000000 /                                                TZERO14 =         0.0000000000 /                                                TTYPE15 = 'NSTAR             ' / number of stars on image                       TUNIT15 = '                  ' /                                                TFORM15 = 'J                 ' /                                                TSCAL15 =         1.0000000000 /                                                TZERO15 =         0.0000000000 /                                                TTYPE16 = 'SECZ              ' / airmass                                        TUNIT16 = 'milliairmass      ' /                                                TFORM16 = 'I                 ' /                                                TSCAL16 =         1.0000000000 /                                                TZERO16 =         0.0000000000 /                                                TTYPE17 = 'NX                ' / image width                                    TUNIT17 = '                  ' /                                                TFORM17 = 'I                 ' /                                                TSCAL17 =         1.0000000000 /                                                TZERO17 =         0.0000000000 /                                                TTYPE18 = 'NY                ' / image height                                   TUNIT18 = '                  ' /                                                TFORM18 = 'I                 ' /                                                TSCAL18 =         1.0000000000 /                                                TZERO18 =         0.0000000000 /                                                TTYPE19 = 'APMIFIT           ' / aperture correction                            TUNIT19 = 'millimag          ' /                                                TFORM19 = 'I                 ' /                                                TSCAL19 =         1.0000000000 /                                                TZERO19 =         0.0000000000 /                                                TTYPE20 = 'DAPMIFIT          ' / apmifit error                                  TUNIT20 = 'millimag          ' /                                                TFORM20 = 'I                 ' /                                                TSCAL20 =         1.0000000000 /                                                TZERO20 =         0.0000000000 /                                                TTYPE21 = 'SOURCE            ' / identifier for CCD,                            TUNIT21 = '                  ' /                                                TFORM21 = 'I                 ' /                                                TSCAL21 =         1.0000000000 /                                                TZERO21 =         0.0000000000 /                                                TTYPE22 = 'MCAL              ' / calibration mag                                TUNIT22 = 'millimag          ' /                                                TFORM22 = 'I                 ' /                                                TSCAL22 =         1.0000000000 /                                                TZERO22 =         0.0000000000 /                                                TTYPE23 = 'DMCAL             ' / error on Mcal                                  TUNIT23 = 'millimag          ' /                                                TFORM23 = 'I                 ' /                                                TSCAL23 =         1.0000000000 /                                                TZERO23 =         0.0000000000 /                                                TTYPE24 = 'XM                ' / image chisq                                    TUNIT24 = '10*log(value)     ' /                                                TFORM24 = 'I                 ' /                                                TSCAL24 =         1.0000000000 /                                                TZERO24 =         0.0000000000 /                                                TTYPE25 = 'NAME              ' / name of original image                         TUNIT25 = '                  ' /                                                TFORM25 = '32A               ' /                                                TSCAL25 =         1.0000000000 /                                                TZERO25 =         0.0000000000 /                                                TTYPE26 = 'DETECTION_LIMIT   ' / detection limit                                TUNIT26 = '10*mag            ' /                                                TFORM26 = 'B                 ' /                                                TSCAL26 =         1.0000000000 /                                                TZERO26 =         0.0000000000 /                                                TTYPE27 = 'SATURATION_LIMIT  ' / saturation limit                               TUNIT27 = '10*mag            ' /                                                TFORM27 = 'B                 ' /                                                TSCAL27 =         1.0000000000 /                                                TZERO27 =         0.0000000000 /                                                TTYPE28 = 'CERROR            ' / astrometric error                              TUNIT28 = '50*arcsec         ' /                                                TFORM28 = 'B                 ' /                                                TSCAL28 =         1.0000000000 /                                                TZERO28 =         0.0000000000 /                                                TTYPE29 = 'FWHM_X            ' / PSF x width                                    TUNIT29 = '25*arcsec         ' /                                                TFORM29 = 'B                 ' /                                                TSCAL29 =         1.0000000000 /                                                TZERO29 =         0.0000000000 /                                                TTYPE30 = 'FWHM_Y            ' / PSF y width                                    TUNIT30 = '25*arcsec         ' /                                                TFORM30 = 'B                 ' /                                                TSCAL30 =         1.0000000000 /                                                TZERO30 =         0.0000000000 /                                                TTYPE31 = 'TRATE             ' / scan rate                                      TUNIT31 = '100 usec/pixel    ' /                                                TFORM31 = 'B                 ' /                                                TSCAL31 =         1.0000000000 /                                                TZERO31 =         0.0000000000 /                                                TTYPE32 = 'EXPTIME           ' / exposure time                                  TUNIT32 = 'seconds           ' /                                                TFORM32 = 'E                 ' /                                                TSCAL32 =         1.0000000000 /                                                TZERO32 =         0.0000000000 /                                                TTYPE33 = 'CODE              ' / image quality flag                             TUNIT33 = '                  ' /                                                TFORM33 = 'A                 ' /                                                TSCAL33 =         1.0000000000 /                                                TZERO33 =         0.0000000000 /                                                TTYPE34 = 'CCDNUM            ' / CCD ID number                                  TUNIT34 = '                  ' /                                                TFORM34 = 'B                 ' /                                                TSCAL34 =         1.0000000000 /                                                TZERO34 =         0.0000000000 /                                                TTYPE35 = 'DUMMY             ' / unused                                         TUNIT35 = '                  ' /                                                TFORM35 = '20A               ' /                                                TSCAL35 =         1.0000000000 /                                                TZERO35 =         0.0000000000 /                                                TTYPE36 = 'ORDER             ' / Mrel 2D polynomical order                      TUNIT36 = '                  ' /                                                TFORM36 = 'I                 ' /                                                TSCAL36 =         1.0000000000 /                                                TZERO36 =         0.0000000000 /                                                TTYPE37 = 'MX                ' / Mrel polyterm                                  TUNIT37 = '                  ' /                                                TFORM37 = 'I                 ' /                                                TSCAL37 =         1.0000000000 /                                                TZERO37 =         0.0000000000 /                                                TTYPE38 = 'MY                ' / Mrel polyterm                                  TUNIT38 = '                  ' /                                                TFORM38 = 'I                 ' /                                                TSCAL38 =         1.0000000000 /                                                TZERO38 =         0.0000000000 /                                                TTYPE39 = 'MXX               ' / Mrel polyterm                                  TUNIT39 = '                  ' /                                                TFORM39 = 'I                 ' /                                                TSCAL39 =         1.0000000000 /                                                TZERO39 =         0.0000000000 /                                                TTYPE40 = 'MXY               ' / Mrel polyterm                                  TUNIT40 = '                  ' /                                                TFORM40 = 'I                 ' /                                                TSCAL40 =         1.0000000000 /                                                TZERO40 =         0.0000000000 /                                                TTYPE41 = 'MYY               ' / Mrel polyterm                                  TUNIT41 = '                  ' /                                                TFORM41 = 'I                 ' /                                                TSCAL41 =         1.0000000000 /                                                TZERO41 =         0.0000000000 /                                                TTYPE42 = 'MXXX              ' / Mrel polyterm                                  TUNIT42 = '                  ' /                                                TFORM42 = 'I                 ' /                                                TSCAL42 =         1.0000000000 /                                                TZERO42 =         0.0000000000 /                                                TTYPE43 = 'MXXY              ' / Mrel polyterm                                  TUNIT43 = '                  ' /                                                TFORM43 = 'I                 ' /                                                TSCAL43 =         1.0000000000 /                                                TZERO43 =         0.0000000000 /                                                TTYPE44 = 'MXYY              ' / Mrel polyterm                                  TUNIT44 = '                  ' /                                                TFORM44 = 'I                 ' /                                                TSCAL44 =         1.0000000000 /                                                TZERO44 =         0.0000000000 /                                                TTYPE45 = 'MYYY              ' / Mrel polyterm                                  TUNIT45 = '                  ' /                                                TFORM45 = 'I                 ' /                                                TSCAL45 =         1.0000000000 /                                                TZERO45 =         0.0000000000 /                                                TTYPE46 = 'MXXXX             ' / Mrel polyterm                                  TUNIT46 = '                  ' /                                                TFORM46 = 'I                 ' /                                                TSCAL46 =         1.0000000000 /                                                TZERO46 =         0.0000000000 /                                                TTYPE47 = 'MXXXY             ' / Mrel polyterm                                  TUNIT47 = '                  ' /                                                TFORM47 = 'I                 ' /                                                TSCAL47 =         1.0000000000 /                                                TZERO47 =         0.0000000000 /                                                TTYPE48 = 'MXXYY             ' / Mrel polyterm                                  TUNIT48 = '                  ' /                                                TFORM48 = 'I                 ' /                                                TSCAL48 =         1.0000000000 /                                                TZERO48 =         0.0000000000 /                                                TTYPE49 = 'MXYYY             ' / Mrel polyterm                                  TUNIT49 = '                  ' /                                                TFORM49 = 'I                 ' /                                                TSCAL49 =         1.0000000000 /                                                TZERO49 =         0.0000000000 /                                                TTYPE50 = 'MYYYY             ' / Mrel polyterm                                  TUNIT50 = '                  ' /                                                TFORM50 = 'I                 ' /                                                TSCAL50 =         1.0000000000 /                                                TZERO50 =         0.0000000000 /                                                END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
     1SIMPLE  =                    T /                                                BITPIX  =                    8 /                                                NAXIS   =                    0 /                                                PCOUNT  =                    0 /                                                GCOUNT  =                    1 /                                                BSCALE  =         1.0000000000 /                                                BZERO   =         0.0000000000 /                                                EXTEND  =                    T /                                                NIMAGES =                    0 /                                                ZERO_PT =        25.0000000000 /                                                FORMAT  = 'ELIXIR            ' /                                                DVO_DBID= 'c2fa2cdbac0df952ae954ed04381e219' /                                  END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             XTENSION= 'BINTABLE          ' /                                                BITPIX  =                    8 /                                                NAXIS   =                    2 /                                                NAXIS1  =                  240 /                                                NAXIS2  =                    0 /                                                PCOUNT  =                    0 /                                                GCOUNT  =                    1 /                                                TFIELDS =                   50 /                                                EXTNAME = 'DVO_IMAGE_ELIXIR  ' /                                                TTYPE1  = 'CRVAL1            ' / coordinate at reference pixel                  TUNIT1  = '                  ' /                                                TFORM1  = 'D                 ' /                                                TSCAL1  =         1.0000000000 /                                                TZERO1  =         0.0000000000 /                                                TTYPE2  = 'CRVAL2            ' / coordinate at reference pixel                  TUNIT2  = '                  ' /                                                TFORM2  = 'D                 ' /                                                TSCAL2  =         1.0000000000 /                                                TZERO2  =         0.0000000000 /                                                TTYPE3  = 'CRPIX1            ' / coordinate of reference pixel                  TUNIT3  = '                  ' /                                                TFORM3  = 'E                 ' /                                                TSCAL3  =         1.0000000000 /                                                TZERO3  =         0.0000000000 /                                                TTYPE4  = 'CRPIX2            ' / coordinate of reference pixel                  TUNIT4  = '                  ' /                                                TFORM4  = 'E                 ' /                                                TSCAL4  =         1.0000000000 /                                                TZERO4  =         0.0000000000 /                                                TTYPE5  = 'CDELT1            ' / degrees per pixel                              TUNIT5  = '                  ' /                                                TFORM5  = 'E                 ' /                                                TSCAL5  =         1.0000000000 /                                                TZERO5  =         0.0000000000 /                                                TTYPE6  = 'CDELT2            ' / degrees per pixel                              TUNIT6  = '                  ' /                                                TFORM6  = 'E                 ' /                                                TSCAL6  =         1.0000000000 /                                                TZERO6  =         0.0000000000 /                                                TTYPE7  = 'PC1_1             ' / rotation matrix                                TUNIT7  = '                  ' /                                                TFORM7  = 'E                 ' /                                                TSCAL7  =         1.0000000000 /                                                TZERO7  =         0.0000000000 /                                                TTYPE8  = 'PC1_2             ' / rotation matrix                                TUNIT8  = '                  ' /                                                TFORM8  = 'E                 ' /                                                TSCAL8  =         1.0000000000 /                                                TZERO8  =         0.0000000000 /                                                TTYPE9  = 'PC2_1             ' / rotation matrix                                TUNIT9  = '                  ' /                                                TFORM9  = 'E                 ' /                                                TSCAL9  =         1.0000000000 /                                                TZERO9  =         0.0000000000 /                                                TTYPE10 = 'PC2_2             ' / rotation matrix                                TUNIT10 = '                  ' /                                                TFORM10 = 'E                 ' /                                                TSCAL10 =         1.0000000000 /                                                TZERO10 =         0.0000000000 /                                                TTYPE11 = 'POLYTERMS         ' / higher order warping terms                     TUNIT11 = '                  ' /                                                TFORM11 = '14E               ' /                                                TSCAL11 =         1.0000000000 /                                                TZERO11 =         0.0000000000 /                                                TTYPE12 = 'CTYPE             ' / coordinate type                                TUNIT12 = '                  ' /                                                TFORM12 = '15A               ' /                                                TSCAL12 =         1.0000000000 /                                                TZERO12 =         0.0000000000 /                                                TTYPE13 = 'NPOLYTERMS        ' / order of polynomial                            TUNIT13 = '                  ' /                                                TFORM13 = 'A                 ' /                                                TSCAL13 =         1.0000000000 /                                                TZERO13 =         0.0000000000 /                                                TTYPE14 = 'TZERO             ' / readout time (row 0)                           TUNIT14 = '                  ' /                                                TFORM14 = 'J                 ' /                                                TSCAL14 =         1.0000000000 /                                                TZERO14 =         0.0000000000 /                                                TTYPE15 = 'NSTAR             ' / number of stars on image                       TUNIT15 = '                  ' /                                                TFORM15 = 'J                 ' /                                                TSCAL15 =         1.0000000000 /                                                TZERO15 =         0.0000000000 /                                                TTYPE16 = 'SECZ              ' / airmass                                        TUNIT16 = 'milliairmass      ' /                                                TFORM16 = 'I                 ' /                                                TSCAL16 =         1.0000000000 /                                                TZERO16 =         0.0000000000 /                                                TTYPE17 = 'NX                ' / image width                                    TUNIT17 = '                  ' /                                                TFORM17 = 'I                 ' /                                                TSCAL17 =         1.0000000000 /                                                TZERO17 =         0.0000000000 /                                                TTYPE18 = 'NY                ' / image height                                   TUNIT18 = '                  ' /                                                TFORM18 = 'I                 ' /                                                TSCAL18 =         1.0000000000 /                                                TZERO18 =         0.0000000000 /                                                TTYPE19 = 'APMIFIT           ' / aperture correction                            TUNIT19 = 'millimag          ' /                                                TFORM19 = 'I                 ' /                                                TSCAL19 =         1.0000000000 /                                                TZERO19 =         0.0000000000 /                                                TTYPE20 = 'DAPMIFIT          ' / apmifit error                                  TUNIT20 = 'millimag          ' /                                                TFORM20 = 'I                 ' /                                                TSCAL20 =         1.0000000000 /                                                TZERO20 =         0.0000000000 /                                                TTYPE21 = 'SOURCE            ' / identifier for CCD,                            TUNIT21 = '                  ' /                                                TFORM21 = 'I                 ' /                                                TSCAL21 =         1.0000000000 /                                                TZERO21 =         0.0000000000 /                                                TTYPE22 = 'MCAL              ' / calibration mag                                TUNIT22 = 'millimag          ' /                                                TFORM22 = 'I                 ' /                                                TSCAL22 =         1.0000000000 /                                                TZERO22 =         0.0000000000 /                                                TTYPE23 = 'DMCAL             ' / error on Mcal                                  TUNIT23 = 'millimag          ' /                                                TFORM23 = 'I                 ' /                                                TSCAL23 =         1.0000000000 /                                                TZERO23 =         0.0000000000 /                                                TTYPE24 = 'XM                ' / image chisq                                    TUNIT24 = '10*log(value)     ' /                                                TFORM24 = 'I                 ' /                                                TSCAL24 =         1.0000000000 /                                                TZERO24 =         0.0000000000 /                                                TTYPE25 = 'NAME              ' / name of original image                         TUNIT25 = '                  ' /                                                TFORM25 = '32A               ' /                                                TSCAL25 =         1.0000000000 /                                                TZERO25 =         0.0000000000 /                                                TTYPE26 = 'DETECTION_LIMIT   ' / detection limit                                TUNIT26 = '10*mag            ' /                                                TFORM26 = 'B                 ' /                                                TSCAL26 =         1.0000000000 /                                                TZERO26 =         0.0000000000 /                                                TTYPE27 = 'SATURATION_LIMIT  ' / saturation limit                               TUNIT27 = '10*mag            ' /                                                TFORM27 = 'B                 ' /                                                TSCAL27 =         1.0000000000 /                                                TZERO27 =         0.0000000000 /                                                TTYPE28 = 'CERROR            ' / astrometric error                              TUNIT28 = '50*arcsec         ' /                                                TFORM28 = 'B                 ' /                                                TSCAL28 =         1.0000000000 /                                                TZERO28 =         0.0000000000 /                                                TTYPE29 = 'FWHM_X            ' / PSF x width                                    TUNIT29 = '25*arcsec         ' /                                                TFORM29 = 'B                 ' /                                                TSCAL29 =         1.0000000000 /                                                TZERO29 =         0.0000000000 /                                                TTYPE30 = 'FWHM_Y            ' / PSF y width                                    TUNIT30 = '25*arcsec         ' /                                                TFORM30 = 'B                 ' /                                                TSCAL30 =         1.0000000000 /                                                TZERO30 =         0.0000000000 /                                                TTYPE31 = 'TRATE             ' / scan rate                                      TUNIT31 = '100 usec/pixel    ' /                                                TFORM31 = 'B                 ' /                                                TSCAL31 =         1.0000000000 /                                                TZERO31 =         0.0000000000 /                                                TTYPE32 = 'EXPTIME           ' / exposure time                                  TUNIT32 = 'seconds           ' /                                                TFORM32 = 'E                 ' /                                                TSCAL32 =         1.0000000000 /                                                TZERO32 =         0.0000000000 /                                                TTYPE33 = 'CODE              ' / image quality flag                             TUNIT33 = '                  ' /                                                TFORM33 = 'A                 ' /                                                TSCAL33 =         1.0000000000 /                                                TZERO33 =         0.0000000000 /                                                TTYPE34 = 'CCDNUM            ' / CCD ID number                                  TUNIT34 = '                  ' /                                                TFORM34 = 'B                 ' /                                                TSCAL34 =         1.0000000000 /                                                TZERO34 =         0.0000000000 /                                                TTYPE35 = 'DUMMY             ' / unused                                         TUNIT35 = '                  ' /                                                TFORM35 = '20A               ' /                                                TSCAL35 =         1.0000000000 /                                                TZERO35 =         0.0000000000 /                                                TTYPE36 = 'ORDER             ' / Mrel 2D polynomical order                      TUNIT36 = '                  ' /                                                TFORM36 = 'I                 ' /                                                TSCAL36 =         1.0000000000 /                                                TZERO36 =         0.0000000000 /                                                TTYPE37 = 'MX                ' / Mrel polyterm                                  TUNIT37 = '                  ' /                                                TFORM37 = 'I                 ' /                                                TSCAL37 =         1.0000000000 /                                                TZERO37 =         0.0000000000 /                                                TTYPE38 = 'MY                ' / Mrel polyterm                                  TUNIT38 = '                  ' /                                                TFORM38 = 'I                 ' /                                                TSCAL38 =         1.0000000000 /                                                TZERO38 =         0.0000000000 /                                                TTYPE39 = 'MXX               ' / Mrel polyterm                                  TUNIT39 = '                  ' /                                                TFORM39 = 'I                 ' /                                                TSCAL39 =         1.0000000000 /                                                TZERO39 =         0.0000000000 /                                                TTYPE40 = 'MXY               ' / Mrel polyterm                                  TUNIT40 = '                  ' /                                                TFORM40 = 'I                 ' /                                                TSCAL40 =         1.0000000000 /                                                TZERO40 =         0.0000000000 /                                                TTYPE41 = 'MYY               ' / Mrel polyterm                                  TUNIT41 = '                  ' /                                                TFORM41 = 'I                 ' /                                                TSCAL41 =         1.0000000000 /                                                TZERO41 =         0.0000000000 /                                                TTYPE42 = 'MXXX              ' / Mrel polyterm                                  TUNIT42 = '                  ' /                                                TFORM42 = 'I                 ' /                                                TSCAL42 =         1.0000000000 /                                                TZERO42 =         0.0000000000 /                                                TTYPE43 = 'MXXY              ' / Mrel polyterm                                  TUNIT43 = '                  ' /                                                TFORM43 = 'I                 ' /                                                TSCAL43 =         1.0000000000 /                                                TZERO43 =         0.0000000000 /                                                TTYPE44 = 'MXYY              ' / Mrel polyterm                                  TUNIT44 = '                  ' /                                                TFORM44 = 'I                 ' /                                                TSCAL44 =         1.0000000000 /                                                TZERO44 =         0.0000000000 /                                                TTYPE45 = 'MYYY              ' / Mrel polyterm                                  TUNIT45 = '                  ' /                                                TFORM45 = 'I                 ' /                                                TSCAL45 =         1.0000000000 /                                                TZERO45 =         0.0000000000 /                                                TTYPE46 = 'MXXXX             ' / Mrel polyterm                                  TUNIT46 = '                  ' /                                                TFORM46 = 'I                 ' /                                                TSCAL46 =         1.0000000000 /                                                TZERO46 =         0.0000000000 /                                                TTYPE47 = 'MXXXY             ' / Mrel polyterm                                  TUNIT47 = '                  ' /                                                TFORM47 = 'I                 ' /                                                TSCAL47 =         1.0000000000 /                                                TZERO47 =         0.0000000000 /                                                TTYPE48 = 'MXXYY             ' / Mrel polyterm                                  TUNIT48 = '                  ' /                                                TFORM48 = 'I                 ' /                                                TSCAL48 =         1.0000000000 /                                                TZERO48 =         0.0000000000 /                                                TTYPE49 = 'MXYYY             ' / Mrel polyterm                                  TUNIT49 = '                  ' /                                                TFORM49 = 'I                 ' /                                                TSCAL49 =         1.0000000000 /                                                TZERO49 =         0.0000000000 /                                                TTYPE50 = 'MYYYY             ' / Mrel polyterm                                  TUNIT50 = '                  ' /                                                TFORM50 = 'I                 ' /                                                TSCAL50 =         1.0000000000 /                                                TZERO50 =         0.0000000000 /                                                END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
Note: See TracChangeset for help on using the changeset viewer.