Index: /branches/eam_branches/ohana.20190329/src/addstar/Makefile
===================================================================
--- /branches/eam_branches/ohana.20190329/src/addstar/Makefile	(revision 40887)
+++ /branches/eam_branches/ohana.20190329/src/addstar/Makefile	(revision 40888)
@@ -318,4 +318,5 @@
 $(SRC)/loadukirt_uhs_readstars_uhs.$(ARCH).o \
 $(SRC)/loadukirt_uhs_readstars_ugcs.$(ARCH).o \
+$(SRC)/loadukirt_uhs_readstars_ulas.$(ARCH).o \
 $(SRC)/loadukirt_uhs_table.$(ARCH).o \
 $(SRC)/parse_csv.$(ARCH).o \
Index: /branches/eam_branches/ohana.20190329/src/addstar/include/ukirt_uhs.h
===================================================================
--- /branches/eam_branches/ohana.20190329/src/addstar/include/ukirt_uhs.h	(revision 40887)
+++ /branches/eam_branches/ohana.20190329/src/addstar/include/ukirt_uhs.h	(revision 40888)
@@ -1,4 +1,4 @@
 
-typedef enum {UKIRT_MODE_NONE, UKIRT_MODE_UHS, UKIRT_MODE_UGCS} UkirtMode;
+typedef enum {UKIRT_MODE_NONE, UKIRT_MODE_UHS, UKIRT_MODE_UGCS, UKIRT_MODE_ULAS} UkirtMode;
 
 # define NSTARS_MAX 10000000
@@ -51,4 +51,5 @@
 
 UKIRT_Stars *loadukirt_uhs_readstars_ugcs (FILE *f, char *buffer, int *nstart, AddstarClientOptions *options, int *nstars);
+UKIRT_Stars *loadukirt_uhs_readstars_ulas (FILE *f, char *buffer, int *nstart, AddstarClientOptions *options, int *nstars);
 UKIRT_Stars *loadukirt_uhs_readstars_uhs (FILE *f, char *buffer, int *nstart, AddstarClientOptions *options, int *nstars);
 
Index: /branches/eam_branches/ohana.20190329/src/addstar/src/args_loadukirt_uhs.c
===================================================================
--- /branches/eam_branches/ohana.20190329/src/addstar/src/args_loadukirt_uhs.c	(revision 40887)
+++ /branches/eam_branches/ohana.20190329/src/addstar/src/args_loadukirt_uhs.c	(revision 40888)
@@ -24,4 +24,9 @@
     UKIRT_MODE = UKIRT_MODE_UGCS;
     UKIRT_NFILTER = 6;
+    remove_argument (N, argc, argv);
+  }
+  if ((N = get_argument (*argc, argv, "-ulas"))) {
+    UKIRT_MODE = UKIRT_MODE_ULAS;
+    UKIRT_NFILTER = 5;
     remove_argument (N, argc, argv);
   }
Index: /branches/eam_branches/ohana.20190329/src/addstar/src/loadukirt_uhs_readstars.c
===================================================================
--- /branches/eam_branches/ohana.20190329/src/addstar/src/loadukirt_uhs_readstars.c	(revision 40887)
+++ /branches/eam_branches/ohana.20190329/src/addstar/src/loadukirt_uhs_readstars.c	(revision 40888)
@@ -12,4 +12,9 @@
     case UKIRT_MODE_UGCS: {
       UKIRT_Stars *stars = loadukirt_uhs_readstars_ugcs (f, buffer, nstart, options, nstars);
+      return stars;
+    }
+      
+    case UKIRT_MODE_ULAS: {
+      UKIRT_Stars *stars = loadukirt_uhs_readstars_ulas (f, buffer, nstart, options, nstars);
       return stars;
     }
Index: /branches/eam_branches/ohana.20190329/src/addstar/src/loadukirt_uhs_readstars_ulas.c
===================================================================
--- /branches/eam_branches/ohana.20190329/src/addstar/src/loadukirt_uhs_readstars_ulas.c	(revision 40887)
+++ /branches/eam_branches/ohana.20190329/src/addstar/src/loadukirt_uhs_readstars_ulas.c	(revision 40888)
@@ -10,160 +10,158 @@
 
   1 sourceID                  : extID
-  2 cuEventID		      : 
-  3 frameSetID		      : imageID (assumes we do not try to go backwards for these photcodes)
-  4 ra			      : R
-  5 dec	  		      : D
-  6 sigRa		      : 
-  7 sigDec		      : 
-  8 epoch 		      : t ???? -- how is there a single epoch?
-  9 muRa 		      : 
- 10 muDec		      : 
- 11 sigMuRa 		      : 
- 12 sigMuDec 		      : 
- 13 chi2 		      : 
- 14 nFrames 		      : 
- 15 cx			      : 
- 16 cy			      : 
- 17 cz			      : 
- 18 htmID		      : 
- 19 l			      : 
- 20 b			      : 
- 21 lambda		      : 
- 22 eta			      : 
- 23 priOrSec		      : primary bit in dbFlags
- 24 ymj_1Pnt 	              :
- 25 ymj_1PntErr	              :
- 26 j_1mhPnt	              :
- 27 j_1mhPntErr	              :
- 28 hmkPnt	              :
- 29 hmkPntErr	              :
- 30 ymj_1Ext 	              :
- 31 ymj_1ExtErr	              :
- 32 j_1mhExt 	              :
- 33 j_1mhExtErr	              :
- 34 hmkExt                    :
- 35 hmkExtErr                 :
- 36 mergedClassStat	      : 
- 37 mergedClass		      : psfQFperf or photFlags2
- 38 pStar		      : psfChisq
- 39 pGalaxy		      : extNsigma
- 40 pNoise		      : 
- 41 pSaturated		      : 
- 42 eBV		              : 
- 43 aY		              : 
- 44 yHallMag		      : M
- 45 yHallMagErr		      : dM
- 46 yPetroMag		      : 
- 47 yPetroMagErr	      : 
- 48 yAperMag3		      : Map
- 49 yAperMag3Err	      : dMap
- 50 yAperMag4		      : Mkron
- 51 yAperMag4Err	      : dMron
- 52 yAperMag6		      : 
- 53 yAperMag6Err	      : 
- 54 yGausig		      : 
- 55 yEll		      : 
- 56 yPA			      : posangle
- 57 yErrBits		      : 
- 58 yDeblend		      : 
- 59 yClass		      : psfQF
- 60 yClassStat		      : 
- 61 yppErrBits		      : photFlags
- 62 ySeqNum                   : detID
- 63 yObjID		      : 
- 64 yXi   		      : 
- 65 yEta		      : 
- 66 aJ_1
- 67 j_1HallMag		      : M
- 68 j_1HallMagErr	      : dM
- 69 j_1PetroMag		      : 
- 70 j_1PetroMagErr	      : 
- 71 j_1AperMag3		      : Map
- 72 j_1AperMag3Err	      : dMap
- 73 j_1AperMag4		      : Mkron
- 74 j_1AperMag4Err	      : dMron
- 75 j_1AperMag6		      : 
- 76 j_1AperMag6Err	      : 
- 77 j_1Gausig		      : 
- 78 j_1Ell		      : 
- 79 j_1PA		      : posangle
- 80 j_1ErrBits		      : 
- 81 j_1Deblend		      : 
- 82 j_1Class		      : psfQF
- 83 j_1ClassStat	      : 
- 84 j_1ppErrBits	      : photFlags
- 85 j_1SeqNum                 : detID
- 86 j_1ObjID		      : 
- 87 j_1Xi   		      : 
- 88 j_1Eta		      : 
- 89 aJ_2
- 90 j_2HallMag		      : M
- 91 j_2HallMagErr	      : dM
- 92 j_2PetroMag		      : 
- 93 j_2PetroMagErr	      : 
- 94 j_2AperMag3		      : Map
- 95 j_2AperMag3Err	      : dMap
- 96 j_2AperMag4		      : Mkron
- 97 j_2AperMag4Err	      : dMron
- 98 j_2AperMag6		      : 
- 99 j_2AperMag6Err	      : 
- 00 j_2Gausig		      : 
- 01 j_2Ell		      : 
- 02 j_2PA		      : posangle
- 03 j_2ErrBits		      : 
- 04 j_2Deblend		      : 
- 05 j_2Class		      : psfQF
- 06 j_2ClassStat	      : 
- 07 j_2ppErrBits	      : photFlags
- 08 j_2SeqNum                 : detID
- 09 j_2ObjID		      : 
- 10 j_2Xi   		      : 
- 11 j_2Eta		      : 
- 12 aH
- 13 hHallMag		      : M
- 14 hHallMagErr		      : dM
- 15 hPetroMag		      : 
- 16 hPetroMagErr	      : 
- 17 hAperMag3		      : Map
- 18 hAperMag3Err	      : dMap
- 19 hAperMag4		      : Mkron
- 20 hAperMag4Err	      : dMron
- 21 hAperMag6		      : 
- 22 hAperMag6Err	      : 
- 23 hGausig		      : 
- 24 hEll		      : 
- 25 hPA			      : posangle
- 26 hErrBits		      : 
- 27 hDeblend		      : 
- 28 hClass		      : psfQF
- 29 hClassStat		      : 
- 30 hppErrBits		      : photFlags
- 31 hSeqNum                   : detID
- 32 hObjID		      : 
- 33 hXi   		      : 
- 34 hEta		      : 
- 35 aK
- 36 kHallMag		      : M
- 37 kHallMagErr	      : dM
- 38 kPetroMag		      : 
- 39 kPetroMagErr	      : 
- 40 kAperMag3		      : Map
- 41 kAperMag3Err	      : dMap
- 42 kAperMag4		      : Mkron
- 43 kAperMag4Err	      : dMron
- 44 kAperMag6		      : 
- 45 kAperMag6Err	      : 
- 46 kGausig		      : 
- 47 kEll		      : 
- 48 kPA		      : posangle
- 59 kErrBits		      : 
- 50 kDeblend		      : 
- 51 kClass		      : psfQF
- 52 kClassStat	      : 
- 53 kppErrBits	      : photFlags
- 54 kSeqNum                 : detID
- 55 kObjID		      : 
- 56 kXi   		      : 
- 57 kEta		      : 
+  2 frameSetID		      : imageID (assumes we do not try to go backwards for these photcodes)
+  3 ra			      : R
+  4 dec	  		      : D
+  5 sigRa		      : 
+  6 sigDec		      : 
+  7 epoch 		      : t ???? -- how is there a single epoch?
+  8 muRa 		      : 
+  9 muDec		      : 
+ 10 sigMuRa 		      : 
+ 11 sigMuDec 		      : 
+ 12 chi2 		      : 
+ 13 nFrames 		      : 
+ 14 cx			      : 
+ 15 cy			      : 
+ 16 cz			      : 
+ 17 htmID		      : 
+ 18 l			      : 
+ 19 b			      : 
+ 20 lambda		      : 
+ 21 eta			      : 
+ 22 priOrSec		      : primary bit in dbFlags
+ 23 ymj_1Pnt 	              :
+ 24 ymj_1PntErr	              :
+ 25 j_1mhPnt	              :
+ 26 j_1mhPntErr	              :
+ 27 hmkPnt	              :
+ 28 hmkPntErr	              :
+ 29 ymj_1Ext 	              :
+ 30 ymj_1ExtErr	              :
+ 31 j_1mhExt 	              :
+ 32 j_1mhExtErr	              :
+ 33 hmkExt                    :
+ 34 hmkExtErr                 :
+ 35 mergedClassStat	      : 
+ 36 mergedClass		      : psfQFperf or photFlags2
+ 37 pStar		      : psfChisq
+ 38 pGalaxy		      : extNsigma
+ 39 pNoise		      : 
+ 40 pSaturated		      : 
+ 41 eBV		              : 
+ 42 aY		              : 
+ 43 yHallMag		      : M
+ 44 yHallMagErr		      : dM
+ 45 yPetroMag		      : 
+ 46 yPetroMagErr	      : 
+ 47 yAperMag3		      : Map
+ 48 yAperMag3Err	      : dMap
+ 49 yAperMag4		      : Mkron
+ 50 yAperMag4Err	      : dMron
+ 51 yAperMag6		      : 
+ 52 yAperMag6Err	      : 
+ 53 yGausig		      : 
+ 54 yEll		      : 
+ 55 yPA			      : posangle
+ 56 yErrBits		      : 
+ 57 yDeblend		      : 
+ 58 yClass		      : psfQF
+ 59 yClassStat		      : 
+ 60 yppErrBits		      : photFlags
+ 61 ySeqNum                   : detID
+ 62 yObjID		      : 
+ 63 yXi   		      : 
+ 64 yEta		      : 
+ 65 aJ
+ 66 j_1HallMag		      : M
+ 67 j_1HallMagErr	      : dM
+ 68 j_1PetroMag		      : 
+ 69 j_1PetroMagErr	      : 
+ 70 j_1AperMag3		      : Map
+ 71 j_1AperMag3Err	      : dMap
+ 72 j_1AperMag4		      : Mkron
+ 73 j_1AperMag4Err	      : dMron
+ 74 j_1AperMag6		      : 
+ 75 j_1AperMag6Err	      : 
+ 76 j_1Gausig		      : 
+ 77 j_1Ell		      : 
+ 78 j_1PA		      : posangle
+ 79 j_1ErrBits		      : 
+ 80 j_1Deblend		      : 
+ 81 j_1Class		      : psfQF
+ 82 j_1ClassStat	      : 
+ 83 j_1ppErrBits	      : photFlags
+ 84 j_1SeqNum                 : detID
+ 85 j_1ObjID		      : 
+ 86 j_1Xi   		      : 
+ 87 j_1Eta		      : 
+ 88 j_2HallMag		      : M
+ 89 j_2HallMagErr	      : dM
+ 90 j_2PetroMag		      : 
+ 91 j_2PetroMagErr	      : 
+ 92 j_2AperMag3		      : Map
+ 93 j_2AperMag3Err	      : dMap
+ 94 j_2AperMag4		      : Mkron
+ 95 j_2AperMag4Err	      : dMron
+ 96 j_2AperMag6		      : 
+ 97 j_2AperMag6Err	      : 
+ 98 j_2Gausig		      : 
+ 99 j_2Ell		      : 
+100 j_2PA		      : posangle
+101 j_2ErrBits		      : 
+102 j_2Deblend		      : 
+103 j_2Class		      : psfQF
+104 j_2ClassStat	      : 
+105 j_2ppErrBits	      : photFlags
+106 j_2SeqNum                 : detID
+107 j_2ObjID		      : 
+108 j_2Xi   		      : 
+109 j_2Eta		      : 
+110 aH
+111 hHallMag		      : M
+112 hHallMagErr		      : dM
+113 hPetroMag		      : 
+114 hPetroMagErr	      : 
+115 hAperMag3		      : Map
+116 hAperMag3Err	      : dMap
+117 hAperMag4		      : Mkron
+118 hAperMag4Err	      : dMron
+119 hAperMag6		      : 
+120 hAperMag6Err	      : 
+121 hGausig		      : 
+122 hEll		      : 
+123 hPA			      : posangle
+124 hErrBits		      : 
+125 hDeblend		      : 
+126 hClass		      : psfQF
+127 hClassStat		      : 
+128 hppErrBits		      : photFlags
+129 hSeqNum                   : detID
+130 hObjID		      : 
+131 hXi   		      : 
+132 hEta		      : 
+133 aK
+134 kHallMag		      : M
+135 kHallMagErr	      : dM
+136 kPetroMag		      : 
+137 kPetroMagErr	      : 
+138 kAperMag3		      : Map
+139 kAperMag3Err	      : dMap
+140 kAperMag4		      : Mkron
+141 kAperMag4Err	      : dMron
+142 kAperMag6		      : 
+143 kAperMag6Err	      : 
+144 kGausig		      : 
+145 kEll		      : 
+146 kPA		      : posangle
+147 kErrBits		      : 
+148 kDeblend		      : 
+159 kClass		      : psfQF
+150 kClassStat	      : 
+151 kppErrBits	      : photFlags
+152 kSeqNum                 : detID
+153 kObjID		      : 
+154 kXi   		      : 
+155 kEta		      : 
  
 */
@@ -193,12 +191,11 @@
 static int Nskip = 0; // UKIRT UHS CSV files have a single header row (and no special character to mark)
 
-UKIRT_Stars *loadukirt_uhs_readstars_ugcs (FILE *f, char *buffer, int *nstart, AddstarClientOptions *options, int *nstars) {
-
-  int codeZ  = GetPhotcodeCodebyName ("UKIRT_Z");  if (!codeZ ) Shutdown ("missing photcode UKIRT_Z ");
-  int codeY  = GetPhotcodeCodebyName ("UKIRT_Y");  if (!codeY ) Shutdown ("missing photcode UKIRT_Y ");
-  int codeJ  = GetPhotcodeCodebyName ("UKIRT_J");  if (!codeJ ) Shutdown ("missing photcode UKIRT_J ");
-  int codeH  = GetPhotcodeCodebyName ("UKIRT_H");  if (!codeH ) Shutdown ("missing photcode UKIRT_H ");
-  int codeK1 = GetPhotcodeCodebyName ("UKIRT_K1"); if (!codeK1) Shutdown ("missing photcode UKIRT_K1");
-  int codeK2 = GetPhotcodeCodebyName ("UKIRT_K2"); if (!codeK2) Shutdown ("missing photcode UKIRT_K2");
+UKIRT_Stars *loadukirt_uhs_readstars_ulas (FILE *f, char *buffer, int *nstart, AddstarClientOptions *options, int *nstars) {
+
+  int codeY  = GetPhotcodeCodebyName ("UKIRT_Y");  if (!codeY )  Shutdown ("missing photcode UKIRT_Y");
+  int codeJ1 = GetPhotcodeCodebyName ("UKIRT_J1"); if (!codeJ1 ) Shutdown ("missing photcode UKIRT_J1");
+  int codeJ2 = GetPhotcodeCodebyName ("UKIRT_J2"); if (!codeJ2 ) Shutdown ("missing photcode UKIRT_J2");
+  int codeH  = GetPhotcodeCodebyName ("UKIRT_H");  if (!codeH )  Shutdown ("missing photcode UKIRT_H");
+  int codeK  = GetPhotcodeCodebyName ("UKIRT_K");  if (!codeK)   Shutdown ("missing photcode UKIRT_K");
 
   // XXX I need a UKIRT UHS Mean Epoch
@@ -220,15 +217,4 @@
   ALLOCATE_PTR (pGalaxy,      double,   NELEM);
 
-  ALLOCATE_PTR (zHallMag,     double,   NELEM);
-  ALLOCATE_PTR (zHallMagErr,  double,   NELEM);
-  ALLOCATE_PTR (zAperMag3,    double,   NELEM);
-  ALLOCATE_PTR (zAperMag3Err, double,   NELEM);
-  ALLOCATE_PTR (zAperMag4,    double,   NELEM);
-  ALLOCATE_PTR (zAperMag4Err, double,   NELEM);
-  ALLOCATE_PTR (zPA,          double,   NELEM);
-  ALLOCATE_PTR (zClass,       int,      NELEM);
-  ALLOCATE_PTR (zppErrBits,   int,      NELEM);
-  ALLOCATE_PTR (zSeqNum,      int,      NELEM);
-
   ALLOCATE_PTR (yHallMag,     double,   NELEM);
   ALLOCATE_PTR (yHallMagErr,  double,   NELEM);
@@ -242,14 +228,25 @@
   ALLOCATE_PTR (ySeqNum,      int,      NELEM);
 
-  ALLOCATE_PTR (jHallMag,     double,   NELEM);
-  ALLOCATE_PTR (jHallMagErr,  double,   NELEM);
-  ALLOCATE_PTR (jAperMag3,    double,   NELEM);
-  ALLOCATE_PTR (jAperMag3Err, double,   NELEM);
-  ALLOCATE_PTR (jAperMag4,    double,   NELEM);
-  ALLOCATE_PTR (jAperMag4Err, double,   NELEM);
-  ALLOCATE_PTR (jPA,          double,   NELEM);
-  ALLOCATE_PTR (jClass,       int,      NELEM);
-  ALLOCATE_PTR (jppErrBits,   int,      NELEM);
-  ALLOCATE_PTR (jSeqNum,      int,      NELEM);
+  ALLOCATE_PTR (j1HallMag,     double,   NELEM);
+  ALLOCATE_PTR (j1HallMagErr,  double,   NELEM);
+  ALLOCATE_PTR (j1AperMag3,    double,   NELEM);
+  ALLOCATE_PTR (j1AperMag3Err, double,   NELEM);
+  ALLOCATE_PTR (j1AperMag4,    double,   NELEM);
+  ALLOCATE_PTR (j1AperMag4Err, double,   NELEM);
+  ALLOCATE_PTR (j1PA,          double,   NELEM);
+  ALLOCATE_PTR (j1Class,       int,      NELEM);
+  ALLOCATE_PTR (j1ppErrBits,   int,      NELEM);
+  ALLOCATE_PTR (j1SeqNum,      int,      NELEM);
+
+  ALLOCATE_PTR (j2HallMag,     double,   NELEM);
+  ALLOCATE_PTR (j2HallMagErr,  double,   NELEM);
+  ALLOCATE_PTR (j2AperMag3,    double,   NELEM);
+  ALLOCATE_PTR (j2AperMag3Err, double,   NELEM);
+  ALLOCATE_PTR (j2AperMag4,    double,   NELEM);
+  ALLOCATE_PTR (j2AperMag4Err, double,   NELEM);
+  ALLOCATE_PTR (j2PA,          double,   NELEM);
+  ALLOCATE_PTR (j2Class,       int,      NELEM);
+  ALLOCATE_PTR (j2ppErrBits,   int,      NELEM);
+  ALLOCATE_PTR (j2SeqNum,      int,      NELEM);
 
   ALLOCATE_PTR (hHallMag,     double,   NELEM);
@@ -264,25 +261,14 @@
   ALLOCATE_PTR (hSeqNum,      int,      NELEM);
 
-  ALLOCATE_PTR (k1HallMag,     double,   NELEM);
-  ALLOCATE_PTR (k1HallMagErr,  double,   NELEM);
-  ALLOCATE_PTR (k1AperMag3,    double,   NELEM);
-  ALLOCATE_PTR (k1AperMag3Err, double,   NELEM);
-  ALLOCATE_PTR (k1AperMag4,    double,   NELEM);
-  ALLOCATE_PTR (k1AperMag4Err, double,   NELEM);
-  ALLOCATE_PTR (k1PA,          double,   NELEM);
-  ALLOCATE_PTR (k1Class,       int,      NELEM);
-  ALLOCATE_PTR (k1ppErrBits,   int,      NELEM);
-  ALLOCATE_PTR (k1SeqNum,      int,      NELEM);
-
-  ALLOCATE_PTR (k2HallMag,     double,   NELEM);
-  ALLOCATE_PTR (k2HallMagErr,  double,   NELEM);
-  ALLOCATE_PTR (k2AperMag3,    double,   NELEM);
-  ALLOCATE_PTR (k2AperMag3Err, double,   NELEM);
-  ALLOCATE_PTR (k2AperMag4,    double,   NELEM);
-  ALLOCATE_PTR (k2AperMag4Err, double,   NELEM);
-  ALLOCATE_PTR (k2PA,          double,   NELEM);
-  ALLOCATE_PTR (k2Class,       int,      NELEM);
-  ALLOCATE_PTR (k2ppErrBits,   int,      NELEM);
-  ALLOCATE_PTR (k2SeqNum,      int,      NELEM);
+  ALLOCATE_PTR (kHallMag,     double,   NELEM);
+  ALLOCATE_PTR (kHallMagErr,  double,   NELEM);
+  ALLOCATE_PTR (kAperMag3,    double,   NELEM);
+  ALLOCATE_PTR (kAperMag3Err, double,   NELEM);
+  ALLOCATE_PTR (kAperMag4,    double,   NELEM);
+  ALLOCATE_PTR (kAperMag4Err, double,   NELEM);
+  ALLOCATE_PTR (kPA,          double,   NELEM);
+  ALLOCATE_PTR (kClass,       int,      NELEM);
+  ALLOCATE_PTR (kppErrBits,   int,      NELEM);
+  ALLOCATE_PTR (kSeqNum,      int,      NELEM);
 
   // we have a working buffer read from the file. we parse the lines in the working buffer
@@ -359,72 +345,62 @@
       // the start of the line is the 1st element (fields are 1-counting)
       jPARSE (  1,   1, sourceID,      "sourceID");
-      iPARSE (  3,   1, frameSetID,    "frameSetID");
-      dPARSE (  4,   3, ra,            "ra");
-      dPARSE (  5,   4, dec,           "dec");
-      dPARSE (  8,   5, epoch,         "epoch");
-      jPARSE ( 23,   8, priOrSec,      "priOrSec"); // watch for epoch
-      iPARSE ( 41,  23, mergedClass,   "mergedClass");
-      dPARSE ( 42,  41, pStar,         "pStar");
-      dPARSE ( 43,  42, pGalaxy,       "pGalaxy");
-      dPARSE ( 46,  43, zHallMag,      "zHallMag");
-      dPARSE ( 47,  46, zHallMagErr,   "zHallMagErr");
-      dPARSE ( 50,  47, zAperMag3,     "zAperMag3");
-      dPARSE ( 51,  50, zAperMag3Err,  "zAperMag3Err");
-      dPARSE ( 52,  51, zAperMag4,     "zAperMag4");
-      dPARSE ( 53,  52, zAperMag4Err,  "zAperMag4Err");
-      dPARSE ( 58,  53, zPA,           "zPA");
-      iPARSE ( 61,  58, zClass,        "zClass");
-      iPARSE ( 63,  61, zppErrBits,    "zppErrBits");
-      iPARSE ( 64,  63, zSeqNum,       "zSeqNum");
-      dPARSE ( 68,  64, yHallMag,      "yHallMag");
-      dPARSE ( 69,  68, yHallMagErr,   "yHallMagErr");
-      dPARSE ( 72,  69, yAperMag3,     "yAperMag3");
-      dPARSE ( 73,  72, yAperMag3Err,  "yAperMag3Err");
-      dPARSE ( 74,  73, yAperMag4,     "yAperMag4");
-      dPARSE ( 75,  74, yAperMag4Err,  "yAperMag4Err");
-      dPARSE ( 80,  75, yPA,           "yPA");
-      iPARSE ( 83,  80, yClass,        "yClass");
-      iPARSE ( 85,  83, yppErrBits,    "yppErrBits");
-      iPARSE ( 86,  85, ySeqNum,       "ySeqNum");
-      dPARSE ( 90,  86, jHallMag,      "jHallMag");
-      dPARSE ( 91,  90, jHallMagErr,   "jHallMagErr");
-      dPARSE ( 94,  91, jAperMag3,     "jAperMag3");
-      dPARSE ( 95,  94, jAperMag3Err,  "jAperMag3Err");
-      dPARSE ( 96,  95, jAperMag4,     "jAperMag4");
-      dPARSE ( 97,  96, jAperMag4Err,  "jAperMag4Err");
-      dPARSE (102,  97, jPA,           "jPA");
-      iPARSE (105, 102, jClass,        "jClass");
-      iPARSE (107, 105, jppErrBits,    "jppErrBits");
-      iPARSE (108, 107, jSeqNum,       "jSeqNum");
-      dPARSE (112, 108, hHallMag,      "hHallMag");
-      dPARSE (113, 112, hHallMagErr,   "hHallMagErr");
-      dPARSE (116, 113, hAperMag3,     "hAperMag3");
-      dPARSE (117, 116, hAperMag3Err,  "hAperMag3Err");
-      dPARSE (118, 117, hAperMag4,     "hAperMag4");
-      dPARSE (119, 118, hAperMag4Err,  "hAperMag4Err");
-      dPARSE (124, 119, hPA,           "hPA");
-      iPARSE (127, 124, hClass,        "hClass");
-      iPARSE (129, 127, hppErrBits,    "hppErrBits");
-      iPARSE (130, 129, hSeqNum,       "hSeqNum");
-      dPARSE (134, 130, k1HallMag,     "k1HallMag");
-      dPARSE (135, 134, k1HallMagErr,  "k1HallMagErr");
-      dPARSE (138, 135, k1AperMag3,    "k1AperMag3");
-      dPARSE (139, 138, k1AperMag3Err, "k1AperMag3Err");
-      dPARSE (140, 139, k1AperMag4,    "k1AperMag4");
-      dPARSE (141, 140, k1AperMag4Err, "k1AperMag4Err");
-      dPARSE (146, 141, k1PA,          "k1PA");
-      iPARSE (149, 146, k1Class,       "k1Class");
-      iPARSE (151, 149, k1ppErrBits,   "k1ppErrBits");
-      iPARSE (152, 151, k1SeqNum,      "k1SeqNum");
-      dPARSE (156, 152, k2HallMag,     "k2HallMag");
-      dPARSE (157, 156, k2HallMagErr,  "k2HallMagErr");
-      dPARSE (160, 157, k2AperMag3,    "k2AperMag3");
-      dPARSE (161, 160, k2AperMag3Err, "k2AperMag3Err");
-      dPARSE (162, 161, k2AperMag4,    "k2AperMag4");
-      dPARSE (163, 162, k2AperMag4Err, "k2AperMag4Err");
-      dPARSE (168, 163, k2PA,          "k2PA");
-      iPARSE (171, 168, k2Class,       "k2Class");
-      iPARSE (173, 171, k2ppErrBits,   "k2ppErrBits");
-      iPARSE (174, 173, k2SeqNum,      "k2SeqNum");
+      iPARSE (  2,   1, frameSetID,    "frameSetID");
+      dPARSE (  3,   2, ra,            "ra");
+      dPARSE (  4,   3, dec,           "dec");
+      dPARSE (  7,   4, epoch,         "epoch");
+      jPARSE ( 22,   7, priOrSec,      "priOrSec"); // watch for epoch
+      iPARSE ( 36,  22, mergedClass,   "mergedClass");
+      dPARSE ( 37,  36, pStar,         "pStar");
+      dPARSE ( 38,  37, pGalaxy,       "pGalaxy");
+      dPARSE ( 43,  38, yHallMag,      "yHallMag");
+      dPARSE ( 44,  43, yHallMagErr,   "yHallMagErr");
+      dPARSE ( 47,  44, yAperMag3,     "yAperMag3");
+      dPARSE ( 48,  47, yAperMag3Err,  "yAperMag3Err");
+      dPARSE ( 49,  48, yAperMag4,     "yAperMag4");
+      dPARSE ( 50,  49, yAperMag4Err,  "yAperMag4Err");
+      dPARSE ( 55,  50, yPA,           "yPA");
+      iPARSE ( 58,  55, yClass,        "yClass");
+      iPARSE ( 60,  58, yppErrBits,    "yppErrBits");
+      iPARSE ( 61,  60, ySeqNum,       "ySeqNum");
+      dPARSE ( 66,  61, j1HallMag,     "j1HallMag");
+      dPARSE ( 67,  66, j1HallMagErr,  "j1HallMagErr");
+      dPARSE ( 70,  67, j1AperMag3,    "j1AperMag3");
+      dPARSE ( 71,  70, j1AperMag3Err, "j1AperMag3Err");
+      dPARSE ( 72,  71, j1AperMag4,    "j1AperMag4");
+      dPARSE ( 73,  72, j1AperMag4Err, "j1AperMag4Err");
+      dPARSE ( 78,  73, j1PA,          "j1PA");
+      iPARSE ( 81,  78, j1Class,       "j1Class");
+      iPARSE ( 83,  81, j1ppErrBits,   "j1ppErrBits");
+      iPARSE ( 84,  83, j1SeqNum,      "j1SeqNum");
+      dPARSE ( 88,  84, j2HallMag,     "j2HallMag");
+      dPARSE ( 89,  88, j2HallMagErr,  "j2HallMagErr");
+      dPARSE ( 92,  89, j2AperMag3,    "j2AperMag3");
+      dPARSE ( 93,  92, j2AperMag3Err, "j2AperMag3Err");
+      dPARSE ( 94,  93, j2AperMag4,    "j2AperMag4");
+      dPARSE ( 95,  94, j2AperMag4Err, "j2AperMag4Err");
+      dPARSE (100,  95, j2PA,          "j2PA");
+      iPARSE (103, 100, j2Class,       "j2Class");
+      iPARSE (105, 103, j2ppErrBits,   "j2ppErrBits");
+      iPARSE (106, 105, j2SeqNum,      "j2SeqNum");
+      dPARSE (111, 106, hHallMag,      "hHallMag");
+      dPARSE (112, 111, hHallMagErr,   "hHallMagErr");
+      dPARSE (115, 112, hAperMag3,     "hAperMag3");
+      dPARSE (116, 115, hAperMag3Err,  "hAperMag3Err");
+      dPARSE (117, 116, hAperMag4,     "hAperMag4");
+      dPARSE (118, 117, hAperMag4Err,  "hAperMag4Err");
+      dPARSE (123, 118, hPA,           "hPA");
+      iPARSE (126, 123, hClass,        "hClass");
+      iPARSE (128, 126, hppErrBits,    "hppErrBits");
+      iPARSE (129, 128, hSeqNum,       "hSeqNum");
+      dPARSE (134, 129, kHallMag,      "kHallMag");
+      dPARSE (135, 134, kHallMagErr,   "kHallMagErr");
+      dPARSE (138, 135, kAperMag3,     "kAperMag3");
+      dPARSE (139, 138, kAperMag3Err,  "kAperMag3Err");
+      dPARSE (140, 139, kAperMag4,     "kAperMag4");
+      dPARSE (141, 140, kAperMag4Err,  "kAperMag4Err");
+      dPARSE (146, 141, kPA,           "kPA");
+      iPARSE (159, 146, kClass,        "kClass");
+      iPARSE (151, 159, kppErrBits,    "kppErrBits");
+      iPARSE (152, 151, kSeqNum,       "kSeqNum");
 
       if (!lineStatus && VERBOSE) {
@@ -448,14 +424,4 @@
 	REALLOCATE (pStar,        double,   NELEM);
 	REALLOCATE (pGalaxy,      double,   NELEM);
-	REALLOCATE (zHallMag,     double,   NELEM);
-	REALLOCATE (zHallMagErr,  double,   NELEM);
-	REALLOCATE (zAperMag3,    double,   NELEM);
-	REALLOCATE (zAperMag3Err, double,   NELEM);
-	REALLOCATE (zAperMag4,    double,   NELEM);
-	REALLOCATE (zAperMag4Err, double,   NELEM);
-	REALLOCATE (zPA,          double,   NELEM);
-	REALLOCATE (zClass,       int,      NELEM);
-	REALLOCATE (zppErrBits,   int,      NELEM);
-	REALLOCATE (zSeqNum,      int,      NELEM);
 	REALLOCATE (yHallMag,     double,   NELEM);
 	REALLOCATE (yHallMagErr,  double,   NELEM);
@@ -468,14 +434,24 @@
 	REALLOCATE (yppErrBits,   int,      NELEM);
 	REALLOCATE (ySeqNum,      int,      NELEM);
-	REALLOCATE (jHallMag,     double,   NELEM);
-	REALLOCATE (jHallMagErr,  double,   NELEM);
-	REALLOCATE (jAperMag3,    double,   NELEM);
-	REALLOCATE (jAperMag3Err, double,   NELEM);
-	REALLOCATE (jAperMag4,    double,   NELEM);
-	REALLOCATE (jAperMag4Err, double,   NELEM);
-	REALLOCATE (jPA,          double,   NELEM);
-	REALLOCATE (jClass,       int,      NELEM);
-	REALLOCATE (jppErrBits,   int,      NELEM);
-	REALLOCATE (jSeqNum,      int,      NELEM);
+	REALLOCATE (j1HallMag,     double,   NELEM);
+	REALLOCATE (j1HallMagErr,  double,   NELEM);
+	REALLOCATE (j1AperMag3,    double,   NELEM);
+	REALLOCATE (j1AperMag3Err, double,   NELEM);
+	REALLOCATE (j1AperMag4,    double,   NELEM);
+	REALLOCATE (j1AperMag4Err, double,   NELEM);
+	REALLOCATE (j1PA,          double,   NELEM);
+	REALLOCATE (j1Class,       int,      NELEM);
+	REALLOCATE (j1ppErrBits,   int,      NELEM);
+	REALLOCATE (j1SeqNum,      int,      NELEM);
+	REALLOCATE (j2HallMag,     double,   NELEM);
+	REALLOCATE (j2HallMagErr,  double,   NELEM);
+	REALLOCATE (j2AperMag3,    double,   NELEM);
+	REALLOCATE (j2AperMag3Err, double,   NELEM);
+	REALLOCATE (j2AperMag4,    double,   NELEM);
+	REALLOCATE (j2AperMag4Err, double,   NELEM);
+	REALLOCATE (j2PA,          double,   NELEM);
+	REALLOCATE (j2Class,       int,      NELEM);
+	REALLOCATE (j2ppErrBits,   int,      NELEM);
+	REALLOCATE (j2SeqNum,      int,      NELEM);
 	REALLOCATE (hHallMag,     double,   NELEM);
 	REALLOCATE (hHallMagErr,  double,   NELEM);
@@ -488,24 +464,14 @@
 	REALLOCATE (hppErrBits,   int,      NELEM);
 	REALLOCATE (hSeqNum,      int,      NELEM);
-	REALLOCATE (k1HallMag,     double,   NELEM);
-	REALLOCATE (k1HallMagErr,  double,   NELEM);
-	REALLOCATE (k1AperMag3,    double,   NELEM);
-	REALLOCATE (k1AperMag3Err, double,   NELEM);
-	REALLOCATE (k1AperMag4,    double,   NELEM);
-	REALLOCATE (k1AperMag4Err, double,   NELEM);
-	REALLOCATE (k1PA,          double,   NELEM);
-	REALLOCATE (k1Class,       int,      NELEM);
-	REALLOCATE (k1ppErrBits,   int,      NELEM);
-	REALLOCATE (k1SeqNum,      int,      NELEM);
-	REALLOCATE (k2HallMag,     double,   NELEM);
-	REALLOCATE (k2HallMagErr,  double,   NELEM);
-	REALLOCATE (k2AperMag3,    double,   NELEM);
-	REALLOCATE (k2AperMag3Err, double,   NELEM);
-	REALLOCATE (k2AperMag4,    double,   NELEM);
-	REALLOCATE (k2AperMag4Err, double,   NELEM);
-	REALLOCATE (k2PA,          double,   NELEM);
-	REALLOCATE (k2Class,       int,      NELEM);
-	REALLOCATE (k2ppErrBits,   int,      NELEM);
-	REALLOCATE (k2SeqNum,      int,      NELEM);
+	REALLOCATE (kHallMag,     double,   NELEM);
+	REALLOCATE (kHallMagErr,  double,   NELEM);
+	REALLOCATE (kAperMag3,    double,   NELEM);
+	REALLOCATE (kAperMag3Err, double,   NELEM);
+	REALLOCATE (kAperMag4,    double,   NELEM);
+	REALLOCATE (kAperMag4Err, double,   NELEM);
+	REALLOCATE (kPA,          double,   NELEM);
+	REALLOCATE (kClass,       int,      NELEM);
+	REALLOCATE (kppErrBits,   int,      NELEM);
+	REALLOCATE (kSeqNum,      int,      NELEM);
       }
       if (!EndOfFile) {
@@ -585,5 +551,5 @@
     stars[Nstars].measure[0].photcode   = codeY;
 
-    // z measure
+    // J_1 measure
     stars[Nstars].measure[1].extID      = sourceID[i];
     stars[Nstars].measure[1].imageID    = frameSetID[i]; // XXX check for frameSetID > 31-bit int
@@ -592,16 +558,16 @@
     stars[Nstars].measure[1].psfChisq   = pStar[i];
     stars[Nstars].measure[1].extNsigma  = pGalaxy[i];
-    stars[Nstars].measure[1].M          = zHallMag[i];
-    stars[Nstars].measure[1].dM         = zHallMagErr[i];
-    stars[Nstars].measure[1].Map        = zAperMag3[i];
-    stars[Nstars].measure[1].dMap       = zAperMag3Err[i];
-    stars[Nstars].measure[1].Mkron      = zAperMag4[i];
-    stars[Nstars].measure[1].dMkron     = zAperMag4Err[i];
-    stars[Nstars].measure[1].posangle   = zPA[i]; // XXX units
-    stars[Nstars].measure[1].psfQF      = zClass[i];
-    stars[Nstars].measure[1].photFlags  = zppErrBits[i];
+    stars[Nstars].measure[1].M          = j1HallMag[i];
+    stars[Nstars].measure[1].dM         = j1HallMagErr[i];
+    stars[Nstars].measure[1].Map        = j1AperMag3[i];
+    stars[Nstars].measure[1].dMap       = j1AperMag3Err[i];
+    stars[Nstars].measure[1].Mkron      = j1AperMag4[i];
+    stars[Nstars].measure[1].dMkron     = j1AperMag4Err[i];
+    stars[Nstars].measure[1].posangle   = j1PA[i]; // XXX units
+    stars[Nstars].measure[1].psfQF      = j1Class[i];
+    stars[Nstars].measure[1].photFlags  = j1ppErrBits[i];
     stars[Nstars].measure[1].photFlags2 = photFlags2;
-    stars[Nstars].measure[1].detID      = zSeqNum[i];
-    stars[Nstars].measure[1].photcode   = codeZ;
+    stars[Nstars].measure[1].detID      = j1SeqNum[i];
+    stars[Nstars].measure[1].photcode   = codeJ1;
 
     // J measure
@@ -612,16 +578,16 @@
     stars[Nstars].measure[2].psfChisq   = pStar[i];
     stars[Nstars].measure[2].extNsigma  = pGalaxy[i];
-    stars[Nstars].measure[2].M          = jHallMag[i];
-    stars[Nstars].measure[2].dM         = jHallMagErr[i];
-    stars[Nstars].measure[2].Map        = jAperMag3[i];
-    stars[Nstars].measure[2].dMap       = jAperMag3Err[i];
-    stars[Nstars].measure[2].Mkron      = jAperMag4[i];
-    stars[Nstars].measure[2].dMkron     = jAperMag4Err[i];
-    stars[Nstars].measure[2].posangle   = jPA[i]; // XXX units
-    stars[Nstars].measure[2].psfQF      = jClass[i];
-    stars[Nstars].measure[2].photFlags  = jppErrBits[i];
+    stars[Nstars].measure[2].M          = j2HallMag[i];
+    stars[Nstars].measure[2].dM         = j2HallMagErr[i];
+    stars[Nstars].measure[2].Map        = j2AperMag3[i];
+    stars[Nstars].measure[2].dMap       = j2AperMag3Err[i];
+    stars[Nstars].measure[2].Mkron      = j2AperMag4[i];
+    stars[Nstars].measure[2].dMkron     = j2AperMag4Err[i];
+    stars[Nstars].measure[2].posangle   = j2PA[i]; // XXX units
+    stars[Nstars].measure[2].psfQF      = j2Class[i];
+    stars[Nstars].measure[2].photFlags  = j2ppErrBits[i];
     stars[Nstars].measure[2].photFlags2 = photFlags2;
-    stars[Nstars].measure[2].detID      = jSeqNum[i];
-    stars[Nstars].measure[2].photcode   = codeJ;
+    stars[Nstars].measure[2].detID      = j2SeqNum[i];
+    stars[Nstars].measure[2].photcode   = codeJ2;
 
     // H measure
@@ -645,5 +611,5 @@
     stars[Nstars].measure[3].photcode   = codeH;
 
-    // K1 measure
+    // K measure
     stars[Nstars].measure[4].extID      = sourceID[i];
     stars[Nstars].measure[4].imageID    = frameSetID[i]; // XXX check for frameSetID > 31-bit int
@@ -652,36 +618,16 @@
     stars[Nstars].measure[4].psfChisq   = pStar[i];
     stars[Nstars].measure[4].extNsigma  = pGalaxy[i];
-    stars[Nstars].measure[4].M          = k1HallMag[i];
-    stars[Nstars].measure[4].dM         = k1HallMagErr[i];
-    stars[Nstars].measure[4].Map        = k1AperMag3[i];
-    stars[Nstars].measure[4].dMap       = k1AperMag3Err[i];
-    stars[Nstars].measure[4].Mkron      = k1AperMag4[i];
-    stars[Nstars].measure[4].dMkron     = k1AperMag4Err[i];
-    stars[Nstars].measure[4].posangle   = k1PA[i]; // XXX units
-    stars[Nstars].measure[4].psfQF      = k1Class[i];
-    stars[Nstars].measure[4].photFlags  = k1ppErrBits[i];
+    stars[Nstars].measure[4].M          = kHallMag[i];
+    stars[Nstars].measure[4].dM         = kHallMagErr[i];
+    stars[Nstars].measure[4].Map        = kAperMag3[i];
+    stars[Nstars].measure[4].dMap       = kAperMag3Err[i];
+    stars[Nstars].measure[4].Mkron      = kAperMag4[i];
+    stars[Nstars].measure[4].dMkron     = kAperMag4Err[i];
+    stars[Nstars].measure[4].posangle   = kPA[i]; // XXX units
+    stars[Nstars].measure[4].psfQF      = kClass[i];
+    stars[Nstars].measure[4].photFlags  = kppErrBits[i];
     stars[Nstars].measure[4].photFlags2 = photFlags2;
-    stars[Nstars].measure[4].detID      = k1SeqNum[i];
-    stars[Nstars].measure[4].photcode   = codeK1;
-
-    // K1 measure
-    stars[Nstars].measure[5].extID      = sourceID[i];
-    stars[Nstars].measure[5].imageID    = frameSetID[i]; // XXX check for frameSetID > 31-bit int
-    stars[Nstars].measure[5].R          = ra[i];
-    stars[Nstars].measure[5].D          = dec[i];
-    stars[Nstars].measure[5].psfChisq   = pStar[i];
-    stars[Nstars].measure[5].extNsigma  = pGalaxy[i];
-    stars[Nstars].measure[5].M          = k2HallMag[i];
-    stars[Nstars].measure[5].dM         = k2HallMagErr[i];
-    stars[Nstars].measure[5].Map        = k2AperMag3[i];
-    stars[Nstars].measure[5].dMap       = k2AperMag3Err[i];
-    stars[Nstars].measure[5].Mkron      = k2AperMag4[i];
-    stars[Nstars].measure[5].dMkron     = k2AperMag4Err[i];
-    stars[Nstars].measure[5].posangle   = k2PA[i]; // XXX units
-    stars[Nstars].measure[5].psfQF      = k2Class[i];
-    stars[Nstars].measure[5].photFlags  = k2ppErrBits[i];
-    stars[Nstars].measure[5].photFlags2 = photFlags2;
-    stars[Nstars].measure[5].detID      = k2SeqNum[i];
-    stars[Nstars].measure[5].photcode   = codeK2;
+    stars[Nstars].measure[4].detID      = kSeqNum[i];
+    stars[Nstars].measure[4].photcode   = codeK;
 
     stars[Nstars].average.Nmeasure = UKIRT_NFILTER;
@@ -705,15 +651,4 @@
   FREE (pStar);
   FREE (pGalaxy);
-
-  FREE (zHallMag);
-  FREE (zHallMagErr);
-  FREE (zAperMag3);
-  FREE (zAperMag3Err);
-  FREE (zAperMag4);
-  FREE (zAperMag4Err);
-  FREE (zPA);
-  FREE (zClass);
-  FREE (zppErrBits);
-  FREE (zSeqNum);
 
   FREE (yHallMag);
@@ -728,14 +663,25 @@
   FREE (ySeqNum);
 
-  FREE (jHallMag);
-  FREE (jHallMagErr);
-  FREE (jAperMag3);
-  FREE (jAperMag3Err);
-  FREE (jAperMag4);
-  FREE (jAperMag4Err);
-  FREE (jPA);
-  FREE (jClass);
-  FREE (jppErrBits);
-  FREE (jSeqNum);
+  FREE (j1HallMag);
+  FREE (j1HallMagErr);
+  FREE (j1AperMag3);
+  FREE (j1AperMag3Err);
+  FREE (j1AperMag4);
+  FREE (j1AperMag4Err);
+  FREE (j1PA);
+  FREE (j1Class);
+  FREE (j1ppErrBits);
+  FREE (j1SeqNum);
+
+  FREE (j2HallMag);
+  FREE (j2HallMagErr);
+  FREE (j2AperMag3);
+  FREE (j2AperMag3Err);
+  FREE (j2AperMag4);
+  FREE (j2AperMag4Err);
+  FREE (j2PA);
+  FREE (j2Class);
+  FREE (j2ppErrBits);
+  FREE (j2SeqNum);
 
   FREE (hHallMag);
@@ -750,25 +696,14 @@
   FREE (hSeqNum);
 
-  FREE (k1HallMag);
-  FREE (k1HallMagErr);
-  FREE (k1AperMag3);
-  FREE (k1AperMag3Err);
-  FREE (k1AperMag4);
-  FREE (k1AperMag4Err);
-  FREE (k1PA);
-  FREE (k1Class);
-  FREE (k1ppErrBits);
-  FREE (k1SeqNum);
-
-  FREE (k2HallMag);
-  FREE (k2HallMagErr);
-  FREE (k2AperMag3);
-  FREE (k2AperMag3Err);
-  FREE (k2AperMag4);
-  FREE (k2AperMag4Err);
-  FREE (k2PA);
-  FREE (k2Class);
-  FREE (k2ppErrBits);
-  FREE (k2SeqNum);
+  FREE (kHallMag);
+  FREE (kHallMagErr);
+  FREE (kAperMag3);
+  FREE (kAperMag3Err);
+  FREE (kAperMag4);
+  FREE (kAperMag4Err);
+  FREE (kPA);
+  FREE (kClass);
+  FREE (kppErrBits);
+  FREE (kSeqNum);
 
   *nstars = Nstars;
