Index: branches/meh_branches/ppstack_test/Nebulous-Server/bin/neb-admin
===================================================================
--- branches/meh_branches/ppstack_test/Nebulous-Server/bin/neb-admin	(revision 33597)
+++ branches/meh_branches/ppstack_test/Nebulous-Server/bin/neb-admin	(revision 34041)
@@ -543,12 +543,13 @@
 		       'ipp056.0' => 64,'ipp057.0' => 65,'ipp058.0' => 66,'ipp059.0' => 67,'ipp060.0' => 68,'ipp061.0' => 69,'ipp062.0' => 70,
 		       'ipp063.0' => 71,'ipp064.0' => 72,'ipp065.0' => 73,'ipp066.0' => 74);
-    %{ $destination{VOL} }  = ('ota01' => 7,       'ota02' => 8,       'ota03' => 3,       'ota04' => 3,       'ota05' => 4,       'ota06' => 4,
-			       'ota10' => 50,      'ota11' => 50,      'ota12' => 6,       'ota13' => 6,       'ota14' => 7,       'ota15' => 8,       'ota16' => 15,      'ota17' => 15,
-			       'ota20' => 16,      'ota21' => 18,      'ota22' => 18,      'ota23' => 17,      'ota24' => 9,       'ota25' => 9,       'ota26' => 10,      'ota27' => 11,
-			       'ota30' => 12,      'ota31' => 52,      'ota32' => 14,      'ota33' => 14,      'ota34' => 19,      'ota35' => 16,      'ota36' => 20,      'ota37' => 12,
-			       'ota40' => 32,      'ota41' => 11,      'ota42' => 10,      'ota43' => 17,      'ota44' => 49,      'ota45' => 23,      'ota46' => 24,      'ota47' => 25,
-			       'ota50' => 26,      'ota51' => 27,      'ota52' => 28,      'ota53' => 29,      'ota54' => 30,      'ota55' => 31,      'ota56' => 51,      'ota57' => 33,
-			       'ota60' => 34,      'ota61' => 35,      'ota62' => 36,      'ota63' => 37,      'ota64' => 38,      'ota65' => 39,      'ota66' => 41,      'ota67' => 42,
-			       'ota71' => 43,      'ota72' => 44,      'ota73' => 45,      'ota74' => 46,      'ota75' => 47,      'ota76' => 48);
+# This is replaced below.
+#     %{ $destination{VOL} }  = ('ota01' => 7,       'ota02' => 8,       'ota03' => 3,       'ota04' => 3,       'ota05' => 4,       'ota06' => 4,
+# 			       'ota10' => 50,      'ota11' => 50,      'ota12' => 6,       'ota13' => 6,       'ota14' => 7,       'ota15' => 8,       'ota16' => 15,      'ota17' => 15,
+# 			       'ota20' => 16,      'ota21' => 18,      'ota22' => 18,      'ota23' => 17,      'ota24' => 9,       'ota25' => 9,       'ota26' => 10,      'ota27' => 11,
+# 			       'ota30' => 12,      'ota31' => 52,      'ota32' => 14,      'ota33' => 14,      'ota34' => 19,      'ota35' => 16,      'ota36' => 20,      'ota37' => 12,
+# 			       'ota40' => 32,      'ota41' => 11,      'ota42' => 10,      'ota43' => 17,      'ota44' => 49,      'ota45' => 23,      'ota46' => 24,      'ota47' => 25,
+# 			       'ota50' => 26,      'ota51' => 27,      'ota52' => 28,      'ota53' => 29,      'ota54' => 30,      'ota55' => 31,      'ota56' => 51,      'ota57' => 33,
+# 			       'ota60' => 34,      'ota61' => 35,      'ota62' => 36,      'ota63' => 37,      'ota64' => 38,      'ota65' => 39,      'ota66' => 41,      'ota67' => 42,
+# 			       'ota71' => 43,      'ota72' => 44,      'ota73' => 45,      'ota74' => 46,      'ota75' => 47,      'ota76' => 48);
     %{ $destination{HOST} } = ('ota01' => 'ipp010','ota02' => 'ipp011','ota03' => 'ipp006','ota04' => 'ipp054','ota05' => 'ipp007','ota06' => 'ipp055',
 			       'ota10' => 'ipp008','ota11' => 'ipp056','ota12' => 'ipp009','ota13' => 'ipp057','ota14' => 'ipp058','ota15' => 'ipp059','ota16' => 'ipp012','ota17' => 'ipp060',
@@ -581,5 +582,6 @@
 #			  'ipp054' => 1,'ipp055' => 1,'ipp056' => 1,'ipp057' => 1,'ipp058' => 1,'ipp059' => 1,
 #			  'ipp060' => 1,'ipp061' => 1,'ipp062' => 1,'ipp063' => 1,'ipp064' => 1,'ipp065' => 1, 'ipp066' => 1
-			  'ipp064' => 1, 'ipp066' => 1
+#			  'ipp064' => 1, 'ipp066' => 1
+			  'ipp064' => 1
 	);
     if (not defined $so_id_start) { $so_id_start = 0; }
@@ -623,30 +625,35 @@
 #   OFFSET $offset
 # ");
-    my $query = $dbh->prepare(
-	"
-SELECT Z.so_id,ext_id,Z.ins_id,Z.uri,substr(Z.uri,-10,5) AS class_id,Z.vol_id,vol_name,vol_host,
-       instance.vol_id AS  second_vol_id,volume.name AS second_name,volume.host AS second_host FROM (
-  SELECT S.so_id,ext_id,ins_id,uri,substr(uri,-10,5) AS class_id,vol_id,name AS vol_name,host AS vol_host,MAXins_id FROM (
-    select * FROM (
-      select MAX(ins_id) AS MAXins_id, MIN(ins_id) AS MINins_id, so_id,ext_id FROM storage_object
-        JOIN storage_object_xattr USING(so_id)
-        RIGHT JOIN instance USING(so_id)
-         WHERE name = 'user.copies'
-         AND value >= 2
-         AND ext_id LIKE '%ota%fits'
-         AND so_id >= $so_id_start
-         AND so_id <  $so_id_end
-         GROUP BY so_id
-      ) AS V
-      WHERE MAXins_id != MINins_id
-    ) AS S
-    JOIN instance ON (S.MINins_id = instance.ins_id AND S.so_id = instance.so_id)
-    JOIN volume USING(vol_id) WHERE volume.available = 1
-  ) AS Z
-JOIN instance ON (MAXins_id = instance.ins_id AND Z.so_id = instance.so_id)
-JOIN volume ON(instance.vol_id = volume.vol_id) WHERE volume.available = 1
-LIMIT $limit
-OFFSET $offset
-");
+    
+    print STDERR "This query is broken so I have disabled it to get the MHPCC->ATRC shuffle going.\n";
+    exit 0;
+    my $query;
+#     my $query = $dbh->prepare(
+# 	"
+# SELECT Z.so_id,ext_id,Z.ins_id,Z.uri,substr(Z.uri,-10,5) AS class_id,Z.vol_id,vol_name,vol_host,
+#        instance.vol_id AS  second_vol_id,volume.name AS second_name,volume.host AS second_host FROM (
+#   SELECT S.so_id,ext_id,ins_id,uri,substr(uri,-10,5) AS class_id,vol_id,name AS vol_name,host AS vol_host,MAXins_id FROM (
+#     select * FROM (
+#       select MAX(ins_id) AS MAXins_id, MIN(ins_id) AS MINins_id, so_id,ext_id FROM storage_object
+#         JOIN storage_object_xattr USING(so_id)
+#         RIGHT JOIN instance USING(so_id)
+#          WHERE name = 'user.copies'
+#          AND value >= 2
+#          AND ext_id LIKE '%ota%fits'
+#          AND so_id >= $so_id_start
+#          AND so_id <  $so_id_end
+#          GROUP BY so_id
+#       ) AS V
+#       WHERE MAXins_id != MINins_id
+#     ) AS S
+#     JOIN instance ON (S.MINins_id = instance.ins_id AND S.so_id = instance.so_id)
+#     JOIN volume USING(vol_id) WHERE volume.available = 1
+#     AND volume.name AS $requested_source
+#   ) AS Z
+# JOIN instance ON (MAXins_id = instance.ins_id AND Z.so_id = instance.so_id)
+# JOIN volume ON(instance.vol_id = volume.vol_id) WHERE volume.available = 1
+# LIMIT $limit
+# OFFSET $offset
+# ");
 
     $query->execute();
Index: branches/meh_branches/ppstack_test/Nebulous-Server/lib/Nebulous/Server/SQL.pm
===================================================================
--- branches/meh_branches/ppstack_test/Nebulous-Server/lib/Nebulous/Server/SQL.pm	(revision 33597)
+++ branches/meh_branches/ppstack_test/Nebulous-Server/lib/Nebulous/Server/SQL.pm	(revision 34041)
@@ -750,4 +750,20 @@
 ###
 
+CREATE TABLE lost_instances (
+    id BIGINT NOT NULL AUTO_INCREMENT,
+    ins_id BIGINT NOT NULL DEFAULT -1,
+    so_id BIGINT NOT NULL DEFAULT -1,
+    vol_id INT NOT NULL DEFAULT -1,
+    uri CHAR(255) NOT NULL DEFAULT 'undefined',
+    epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+    mtime TIMESTAMP,
+    PRIMARY KEY(id),
+    KEY(so_id),
+    KEY(vol_id),
+    KEY(uri(40))
+) ENGINE=innodb DEFAULT CHARSET=latin1;
+
+###
+
 CREATE TABLE log (
     timestamp TIMESTAMP,
Index: branches/meh_branches/ppstack_test/Nebulous/bin/whichnode
===================================================================
--- branches/meh_branches/ppstack_test/Nebulous/bin/whichnode	(revision 33597)
+++ branches/meh_branches/ppstack_test/Nebulous/bin/whichnode	(revision 34041)
@@ -18,5 +18,5 @@
 
 my $dbname = "nebulous";
-my $dbserver = "ippdb00";
+my $dbserver = "nebulous.ipp.ifa.hawaii.edu";
 my $verbose;
 
Index: branches/meh_branches/ppstack_test/Ohana/Makefile.in
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/Makefile.in	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/Makefile.in	(revision 34041)
@@ -45,4 +45,5 @@
 opihi       \
 perl        \
+photdbc     \
 relphot     \
 relastro    \
@@ -61,5 +62,4 @@
 lightcurve  \
 markrock    \
-photdbc     \
 markstar    \
 mosastro.v1 \
@@ -121,5 +121,5 @@
 	@echo -n -e "\0033]0; *** Ohana: done $@ *** \0007" \
 
-install:
+install: | clean
 	@if [ "$(ARCH)" = "" ]; then echo ""; echo " *** please define ARCH ***"; echo; exit 1; fi
 	for i in $(LIBS); do $(MAKE) $$i.install || exit 1; done
@@ -130,4 +130,8 @@
 	for i in $(EXTRAS); do $(MAKE) $$i.install || exit 1; done
 	@echo -n -e "\0033]0; *** Ohana: done $@ *** \0007" \
+
+rebuild:
+	$(MAKE) clean
+	$(MAKE) install
 
 # standard rules: targets are foo, foo.clean, foo.install, foo.dist
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/Makefile	(revision 34041)
@@ -24,8 +24,12 @@
 sedstar     : $(BIN)/sedstar.$(ARCH)
 load2mass   : $(BIN)/load2mass.$(ARCH)
+loadwise    : $(BIN)/loadwise.$(ARCH)
+loadsupercos: $(BIN)/loadsupercos.$(ARCH)
 gztest      : $(BIN)/gztest.$(ARCH)
 mkcmf       : $(BIN)/mkcmf.$(ARCH)
 
-all: addstar sedstar load2mass skycells mkcmf
+all: addstar addstar_client sedstar load2mass skycells mkcmf loadwise loadsupercos dumpskycells
+
+INSTALL = addstar addstar_client sedstar load2mass skycells mkcmf loadwise loadsupercos dumpskycells
 
 # I need to fix the client/server version of addstar now that I have dropped Stars
@@ -74,4 +78,5 @@
 $(SRC)/resort_threaded.$(ARCH).o \
 $(SRC)/resort_unthreaded.$(ARCH).o \
+$(SRC)/resort_unthreaded_catalogs.$(ARCH).o \
 $(SRC)/StarOps.$(ARCH).o \
 $(SRC)/ReadStarsFITS.$(ARCH).o \
@@ -85,4 +90,19 @@
 $(SRC)/update_coords.$(ARCH).o \
 $(SRC)/psps_ids.$(ARCH).o
+
+# this is the client for parallel operations
+ADDSTAR_CLIENT = \
+$(SRC)/ConfigInit.$(ARCH).o \
+$(SRC)/SetSignals.$(ARCH).o \
+$(SRC)/Shutdown.$(ARCH).o \
+$(SRC)/SkyListForStars.$(ARCH).o \
+$(SRC)/SkyRegionUtils.$(ARCH).o \
+$(SRC)/build_links.$(ARCH).o \
+$(SRC)/addstar_client.$(ARCH).o \
+$(SRC)/args_parallel_client.$(ARCH).o \
+$(SRC)/resort_catalog.$(ARCH).o \
+$(SRC)/resort_threaded.$(ARCH).o \
+$(SRC)/resort_unthreaded.$(ARCH).o \
+$(SRC)/resort_unthreaded_catalogs.$(ARCH).o
 
 ADDSTARD = \
@@ -164,4 +184,5 @@
 $(SRC)/psps_ids.$(ARCH).o
 
+# this is the client for server / client addstar operations
 ADDSTARC = \
 $(SRC)/addstarc.$(ARCH).o \
@@ -214,4 +235,40 @@
 $(SRC)/psps_ids.$(ARCH).o
 
+LOAD-WISE = \
+$(SRC)/loadwise.$(ARCH).o \
+$(SRC)/loadwise_rawdata.$(ARCH).o \
+$(SRC)/loadwise_ops.$(ARCH).o \
+$(SRC)/loadwise_star_full.$(ARCH).o \
+$(SRC)/args_loadwise.$(ARCH).o \
+$(SRC)/ConfigInit.$(ARCH).o \
+$(SRC)/Shutdown.$(ARCH).o \
+$(SRC)/StarOps.$(ARCH).o \
+$(SRC)/find_matches_refstars.$(ARCH).o \
+$(SRC)/build_links.$(ARCH).o \
+$(SRC)/replace_match.$(ARCH).o \
+$(SRC)/SetSignals.$(ARCH).o \
+$(SRC)/update_coords.$(ARCH).o \
+$(SRC)/SkyRegionUtils.$(ARCH).o \
+$(SRC)/psps_ids.$(ARCH).o
+
+LOAD-SUPERCOS = \
+$(SRC)/loadsupercos.$(ARCH).o \
+$(SRC)/loadsupercos_ops.$(ARCH).o \
+$(SRC)/loadsupercos_survey.$(ARCH).o \
+$(SRC)/loadsupercos_plates.$(ARCH).o \
+$(SRC)/loadsupercos_rawdata.$(ARCH).o \
+$(SRC)/args_loadsupercos.$(ARCH).o \
+$(SRC)/ConfigInit.$(ARCH).o \
+$(SRC)/Shutdown.$(ARCH).o \
+$(SRC)/StarOps.$(ARCH).o \
+$(SRC)/find_matches_refstars.$(ARCH).o \
+$(SRC)/build_links.$(ARCH).o \
+$(SRC)/replace_match.$(ARCH).o \
+$(SRC)/SetSignals.$(ARCH).o \
+$(SRC)/update_coords.$(ARCH).o \
+$(SRC)/SkyRegionUtils.$(ARCH).o \
+$(SRC)/parse_time.$(ARCH).o \
+$(SRC)/psps_ids.$(ARCH).o
+
 SEDSTAR = \
 $(SRC)/sedstar.$(ARCH).o \
@@ -235,23 +292,35 @@
 $(SRC)/sky_tessalation.$(ARCH).o
 
-$(ADDSTARC)   : $(INC)/addstar.h
-$(ADDSTARD)   : $(INC)/addstar.h
-$(ADDSTART)   : $(INC)/addstar.h
-$(ADDSTAR)    : $(INC)/addstar.h
-$(SKYCELLS)   : $(INC)/addstar.h
-$(LOAD-2MASS) : $(INC)/addstar.h $(INC)/2mass.h
-$(MKCMF)      : $(INC)/mkcmf.h
-
-$(BIN)/addstar.$(ARCH) 	   : $(ADDSTAR)
-$(BIN)/addstard.$(ARCH)	   : $(ADDSTARD)
-$(BIN)/addstart.$(ARCH)	   : $(ADDSTART)
-$(BIN)/addstarc.$(ARCH)	   : $(ADDSTARC)
-$(BIN)/mkacc-2mass.$(ARCH) : $(MKACC-2MASS)
-$(BIN)/sedstar.$(ARCH)     : $(SEDSTAR)
-$(BIN)/load2mass.$(ARCH)   : $(LOAD-2MASS)
-$(BIN)/skycells.$(ARCH)    : $(SKYCELLS)
-$(BIN)/mkcmf.$(ARCH)       : $(MKCMF)
-
-INSTALL = addstar sedstar load2mass skycells mkcmf
+DUMPSKYCELLS = \
+$(SRC)/dumpskycells.$(ARCH).o \
+$(SRC)/skycells_to_mdc.$(ARCH).o \
+$(SRC)/ConfigInit_skycells.$(ARCH).o \
+$(SRC)/Shutdown.$(ARCH).o \
+$(SRC)/SetSignals.$(ARCH).o \
+
+$(ADDSTARC)   	  : $(INC)/addstar.h
+$(ADDSTARD)   	  : $(INC)/addstar.h
+$(ADDSTART)   	  : $(INC)/addstar.h
+$(ADDSTAR)    	  : $(INC)/addstar.h
+$(ADDSTAR_CLIENT) : $(INC)/addstar.h
+$(SKYCELLS)    	  : $(INC)/addstar.h
+$(DUMPSKYCELLS)	  : $(INC)/addstar.h
+$(LOAD-2MASS)  	  : $(INC)/addstar.h $(INC)/2mass.h
+$(LOAD-WISE)   	  : $(INC)/addstar.h $(INC)/WISE.h
+$(MKCMF)       	  : $(INC)/mkcmf.h
+
+$(BIN)/addstar.$(ARCH) 	      : $(ADDSTAR)
+$(BIN)/addstar_client.$(ARCH) : $(ADDSTAR_CLIENT)
+$(BIN)/addstard.$(ARCH)	      : $(ADDSTARD)
+$(BIN)/addstart.$(ARCH)	      : $(ADDSTART)
+$(BIN)/addstarc.$(ARCH)	      : $(ADDSTARC)
+$(BIN)/mkacc-2mass.$(ARCH)    : $(MKACC-2MASS)
+$(BIN)/sedstar.$(ARCH)        : $(SEDSTAR)
+$(BIN)/load2mass.$(ARCH)      : $(LOAD-2MASS)
+$(BIN)/loadwise.$(ARCH)       : $(LOAD-WISE)
+$(BIN)/loadsupercos.$(ARCH)   : $(LOAD-SUPERCOS)
+$(BIN)/skycells.$(ARCH)       : $(SKYCELLS)
+$(BIN)/dumpskycells.$(ARCH)   : $(DUMPSKYCELLS)
+$(BIN)/mkcmf.$(ARCH)          : $(MKCMF)
 
 # I need to fix the client/server version of addstar now that I have dropped Stars
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/include/WISE.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/include/WISE.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/include/WISE.h	(revision 34041)
@@ -21,35 +21,30 @@
 short WISE_W1, WISE_W2, WISE_W3, WISE_W4;
 
-SkyTable *get2mass_acc (SkyRegion *patch, char *path, char *accel);
-Stars    *get2mass_2DR_data (SkyRegion *region, char *filename, SkyRegion *patch, int photcode, int *nstars);
-Stars    *get2mass_AS_data (SkyRegion *region, char *filename, SkyRegion *patch, int phocode, int *nstars);
-Stars    *get2mass_AS_rawdata (SkyRegion *region, char *filename, SkyRegion *patch, int phocode, int *nstars);
+int ALLSKY;
 
-SkyTable *scan2mass_acc (char *path, char *accel);
-int       scan2mass_as_data (char *filename);
+AddstarClientOptions args_loadwise (int argc, char **argv, AddstarClientOptions options);
 
-char     *skipNbounds (char *line, char bound, int Nbound, int Nbyte);
-e_time    get2mass_time (char *ptr, int Nbound, int Nbyte);
-e_time    get2mass_date (char *ptr, int Nbound, int Nmax);
+int loadwise_rawdata (SkyList *skytable, char *filename, AddstarClientOptions options, int ALLSKY);
 
-int       load2mass_as_rawdata (SkyList *skytable, char *filename, AddstarClientOptions options);
-SkyTable *load2mass_acc (char *path, char *accel);
-int       get2mass_3star (Stars *star, char *line, int Nmax);
-int       load2mass_catalog (Catalog *catalog, Stars *stars, int Nstars);
+int getWISE_setup ();
+int getWISE_coords (char *line, double *R, double *D, int Nmax);
+e_time getWISE_date (char *ptr, int Nbound, int Nmax);
+e_time getWISE_time (char *ptr, int Nbound, int Nmax);
 
-int       get2mass_setup (int photcode);
-int       get2mass_coords (char *line, double *R, double *D, int Nmax);
-int       get2mass_star (Stars *star, char *line, int Nmax);
-int       get2mass_3star (Stars *star, char *line, int Nmax);
+int getWISE_sortStars (WISE_Stars *tstars, int Ntstars);
 
-int get2mass_3star_full (Stars **star, char *line, int Nmax);
-char *next2MASSfield (char *line);
-int set2MASS_ph_qual (Stars *star, char qual);
-int set2MASS_rd_flag (Stars *star, char qual);
-int set2MASS_cc_flag (Stars *star, char qual);
-int set2MASS_bl_flag (Stars *star, char qual);
-int set2MASS_gal_flag (Stars *star, char qual);
-int set2MASS_mp_flag (Stars *star, char qual);
-int set2MASS_dup_flag (Stars *star, char qual);
-int set2MASS_use_flag (Stars *star, char qual);
-int get2mass_sortStars (WISE_Stars *tstars, int Ntstars);
+int loadwise_star_allsky (Stars **star, char *line, int Nmax);
+int loadwise_star_prelim (Stars **star, char *line, int Nmax);
+
+
+char *nextWISEfield (char *line);
+int setWISE_cc_flag (Stars *star, char qual);
+int setWISE_ph_qual (Stars *star, char qual);
+int setWISE_rd_flag (Stars *star, char qual);
+int setWISE_bl_flag (Stars *star, char qual);
+int setWISE_gal_flag (Stars *star, char qual);
+int setWISE_mp_flag (Stars *star, char qual);
+int setWISE_dup_flag (Stars *star, char qual);
+int setWISE_use_flag (Stars *star, char qual);
+
+char *skipNbounds (char *line, char bound, int Nbound, int Nbyte);
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/include/addstar.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/include/addstar.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/include/addstar.h	(revision 34041)
@@ -28,4 +28,7 @@
     fprintf (stderr, "ERROR:  photcode %s not found in photcode table\n", NAME); \
     exit (0); }
+
+# define dCOS(A)   ((double) cos ((double)RAD_DEG*A))
+# define dSIN(A)   ((double) sin ((double)RAD_DEG*A))
 
 typedef struct {
@@ -56,12 +59,12 @@
 typedef struct sockaddr_in SockAddress;
 
-enum {M_IMAGE, M_REFLIST, M_REFCAT, M_FAKEIMAGE, M_RESORT};
+enum {ADDSTAR_MODE_NONE, ADDSTAR_MODE_IMAGE, ADDSTAR_MODE_REFLIST, ADDSTAR_MODE_REFCAT, ADDSTAR_MODE_FAKEIMAGE, ADDSTAR_MODE_RESORT};
 enum {NONE, SIMPLE_CMP, SIMPLE_CMF, SIMPLE_MEF, MOSAIC_CMP, MOSAIC_CMF, MOSAIC_MEF, MOSAIC_PHU, SDSS_OBJ};
 /* note: MEF implies CMF */
 
 /* globals which define database info / data sources (KEEP) */
-char   ImageCat[256];
+char   ImageCat[DVO_MAX_PATH];
 char   GSCFILE[256];
-char   CATDIR[256];
+char  *CATDIR;
 char   CATMODE[16];    /* raw, mef, split, mysql */
 char   CATFORMAT[16];  /* internal, elixir, loneos, panstarrs */
@@ -129,4 +132,10 @@
 int     OLD_RESORT;
 
+int    PARALLEL;
+int    PARALLEL_MANUAL;
+int    PARALLEL_SERIAL;
+int    HOST_ID;
+char  *HOSTDIR;
+
 // carries the mosaic into gstars
 
@@ -157,6 +166,7 @@
 /*** addstar prototypes ***/
 
-AddstarClientOptions ConfigInit   PROTO((int *argc, char **argv));
-AddstarClientOptions args         PROTO((int argc, char **argv, AddstarClientOptions options));
+AddstarClientOptions ConfigInit   	  PROTO((int *argc, char **argv));
+AddstarClientOptions args         	  PROTO((int argc, char **argv, AddstarClientOptions options));
+AddstarClientOptions args_parallel_client PROTO((int argc, char **argv, AddstarClientOptions options));
 
 void       AddToCalibration       PROTO((Average *average, SecFilt *secfilt, Measure *measure, Measure *new, off_t *next, off_t Nstar));
@@ -213,5 +223,6 @@
 int        replace_match          PROTO((Average *average, Measure *measure, Stars *star));
 int        resort_threaded        PROTO((AddstarClientOptions *options, SkyTable *sky));
-int        resort_unthreaded      PROTO((AddstarClientOptions *options, SkyTable *sky));
+int        resort_unthreaded      PROTO((AddstarClientOptions *options, SkyTable *sky, int hostID, char *hostpath));
+int        resort_unthreaded_catalogs PROTO((AddstarClientOptions *options, SkyList *skylist, int hostID, char *hostpath));
 void       resort_catalog         PROTO((Catalog *catalog));
 void       resort_catalog_old     PROTO((Catalog *catalog));
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/include/skycells.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/include/skycells.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/include/skycells.h	(revision 34041)
@@ -71,4 +71,6 @@
 int    LEVEL;
 char   PROJECTION_NUMBER[8];
+char   *SKYCELLS_MDC;
+int    READONLY;
 
 double CENTER_RA, CENTER_DEC;
@@ -109,4 +111,7 @@
 Point        sky_divide_edge           	    PROTO((Point v1, Point v2));
 
+void         skycells_to_mdc                PROTO((FILE *output, int simple, char *tess_id, FITS_DB *db)); 
+
 // XXX migrate to libdvo eventually
 int dvo_image_clear_vtable             PROTO((FITS_DB *db));
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/include/supercos.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/include/supercos.h	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/include/supercos.h	(revision 34041)
@@ -0,0 +1,85 @@
+/* header for items specific to loadsupercos.c */
+
+typedef struct {
+  double longitude;
+  double latitude;
+  double plateScale;
+  int survey_id;
+} Survey;
+
+typedef struct{
+    int64_t objID;			// 0
+    int8_t surveyID;			// 8
+    int32_t plateID;			// 9
+    double ra;				// 33
+    double dec;				// 41
+    double xCen;			// 129
+    double yCen;			// 137
+    float aU;				// 145
+    float bU;				// 149
+    int16_t thetaU;			// 154
+    int8_t class;			// 165
+    int32_t quality;			// 104
+    float prfStat;			// 208
+    float prfMag;			// 212
+    float gMag;				// 216
+    float sMag;				// 220
+} Detection;
+
+typedef struct{
+    int64_t objID;			// 0
+    int8_t surveyID;			// 8
+    int32_t plateID;			// 9
+    int64_t parentID;			// 13
+    int64_t sourceID;			// 21
+    int32_t recNum;			// 29
+    double ra;				// 33
+    double dec;				// 41
+    int64_t htmId;			// 49
+    double cx;				// 57
+    double cy;				// 65
+    double cz;				// 77
+    double xmin;			// 81
+    double xmax;			// 89
+    double ymin;			// 97
+    double ymax;			// 105
+    int32_t area;			// 113
+    float ipeak;			// 117
+    float cosmag;			// 121
+    float isky;				// 125
+    double xCen;			// 129
+    double yCen;			// 137
+    float aU;				// 145
+    float bU;				// 149
+    int16_t thetaU;			// 154
+    float aI;				// 155
+    float bI;				// 159
+    int16_t thetaI;			// 163
+    int8_t class;			// 165
+    int16_t pa;				// 166
+    int32_t ap1;			// 168
+    int32_t ap2;			// 172
+    int32_t ap3;			// 176
+    int32_t ap4;			// 180
+    int32_t ap5;			// 184
+    int32_t ap6;			// 188
+    int32_t ap7;			// 192
+    int32_t ap8;			// 196
+    int32_t blend;			// 200
+    int32_t quality;			// 204
+    float prfStat;			// 208
+    float prfMag;			// 212
+    float gMag;				// 216
+    float sMag;				// 220
+    int16_t SSAfield;			// 224
+    int16_t seam;			// 226 (228 total)
+} FullDetection;
+
+AddstarClientOptions args_loadsupercos (int *argc, char **argv, AddstarClientOptions options);
+Survey *loadsupercos_survey (char *filename, int *nsurvey);
+Image *loadsupercos_plates (Survey *survey, int Nsurvey, char *filename, int *nimage);
+int loadsupercos_getFilterInfo (char *line, char *emulsion, char *filterID);
+int loadsupercos_rawdata (Image *image, int *imlist, int Nimage, SkyList *skytable, char *filename, AddstarClientOptions options);
+int loadsupercos_sortStars (Stars *tstars, int Ntstars);
+int *loadsupercos_image_index (Image *image, int Nimage);
+int loadsupercos_getST (char *line, double *st);
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/ConfigInit.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/ConfigInit.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/ConfigInit.c	(revision 34041)
@@ -125,6 +125,10 @@
   ScanConfig (config, "TYCHO_DIR",             	"%s",  0, TYCHO_DIR);
 
+  // force CATDIR to be absolute (so parallel mode will work)
+  char tmpcatdir[DVO_MAX_PATH];
+  GetConfig (config, "CATDIR" ,                 "%s",  0, tmpcatdir);
+  CATDIR = abspath (tmpcatdir, DVO_MAX_PATH);
+
   GetConfig (config, "GSCFILE",                	"%s",  0, GSCFILE);
-  GetConfig (config, "CATDIR",                 	"%s",  0, CATDIR);
   GetConfig (config, "PHOTCODE_FILE",          	"%s",  0, MasterPhotcodeFile);
   ScanConfig (config, "CATMODE",                "%s",  0, CATMODE);
@@ -213,7 +217,6 @@
 
   /* get detection filtering mask */
-  if(!ScanConfig (config, "DETECTIONFILTER", "%d", 0, &options.detectionFilter)) {
+  if (!ScanConfig (config, "DETECTIONFILTER", "%d", 0, &options.detectionFilter)) {
       options.detectionFilter = 0;
-      fprintf (stderr, "Could not find 'DETECTIONFILTER' in config, using '%x'\n", options.detectionFilter);
   }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/ConfigInit_skycells.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/ConfigInit_skycells.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/ConfigInit_skycells.c	(revision 34041)
@@ -55,5 +55,5 @@
   /* XXX this does not yet write out the master photcode table */
   sprintf (CatdirPhotcodeFile, "%s/Photcodes.dat", CATDIR);
-  if (!LoadPhotcodes (CatdirPhotcodeFile, MasterPhotcodeFile, TRUE)) {
+  if (!LoadPhotcodes (CatdirPhotcodeFile, MasterPhotcodeFile, !READONLY)) {
     fprintf (stderr, "error loading photcode table %s or master file %s\n", CatdirPhotcodeFile, MasterPhotcodeFile);
     exit (1);
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/ReadStarsSDSS.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/ReadStarsSDSS.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/ReadStarsSDSS.c	(revision 34041)
@@ -4,6 +4,4 @@
 
 # define NFILTER 5
-# define dCOS(A)   ((double) cos ((double)RAD_DEG*A))
-# define dSIN(A)   ((double) sin ((double)RAD_DEG*A))
 
 # define GET_COLUMN_5(NAME,TYPE) \
@@ -279,24 +277,4 @@
 }
 
-// ha/dec -> alt/az
-int altaz (double *alt, double *az, double ha, double dec, double latitude) {
-
-  double sind, sinh, cosh;
-
-  sind = dSIN (dec) * dSIN (latitude) + dCOS (dec) * dCOS (ha) * dCOS (latitude);
-  *alt  = DEG_RAD * asin (sind);
-
-  sinh = - dCOS (dec) * dSIN (ha);
-  cosh =   dSIN (dec) * dCOS (latitude) - dCOS (dec) * dCOS (ha) * dSIN (latitude);
-
-  *az = DEG_RAD * atan2 (sinh, cosh);
-
-  // I may need to use the parallactic angle to get the right plate rotation...
-  // sinh = -dCOS(az) * dSIN(alt) * dSIN(ha) * dSIN(latitude) + dSIN(az) * dSIN(alt) * dCOS(ha) - dSIN(ha) * dCOS(alt) * dCOS(latitude);
-  // cosh = -dSIN(az) * dSIN(ha) * dSIN(latitude) - dCOS(az) * dCOS(ha);
-  // rot = -DEG_RAD * atan2 (sinh, cosh);
-  return TRUE;
-}
-
 int SetSDSSFlags (Stars *star, unsigned int flags1, unsigned int flags2) {
 
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstar.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstar.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstar.c	(revision 34041)
@@ -34,7 +34,7 @@
   SkyTableSetFilenames (sky, CATDIR, "cpt");
   
-  if (options.mode == M_RESORT) {
+  if (options.mode == ADDSTAR_MODE_RESORT) {
     if (NTHREADS == 0) {
-      resort_unthreaded (&options, sky);
+      resort_unthreaded (&options, sky, 0, NULL);
     } else {
       resort_threaded (&options, sky);
@@ -47,5 +47,5 @@
   /*** load in the new data (images, stars) ***/
   switch (options.mode) {
-    case M_IMAGE:
+    case ADDSTAR_MODE_IMAGE:
       stars = LoadStars (argv[1], &Nstars, &images, &Nimages, &options);
 
@@ -62,13 +62,13 @@
       ImageOptions (&options, images, Nimages);
       break;
-    case M_REFLIST:
+    case ADDSTAR_MODE_REFLIST:
       stars = grefstars (argv[1], options.photcode, &Nstars);
       skylist = SkyListForStars (sky, -1, stars, Nstars);
       break;
-    case M_RESORT:
-    case M_REFCAT:
+    case ADDSTAR_MODE_RESORT:
+    case ADDSTAR_MODE_REFCAT:
       skylist = SkyListByPatch (sky, -1, &UserPatch);
       break;
-    case M_FAKEIMAGE:
+    case ADDSTAR_MODE_FAKEIMAGE:
       images = fakeimage (argv[1], &Nimages, options.photcode);
       ALLOCATE (skylist, SkyList, 1);
@@ -137,5 +137,5 @@
 
     switch (options.mode) {
-      case M_IMAGE:
+      case ADDSTAR_MODE_IMAGE:
 	Nsubset = Nstars;
 	if (options.closest) {
@@ -145,7 +145,7 @@
 	}
 	break;
-      case M_REFCAT:
+      case ADDSTAR_MODE_REFCAT:
 	stars = greference (argv[1], skylist[0].regions[i], options.photcode, &Nstars);
-      case M_REFLIST:
+      case ADDSTAR_MODE_REFLIST:
 	subset = find_subset (skylist[0].regions[i], stars, Nstars, &Nsubset);
 	if (options.closest) {
@@ -156,5 +156,5 @@
 	if (Nsubset) free (subset);
 	break;
-      case M_RESORT:
+      case ADDSTAR_MODE_RESORT:
 	if (options.nosort == 3) catalog.sorted = FALSE;
 
@@ -192,5 +192,5 @@
     dvo_catalog_free (&catalog);
 
-    if (options.mode == M_REFCAT) free (stars);
+    if (options.mode == ADDSTAR_MODE_REFCAT) free (stars);
   }
 
@@ -216,5 +216,5 @@
 
   /* add the new images and save */
-  if (options.mode == M_IMAGE) {
+  if (options.mode == ADDSTAR_MODE_IMAGE) {
     dvo_image_addrows (&db, images, Nimages);
     SetProtect (TRUE);
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstar_client.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstar_client.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstar_client.c	(revision 34041)
@@ -0,0 +1,33 @@
+# include "addstar.h"
+
+// addstar_client is run on a remote host and is responsible for updating the catalogs
+// owned by that host.  
+
+// there is one mode:
+
+// addstar_client -resort : update the table indicies
+
+int main (int argc, char **argv) {
+
+  AddstarClientOptions options;
+
+  // get configuration info, args, lockfile (set CATDIR, HOST_ID, HOSTDIR, etc) 
+  options = ConfigInit (&argc, argv);
+  options = args_parallel_client (argc, argv, options);
+
+  // load the current sky table (layout of all SkyRegions) 
+  SkyTable *sky = SkyTableLoadOptimal (CATDIR, NULL, NULL, TRUE, -1, VERBOSE);
+  if (!sky) {
+      fprintf (stderr, "ERROR running loading sky table from %s\n", CATDIR);
+      exit (2);
+  }
+  SkyTableSetFilenames (sky, CATDIR, "cpt");
+
+  if (options.mode == ADDSTAR_MODE_RESORT) {
+    resort_unthreaded (&options, sky, HOST_ID, HOSTDIR);
+    exit (0);
+  }
+
+  fprintf (stderr, "unknown mode for addstar_client\n");
+  exit (1);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstarc.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstarc.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstarc.c	(revision 34041)
@@ -20,5 +20,5 @@
   /* send new data to server */
   switch (options.mode) {
-    case M_IMAGE:
+    case ADDSTAR_MODE_IMAGE:
       /* load data */
       stars = LoadStars (argv[1], &Nstars, &images, &Nimages, &options);
@@ -40,5 +40,5 @@
       break;
 
-    case M_REFLIST:
+    case ADDSTAR_MODE_REFLIST:
       /* load data */
       stars = grefstars (argv[1], options.photcode, &Nstars);
@@ -50,5 +50,5 @@
       break;
 
-    case M_REFCAT:
+    case ADDSTAR_MODE_REFCAT:
       /* send data to server */
       SendCommand (BindSocket, 5, "REFCT");
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstart.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstart.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/addstart.c	(revision 34041)
@@ -31,13 +31,13 @@
 
     switch (dataset[0].options[0].mode) {
-      case M_IMAGE:
+      case ADDSTAR_MODE_IMAGE:
 	UpdateDatabase_Image (dataset[0].options, dataset[0].images, dataset[0].Nimages, dataset[0].mosaic, dataset[0].stars, dataset[0].Nstars);
 	continue;
 
-      case M_REFLIST:
+      case ADDSTAR_MODE_REFLIST:
 	UpdateDatabase_Reflist (dataset[0].options, dataset[0].stars, dataset[0].Nstars);
 	continue;
 
-      case M_REFCAT:
+      case ADDSTAR_MODE_REFCAT:
 	UpdateDatabase_Refcat (dataset[0].options, dataset[0].patch, dataset[0].refcat);
 	continue;
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args.c	(revision 34041)
@@ -21,20 +21,20 @@
 
   /* basic mode: image, list, refcat */
-  options.mode = M_IMAGE;
+  options.mode = ADDSTAR_MODE_IMAGE;
   if ((N = get_argument (argc, argv, "-ref"))) {
-    options.mode = M_REFLIST;
+    options.mode = ADDSTAR_MODE_REFLIST;
     remove_argument (N, &argc, argv);
   }
   if ((N = get_argument (argc, argv, "-cat"))) {
-    options.mode = M_REFCAT;
+    options.mode = ADDSTAR_MODE_REFCAT;
     remove_argument (N, &argc, argv);
   }
   if ((N = get_argument (argc, argv, "-resort"))) {
-    options.mode = M_RESORT;
+    options.mode = ADDSTAR_MODE_RESORT;
     remove_argument (N, &argc, argv);
   }
 
   if ((N = get_argument (argc, argv, "-fakeimage"))) {
-    options.mode = M_FAKEIMAGE;
+    options.mode = ADDSTAR_MODE_FAKEIMAGE;
     remove_argument (N, &argc, argv);
     FAKE_RA = atof (argv[N]);
@@ -98,11 +98,11 @@
     remove_argument (N, &argc, argv);
   } else {
-      if (options.mode == M_IMAGE) goto allow;
-      if (options.mode == M_FAKEIMAGE) goto allow;
-      if (options.mode == M_REFLIST) goto allow;
-      if (options.mode == M_REFCAT) {
+      if (options.mode == ADDSTAR_MODE_IMAGE) goto allow;
+      if (options.mode == ADDSTAR_MODE_FAKEIMAGE) goto allow;
+      if (options.mode == ADDSTAR_MODE_REFLIST) goto allow;
+      if (options.mode == ADDSTAR_MODE_REFCAT) {
 	  fprintf (stderr, "you have requested uploading from a catalog to the entire sky in one pass\n");
       }
-      if (options.mode == M_RESORT) {
+      if (options.mode == ADDSTAR_MODE_RESORT) {
 	  fprintf (stderr, "you have requested resorting the entire sky in one pass\n");
       }
@@ -330,8 +330,42 @@
   }
 
-  if ((options.mode == M_RESORT) && (argc == 1)) return (options);
+  // XXX for the moment, make this selection manual.  it needs to be automatic 
+  // based on the state of the SkyTable
+  PARALLEL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel"))) {
+    PARALLEL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  // this is a test mode : rather than launching the remote jobs and waiting for completion,
+  // relphot will simply list the remote command and wait for the user to signal completion
+  PARALLEL_MANUAL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel-manual"))) {
+    PARALLEL = TRUE; // -parallel-manual implies -parallel
+    PARALLEL_MANUAL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  // this is a test mode : rather than launching the relphot_client jobs remotely, they are 
+  // run in serial via 'system'
+  PARALLEL_SERIAL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel-serial"))) {
+    if (PARALLEL_MANUAL) {
+      fprintf (stderr, "ERROR: cannot mix -parallel-manual and -parallel-serial\n");
+      exit (1);
+    }
+    PARALLEL = TRUE; // -parallel-serial implies -parallel
+    PARALLEL_SERIAL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  if (PARALLEL) {
+    if (options.mode != ADDSTAR_MODE_RESORT) {
+      fprintf (stderr, "parallel mode is only valid for -resort mode\n");
+      exit (2);
+    }
+  }
+
+  if ((options.mode == ADDSTAR_MODE_RESORT) && (argc == 1)) return (options);
   if (argc == 2) return (options);
 
-  if ((options.mode == M_REFLIST) && (options.photcode == 0)) {
+  if ((options.mode == ADDSTAR_MODE_REFLIST) && (options.photcode == 0)) {
     fprintf (stderr, "photcode must be specified for -ref\n");
     exit (2);
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_client.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_client.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_client.c	(revision 34041)
@@ -18,11 +18,11 @@
 
   /* basic mode: image, list, refcat */
-  options.mode = M_IMAGE;
+  options.mode = ADDSTAR_MODE_IMAGE;
   if ((N = get_argument (argc, argv, "-ref"))) {
-    options.mode = M_REFLIST;
+    options.mode = ADDSTAR_MODE_REFLIST;
     remove_argument (N, &argc, argv);
   }
   if ((N = get_argument (argc, argv, "-cat"))) {
-    options.mode = M_REFCAT;
+    options.mode = ADDSTAR_MODE_REFCAT;
     remove_argument (N, &argc, argv);
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_load2mass.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_load2mass.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_load2mass.c	(revision 34041)
@@ -18,5 +18,5 @@
 
   /* basic mode: image, list, refcat */
-  options.mode = M_REFCAT;
+  options.mode = ADDSTAR_MODE_REFCAT;
 
   /*** provide additional data ***/ 
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_loadsupercos.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_loadsupercos.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_loadsupercos.c	(revision 34041)
@@ -0,0 +1,90 @@
+# include "addstar.h"
+static void help (void);
+
+AddstarClientOptions args_loadsupercos (int *argc, char **argv, AddstarClientOptions options) {
+  
+  int N;
+
+  /* check for help request */
+  if (get_argument (*argc, argv, "-help") ||
+      get_argument (*argc, argv, "-h")) {
+    help ();
+  }
+
+  // a global used by find_matches_refstars.c (value is 1 except for load2mass & loadwise)
+  NREFSTAR_GROUP = 1;
+
+  /*** check for command line options ***/
+
+  /* basic mode: image, list, refcat */
+  options.mode = ADDSTAR_MODE_REFCAT;
+
+  /* we do not allow a subset to be extracted -- all or nothing, babe */
+  UserPatch.Rmin = 0;
+  UserPatch.Rmax= 360;
+  UserPatch.Dmin = -90;
+  UserPatch.Dmax = +90;
+
+  /* only add to existing regions */
+  options.existing_regions = FALSE;
+  if ((N = get_argument (*argc, argv, "-existing-regions"))) {
+    options.existing_regions = TRUE;
+    remove_argument (N, argc, argv);
+  }
+  /* only add to existing objects */
+  options.only_match = FALSE;
+  if ((N = get_argument (*argc, argv, "-only-match"))) {
+    options.only_match = TRUE;
+    remove_argument (N, argc, argv);
+  }
+  /* replace measurement, don't duplicate (ref/cat only) */
+  options.replace = FALSE;
+  if ((N = get_argument (*argc, argv, "-replace"))) {
+    options.replace = TRUE;
+    remove_argument (N, argc, argv);
+  }
+
+  /* extra error messages */
+  VERBOSE = FALSE;
+  if ((N = get_argument (*argc, argv, "-v"))) {
+    VERBOSE = TRUE;
+    remove_argument (N, argc, argv);
+  }
+
+  /* other addstar options which cannot be used in load2mass */
+  options.photcode = 0;
+  options.timeref = 0; 
+  options.mosaic = FALSE;
+  options.skip_missed = FALSE;
+  options.closest = FALSE;
+  options.nosort = FALSE;
+  options.update = FALSE;
+  options.only_images = FALSE;
+  options.calibrate = FALSE;
+  options.quality_airmass = FALSE;
+  ACCEPT_ASTROM = FALSE;
+  FORCE_READ = FALSE;
+  TEXTMODE = FALSE;
+  SUBPIX = FALSE;
+  DUMP = NULL;
+
+  if (*argc < 4) {
+    fprintf (stderr, "USAGE: loadsupercos [options] (surveys.csv) (plates.csv) (detections.bin) [..more files]\n");
+    exit (2);
+  }
+  return (options);
+}
+
+static void help () {
+
+  fprintf (stderr, "USAGE: loadsupercos [options] (surveys.csv) (plates.csv) (detections.bin) [..more files]\n");
+  fprintf (stderr, "  add data from Supercosmos to DVO\n\n");
+
+  fprintf (stderr, "  optional flags:\n");
+  fprintf (stderr, "  -only-match           	  : only add measurements to existing objects\n");
+  fprintf (stderr, "  -replace              	  : replace time/photcode measurements (no duplication)\n");
+  fprintf (stderr, "  -v                    	  : verbose mode\n");
+  fprintf (stderr, "  -help                 	  : this list\n");
+  fprintf (stderr, "  -h                    	  : this list\n\n");
+  exit (2);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_loadwise.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_loadwise.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_loadwise.c	(revision 34041)
@@ -0,0 +1,98 @@
+# include "addstar.h"
+# include "WISE.h"
+static void help (void);
+
+AddstarClientOptions args_loadwise (int argc, char **argv, AddstarClientOptions options) {
+  
+  int N;
+
+  /* check for help request */
+  if (get_argument (argc, argv, "-help") ||
+      get_argument (argc, argv, "-h")) {
+    help ();
+  }
+
+  // a global used by find_matches_refstars.c (value is 1 except for loadwise & loadwise)
+  NREFSTAR_GROUP = 4;
+
+  /*** check for command line options ***/
+
+  /* basic mode: image, list, refcat */
+  options.mode = ADDSTAR_MODE_REFCAT;
+
+  /* we do not allow a subset to be extracted -- all or nothing, babe */
+  UserPatch.Rmin = 0;
+  UserPatch.Rmax= 360;
+  UserPatch.Dmin = -90;
+  UserPatch.Dmax = +90;
+
+  /* only add to existing regions */
+  options.existing_regions = FALSE;
+  if ((N = get_argument (argc, argv, "-existing-regions"))) {
+    options.existing_regions = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  /* only add to existing objects */
+  options.only_match = FALSE;
+  if ((N = get_argument (argc, argv, "-only-match"))) {
+    options.only_match = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  /* replace measurement, don't duplicate (ref/cat only) */
+  options.replace = FALSE;
+  if ((N = get_argument (argc, argv, "-replace"))) {
+    options.replace = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  /* extra error messages */
+  VERBOSE = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    VERBOSE = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  /* load the prelim data dump */
+  ALLSKY = TRUE;
+  if ((N = get_argument (argc, argv, "-prelim"))) {
+    ALLSKY = FALSE;
+    remove_argument (N, &argc, argv);
+  }
+
+  /* other addstar options which cannot be used in loadwise */
+  options.photcode = 0;
+  options.timeref = 0; 
+  options.mosaic = FALSE;
+  options.skip_missed = FALSE;
+  options.closest = FALSE;
+  options.nosort = FALSE;
+  options.update = FALSE;
+  options.only_images = FALSE;
+  options.calibrate = FALSE;
+  options.quality_airmass = FALSE;
+  ACCEPT_ASTROM = FALSE;
+  FORCE_READ = FALSE;
+  TEXTMODE = FALSE;
+  SUBPIX = FALSE;
+  DUMP = NULL;
+
+  if (argc < 2) {
+    fprintf (stderr, "USAGE: loadwise [options] (wisefile) [..more files]\n");
+    exit (2);
+  }
+  return (options);
+}
+
+static void help () {
+
+  fprintf (stderr, "USAGE: loadwise [options] (wisefile) [..more files]\n");
+  fprintf (stderr, "  add data from WISE catalog to DVO\n\n");
+
+  fprintf (stderr, "  optional flags:\n");
+  fprintf (stderr, "  -only-match           	  : only add measurements to existing objects\n");
+  fprintf (stderr, "  -replace              	  : replace time/photcode measurements (no duplication)\n");
+  fprintf (stderr, "  -v                    	  : verbose mode\n");
+  fprintf (stderr, "  -help                 	  : this list\n");
+  fprintf (stderr, "  -h                    	  : this list\n\n");
+  exit (2);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_parallel_client.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_parallel_client.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_parallel_client.c	(revision 34041)
@@ -0,0 +1,119 @@
+# include "addstar.h"
+
+static void help (void);
+
+// options actually respected by addstar_client
+//   options.mode
+//   options.existing_regions
+//   options.nosort
+
+AddstarClientOptions args_parallel_client (int argc, char **argv, AddstarClientOptions options) {
+  
+  int N;
+
+  NREFSTAR_GROUP = 1; // not used by -resort
+  NSTAR_GROUP = 1; // not used by -resort
+  NTHREADS = 0; // for now, addstar_client is not threaded
+
+  /* check for help request */
+  if (get_argument (argc, argv, "-help") ||
+      get_argument (argc, argv, "-h")) {
+    help ();
+  }
+
+  memset (&options, 0, sizeof(AddstarClientOptions));
+
+  /* basic mode: image, list, refcat */
+  options.mode = ADDSTAR_MODE_NONE;
+  if ((N = get_argument (argc, argv, "-resort"))) {
+    options.mode = ADDSTAR_MODE_RESORT;
+    remove_argument (N, &argc, argv);
+  }
+  if (options.mode == ADDSTAR_MODE_NONE) {
+      fprintf (stderr, "error: no valid addstar_client mode is defined\n");
+      exit (2);
+  }
+
+  /* restrict to a portion of the sky? (REFCAT only) */
+  UserPatch.Rmin = 0;
+  UserPatch.Rmax = 360;
+  UserPatch.Dmin = -90;
+  UserPatch.Dmax = +90;
+  if ((N = get_argument (argc, argv, "-region"))) {
+    remove_argument (N, &argc, argv);
+    UserPatch.Rmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Rmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Dmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Dmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  // by definition, the client is not parallel 
+  PARALLEL = FALSE;
+  PARALLEL_MANUAL = FALSE;
+  PARALLEL_SERIAL = FALSE;
+
+  HOST_ID = 0;
+  if ((N = get_argument (argc, argv, "-hostID"))) {
+    remove_argument (N, &argc, argv);
+    HOST_ID = atoi (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!HOST_ID) help();
+
+  HOSTDIR = NULL;
+  if ((N = get_argument (argc, argv, "-hostdir"))) {
+    remove_argument (N, &argc, argv);
+    HOSTDIR = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!HOSTDIR) help();
+
+  /*** modify behavior ***/
+  /* only add to or resort existing objects */
+  options.existing_regions = FALSE;
+  if ((N = get_argument (argc, argv, "-existing-regions"))) {
+    options.existing_regions = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  // resort even tables that claim to have been sorted
+  if ((N = get_argument (argc, argv, "-force-sort"))) {
+    options.nosort = 3;  // temporary mode to mean 'force-sort'
+    remove_argument (N, &argc, argv);
+  }
+
+  /* extra error messages */
+  VERBOSE = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    VERBOSE = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  if ((options.mode == ADDSTAR_MODE_RESORT) && (argc == 1)) return (options);
+
+  fprintf (stderr, "USAGE: addstar_client -resort (SkyRegion)\n");
+  exit (2);
+}
+
+static void help () {
+
+  fprintf (stderr, "USAGE\n");
+  fprintf (stderr, "  addstar_client -resort (SkyRegion) -hostID (id) -hostdir (dir)");
+  fprintf (stderr, "     perform measure sorting for the specified catalog\n\n");
+
+  fprintf (stderr, "  optional flags:\n");
+  fprintf (stderr, "  -region ra ra dec dec 	  : only add data in specified region (-ref mode only)\n");
+  fprintf (stderr, "  -existing-regions           : only add measurements to existing catalog files\n");
+  fprintf (stderr, "  -nosort             	  : don't re-sort the measure entries (improves speed)\n");
+  fprintf (stderr, "  -update             	  : only update the new rows (forces -nosort)\n");
+  fprintf (stderr, "  -force-sort             	  : \n");
+  fprintf (stderr, "  -v                    	  : verbose mode\n");
+  fprintf (stderr, "  -help                 	  : this list\n");
+  fprintf (stderr, "  -h                    	  : this list\n\n");
+
+  exit (2);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_sedstar.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_sedstar.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/args_sedstar.c	(revision 34041)
@@ -18,5 +18,5 @@
 
   /* basic mode: image, list, refcat */
-  options.mode = M_REFCAT;
+  options.mode = ADDSTAR_MODE_REFCAT;
 
   /*** provide additional data ***/ 
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/dumpskycells.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/dumpskycells.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/dumpskycells.c	(revision 34041)
@@ -0,0 +1,71 @@
+# include "skycells.h"
+# include <libgen.h>
+
+int main (int argc, char **argv) {
+
+  int status;
+  FITS_DB db;
+  int simple = 0;
+  char *tess_id = NULL;
+
+  SetSignals ();
+  // prevent creation of CATDIR if it doesn't exist
+  READONLY = 1;
+  ConfigInit_skycells (&argc, argv);
+  
+  int N;
+  if ((N = get_argument (argc, argv, "-tess_id"))) {
+    remove_argument (N, &argc, argv);
+    tess_id = argv[N];
+    remove_argument (N, &argc, argv);
+  }
+  if ((N = get_argument (argc, argv, "-simple"))) {
+    remove_argument (N, &argc, argv);
+    simple = 1;
+  }
+
+  if (argc > 2) {
+    fprintf(stderr, "usage: dumpskycells <filename> -D CATDIR <catdir>\n");
+    exit(1);
+  }
+  char *filename = argc == 2 ? argv[1] : NULL;
+  FILE *mdcfile;
+  int closefile = 1;
+  if (!filename || !strcmp(filename, "-")) {
+    mdcfile = stdout;
+    closefile = 0;
+  } else {
+    mdcfile = fopen(filename, "w");
+  }
+  if (!mdcfile) {
+    fprintf(stderr, "failed to open %s\n", argv[1]);
+    exit(1);
+  }
+
+
+  /*** open the image table ***/
+  /* setup image table format and lock */
+  db.mode   = dvo_catalog_catmode (CATMODE);
+  db.format = dvo_catalog_catformat (CATFORMAT);
+  status    = dvo_image_lock (&db, ImageCat, 3600.0, LCK_SOFT);  // shorter timeout?
+  if (!status) Shutdown ("ERROR: failure to lock image catalog %s", db.filename);
+
+  /* load or create the image table */
+  if (db.dbstate == LCK_EMPTY) {
+    fprintf(stderr, "failed to find %s\n", ImageCat);
+    exit(1);
+  } else {
+    if (!dvo_image_load (&db, VERBOSE, FALSE)) {
+      Shutdown ("can't read image catalog %s", db.filename);
+    }
+  }
+
+  skycells_to_mdc(mdcfile, simple, tess_id, &db);
+
+  if (closefile) {
+    fclose(mdcfile);
+  }
+
+  dvo_image_unlock (&db);
+  exit (0);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/find_matches.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/find_matches.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/find_matches.c	(revision 34041)
@@ -291,11 +291,15 @@
 
     for (j = 0; j < Nsecfilt; j++) {
-      catalog[0].secfilt[Nave*Nsecfilt+j].M    	= NAN;
-      catalog[0].secfilt[Nave*Nsecfilt+j].dM   	= NAN;
-      catalog[0].secfilt[Nave*Nsecfilt+j].Xm   	= NAN_S_SHORT;
-      catalog[0].secfilt[Nave*Nsecfilt+j].M_20 	= NAN_S_SHORT;
-      catalog[0].secfilt[Nave*Nsecfilt+j].M_80 	= NAN_S_SHORT;
-      catalog[0].secfilt[Nave*Nsecfilt+j].Ncode = 0;
-      catalog[0].secfilt[Nave*Nsecfilt+j].Nused = 0;
+      catalog[0].secfilt[Nave*Nsecfilt+j].M           = NAN;
+      catalog[0].secfilt[Nave*Nsecfilt+j].Map         = NAN;
+      catalog[0].secfilt[Nave*Nsecfilt+j].dM          = NAN;
+      catalog[0].secfilt[Nave*Nsecfilt+j].Mstdev      = NAN_S_SHORT;
+      catalog[0].secfilt[Nave*Nsecfilt+j].Xm          = NAN_S_SHORT;
+      catalog[0].secfilt[Nave*Nsecfilt+j].M_20 	      = NAN_S_SHORT;
+      catalog[0].secfilt[Nave*Nsecfilt+j].M_80 	      = NAN_S_SHORT;
+      catalog[0].secfilt[Nave*Nsecfilt+j].Ncode       = 0;
+      catalog[0].secfilt[Nave*Nsecfilt+j].Nused       = 0;
+      catalog[0].secfilt[Nave*Nsecfilt+j].ubercalDist = 1000;
+      catalog[0].secfilt[Nave*Nsecfilt+j].flags       = 0;
     }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/find_matches_closest.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/find_matches_closest.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/find_matches_closest.c	(revision 34041)
@@ -292,11 +292,15 @@
 
     for (j = 0; j < Nsecfilt; j++) {
-      catalog[0].secfilt[Nave*Nsecfilt+j].M  = NAN;
-      catalog[0].secfilt[Nave*Nsecfilt+j].dM = NAN;
-      catalog[0].secfilt[Nave*Nsecfilt+j].Xm = NAN_S_SHORT;
-      catalog[0].secfilt[Nave*Nsecfilt+j].M_20 	= NAN_S_SHORT;
-      catalog[0].secfilt[Nave*Nsecfilt+j].M_80 	= NAN_S_SHORT;
-      catalog[0].secfilt[Nave*Nsecfilt+j].Ncode = 0;
-      catalog[0].secfilt[Nave*Nsecfilt+j].Nused = 0;
+      catalog[0].secfilt[Nave*Nsecfilt+j].M           = NAN;
+      catalog[0].secfilt[Nave*Nsecfilt+j].Map         = NAN;
+      catalog[0].secfilt[Nave*Nsecfilt+j].dM          = NAN;
+      catalog[0].secfilt[Nave*Nsecfilt+j].Mstdev      = NAN_S_SHORT;
+      catalog[0].secfilt[Nave*Nsecfilt+j].Xm          = NAN_S_SHORT;
+      catalog[0].secfilt[Nave*Nsecfilt+j].M_20 	      = NAN_S_SHORT;
+      catalog[0].secfilt[Nave*Nsecfilt+j].M_80 	      = NAN_S_SHORT;
+      catalog[0].secfilt[Nave*Nsecfilt+j].Ncode       = 0;
+      catalog[0].secfilt[Nave*Nsecfilt+j].Nused       = 0;
+      catalog[0].secfilt[Nave*Nsecfilt+j].ubercalDist = 1000;
+      catalog[0].secfilt[Nave*Nsecfilt+j].flags       = 0;
     }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/find_matches_refstars.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/find_matches_refstars.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/find_matches_refstars.c	(revision 34041)
@@ -13,5 +13,10 @@
   int Nsecfilt;
 
-  if ((NREFSTAR_GROUP != 1) && (NREFSTAR_GROUP != 3)) {
+  switch (NREFSTAR_GROUP) {
+    case 1:
+    case 3:
+    case 4:
+      break;
+    default:
       fprintf (stderr, "ERROR: NREFSTAR_GROUP NOT SET!\n");
       exit (1);
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos.c	(revision 34041)
@@ -0,0 +1,73 @@
+# include "addstar.h"
+# include "supercos.h"
+
+/* This is the DVO program to upload Supercosmos detections into a DVO database.  It is modeled
+   on the loadwise program.  Like that case, it is expected to be run only rarely (once?).  The
+   supercosmos data are delivered as *.bin files.  The format of the file is described by the
+   SuperCosDetection structure.  It does not allow a subset of the sky to be uploaded; entire
+   Supercosmos files are loaded if supplied on the command line.
+
+   USAGE: loadsupercos -D CATDIR (catdir) (surveys.csv) (plates.csv) (scfile) [...more files]
+ */
+
+int main (int argc, char **argv) {
+
+  int i, status;
+  SkyTable *sky;
+  SkyList *skylist = NULL;
+  AddstarClientOptions options;
+  FITS_DB db;
+
+  // need to construct these options with args_loadWISE...
+  options = ConfigInit (&argc, argv);
+  options = args_loadsupercos (&argc, argv, options);
+
+  // load the full sky description table:
+  sky = SkyTableLoadOptimal (CATDIR, SKY_TABLE, GSCFILE, TRUE, SKY_DEPTH, VERBOSE);
+  SkyTableSetFilenames (sky, CATDIR, "cpt");
+  
+  // generate the subset matching the user-selected region
+  skylist = SkyListByPatch (sky, -1, &UserPatch);
+
+  // if we only match to existing (already populated) regions, limit the select to those regions:
+  if (options.existing_regions) {
+    SkyList *tmp;
+    tmp = SkyListExistingSubset (skylist, CATDIR);
+    SkyListFree (skylist);
+    skylist = tmp;
+  }
+
+  // load the images table (needed regardless)
+  int Nsurvey = 0;
+  Survey *survey = loadsupercos_survey(argv[1], &Nsurvey);
+
+  // load the images table (needed regardless)
+  int Nimage = 0;
+  Image *image = loadsupercos_plates(survey, Nsurvey, argv[2], &Nimage);
+
+  // attempt to open the existing images table.  if it does not exist, we will save the loaded images
+  db.mode   = dvo_catalog_catmode (CATMODE);
+  db.format = dvo_catalog_catformat (CATFORMAT);
+  status    = dvo_image_lock (&db, ImageCat, 3600.0, LCK_XCLD);  // shorter timeout?
+  if (!status) Shutdown ("ERROR: failure to lock image catalog %s", db.filename);
+
+  /* load or create the image table */
+  if (db.dbstate == LCK_EMPTY) {
+    if (VERBOSE) fprintf (stderr, "can't find %s, creating a new one\n", ImageCat);
+    dvo_image_create (&db, GetZeroPoint());
+    dvo_image_addrows (&db, image, Nimage);
+    SetProtect (TRUE);
+    dvo_image_update (&db, VERBOSE);
+    SetProtect (FALSE);
+    if (VERBOSE) fprintf (stderr, "created image table for Supercosmos\n");
+  }
+
+  int *imlist = loadsupercos_image_index (image, Nimage);
+
+  for (i = 3; i < argc; i++) {
+      fprintf (stderr, "loading %s\n", argv[i]);
+      loadsupercos_rawdata (image, imlist, Nimage, skylist, argv[i], options);
+  }
+  exit (0);
+}  
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_ops.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_ops.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_ops.c	(revision 34041)
@@ -0,0 +1,122 @@
+# include "addstar.h"
+# include "supercos.h"
+
+// this is defined in libohana/src/string.c but not generally exposed
+char *_parse_nextword_csv (char *string);
+
+int loadsupercos_getFilterInfo (char *line, char *emulsion, char *filterID) {
+    
+  int i;
+  int Nchar = 0;
+  char *p1 = line;
+
+  // emulsion is field 11, filterID is field 12
+  for (i = 1; i < 11; i++) {
+    p1 = _parse_nextword_csv (p1);
+    if (!p1) {
+      fprintf (stderr, "error parsing filter info for line %s\n", line);
+      abort();
+    }
+  }
+  if (*p1 == ',') {
+    fprintf (stderr, "missing emulsion info for line %s\n", line);
+    abort();
+  }
+
+  char *p2 = _parse_nextword_csv (p1);
+  if (!p2) {
+    fprintf (stderr, "error parsing filter info for line %s\n", line);
+    abort();
+  }
+  if (*p2 == ',') {
+    fprintf (stderr, "missing filter ID for line %s\n", line);
+    abort();
+  }
+
+  char *p3 = _parse_nextword_csv (p2);
+  if (!p3) {
+    fprintf (stderr, "error parsing filter info for line %s\n", line);
+    abort();
+  }
+
+  Nchar = p2 - p1 - 1;
+  strncpy (emulsion, p1, Nchar);
+  emulsion[Nchar] = 0;
+  stripwhite (emulsion);
+	
+  Nchar = p3 - p2 - 1;
+  strncpy (filterID, p2, Nchar);
+  filterID[Nchar] = 0;
+  stripwhite (filterID);
+	
+  return TRUE;
+}
+
+int loadsupercos_getST (char *line, double *st) {
+    
+  int i;
+  char *p1 = line;
+
+  // lstObs is field 20
+  for (i = 1; i < 20; i++) {
+    p1 = _parse_nextword_csv (p1);
+    if (!p1) {
+      fprintf (stderr, "error parsing filter info for line %s\n", line);
+      abort();
+    }
+  }
+  if (*p1 == ',') {
+    fprintf (stderr, "missing sidereal time info for line %s\n", line);
+    abort();
+  }
+
+  char hour[3], minute[3];
+  strncpy(hour, p1, 2); hour[2] = 0;
+  strncpy(minute, p1+2, 2); minute[2] = 0;
+
+  double minuteF = atof (minute);
+  double hourF = atof(hour);
+  *st = hourF + minuteF / 60.0;
+	
+  return TRUE;
+}
+
+int loadsupercos_sortStars (Stars *tstars, int Ntstars) {
+
+# define SWAPFUNC(A,B){ Stars temp = tstars[A]; tstars[A] = tstars[B]; tstars[B] = temp; }
+# define COMPARE(A,B)(tstars[A].average.R < tstars[B].average.R)
+
+  OHANA_SORT (Ntstars, COMPARE, SWAPFUNC);
+
+# undef SWAPFUNC
+# undef COMPARE
+  
+  return TRUE;
+}
+
+int *loadsupercos_image_index (Image *image, int Nimage) {
+
+  int i, *index;
+
+  // note that externID is unsigned, so we cannot set max to -1
+  int maxIndex = 0;
+  for (i = 0; i < Nimage; i++) {
+    maxIndex = MAX (maxIndex, image[i].externID);
+  }
+
+  ALLOCATE (index, int, maxIndex + 1);
+  for (i = 0; i < maxIndex + 1; i++) {
+    index[i] = -1;
+  }
+
+  for (i = 0; i < Nimage; i++) {
+    int plateID = image[i].externID;
+    if (plateID < 0) abort();
+    if (plateID > maxIndex) abort();
+    if (index[plateID] != -1) abort();
+    index[plateID] = i;
+  }
+
+  return index;
+
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_plates.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_plates.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_plates.c	(revision 34041)
@@ -0,0 +1,347 @@
+# include "addstar.h"
+# include "supercos.h"
+
+Image *loadsupercos_plates (Survey *survey, int Nsurvey, char *filename, int *nimage) {
+
+  // these are fields read directly from the file.  some are supplied unchanged to images,
+  // some require adjustments.
+
+  double mjd, exptime, sidtime, RAo, DECo, aXmin, aXmax, aYmin, aYmax, alt, az, stepsize;
+  int nstar, survey_id, plate_id; 
+  char line[3000], emulsion[128], filterID[128];
+
+  FILE *f = fopen (filename, "r");
+  if (f == NULL) {
+    fprintf (stderr, "failed to open SuperCOSMOS plate table file %s\n", filename);
+    exit (1);
+  }
+  if (scan_line (f, line) == EOF) {
+    fprintf (stderr, "error reading header line of %s\n", filename);
+    exit (1);
+  }
+  if (scan_line (f, line) == EOF) {
+    fprintf (stderr, "error reading empty plate line of %s\n", filename);
+    exit (1);
+  }
+
+  int NIMAGE = 1000;
+  int Nimage = 0;
+  Image *image = NULL;
+
+  ALLOCATE (image, Image, NIMAGE);
+
+  int status = TRUE;
+  while (scan_line (f, line) != EOF) {
+  
+    iparse_csv (&plate_id, 1, line);
+    iparse_csv (&survey_id, 2, line);
+    if (survey_id >= Nsurvey) {
+      fprintf (stderr, "unknown survey %d\n", survey_id);
+      abort();
+    }
+
+    dparse_csv (&mjd, 28, line); // NOTE dparse is 1 counting (but 0 == 1?)
+    iparse_csv (&nstar, 106, line);
+    dparse_csv (&aXmin, 39, line);
+    dparse_csv (&aXmax, 40, line);
+    dparse_csv (&aYmin, 41, line);
+    dparse_csv (&aYmax, 42, line);
+
+    dparse_csv (&stepsize, 37, line); // microns / pixel
+    dparse_csv (&exptime, 21, line);
+    dparse_csv (&sidtime, 20, line);
+    loadsupercos_getST (line, &sidtime);
+
+    dparse_csv (&RAo, 14, line);
+    dparse_csv (&DECo, 15, line);
+      
+    loadsupercos_getFilterInfo (line, emulsion, filterID);
+
+    // need to pass sidereal time in degrees
+    altaz (&alt, &az, 15.0*sidtime - RAo, DECo, survey[survey_id].latitude);
+
+    float scale = stepsize * survey[survey_id].plateScale / 1000.0 / 3600.0; // scale in degrees / pixel
+
+    image[Nimage].tzero = ohana_mjd_to_sec (mjd);
+    image[Nimage].nstar = nstar;
+    image[Nimage].secz = 1.0 / cos(RAD_DEG*alt);
+
+    image[Nimage].NX = 5.00 / scale;
+    image[Nimage].NY = 4.75 / scale;
+
+    image[Nimage].apmifit = 0.0;
+    image[Nimage].dapmifit = 0.0;
+    image[Nimage].Mcal = 0.0;
+    image[Nimage].dMcal = 0.0;
+    image[Nimage].Xm = 0.0;
+
+    char photname[128];
+    snprintf (photname, 128, "SCOS.%s.%s", emulsion, filterID);
+    image[Nimage].photcode = GetPhotcodeCodebyName (photname);
+    if (!image[Nimage].photcode) {
+      fprintf (stderr, "unknown photcode %s\n", photname);
+      fprintf (stderr, "line %d: %s\n", Nimage, line);
+      abort();
+    }
+    image[Nimage].exptime = exptime * 60.0;
+    image[Nimage].sidtime = sidtime; // sidereal time in hours
+    image[Nimage].latitude = survey[survey_id].latitude;
+
+    image[Nimage].RAo = RAo;
+    image[Nimage].DECo = DECo;
+    image[Nimage].Radius = NAN;
+    
+    snprintf (image[Nimage].name, 121, "SCOS.%02d.%06d", survey_id, plate_id);
+    image[Nimage].imageID = Nimage + 1;
+    image[Nimage].externID = plate_id;
+
+    image[Nimage].detection_limit = 0;
+    image[Nimage].saturation_limit = 0;
+    image[Nimage].cerror = 0;
+    image[Nimage].fwhm_x = 0;
+    image[Nimage].fwhm_y = 0;
+    image[Nimage].trate = 0.0;
+    image[Nimage].ccdnum = 0;
+    image[Nimage].flags = 0;
+    image[Nimage].parentID = 0;
+    image[Nimage].sourceID = 0;
+    image[Nimage].nLinkAstrom = 0;
+    image[Nimage].nLinkPhotom = 0;
+    image[Nimage].dXpixSys = NAN;
+    image[Nimage].dYpixSys = NAN;
+    image[Nimage].dMagSys = NAN;
+    image[Nimage].nFitAstrom = 0;
+    image[Nimage].nFitPhotom = 0;
+    image[Nimage].photom_map_id = 0;
+    image[Nimage].astrom_map_id = 0;
+
+
+    // for now, we define a fake coordinate system based on the boresite center
+    strcpy (image[Nimage].coords.ctype, "RA---TAN");
+    
+    image[Nimage].coords.crval1 = RAo;
+    image[Nimage].coords.crval2 = DECo;
+    
+    image[Nimage].coords.crpix1 = 0.5*image[Nimage].NX;
+    image[Nimage].coords.crpix2 = 0.5*image[Nimage].NY;
+    image[Nimage].coords.cdelt1 = image[Nimage].coords.cdelt2 = scale;
+
+    image[Nimage].coords.pc1_1 = 0.0;
+    image[Nimage].coords.pc1_2 = 1.0;
+    image[Nimage].coords.pc2_1 = 1.0;
+    image[Nimage].coords.pc2_2 = 0.0;
+
+    image[Nimage].coords.Npolyterms = 0;
+    memset (image[Nimage].coords.polyterms, 0, 2*7*sizeof(float));
+
+    Nimage ++;
+    CHECK_REALLOCATE (image, Image, NIMAGE, Nimage, 1000);
+  }
+  fclose (f);
+
+  if (!status) abort();
+
+  *nimage = Nimage;
+  return image;
+}
+
+/*** Image fields and mappings from supercosmos ***/
+
+// tzero : mjd [27]
+// nstar : objNum [105]
+// secz : need to get telescope lattitude & longitude numbers
+// NX : from aXmin, aXmax? [38,39]
+// NY : from aXmin, aXmax? [40,41]
+// apmifit : 0.0
+// dapmifit : 0.0
+// Mcal : 0.0
+// dMcal : 0.0
+// Xm : NAN
+// photcode : from filterID [11]
+// exptime : expLength (min) [20]
+// sidtime : lstObs [19]
+// latitude : (from survey_id) [01]
+// RAo : raPnt [13]
+// DECo : decPnt [14]
+// Radius : (calculate) 
+// DUMMY : 
+// name : generate from plateID? [00]
+// detection_limit : NAN
+// saturation_limit : NAN
+// cerror : NAN
+// fwhm_x : NAN
+// fwhm_y : 
+// trate : 
+// ccdnum : 
+// flags : 
+// imageID : 
+// parentID : 
+// externID : 
+// sourceID : 
+// nLinkAstrom : 
+// nLinkPhotom : 
+// dummy3 : 
+// dXpixSys : 
+// dYpixSys : 
+// dMagSys : 
+// nFitAstrom : 
+// nFitPhotom : 
+// photom_map_id : 
+// astrom_map_id : 
+
+/*** SuperCOSMOS plate table (downloaded from the SSA).  CSV file contains the following
+ * fields:
+ ***/
+
+//  1 plateID
+//  2 surveyID
+//  3 fieldID
+//  4 plateNum
+//  5 dateMeas
+//  6 timeMeas
+//  7 instrument
+//  8 softVersion
+//  9 operator
+// 10 scanMaterial
+// 11 emulsion
+// 12 filterID
+// 13 filterComm
+// 14 raPnt
+// 15 decPnt
+// 16 radecSys
+// 17 equinox
+// 18 eqTsys
+// 19 utDateObs
+// 20 lstObs
+// 21 expLength
+// 22 epoch
+// 23 domeTemp
+// 24 domePressure
+// 25 domeHumid
+// 26 waveEffect
+// 27 tropl
+// 28 mjd
+// 29 focusNX
+// 30 focusNY
+// 31 calType
+// 32 stepWdg
+// 33 nSteps
+// 34 orientation
+// 35 emulpos
+// 36 sosp
+// 37 stepsize
+// 38 scanlen
+// 39 aXmin
+// 40 aXmax
+// 41 aYmin
+// 42 aYmax
+// 43 xPnt
+// 44 yPnt
+// 45 areaCut
+// 46 apParam
+// 47 dbParam
+// 48 dbAmin
+// 49 dbAmax
+// 50 dbAcut
+// 51 dbLevel
+// 52 skySquare
+// 53 skyDefn
+// 54 skyFilter
+// 55 fThresh
+// 56 fSclen
+// 57 pCut
+// 58 starCat
+// 59 brightLim
+// 60 faintLim
+// 61 equinRef
+// 62 tSysRef
+// 63 maxIter
+// 64 rCritIni
+// 65 rCritAbs
+// 66 rCritRel
+// 67 rCritFin
+// 68 distType
+// 69 scdGrid
+// 70 raCol
+// 71 decCol
+// 72 raPMCol
+// 73 decPMCol
+// 74 plxCol
+// 75 rvCol
+// 76 magCol
+// 77 cEquinox
+// 78 cEqTSys
+// 79 cEpoch
+// 80 cEpTSys
+// 81 starsInit
+// 82 starsSelec
+// 83 starsUsed
+// 84 coeffs1
+// 85 coeffs2
+// 86 coeffs3
+// 87 coeffs4
+// 88 coeffs5
+// 89 coeffs6
+// 90 cubicDist
+// 91 obsRaPnt
+// 92 obsDecPnt
+// 93 shiftPnt
+// 94 areaMin
+// 95 areaMax
+// 96 magMin
+// 97 magMax
+// 98 ellipMin
+// 99 ellipMax
+//100 ellipMode
+//101 orientMode
+//102 ellipMed
+//103 orientMed
+//104 ellipMean
+//105 orientMean
+//106 objNum
+//107 nParents
+//108 lane1Count
+//109 lane2Count
+//110 lane3Count
+//111 lane4Count
+//112 lane5Count
+//113 lane6Count
+//114 lane7Count
+//115 lane8Count
+//116 lane9Count
+//117 lane10Count
+//118 lane11Count
+//119 lane12Count
+//120 lane13Count
+//121 lane14Count
+//122 lane15Count
+//123 lane16Count
+//124 lane17Count
+//125 lane18Count
+//126 lane19Count
+//127 lane20Count
+//128 lane21Count
+//129 lane22Count
+//130 lane23Count
+//131 lane24Count
+//132 lane25Count
+//133 lane26Count
+//134 lane27Count
+//135 lane28Count
+//136 lane29Count
+//137 lane30Count
+//138 astResidX
+//139 astResidY
+//140 nCalCoeffs
+//141 CalXK
+//142 gradient
+//143 getCal1
+//144 getCal2
+//145 getCal3
+//146 getCal4
+//147 getCal5
+//148 getCal6
+//149 ffZp
+//150 galZp
+//151 galGrad
+//152 directory
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_rawdata.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_rawdata.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_rawdata.c	(revision 34041)
@@ -0,0 +1,222 @@
+# include "addstar.h"
+# include "supercos.h"
+
+# define NBYTE 228
+# define NRECORDS 1000000
+# define DEBUG 0
+
+int loadsupercos_rawdata (Image *image, int *imlist, int Nimage, SkyList *skytable, char *filename, AddstarClientOptions options) {
+  
+  int i, j, verbose;
+  int Nstars, NSTARS, Nrecords;
+  
+  FILE *f;
+  char *buffer;
+
+  Detection *sstars;
+  Stars **stars, *tstars;
+  SkyList *skylist;
+  SkyRegion *region;
+  Catalog catalog;
+
+  // the data files are written as an integer number of 228 byte records
+  ALLOCATE (buffer, char, NRECORDS*NBYTE);
+
+  f = fopen (filename, "r");
+  if (f == NULL) Shutdown ("can't read the Supercosmos data file: %s", filename);
+
+  ALLOCATE (tstars, Stars, NRECORDS);
+  ALLOCATE (sstars, Detection, NRECORDS); 
+
+  double Rmin = 360.0;
+  double Rmax =   0.0;
+  double Dmin = +90.0;
+  double Dmax = -90.0;
+
+  while ((Nrecords = fread (buffer, NBYTE, NRECORDS, f)) != 0) {
+    if (Nrecords == -1) Shutdown ("error reading from raw file %s", filename);
+    if (DEBUG) fprintf (stderr, "read %d bytes (%d bytes x %d rows)", NBYTE * Nrecords, NBYTE, Nrecords);
+
+    if (VERBOSE) fprintf (stderr, "read .. ");
+
+    // extract the basic values from the buffer
+    for (i = 0; i < Nrecords; i++) {
+	sstars[i].objID    = *(int64_t *) &buffer[i*NBYTE + 0];
+	sstars[i].surveyID = *(int8_t *)  &buffer[i*NBYTE + 8];
+	sstars[i].plateID  = *(int32_t *) &buffer[i*NBYTE + 9];
+	sstars[i].ra       = *(double *)  &buffer[i*NBYTE + 33];
+	sstars[i].dec      = *(double *)  &buffer[i*NBYTE + 41];
+	sstars[i].xCen     = *(double *)  &buffer[i*NBYTE + 129];
+	sstars[i].yCen     = *(double *)  &buffer[i*NBYTE + 137];
+	sstars[i].aU       = *(float *)   &buffer[i*NBYTE + 145];
+	sstars[i].bU       = *(float *)   &buffer[i*NBYTE + 149];
+	sstars[i].thetaU   = *(int16_t *) &buffer[i*NBYTE + 154];
+	sstars[i].class    = *(int8_t *)  &buffer[i*NBYTE + 165];
+	sstars[i].quality  = *(int32_t *) &buffer[i*NBYTE + 204];
+	sstars[i].prfStat  = *(float *)   &buffer[i*NBYTE + 208];
+	sstars[i].prfMag   = *(float *)   &buffer[i*NBYTE + 212];
+	sstars[i].gMag     = *(float *)   &buffer[i*NBYTE + 216];
+	sstars[i].sMag     = *(float *)   &buffer[i*NBYTE + 220];
+    }
+
+    // convert to the Stars format
+    for (i = 0; i < Nrecords; i++) {
+	InitStar (&tstars[i]);
+	tstars[i].measure.Xccd = sstars[i].xCen;
+	tstars[i].measure.Yccd = sstars[i].yCen;
+
+	tstars[i].measure.M = sstars[i].sMag;
+	tstars[i].measure.Map = sstars[i].gMag;
+	tstars[i].measure.photFlags = sstars[i].class;
+
+	tstars[i].average.R = sstars[i].ra;
+	tstars[i].average.D = sstars[i].dec;
+
+	int Ni = imlist[sstars[i].plateID];
+	if (Ni == -1) abort();
+
+	// XXX fix these
+	tstars[i].measure.Mcal = 0.0;
+	tstars[i].measure.dt = image[Ni].exptime;
+
+	double sidtime = image[Ni].sidtime;
+	double latitude = image[Ni].latitude;
+	
+	double alt, az;
+	altaz (&alt, &az, 15.0*sidtime - tstars[i].average.R, tstars[i].average.D, latitude);
+
+	tstars[i].measure.airmass = 1.0 / cos(RAD_DEG*alt);
+	tstars[i].measure.az = az;
+	tstars[i].measure.t = image[Ni].tzero;
+	tstars[i].measure.imageID = image[Ni].imageID;
+	tstars[i].measure.photcode = image[Ni].photcode;
+
+	tstars[i].measure.FWx = ToShortPixels(sstars[i].aU);
+	tstars[i].measure.FWy = ToShortPixels(sstars[i].bU);
+	tstars[i].measure.theta = ToShortDegrees(sstars[i].thetaU);
+
+	Rmin = MIN (Rmin, tstars[i].average.R);
+	Rmax = MAX (Rmax, tstars[i].average.R);
+	Dmin = MIN (Dmin, tstars[i].average.D);
+	Dmax = MAX (Dmax, tstars[i].average.D);
+    }
+
+    if (VERBOSE) fprintf (stderr, "scan %d stars (%10.6f - %10.6f, %10.6f - %10.6f) .. ", Nrecords, Rmin, Rmax, Dmin, Dmax);
+
+    // sort the tstars by RA
+    loadsupercos_sortStars (tstars, Nrecords);
+
+    // scan through the stars, loading the containing catalogs
+    // skip through table for unsaved stars
+    for (i = 0; i < Nrecords; i++) {
+      if (tstars[i].found != -1) continue;
+
+      // scan forward until we reach the UserPatch (stars sorted by RA)
+      if (tstars[i].average.R < UserPatch.Rmin) continue;
+      if (tstars[i].average.R > UserPatch.Rmax) break;
+      if (tstars[i].average.D < UserPatch.Dmin) continue;
+      if (tstars[i].average.D > UserPatch.Dmax) continue;
+
+      // identify the relevant catalog
+      skylist = SkyRegionByPoint_List (skytable, -1, tstars[i].average.R, tstars[i].average.D);
+      if (skylist[0].Nregions == 0) {
+	  SkyListFree (skylist);
+	  continue;
+      }
+      region = skylist[0].regions[0];
+      if (DEBUG) fprintf (stderr, "writing to %s\n", skylist[0].filename[0]);
+
+      int this_image_id = tstars[i].measure.imageID;
+
+      // loop over stars in this WISE region that are also in this output region
+      Nstars = 0;
+      NSTARS = 1000;
+      ALLOCATE (stars, Stars *, NSTARS);
+
+      for (j = i; j < Nrecords; j++) {
+	if (tstars[j].found != -1) continue;
+
+	if (tstars[j].measure.imageID != this_image_id) continue;
+
+	// check if in skyregion
+	if (tstars[j].average.R < region[0].Rmin) continue;
+	if (tstars[j].average.R > region[0].Rmax) break;
+	if (tstars[j].average.D < region[0].Dmin) continue;
+	if (tstars[j].average.D > region[0].Dmax) continue;
+	  
+	// check if in UserPatch
+	if (tstars[j].average.R < UserPatch.Rmin) continue;
+	if (tstars[j].average.R > UserPatch.Rmax) break;
+	if (tstars[j].average.D < UserPatch.Dmin) continue;
+	if (tstars[j].average.D > UserPatch.Dmax) continue;
+
+	stars[Nstars] = &tstars[j];
+	Nstars ++;
+
+	CHECK_REALLOCATE (stars, Stars *, NSTARS, Nstars, 1000);
+      }
+	  
+      if (DEBUG) fprintf (stderr, "selected %d stars (%10.6f - %10.6f, %10.6f - %10.6f)\n", Nstars, 
+			  region[0].Rmin, region[0].Rmax, region[0].Dmin, region[0].Dmax);
+
+      if (1) {
+	verbose = VERBOSE;
+	VERBOSE = FALSE;
+
+	// now we have all of the loaded stars in this catalog
+	catalog.filename = skylist[0].filename[0];
+	catalog.catformat = dvo_catalog_catformat (CATFORMAT);  // set the default catformat from config data
+	catalog.catmode   = dvo_catalog_catmode (CATMODE);      // set the default catmode from config data
+	catalog.catflags = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
+	catalog.Nsecfilt  = GetPhotcodeNsecfilt ();
+
+	// an error exit status here is a significant error
+	if (!dvo_catalog_open (&catalog, skylist[0].regions[0], VERBOSE, "w")) {
+	  fprintf (stderr, "ERROR: failure to open/create catalog file %s\n", catalog.filename);
+	  exit (2);
+	}
+
+	// assume no input star matches an existing star 
+	// simply add to the existing table
+	// loadWISE_catalog (&catalog, stars, Nstars);
+	find_matches_refstars (skylist[0].regions[0], stars, Nstars, &catalog, options);
+	// loadWISE_catalog (&catalog, stars, Nstars);
+
+	dvo_catalog_save (&catalog, VERBOSE);
+	dvo_catalog_unlock (&catalog);
+	dvo_catalog_free (&catalog);
+	// free (catalog.filename);
+	// XXX don't free this! it points to an element of the skytable
+      }
+
+      SkyListFree (skylist);
+
+      free (stars);
+      VERBOSE = verbose;
+    }
+    if (VERBOSE) fprintf (stderr, "done\n");
+  }
+
+  if (VERBOSE) fprintf (stderr, "\n");
+  
+  free (tstars);
+  free (sstars);
+
+  fclose (f);
+  free (buffer);
+  return (TRUE);
+}
+
+/*
+  for each WISE file:
+  for each data block
+  generate a table of: R, D, byte, flag
+  for each unsaved star
+  find containing catalog
+  load catalog
+  find all contained stars
+  add to catalog
+  save catalog 
+  mark all contained stars
+*/
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_survey.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_survey.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadsupercos_survey.c	(revision 34041)
@@ -0,0 +1,69 @@
+# include "addstar.h"
+# include "supercos.h"
+
+Survey *loadsupercos_survey (char *filename, int *nsurvey) {
+
+  char line[1024];
+
+  FILE *f = fopen (filename, "r");
+  if (f == NULL) {
+    fprintf (stderr, "failed to open SuperCOSMOS survey table file %s\n", filename);
+    exit (1);
+  }
+  if (scan_line (f, line) == EOF) {
+    fprintf (stderr, "error reading header line of %s\n", filename);
+    exit (1);
+  }
+
+  int NSURVEY = 20;
+  int Nsurvey = 0;
+  Survey *survey = NULL;
+  ALLOCATE (survey, Survey, NSURVEY);
+  while (scan_line (f, line) != EOF) {
+
+    iparse_csv (&survey[Nsurvey].survey_id,   1, line);
+    dparse_csv (&survey[Nsurvey].longitude,  10, line);
+    dparse_csv (&survey[Nsurvey].latitude,   11, line);
+    dparse_csv (&survey[Nsurvey].plateScale, 13, line); // arcsec / mm
+
+    if (Nsurvey != survey[Nsurvey].survey_id) {
+      fprintf (stderr, "NEED to SORT surveys\n");
+      abort();
+    }
+
+    Nsurvey ++;
+
+    CHECK_REALLOCATE (survey, Survey, NSURVEY, Nsurvey, 10);
+  }
+  fclose (f);
+
+  *nsurvey = Nsurvey;
+  return survey;
+}
+
+// fields in the survey.csv file (this could be read from the header line, but it is too much work)
+//   1 surveyID
+//   2 surveyName
+//   3 systemID
+//   4 fieldOfView
+//   5 decMin
+//   6 decMax
+//   7 numFields
+//   8 telescope
+//   9 telAperture
+//  10 telLong
+//  11 telLat
+//  12 telHeight
+//  13 plateScale
+//  14 colour
+//  15 waveMin
+//  16 waveMax
+//  17 waveEff
+//  18 magLimit
+//  19 epochMin
+//  20 epochMax
+//  21 epTsys
+//  22 equinox
+//  23 eqTsys
+//  24 surveyRef
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise.c	(revision 34041)
@@ -2,16 +2,24 @@
 # include "WISE.h"
 
+/* This is the DVO program to upload WISE detections into a DVO database.
+   It is modeled on the load2mass program, but unlike that case, it is expected to be run only
+   rarely (once?).  The WISE data are delivered as *.bz2 files.  This program assumes the files
+   have been decompressed.  It does not allow a subset of the sky to be uploaded; entire WISE
+   files are loaded if supplied on the command line.
+
+   USAGE: loadwise -D CATDIR (catdir) (wisefile) [...more files]
+
+ */
+
 int main (int argc, char **argv) {
 
-  char *path;
   int i;
-  SkyTable *sky, *skyWISE;
+  SkyTable *sky;
   SkyList *skylist = NULL;
-  SkyList *overlap = NULL;
   AddstarClientOptions options;
 
   // need to construct these options with args_loadWISE...
   options = ConfigInit (&argc, argv);
-  options = args_loadWISE (argc, argv, options);
+  options = args_loadwise (argc, argv, options);
 
   // load the full sky description table:
@@ -30,23 +38,9 @@
   }
 
-  path = WISE_DIR_PRELIM;
-
-  // the accel.dat file has the raw filenames
-  // test if the file exists, or else try the .gz version
-  // XXX can we build an accelerator?
-  skyWISE = loadWISE_acc (path, "accel.dat");
-  
-  for (i = 0; i < skyWISE[0].Nregions; i++) {
-    // check if any of the skylist entries overlap this WISE catalog:
-    overlap = SkyListByBounds_List (skylist, -1, skyWISE[0].regions[i].Rmin, skyWISE[0].regions[i].Rmax, skyWISE[0].regions[i].Dmin, skyWISE[0].regions[i].Dmax);
-    if (overlap[0].Nregions == 0) {
-      SkyListFree (overlap);
-      continue;
-    }
-    
-    fprintf (stderr, "loading %s\n", skyWISE[0].filename[i]);
-    loadWISE_as_rawdata (overlap, skyWISE[0].filename[i], options);
-    SkyListFree (overlap);
+  for (i = 1; i < argc; i++) {
+      fprintf (stderr, "loading %s\n", argv[i]);
+      loadwise_rawdata (skylist, argv[i], options, ALLSKY);
   }
   exit (0);
 }  
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_ops.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_ops.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_ops.c	(revision 34041)
@@ -1,9 +1,4 @@
 # include "addstar.h"
 # include "WISE.h"
-
-static int FilterSkip;
-static int TimeSkip;
-static int Qentry;
-static int Photcode;
 
 int getWISE_setup () {
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_prelim_rawdata.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_prelim_rawdata.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_prelim_rawdata.c	(revision 34041)
@@ -10,5 +10,5 @@
 # define DEBUG 0
 
-int loadWISE_as_rawdata (SkyList *skytable, char *filename, AddstarClientOptions options) {
+int loadwise_prelim_rawdata (SkyList *skytable, char *filename, AddstarClientOptions options) {
   
   int i, j, verbose;
@@ -159,5 +159,5 @@
 	stars[Nstars+3][0].average.R = tstars[j].R;
 	stars[Nstars+3][0].average.D = tstars[j].D;
-	getWISE_star_full (&stars[Nstars], &buffer[offset], Nbyte - offset);
+	loadwise_star_full (&stars[Nstars], &buffer[offset], Nbyte - offset);
 
 	tstars[j].flag = TRUE;
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_rawdata.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_rawdata.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_rawdata.c	(revision 34041)
@@ -0,0 +1,246 @@
+# include "addstar.h"
+# include "WISE.h"
+
+/* WISE raw data tables are not fixed bytes per row.  split lines at the RETURN char.
+ * handle fractional lines at the end of each read block
+ */
+
+/* read in chunks of ~64MB */
+# define NBYTE 0x4000000
+# define DEBUG 0
+
+int loadwise_rawdata (SkyList *skytable, char *filename, AddstarClientOptions options, int ALLSKY) {
+  
+  int i, j, verbose;
+  int Nstars, NSTARS, Ntstars, NTSTARS;
+  int Nbyte, Nextra, Ntotal, offset;
+
+  double Rmin, Rmax, Dmin, Dmax;
+
+  FILE *f;
+  char *buffer, *p, *q;
+
+  Stars **stars; // this is an array of pointers to be consistent with input to find_match_refstars
+  WISE_Stars *tstars;
+  SkyList *skylist;
+  SkyRegion *region;
+  Catalog catalog;
+
+  getWISE_setup ();
+
+  ALLOCATE (buffer, char, NBYTE);
+
+  // scan through the entire WISE file
+  f = fopen (filename, "r");
+  if (f == NULL) Shutdown ("can't read WISE data file: %s", filename);
+  // test if this is a raw datafile or gzipped...
+
+  Nextra = 0;  // number excess bytes from lsat partial row
+  Ntotal = 0;  // track the total number of bytes read 
+  while ((Nbyte = fread (&buffer[Nextra], 1, NBYTE-Nextra, f)) != 0) {
+    if (Nbyte == -1) Shutdown ("error reading from raw file %s", filename);
+    if (DEBUG) fprintf (stderr, "read %d bytes", Nbyte);
+
+    Nbyte += Nextra;
+
+    if (VERBOSE) fprintf (stderr, "read .. ");
+
+    /* find bounds on first complete line */
+    p = buffer;
+    q = memchr (p, '\n', Nbyte);
+    if (q == NULL) Shutdown ("incomplete line at end of file\n");
+    offset = p - buffer; // offset within this scan
+
+    Ntstars = 0;
+    NTSTARS = 10000;
+    ALLOCATE (tstars, WISE_Stars, NTSTARS);
+
+    Rmin = 360.0;
+    Rmax =   0.0;
+    Dmin = +90.0;
+    Dmax = -90.0;
+
+    // scan through entire buffer for star coords
+    while (1) {
+      getWISE_coords (p, &tstars[Ntstars].R, &tstars[Ntstars].D, Nbyte - offset);
+      tstars[Ntstars].offset = offset; // offset within scan
+      tstars[Ntstars].flag = FALSE;
+
+      if (VERBOSE) {
+	Rmin = MIN (Rmin, tstars[Ntstars].R);
+	Rmax = MAX (Rmax, tstars[Ntstars].R);
+	Dmin = MIN (Dmin, tstars[Ntstars].D);
+	Dmax = MAX (Dmax, tstars[Ntstars].D);
+      }
+
+      Ntstars ++;
+      CHECK_REALLOCATE (tstars, WISE_Stars, NTSTARS, Ntstars, 10000);
+
+      /* start of the next line */
+      p = q + 1;
+      offset = p - buffer; // offset within this scan
+      if (offset == Nbyte) {
+	// last line in buffer is a complete line
+	Nextra = 0;
+	break;
+      }
+      /* end of the next line */
+      q = memchr (p, '\n', Nbyte - offset);
+      if (q == NULL) {
+	// last, incomplete line in buffer
+	Nextra = Nbyte - offset;
+	break;
+      } 
+    }
+    if (VERBOSE) fprintf (stderr, "scan %d stars (%10.6f - %10.6f, %10.6f - %10.6f) .. ", Ntstars, Rmin, Rmax, Dmin, Dmax);
+
+    // sort the tstars by RA
+    getWISE_sortStars (tstars, Ntstars);
+
+    // scan through the stars, loading the containing catalogs
+    // skip through table for unsaved stars
+    for (i = 0; i < Ntstars; i++) {
+      if (tstars[i].flag) continue;
+
+      // scan forward until we read the UserPatch
+      if (tstars[i].R < UserPatch.Rmin) continue;
+      if (tstars[i].R > UserPatch.Rmax) break;
+      if (tstars[i].D < UserPatch.Dmin) continue;
+      if (tstars[i].D > UserPatch.Dmax) continue;
+
+      // identify the relevant catalog
+      skylist = SkyRegionByPoint_List (skytable, -1, tstars[i].R, tstars[i].D);
+      if (skylist[0].Nregions == 0) {
+	  SkyListFree (skylist);
+	  continue;
+      }
+      region = skylist[0].regions[0];
+      if (DEBUG) fprintf (stderr, "writing to %s\n", skylist[0].filename[0]);
+
+      // collect array of (Stars *) stars in a new output catalog
+      Nstars = 0;
+      NSTARS = 3000;
+      ALLOCATE (stars, Stars *, NSTARS);
+
+      // loop over stars in this WISE region that are also in this output region
+      for (j = i; j < Ntstars; j++) {
+	if (tstars[j].flag) continue;
+
+	// check if in skyregion
+	if (tstars[j].R < region[0].Rmin) continue;
+	if (tstars[j].R > region[0].Rmax) break;
+	if (tstars[j].D < region[0].Dmin) continue;
+	if (tstars[j].D > region[0].Dmax) continue;
+	  
+	// check if in UserPatch
+	if (tstars[j].R < UserPatch.Rmin) continue;
+	if (tstars[j].R > UserPatch.Rmax) break;
+	if (tstars[j].D < UserPatch.Dmin) continue;
+	if (tstars[j].D > UserPatch.Dmax) continue;
+	  
+	offset = tstars[j].offset;
+
+	ALLOCATE (stars[Nstars+0], Stars, 1);
+	ALLOCATE (stars[Nstars+1], Stars, 1);
+	ALLOCATE (stars[Nstars+2], Stars, 1);
+	ALLOCATE (stars[Nstars+3], Stars, 1);
+
+	InitStar (stars[Nstars+0]);
+	InitStar (stars[Nstars+1]);
+	InitStar (stars[Nstars+2]);
+	InitStar (stars[Nstars+3]);
+
+	stars[Nstars+0][0].average.R = tstars[j].R;
+	stars[Nstars+0][0].average.D = tstars[j].D;
+	stars[Nstars+1][0].average.R = tstars[j].R;
+	stars[Nstars+1][0].average.D = tstars[j].D;
+	stars[Nstars+2][0].average.R = tstars[j].R;
+	stars[Nstars+2][0].average.D = tstars[j].D;
+	stars[Nstars+3][0].average.R = tstars[j].R;
+	stars[Nstars+3][0].average.D = tstars[j].D;
+	
+	if (ALLSKY) {
+	  loadwise_star_allsky (&stars[Nstars], &buffer[offset], Nbyte - offset);
+	} else {
+	  loadwise_star_prelim (&stars[Nstars], &buffer[offset], Nbyte - offset);
+	}
+
+	tstars[j].flag = TRUE;
+
+	Nstars += 4;
+	if (Nstars >= NSTARS - 4) {
+	  NSTARS += 4000;
+	  REALLOCATE (stars, Stars *, NSTARS);
+	}
+      }
+
+      if (!Nstars) {
+	free (stars);
+	continue;
+      }
+
+      if (DEBUG) fprintf (stderr, "selected %d stars (%10.6f - %10.6f, %10.6f - %10.6f)\n", Nstars, 
+			  region[0].Rmin, region[0].Rmax, region[0].Dmin, region[0].Dmax);
+
+      if (1) {
+	verbose = VERBOSE;
+	VERBOSE = FALSE;
+
+	// now we have all of the loaded stars in this catalog
+	catalog.filename = skylist[0].filename[0];
+	catalog.catformat = dvo_catalog_catformat (CATFORMAT);  // set the default catformat from config data
+	catalog.catmode   = dvo_catalog_catmode (CATMODE);      // set the default catmode from config data
+	catalog.catflags = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
+	catalog.Nsecfilt  = GetPhotcodeNsecfilt ();
+
+	// an error exit status here is a significant error
+	if (!dvo_catalog_open (&catalog, skylist[0].regions[0], VERBOSE, "w")) {
+	  fprintf (stderr, "ERROR: failure to open/create catalog file %s\n", catalog.filename);
+	  exit (2);
+	}
+
+	// assume no input star matches an existing star 
+	// simply add to the existing table
+	// loadWISE_catalog (&catalog, stars, Nstars);
+	find_matches_refstars (skylist[0].regions[0], stars, Nstars, &catalog, options);
+	// loadWISE_catalog (&catalog, stars, Nstars);
+
+	dvo_catalog_save (&catalog, VERBOSE);
+	dvo_catalog_unlock (&catalog);
+	dvo_catalog_free (&catalog);
+	// free (catalog.filename);
+	// XXX don't free this! it points to an element of the skytable
+      }
+
+      SkyListFree (skylist);
+      for (j = 0; j < Nstars; j++) free (stars[j]);
+      free (stars);
+      VERBOSE = verbose;
+    }
+    free (tstars);
+    if (VERBOSE) fprintf (stderr, "done\n");
+
+    // at end, p points at the start of last, partial line
+    if (Nextra) memmove (buffer, p, Nextra);
+  }
+
+  if (VERBOSE) fprintf (stderr, "\n");
+  
+  fclose (f);
+  free (buffer);
+  return (TRUE);
+}
+
+/*
+  for each WISE file:
+  for each data block
+  generate a table of: R, D, byte, flag
+  for each unsaved star
+  find containing catalog
+  load catalog
+  find all contained stars
+  add to catalog
+  save catalog 
+  mark all contained stars
+*/
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_star_full.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_star_full.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/loadwise_star_full.c	(revision 34041)
@@ -2,88 +2,236 @@
 # include "WISE.h"
 
-// XXX check to see if desired output format is PS1_V1 or later?  (use 16bit version if not?)
+int setWISE_ph_qual (Stars *star, char qual);
+int setWISE_var_flag_allsky (Stars *star, char qual);
+int setWISE_ext_flag_allsky (Stars **star, char ptr);
+int setWISE_var_flag_prelim (Stars *star, char qual);
+int setWISE_ext_flag_prelim (Stars **star, char ptr);
+int setWISE_cc_flag (Stars *star, char qual);
+int setWISE_sat_flag (Stars *star, char *ptr);
+int setWISE_blend_flag (Stars **star, char *ptr);
+
+// there are slight format differences between the prelim data dump and the allsky data dump:
+// * after ph_qual & det_bit : new field moon_lev
+// * for each filter, after w?sigp2 : new fields w?dmag, w?ndf, w?mlq, w?mjdmin, w?mjdmax, w?mjdmean
+// * after w4mdjmean : new fields rho12, rho23, rho34, q12, q23, q34
+// * after k_msig_2mass : new fields best_use_cntr, ngrp
 
 // fill in the data for a WISE quad star.  takes a pointer to the start of the line the
 // RA and DEC have already been set
-int getWISE_star_full (Stars **star, char *line, int Nmax) {
-
+int loadwise_star_allsky (Stars **star, char *line, int Nmax) {
+
+  int i;
   char *ptr;
-  double dMfull;
-  double jd;
 
   if (line == NULL) Shutdown ("format error in WISE");
 
+  ptr = line;
+
+  // I can assign dRA and dDEC to dX and dY if I can consistently set posangle and pltscale
+  star[0][0].measure.posangle = 0.0;
+  star[0][0].measure.pltscale = 1.0;
+
   ptr = skipNbounds (ptr, '|', 3, Nmax); // skip: desig, ra, dec,
-  star[0][0].measure.FWx = ToShortPixels(strtod (ptr, NULL));
-  ptr = nextWISEfield (ptr); // sig_dec
-  star[0][0].measure.FWy = ToShortPixels(strtod (ptr, NULL));
-  ptr = nextWISEfield (ptr); // sig_radec
-  star[0][0].measure.theta = ToShortPixels(strtod (ptr, NULL));
-
-  star[1][0].measure.FWx   = star[0][0].measure.FWx;
-  star[1][0].measure.FWy   = star[0][0].measure.FWy;
-  star[1][0].measure.theta = star[0][0].measure.theta;
-  star[2][0].measure.FWx   = star[0][0].measure.FWx;
-  star[2][0].measure.FWy   = star[0][0].measure.FWy;
-  star[2][0].measure.theta = star[0][0].measure.theta;
-  star[3][0].measure.FWx   = star[0][0].measure.FWx;
-  star[3][0].measure.FWy   = star[0][0].measure.FWy;
-  star[3][0].measure.theta = star[0][0].measure.theta;
-
-  ptr = skipNbounds (ptr, '|', 10, Nmax); // skip: glon, glat, elon, elat, wx, wy, cntr, source_id, coadd_id, src
+  star[0][0].measure.dXccd = ToShortPixels(strtod (ptr, NULL)); // sig_ra
+  ptr = nextWISEfield (ptr);
+  star[0][0].measure.dYccd = ToShortPixels(strtod (ptr, NULL)); // sig_dec
+  ptr = nextWISEfield (ptr);
+
+  // we only know a single set of values for all 4 bands 
+  for (i = 1; i < 4; i++) {
+      star[i][0].measure.dXccd    = star[0][0].measure.dXccd;
+      star[i][0].measure.dYccd    = star[0][0].measure.dYccd;
+      star[i][0].measure.posangle = star[0][0].measure.posangle;
+      star[i][0].measure.pltscale = star[0][0].measure.pltscale;
+  }
+  ptr = skipNbounds (ptr, '|', 5, Nmax); // skip: sig_radec, glon, glat, elon, elat
+
+  star[0][0].measure.Xccd = strtod (ptr, NULL); // wx
+  ptr = nextWISEfield (ptr); // skip wx
+  star[0][0].measure.Yccd = strtod (ptr, NULL); // wy
+  ptr = nextWISEfield (ptr); // skip wy
+
+  for (i = 1; i < 4; i++) {
+      star[i][0].measure.Xccd    = star[0][0].measure.Xccd;
+      star[i][0].measure.Yccd    = star[0][0].measure.Yccd;
+  }
+  ptr = skipNbounds (ptr, '|', 4, Nmax); // skip: cntr, source_id, coadd_id, src
 
   // W1
-  star[0][0].measure.M  = strtod (ptr, NULL);
-  ptr = nextWISEfield (ptr); // j_cmsig
-  star[0][0].measure.dM = strtod (ptr, NULL);
-  ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: w1snr, w1rchi2
-
-  // W2
-  star[1][0].measure.M  = strtod (ptr, NULL);
-  ptr = nextWISEfield (ptr); // j_cmsig
-  star[1][0].measure.dM = strtod (ptr, NULL);
-  ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: w2snr, w2rchi2
-
-  // W3
-  star[2][0].measure.M  = strtod (ptr, NULL);
-  ptr = nextWISEfield (ptr); // j_cmsig
-  star[2][0].measure.dM = strtod (ptr, NULL);
-  ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: w3snr, w3rchi2
-
-  // W4
-  star[3][0].measure.M  = strtod (ptr, NULL);
-  ptr = nextWISEfield (ptr); // j_cmsig
-  star[3][0].measure.dM = strtod (ptr, NULL);
-  ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: w4snr, w4rchi2
-
-  star[0][0].measure.photFlags = 0;
-  star[1][0].measure.photFlags = 0;
-  star[2][0].measure.photFlags = 0;
-  star[3][0].measure.photFlags = 0;
-  ptr = skipNbounds (ptr, '|', 8, Nmax); // skip fields
-
-  setWISE_cc_flag (star[0], ptr[0]); // cc_flg
-  setWISE_cc_flag (star[1], ptr[1]); // cc_flg
-  setWISE_cc_flag (star[2], ptr[2]); // cc_flg
-  setWISE_cc_flag (star[3], ptr[2]); // cc_flg
-  ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: ext_flg, var_flg
-
-  setWISE_ph_qual (star[0], ptr[0]); // ph_qual
-  setWISE_ph_qual (star[1], ptr[1]); // ph_qual
-  setWISE_ph_qual (star[2], ptr[2]); // ph_qual
-  setWISE_ph_qual (star[3], ptr[3]); // ph_qual
-  ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: ext_flg, var_flg
-
-  // setWISE_rd_flag (star[0], ptr[0]);
-  // setWISE_bl_flag (star[0], ptr[0]);
-  // setWISE_gal_flag (star[0], ptr[0]);
-  // setWISE_mp_flag (star[0], ptr[0]);
-
-  // ptr = nextWISEfield (ptr); // x_scan
-  // star[0][0].measure.Xccd = strtod (ptr, NULL);
-  // star[2][0].measure.Xccd = star[1][0].measure.Xccd = star[0][0].measure.Xccd;
-  // ptr = nextWISEfield (ptr); // jdate (julian date)
-
-  jd = 2455263.0; // NOTE : WISE prelim release does not contain per-detection time info. 
+  for (i = 0; i < 4; i++) {
+    char *endpoint;
+      star[i][0].measure.M  = strtod (ptr, &endpoint); // w?mpro
+      if (endpoint == ptr) {
+	star[i][0].measure.M  = NAN;
+      }
+      ptr = nextWISEfield (ptr);
+      star[i][0].measure.dM = strtod (ptr, &endpoint); // w?sigmpro
+      if (endpoint == ptr) {
+	star[i][0].measure.dM  = NAN;
+      }
+      ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: w?sigmpro, w?snr
+      star[i][0].measure.psfChisq = strtod (ptr, NULL); // w?rchi2
+      ptr = nextWISEfield (ptr); // skip : w1rchi2
+
+      // init the photFlags field
+      star[i][0].measure.photFlags = 0;
+  }
+
+  ptr = nextWISEfield (ptr); // skip: rchi2
+
+  // set blend flags for all 4 measures
+  setWISE_blend_flag (star, ptr); // nb & na both used here
+  ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: nb, na
+
+  for (i = 0; i < 4; i++) {
+      setWISE_sat_flag (star[i], ptr); // w1sat
+      ptr = nextWISEfield (ptr); 
+  }
+  ptr = nextWISEfield (ptr); // skip satnum
+
+  for (i = 0; i < 4; i++) {
+      setWISE_cc_flag (star[i], ptr[i]); // cc_flg
+  }
+  ptr = nextWISEfield (ptr); // skip cc_flags
+
+  // set ext flags for all 4 measures
+  setWISE_ext_flag_allsky (star, ptr[0]); // ext_flg
+  ptr = nextWISEfield (ptr); // skip ext_flags
+
+  for (i = 0; i < 4; i++) {
+      setWISE_var_flag_allsky (star[i], ptr[i]); // var_flg
+  }
+  ptr = nextWISEfield (ptr); // skip var_flags
+
+  for (i = 0; i < 4; i++) {
+      setWISE_ph_qual (star[i], ptr[i]); // ph_qual
+  }
+
+  ptr = skipNbounds (ptr, '|', 159, Nmax); // skip: det_bit, moon_lev, w?nm, w?m, w?cov, etc, etc.
+
+  for (i = 0; i < 4; i++) {
+    ptr = skipNbounds (ptr, '|', 8, Nmax); // skip: det_bit, moon_lev, w?nm, w?m, w?cov, etc, etc.
+
+    // double mjdmin = strtod (ptr, NULL); // mjd min
+    // ptr = nextWISEfield (ptr); // skip
+    // double mjdmax = strtod (ptr, NULL); // mjd max
+    // ptr = nextWISEfield (ptr); // skip mjd max
+    double mjdmean = strtod (ptr, NULL); // mjd mean
+    ptr = nextWISEfield (ptr); // skip mjd mean
+
+    // fprintf (stderr, "w%d mjd: %f\n", i, mjdmean);
+
+    // the release is based on data taken in the period 14 January 2010 to 29 April 2010
+    if (mjdmean == 0.0) {
+      star[i][0].measure.t = 0;
+    } else {
+      star[i][0].measure.t = ohana_mjd_to_sec (mjdmean);
+    }
+  }
+
+  star[0][0].measure.photcode  = WISE_W1;
+  star[0][0].measure.detID   = 0;
+  star[0][0].measure.imageID = 0;
+
+  star[1][0].measure.photcode  = WISE_W2;
+  star[1][0].measure.detID   = 0;
+  star[1][0].measure.imageID = 0;
+
+  star[2][0].measure.photcode  = WISE_W3;
+  star[2][0].measure.detID   = 0;
+  star[2][0].measure.imageID = 0;
+
+  star[3][0].measure.photcode  = WISE_W4;
+  star[3][0].measure.detID   = 0;
+  star[3][0].measure.imageID = 0;
+
+  return TRUE;
+}
+
+// fill in the data for a WISE quad star.  takes a pointer to the start of the line the
+// RA and DEC have already been set
+int loadwise_star_prelim (Stars **star, char *line, int Nmax) {
+
+  int i;
+  char *ptr;
+
+  if (line == NULL) Shutdown ("format error in WISE");
+
+  ptr = line;
+
+  // I can assign dRA and dDEC to dX and dY if I can consistently set posangle and pltscale
+  star[0][0].measure.posangle = 0.0;
+  star[0][0].measure.pltscale = 1.0;
+
+  ptr = skipNbounds (ptr, '|', 3, Nmax); // skip: desig, ra, dec,
+  star[0][0].measure.dXccd = ToShortPixels(strtod (ptr, NULL)); // sig_ra
+  ptr = nextWISEfield (ptr);
+  star[0][0].measure.dYccd = ToShortPixels(strtod (ptr, NULL)); // sig_dec
+  ptr = nextWISEfield (ptr);
+
+  // we only know a single set of values for all 4 bands 
+  for (i = 1; i < 4; i++) {
+      star[i][0].measure.dXccd    = star[0][0].measure.dXccd;
+      star[i][0].measure.dYccd    = star[0][0].measure.dYccd;
+      star[i][0].measure.posangle = star[0][0].measure.posangle;
+      star[i][0].measure.pltscale = star[0][0].measure.pltscale;
+  }
+  ptr = skipNbounds (ptr, '|', 5, Nmax); // skip: sig_radec, glon, glat, elon, elat
+
+  star[0][0].measure.Xccd = strtod (ptr, NULL); // wx
+  ptr = nextWISEfield (ptr); // skip wx
+  star[0][0].measure.Yccd = strtod (ptr, NULL); // wy
+  ptr = nextWISEfield (ptr); // skip wy
+
+  for (i = 1; i < 4; i++) {
+      star[i][0].measure.Xccd    = star[0][0].measure.Xccd;
+      star[i][0].measure.Yccd    = star[0][0].measure.Yccd;
+  }
+  ptr = skipNbounds (ptr, '|', 4, Nmax); // skip: cntr, source_id, coadd_id, src
+
+  // W1
+  for (i = 0; i < 4; i++) {
+      star[i][0].measure.M  = strtod (ptr, NULL); // w?mpro
+      ptr = nextWISEfield (ptr);
+      star[i][0].measure.dM = strtod (ptr, NULL); // w?sigmpro
+      ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: w?sigmpro, w?snr
+      star[i][0].measure.psfChisq = strtod (ptr, NULL); // w?rchi2
+      ptr = nextWISEfield (ptr); // skip : w1rchi2
+
+      // init the photFlags field
+      star[i][0].measure.photFlags = 0;
+  }
+
+  ptr = nextWISEfield (ptr); // skip: rchi2
+
+  // set blend flags for all 4 measures
+  setWISE_blend_flag (star, ptr); // nb & na both used here
+  ptr = skipNbounds (ptr, '|', 2, Nmax); // skip: nb, na
+
+  for (i = 0; i < 4; i++) {
+      setWISE_sat_flag (star[i], ptr); // w1sat
+      ptr = nextWISEfield (ptr); 
+  }
+  ptr = nextWISEfield (ptr); // skip satnum
+
+  for (i = 0; i < 4; i++) {
+      setWISE_cc_flag (star[i], ptr[i]); // cc_flg
+  }
+  ptr = nextWISEfield (ptr); // skip cc_flags
+
+  // set ext flags for all 4 measures
+  setWISE_ext_flag_prelim (star, *ptr); // ext_flg
+  ptr = nextWISEfield (ptr); // skip ext_flags
+
+  for (i = 0; i < 4; i++) {
+      setWISE_var_flag_prelim (star[i], ptr[i]); // var_flg
+  }
+  ptr = nextWISEfield (ptr); // skip var_flags
+
+  for (i = 0; i < 4; i++) {
+      setWISE_ph_qual (star[i], ptr[i]); // ph_qual
+  }
+
+  double jd = 2455263.0; // NOTE : WISE prelim release does not contain per-detection time info. 
   // the release is based on data taken in the period 14 January 2010 to 29 April 2010
   star[0][0].measure.t = ohana_jd_to_sec (jd);
@@ -92,48 +240,19 @@
   star[3][0].measure.t = star[0][0].measure.t;
 
-  // ptr = nextWISEfield (ptr); // j_psfchi
-  // star[0][0].measure.psfChisq = strtod (ptr, NULL);
-  // ptr = nextWISEfield (ptr); // h_psfchi
-  // star[1][0].measure.psfChisq = strtod (ptr, NULL);
-  // ptr = nextWISEfield (ptr); // k_psfchi
-  // star[2][0].measure.psfChisq = strtod (ptr, NULL);
-  // 
-  // ptr = nextWISEfield (ptr); // j_m_stdap
-  // star[0][0].measure.Map = strtod (ptr, NULL);
-  // ptr = nextWISEfield (ptr); // j_msig_stdap (skip?)
-  // 
-  // ptr = nextWISEfield (ptr); // h_m_stdap
-  // star[1][0].measure.Map = strtod (ptr, NULL);
-  // ptr = nextWISEfield (ptr); // h_msig_stdap (skip?)
-  // 
-  // ptr = nextWISEfield (ptr); // k_m_stdap
-  // star[2][0].measure.Map = strtod (ptr, NULL);
-  // ptr = nextWISEfield (ptr); // k_msig_stdap (skip?)
-  // 
-  // ptr = nextWISEfield (ptr); // dist_edge_ns (skip)
-  // ptr = nextWISEfield (ptr); // dist_edge_ew (skip)
-  // ptr = nextWISEfield (ptr); // dist_edge_flg (skip)
-  // 
-  // ptr = nextWISEfield (ptr); // dup_src (one flag for all filters)
-  // setWISE_dup_flag (star[0], ptr[0]);
-  // setWISE_dup_flag (star[1], ptr[0]);
-  // setWISE_dup_flag (star[2], ptr[0]);
-  // 
-  // ptr = nextWISEfield (ptr); // use_src (one flag for all filters)
-  // setWISE_use_flag (star[0], ptr[0]);
-  // setWISE_use_flag (star[1], ptr[0]);
-  // setWISE_use_flag (star[2], ptr[0]);
-
-  star[0][0].measure.photcode  = TM_J;
+  star[0][0].measure.photcode  = WISE_W1;
   star[0][0].measure.detID   = 0;
   star[0][0].measure.imageID = 0;
 
-  star[1][0].measure.photcode  = TM_H;
+  star[1][0].measure.photcode  = WISE_W2;
   star[1][0].measure.detID   = 0;
   star[1][0].measure.imageID = 0;
 
-  star[2][0].measure.photcode  = TM_K;
+  star[2][0].measure.photcode  = WISE_W3;
   star[2][0].measure.detID   = 0;
   star[2][0].measure.imageID = 0;
+
+  star[3][0].measure.photcode  = WISE_W4;
+  star[3][0].measure.detID   = 0;
+  star[3][0].measure.imageID = 0;
 
   return TRUE;
@@ -153,112 +272,231 @@
 }
 
+# define FLAG_PH_A 	      0x00000001 // quality flag 'A'
+# define FLAG_PH_B 	      0x00000002 // quality flag 'B'
+# define FLAG_PH_C 	      0x00000004 // quality flag 'C'
+# define FLAG_PH_U 	      0x00000008 // quality flag 'U'
+# define FLAG_PH_X 	      0x00000010 // quality flag 'X'
+
+# define FLAG_SATURATED_PIX   0x00000100 // sat > 0.0
+
+# define FLAG_CC_PERSIST      0x00010000 // 'p' or 'P'
+# define FLAG_CC_HALO         0x00020000 // 'h' or 'H'
+# define FLAG_CC_GHOST        0x00020000 // 'o' or 'O' (note overloading)
+# define FLAG_CC_SPIKE        0x00040000 // 'd' or 'D'
+# define FLAG_CC_SPURIOUS     0x00080000 // Upper Case letters
+
+# define FLAG_BLEND_ACTIVE    0x00100000 // nb > 1, na == 0
+# define FLAG_BLEND_PASSIVE   0x00200000 // nb > 1, na == 1
+
+# define FLAG_EXTENDED        0x01000000 // ext == 1
+# define FLAG_EXT_IN_XSC      0x02000000 // ext == 1
+# define FLAG_EXT_BY_XSC      0x04000000 // ext == 1
+
+# define FLAG_VARIABLE_LEVEL1 0x10000000 // var_flg == 1 to 4
+# define FLAG_VARIABLE_LEVEL2 0x20000000 // var_flg == 5 to 7
+# define FLAG_VARIABLE_LEVEL3 0x40000000 // var_flg == 8 or 9
+
+int setWISE_blend_flag (Stars **star, char *ptr) {
+
+    int nb = atoi (ptr);
+    if (nb == 1) return TRUE;
+
+    ptr = nextWISEfield (ptr); // skip to na
+    int na = atoi (ptr);
+
+    if (na == 0) {
+	star[0][0].measure.photFlags |= FLAG_BLEND_ACTIVE;
+	star[1][0].measure.photFlags |= FLAG_BLEND_ACTIVE;
+	star[2][0].measure.photFlags |= FLAG_BLEND_ACTIVE;
+	star[3][0].measure.photFlags |= FLAG_BLEND_ACTIVE;
+    } else {
+	star[0][0].measure.photFlags |= FLAG_BLEND_PASSIVE;
+	star[1][0].measure.photFlags |= FLAG_BLEND_PASSIVE;
+	star[2][0].measure.photFlags |= FLAG_BLEND_PASSIVE;
+	star[3][0].measure.photFlags |= FLAG_BLEND_PASSIVE;
+    }
+    return TRUE;
+}
+
+int setWISE_sat_flag (Stars *star, char *ptr) {
+
+    float sat = strtod (ptr, NULL);
+    if (sat > 0.0) {
+	star[0].measure.photFlags |= FLAG_SATURATED_PIX;
+    }
+    return TRUE;
+}
+
 int setWISE_cc_flag (Stars *star, char qual) {
 
   switch (qual) {
-    case 'p': star[0].measure.photFlags |= 0x00010000; break;
-    case 'P': star[0].measure.photFlags |= 0x00010000; break;
-    case 'h': star[0].measure.photFlags |= 0x00020000; break;
-    case 'H': star[0].measure.photFlags |= 0x00020000; break;
-    case 'd': star[0].measure.photFlags |= 0x00040000; break;
-    case 'D': star[0].measure.photFlags |= 0x00040000; break;
-    case 'o': star[0].measure.photFlags |= 0x00020000; break;
-    case 'O': star[0].measure.photFlags |= 0x00020000; break;
+    case 'p': star[0].measure.photFlags |= FLAG_CC_PERSIST; break;
+    case 'h': star[0].measure.photFlags |= FLAG_CC_HALO;    break;
+    case 'd': star[0].measure.photFlags |= FLAG_CC_SPIKE;   break;
+    case 'o': star[0].measure.photFlags |= FLAG_CC_GHOST;   break;
+
+    case 'P': star[0].measure.photFlags |= FLAG_CC_PERSIST | FLAG_CC_SPURIOUS; break;
+    case 'H': star[0].measure.photFlags |= FLAG_CC_HALO    | FLAG_CC_SPURIOUS; break;
+    case 'D': star[0].measure.photFlags |= FLAG_CC_SPIKE   | FLAG_CC_SPURIOUS; break;
+    case 'O': star[0].measure.photFlags |= FLAG_CC_GHOST   | FLAG_CC_SPURIOUS; break;
+
     case '0': break;
     default: 
-      fprintf (stderr, "error!\n");
-      exit (2);
+      fprintf (stderr, "error in cc_flag: %c\n", qual);
   }      
   return (TRUE);
 }
 
+int setWISE_ext_flag_allsky (Stars **star, char value) {
+
+  switch (value) {
+    case '0':
+      return TRUE;
+    case '1':
+      star[0][0].measure.photFlags |= FLAG_EXTENDED;
+      star[1][0].measure.photFlags |= FLAG_EXTENDED;
+      star[2][0].measure.photFlags |= FLAG_EXTENDED;
+      star[3][0].measure.photFlags |= FLAG_EXTENDED;
+      return TRUE;
+    case '2':
+      star[0][0].measure.photFlags |= FLAG_EXT_IN_XSC;
+      star[1][0].measure.photFlags |= FLAG_EXT_IN_XSC;
+      star[2][0].measure.photFlags |= FLAG_EXT_IN_XSC;
+      star[3][0].measure.photFlags |= FLAG_EXT_IN_XSC;
+      return TRUE;
+    case '3':
+      star[0][0].measure.photFlags |= FLAG_EXTENDED | FLAG_EXT_IN_XSC;
+      star[1][0].measure.photFlags |= FLAG_EXTENDED | FLAG_EXT_IN_XSC;
+      star[2][0].measure.photFlags |= FLAG_EXTENDED | FLAG_EXT_IN_XSC;
+      star[3][0].measure.photFlags |= FLAG_EXTENDED | FLAG_EXT_IN_XSC;
+      return TRUE;
+    case '4':
+      star[0][0].measure.photFlags |= FLAG_EXT_BY_XSC;
+      star[1][0].measure.photFlags |= FLAG_EXT_BY_XSC;
+      star[2][0].measure.photFlags |= FLAG_EXT_BY_XSC;
+      star[3][0].measure.photFlags |= FLAG_EXT_BY_XSC;
+      return TRUE;
+    case '5':
+      star[0][0].measure.photFlags |= FLAG_EXTENDED | FLAG_EXT_BY_XSC;
+      star[1][0].measure.photFlags |= FLAG_EXTENDED | FLAG_EXT_BY_XSC;
+      star[2][0].measure.photFlags |= FLAG_EXTENDED | FLAG_EXT_BY_XSC;
+      star[3][0].measure.photFlags |= FLAG_EXTENDED | FLAG_EXT_BY_XSC;
+      return TRUE;
+    default: 
+      fprintf (stderr, "programming error\n");
+      abort();
+  }
+  return TRUE;
+}
+
+int setWISE_ext_flag_prelim (Stars **star, char value) {
+
+  switch (value) {
+    case '0':
+      return TRUE;
+    case '1':
+      star[0][0].measure.photFlags |= FLAG_EXTENDED;
+      star[1][0].measure.photFlags |= FLAG_EXTENDED;
+      star[2][0].measure.photFlags |= FLAG_EXTENDED;
+      star[3][0].measure.photFlags |= FLAG_EXTENDED;
+      return TRUE;
+    default: 
+      fprintf (stderr, "programming error\n");
+      abort();
+  }
+  return TRUE;
+}
+
+// NOTE: var flag definition changed slightly between prelim & allsky
+int setWISE_var_flag_allsky (Stars *star, char qual) {
+
+  switch (qual) {
+    case 'n':
+	return TRUE;
+    case '0':
+    case '1':
+    case '2':
+    case '3':
+    case '4':
+    case '5':
+	star[0].measure.photFlags |= FLAG_VARIABLE_LEVEL1;
+	return TRUE;
+    case '6':
+    case '7':
+	star[0].measure.photFlags |= FLAG_VARIABLE_LEVEL2;
+	return TRUE;
+    case '8':
+    case '9':
+      star[0].measure.photFlags |= FLAG_VARIABLE_LEVEL3;
+      return TRUE;
+    default: 
+      fprintf (stderr, "programming error\n");
+      abort();
+  }
+}
+
+int setWISE_var_flag_prelim (Stars *star, char qual) {
+
+  switch (qual) {
+    case '0':
+      return TRUE;
+    case '1':
+    case '2':
+    case '3':
+    case '4':
+	star[0].measure.photFlags |= FLAG_VARIABLE_LEVEL1;
+	return TRUE;
+    case '5':
+    case '6':
+    case '7':
+	star[0].measure.photFlags |= FLAG_VARIABLE_LEVEL2;
+	return TRUE;
+    case '8':
+    case '9':
+      star[0].measure.photFlags |= FLAG_VARIABLE_LEVEL3;
+      return TRUE;
+    default: 
+      fprintf (stderr, "programming error\n");
+      abort();
+  }
+}
+
 int setWISE_ph_qual (Stars *star, char qual) {
 
   switch (qual) {
-    case 'A': star[0].measure.photFlags |= 0x00000001; break; // was: 0x0004
-    case 'B': star[0].measure.photFlags |= 0x00000002; break; // was: 0x0005
-    case 'C': star[0].measure.photFlags |= 0x00000004; break; // was: 0x0006
-    case 'U': star[0].measure.photFlags |= 0x00000040; break; // was: 0x0001
-    case 'X': star[0].measure.photFlags |= 0x00000080; break; // was: 0x0000
+    case 'A': star[0].measure.photFlags |= FLAG_PH_A; break;
+    case 'B': star[0].measure.photFlags |= FLAG_PH_B; break;
+    case 'C': star[0].measure.photFlags |= FLAG_PH_C; break;
+    case 'U': star[0].measure.photFlags |= FLAG_PH_U; break;
+    case 'X': star[0].measure.photFlags |= FLAG_PH_X; break;
     default: 
-      fprintf (stderr, "error!\n");
-      exit (2);
+      fprintf (stderr, "error in ph_flag: %c\n", qual);
   }      
   return (TRUE);
 }
 
-int setWISE_rd_flag (Stars *star, char qual) {
-
-  switch (qual) {
-    case '0': star[0].measure.photFlags |= 0x00000100; break; // was: 0x0000 
-    case '1': star[0].measure.photFlags |= 0x00000200; break; // was: 0x0010 
-    case '2': star[0].measure.photFlags |= 0x00000400; break; // was: 0x0020 
-    case '3': star[0].measure.photFlags |= 0x00000800; break; // was: 0x0030 
-    case '4': star[0].measure.photFlags |= 0x00001000; break; // was: 0x0040 
-    case '6': star[0].measure.photFlags |= 0x00002000; break; // was: 0x0050 
-    case '9': star[0].measure.photFlags |= 0x00004000; break; // was: 0x0060 
-    default: 
-      fprintf (stderr, "error!\n");
-      exit (2);
-  }      
-  return (TRUE);
-}
-
-int setWISE_bl_flag (Stars *star, char qual) {
-
-  switch (qual) {
-    case '0': star[0].measure.photFlags &= ~0x00300000; break; // was: ~0x0008
-    case '1': star[0].measure.photFlags |=  0x00100000; break; // was: ~0x0008
-    default:  star[0].measure.photFlags |=  0x00200000; break; // was:  0x0008
-  }      
-  return (TRUE);
-}
-
-int setWISE_gal_flag (Stars *star, char qual) {
-
-  switch (qual) {
-    case '0': star[0].measure.photFlags &= ~0x00c00000; break; // was: ~0x0080 
-    case '1': star[0].measure.photFlags |=  0x00400000; break; // was: ~0x0080 
-    default:  star[0].measure.photFlags |=  0x00800000;	       // was:  0x0080
-      star[0].measure.extNsigma = 100.0;
-      break;
-  }      
-  return (TRUE);
-}
-
-int setWISE_mp_flag (Stars *star, char qual) {
-
-  switch (qual) {
-    case '0': star[0].measure.photFlags &= ~0x03000000; break; // was: ~0x0800
-    case '1': star[0].measure.photFlags |=  0x01000000; break; // was: ~0x0800
-    default:  star[0].measure.photFlags |=  0x02000000; break; // was:  0x0800
-  }      
-  return (TRUE);
-}
-
-int setWISE_dup_flag (Stars *star, char qual) {
-
-  switch (qual) {
-    case '0': star[0].measure.photFlags &= ~0x0c000000; break; // was: ~0x1000
-    case '1': star[0].measure.photFlags |=  0x04000000; break; // was: ~0x1000
-    default:  star[0].measure.photFlags |=  0x08000000; break; // was:  0x1000
-  }      
-  return (TRUE);
-}
-
-int setWISE_use_flag (Stars *star, char qual) {
-
-  switch (qual) {
-    case '0': star[0].measure.photFlags &= ~0x10000000; break; // was: ~0x2000
-    case '1': star[0].measure.photFlags |=  0x10000000; break; // was:  0x2000
-    default:  abort();
-  }      
-  return (TRUE);
-}
-
-// unused photFlags:
-// 0x0000.8000
-// 0x0004.0000
-// 0x0008.0000
-// 0x2000.0000
-// 0x4000.0000
-// 0x8000.0000
+/* unused photFlag bits:
+
+0x0000.0020
+0x0000.0040
+0x0000.0080
+
+0x0000.0200
+0x0000.0400
+0x0000.0800
+
+0x0000.1000
+0x0000.2000
+0x0000.4000
+0x0000.8000
+
+0x0040.0000
+0x0080.0000
+
+0x0200.0000
+0x0400.0000
+0x0800.0000
+
+0x8000.0000
+
+*/
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/mkcmf.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/mkcmf.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/mkcmf.c	(revision 34041)
@@ -14,9 +14,12 @@
 void gauss_init (int Nbin);
 double rnd_gauss (double mean, double sigma);
-void writeStars_PS1_V2 (FTable *ftable, double *X, double *Y, double *M, int Nstars);
+void writeStars_PS1_V2 (FTable *ftable, double *X, double *Y, double *M, unsigned int *Flag, int Nstars);
 void writeStars_PS1_V1 (FTable *ftable, double *X, double *Y, double *M, int Nstars);
 void writeStars_PS1_DEV_1 (FTable *ftable, double *X, double *Y, double *M, int Nstars);
 void writeStars_PS1_DEV_0 (FTable *ftable, double *X, double *Y, double *M, int Nstars);
 
+int ADDNOISE = TRUE;
+float BAD_PSFQF_FRAC = 0.0;
+
 int main (int argc, char **argv) {
 
@@ -25,4 +28,5 @@
 
   int N, Nstars, NSTARS, found;
+  unsigned int *Flag;
   double *X, *Y, *M, Xmax, Ymax;
 
@@ -34,4 +38,19 @@
   Coords coords;
 
+  static char *photcode = "SIMTEST.r.Chip";
+  if ((N = get_argument (argc, argv, "-photcode"))) {
+    remove_argument (N, &argc, argv);
+    photcode = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  static double mjd;
+  mjd = NAN;
+  if ((N = get_argument (argc, argv, "-mjd"))) {
+    remove_argument (N, &argc, argv);
+    mjd = strtod (argv[N], NULL);
+    remove_argument (N, &argc, argv);
+  }
+
   static char *date = "2001-01-01";
   if ((N = get_argument (argc, argv, "-date"))) {
@@ -58,4 +77,39 @@
   }
 
+  double CRPIX1 = 0.0;
+  double CRPIX2 = 0.0;
+  if ((N = get_argument (argc, argv, "-crpix"))) {
+    remove_argument (N, &argc, argv);
+    CRPIX1 = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    CRPIX2 = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  float exptime = 1.0;
+  if ((N = get_argument (argc, argv, "-exptime"))) {
+    remove_argument (N, &argc, argv);
+    exptime = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+  }  
+
+  // XXX note that the airmass and ra,dec,mjd can be inconsistent (for a given observatory location)
+  float airmass = 1.0;
+  if ((N = get_argument (argc, argv, "-airmass"))) {
+    remove_argument (N, &argc, argv);
+    airmass = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+  }  
+
+  int NX = 0;
+  int NY = 0;
+  if ((N = get_argument (argc, argv, "-size"))) {
+    remove_argument (N, &argc, argv);
+    NX = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    NY = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
   // add support for all cmf types
   static char *type = "PS1_V2";
@@ -66,4 +120,32 @@
   }
 
+  // add support for all cmf types
+  int FROM_COORDS = FALSE;
+  if ((N = get_argument (argc, argv, "-coords"))) {
+    remove_argument (N, &argc, argv);
+    FROM_COORDS = TRUE;
+  }
+
+  // expect a field with the photom flags for each detection
+  int READ_FLAGS = FALSE;
+  if ((N = get_argument (argc, argv, "-flags"))) {
+    remove_argument (N, &argc, argv);
+    READ_FLAGS = TRUE;
+  }
+
+  // add support for all cmf types
+  ADDNOISE = TRUE;
+  if ((N = get_argument (argc, argv, "-no-noise"))) {
+    remove_argument (N, &argc, argv);
+    ADDNOISE = FALSE;
+  }
+
+  // random bad PSF_QF values
+  if ((N = get_argument (argc, argv, "-bad-psfqf-frac"))) {
+    remove_argument (N, &argc, argv);
+    BAD_PSFQF_FRAC = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
   if (argc != 3) {
     fprintf (stderr, "USAGE mkcmf (input) (output) [-date date] [-time time] [-radec ra dec] [-cmftype type]\n");
@@ -71,4 +153,21 @@
   }
 
+  /* bore site center guess */
+  strcpy (coords.ctype, "DEC--TAN");
+  coords.crval1 = RA;
+  coords.crval2 = DEC;
+  coords.crpix1 = CRPIX1;
+  coords.crpix2 = CRPIX2;
+  
+  coords.cdelt1 = 0.25/3600.0;
+  coords.cdelt2 = 0.25/3600.0;
+
+  coords.pc1_1  = 1;
+  coords.pc2_2  = 1;
+  coords.pc1_2  = 0;
+  coords.pc2_1  = 0;
+  coords.Npolyterms = 1;
+
+  // load stars and generate complete output fields
   f = fopen (argv[1], "r");
   if (f == NULL) {
@@ -83,7 +182,33 @@
   ALLOCATE (Y, double, NSTARS);
   ALLOCATE (M, double, NSTARS);
+  ALLOCATE (Flag, unsigned int, NSTARS);
 
   Xmax = Ymax = 0;
-  while (fscanf (f, "%lf %lf %lf", &X[Nstars], &Y[Nstars], &M[Nstars]) != EOF) {
+  while (1) {
+    int status;
+    double ra, dec, mag, xobs, yobs, xraw, yraw, mraw;
+    unsigned int flags;
+    if (FROM_COORDS) {
+      status = fscanf (f, "%lf %lf %lf %lf %lf %lf", &ra, &dec, &mag, &xraw, &yraw, &mraw);
+      RD_to_XY (&xobs, &yobs, ra, dec, &coords);
+    } else {
+      status = fscanf (f, "%lf %lf %lf", &xobs, &yobs, &mraw);
+    }
+    if (status == EOF) break;
+    if (READ_FLAGS) {
+      status = fscanf (f, "%x", &flags);
+      if (status == EOF) {
+	  fprintf (stderr, "error: missing flag for last star?\n");
+	  exit (1);
+      }
+      Flag[Nstars] = flags;
+    } else {
+      Flag[Nstars] = 0;
+    }
+
+    X[Nstars] = xobs;
+    Y[Nstars] = yobs;
+    M[Nstars] = mraw;
+
     Xmax  = MAX(Xmax, X[Nstars]);
     Ymax  = MAX(Ymax, Y[Nstars]);
@@ -94,6 +219,11 @@
       REALLOCATE (Y, double, NSTARS);
       REALLOCATE (M, double, NSTARS);
+      REALLOCATE (Flag, unsigned int, NSTARS);
     }
     Nstars ++;
+  }
+  if (NX && NY) {
+      Xmax = NX;
+      Ymax = NY;
   }
 
@@ -106,34 +236,22 @@
 
   // XXX add minimum needed header fields 
-  gfits_print (&header, "IMNAXIS1", "%d", 1, (int)(Xmax + 50));
-  gfits_print (&header, "IMNAXIS2", "%d", 1, (int)(Ymax + 50));
+  gfits_print (&header, "IMNAXIS1", "%d", 1, (int)(Xmax));
+  gfits_print (&header, "IMNAXIS2", "%d", 1, (int)(Ymax));
 
   gfits_modify (&header, "NSTARS",   "%d", 1, Nstars);
-  gfits_modify (&header, "PHOTCODE", "%s", 1, "SIMTEST.r.Chip");
-  gfits_modify (&header, "DATE-OBS", "%s", 1, date);
-  gfits_modify (&header, "UTC-OBS",  "%s", 1, time);
+  gfits_modify (&header, "PHOTCODE", "%s", 1, photcode);
+  if (isfinite(mjd)) {
+    gfits_modify (&header, "MJD-OBS", "%lf", 1, mjd);
+  } else {
+    gfits_modify (&header, "DATE-OBS", "%s", 1, date);
+    gfits_modify (&header, "UTC-OBS",  "%s", 1, time);
+  }
   gfits_modify (&header, "ZERO_PT", "%lf", 1, 25.0);
-  gfits_modify (&header, "EXPTIME", "%lf", 1, 1.0);
-  gfits_modify (&header, "AIRMASS", "%lf", 1, 1.0);
+  gfits_modify (&header, "EXPTIME", "%lf", 1, exptime);
+  gfits_modify (&header, "AIRMASS", "%lf", 1, airmass);
   gfits_modify (&header, "NASTRO",   "%d", 1, 10); 
 
   gfits_modify (&header, "IMAGEID",  "%d", 1, (int)(1000*drand48())); 
   gfits_modify (&header, "SOURCEID", "%d", 1, (int)(100*drand48())); 
-
-  /* bore site center guess */
-  strcpy (coords.ctype, "DEC--TAN");
-  coords.crval1 = RA;
-  coords.crval2 = DEC;
-  coords.crpix1 = 0.0;
-  coords.crpix2 = 0.0;
-  
-  coords.cdelt1 = 0.25/3600.0;
-  coords.cdelt2 = 0.25/3600.0;
-
-  coords.pc1_1  = 1;
-  coords.pc2_2  = 1;
-  coords.pc1_2  = 0;
-  coords.pc2_1  = 0;
-  coords.Npolyterms = 1;
 
   PutCoords (&coords, &header);
@@ -157,5 +275,5 @@
   }
   if (!strcmp(type, "PS1_V2")) {
-    writeStars_PS1_V2 (&ftable, X, Y, M, Nstars); 
+    writeStars_PS1_V2 (&ftable, X, Y, M, Flag, Nstars); 
     found = TRUE;
   }
@@ -211,5 +329,7 @@
 
   A = time(NULL);
-  for (B = 0; A == time(NULL); B++);
+  // XXX this is expensive if called a lot (1 sec min)
+  // for (B = 0; A == time(NULL); B++);
+  B = A + 10000;
   srand48(B);
  
@@ -273,7 +393,13 @@
     fSN = 1.0 / sqrt(flux);
 
-    stars[i].X = X[i] + FX * fSN * rnd_gauss(0.0, 1.0);
-    stars[i].Y = Y[i] + FY * fSN * rnd_gauss(0.0, 1.0);
-    stars[i].M = M[i] + fSN*rnd_gauss(0.0, 1.0);
+    stars[i].X = X[i];
+    stars[i].Y = Y[i];
+    stars[i].M = M[i];
+
+    if (ADDNOISE) {
+      stars[i].X += FX * fSN * rnd_gauss(0.0, 1.0);
+      stars[i].Y += FY * fSN * rnd_gauss(0.0, 1.0);
+      stars[i].M += fSN*rnd_gauss(0.0, 1.0);
+    }
 
     stars[i].dX = FX * fSN;
@@ -312,7 +438,13 @@
     fSN = 1.0 / sqrt(flux);
 
-    stars[i].X = X[i] + FX * fSN * rnd_gauss(0.0, 1.0);
-    stars[i].Y = Y[i] + FY * fSN * rnd_gauss(0.0, 1.0);
-    stars[i].M = M[i] + fSN*rnd_gauss(0.0, 1.0);
+    stars[i].X = X[i];
+    stars[i].Y = Y[i];
+    stars[i].M = M[i];
+
+    if (ADDNOISE) {
+      stars[i].X += FX * fSN * rnd_gauss(0.0, 1.0);
+      stars[i].Y += FY * fSN * rnd_gauss(0.0, 1.0);
+      stars[i].M += fSN*rnd_gauss(0.0, 1.0);
+    }
 
     stars[i].dX = FX * fSN;
@@ -354,7 +486,13 @@
     fSN = 1.0 / sqrt(flux);
 
-    stars[i].X = X[i] + FX * fSN * rnd_gauss(0.0, 1.0);
-    stars[i].Y = Y[i] + FY * fSN * rnd_gauss(0.0, 1.0);
-    stars[i].M = M[i] + fSN*rnd_gauss(0.0, 1.0);
+    stars[i].X = X[i];
+    stars[i].Y = Y[i];
+    stars[i].M = M[i];
+
+    if (ADDNOISE) {
+      stars[i].X += FX * fSN * rnd_gauss(0.0, 1.0);
+      stars[i].Y += FY * fSN * rnd_gauss(0.0, 1.0);
+      stars[i].M += fSN*rnd_gauss(0.0, 1.0);
+    }
 
     stars[i].dX = FX * fSN;
@@ -380,5 +518,5 @@
 }
 
-void writeStars_PS1_V2 (FTable *ftable, double *X, double *Y, double *M, int Nstars) {
+void writeStars_PS1_V2 (FTable *ftable, double *X, double *Y, double *M, unsigned int *Flag, int Nstars) {
 
   int i;
@@ -396,8 +534,21 @@
     fSN = 1.0 / sqrt(flux);
 
-    stars[i].X = X[i] + FX * fSN * rnd_gauss(0.0, 1.0);
-    stars[i].Y = Y[i] + FY * fSN * rnd_gauss(0.0, 1.0);
-    stars[i].M = M[i] + fSN*rnd_gauss(0.0, 1.0);
-
+    stars[i].X = X[i];
+    stars[i].Y = Y[i];
+    stars[i].M = M[i];
+
+    if (ADDNOISE) {
+      stars[i].X += FX * fSN * rnd_gauss(0.0, 1.0);
+      stars[i].Y += FY * fSN * rnd_gauss(0.0, 1.0);
+      stars[i].M += fSN*rnd_gauss(0.0, 1.0);
+    }
+
+    // randomly give poor PSFQF values
+    if ((BAD_PSFQF_FRAC > 0.0) && (drand48() < BAD_PSFQF_FRAC)) {
+      stars[i].psfQual   = 0.25;
+    } else {
+      stars[i].psfQual   = PSFQUAL;
+    }
+    
     stars[i].dX = FX * fSN;
     stars[i].dY = FY * fSN;
@@ -413,7 +564,6 @@
     stars[i].fy        = FY;
     stars[i].df        = DF;
-    stars[i].psfQual   = PSFQUAL;
     stars[i].nFrames   = 1;
-    stars[i].flags     = FLAGS;
+    stars[i].flags     = Flag[i];
   }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/parse_time.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/parse_time.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/parse_time.c	(revision 34041)
@@ -145,2 +145,23 @@
 
 }
+
+// ha/dec -> alt/az
+int altaz (double *alt, double *az, double ha, double dec, double latitude) {
+
+  double sind, sinh, cosh;
+
+  sind = dSIN (dec) * dSIN (latitude) + dCOS (dec) * dCOS (ha) * dCOS (latitude);
+  *alt  = DEG_RAD * asin (sind);
+
+  sinh = - dCOS (dec) * dSIN (ha);
+  cosh =   dSIN (dec) * dCOS (latitude) - dCOS (dec) * dCOS (ha) * dSIN (latitude);
+
+  *az = DEG_RAD * atan2 (sinh, cosh);
+
+  // I may need to use the parallactic angle to get the right plate rotation...
+  // sinh = -dCOS(az) * dSIN(alt) * dSIN(ha) * dSIN(latitude) + dSIN(az) * dSIN(alt) * dCOS(ha) - dSIN(ha) * dCOS(alt) * dCOS(latitude);
+  // cosh = -dSIN(az) * dSIN(ha) * dSIN(latitude) - dCOS(az) * dCOS(ha);
+  // rot = -DEG_RAD * atan2 (sinh, cosh);
+  return TRUE;
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/resort_catalog.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/resort_catalog.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/resort_catalog.c	(revision 34041)
@@ -28,7 +28,4 @@
   return;
 }
-
-# define myAbort(MSG) { fprintf (stderr, "%s\n", MSG); abort(); }
-# define myAssert(LOGIC,MSG) { if (!(LOGIC)) { fprintf (stderr, "%s\n", MSG); abort(); } }
 
 // sort the measure Sequence based on the average Sequence entries
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/resort_unthreaded.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/resort_unthreaded.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/resort_unthreaded.c	(revision 34041)
@@ -1,9 +1,5 @@
 # include "addstar.h"
 
-int resort_unthreaded (AddstarClientOptions *options, SkyTable *sky) {
-
-  off_t i;
-  off_t Naverage, Nmeasure;
-  Catalog catalog;
+int resort_unthreaded (AddstarClientOptions *options, SkyTable *sky, int hostID, char *hostpath) {
 
   double dtime;
@@ -44,60 +40,9 @@
   }
 
-  // XXX ALLOCATE catalog[Nthreads]
-
-  /* match stars to existing catalog data (or otherwise manipulate catalog data) */
-  Naverage = Nmeasure = 0;
-  for (i = 0; i < skylist[0].Nregions; i++) {
-
-    // XXX BLOCK here for an empty thread
-
-    // set the parameters which guide catalog open/load/create
-    catalog.filename  = skylist[0].filename[i];
-    catalog.catformat = dvo_catalog_catformat (CATFORMAT);  // set the default catformat from config data
-    catalog.catmode   = dvo_catalog_catmode (CATMODE);      // set the default catmode from config data
-    catalog.catflags  = LOAD_AVES | LOAD_MEAS;
-    catalog.Nsecfilt  = GetPhotcodeNsecfilt ();
-
-    // an error exit status here is a significant error (disk I/O or file access)
-    if (!dvo_catalog_open (&catalog, skylist[0].regions[i], VERBOSE, "w")) {
-      fprintf (stderr, "ERROR: failure to open/create catalog file %s\n", catalog.filename);
-      exit (2);
-    }
-
-    // Naves_disk == 0 implies an empty catalog file, skip empty catalogs
-    if (catalog.Naves_disk == 0) {
-      dvo_catalog_unlock (&catalog);
-      dvo_catalog_free (&catalog);
-      continue;
-    }
-
-    // this is an overloaded value to mean 'force sort'
-    if (options->nosort == 3) catalog.sorted = FALSE;
-
-    // XXX send these to a free thread
-
-    if (OLD_RESORT) { 
-      resort_catalog_old (&catalog);
-    } else {
-      resort_catalog (&catalog);
-    }
-
-    // XXX wait for completed threads
-
-    /* report total updated values */
-    Naverage += catalog.Naverage;
-    Nmeasure += catalog.Nmeasure;
-
-    // write out catalog, if appropriate
-    SetProtect (TRUE);
-    dvo_catalog_save (&catalog, VERBOSE);
-    SetProtect (FALSE);
-    dvo_catalog_unlock (&catalog);
-    dvo_catalog_free (&catalog);
-  }
+  resort_unthreaded_catalogs (options, skylist, 0, NULL);
 
   gettimeofday (&stop, NULL);
   dtime = DTIME (stop, start);
-  fprintf (stderr, "SUCCESS: elapsed time %9.4f sec for, "OFF_T_FMT" average, "OFF_T_FMT" measure\n", dtime, Naverage, Nmeasure);
+  fprintf (stderr, "SUCCESS: elapsed time %9.4f sec\n", dtime);
 
   return TRUE;
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/resort_unthreaded_catalogs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/resort_unthreaded_catalogs.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/resort_unthreaded_catalogs.c	(revision 34041)
@@ -0,0 +1,132 @@
+# include "addstar.h"
+
+int resort_unthreaded_parallel (AddstarClientOptions *options, SkyList *sky);
+
+// pass in options and skylist?
+int resort_unthreaded_catalogs (AddstarClientOptions *options, SkyList *skylist, int hostID, char *hostpath) {
+
+  off_t i;
+  off_t Naverage, Nmeasure;
+  Catalog catalog;
+
+  if (PARALLEL && !hostID) {
+    resort_unthreaded_parallel (options, skylist);
+    return TRUE;
+  }
+
+  /* match stars to existing catalog data (or otherwise manipulate catalog data) */
+  Naverage = Nmeasure = 0;
+  for (i = 0; i < skylist[0].Nregions; i++) {
+
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+
+    // chose the catalog file (local or remote?)
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", hostpath, skylist[0].regions[i]->name);
+    catalog.filename  = hostID ? hostfile : skylist[0].filename[i];
+
+    // set the parameters which guide catalog open/load/create
+    catalog.catformat = dvo_catalog_catformat (CATFORMAT);  // set the default catformat from config data
+    catalog.catmode   = dvo_catalog_catmode (CATMODE);      // set the default catmode from config data
+    catalog.catflags  = LOAD_AVES | LOAD_MEAS;
+    catalog.Nsecfilt  = GetPhotcodeNsecfilt ();
+
+    // an error exit status here is a significant error (disk I/O or file access)
+    if (!dvo_catalog_open (&catalog, skylist[0].regions[i], VERBOSE, "w")) {
+      fprintf (stderr, "ERROR: failure to open/create catalog file %s\n", catalog.filename);
+      exit (2);
+    }
+
+    // Naves_disk == 0 implies an empty catalog file, skip empty catalogs
+    if (catalog.Naves_disk == 0) {
+      dvo_catalog_unlock (&catalog);
+      dvo_catalog_free (&catalog);
+      continue;
+    }
+
+    // this is an overloaded value to mean 'force sort'
+    if (options->nosort == 3) catalog.sorted = FALSE;
+
+    if (OLD_RESORT) { 
+      resort_catalog_old (&catalog);
+    } else {
+      resort_catalog (&catalog);
+    }
+
+    // report total updated values 
+    Naverage += catalog.Naverage;
+    Nmeasure += catalog.Nmeasure;
+
+    // write out catalog, if appropriate
+    SetProtect (TRUE);
+    dvo_catalog_save (&catalog, VERBOSE);
+    SetProtect (FALSE);
+    dvo_catalog_unlock (&catalog);
+    dvo_catalog_free (&catalog);
+  }
+  return TRUE;
+}
+
+// CATDIR is supplied globally
+# define DEBUG 1
+int resort_unthreaded_parallel (AddstarClientOptions *options, SkyList *sky) {
+
+  // load the list of hosts
+  HostTable *table = HostTableLoad (CATDIR, sky->hosts);
+  if (!table) {
+    fprintf (stderr, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+    exit (1);
+  }    
+
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    char command[1024];
+    snprintf (command, 1024, "addstar_client -resort -hostID %d -D CATDIR %s -hostdir %s -region %f %f %f %f", 
+	      table->hosts[i].hostID, CATDIR, table->hosts[i].pathname, 
+	      UserPatch.Rmin, UserPatch.Rmax, UserPatch.Dmin, UserPatch.Dmax);
+
+    char tmpline[1024];
+    if (VERBOSE)                   { snprintf (tmpline, 1024, "%s -v",                command); strcpy (command, tmpline); }
+    if (options->nosort == 3)      { snprintf (tmpline, 1024, "%s -force-sort",       command); strcpy (command, tmpline); }
+    if (options->existing_regions) { snprintf (tmpline, 1024, "%s -existing-regions", command); strcpy (command, tmpline); }
+
+    fprintf (stderr, "command: %s\n", command);
+
+    if (PARALLEL_MANUAL) continue;
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	fprintf (stderr, "ERROR running addstar_client\n");
+	exit (2);
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	exit (1);
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+
+  if (PARALLEL_MANUAL) {
+    fprintf (stderr, "run the addstar_client commands above.  when these are done, hit return\n");
+    getchar();
+  }
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+  }
+
+  return TRUE;
+}      
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/sky_tessalation.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/sky_tessalation.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/sky_tessalation.c	(revision 34041)
@@ -266,4 +266,5 @@
     if (!ring) continue;
 
+
     // subdivide each image (Nx x Ny subcells)
     Nimage = NX_SUB*NY_SUB*Nring;
@@ -272,4 +273,5 @@
       // convert the SkyRectangles to Images for output
       sky_subdivide_image (&image[j*NX_SUB*NY_SUB], &ring[j], NX_SUB, NY_SUB);
+      printf("%s %8.2f %8.2f\n", ring[j].name, ring[j].coords.crval1, ring[j].coords.crval2);
     }
 
@@ -546,5 +548,9 @@
 }
 
-// define the parameters of a single sky projection center
+// define the parameters of a projection centers for this ring 
+// dec : ~ center of ring in Dec
+// dDEC : approximate height
+// nring : number of cells generated for this ring
+// format : guide to generate the filenames (c-type string format)
 SkyRectangle *sky_rectangle_ring (float dec, float dDEC, int *nring, char *format) {
 
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/src/skycells_to_mdc.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/src/skycells_to_mdc.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/src/skycells_to_mdc.c	(revision 34041)
@@ -0,0 +1,58 @@
+# include "skycells.h"
+# include <libgen.h>
+
+void skycells_to_mdc(FILE *mdcfile, int simple, char * tess_id, FITS_DB *db) {
+    // Convert FITS_DB to images structure
+    off_t NdbImages;
+    Image *dbImages = gfits_table_get_Image(&db->ftable, &NdbImages, &db->swapped);
+
+    // If tess_id was not supplied assume that it is the basename of the CATDIR
+    if (tess_id == NULL) {
+        // basename modifies string so make a copy
+        char *catdir = strdup(CATDIR);
+        tess_id = basename(catdir);
+    }
+
+    CoordTransform *celestial_to_galactic = InitTransform(COORD_CELESTIAL, COORD_GALACTIC);
+
+    if (!simple) {
+        fprintf(mdcfile, "Skycell MULTI\n");
+    }
+
+    int i;
+    for (i = 0; i < NdbImages; i++) {
+        Image *skycell = &dbImages[i];
+        double xCenter = skycell->NX / 2.;
+        double yCenter = skycell->NY / 2.;
+        double raCenter, decCenter;
+
+        if (!XY_to_RD(&raCenter, &decCenter, xCenter, yCenter, &skycell->coords)) {
+            fprintf(stderr, "failed to transform center of image %d\n", (int) i);
+            exit(1);
+        }
+
+        double glonCenter;
+        double glatCenter;
+        ApplyTransform(&glonCenter, &glatCenter, raCenter, decCenter, celestial_to_galactic);
+
+        // width and height of skycell in degrees
+        double width  = skycell->coords.cdelt1 * skycell->NX;
+        double height = skycell->coords.cdelt2 * skycell->NY;
+
+        if (simple) {
+            fprintf(mdcfile, "%s %s %f %f %f %f %f %f\n", tess_id, skycell->name, raCenter, decCenter, glonCenter, glatCenter, width, height);
+        } else {
+            fprintf(mdcfile, "\nSkycell METADATA\n");
+            fprintf(mdcfile, "    tess_id\tSTR\t%s\n", tess_id);
+            fprintf(mdcfile, "    skycell_id\tSTR\t%s\n", skycell->name);
+            fprintf(mdcfile, "    radeg\tF32\t%f\n", raCenter);
+            fprintf(mdcfile, "    decdeg\tF32\t%f\n", decCenter);
+            fprintf(mdcfile, "    glong\tF32\t%f\n", glonCenter);
+            fprintf(mdcfile, "    glat\tF32\t%f\n", glatCenter);
+            fprintf(mdcfile, "    width\tF32\t%f\n", width);
+            fprintf(mdcfile, "    height\tF32\t%f\n", height);
+            fprintf(mdcfile, "END\n");
+        }
+
+    }
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/test/WISE.allsky.sample.dat
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/test/WISE.allsky.sample.dat	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/test/WISE.allsky.sample.dat	(revision 34041)
@@ -0,0 +1,1000 @@
+J070636.51-895934.5|106.6521659|-89.9929255|0.1698|0.1735|-0.0297|302.9239845|-27.1276882|269.9949021|-66.5674866|2052.341|370.043|1201089401241004332|1201m894_ab41-004332|1201m894_ab41|4332|14.947|0.036|30.4|1.07099998|14.829|0.065|16.6|1.03100002|12.976|0.49|2.2|0.944100022|9.013||1.2|1.13199997|1.04100001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|21nn|AACU|7|0000|20|20|13|20|0|19|0|19|21.294|20.953|19.903|20.599|0.0|0.0|0.0|0.0|0||0||0||0||166.429993|5.46869993|9.407|2.92|0.0|73.8430023|4.4382|21.796|3.501|0.0|102.279999|46.1570015|1097.418|24.273|0.0|14.6040001|12.375|298.843|9.769|0.666|14.872|0.034|1|0.261|14.699|0.073|1|0.319|12.517||32|0.825|9.557||32|0.576|15.507|0.035|1|15.477|0.08|1|13.667||32|9.556||32|15.133|0.034|1|15.018|0.073|1|13.342||32|10.133||32|14.969|0.038|1|14.783|0.076|1|13.864||32|8.844||32|14.848|0.041|1|14.597|0.079|1|12.963||32|8.549||32|14.743|0.045|1|14.429|0.081|1|12.766||32|8.289||32|14.653|0.049|1|14.288|0.083|1|13.363||32|8.053||32|14.549|0.051|1|14.183|0.087|1|12.313||32|7.838||32|14.377|0.05|1|14.077|0.091|1|12.096||32|7.639||32|14.95|0.158|0.035|0.643|19|0|55275.28745078|55277.20605032|55276.20044417|14.808|0.308|0.069|1.16299999|19|1|55275.28745078|55277.20605032|55276.20044417|12.745|1.982|0.455|5.4380002|13|0|55275.28745078|55277.20605032|55276.17885604|9.953|3.641|0.835|3.06399989|11|0|55275.28745078|55277.20605032|55276.17885604|30|48|63|1|1|1||||||||||||||||||||||||||789747438|0.416|-45.5|1|16.007|0.102|15.169|0.123|14.945|0.148|1201089401241004332|1|-0.0000353826082899|0.0001182951001187|-0.99999999237717|111000000|
+J122647.88-895929.5|186.6995104|-89.9915294|0.5194|0.4741|0.1299|302.9308949|-27.1197347|269.9788514|-66.5597193|2045.519|374.061|1802089401241004634|1802m894_ab41-004634|1802m894_ab41|4634|16.532|0.085|12.8|0.878300011|16.64|0.288|3.8|0.91869998|12.641|0.357|3.0|0.938300014|9.411|0.49|2.2|1.08700001|0.952099979|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCC|15|0000|9|22|1|22|0|20|1|21|22.517|22.703|21.95|21.742|0.0|0.0|0.0|0.0|0||0||0||0||38.6539993|3.01430011|9.41|2.874|0.178|13.9359999|3.70120001|21.85|3.485|0.364|139.160004|45.8190002|1098.062|25.046|0.723|27.2719994|12.3170004|298.645|9.701|0.389|15.663|0.074|1|0.261|15.688|0.173|1|0.319|11.853||32|0.825|8.977||32|0.576|16.565|0.095|1|16.633|0.22|1|13.19||32|9.642||32|15.924|0.074|1|16.007|0.173|1|12.678||32|9.553||32|15.501|0.065|1|15.651|0.163|1|13.114|0.538|1|9.118||32|15.216|0.062|1|15.511|0.176|1|12.146||32|8.819||32|15.049|0.064|1|15.521|0.213|1|11.952||32|8.558||32|14.945|0.068|1|15.554|0.257|1|11.79||32|8.322||32|14.848|0.072|1|15.497|0.282|1|11.659||32|8.104||32|14.748|0.076|1|15.423|0.303|1|11.552||32|7.904||32|16.524|0.332|0.071|1.385|21|0|55275.02271543|55277.20605032|55276.14149427|16.82|1.705|0.364|2.58400011|14|0|55275.02271543|55277.20605032|55276.14149427|12.697|1.484|0.332|3.21199989|17|0|55275.28745078|55277.20605032|55276.173977|9.245|2.242|0.489|5.16300011|13|0|55275.02271543|55277.20605032|55276.11915502|25|5|-13|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004634|1|-0.0001468305636739|-0.0000172473549662|-0.999999989071657|121000000|
+J064114.43-895921.1|100.3101378|-89.9892002|0.5785|0.6229|-0.1596|302.9197933|-27.1286362|269.9951386|-66.5713343|2057.619|378.626|1201089401241004984|1201m894_ab41-004984|1201m894_ab41|4984|16.683|0.1|10.8|1.05999994|16.958|0.405|2.7|0.833999991|12.725||0.8|0.980799973|8.997||1.2|1.15199995|0.999899983|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|6|20|0|20|1|19|0|19|20.613|20.736|19.348|19.88|0.0|0.0|0.0|0.0|0||0||0||0||33.6459999|3.10380006|9.412|2.908|0.053|10.3970003|3.87350011|21.774|3.532|0.108|37.5130005|45.6559982|1097.32|24.368|2.751|14.7690001|12.5830002|298.614|9.369|1.886|16.093|0.132|1|0.261|15.667|0.175|1|0.319|12.632||32|0.825|8.569||32|0.576|16.87|0.153|1|16.634|0.228|1|13.816||32|9.643||32|16.354|0.132|1|15.986|0.175|1|13.457||32|9.145||32|15.87|0.11|1|15.414|0.135|1|13.178||32|8.772||32|15.357|0.085|1|14.875|0.102|1|12.822||32|8.48||32|14.954|0.07|1|14.455|0.083|1|12.501||32|8.218||32|14.653|0.063|1|14.121|0.072|1|12.306||32|7.966||32|14.313|0.054|1|13.784|0.062|1|12.216||32|7.745||32|13.872|0.041|1|13.422|0.051|1|12.108||32|7.585||32|16.799|0.488|0.109|2.511|19|2|55275.28745078|55277.20605032|55276.20044417|17.0|1.829|0.409|2.40799999|14|0|55275.28745078|55277.20605032|55276.20044417|13.6|5.314|1.219|1.41799998|6|0|55275.28745078|55277.20605032|55276.17885604|10.468|5.578|1.28|3.58699989|11|0|55275.28745078|55277.20605032|55276.17885604|6|23||0|0||||||||||||||||||||||||||||||0|||||||1201089401241004984|1|-0.0000337356937955|0.0001854490057996|-0.999999982235284|111000000|
+J041131.81-895919.9|62.8825471|-89.9888667|0.1615|0.1709|0.028|302.9223294|-27.135309|270.0127629|-66.5706179|2046.584|381.152|600089401241004180|0600m894_ab41-004180|0600m894_ab41|4180|14.882|0.033|32.5|0.955900013|14.898|0.072|15.1|0.859399974|12.536||1.3|1.10399997|8.799||1.6|1.12300003|1.00399995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|20|20|12|20|0|19|2|19|19.718|19.686|18.959|19.578|0.0|0.0|0.0|0.0|0||0||0||0||176.610001|5.43900013|9.396|2.867|0.157|69.3000031|4.60410023|21.772|3.585|0.082|60.5460014|46.3969994|1098.293|24.854|0.69|21.2649994|13.3319998|298.323|9.783|0.356|14.837|0.037|0|0.261|14.644|0.081|0|0.319|12.225||32|0.825|8.625||32|0.576|15.454|0.038|0|15.45|0.092|0|13.447||32|9.7||32|15.098|0.037|0|14.963|0.081|0|13.05||32|9.201||32|14.964|0.042|0|14.714|0.084|0|12.733||32|8.773||32|14.884|0.048|1|14.529|0.087|1|12.451||32|8.433||32|14.802|0.054|1|14.344|0.088|1|12.199||32|8.051||32|14.662|0.055|1|14.135|0.086|1|12.026||32|7.691||32|14.418|0.052|1|13.903|0.081|1|11.938||32|7.437||32|14.127|0.045|1|13.672|0.075|1|11.94||32|7.266||32|14.884|0.119|0.027|0.41|19|0|55275.28745078|55277.20605032|55276.20044417|14.912|0.333|0.074|1.37699997|19|0|55275.28745078|55277.20605032|55276.20044417|13.327|4.093|0.939|6.44099998|8|0|55275.28745078|55277.20605032|55276.17885604|9.02|2.11|0.484|2.16300011|8|0|55275.28745078|55277.20605032|55276.17885604|-36|22|44|1|0|0||||||||||||||||||||||||||728598573|0.258|97.7|1|15.98|0.098|15.347|0.145|15.171|0.187|600089401241004180|1|0.0000885711973879|0.0001729533636339|-0.999999981121138|101000000|
+J125621.24-895919.7|194.088517|-89.9888085|0.3057|0.2822|0.0713|302.9321858|-27.1169675|269.9727142|-66.5579823|2041.004|380.477|1802089401241004394|1802m894_ab41-004394|1802m894_ab41|4394|15.838|0.051|21.1|0.985899985|16.062|0.167|6.5|0.970700026|12.426||1.7|1.11600006|9.438||0.2|1.05900002|1.028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|19|22|2|22|1|21|0|21|22.77|22.769|21.911|21.919|0.0|0.0|0.0|0.0|0||0||0||0||73.2570038|3.4677999|9.347|2.842|0.397|23.7189999|3.65770006|21.817|3.469|0.202|78.2850037|45.7060013|1098.257|25.325|0.366|2.55609989|12.0249996|298.626|9.636|1.127|15.535|0.052|1|0.261|15.53|0.15|1|0.319|12.078||32|0.825|8.82||32|0.576|16.273|0.057|1|16.358|0.169|1|13.545||32|9.826||32|15.796|0.052|1|15.849|0.15|1|12.903||32|9.396||32|15.509|0.052|1|15.571|0.149|1|13.15|0.467|1|9.054||32|15.274|0.051|1|15.383|0.153|1|12.767|0.404|1|8.757||32|15.063|0.051|1|15.282|0.167|1|12.45|0.364|1|8.495||32|14.868|0.05|1|15.232|0.186|1|12.228|0.35|1|8.259||32|14.668|0.049|1|15.159|0.201|1|12.137|0.374|1|8.041||32|14.398|0.044|1|14.925|0.186|1|12.109|0.421|1|7.841||32|15.816|0.268|0.057|0.883|21|1|55275.02271543|55277.20605032|55276.14149427|16.151|0.902|0.192|3.829|17|1|55275.02271543|55277.20605032|55276.14149427|12.816|1.447|0.316|3.10400009|12|0|55275.02271543|55277.20605032|55276.11915502|11.55|||3.227|9|0|55275.02271543|55277.20605032|55276.11915502|13|-21|-19|0|0|0||||||||||||||||||||||||||858016061|0.51|-35.6|1|16.14|0.117|16.041|0.189|15.717||1802089401241004394|1|-0.0001894531265437|-0.0000475469732399|-0.999999980923399|121000000|
+J100851.36-895918.3|152.2140039|-89.9884181|0.397|0.3655|-0.0603|302.92344|-27.1193683|269.9742351|-66.5661059|2062.265|378.781|1802089401241004499|1802m894_ab41-004499|1802m894_ab41|4499|16.121|0.065|16.7|0.809700012|17.269|0.517|2.1|1.12199998|12.674||0.9|1.08299994|9.496||-0.2|1.00199997|0.999100029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACUU|3|0000|17|21|1|21|0|20|0|20|21.485|21.361|20.885|21.028|0.0|0.0|0.0|0.0|0||0||0||0||56.4570007|3.39030004|9.408|2.847|0.041|7.80740023|3.71449995|21.832|3.516|0.091|42.8019981|46.1100006|1096.739|24.424|0.722|-2.46690011|12.6009998|298.499|9.56|0.616|15.876|0.104|0|0.261|16.074||32|0.319|12.373||32|0.825|8.959||32|0.576|16.526|0.106|0|16.635||32|13.838||32|9.966||32|16.137|0.104|0|16.393||32|13.198||32|9.535||32|15.988|0.117|0|16.386||32|12.679||32|10.607||32|15.921|0.135|0|16.397||32|12.277||32|8.786||32|15.842|0.151|1|16.193||32|12.611|0.452|1|8.427||32|15.651|0.149|1|16.015||32|12.327|0.41|1|8.181||32|15.271|0.123|1|15.848||32|12.135|0.401|1|7.996||32|14.71|0.084|1|15.098||32|11.967|0.395|1|7.821||32|16.108|0.169|0.037|0.679|20|0|55275.02271543|55277.20605032|55276.14436185|17.332|3.135|0.684|3.53699994|12|0|55275.02271543|55277.20605032|55276.14436185|13.49|3.719|0.832|2.671|9|0|55275.02271543|55277.20605032|55276.12104901||||3.06200004|8|0|55275.02271543|55277.20605032|55276.12104901|55|-7|-60|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004499|1|-0.0001788347158262|0.0000942329964163|-0.999999979569143|111000000|
+J012208.32-895911.2|20.5346906|-89.9864543|0.3899|0.3861|0.1245|302.9298831|-27.1415807|270.0318958|-66.5654571|2035.555|385.244|89401241004871|0000m894_ab41-004871|0000m894_ab41|4871|16.224|0.066|16.4|0.935899973|16.485|0.282|3.8|1.08000004|12.864||0.4|0.957000017|9.14||0.7|1.06900001|1.00600004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|13|20|1|20|0|19|0|19|20.73|20.781|20.489|20.421|0.0|0.0|0.0|0.0|0||0||0||0||51.3549995|3.12579989|9.388|2.877|0.1|16.0720005|4.17490005|21.661|3.56|0.098|19.5100002|46.9230003|1097.175|24.778|2.208|9.14649963|12.9209995|298.427|9.666|0.781|15.561|0.06|1|0.261|15.669|0.207|1|0.319|12.442||32|0.825|8.396||32|0.576|16.423|0.075|1|16.586|0.26|1|13.699||32|9.571||32|15.822|0.06|1|15.988|0.207|1|13.267||32|8.972||32|15.374|0.052|1|15.502|0.172|1|12.866||32|8.453||32|14.958|0.044|1|15.015|0.135|1|12.527||32|8.758|0.478|1|14.603|0.038|1|14.586|0.11|1|12.295||32|8.548|0.496|1|14.362|0.036|1|14.285|0.098|1|12.163||32|7.681||32|14.211|0.037|1|14.089|0.095|1|12.09||32|7.51||32|14.087|0.037|1|13.929|0.094|1|12.014||32|7.316||32|16.188|0.277|0.062|2.407|19|1|55275.28745078|55277.20605032|55276.20044417|16.643|1.526|0.341|4.07600021|13|1|55275.28745078|55277.20605032|55276.20044417|14.037|6.876|1.577|3.02099991|10|0|55275.28745078|55277.20605032|55276.17885604|11.127|||3.57800007|8|0|55275.28745078|55277.20605032|55276.17885604|36|-14|14|1|0|0|||||||||||||||||||||||||||||0|||||||89401241004871|1|0.0002213946139885|0.0000829288737942|-0.999999972053613|101000000|
+J224809.16-895910.7|342.0381701|-89.9863249|0.179|0.1702|-0.0153|302.9397896|-27.1399|270.0326978|-66.5564883|2059.037|386.091|89401241004445|0000m894_ab41-004445|0000m894_ab41|4445|15.048|0.034|31.9|1.04700005|15.185|0.085|12.8|0.958599985|13.116|0.542|2.0|0.918200016|9.255||0.5|0.99119997|0.976199985|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AACU|7|0000|21|21|11|21|0|20|0|20|21.74|22.335|21.359|21.396|0.0|0.0|0.0|0.0|0||0||0||0||151.639999|4.76100016|9.403|2.836|0.016|53.230999|4.16960001|21.766|3.568|0.152|89.8529968|44.8370018|1097.046|24.689|0.0|6.02820015|12.7189999|298.518|9.757|0.554|14.786|0.029|1|0.261|14.8|0.104|1|0.319|12.133||32|0.825|8.415||32|0.576|15.511|0.033|1|15.647|0.123|1|13.306||32|9.588||32|15.047|0.029|1|15.119|0.104|1|12.958||32|8.991||32|14.822|0.03|1|14.842|0.104|1|12.683||32|8.498||32|14.678|0.033|1|14.658|0.109|1|12.454||32|8.799|0.501|1|14.55|0.035|1|14.503|0.114|1|12.25||32|8.439|0.457|1|14.443|0.037|1|14.357|0.117|1|12.07||32|8.229|0.468|1|14.362|0.04|1|14.206|0.119|1|11.904||32|8.068|0.492|1|14.282|0.043|1|14.04|0.117|1|11.753||32|7.957|0.534|1|15.064|0.093|0.02|0.387|20|0|55275.28745078|55277.20605032|55276.19476945|15.143|0.561|0.122|4.5619998|20|3|55275.28745078|55277.20605032|55276.19476945|12.972|1.677|0.375|3.06299996|14|0|55275.28745078|55277.20605032|55276.173977|12.284|||3.87599993|10|0|55275.28745078|55277.20605032|55276.173977|18|-15|66|0|0|1||||||||||||||||||||||||||1201037887|0.341|-96.9|1|15.905|0.103|15.194|0.124|15.198|0.217|89401241004445|1|0.0002270435061959|-0.0000736037198465|-0.999999971516869|131000000|
+J022912.42-895908.9|37.3017676|-89.9858222|0.1751|0.1822|0.0377|302.9253237|-27.1410634|270.0283618|-66.5692982|2062.382|386.26|600089401241004225|0600m894_ab41-004225|0600m894_ab41|4225|15.07|0.035|31.1|1.12100005|15.178|0.089|12.2|0.960200012|12.962||0.2|0.967000008|9.469||-0.6|1.005|1.00999999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|20|20|6|20|0|19|0|19|19.879|20.065|19.304|19.765|0.0|0.0|0.0|0.0|0||0||0||0||148.649994|4.77339983|9.405|2.874|0.0|53.5499992|4.40280008|21.784|3.568|0.164|8.79500008|47.3689995|1098.492|25.287|1.909|-7.9987998|12.9289999|298.564|9.689|0.726|14.985|0.043|1|0.261|15.018|0.101|1|0.319|12.474||32|0.825|8.751||32|0.576|15.624|0.045|0|15.755|0.107|0|14.315||32|9.849||32|15.246|0.043|1|15.337|0.101|1|13.299||32|9.327||32|15.053|0.047|1|15.159|0.11|1|13.025||32|8.958||32|14.869|0.049|1|14.977|0.114|1|12.799||32|8.515||32|14.663|0.049|1|14.732|0.11|1|12.586||32|8.132||32|14.437|0.047|1|14.453|0.1|1|12.357||32|7.846||32|14.186|0.043|1|14.163|0.089|1|12.113||32|7.618||32|13.946|0.04|1|13.895|0.08|1|11.941||32|7.475||32|15.049|0.118|0.026|0.58|19|0|55275.28745078|55277.20605032|55276.20044417|15.2|0.449|0.1|1.82299995|19|1|55275.28745078|55277.20605032|55276.20044417|14.345|7.678|1.761|2.48000002|9|0|55275.28745078|55277.20605032|55276.17885604||||1.66199994|4|0|55275.28745078|55277.20605032|55276.17885604|2|-42|18|0|1|0||||||||||||||||||||||||||769519120|0.216|-158.6|1|15.437|0.068|14.93|0.086|15.147|0.179|600089401241004225|1|0.0001968345123829|0.0001499573120936|-0.999999969384489|101000000|
+J155305.59-895902.5|238.2733308|-89.9840485|0.9349|1.0079|0.2648|302.9446797|-27.1169582|269.9789234|-66.5471397|2049.519|393.767|2403089401241005202|2403m894_ab41-005202|2403m894_ab41|5202|17.264|0.16|6.8|0.924899995|17.223||0.3|0.985700011|12.478||1.7|1.09200001|9.031||1.2|1.00999999|0.998300016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|23|0|23|1|21|0|22|23.908|23.487|22.937|22.706|0.0|0.0|0.0|0.0|0||0||0||0||19.7019997|2.89599991|9.358|2.881|0.233|1.028|3.55789995|21.782|3.467|0.142|73.5100021|44.144001|1096.3|24.076|5.741|14.3009996|12.1920004|298.234|9.447|1.871|16.508|0.15|0|0.261|16.178||32|0.319|12.573||32|0.825|8.782||32|0.576|17.277|0.172|0|16.786||32|13.746||32|9.771||32|16.769|0.15|0|16.497||32|13.398||32|9.358||32|16.459|0.147|0|16.317||32|14.192||32|9.042||32|16.196|0.143|0|16.072||32|12.936||32|8.696||32|15.898|0.131|1|15.735||32|12.734||32|8.348||32|15.465|0.104|1|15.297||32|12.553||32|8.05||32|14.859|0.07|1|15.235|0.311|1|12.384||32|7.793||32|14.217|0.045|1|14.498|0.18|1|12.233||32|7.587||32|17.262|0.735|0.153|3.687|21|0|55275.02271543|55277.20605032|55276.11874005|19.079|||2.08899999|10|0|55275.02271543|55277.20605032|55276.11874005|13.022|2.763|0.603|3.89499998|10|0|55275.28745078|55277.20605032|55276.14750891|9.94|4.47|0.953|2.93499994|12|0|55275.02271543|55277.20605032|55276.09638194|42|43|-57|1|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005202|1|-0.0001464048806062|-0.0002368030895705|-0.999999961244953|121000000|
+J081608.95-895902.1|124.0373004|-89.9839356|0.1099|0.1088|-0.0107|302.9150859|-27.1223519|269.9773829|-66.5740194|2045.181|393.998|1201089401241004149|1201m894_ab41-004149|1201m894_ab41|4149|13.758|0.026|41.8|1.454|13.83|0.037|29.1|0.859099984|12.786|0.416|2.6|0.97420001|9.46||0.0|1.09399998|1.09300005|1|0|0.0|0.0|0.0|0.001|0000|dd00|0|20nn|AACU|7|0000|21|21|21|21|2|19|0|20|20.531|20.674|19.98|20.01|0.0|0.0|0.0|0.0|1|d|1|d|0||0||497.48999|11.8900003|9.412|2.899|0.527|185.350006|6.36910009|21.835|3.556|0.0|121.839996|46.6629982|1097.394|24.363|2.946|-0.379110008|13.0310001|298.505|9.752|0.663|13.67|0.012|0|0.261|13.737|0.035|0|0.319|12.186||32|0.825|8.966||32|0.576|14.343|0.013|0|14.533|0.04|0|13.494||32|9.948||32|13.931|0.012|0|14.056|0.035|0|13.011||32|9.542||32|13.736|0.012|1|13.823|0.036|1|12.681||32|9.12||32|13.609|0.013|1|13.667|0.038|1|12.449||32|8.71||32|13.497|0.014|1|13.521|0.04|1|12.326||32|8.321||32|13.386|0.014|1|13.38|0.042|1|12.32||32|7.959||32|13.282|0.015|1|13.251|0.043|1|12.299||32|8.401|0.538|1|13.175|0.015|1|13.128|0.044|1|12.185||32|8.037|0.446|1|13.756|0.08|0.017|0.313|20|0|55275.02271543|55277.20605032|55276.14436185|13.828|0.084|0.018|0.330000013|20|0|55275.02271543|55277.20605032|55276.14436185|12.429|1.598|0.367|3.9749999|11|1|55275.28745078|55277.20605032|55276.17885604|11.955|||3.26799989|8|0|55275.02271543|55277.20605032|55276.12104901|20|15|-12|0|0|0||||||||||||||||||||||||||728329963|0.088|40.1|1|14.317|0.033|13.924|0.047|13.837|0.063|1201089401241004149|1|-0.0001569357861747|0.0002323404560379|-0.999999960694535|111000000|
+J042554.04-895857.1|66.4751927|-89.9825336|0.5938|0.6561|0.1053|302.916115|-27.1385166|270.0175378|-66.5767226|2042.919|397.484|600089401241004937|0600m894_ab41-004937|0600m894_ab41|4937|16.747|0.103|10.5|0.935199976|17.332|0.536|2.0|0.895299971|13.026||0.0|0.974600017|8.729||1.8|0.975399971|0.940999985|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|6|20|0|20|0|19|1|19|19.771|19.684|19.0|18.83|0.0|0.0|0.0|0.0|0||0||0||0||31.7220001|3.00970006|9.411|2.819|0.11|7.36299992|3.63579988|21.745|3.482|0.076|1.35300004|48.1269989|1097.812|24.697|0.0|23.8649998|13.6129999|298.505|9.816|1.25|16.101|0.089|0|0.261|15.702||32|0.319|12.502||32|0.825|8.261||32|0.576|16.889|0.104|0|16.462||32|13.97||32|9.38||32|16.362|0.089|0|16.021||32|13.327||32|8.837||32|16.022|0.084|1|15.739||32|12.867||32|8.448||32|15.727|0.079|1|15.558||32|12.433||32|8.14||32|15.424|0.072|1|15.4||32|12.08||32|7.902||32|15.076|0.062|1|15.147||32|12.485|0.494|1|7.651||32|14.709|0.051|1|15.45|0.428|1|12.151|0.421|1|7.437||32|14.379|0.043|1|15.016|0.329|1|11.858|0.369|1|7.279||32|16.712|0.397|0.089|2.075|19|0|55275.28745078|55277.20605032|55276.20044417|17.264|2.846|0.636|3.77600002|13|0|55275.28745078|55277.20605032|55276.20044417|15.512|||3.59899998|8|0|55275.28745078|55277.20605032|55276.17885604|10.527|3.672|0.842|4.67799997|11|0|55275.28745078|55277.20605032|55276.17885604|-23|-24|13|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004937|1|0.0001216782917124|0.0002795099043681|-0.999999953534302|101000000|
+J225238.21-895856.8|343.1592185|-89.9824503|0.9837|0.9024|-0.1742|302.9416874|-27.1434002|270.0422187|-66.5556188|2061.307|396.009|89401241005505|0000m894_ab41-005505|0000m894_ab41|5505|17.304|0.152|7.1|0.816399992|16.943||0.8|1.02499998|13.038||0.1|1.10500002|9.284||0.3|1.03499997|0.989400029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|21|0|21|0|20|0|20|22.305|22.438|21.977|21.901|0.0|0.0|0.0|0.0|0||0||0||0||18.993|2.66580009|9.425|2.865|0.115|3.04649997|3.74620008|21.768|3.55|0.125|5.99100018|45.2789993|1097.305|24.717|2.659|3.85360003|13.3929996|298.222|9.559|1.147|16.205|0.118|1|0.261|15.424||32|0.319|12.266||32|0.825|8.698||32|0.576|17.175|0.163|1|16.301||32|13.449||32|9.864||32|16.466|0.118|1|15.743||32|13.091||32|9.274||32|15.778|0.081|1|15.861|0.408|1|12.805||32|8.782||32|15.116|0.055|1|15.278|0.295|1|12.573||32|8.519||32|14.623|0.042|1|14.857|0.241|1|12.374||32|8.34||32|14.318|0.038|1|14.601|0.225|1|12.191||32|8.186||32|14.134|0.037|1|14.473|0.233|1|12.028||32|8.093||32|14.014|0.038|1|14.435|0.259|1|11.874||32|7.954||32|17.315|0.605|0.132|3.704|19|0|55275.28745078|55277.20605032|55276.19476945|18.789|7.906|1.725|2.28699994|9|0|55275.28745078|55277.20605032|55276.19476945||||3.11999989|7|0|55275.28745078|55277.20605032|55276.173977|11.089|||3.92400002|8|0|55275.28745078|55277.20605032|55276.173977|-27|-44|86|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005505|1|0.0002931639269601|-0.0000887391431904|-0.999999953090137|131000000|
+J141945.89-895855.5|214.9412238|-89.9821097|0.1038|0.1045|0.0106|302.9394718|-27.1115782|269.9631469|-66.5504582|2068.104|394.334|2403089401241003996|2403m894_ab41-003996|2403m894_ab41|3996|13.567|0.026|42.6|1.07200003|13.601|0.033|33.1|0.967199981|12.422||1.9|0.999000013|9.206||0.6|1.05900002|1.02100003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|23|23|23|23|1|22|0|22|23.282|23.226|22.486|22.768|0.0|0.0|0.0|0.0|0||0||0||0||593.289978|13.9370003|9.371|2.889|0.484|228.910004|6.90789986|21.817|3.517|0.203|82.6340027|43.8079987|1096.566|24.144|2.88|7.96519995|12.4890003|298.667|9.662|0.926|13.525|0.014|0|0.261|13.589|0.042|0|0.319|12.645||32|0.825|8.89||32|0.576|14.155|0.015|0|14.351|0.045|0|13.832||32|9.856||32|13.786|0.014|0|13.908|0.042|0|13.47||32|9.466||32|13.639|0.015|1|13.731|0.046|1|13.099||32|8.992||32|13.554|0.017|1|13.652|0.053|1|12.758||32|8.778||32|13.491|0.019|1|13.617|0.061|1|12.483||32|8.516||32|13.435|0.021|1|13.603|0.071|1|12.194||32|8.28||32|13.385|0.023|1|13.604|0.083|1|11.914||32|8.063||32|13.338|0.025|1|13.616|0.096|1|11.653||32|7.862||32|13.574|0.057|0.012|0.381|22|0|55275.02271543|55277.20605032|55276.11874005|13.6|0.115|0.024|0.442999989|22|0|55275.02271543|55277.20605032|55276.11874005|12.979|3.164|0.674|2.79399991|10|0|55275.02271543|55277.20605032|55276.09638194|10.055|3.268|0.697|3.97300005|12|0|55275.02271543|55277.20605032|55276.09638194|26|45|-3|1|1|0||||||||||||||||||||||||||858076649|0.087|11.7|1|14.219|0.033|13.753|0.033|13.498|0.045|2403089401241003996|1|-0.0002559590516846|-0.0001788334288176|-0.999999951251783|121000000|
+J224040.79-895841.2|340.1699891|-89.9781282|0.24|0.2213|-0.0365|302.9451911|-27.1465633|270.0517091|-66.5532808|2067.421|405.9|89401241004612|0000m894_ab41-004612|0000m894_ab41|4612|15.616|0.044|24.7|0.890399992|15.483|0.105|10.3|0.981999993|11.639|0.14|7.8|1.097|8.798||1.9|1.02499998|0.994899988|1|0|0.0|0.0|0.0|0.001|0000|0000|0|011n|AABU|7|0000|22|22|8|22|4|21|1|21|22.709|22.64|22.078|22.477|0.0|0.0|0.0|0.0|0||0||0||0||89.8909988|3.64520001|9.388|2.817|0.02|40.4510002|3.90849996|21.817|3.484|0.205|350.190002|45.1430016|1096.568|24.881|4.21|23.6599998|12.1350002|298.576|9.624|1.91|15.358|0.057|1|0.261|15.332|0.173|1|0.319|12.172|0.445|1|0.825|9.912||32|0.576|16.056|0.062|0|16.081|0.184|0|13.43|0.475|0|9.786||32|15.619|0.057|1|15.651|0.173|1|12.997|0.445|1|10.488||32|15.408|0.061|1|15.484|0.191|1|12.92|0.537|1|9.14||32|15.26|0.066|1|15.409|0.221|1|12.177||32|8.843||32|15.119|0.069|1|15.389|0.261|1|12.343||32|8.582||32|14.987|0.072|1|15.413|0.315|1|12.316||32|8.346||32|14.843|0.074|1|15.451|0.379|1|12.152||32|8.128||32|14.622|0.07|1|15.384|0.41|1|12.0||32|7.928||32|15.617|0.097|0.021|0.714|21|0|55275.28745078|55277.20605032|55276.16855935|15.459|0.636|0.136|2.22900009|20|1|55275.28745078|55277.20605032|55276.16855935|11.6|0.624|0.136|2.99900007|18|0|55275.28745078|55277.20605032|55276.14750891|10.199|2.903|0.633|3.47900009|11|0|55275.28745078|55277.20605032|55276.14750891|-5|-17|43|0|0|1|||||||||||||||||||||||||||||0|||||||89401241004612|1|0.0003590989444187|-0.0001294960873818|-0.999999927139353|131000000|
+J194050.25-895840.5|295.2093946|-89.9779195|0.7849|0.7974|-0.2759|302.9561529|-27.1328769|270.0236241|-66.5407296|2053.293|409.601|3004089401241005086|3004m894_ab41-005086|3004m894_ab41|5086|17.105|0.13|8.3|0.867799997|16.9|0.344|3.2|1.02199996|12.689||1.2|0.965900004|9.53||-0.4|1.09300005|0.971400023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|1|23|1|23|0|22|0|22|22.857|22.757|21.899|21.778|0.0|0.0|0.0|0.0|0||0||0||0||22.8059998|2.73569989|9.376|2.866|0.0|10.9619999|3.47059989|21.761|3.447|0.211|49.9300003|41.6139984|1097.502|24.842|3.114|-5.15070009|12.217|298.534|9.603|0.781|16.132|0.159|1|0.261|15.609|0.158|1|0.319|12.218||32|0.825|8.336||32|0.576|17.076|0.214|1|16.619|0.214|1|13.678||32|9.527||32|16.393|0.159|1|15.928|0.158|1|13.043||32|8.912||32|15.859|0.126|1|15.397|0.124|1|13.289|0.517|1|8.496||32|15.438|0.106|1|14.95|0.101|1|12.797|0.406|1|8.26||32|15.132|0.096|1|14.588|0.087|1|12.378|0.333|1|8.061||32|14.903|0.092|1|14.301|0.078|1|12.032|0.285|1|7.857||32|14.711|0.09|1|14.055|0.072|1|11.737|0.252|1|7.662||32|14.506|0.085|1|13.828|0.066|1|11.49|0.23|1|7.519||32|17.069|0.314|0.066|2.187|21|0|55275.28745078|55277.20605032|55276.18490037|16.792|1.838|0.383|2.17499995|14|0|55275.28745078|55277.20605032|55276.18490037|13.262|2.168|0.462|5.12200022|13|0|55275.28745078|55277.20605032|55276.16554954||||3.51999998|10|0|55275.28745078|55277.20605032|55276.16554954|-24|-31|-16|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005086|1|0.000164142873271|-0.0003486729535069|-0.999999925742142|131000000|
+J150105.95-895839.9|225.2748037|-89.9777714|0.6423|0.6693|0.1862|302.9453024|-27.1093907|269.9607004|-66.5449108|2063.147|408.221|2403089401241004914|2403m894_ab41-004914|2403m894_ab41|4914|16.897|0.114|9.5|0.852299988|17.18|0.48|2.3|0.864400029|12.466|0.289|3.8|1.06599998|8.786||1.7|0.976100028|0.935100019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BCBU|7|0000|4|22|2|22|0|21|0|21|23.723|23.625|22.981|22.658|0.0|0.0|0.0|0.0|0||0||0||0||27.6089993|2.90840006|9.401|2.869|0.0|8.47259998|3.74670005|21.806|3.445|0.0|163.570007|43.5180016|1096.193|23.931|0.0|22.1450005|13.1619997|298.492|9.712|0.714|16.349|0.111|0|0.261|16.302|0.419|0|0.319|12.229||32|0.825|8.301||32|0.576|17.096|0.125|0|17.139|0.483|0|13.48||32|9.372||32|16.61|0.111|0|16.621|0.419|0|13.054||32|8.877||32|16.217|0.1|1|16.25|0.386|1|12.707||32|8.537||32|15.696|0.077|1|15.752|0.302|1|12.389||32|8.245||32|15.037|0.051|1|15.102|0.2|1|12.127||32|8.029||32|14.369|0.033|1|14.482|0.134|1|11.929||32|7.863||32|13.853|0.024|1|14.017|0.101|1|11.765||32|7.695||32|13.543|0.021|1|13.73|0.09|1|11.607||32|7.523||32|16.807|0.474|0.101|3.968|21|0|55275.02271543|55276.94144233|55276.06931685|17.291|3.463|0.738|2.99900007|12|0|55275.02271543|55276.94144233|55276.06931685|12.335|1.162|0.254|2.68400002|15|0|55275.02271543|55276.94144233|55276.04354058|9.768|3.766|0.822|3.22900009|12|0|55275.02271543|55276.94144233|55276.04354058|28|-18|-42|0|0|1|||||||||||||||||||||||||||||0|||||||2403089401241004914|1|-0.0002730116547414|-0.0002756431491151|-0.999999924742743|121000000|
+J040516.08-895839.0|61.3170295|-89.9775036|0.4661|0.6779|0.1365|302.9129945|-27.1430742|270.027166|-66.5804424|2046.744|410.922|600089401241004933|0600m894_ab41-004933|0600m894_ab41|4933|16.78|0.104|10.4|0.973800004|16.805||1.3|0.92019999|12.293||1.9|0.99849999|9.019||0.9|0.937699974|0.954999983|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|AUUU|1|0000|5|20|0|20|0|19|0|19|19.774|19.939|19.028|18.922|0.0|0.0|0.0|0.0|0||0||0||0||30.7590008|2.94440007|9.411|2.819|0.0|4.7276001|3.61989999|21.745|3.482|0.152|94.5619965|48.5730019|1097.812|24.697|3.319|12.1160002|13.5019999|298.505|9.816|0.924|16.277|0.194|0|0.261|16.198||32|0.319|12.514|0.534|0|0.825|8.435||32|0.576|16.994|0.212|0|16.708||32|13.176||32|9.537||32|16.538|0.194|0|16.517||32|13.339|0.534|0|9.011||32|16.412|0.223|1|16.621||32|12.827|0.431|1|8.542||32|16.452|0.289|1|16.385||32|12.543|0.412|1|8.173||32|16.483|0.356|1|16.189||32|12.42|0.44|1|7.87||32|16.397|0.39|1|16.008||32|12.372|0.498|1|7.603||32|16.236|0.391|1|15.847||32|12.29|0.536|1|7.393||32|15.963|0.35|1|15.696||32|12.081|0.508|1|7.232||32|16.844|0.344|0.077|2.173|19|0|55275.28745078|55277.20605032|55276.20044417|18.002|6.034|1.349|3.046|9|0|55275.28745078|55277.20605032|55276.20044417|12.814|1.857|0.426|3.5|11|0|55275.28745078|55277.20605032|55276.17885604|9.756|2.739|0.628|2.60299993|10|0|55275.28745078|55277.20605032|55276.17885604|-37|14|-10|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241004933|1|0.0001884508605737|0.0003444555506049|-0.99999992291832|101000000|
+J202003.59-895837.8|305.0149995|-89.9771764|0.7622|0.7552|-0.2324|302.9556692|-27.1367617|270.0328982|-66.5420128|2043.257|411.601|3004089401241005093|3004m894_ab41-005093|3004m894_ab41|5093|17.043|0.12|9.0|0.842599988|16.802||1.5|0.876399994|13.178||-0.5|0.99119997|9.153||0.8|0.988499999|0.92019999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BUUU|1|0000|4|23|1|23|0|22|0|22|22.721|23.336|22.369|21.95|0.0|0.0|0.0|0.0|0||0||0||0||24.1369991|2.6724999|9.376|2.866|0.0|5.1093998|3.44429994|21.761|3.447|0.407|-19.9020004|42.4319992|1097.502|24.842|2.78|9.50800037|12.5389996|298.534|9.603|0.116|16.386|0.237|1|0.261|16.224|0.4|1|0.319|12.484||32|0.825|8.47||32|0.576|17.133|0.267|1|17.2|0.525|1|13.669||32|9.595||32|16.647|0.237|1|16.543|0.4|1|13.309||32|9.046||32|16.363|0.236|1|16.04|0.328|1|12.954||32|8.641||32|16.0|0.209|1|15.594|0.269|1|12.524||32|8.294||32|15.538|0.165|1|15.213|0.229|1|12.137||32|8.022||32|15.133|0.134|1|14.877|0.198|1|11.778||32|7.868||32|14.839|0.119|1|14.59|0.177|1|12.152|0.497|1|7.755||32|14.612|0.111|1|14.352|0.164|1|11.767|0.401|1|7.638||32|17.032|0.59|0.123|3.788|22|0|55275.28745078|55277.20605032|55276.18490037|17.465|3.247|0.677|1.95700002|11|0|55275.28745078|55277.20605032|55276.18490037|16.122|||3.43099999|11|0|55275.28745078|55277.20605032|55276.16554954|10.545|5.392|1.15|2.05100012|9|0|55275.28745078|55277.20605032|55276.16554954|32|-13|-32|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005093|1|0.0002285682042333|-0.000326247412498|-0.999999920659598|131000000|
+J210851.67-895837.3|317.2152994|-89.9770382|0.2192|0.2107|-0.0521|302.9532178|-27.1411128|270.0423387|-66.5451065|2030.672|409.599|3004089401241004324|3004m894_ab41-004324|3004m894_ab41|4324|15.352|0.04|26.9|0.894500017|15.512|0.108|10.0|0.852800012|12.602||1.2|1.03799999|9.142||0.9|1.10399997|0.966300011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|22|22|4|22|1|21|0|21|23.314|23.702|22.903|22.469|0.0|0.0|0.0|0.0|0||0||0||0||114.620003|4.25649977|9.4|2.857|0.407|39.355999|3.91950011|21.827|3.525|0.176|53.1419983|45.5950012|1098.43|25.578|0.672|11.0|11.9720001|298.486|9.381|0.858|15.282|0.078|0|0.261|15.194|0.199|0|0.319|12.391||32|0.825|10.598||32|0.576|15.913|0.079|0|16.008|0.225|0|13.545||32|11.06||32|15.543|0.078|0|15.513|0.199|0|13.216||32|11.174||32|15.395|0.088|1|15.297|0.211|1|13.183||32|8.976||32|15.294|0.099|1|15.196|0.238|1|12.893||32|8.682||32|15.157|0.106|1|15.065|0.255|1|12.687||32|8.421||32|14.963|0.104|1|14.859|0.249|1|12.368||32|8.185||32|14.776|0.102|1|14.646|0.238|1|12.025||32|7.969||32|14.65|0.105|1|14.495|0.238|1|11.706||32|7.77||32|15.34|0.111|0.024|0.502|21|0|55275.28745078|55277.20605032|55276.16855935|15.522|0.427|0.091|1.55999994|21|0|55275.28745078|55277.20605032|55276.16855935|12.854|2.255|0.492|5.5079999|11|0|55275.28745078|55277.20605032|55276.14750891|9.756|2.365|0.516|2.85400009|11|0|55275.28745078|55277.20605032|55276.14750891|22|20|69|0|0|1||||||||||||||||||||||||||1146967562|0.74|-12.0|1|15.985|0.093|15.608|0.178|14.962|0.148|3004089401241004324|1|0.0002941218973075|-0.0002722140157807|-0.999999919695916|131000000|
+J191503.48-895836.8|288.7645285|-89.9768913|0.3926|0.4133|-0.0938|302.957744|-27.1305315|270.0186714|-66.5388273|2060.267|411.28|3004089401241004698|3004m894_ab41-004698|3004m894_ab41|4698|16.332|0.07|15.5|0.856299996|16.37|0.217|5.0|0.987500012|12.875||0.6|0.925100029|9.368|0.459|2.4|1.02100003|0.943300009|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUC|11|0000|14|23|1|23|0|22|0|22|22.779|22.612|21.903|21.81|0.0|0.0|0.0|0.0|0||0||0||0||46.4860001|3.00139999|9.364|2.854|0.0|17.8579998|3.56760001|21.761|3.45|0.038|26.2439995|42.9729996|1098.216|24.997|1.665|28.3670006|11.9940004|298.615|9.659|0.786|15.947|0.124|1|0.261|15.651|0.178|1|0.319|12.458||32|0.825|8.429||32|0.576|16.699|0.139|1|16.578|0.222|1|13.813||32|9.402||32|16.208|0.124|1|15.97|0.178|1|13.283||32|9.005||32|15.866|0.117|1|15.526|0.153|1|12.787||32|8.717||32|15.532|0.107|1|15.107|0.129|1|12.316||32|8.504||32|15.155|0.091|1|14.69|0.106|1|12.464|0.394|1|8.333||32|14.741|0.074|1|14.298|0.087|1|12.001|0.303|1|9.103||32|14.324|0.059|1|13.939|0.073|1|11.75|0.28|1|7.968||32|13.941|0.048|1|13.63|0.063|1|11.632|0.289|1|7.769||32|16.32|0.28|0.058|1.076|22|0|55275.28745078|55277.20605032|55276.18490037|16.352|1.035|0.216|3.13199997|19|0|55275.28745078|55277.20605032|55276.18490037|13.823|4.138|0.882|4.66900015|11|0|55275.28745078|55277.20605032|55276.16554954|9.186|1.72|0.367|2.62199998|12|0|55275.28745078|55277.20605032|55276.16554954|31|22|47|1|0|1|||||||||||||||||||||||||||||0|||||||3004089401241004698|1|0.0001297408166053|-0.0003818859564348|-0.999999918665215|131000000|
+J181241.66-895836.6|273.173619|-89.9768593|0.3203|0.3373|-0.0793|302.9575456|-27.1242607|270.0032177|-66.5376037|2075.778|405.878|3004089401241004535|3004m894_ab41-004535|3004m894_ab41|4535|15.994|0.059|18.3|1.079|15.779|0.132|8.2|0.914300025|12.496||1.6|1.06599998|9.579||-0.3|0.955600023|1.00100005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|17|23|3|23|2|22|0|22|22.785|22.962|21.919|22.042|0.0|0.0|0.0|0.0|0||0||0||0||63.4539986|3.45840001|9.371|2.876|0.131|30.7830009|3.7507|21.837|3.492|0.141|69.7139969|44.7099991|1098.157|24.673|0.0|-3.72950006|11.6789999|298.806|9.762|0.192|15.457|0.066|0|0.261|15.134|0.117|0|0.319|12.451||32|0.825|8.973||32|0.576|16.221|0.075|0|16.037|0.144|0|13.51||32|9.977||32|15.718|0.066|0|15.453|0.117|0|13.276||32|9.549||32|15.514|0.07|0|15.172|0.116|0|12.977||32|9.215||32|15.402|0.078|1|15.024|0.125|1|12.744||32|8.928||32|15.282|0.084|1|14.913|0.136|1|12.544||32|8.675||32|15.131|0.086|1|14.772|0.141|1|12.365||32|8.446||32|14.951|0.085|1|14.568|0.135|1|12.202||32|8.236||32|14.758|0.082|1|14.336|0.126|1|12.049||32|8.042||32|15.988|0.261|0.054|1.225|22|0|55275.28745078|55277.20605032|55276.18490037|15.759|0.618|0.129|2.59299994|22|0|55275.28745078|55277.20605032|55276.18490037|12.964|3.284|0.7|4.46000004|12|1|55275.28745078|55277.20605032|55276.16554954||||4.75500011|8|0|55275.28745078|55277.20605032|55276.16554954|-3|11|49|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004535|1|0.0000223595488912|-0.000403261186061|-0.99999991844023|131000000|
+J015010.23-895836.1|27.5426511|-89.9767024|0.0971|0.1013|0.015|302.9252795|-27.1506929|270.051954|-66.5714733|2019.79|406.115|89401241004202|0000m894_ab41-004202|0000m894_ab41|4202|13.489|0.025|43.6|2.602|13.463|0.03|35.7|1.11099994|12.806|0.411|2.6|1.06700003|9.014||1.2|0.994899988|1.45299995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AACU|7|0000|20|20|20|20|2|19|0|19|20.75|20.717|19.924|20.368|0.0|0.0|0.0|0.0|0||0||0||0||637.169983|14.6120005|9.37|2.829|0.0|259.790009|7.28509998|21.792|3.539|0.059|119.540001|45.2299995|1096.36|24.316|2.994|14.4029999|12.4499998|298.245|9.29|2.094|13.42|0.012|0|0.261|13.381|0.03|0|0.319|12.235||32|0.825|8.76||32|0.576|14.102|0.013|0|14.17|0.034|0|13.502||32|9.735||32|13.681|0.012|0|13.7|0.03|0|13.06||32|9.336||32|13.516|0.012|0|13.504|0.032|0|12.759||32|9.041||32|13.439|0.014|0|13.415|0.037|0|12.556||32|8.634||32|13.393|0.015|0|13.368|0.042|0|12.394||32|8.28||32|13.356|0.017|0|13.334|0.048|0|12.23||32|8.021||32|13.313|0.019|0|13.303|0.054|0|12.03||32|7.78||32|13.244|0.02|0|13.254|0.059|0|11.822||32|7.537||32|13.484|0.028|0.006|0.167|19|0|55275.28745078|55277.20605032|55276.20044417|13.465|0.084|0.019|0.286000013|19|0|55275.28745078|55277.20605032|55276.20044417|12.71|2.629|0.603|4.78999996|10|1|55275.28745078|55277.20605032|55276.17885604|10.358|5.439|1.248|3.8829999|12|0|55275.28745078|55277.20605032|55276.17885604|29|-5|-80|1|0|1||||||||||||||||||||||||||1085460100|0.719|-129.9|1|14.677|0.049|13.964|0.046|13.791|0.062|89401241004202|1|0.0003605355905296|0.0001880241939664|-0.999999917330492|101000000|
+J234624.52-895829.2|356.6021811|-89.9748015|0.5655|0.5123|0.0944|302.9398441|-27.1523471|270.0632331|-66.5592027|2051.906|417.889|89401241005126|0000m894_ab41-005126|0000m894_ab41|5126|16.727|0.091|11.9|0.86500001|16.695|0.298|3.6|0.790099978|13.093||-0.2|1.11500001|9.489||-1.5|0.935100019|0.922200024|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|7|22|0|22|1|21|0|21|22.668|21.715|21.973|21.828|0.0|0.0|0.0|0.0|0||0||0||0||32.2919998|2.72059989|9.353|2.84|0.207|13.2469997|3.63770008|21.745|3.474|0.34|-10.3959999|45.8880005|1097.704|24.552|2.428|-18.5020008|12.6859999|298.651|9.72|1.196|15.729|0.06|1|0.261|15.547|0.156|1|0.319|12.396||32|0.825|8.646||32|0.576|16.63|0.077|1|16.489|0.199|1|13.582||32|9.855||32|15.99|0.06|1|15.866|0.156|1|13.221||32|9.222||32|15.55|0.051|1|15.481|0.139|1|12.945||32|8.716||32|15.211|0.047|1|15.202|0.132|1|12.716||32|8.338||32|14.886|0.042|1|14.927|0.122|1|12.512||32|8.054||32|14.455|0.034|1|14.52|0.098|1|12.331||32|7.796||32|13.853|0.023|1|13.882|0.063|1|12.165||32|8.208|0.482|1|13.079|0.014|1|13.073|0.034|1|12.015||32|7.898|0.428|1|16.73|0.437|0.093|2.67|21|0|55275.28745078|55277.20605032|55276.22569932|16.554|0.538|0.115|2.42000008|19|0|55275.28745078|55277.20605032|55276.22569932||||4.15299988|8|0|55275.28745078|55277.20605032|55276.20736984||||3.61599994|8|0|55275.28745078|55277.20605032|55276.20736984|31|-19|-17|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005126|1|0.0004390238878195|-0.0000260660536769|-0.999999903289289|131000000|
+J092503.93-895828.2|141.2663962|-89.974502|0.2757|0.2663|-0.0676|302.9094688|-27.1123142|269.9499649|-66.576655|2023.994|414.322|1201089401241004545|1201m894_ab41-004545|1201m894_ab41|4545|15.874|0.055|19.8|1.44400001|15.086|0.078|13.9|1.17499995|12.032|0.199|5.5|1.02699995|9.434|0.522|2.1|1.06299996|1.176|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|AABC|15|0000|16|20|10|20|2|19|0|19|20.795|20.599|19.943|19.8|0.0|0.0|0.0|0.0|129|D|129|D|0||0||70.8809967|3.58240008|9.421|2.834|0.127|58.2999992|4.19890022|21.804|3.486|0.094|243.949997|44.7109985|1096.722|24.138|0.622|26.691|12.8430004|298.331|9.589|0.273|15.292|0.063|1|0.261|14.653|0.084|1|0.319|11.748||32|0.825|8.409||32|0.576|16.175|0.08|0|15.578|0.105|0|12.919||32|9.439||32|15.552|0.063|1|14.972|0.084|1|12.573||32|8.985||32|15.133|0.056|1|14.6|0.077|1|12.462||32|8.721||32|14.767|0.049|1|14.306|0.073|1|12.333||32|8.506||32|14.414|0.043|1|14.038|0.068|1|12.135||32|8.258||32|14.077|0.037|1|13.788|0.064|1|11.952||32|7.948||32|13.795|0.034|1|13.573|0.061|1|11.789||32|7.657||32|13.596|0.032|1|13.409|0.06|1|11.635||32|7.465||32|15.837|0.348|0.078|2.304|19|3|55275.02271543|55276.94144233|55276.09127742|15.121|0.582|0.13|3.9690001|19|4|55275.02271543|55276.94144233|55276.09127742|12.014|0.941|0.216|3.11599994|15|0|55275.02271543|55276.94144233|55276.06394368|9.462|2.106|0.483|3.73000002|13|0|55275.02271543|55276.94144233|55276.06394368|31|70|4|1|3|0|||||||||||||||||||||||||||||0|||||||1201089401241004545|1|-0.0003471464308154|0.0002784511713082|-0.999999900977146|111000000|
+J233117.40-895822.7|352.8225205|-89.9729793|0.5232|0.5067|0.0757|302.9423208|-27.1535412|270.0673878|-66.5573184|2056.834|422.221|89401241005007|0000m894_ab41-005007|0000m894_ab41|5007|16.661|0.088|12.3|0.916000009|17.155|0.45|2.4|0.939300001|12.966|0.473|2.3|0.95480001|9.41||0.1|0.808600008|0.913800001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACCU|7|0000|7|22|1|22|0|21|0|21|22.775|22.438|21.957|22.068|0.0|0.0|0.0|0.0|0||0||0||0||34.3180008|2.78550005|9.353|2.84|0.0|8.66779995|3.59619999|21.745|3.474|0.0|103.169998|44.9210014|1097.704|24.552|0.703|1.81260002|12.7410002|298.651|9.72|0.783|16.056|0.102|1|0.261|15.95||32|0.319|12.509||32|0.825|8.553||32|0.576|16.867|0.121|1|16.501||32|13.702||32|9.567||32|16.317|0.102|1|16.269||32|13.334||32|9.129||32|15.929|0.093|1|16.278||32|13.052||32|8.786||32|15.619|0.086|1|16.043||32|12.817||32|8.49||32|15.352|0.082|1|15.84||32|12.614||32|8.23||32|15.072|0.074|1|15.659||32|12.434||32|7.994||32|14.685|0.061|1|15.496||32|12.272||32|7.778||32|14.112|0.042|1|15.188||32|12.118||32|7.578||32|16.655|0.307|0.066|1.195|21|0|55275.28745078|55277.20605032|55276.22569932|17.045|2.329|0.497|2.7980001|14|0|55275.28745078|55277.20605032|55276.22569932|12.855|1.915|0.418|2.34299994|12|0|55275.28745078|55277.20605032|55276.20736984|12.266|||2.83500004|7|0|55275.28745078|55277.20605032|55276.20736984|-51|20|89|1|0|1|||||||||||||||||||||||||||||0|||||||89401241005007|1|0.000467905105479|-0.0000589233222604|-0.999999888796421|131000000|
+J192533.53-895820.3|291.3897169|-89.9723195|0.2467|0.2652|-0.0734|302.9626753|-27.1322589|270.0253531|-66.5349329|2059.428|423.599|3004089401241005344|3004m894_ab41-005344|3004m894_ab41|5344|15.82|0.051|21.3|0.776499987|15.55|0.107|10.1|1.08500004|11.178|0.095|11.4|1.125|9.359|0.465|2.3|1.08200002|1.01100004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|011n|AAAC|15|0000|22|23|4|23|9|22|1|22|22.74|22.665|22.008|21.86|0.0|0.0|0.0|0.0|0||0||0||0||74.4599991|3.49370003|9.366|2.845|0.0|38.0019989|3.74769998|21.746|3.445|0.0|535.380005|46.7770004|1098.158|25.017|0.0|28.6100006|12.2460003|298.604|9.759|0.668|14.718|0.025|1|0.261|14.675|0.095|1|0.319|11.138|0.117|1|0.825|8.507||32|0.576|15.754|0.036|1|15.696|0.13|1|12.561|0.146|1|9.48||32|14.979|0.025|1|14.994|0.095|1|11.963|0.117|1|9.083||32|14.414|0.019|1|14.523|0.079|1|11.639|0.112|1|8.77||32|14.038|0.017|1|14.207|0.073|1|11.455|0.117|1|8.488||32|13.808|0.017|1|13.999|0.073|1|11.365|0.13|1|8.138||32|13.659|0.017|1|13.853|0.075|1|11.34|0.149|1|7.825||32|13.557|0.018|1|13.755|0.08|1|11.355|0.176|1|7.62||32|13.482|0.019|1|13.669|0.085|1|11.399|0.21|1|7.45||32|15.817|0.178|0.037|0.837|22|0|55275.28745078|55277.20605032|55276.18490037|15.54|0.48|0.1|3.05999994|22|0|55275.28745078|55277.20605032|55276.18490037|11.123|0.391|0.083|1.40400004|21|0|55275.28745078|55277.20605032|55276.16554954|9.181|1.987|0.424|3.32399988|14|0|55275.28745078|55277.20605032|55276.16554954|-9|34|-45|0|1|1|||||||||||||||||||||||||||||0|||||||3004089401241005344|1|0.0001761973252584|-0.0004498402161732|-0.999999883299134|131000000|
+J213245.13-895819.1|323.1880556|-89.9719965|0.2946|0.2804|-0.083|302.9559072|-27.1462774|270.0563247|-66.5439193|2019.676|419.658|3004089401241004509|3004m894_ab41-004509|3004m894_ab41|4509|15.883|0.053|20.6|0.831700027|15.761|0.134|8.1|0.976199985|12.231|0.243|4.5|1.01499999|9.546||-1.4|0.91140002|0.929199994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABBU|7|0000|20|23|5|22|2|22|0|22|23.766|23.449|22.97|22.833|0.0|0.0|0.0|0.0|0||0||0||0||70.2770004|3.41009998|9.385|2.803|0.0|31.3129997|3.87159991|21.774|3.462|0.0|203.119995|45.4630013|1098.433|25.397|3.014|-16.3190002|12.0360003|298.836|9.688|0.697|15.526|0.057|1|0.261|15.605|0.29|1|0.319|11.795||32|0.825|8.985||32|0.576|16.259|0.063|1|16.358|0.308|1|13.016||32|10.001||32|15.787|0.057|1|15.924|0.29|1|12.62||32|9.561||32|15.558|0.059|1|15.668|0.295|1|12.454||32|9.22||32|15.385|0.062|1|15.431|0.293|1|12.336||32|8.927||32|15.188|0.062|1|15.21|0.29|1|12.19||32|8.668||32|14.933|0.058|1|14.978|0.276|1|12.022||32|8.434||32|14.649|0.052|1|14.735|0.257|1|11.843||32|8.073||32|14.412|0.048|1|14.534|0.245|1|11.713||32|7.785||32|15.889|0.207|0.043|0.805|22|0|55275.28745078|55277.20605032|55276.18490037|15.743|0.721|0.154|2.71799994|20|1|55275.28745078|55277.20605032|55276.16855935|12.112|1.038|0.221|2.45799994|14|1|55275.28745078|55277.20605032|55276.16554954||||4.44000006|8|0|55275.28745078|55277.20605032|55276.16554954|-13|-7|2|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004509|1|0.0003912993890645|-0.0002928565894282|-0.999999880559896|131000000|
+J180700.39-895812.1|271.7516451|-89.9700447|0.8523|0.8526|-0.1385|302.9649419|-27.1223815|270.0022991|-66.5307675|2085.676|420.82|3004089401241005107|3004m894_ab41-005107|3004m894_ab41|5107|17.432|0.168|6.5|0.854099989|16.194|0.179|6.1|0.969799995|12.508||1.8|1.22000003|9.416||0.3|0.961000025|0.99970001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|1|23|3|23|0|22|0|22|22.881|22.891|21.952|22.092|0.0|0.0|0.0|0.0|0||0||0||0||16.8799992|2.6092|9.418|2.786|0.196|21.0109997|3.45950007|21.788|3.38|0.239|74.026001|41.632|1097.277|24.537|0.95|3.95070004|11.5979996|298.648|9.656|0.569|16.955|0.297|0|0.261|15.903|0.292|0|0.319|12.583||32|0.825|8.98||32|0.576|17.593|0.302|0|16.686|0.323|0|15.217||32|9.985||32|17.216|0.297|0|16.222|0.292|0|13.408||32|9.556||32|17.052|0.331|1|15.997|0.307|1|13.126||32|9.22||32|16.884|0.35|1|15.801|0.318|1|12.891||32|8.936||32|16.554|0.31|1|15.541|0.301|1|12.691||32|8.686||32|16.066|0.234|1|15.233|0.268|1|12.511||32|8.459||32|15.527|0.166|1|14.908|0.231|1|12.346||32|8.252||32|14.977|0.115|1|14.559|0.193|1|12.195||32|8.06||32|17.396|0.826|0.172|3.547|18|0|55275.28745078|55277.20605032|55276.18490037|16.252|1.379|0.288|3.36299992|17|1|55275.28745078|55277.20605032|55276.18490037|13.017|2.463|0.525|6.63800001|12|0|55275.28745078|55277.20605032|55276.16554954|10.536|5.85|1.247|4.98899984|10|0|55275.28745078|55277.20605032|55276.16554954|-1|36|-11|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005107|1|0.0000159811290852|-0.0005225750221053|-0.999999863329966|131000000|
+J004159.92-895811.8|10.499673|-89.9699571|0.0703|0.0772|-0.0114|302.9333064|-27.1581738|270.0742786|-66.566166|2033.661|429.37|89401241004100|0000m894_ab41-004100|0000m894_ab41|4100|11.009|0.023|47.5|1.403|11.097|0.02|53.5|1.10699999|11.108|0.088|12.3|1.02600002|9.011||1.0|0.937099993|1.11699998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|001n|AAAU|7|0000|21|21|21|21|10|20|0|20|21.43|21.288|20.956|21.068|0.0|0.0|0.0|0.0|0||0||0||0||6260.0|131.869995|9.352|2.845|0.249|2296.5|42.9269981|21.753|3.483|0.058|571.400024|46.4469986|1096.924|24.507|2.612|12.9379997|13.2349997|298.48|9.729|1.793|10.996|0.006|0|0.261|11.101|0.007|0|0.319|11.608|0.385|0|0.825|8.576||32|0.576|11.631|0.006|0|11.858|0.008|0|12.877|0.413|0|9.59||32|11.257|0.006|0|11.42|0.007|0|12.433|0.385|0|9.152||32|11.121|0.006|0|11.254|0.008|0|12.351|0.459|0|8.808||32|11.068|0.006|0|11.191|0.008|0|11.65||32|8.515||32|11.044|0.006|1|11.164|0.009|1|11.683||32|8.255||32|11.031|0.006|1|11.15|0.01|1|11.781||32|8.021||32|11.02|0.006|1|11.141|0.011|1|11.751||32|7.805||32|11.008|0.006|1|11.133|0.012|1|11.6||32|7.606||32|11.004|0.019|0.004|0.122|20|0|55275.28745078|55277.20605032|55276.23257667|11.097|0.027|0.006|0.112999998|20|0|55275.28745078|55277.20605032|55276.23257667|11.111|0.394|0.088|1.79700005|19|0|55275.28745078|55277.20605032|55276.21367457|9.981|3.928|0.878|4.91699982|11|0|55275.28745078|55277.20605032|55276.21367457|15|-9|66|0|0|2||||||||||||||||||||||||||1085389169|0.228|-4.4|1|11.821|0.024|11.253|0.027|11.109|0.023|89401241004100|1|0.0005155675209089|0.0000955517485825|-0.999999862529988|101000000|
+J191522.47-895811.0|288.8436607|-89.9697478|0.1137|0.115|-0.0157|302.9657235|-27.1313063|270.0245359|-66.5320762|2063.952|429.616|3004089401241004064|3004m894_ab41-004064|3004m894_ab41|4064|13.998|0.026|41.2|1.528|14.14|0.04|26.9|1.08399999|12.634|0.345|3.1|0.98180002|9.55||-1.3|1.08099997|1.16700006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|23|23|22|23|2|22|0|22|22.705|22.661|22.009|21.765|0.0|0.0|0.0|0.0|0||0||0||0||398.890015|9.68099976|9.372|2.808|0.0|139.25|5.16720009|21.75|3.41|0.074|140.039993|44.4570007|1098.53|25.196|2.221|-15.4219999|11.9890003|298.478|9.806|1.376|13.865|0.016|1|0.261|14.039|0.058|1|0.319|12.312|0.403|1|0.825|8.617||32|0.576|14.567|0.017|1|14.85|0.065|1|13.186||32|9.62||32|14.126|0.016|1|14.358|0.058|1|13.137|0.403|1|9.193||32|13.906|0.017|1|14.11|0.059|1|12.536|0.301|1|8.85||32|13.787|0.018|1|13.971|0.064|1|12.147|0.261|1|8.557||32|13.729|0.02|1|13.904|0.072|1|11.945|0.259|1|8.297||32|13.699|0.023|1|13.884|0.083|1|11.914|0.298|1|8.063||32|13.672|0.025|1|13.878|0.096|1|12.033|0.386|1|7.848||32|13.63|0.028|1|13.845|0.107|1|11.506||32|7.65||32|14.0|0.062|0.013|0.212|22|0|55275.28745078|55277.20605032|55276.18490037|14.14|0.156|0.033|0.577000022|22|0|55275.28745078|55277.20605032|55276.18490037|12.39|1.705|0.363|2.84299994|11|0|55275.28745078|55277.20605032|55276.16554954||||3.35500002|7|0|55275.28745078|55277.20605032|55276.16554954|-18|-14|87|0|0|1||||||||||||||||||||||||||970686757|0.511|-17.1|1|14.778|0.042|14.152|0.058|14.12|0.08|3004089401241004064|1|0.0001705373619349|-0.0004997017092228|-0.999999860607595|131000000|
+J152258.84-895810.5|230.7451939|-89.969587|0.2536|0.263|0.0758|302.9528964|-27.1041518|269.9516659|-66.5371514|2061.303|430.535|2403089401241004349|2403m894_ab41-004349|2403m894_ab41|4349|15.761|0.05|21.9|0.799399972|15.374|0.09|12.1|1.09200001|13.1|0.504|2.2|1.06099999|9.532||-1.0|0.851400018|0.946699977|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AACU|7|0000|19|23|6|23|1|22|0|22|23.693|23.513|22.911|22.794|0.0|0.0|0.0|0.0|0||0||0||0||78.612999|3.59669995|9.394|2.739|0.082|44.6930008|3.69919991|21.737|3.348|0.224|91.1709976|42.3079987|1097.464|24.465|1.211|-11.6029997|12.1899996|298.423|9.643|0.666|15.536|0.069|0|0.261|15.074|0.1|0|0.319|12.32||32|0.825|8.89||32|0.576|16.22|0.073|0|15.918|0.116|0|13.649||32|9.903||32|15.797|0.069|0|15.393|0.1|0|13.145||32|9.466||32|15.588|0.074|1|15.164|0.105|1|12.672||32|9.119||32|15.445|0.08|1|15.082|0.12|1|13.019|0.527|1|8.824||32|15.323|0.086|1|15.067|0.143|1|12.617|0.439|1|8.564||32|15.205|0.091|1|15.087|0.172|1|12.334|0.4|1|8.328||32|15.07|0.093|1|15.123|0.208|1|12.129|0.386|1|8.112||32|14.882|0.09|1|15.071|0.227|1|11.97|0.382|1|7.913||32|15.752|0.213|0.044|0.881|22|0|55275.02271543|55276.94144233|55276.08997277|15.385|0.442|0.092|3.3829999|22|0|55275.02271543|55276.94144233|55276.08997277|12.626|1.835|0.391|2.48799992|13|0|55275.02271543|55276.94144233|55276.06630705||||2.38100004|7|0|55275.02271543|55276.94144233|55276.06630705|22|-7|-45|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004349|1|-0.0003358789537264|-0.0004110249332656|-0.999999859121906|121000000|
+J222032.75-895810.2|335.1364899|-89.9695173|1.0284|0.9327|-0.238|302.9528767|-27.152266|270.0694938|-66.5478768|2081.552|424.442|89401241005636|0000m894_ab41-005636|0000m894_ab41|5636|17.463|0.164|6.6|0.906899989|16.908||1.2|1.08700001|13.167||-0.8|0.945800006|9.542||-1.9|1.07299995|0.99970001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|23|1|23|0|22|0|22|23.467|23.639|22.953|22.795|0.0|0.0|0.0|0.0|0||0||0||0||16.4029999|2.47989988|9.392|2.772|0.0|4.06529999|3.40969992|21.789|3.405|0.194|-33.4269981|42.8740005|1097.326|24.58|2.411|-22.9379997|12.0819998|298.729|9.639|1.714|17.091|0.269|0|0.261|16.186||32|0.319|12.739||32|0.825|8.914||32|0.576|17.626|0.249|0|17.01||32|13.926||32|9.928||32|17.352|0.269|0|16.505||32|13.564||32|9.49||32|17.467|0.386|0|16.233||32|13.291||32|9.141||32|16.977||32|15.996||32|13.054||32|8.849||32|16.949||32|15.794||32|12.851||32|8.586||32|16.519||32|15.608||32|12.666||32|8.35||32|16.367|0.292|1|15.444||32|12.501||32|8.135||32|15.673|0.177|1|15.293||32|12.35||32|7.935||32|17.606|0.746|0.156|4.293|22|0|55275.28745078|55277.20605032|55276.19928401|18.226|7.491|1.562|2.61400008|12|0|55275.28745078|55277.20605032|55276.19928401||||2.2650001|7|0|55275.28745078|55277.20605032|55276.18058699||||5.10400009|7|0|55275.28745078|55277.20605032|55276.18058699|-26|-64|51|0|1|0|||||||||||||||||||||||||||||0|||||||89401241005636|1|0.0004827114021072|-0.0002236936192887|-0.999999858475423|131000000|
+J040841.11-895809.8|62.1713221|-89.9694144|0.2419|0.2581|0.0473|302.9058525|-27.148094|270.0359343|-66.5877531|2045.098|432.061|600089401241004372|0600m894_ab41-004372|0600m894_ab41|4372|15.658|0.045|23.9|0.876900017|15.803|0.139|7.8|0.896899998|12.462|0.313|3.5|1.04400003|9.044|0.374|2.9|0.940999985|0.935400009|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABBC|15|0000|20|20|4|20|0|19|0|19|20.023|20.498|19.792|19.461|0.0|0.0|0.0|0.0|0||0||0||0||86.4800034|3.61919999|9.367|2.752|0.0|30.1219997|3.84540009|21.786|3.421|0.0|164.130005|47.3580017|1097.328|24.52|0.0|38.2270012|13.158|298.368|9.517|0.729|15.614|0.096|1|0.261|15.705|0.184|1|0.319|11.948||32|0.825|8.334||32|0.576|16.23|0.097|0|16.347|0.18|0|13.217||32|9.42||32|15.875|0.096|1|16.024|0.184|1|12.773||32|8.91||32|15.746|0.11|1|16.046|0.241|1|12.505||32|8.522||32|15.639|0.123|1|16.183|0.336|1|12.302||32|8.244||32|15.476|0.127|1|16.27|0.438|1|12.142||32|8.029||32|15.289|0.126|1|16.212|0.487|1|12.029||32|7.823||32|15.106|0.124|1|16.049|0.486|1|11.978||32|7.628||32|14.935|0.122|1|15.855|0.464|1|12.035||32|7.454||32|15.66|0.166|0.037|0.666|19|0|55275.28745078|55277.20605032|55276.20044417|15.784|0.734|0.164|2.71000004|17|0|55275.28745078|55277.20605032|55276.20044417|12.265|0.99|0.227|4.63800001|15|0|55275.28745078|55277.20605032|55276.17885604|8.855|0.927|0.213|4.63999987|15|0|55275.28745078|55277.20605032|55276.17885604|-10|-24|14|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004372|1|0.000249202775658|0.0004720822294751|-0.999999857518162|101000000|
+J141558.43-895808.4|213.9934946|-89.9690097|0.395|0.3884|0.1295|302.9444676|-27.0992499|269.9354508|-66.543369|2084.037|424.721|2403089401241004551|2403m894_ab41-004551|2403m894_ab41|4551|16.282|0.068|15.9|0.895500004|16.397|0.226|4.8|0.993600011|12.395|0.274|4.0|1.02600002|9.312||0.3|0.99059999|0.972500026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|14|23|0|22|2|22|0|22|22.623|22.784|21.94|22.111|0.0|0.0|0.0|0.0|0||0||0||0||48.6850014|3.07119989|9.405|2.75|0.275|17.4220009|3.62269998|21.796|3.415|0.031|174.639999|44.0810013|1097.013|24.153|4.207|3.60759997|13.125|298.863|9.979|1.945|16.116|0.266|0|0.261|15.628|0.18|0|0.319|12.15||32|0.825|8.668||32|0.576|16.764|0.273|0|16.487|0.214|0|13.418||32|9.676||32|16.377|0.266|0|15.947|0.18|0|12.975||32|9.244||32|16.311|0.324|0|15.724|0.188|0|12.68||32|9.37||32|16.409|0.44|0|15.616|0.211|0|12.462||32|8.763||32|15.776||32|15.493|0.225|0|12.24||32|9.302||32|15.835||32|15.332|0.229|0|12.676|0.515|0|8.146||32|15.968||32|15.177|0.231|0|12.245|0.402|0|7.858||32|15.94||32|15.0|0.226|1|11.884|0.331|1|7.608||32|16.295|0.345|0.072|1.533|22|0|55275.02271543|55276.94144233|55276.08997277|16.395|0.937|0.2|3.83800006|17|0|55275.02271543|55276.94144233|55276.06931685|12.184|1.302|0.278|3.00600004|14|0|55275.02271543|55276.94144233|55276.06630705|9.963|3.52|0.75|2.25999999|8|0|55275.02271543|55276.94144233|55276.06630705|-1|-37|8|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241004551|1|-0.0004484466933503|-0.0003024070374881|-0.999999853722763|121000000|
+J212353.26-895806.4|320.9719553|-89.9684607|0.9456|0.897|-0.2951|302.9598035|-27.1476199|270.0615453|-66.5408365|2019.068|429.373|3004089401241005223|3004m894_ab41-005223|3004m894_ab41|5223|17.484|0.172|6.3|0.893100023|16.499|0.246|4.4|0.826499999|13.147||0.0|1.13100004|9.335||0.5|0.919399977|0.9375|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|2|24|0|24|1|23|0|23|23.603|23.597|22.95|22.832|0.0|0.0|0.0|0.0|0||0||0||0||16.0869999|2.55509996|9.388|2.839|0.063|15.8570004|3.59179997|21.736|3.437|0.224|-1.92970002|43.6879997|1097.682|24.69|1.552|5.43400002|11.9090004|298.278|9.609|1.296|16.367|0.143|1|0.261|15.931|0.447|1|0.319|12.248||32|0.825|8.666||32|0.576|17.298|0.19|1|16.088||32|13.67||32|9.717||32|16.628|0.143|1|16.25|0.447|1|13.073||32|9.242||32|16.095|0.114|1|15.809|0.388|1|12.558||32|8.867||32|15.611|0.09|1|15.468|0.352|1|12.734|0.416|1|8.538||32|15.207|0.075|1|15.237|0.342|1|12.309|0.338|1|8.185||32|14.915|0.067|1|15.11|0.359|1|12.05|0.315|1|8.545|0.512|1|14.713|0.065|1|15.045|0.392|1|11.87|0.31|1|8.145|0.42|1|14.542|0.064|1|14.991|0.429|1|11.742|0.317|1|7.857|0.376|1|17.527|1.13|0.231|3.076|19|0|55275.28745078|55277.20605032|55276.21366396|16.406|1.018|0.208|3.57999992|19|0|55275.28745078|55277.20605032|55276.21366396|14.531|||4.59399986|10|0|55275.28745078|55277.20605032|55276.19640507|12.82|||2.55699992|13|0|55275.28745078|55277.20605032|55276.19640507|7|-17|62|0|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005223|1|0.0004276215824004|-0.0003466278309116|-0.999999848494453|131000000|
+J033820.51-895805.1|54.5854661|-89.9681065|0.3757|0.4039|0.0983|302.9080598|-27.1519576|270.0465116|-66.5866946|2056.016|435.152|600089401241004605|0600m894_ab41-004605|0600m894_ab41|4605|16.251|0.067|16.3|0.89139998|17.184|0.478|2.3|0.881200016|12.229|0.257|4.2|1.02900004|9.247||0.5|0.999499977|0.945100009|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACBU|7|0000|15|20|1|20|1|19|0|19|20.761|20.745|20.151|19.848|0.0|0.0|0.0|0.0|0||0||0||0||50.0690002|3.07990003|9.419|2.84|0.105|8.44169998|3.71679997|21.754|3.474|0.055|203.429993|48.2389984|1097.273|24.753|1.132|6.83500004|12.4379997|298.571|9.539|1.312|16.212|0.182|1|0.261|16.186||32|0.319|11.95||32|0.825|8.295||32|0.576|16.792|0.176|0|16.588||32|13.184||32|9.416||32|16.473|0.182|1|16.505||32|12.775||32|8.871||32|16.321|0.203|1|16.312||32|12.518||32|8.506||32|16.059|0.198|1|16.077||32|12.392||32|8.282||32|15.738|0.178|1|15.871||32|12.373||32|8.104||32|15.534|0.174|1|15.691||32|12.394||32|7.942||32|15.422|0.183|1|15.529||32|12.231||32|7.803||32|15.282|0.185|1|15.378||32|12.08||32|7.649||32|16.254|0.355|0.079|1.82|19|1|55275.28745078|55277.20605032|55276.20044417|17.767|3.54|0.792|3.36100006|10|1|55275.28745078|55277.20605032|55276.20044417|12.139|0.904|0.207|2.39499998|14|0|55275.28745078|55277.20605032|55276.17885604|10.522|3.538|0.812|2.30100012|11|0|55275.28745078|55277.20605032|55276.17885604|3|-39|38|0|1|1|||||||||||||||||||||||||||||0|||||||600089401241004605|1|0.0003225698316605|0.0004536560957184|-0.999999845072413|101000000|
+J030611.35-895804.7|46.5473048|-89.9679903|1.1298|1.1919|0.3522|302.9119619|-27.1547893|270.0553964|-66.5839363|2067.631|433.511|600089401241005390|0600m894_ab41-005390|0600m894_ab41|5390|17.53|0.186|5.8|1.00300002|16.925||0.8|0.930899978|13.103||-0.7|1.20099998|8.99||1.0|0.924799979|1.00999999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|0|20|0|20|0|19|0|19|20.624|20.625|19.945|19.805|0.0|0.0|0.0|0.0|0||0||0||0||15.4219999|2.64560008|9.408|2.869|0.27|3.00749993|3.85430002|21.794|3.484|0.037|-31.7549992|45.4799995|1097.067|24.621|0.461|13.7819996|13.1899996|298.789|9.907|1.261|16.823||32|0.261|19.917||32|0.319|12.234||32|0.825|8.661||32|0.576|17.222||32|16.693||32|13.426||32|9.734||32|17.084||32|20.236||32|13.059||32|9.237||32|17.192||32|16.245||32|12.781||32|8.764||32|17.039||32|16.01||32|12.545||32|8.451||32|16.713||32|15.807||32|12.342||32|8.247||32|16.249||32|15.626||32|12.161||32|8.023||32|15.856||32|15.463||32|11.997||32|7.801||32|16.191|0.474|1|15.312||32|11.845||32|7.629||32|17.537|0.987|0.221|3.573|16|0|55275.28745078|55277.20605032|55276.20044417|18.133|5.39|1.205|2.74000001|9|0|55275.28745078|55277.20605032|55276.20044417||||2.56200004|9|0|55275.28745078|55277.20605032|55276.17885604|9.852|2.437|0.559|3.12800002|13|0|55275.28745078|55277.20605032|55276.17885604|-15|43|53|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241005390|1|0.0003842311958779|0.0004055652808453|-0.999999843941583|101000000|
+J183631.95-895800.3|279.1331432|-89.966762|0.7572|0.8289|-0.1929|302.9691829|-27.1259913|270.0132458|-66.5278917|2079.652|433.096|3004089401241005148|3004m894_ab41-005148|3004m894_ab41|5148|17.219|0.14|7.8|0.821399987|16.674|0.268|4.0|0.951799989|12.774||0.9|1.23800004|9.575||-0.4|1.023|1.00300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|2|23|1|23|0|22|0|22|22.748|22.696|21.924|21.745|0.0|0.0|0.0|0.0|0||0||0||0||20.5240002|2.64129996|9.418|2.786|0.096|13.5059996|3.33780003|21.788|3.38|0.15|39.3709984|41.9049988|1097.277|24.537|0.899|-5.0085001|11.7200003|298.648|9.656|1.464|16.656|0.2|1|0.261|16.22|0.441|1|0.319|12.695||32|0.825|8.963||32|0.576|17.376|0.22|1|17.024|0.495|1|13.879||32|9.967||32|16.917|0.2|1|16.539|0.441|1|13.52||32|9.539||32|16.57|0.19|1|16.292|0.458|1|13.233||32|9.203||32|16.133|0.158|1|15.995|0.432|1|13.0||32|8.916||32|15.519|0.108|1|15.504|0.331|1|12.802||32|8.662||32|14.739|0.063|1|14.855|0.215|1|12.624||32|9.405||32|14.042|0.039|1|14.247|0.143|1|12.461||32|8.163||32|13.587|0.029|1|13.83|0.112|1|12.195||32|7.933||32|17.179|0.596|0.124|3.331|22|0|55275.28745078|55277.20605032|55276.18490037|16.635|1.824|0.38|2.35400009|16|0|55275.28745078|55277.20605032|55276.18490037|13.13|2.913|0.621|3.00200009|11|0|55275.28745078|55277.20605032|55276.16554954||||2.16100001|8|0|55275.28745078|55277.20605032|55276.16554954|65|-26|-26|2|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005148|1|0.0000920808288615|-0.0005727580775347|-0.999999831734639|131000000|
+J015004.80-895759.5|27.5200402|-89.9665497|1.0651|1.0549|0.3239|302.9224009|-27.1605173|270.0746242|-66.5761471|2007.529|429.699|89401241005633|0000m894_ab41-005633|0000m894_ab41|5633|17.408|0.179|6.1|0.918099999|17.339||-0.2|1.04400003|12.463||1.8|1.11500001|9.521||-1.7|0.951200008|1.00300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|21|1|21|0|20|0|20|20.753|20.703|19.948|20.037|0.0|0.0|0.0|0.0|0||0||0||0||17.2450008|2.83890009|9.355|2.886|0.132|-0.64605999|3.66030002|21.737|3.483|0.095|77.5169983|43.2140007|1097.043|24.238|1.273|-21.3530006|12.3210001|299.035|9.648|1.085|16.648|0.215|0|0.261|16.107||32|0.319|12.341||32|0.825|8.593||32|0.576|17.453|0.255|0|16.788||32|13.53||32|9.604||32|16.909|0.215|0|16.426||32|13.166||32|9.169||32|16.548|0.201|1|16.142||32|12.88||32|8.826||32|16.225|0.185|1|15.911||32|12.648||32|8.533||32|15.87|0.161|1|15.707||32|12.444||32|8.275||32|15.441|0.128|1|15.528||32|12.265||32|8.041||32|15.012|0.1|1|15.364||32|12.1||32|7.826||32|14.593|0.078|1|15.131||32|11.951||32|7.628||32|17.309|0.792|0.173|3.508|17|0|55275.28745078|55277.20605032|55276.23257667||||4.07200003|7|1|55275.28745078|55277.20605032|55276.23257667|13.257|3.292|0.736|3.81599998|12|0|55275.28745078|55277.20605032|55276.21367457||||2.68499994|4|0|55275.28745078|55277.20605032|55276.21367457|-32|0|65|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005633|1|0.0005177577105898|0.0002697578160245|-0.999999829578822|101000000|
+J233605.81-895757.2|354.0242327|-89.9659083|0.8804|0.7802|-0.0348|302.9442866|-27.160422|270.0852275|-66.5571365|2057.288|440.802|89401241005483|0000m894_ab41-005483|0000m894_ab41|5483|17.188|0.137|7.9|1.04299998|16.677||1.7|0.852699995|12.389||2.0|1.03499997|9.142||0.8|0.967999995|0.972199976|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|22|0|22|0|21|0|21|22.533|23.19|22.124|22.395|0.0|0.0|0.0|0.0|0||0||0||0||21.118|2.6723001|9.386|2.793|0.0|6.12949991|3.66840005|21.779|3.471|0.022|87.0230026|44.2680016|1097.545|24.525|0.0|10.1239996|12.4040003|298.663|9.641|0.712|17.018|0.23|0|0.261|16.502||32|0.319|12.715||32|0.825|8.68||32|0.576|17.582|0.219|0|16.945||32|13.902||32|9.693||32|17.279|0.23|0|16.821||32|13.54||32|9.256||32|17.059|0.243|0|16.537||32|13.258||32|8.912||32|16.776|0.232|1|16.301||32|13.023||32|8.618||32|16.391|0.197|1|16.098||32|12.821||32|8.356||32|15.87|0.144|1|15.918||32|12.642||32|8.12||32|15.321|0.101|1|15.752||32|12.477||32|7.904||32|14.821|0.074|1|15.598||32|12.324||32|7.704||32|17.06|0.633|0.135|3.077|19|0|55275.28745078|55277.20605032|55276.22569932|17.635|3.471|0.74|2.98099995|12|0|55275.28745078|55277.20605032|55276.22569932|13.142|3.295|0.719|4.46199989|10|0|55275.28745078|55277.20605032|55276.20736984|9.574|2.317|0.506|3.32999992|12|0|55275.28745078|55277.20605032|55276.20736984|12|20|-16|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005483|1|0.00059177892742|-0.0000619454312031|-0.999999822980217|131000000|
+J214947.60-895755.7|327.4483538|-89.9654783|0.4114|0.3786|-0.1115|302.9595461|-27.1523884|270.0730983|-66.5421171|2006.986|432.574|3004089401241004746|3004m894_ab41-004746|3004m894_ab41|4746|16.351|0.067|16.2|0.975300014|16.852|0.329|3.3|0.858200014|12.776|0.359|3.0|1.13|9.581||-0.4|0.834299982|0.947700024|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|14|24|0|24|1|23|0|23|23.618|23.686|22.934|22.749|0.0|0.0|0.0|0.0|0||0||0||0||45.6549988|2.81920004|9.35|2.787|0.417|11.4630003|3.47119999|21.747|3.382|0.172|122.949997|40.6100006|1096.329|24.033|1.835|-4.14300013|11.6549997|298.645|9.554|1.308|15.948|0.104|1|0.261|15.802||32|0.319|12.253||32|0.825|8.812||32|0.576|16.693|0.115|1|16.435||32|13.587||32|9.929||32|16.209|0.104|1|16.121||32|13.078||32|9.388||32|15.902|0.101|1|15.938||32|12.694||32|8.93||32|15.599|0.095|1|15.69||32|13.096|0.529|1|8.553||32|15.274|0.085|1|15.334||32|12.737|0.456|1|8.225||32|14.938|0.073|1|14.981||32|12.377|0.386|1|7.917||32|14.613|0.063|1|15.356|0.453|1|12.029|0.325|1|8.313|0.469|1|14.352|0.057|1|15.106|0.414|1|11.785|0.3|1|7.98|0.4|1|16.41|0.312|0.064|1.878|23|1|55275.28745078|55277.20605032|55276.21366396|16.595|0.945|0.193|3.03200006|17|0|55275.28745078|55277.20605032|55276.21366396|12.54|2.483|0.518|3.66599989|12|1|55275.28745078|55277.20605032|55276.19640507||||3.56699991|9|0|55275.28745078|55277.20605032|55276.19640507|0|13|15|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004746|1|0.0005078658813067|-0.0003241902050506|-0.999999818486462|131000000|
+J102517.04-895754.4|156.3210354|-89.9651387|0.2607|0.2432|-0.0516|302.9086013|-27.1001449|269.919693|-66.574689|2085.059|435.43|1802089401241004260|1802m894_ab41-004260|1802m894_ab41|4260|15.531|0.047|23.3|0.875500023|15.921|0.158|6.9|0.909699976|12.432|0.299|3.6|1.11300004|9.221||0.5|1.12800002|1.00199997|1|0|0.0|0.0|0.0|0.0|0000|D000|0|nnnn|ABBU|7|0000|18|20|1|20|0|19|0|19|20.482|19.778|19.336|19.635|0.0|0.0|0.0|0.0|129|D|0||0||0||97.1610031|4.16779995|9.401|2.834|0.347|27.0240002|3.92059994|21.815|3.492|0.511|168.669998|46.4059982|1096.396|24.224|0.989|6.54510021|12.9720001|298.315|9.586|0.373|15.67|0.132|1|0.261|16.079|0.529|1|0.319|12.522|0.5|1|0.825|9.452||32|0.576|16.204|0.121|1|16.685|0.491|1|13.23||32|9.918||32|15.931|0.132|1|16.398|0.529|1|13.347|0.5|1|10.028||32|15.893|0.165|1|15.54||32|12.794|0.391|1|8.968||32|15.878|0.201|1|15.489||32|12.376|0.329|1|8.481||32|15.765|0.218|1|15.391||32|12.06|0.295|1|8.115||32|15.445|0.191|1|15.16||32|11.821|0.278|1|7.819||32|14.992|0.146|1|14.826||32|11.597|0.263|1|7.57||32|14.571|0.114|1|14.488||32|11.398|0.252|1|7.383||32|15.521|0.169|0.038|0.757|19|0|55275.02271543|55276.94144233|55276.09127742|15.993|0.754|0.169|3.0250001|18|0|55275.02271543|55276.94144233|55276.09127742|12.288|1.345|0.308|2.08899999|12|0|55275.02271543|55276.94144233|55276.06394368|10.443|6.311|1.448|4.84200001|8|0|55275.02271543|55276.94144233|55276.06394368|24|-10|22|0|0|0||||||||||||||||||||||||||748811997|0.46|20.3|1|15.936|0.085|15.755|0.169|15.408|0.221|1802089401241004260|1|-0.0005572188085398|0.0002443579991828|-0.999999814898167|111000000|
+J151709.37-895751.7|229.2890445|-89.9643812|1.212|1.2549|0.4507|302.9556762|-27.099496|269.9416586|-66.5336987|2065.914|443.547|2403089401241005544|2403m894_ab41-005544|2403m894_ab41|5544|18.113|0.298|3.6|0.813499987|17.456||-0.9|0.881399989|12.14|0.206|5.3|1.09899998|9.077||1.1|1.06099999|0.958999991|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|0|23|0|23|2|22|0|22|23.041|23.541|22.277|22.441|0.0|0.0|0.0|0.0|0||0||0||0||9.01229954|2.46959996|9.4|2.736|0.29|-2.93149996|3.28579998|21.793|3.368|0.082|220.889999|41.8470001|1096.609|24.227|3.606|13.4370003|11.8240004|298.11|9.522|1.487|16.648|0.212|1|0.261|16.795|0.535|1|0.319|12.261|0.33|1|0.825|8.83||32|0.576|17.703|0.312|1|17.027||32|13.736|0.427|1|9.872||32|16.909|0.212|1|17.114|0.535|1|13.086|0.33|1|9.406||32|16.015|0.121|1|16.01|0.251|1|12.707|0.3|1|9.007||32|15.115|0.066|1|15.034|0.127|1|12.406|0.282|1|8.614||32|14.397|0.041|1|14.306|0.079|1|12.106|0.256|1|8.23||32|13.914|0.031|1|13.821|0.059|1|11.816|0.229|1|7.886||32|13.634|0.028|1|13.527|0.053|1|11.583|0.214|1|7.608||32|13.494|0.029|1|13.374|0.053|1|11.416|0.21|1|7.396||32|18.163|1.393|0.291|3.285|15|0|55275.02271543|55276.94144233|55276.08997277||||2.95000005|7|0|55275.02271543|55276.94144233|55276.08997277|12.111|1.394|0.297|2.99499989|15|1|55275.02271543|55276.94144233|55276.06630705|10.61|5.53|1.179|3.4460001|13|0|55275.02271543|55276.94144233|55276.06630705|20|-28|34|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005544|1|-0.0004054768595802|-0.0004712280530319|-0.999999806766301|121000000|
+J001312.93-895750.9|3.3038942|-89.9641543|0.2438|0.2297|0.0451|302.9386043|-27.1635046|270.0899727|-66.562749|2042.586|445.723|89401241004575|0000m894_ab41-004575|0000m894_ab41|4575|15.541|0.044|24.8|0.874100029|15.505|0.114|9.5|0.928600013|13.086||-0.3|0.958199978|9.45||-0.3|0.965799987|0.928300023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|ABUU|3|0000|21|21|6|21|1|20|0|20|21.872|22.789|22.253|22.034|0.0|0.0|0.0|0.0|0||0||0||0||96.2720032|3.88599992|9.366|2.844|0.174|39.6230011|4.15740013|21.795|3.569|0.138|-14.8210001|46.2010002|1098.598|25.045|0.976|-3.83920002|13.1490002|298.642|9.815|1.661|15.244|0.049|0|0.261|15.213|0.187|0|0.319|12.013||32|0.825|8.611||32|0.576|15.974|0.055|0|16.04|0.215|0|13.195||32|9.624||32|15.505|0.049|0|15.532|0.187|0|12.838||32|9.187||32|15.212|0.048|0|15.286|0.193|0|12.552||32|8.842||32|14.919|0.045|1|15.076|0.197|1|12.321||32|8.547||32|14.501|0.037|1|14.688|0.167|1|12.116||32|8.286||32|13.807|0.024|1|13.943|0.099|1|11.936||32|8.051||32|12.894|0.013|1|13.027|0.05|1|11.771||32|7.835||32|12.056|0.008|1|12.232|0.028|1|11.619||32|7.636||32|15.537|0.119|0.026|0.434|20|0|55275.28745078|55277.20605032|55276.23257667|15.48|0.573|0.125|3.09200001|20|1|55275.28745078|55277.20605032|55276.23257667|14.638|||2.86100006|6|0|55275.28745078|55277.20605032|55276.21367457||||1.54499996|8|0|55275.28745078|55277.20605032|55276.21367457|-40|-24|24|1|0|0||||||||||||||||||||||||||1229087102|0.163|74.3|1|16.601|0.135|16.005|0.185|15.512|0.212|89401241004575|1|0.0006245857464337|0.0000360559798132|-0.999999804296287|101000000|
+J022250.81-895750.1|35.7117112|-89.9639415|0.2937|0.2968|0.0839|302.9161769|-27.1613837|270.0736669|-66.5817392|2086.974|438.023|600089401241004441|0600m894_ab41-004441|0600m894_ab41|4441|15.95|0.054|20.2|0.828400016|15.761|0.128|8.5|0.962499976|12.966||0.3|1.00100005|9.532||-0.8|0.914499998|0.922999978|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|ABUU|3|0000|19|21|4|21|1|20|0|20|20.815|20.568|19.953|19.897|0.0|0.0|0.0|0.0|0||0||0||0||66.0429993|3.26789999|9.364|2.802|0.154|31.3129997|3.704|21.755|3.405|0.111|14.9639997|44.0950012|1098.015|24.196|5.112|-10.3039999|12.1999998|298.613|9.711|1.924|15.778|0.086|1|0.261|15.873|0.444|1|0.319|12.284||32|0.825|8.455||32|0.576|16.445|0.092|1|16.534|0.445|1|13.448||32|9.47||32|16.039|0.086|1|16.192|0.444|1|13.109||32|9.031||32|15.849|0.093|1|16.106|0.531|1|12.828||32|8.689||32|15.722|0.103|1|15.254||32|12.593||32|8.399||32|15.614|0.112|1|15.215||32|12.389||32|8.14||32|15.51|0.12|1|15.23||32|12.214||32|7.904||32|15.391|0.126|1|15.235||32|12.048||32|7.691||32|15.269|0.129|1|15.204||32|11.901||32|7.491||32|15.948|0.215|0.047|0.859|20|0|55275.28745078|55277.20605032|55276.23257667|15.794|0.848|0.185|2.86400008|17|1|55275.28745078|55277.20605032|55276.23257667|14.157|7.407|1.656|4.15999985|6|0|55275.28745078|55277.20605032|55276.21367457||||2.98900008|8|0|55275.28745078|55277.20605032|55276.21367457|-17|24|-71|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004441|1|0.0005110008153063|0.0003673497383167|-0.999999801966149|101000000|
+J041414.59-895748.4|63.5608119|-89.963472|0.3149|0.3404|0.0701|302.9001481|-27.1512883|270.0409411|-66.593411|2042.217|447.496|600089401241004487|0600m894_ab41-004487|0600m894_ab41|4487|15.986|0.058|18.8|1.06099999|15.994|0.156|7.0|0.948599994|13.054||0.1|1.05499995|9.409||0.0|0.856400013|0.978200018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|18|20|2|20|1|19|0|19|20.829|21.505|20.153|20.654|0.0|0.0|0.0|0.0|0||0||0||0||63.9090004|3.40770006|9.426|2.805|0.033|25.2469997|3.6257|21.719|3.363|0.022|3.75519991|45.6749992|1098.404|24.315|0.0|0.51880002|13.3959999|298.673|9.674|0.169|15.866|0.147|1|0.261|16.144|0.418|1|0.319|12.754||32|0.825|8.815||32|0.576|16.547|0.156|1|16.764|0.396|1|13.939||32|10.105||32|16.127|0.147|1|16.463|0.418|1|13.579||32|9.391||32|15.914|0.158|1|16.43|0.53|1|13.29||32|8.941||32|15.834|0.182|1|15.579||32|13.059||32|8.631||32|15.813|0.214|1|15.496||32|12.859||32|8.366||32|15.729|0.234|1|15.431||32|12.679||32|8.084||32|15.566|0.234|1|15.315||32|12.513||32|7.816||32|15.357|0.222|1|15.134||32|12.364||32|7.613||32|16.026|0.242|0.054|0.963|19|1|55275.28745078|55277.20605032|55276.20044417|16.02|0.891|0.199|4.37400007|17|1|55275.28745078|55277.20605032|55276.20044417||||2.75600004|8|0|55275.28745078|55277.20605032|55276.17885604|12.819|||4.51100016|10|0|55275.28745078|55277.20605032|55276.17885604|2|1|-46|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004487|1|0.0002838601304602|0.000570851836715|-0.999999796775783|101000000|
+J023948.44-895747.9|39.9518711|-89.9633271|0.5318|0.5464|0.1591|302.9131443|-27.1608041|270.070742|-66.5842422|2081.063|442.179|600089401241004759|0600m894_ab41-004759|0600m894_ab41|4759|16.748|0.094|11.6|0.929499984|16.573|0.267|4.1|1.03299999|12.409|0.27|4.0|0.958800018|9.162||0.6|0.943700016|0.963400006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|7|21|2|21|0|20|0|20|20.757|20.543|19.955|19.888|0.0|0.0|0.0|0.0|0||0||0||0||31.6900005|2.73559999|9.413|2.809|0.0|14.8199997|3.63879991|21.798|3.409|0.0|172.339996|42.9049988|1097.094|23.746|0.395|8.35280037|12.9619999|298.578|9.793|0.599|16.145|0.156|1|0.261|16.002|0.504|1|0.319|12.235||32|0.825|8.516||32|0.576|16.952|0.186|1|16.063||32|13.328||32|9.525||32|16.406|0.156|1|16.321|0.504|1|13.06||32|9.092||32|16.068|0.148|1|16.031|0.498|1|12.784||32|8.75||32|15.902|0.156|1|15.215||32|12.556||32|8.458||32|15.89|0.187|1|15.26||32|12.35||32|8.198||32|15.914|0.226|1|15.404||32|12.171||32|7.965||32|15.859|0.25|1|15.35||32|12.009||32|7.75||32|15.706|0.25|1|15.198||32|11.858||32|7.552||32|16.817|0.477|0.104|2.845|20|1|55275.28745078|55277.20605032|55276.23257667|17.02|2.402|0.524|2.8829999|12|1|55275.28745078|55277.20605032|55276.23257667|12.307|1.137|0.254|1.49699998|15|0|55275.28745078|55277.20605032|55276.21367457|10.216|5.336|1.193|3.07999992|10|0|55275.28745078|55277.20605032|55276.21367457|16|25|-14|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004759|1|0.000490662052397|0.0004110124853318|-0.999999795159723|101000000|
+J170640.95-895743.9|256.6706326|-89.9622148|0.2406|0.2614|0.0244|302.9700079|-27.1114755|269.9781324|-66.5239401|2020.223|446.979|2403089401241004359|2403m894_ab41-004359|2403m894_ab41|4359|15.753|0.047|23.0|1.29999995|15.727|0.113|9.6|0.95450002|12.498|0.292|3.7|0.993600011|9.27||0.6|1.046|1.07099998|1|0|0.0|0.0|0.0|0.001|0000|0000|0|11nn|ABBU|7|0000|23|24|4|24|1|22|0|23|23.72|23.686|22.888|22.663|0.0|0.0|0.0|0.0|0||0||0||0||79.1949997|3.44120002|9.376|2.683|0.028|32.2989998|3.3657999|21.751|3.261|0.146|158.789993|42.6660004|1098.195|24.911|1.986|7.57040024|11.7340002|298.385|9.602|1.097|15.606|0.107|1|0.261|15.583|0.209|1|0.319|11.837||32|0.825|8.653||32|0.576|16.328|0.12|1|16.381|0.238|1|13.132||32|11.222||32|15.867|0.107|1|15.902|0.209|1|12.662||32|9.229||32|15.645|0.113|1|15.688|0.223|1|12.323||32|8.836||32|15.563|0.13|1|15.577|0.249|1|12.063||32|8.541||32|15.541|0.153|1|15.485|0.275|1|11.832||32|8.295||32|15.535|0.18|1|15.369|0.293|1|11.611||32|8.268||32|15.554|0.213|1|15.191|0.289|1|11.406||32|7.958||32|15.56|0.246|1|14.974|0.272|1|11.91|0.503|1|7.758||32|15.752|0.223|0.045|0.971|23|0|55275.02271543|55277.20605032|55276.136476|15.729|0.581|0.119|3.25099993|22|0|55275.02271543|55277.20605032|55276.136476|12.294|1.242|0.265|2.51399994|14|0|55275.28745078|55277.20605032|55276.16554954|10.531|7.624|1.59|3.68600011|12|0|55275.02271543|55277.20605032|55276.1158611|35|52|-54|1|1|1|||||||||||||||||||||||||||||0|||||||2403089401241004359|1|-0.0001520412279704|-0.0006417103236632|-0.999999782545639|121000000|
+J180858.48-895743.8|272.2437059|-89.9621893|0.1301|0.1361|-0.0205|302.9736709|-27.1211847|270.0037158|-66.5229271|2094.808|439.263|3004089401241004127|3004m894_ab41-004127|3004m894_ab41|4127|14.452|0.029|37.1|0.896700025|14.519|0.049|22.0|1.14499998|12.463||1.8|1.08599997|8.826||1.9|1.05200005|1.04100001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|23|23|19|23|0|22|1|22|22.832|22.986|21.928|21.966|0.0|0.0|0.0|0.0|0||0||0||0||262.480011|7.08349991|9.385|2.776|0.0|98.2220001|4.45730019|21.766|3.326|0.0|76.6839981|43.6850014|1098.52|25.145|2.803|22.5830002|12.0649996|298.163|9.483|1.325|14.437|0.031|1|0.261|14.552|0.081|1|0.319|11.891||32|0.825|8.688||32|0.576|15.056|0.032|1|15.283|0.085|1|13.276||32|9.642||32|14.698|0.031|1|14.871|0.081|1|12.716||32|9.264||32|14.563|0.035|1|14.704|0.089|1|13.077|0.52|1|8.965||32|14.485|0.04|1|14.6|0.1|1|12.775|0.488|1|8.743||32|14.42|0.046|1|14.486|0.109|1|12.515|0.462|1|8.484||32|14.356|0.051|1|14.347|0.113|1|12.264|0.433|1|8.249||32|14.275|0.055|1|14.19|0.114|1|12.08|0.425|1|8.034||32|14.168|0.057|1|14.032|0.113|1|11.939|0.429|1|7.835||32|14.459|0.05|0.01|0.234|22|0|55275.28745078|55277.20605032|55276.18490037|14.493|0.198|0.041|1.22399998|22|0|55275.28745078|55277.20605032|55276.18490037|13.052|2.399|0.512|3.09699988|13|0|55275.28745078|55277.20605032|55276.16554954|9.089|2.15|0.458|4.80700016|14|0|55275.28745078|55277.20605032|55276.16554954|13|-6|-25|0|0|0||||||||||||||||||||||||||970558707|0.23|-43.6|1|14.949|0.043|14.529|0.059|14.404|0.094|3004089401241004127|1|0.0000258359766277|-0.0006594160343618|-0.999999782251474|131000000|
+J040145.03-895742.4|60.4376342|-89.9617941|0.3566|0.3882|0.0974|302.900219|-27.1539259|270.047451|-66.5939339|2047.4|452.062|600089401241004524|0600m894_ab41-004524|0600m894_ab41|4524|16.131|0.064|17.0|0.888499975|16.726|0.313|3.5|1.04299998|12.592||1.2|1.07000005|9.472||-0.1|0.777400017|0.942700028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|17|20|1|20|0|19|0|19|21.248|21.643|20.747|21.097|0.0|0.0|0.0|0.0|0||0||0||0||55.9420013|3.29209995|9.425|2.808|0.114|12.8719997|3.71409988|21.816|3.448|0.0|56.0|44.8269997|1097.328|23.949|5.02|-0.712230027|12.8839998|298.623|9.612|1.233|15.984|0.18|1|0.261|16.236|0.486|1|0.319|12.76||32|0.825|8.811||32|0.576|16.681|0.192|1|16.303||32|13.954||32|9.822||32|16.245|0.18|1|16.555|0.486|1|13.585||32|9.387||32|15.998|0.186|1|16.276|0.488|1|13.303||32|9.041||32|15.894|0.209|1|15.432||32|13.071||32|8.744||32|15.889|0.249|1|15.367||32|12.875||32|8.482||32|15.817|0.275|1|15.218||32|12.697||32|8.247||32|15.555|0.251|1|14.932||32|12.535||32|8.03||32|15.224|0.213|1|15.279|0.458|1|12.384||32|7.831||32|16.148|0.221|0.049|0.753|19|0|55275.28745078|55277.20605032|55276.20044417|16.689|1.766|0.395|3.92199993|12|0|55275.28745078|55277.20605032|55276.20044417|13.537|1.925|0.442|3.97199988|10|0|55275.28745078|55277.20605032|55276.17885604||||2.477|6|0|55275.28745078|55277.20605032|55276.17885604|11|-4|-70|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004524|1|0.0003289887060495|0.0005800115855522|-0.999999777676471|101000000|
+J214349.43-895742.1|325.9559663|-89.9617134|0.5485|0.5128|-0.1598|302.9633362|-27.1543114|270.0796858|-66.5392547|2004.854|442.511|3004089401241004820|3004m894_ab41-004820|3004m894_ab41|4820|16.725|0.093|11.7|0.859899998|16.357|0.213|5.1|0.845700026|12.594|0.333|3.3|1.04900002|9.622||-0.3|0.860099971|0.900600016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|7|24|1|24|2|23|0|23|23.8|23.728|22.937|22.89|0.0|0.0|0.0|0.0|0||0||0||0||32.3530006|2.77130008|9.369|2.84|0.187|18.0860004|3.55380011|21.774|3.401|0.137|145.389999|44.5279999|1098.077|24.855|2.347|-3.01600003|11.2250004|298.835|9.622|0.504|15.82|0.111|1|0.261|15.754|0.33|1|0.319|12.29|0.457|1|0.825|8.911|0.492|1|0.576|16.774|0.15|1|16.646|0.402|1|12.974||32|9.397||32|16.081|0.111|1|16.073|0.33|1|13.115|0.457|1|9.487|0.492|1|15.543|0.088|1|15.749|0.318|1|12.699|0.405|1|9.001|0.419|1|15.13|0.074|1|15.536|0.324|1|12.425|0.39|1|8.695|0.405|1|14.838|0.068|1|15.422|0.351|1|12.284|0.412|1|8.571|0.446|1|14.629|0.066|1|15.394|0.403|1|12.235|0.465|1|8.498|0.505|1|14.472|0.067|1|15.42|0.479|1|12.226|0.535|1|8.331|0.516|1|14.35|0.069|1|14.678||32|11.435||32|8.105|0.493|1|16.711|0.423|0.086|1.593|23|0|55275.28745078|55277.20605032|55276.21366396|16.286|1.003|0.205|3.30800009|19|0|55275.28745078|55277.20605032|55276.21366396|12.544|2.012|0.42|3.93499994|14|0|55275.28745078|55277.20605032|55276.19640507||||1.47800004|6|0|55275.28745078|55277.20605032|55276.19640507|-24|-54|-31|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004820|1|0.0005536977040094|-0.0003740932760391|-0.999999776736512|131000000|
+J082226.69-895741.0|125.6112293|-89.9613955|0.313|0.3008|-0.0859|302.8919202|-27.1132209|269.9434178|-66.5920836|2038.448|452.65|1201089401241004622|1201m894_ab41-004622|1201m894_ab41|4622|15.938|0.054|20.1|1.01499999|16.46|0.237|4.6|0.977100015|12.598|0.366|3.0|0.976800025|9.476||-0.2|0.911300004|0.967599988|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|ABCU|7|0000|18|20|0|20|0|19|0|19|20.436|20.609|19.714|19.691|0.0|0.0|0.0|0.0|0||0||0||0||66.8290024|3.3211|9.46|2.724|0.0|16.4500008|3.58890009|21.818|3.337|0.0|144.75|48.8429985|1098.976|24.736|0.971|-2.42070007|12.8450003|299.178|9.94|0.288|15.831|0.08|0|0.261|16.28|0.458|0|0.319|12.139||32|0.825|8.294||32|0.576|16.449|0.081|0|16.959|0.458|0|13.238||32|9.307||32|16.092|0.08|0|16.599|0.458|0|12.964||32|8.87||32|15.965|0.092|1|15.776||32|12.775||32|8.527||32|15.899|0.108|1|15.702||32|12.54||32|8.234||32|15.838|0.123|1|15.679||32|12.338||32|7.974||32|15.77|0.137|1|15.676||32|12.158||32|7.739||32|15.7|0.149|1|16.339||32|11.995||32|7.524||32|15.629|0.161|1|15.565||32|11.843||32|7.325||32|15.967|0.329|0.074|1.298|19|2|55275.02271543|55276.94144233|55276.09127742|16.513|1.458|0.326|4.17299986|15|0|55275.02271543|55276.94144233|55276.09127742|12.371|1.58|0.363|4.79899979|12|0|55275.02271543|55276.94144233|55276.06394368|11.274|8.355|1.917|2.81699991|8|0|55275.02271543|55276.94144233|55276.06394368|7|20|26|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004622|1|-0.0003923271665318|0.0005477699425475|-0.999999773013716|111000000|
+J200448.32-895740.9|301.201336|-89.9613691|0.5531|0.5527|-0.1795|302.9731214|-27.140307|270.0502443|-66.5276578|2046.695|453.165|3004089401241004964|3004m894_ab41-004964|3004m894_ab41|4964|16.761|0.092|11.8|0.904299974|16.953|0.348|3.1|0.888499975|13.192||-0.2|1.12699997|9.526||-0.5|0.899999976|0.951499999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|6|23|1|23|1|22|0|22|23.72|23.663|22.881|22.618|0.0|0.0|0.0|0.0|0||0||0||0||31.3099995|2.66100001|9.376|2.717|0.0|10.4399996|3.34319997|21.727|3.299|0.202|-8.25440025|41.8800011|1096.278|24.18|4.295|-5.86759996|12.2650003|298.771|9.731|1.155|16.353|0.141|1|0.261|15.807||32|0.319|12.744||32|0.825|9.012||32|0.576|17.095|0.158|0|16.547||32|13.933||32|10.006||32|16.614|0.141|1|16.126||32|13.569||32|9.588||32|16.27|0.134|1|15.86||32|13.287||32|9.137||32|15.887|0.117|1|15.597||32|13.051||32|8.727||32|15.423|0.092|1|15.981|0.479|1|12.853||32|8.498||32|15.011|0.075|1|15.604|0.4|1|12.672||32|8.342||32|14.76|0.069|1|15.405|0.388|1|12.507||32|8.075||32|14.651|0.072|1|15.484|0.479|1|12.355||32|7.764||32|16.751|0.502|0.105|2.586|22|1|55275.28745078|55277.20605032|55276.18490037|16.921|1.775|0.37|3.4460001|15|0|55275.28745078|55277.20605032|55276.18490037||||3.77900004|9|1|55275.28745078|55277.20605032|55276.16554954|11.802|||3.48200011|10|0|55275.28745078|55277.20605032|55276.16554954|29|5|-27|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004964|1|0.0003492859058347|-0.0005767092319594|-0.999999772702883|131000000|
+J153331.62-895739.5|233.3817838|-89.9609855|0.1369|0.2067|-0.0042|302.9603914|-27.0984966|269.9415702|-66.5293839|2060.417|453.416|2403089401241004006|2403m894_ab41-004006|2403m894_ab41|4006|14.224|0.043|25.3|0.876399994|14.218|0.054|20.3|0.961199999|12.196||1.9|1.00300002|9.06||-0.5|1.05200005|0.971000016|2|1|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|AAUU|3|0000|23|23|19|23|0|22|0|22|23.012|23.424|22.241|22.426|0.0|0.0|0.0|0.0|0||0||0||0||323.880005|12.8190002|9.391|2.755|0.175|129.649994|6.39389992|21.809|3.354|0.0|101.889999|53.9329987|1097.121|24.391|1.439|-8.67469978|18.8339996|298.285|9.704|0.611|13.705|0.021|1|0.261|13.712|0.034|1|0.319|12.178||32|0.825|8.813||32|0.576|14.422|0.023|1|14.535|0.039|1|13.435||32|9.766||32|13.966|0.021|1|14.031|0.034|1|13.003||32|9.389||32|13.791|0.023|1|13.816|0.036|1|12.649||32|9.036||32|13.724|0.026|1|13.718|0.04|1|12.326||32|8.699||32|13.692|0.031|1|13.661|0.046|1|11.994||32|8.35||32|13.669|0.035|1|13.619|0.052|1|12.351|0.464|1|8.001||32|13.652|0.04|1|13.588|0.058|1|12.037|0.404|1|7.618||32|13.636|0.045|1|13.56|0.065|1|11.816|0.38|1|8.047|0.53|1|14.224|0.042|0.009|0.28|22|0|55275.02271543|55276.94144233|55276.08997277|14.204|0.212|0.044|0.720000029|22|0|55275.02271543|55276.94144233|55276.08997277|12.953|1.823|0.389|5.16900015|14|0|55275.02271543|55276.94144233|55276.06630705||||2.41799998|9|0|55275.02271543|55276.94144233|55276.06630705|-29|31|-7|1|1|0||||||||||||||||||||||||||858248122|0.227|133.6|1|14.846|0.054|14.395|0.05|14.363|0.084|2403089401241004006|1|-0.0004061617224814|-0.0005465341207927|-0.999999768166528|121000000|
+J171906.02-895739.2|259.7751127|-89.9609019|0.2646|0.2871|0.032|302.9723239|-27.1128208|269.982579|-66.5222307|2013.979|448.578|2403089401241004395|2403m894_ab41-004395|2403m894_ab41|4395|15.858|0.051|21.5|1.00999999|15.887|0.141|7.7|0.897599995|12.77|0.376|2.9|1.00800002|9.119||0.9|1.06400001|0.991400003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABCU|7|0000|21|23|3|23|0|22|0|22|23.641|23.68|22.914|22.608|0.0|0.0|0.0|0.0|0||0||0||0||71.9290009|3.35319996|9.383|2.693|0.07|27.8780003|3.62479997|21.725|3.303|0.293|123.639999|42.7779999|1096.333|23.989|2.769|11.46|12.1029997|298.587|9.7|1.438|15.588|0.111|1|0.261|15.537|0.238|1|0.319|12.438|0.512|1|0.825|8.319||32|0.576|16.345|0.124|1|16.401|0.278|1|13.143||32|9.385||32|15.849|0.111|1|15.856|0.238|1|13.263|0.512|1|8.895||32|15.536|0.108|1|15.531|0.229|1|12.624|0.369|1|8.559||32|15.362|0.114|1|15.311|0.231|1|12.121|0.288|1|8.304||32|15.262|0.125|1|15.116|0.232|1|11.726|0.24|1|8.098||32|15.169|0.135|1|14.922|0.229|1|11.384|0.207|1|7.939||32|15.073|0.143|1|14.76|0.229|1|11.1|0.185|1|8.735||32|14.969|0.15|1|14.636|0.236|1|10.894|0.177|1|7.625||32|15.863|0.174|0.036|0.725|22|0|55275.28745078|55277.20605032|55276.18490037|15.839|0.755|0.157|3.74399996|20|0|55275.28745078|55277.20605032|55276.18490037|12.485|1.602|0.342|4.57999992|12|0|55275.28745078|55277.20605032|55276.16554954|9.854|2.611|0.557|2.64599991|13|0|55275.28745078|55277.20605032|55276.16554954|36|1|-20|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004395|1|-0.0001211327435542|-0.0006715536722715|-0.999999767171235|121000000|
+J215631.48-895735.1|329.1311688|-89.9597543|0.2958|0.2781|-0.0722|302.9631824|-27.1572355|270.0867721|-66.5400358|1997.448|444.483|3004089401241004521|3004m894_ab41-004521|3004m894_ab41|4521|15.889|0.053|20.4|0.875400007|15.913|0.147|7.4|0.873099983|12.553|0.305|3.6|1.01999998|9.187|0.364|3.0|0.900600016|0.914499998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBC|15|0000|21|24|1|24|1|23|1|23|23.762|24.133|23.126|23.171|0.0|0.0|0.0|0.0|0||0||0||0||69.8909988|3.42459989|9.362|2.849|0.1|27.2189999|3.6954999|21.771|3.418|0.454|150.990005|42.4620018|1096.869|24.288|1.258|33.526001|11.2510004|298.645|9.603|0.395|15.489|0.075|1|0.261|15.682|0.333|1|0.319|11.87||32|0.825|8.409||32|0.576|16.274|0.087|1|16.505|0.383|1|13.196||32|9.422||32|15.75|0.075|1|16.001|0.333|1|12.695||32|8.985||32|15.401|0.069|1|15.738|0.335|1|12.333||32|8.71||32|15.136|0.067|1|15.606|0.369|1|12.809|0.535|1|8.56||32|14.909|0.066|1|15.554|0.423|1|12.618|0.54|1|8.474||32|14.658|0.062|1|15.513|0.482|1|11.713||32|8.38||32|14.394|0.057|1|15.461|0.534|1|11.576||32|8.164||32|14.189|0.054|1|14.636||32|11.452||32|7.965||32|15.884|0.168|0.034|0.522|23|0|55275.28745078|55277.20605032|55276.21366396|15.901|0.583|0.119|2.046|22|0|55275.28745078|55277.20605032|55276.21366396|12.61|1.615|0.337|4.64599991|16|0|55275.28745078|55277.20605032|55276.19640507|9.533|1.761|0.367|4.24700022|16|0|55275.28745078|55277.20605032|55276.19640507|-27|-34|15|1|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004521|1|0.000602918417903|-0.0003603939063294|-0.999999753302776|131000000|
+J153248.27-895734.4|233.2011414|-89.9595826|0.1601|0.2267|-0.008|302.9613061|-27.0973473|269.9392152|-66.5283332|2061.195|457.021|2403089401241004007|2403m894_ab41-004007|2403m894_ab41|4007|14.497|0.051|21.2|0.876399994|14.542|0.069|15.8|0.961199999|12.433||1.1|1.00300002|8.372||1.7|1.05200005|0.971000016|2|1|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|AAUU|3|0000|23|23|13|23|0|22|0|22|22.927|23.205|22.092|22.342|0.0|0.0|0.0|0.0|0||0||0||0||251.880005|11.9029999|9.391|2.755|0.273|96.1999969|6.07019997|21.809|3.354|0.221|60.6080017|53.9700012|1097.121|24.391|2.941|33.0449982|18.9599991|298.285|9.704|1.246|13.747|0.023|1|0.261|13.763|0.036|1|0.319|14.358||32|0.825|8.536||32|0.576|14.5|0.026|1|14.62|0.044|1|13.383||32|9.506||32|14.008|0.023|1|14.082|0.036|1|15.183||32|9.112||32|13.804|0.024|1|13.842|0.037|1|12.845||32|8.81||32|13.726|0.027|1|13.735|0.041|1|12.614||32|8.477||32|13.694|0.032|1|13.676|0.047|1|12.352||32|8.154||32|13.671|0.036|1|13.627|0.053|1|12.003||32|7.832||32|13.649|0.041|1|13.58|0.059|1|11.716||32|8.2|0.49|1|13.624|0.046|1|13.539|0.065|1|11.494||32|7.872|0.429|1|14.515|0.067|0.014|0.344|22|0|55275.02271543|55276.94144233|55276.08997277|14.557|0.33|0.069|1.55599999|22|0|55275.02271543|55276.94144233|55276.08997277|13.126|2.461|0.525|3.96399999|13|0|55275.02271543|55276.94144233|55276.06630705|9.236|3.17|0.676|3.36100006|11|0|55275.02271543|55276.94144233|55276.06630705|8|-39|40|0|1|0||||||||||||||||||||||||||858248118|0.195|-111.0|1|15.045|0.048|14.603|0.074|14.516|0.114|2403089401241004007|1|-0.000422549747955|-0.0005648573660195|-0.999999751193902|121000000|
+J184622.54-895733.9|281.5939345|-89.959444|0.4029|0.4369|-0.1059|302.9774737|-27.1272533|270.0204579|-66.520979|2082.338|452.509|3004089401241004772|3004m894_ab41-004772|3004m894_ab41|4772|16.418|0.074|14.7|1.04299998|16.526|0.233|4.7|0.925700009|12.587|0.319|3.4|0.991299987|9.107||1.0|0.989899993|0.984700024|1|0|0.0|0.0|0.0|0.002|0000|0000|0|0nnn|ABBU|7|0000|11|23|2|23|1|22|0|22|22.698|22.777|21.958|21.67|0.0|0.0|0.0|0.0|0||0||0||0||42.9430008|2.92989993|9.382|2.739|0.102|15.4689999|3.32119989|21.76|3.33|0.17|146.229996|42.9099998|1098.046|24.767|2.463|12.3690004|11.8520002|298.923|9.945|1.068|16.481|0.224|0|0.261|16.651|0.483|0|0.319|12.193||32|0.825|8.501||32|0.576|17.003|0.206|0|17.149|0.41|0|13.445||32|9.511||32|16.742|0.224|0|16.97|0.483|0|13.018||32|9.077||32|16.733|0.289|0|16.242||32|12.753||32|8.734||32|16.675|0.338|1|16.281||32|12.591||32|8.44||32|16.377|0.311|1|16.188||32|12.418||32|8.181||32|15.849|0.225|1|15.742||32|12.216||32|7.947||32|15.196|0.144|1|15.665|0.387|1|11.979||32|7.732||32|14.575|0.094|1|14.81|0.203|1|11.731||32|7.534||32|16.419|0.38|0.079|2.016|22|1|55275.28745078|55277.20605032|55276.18490037|16.482|1.13|0.236|2.96799994|19|0|55275.28745078|55277.20605032|55276.18490037|12.396|1.451|0.309|2.88599992|15|0|55275.28745078|55277.20605032|55276.16554954|9.733|3.432|0.732|3.72000003|14|0|55275.28745078|55277.20605032|55276.16554954|-2|-35|-4|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004772|1|0.0001422568400337|-0.0006933939477269|-0.999999749483881|131000000|
+J141821.61-895733.8|214.590067|-89.9593939|0.4653|0.4591|0.1469|302.9488029|-27.090435|269.9160401|-66.5376343|2094.228|447.762|2403089401241004712|2403m894_ab41-004712|2403m894_ab41|4712|16.58|0.083|13.2|0.761200011|16.551|0.237|4.6|0.891700029|12.562|0.307|3.5|1.08700001|9.038|0.343|3.2|1.00199997|0.930400014|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBB|15|0000|11|23|2|23|0|22|0|22|23.667|23.698|22.6|22.491|0.0|0.0|0.0|0.0|0||0||0||0||36.9910011|2.81200004|9.429|2.684|0.0|15.1260004|3.30480003|21.842|3.329|0.073|149.630005|42.3199997|1096.496|23.893|3.67|38.4420013|12.1610003|298.272|9.523|0.59|16.473|0.199|0|0.261|16.236|0.389|0|0.319|12.078||32|0.825|8.373||32|0.576|17.071|0.193|0|16.996|0.414|0|13.315||32|9.351||32|16.734|0.199|0|16.555|0.389|0|12.903||32|8.949||32|16.615|0.231|1|16.376|0.428|1|12.593||32|8.614||32|16.458|0.248|1|16.267|0.48|1|12.354||32|8.385||32|16.23|0.243|1|16.109|0.502|1|12.166||32|8.188||32|16.004|0.233|1|15.857|0.469|1|11.996||32|8.008||32|15.827|0.23|1|15.571|0.419|1|11.824||32|7.875||32|15.652|0.225|1|15.271|0.366|1|11.671||32|7.676||32|16.578|0.397|0.083|2.618|22|0|55275.02271543|55276.94144233|55276.08997277|16.639|1.524|0.318|2.84699988|17|0|55275.02271543|55276.94144233|55276.08997277|12.467|1.639|0.349|3.148|14|0|55275.02271543|55276.94144233|55276.06630705|8.832|1.39|0.296|2.40799999|14|0|55275.02271543|55276.94144233|55276.06630705|16|5|-21|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004712|1|-0.0005834346587627|-0.0004023353484401|-0.999999748865102|121000000|
+J103733.25-895733.6|159.3885507|-89.9593377|0.2224|0.2076|-0.0217|302.9067258|-27.094235|269.9042644|-66.574994|2085.958|451.483|1802089401241004163|1802m894_ab41-004163|1802m894_ab41|4163|15.3|0.04|27.0|1.05200005|15.672|0.126|8.6|0.975099981|12.287||1.9|1.05299997|9.451||-0.4|1.13|1.04799998|1|0|0.0|0.0|0.0|0.002|0000|0000|0|1nnn|ABUU|3|0000|20|20|3|20|1|18|1|19|20.727|20.522|19.89|19.952|0.0|0.0|0.0|0.0|0||0||0||0||120.209999|4.45709991|9.422|2.786|0.0|33.9910011|3.93959999|21.832|3.472|0.05|93.7740021|49.507|1097.042|24.512|4.75|-5.27549982|13.1440001|298.355|9.663|0.638|15.382|0.081|0|0.261|15.919|0.362|0|0.319|12.113||32|0.825|8.927||32|0.576|15.946|0.076|0|16.479|0.32|0|13.582||32|9.929||32|15.643|0.081|0|16.238|0.362|0|12.938||32|9.503||32|15.581|0.099|0|16.385|0.535|0|13.035|0.429|0|9.089||32|15.616|0.126|1|15.695||32|12.448|0.308|1|8.585||32|15.656|0.157|1|15.744||32|11.996|0.245|1|8.17||32|15.548|0.167|1|15.67||32|11.638|0.206|1|7.855||32|15.284|0.153|1|15.438||32|11.34|0.181|1|7.62||32|15.052|0.142|1|15.241||32|11.09|0.166|1|7.447||32|15.299|0.174|0.039|0.59|19|0|55275.02271543|55276.94144233|55276.02180825|15.64|0.594|0.133|3.15700006|19|1|55275.02271543|55276.94144233|55276.02180825|12.488|1.915|0.451|2.02699995|9|0|55275.02271543|55276.94144233|55276.02622263||||4.24399996|8|0|55275.02271543|55276.94144233|55275.99081824|18|-54|-20|0|1|0||||||||||||||||||||||||||748811989|0.516|70.7|1|16.317|0.139|15.42|0.141|15.35|0.209|1802089401241004163|1|-0.0006642636083963|0.0002498317788372|-0.999999748168939|111000000|
+J133630.86-895731.8|204.1285954|-89.9588591|0.7375|0.7008|0.2334|302.9409463|-27.0878084|269.9056732|-66.5438627|2004.443|450.534|1802089401241005034|1802m894_ab41-005034|1802m894_ab41|5034|17.622|0.193|5.6|0.87620002|16.131|0.174|6.3|1.06700003|11.951|0.185|5.9|1.13900006|9.061|0.34|3.2|0.962199986|1.005|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|BBBB|15|0000|0|22|1|21|2|20|1|21|23.768|23.639|22.771|22.887|0.0|0.0|0.0|0.0|129|D|129|D|0||0||14.1669998|2.5164001|9.424|2.703|0.023|22.2549992|3.55850005|21.824|3.306|0.1|262.660004|44.8089981|1096.383|24.216|0.637|37.6459999|11.7919998|298.123|9.342|0.434|16.861||32|0.261|15.818|0.21|0|0.319|12.574|0.45|0|0.825|8.427||32|0.576|17.378||32|16.572|0.226|0|13.85|0.488|0|9.413||32|17.122||32|16.137|0.21|0|13.399|0.45|0|9.003||32|17.05||32|15.92|0.221|0|13.265|0.51|0|8.602||32|17.047||32|15.704|0.226|0|12.397||32|8.958|0.536|1|17.041||32|15.502|0.226|1|12.261||32|8.596|0.483|1|16.854||32|15.325|0.228|1|12.063||32|8.228|0.423|1|16.69||32|15.109|0.217|1|11.813||32|7.898|0.377|1|16.285||32|14.833|0.194|1|12.245|0.478|1|7.695|0.372|1|17.62|0.712|0.152|3.138|18|0|55275.02271543|55276.94144233|55276.06029323|16.048|0.854|0.186|2.43700004|17|0|55275.02271543|55276.94144233|55276.03724039|11.873|1.252|0.28|4.48799992|17|2|55275.02271543|55276.94144233|55276.00857149|9.052|1.793|0.391|3.99399996|15|0|55275.02271543|55276.94144233|55276.03408726|48|42|1|1|1|0|||||||||||||||||||||||||||||0|||||||1802089401241005034|1|-0.000655309247814|-0.0002935265774363|-0.999999742205936|121000000|
+J193816.72-895731.8|294.5697053|-89.9588486|0.8219|0.8506|-0.2546|302.9771952|-27.1365013|270.0429512|-66.5232776|2059.06|459.203|3004089401241005304|3004m894_ab41-005304|3004m894_ab41|5304|17.238|0.136|8.0|0.960699975|16.909||1.2|0.964699984|12.619||1.2|0.962100029|9.608||-0.7|1.11500001|0.996299982|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|23|0|23|0|22|1|22|23.391|23.666|22.9|22.509|0.0|0.0|0.0|0.0|0||0||0||0||20.1720009|2.52040005|9.383|2.765|0.0|4.08010006|3.39919996|21.783|3.359|0.0|52.276001|44.8779984|1097.362|24.664|0.0|-8.00949955|11.3669996|298.64|9.476|0.664|16.732|0.237|1|0.261|16.463|0.43|1|0.319|12.813||32|0.825|8.677||32|0.576|17.454|0.26|1|16.724||32|14.035||32|9.69||32|16.993|0.237|1|16.782|0.43|1|13.638||32|9.253||32|16.678|0.228|1|16.222|0.331|1|13.364||32|8.909||32|16.286|0.197|1|15.781|0.273|1|13.132||32|8.615||32|15.765|0.148|1|15.404|0.233|1|12.928||32|8.354||32|15.214|0.105|1|15.052|0.2|1|12.746||32|8.119||32|14.791|0.083|1|14.752|0.176|1|12.585||32|7.903||32|14.542|0.076|1|14.568|0.171|1|12.434||32|7.704||32|17.154|0.529|0.11|1.397|20|0|55275.28745078|55277.20605032|55276.18490037|17.324|2.686|0.56|2.05800009|12|0|55275.28745078|55277.20605032|55276.18490037|13.267|2.926|0.624|5.45300007|11|0|55275.28745078|55277.20605032|55276.16554954||||3.95099998|7|1|55275.28745078|55277.20605032|55276.16554954|-31|-5|63|1|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005304|1|0.0002986388401178|-0.0006531960608106|-0.999999742074841|131000000|
+J093401.11-895731.3|143.5046365|-89.9587214|0.5728|0.5478|-0.1248|302.8967326|-27.1012643|269.9164938|-66.5852374|2005.224|451.276|1201089401241004950|1201m894_ab41-004950|1201m894_ab41|4950|16.652|0.094|11.6|0.814999998|16.769||1.5|0.869199991|12.544|0.337|3.2|0.910300016|9.469||0.1|0.976000011|0.888100028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|AUBU|5|0000|6|20|0|20|1|19|0|19|20.73|20.355|19.635|19.618|0.0|0.0|0.0|0.0|0||0||0||0||34.5979996|2.98930001|9.424|2.797|0.062|5.204|3.58170009|21.854|3.406|0.018|152.179993|47.2400017|1098.752|24.796|4.552|0.730250001|12.5600004|298.356|9.554|1.6|16.608|0.24|0|0.261|16.761|0.539|0|0.319|12.2||32|0.825|8.381||32|0.576|17.164|0.224|0|16.707||32|13.479||32|9.547||32|16.869|0.24|0|17.08|0.539|0|13.025||32|8.957||32|16.876|0.311|0|16.159||32|12.684||32|8.544||32|17.143|0.493|0|16.14||32|12.397||32|8.195||32|16.65||32|16.253||32|12.129||32|8.673|0.526|17|16.868||32|16.201||32|12.637|0.524|0|7.772||32|16.701||32|16.034||32|12.426|0.501|1|7.646||32|16.548||32|15.882||32|12.247|0.488|1|7.494||32|16.615|0.386|0.086|2.19|19|0|55275.02271543|55276.94144233|55276.09127742|17.737|3.552|0.794|3.375|12|0|55275.02271543|55276.94144233|55276.09127742|12.251|1.108|0.254|5.77899981|13|0|55275.02271543|55276.94144233|55276.06394368|12.051|||1.27600002|5|0|55275.02271543|55276.94144233|55276.06394368|-58|14|68|1|0|0||||||||||||||||||||||||||748660969|0.463|-138.1|1|16.789|0.211|16.036|0.254|15.674|0.285|1201089401241004950|1|-0.0005791705904945|0.0004284911679393|-0.999999740478339|111000000|
+J150949.29-895730.0|227.4553918|-89.9583407|1.4609|1.392|0.4906|302.9584852|-27.0938609|269.9292726|-66.5300004|1967.998|426.157|1802089401241005483|1802m894_ab41-005483|1802m894_ab41|5483|18.787||-1.6|0.914300025|17.402||0.1|0.857800007|12.11|0.209|5.2|1.09300005|9.266|0.406|2.7|1.08299994|0.977599978|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBC|12|0000|0|23|0|23|1|22|1|22|22.826|22.773|21.911|21.914|0.0|0.0|0.0|0.0|0||0||0||0||-3.96729994|2.4217999|9.379|2.66|0.071|0.314639986|3.29500008|21.77|3.358|0.068|227.070007|43.6689987|1098.073|24.429|1.844|31.1499996|11.6479998|298.191|9.7|0.802|17.373|0.465|1|0.261|16.231|0.384|1|0.319|11.722||32|0.825|8.503||32|0.576|17.681||32|16.622||32|12.962||32|9.445||32|17.634|0.465|1|16.55|0.384|1|12.547||32|9.079||32|16.395|0.192|1|15.758|0.238|1|12.337||32|8.857||32|15.281|0.085|1|15.016|0.149|1|12.196||32|8.702||32|14.46|0.049|1|14.414|0.104|1|12.03||32|8.527||32|13.951|0.036|1|14.003|0.084|1|11.872||32|8.321||32|13.675|0.033|1|13.763|0.078|1|11.678||32|8.115||32|13.546|0.033|1|13.65|0.08|1|11.48||32|7.881||32||||2.518|7|0|55275.02271543|55276.94144233|55276.08997277|19.445|||2.69499993|12|0|55275.02271543|55276.94144233|55276.08997277|12.043|1.075|0.229|1.82200003|16|0|55275.02271543|55276.94144233|55276.06630705|9.133|2.039|0.435|5.27600002|14|0|55275.02271543|55276.94144233|55276.06630705|38|25|24|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005483|1|-0.0004916331069128|-0.000535685478616|-0.999999735668943|121000000|
+J020733.90-895729.5|31.8912657|-89.9582034|0.8789|0.8835|0.287|302.9165964|-27.1676674|270.0892937|-66.582765|2099.716|448.475|600089401241005139|0600m894_ab41-005139|0600m894_ab41|5139|17.296|0.146|7.4|0.901499987|17.371|0.533|2.0|0.995999992|12.449||1.8|1.16799998|9.262||0.5|0.943899989|0.998899996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|3|21|1|21|1|20|0|20|20.932|21.578|20.543|20.38|0.0|0.0|0.0|0.0|0||0||0||0||19.1159992|2.56929994|9.39|2.84|0.123|7.1072998|3.49189997|21.754|3.384|0.271|78.4150009|43.8110008|1097.508|24.25|1.095|6.08169985|12.5930004|298.771|9.75|0.416|17.058|0.377|1|0.261|15.941||32|0.319|12.297||32|0.825|8.648||32|0.576|17.636|0.361|1|16.53||32|13.485||32|9.657||32|17.319|0.377|1|16.26||32|13.122||32|9.224||32|17.252|0.461|1|16.35||32|12.835||32|8.88||32|16.495||32|15.954||32|12.604||32|8.588||32|16.366||32|15.751||32|12.401||32|8.33||32|16.106||32|15.571||32|12.222||32|8.096||32|16.37|0.421|1|15.405||32|12.057||32|7.881||32|15.875|0.307|1|15.255||32|11.908||32|7.683||32|17.19|0.611|0.133|1.43|17|0|55275.28745078|55277.20605032|55276.23257667|17.476|3.985|0.87|3.0539999|11|0|55275.28745078|55277.20605032|55276.23257667|12.837|2.703|0.605|2.49699998|11|1|55275.28745078|55277.20605032|55276.21367457|10.584|5.92|1.324|4.12400007|11|0|55275.28745078|55277.20605032|55276.21367457|26|19|39|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005139|1|0.000619372961773|0.0003853947276942|-0.999999733923984|101000000|
+J164718.04-895728.7|251.8251699|-89.9579745|0.9315|1.0144|0.1516|302.9723693|-27.1064843|269.9670986|-66.5207767|2026.137|459.866|2403089401241005242|2403m894_ab41-005242|2403m894_ab41|5242|17.375|0.156|6.9|0.822700024|17.226||0.6|0.925999999|13.072||0.2|0.993499994|9.397||0.3|0.911800027|0.910300016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|24|0|24|0|23|0|23|23.833|23.783|22.926|22.782|0.0|0.0|0.0|0.0|0||0||0||0||17.7880001|2.55979991|9.403|2.733|0.0|1.87600005|3.12159991|21.764|3.278|0.0|9.09630013|42.2480011|1097.253|24.801|0.0|3.0703001|12.2740002|298.664|9.895|1.141|16.618||32|0.261|16.253||32|0.319|12.247||32|0.825|8.508||32|0.576|17.148||32|16.82||32|13.446||32|9.673||32|16.879||32|16.572||32|13.072||32|9.084||32|16.794||32|16.303||32|12.803||32|8.664||32|16.685||32|16.068||32|12.436||32|8.309||32|16.335||32|15.864||32|12.06||32|7.957||32|16.262|0.385|1|15.499||32|11.738||32|7.702||32|15.292|0.183|1|14.922||32|11.451||32|7.546||32|14.559|0.107|1|14.989|0.383|1|11.19||32|7.405||32|17.334|0.643|0.131|2.486|21|0|55275.02271543|55277.20605032|55276.136476|20.36|||3.83200002|10|0|55275.02271543|55277.20605032|55276.136476|13.798|5.463|1.139|2.93300009|11|0|55275.02271543|55277.20605032|55276.1158611|11.221|9.113|1.9|3.30699992|11|0|55275.02271543|55277.20605032|55276.1158611|-21|-7|10|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005242|1|-0.0002287861309783|-0.0006968886124275|-0.999999731001548|121000000|
+J005650.96-895728.1|14.2123462|-89.9578314|0.8138|0.7647|0.2255|302.930797|-27.1703132|270.1028086|-66.5710283|2020.889|459.054|89401241005484|0000m894_ab41-005484|0000m894_ab41|5484|17.118|0.129|8.4|0.843800008|17.303||0.0|0.893599987|13.165||-0.6|0.983299971|9.474||-2.2|0.981100023|0.921400011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|21|0|21|0|20|0|20|21.661|21.734|20.857|21.326|0.0|0.0|0.0|0.0|0||0||0||0||22.5340004|2.67980003|9.371|2.805|0.089|-0.0654449984|3.78349996|21.781|3.519|0.085|-24.3120003|42.9399986|1097.76|24.296|0.092|-27.7919998|12.8579998|298.73|9.816|1.333|17.244|0.482|1|0.261|16.029||32|0.319|11.385||32|0.825|8.739||32|0.576|17.695|0.412|1|16.64||32|12.571||32|9.746||32|17.505|0.482|1|16.348||32|12.21||32|9.315||32|16.681||32|16.191||32|11.939||32|8.969||32|16.5||32|15.962||32|11.711||32|8.679||32|16.322||32|17.067||32|11.508||32|8.418||32|16.214||32|15.831||32|11.327||32|8.183||32|16.132||32|15.413||32|11.162||32|7.968||32|15.989||32|15.264||32|11.013||32|7.769||32|17.207|0.567|0.124|1.797|19|0|55275.28745078|55277.20605032|55276.23257667|18.085|5.113|1.116|2.73900008|8|0|55275.28745078|55277.20605032|55276.23257667||||2.72600007|7|0|55275.28745078|55277.20605032|55276.21367457||||4.329|5|0|55275.28745078|55277.20605032|55276.21367457|-22|-21|39|0|0|0||||||||||||||||||||||||||843640728|0.477|-150.9|1|16.448|0.202|16.43||15.631||89401241005484|1|0.0007134537349719|0.0001806951375696|-0.999999729166481|101000000|
+J224535.43-895727.9|341.3976613|-89.9577525|0.624|0.5703|-0.1192|302.9567|-27.1641909|270.1006056|-66.5471998|2083.28|456.861|89401241005205|0000m894_ab41-005205|0000m894_ab41|5205|16.871|0.104|10.4|0.887700021|16.548|0.269|4.0|0.985199988|13.134|0.532|2.0|1.05299997|9.476||-1.1|0.995899975|0.976400018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|ABCU|7|0000|6|23|0|23|0|22|0|22|24.671|24.424|23.926|23.774|0.0|0.0|0.0|0.0|0||0||0||0||28.2989998|2.7105|9.353|2.787|0.107|15.1639996|3.76119995|21.824|3.491|0.103|88.4069977|43.3209991|1098.045|25.152|3.896|-13.9809999|12.835|298.936|9.735|1.411|16.719|0.24|1|0.261|16.123|0.435|1|0.319|12.089||32|0.825|8.758||32|0.576|17.281|0.229|1|16.906|0.481|1|13.427||32|10.015||32|16.98|0.24|1|16.442|0.435|1|12.914||32|9.334||32|16.995|0.315|1|16.233|0.465|1|12.517||32|8.842||32|17.146|0.449|1|16.156|0.537|1|12.23||32|8.458||32|16.471||32|15.31||32|12.024||32|8.129||32|16.349||32|15.225||32|11.87||32|7.851||32|16.135||32|15.169||32|11.759||32|7.598||32|16.623|0.526|1|15.132||32|11.672||32|7.396||32|16.849|0.591|0.123|4.013|21|1|55275.28745078|55277.20605032|55276.19928401|16.496|1.164|0.243|2.921|18|0|55275.28745078|55277.20605032|55276.19928401|12.791|1.805|0.385|3.59100008|13|0|55275.28745078|55277.20605032|55276.18058699||||2.7019999|9|0|55275.28745078|55277.20605032|55276.18058699|-54|47|48|2|1|0|||||||||||||||||||||||||||||0|||||||89401241005205|1|0.0006988357299729|-0.0002352159635768|-0.999999728151|131000000|
+J215440.35-895723.8|328.6681645|-89.9566219|0.8816|0.8253|-0.2318|302.9659001|-27.1592551|270.0930638|-66.5381249|1994.32|452.115|3004089401241005147|3004m894_ab41-005147|3004m894_ab41|5147|17.331|0.147|7.4|0.944400012|16.835|0.325|3.3|1.12300003|12.953||0.3|1.03799999|8.992||1.4|0.938199997|1.00800002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|3|24|2|24|0|23|0|23|24.175|24.558|23.64|23.487|0.0|0.0|0.0|0.0|0||0||0||0||18.5209999|2.51559997|9.325|2.854|0.018|11.6420002|3.48210001|21.774|3.441|0.132|13.066|45.6660004|1099.313|25.385|2.266|16.7369995|11.6750002|298.356|9.612|0.737|16.144|0.134|1|0.261|15.384||32|0.319|12.081||32|0.825|8.265||32|0.576|17.169|0.195|1|16.158||32|13.3||32|9.348||32|16.405|0.134|1|15.703||32|12.906||32|8.841||32|15.739|0.094|1|15.341||32|12.619||32|8.527||32|15.216|0.072|1|15.071||32|12.425||32|8.297||32|14.87|0.063|1|14.878||32|12.252||32|8.212||32|14.637|0.06|1|14.716||32|12.017||32|8.198||32|14.457|0.059|1|14.576||32|11.745||32|7.982||32|14.308|0.059|1|14.476||32|11.508||32|7.783||32|17.258|0.675|0.138|3.231|21|0|55275.28745078|55277.20605032|55276.21366396|17.072|2.406|0.491|2.8499999|12|3|55275.28745078|55277.20605032|55276.21366396|13.841|3.434|0.716|1.85500002|11|0|55275.28745078|55277.20605032|55276.19640507|9.498|2.497|0.521|2.90400004|12|0|55275.28745078|55277.20605032|55276.19640507|-11|-47|-90|0|1|2|||||||||||||||||||||||||||||0|||||||3004089401241005147|1|0.0006466843773452|-0.0003936825829792|-0.999999713406629|131000000|
+J200528.68-895722.8|301.3695044|-89.9563505|0.1721|0.1731|-0.0476|302.9784296|-27.1420062|270.0570368|-66.5234294|2046.189|466.298|3004089401241004264|3004m894_ab41-004264|3004m894_ab41|4264|15.057|0.035|30.9|1.02400005|15.145|0.075|14.4|0.862299979|13.095||0.0|1.01400006|9.619||-2.0|1.06700003|0.988200009|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|23|23|10|23|0|22|0|22|23.75|23.592|22.96|22.784|0.0|0.0|0.0|0.0|0||0||0||0||150.330002|4.87130022|9.388|2.725|0.778|55.1959991|3.8354001|21.759|3.274|0.0|0.889890015|45.3499985|1097.309|24.845|1.15|-22.1720009|11.2510004|298.753|9.508|0.384|15.052|0.045|0|0.261|15.218|0.121|0|0.319|12.825||32|0.825|8.995||32|0.576|15.662|0.045|0|15.897|0.121|0|14.006||32|10.002||32|15.313|0.045|0|15.537|0.121|0|13.65||32|9.571||32|15.218|0.053|1|15.483|0.149|1|13.371||32|9.232||32|15.185|0.063|1|15.563|0.198|1|13.14||32|8.945||32|15.111|0.071|1|15.641|0.255|1|12.943||32|8.691||32|14.982|0.075|1|15.617|0.293|1|12.769||32|8.461||32|14.85|0.077|1|15.48|0.301|1|12.608||32|8.251||32|14.761|0.081|1|15.297|0.292|1|12.461||32|8.057||32|15.059|0.156|0.033|0.725|22|0|55275.28745078|55277.20605032|55276.18490037|15.183|0.326|0.068|1.54400003|22|0|55275.28745078|55277.20605032|55276.18490037|13.592|5.101|1.088|5.30800009|11|0|55275.28745078|55277.20605032|55276.16554954||||4.32800007|5|0|55275.28745078|55277.20605032|55276.16554954|41|-14||1|0|||||||||||||||||||||||||||970686735|1.29|-44.2|1|16.053|0.111|15.532|0.179|15.165|0.206|3004089401241004264|1|0.0003965731079081|-0.0006504693069514|-0.999999709809683|131000000|
+J144002.83-895721.9|220.0117947|-89.9560958|0.6399|0.643|0.2061|302.9544209|-27.0890888|269.9155592|-66.5324581|2087.979|459.798|2403089401241004942|2403m894_ab41-004942|2403m894_ab41|4942|17.056|0.117|9.3|0.777700007|16.404|0.218|5.0|0.948700011|12.679|0.347|3.1|1.15400004|9.538||-0.2|1.04799998|0.975099981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BBBU|7|0000|6|23|3|23|1|22|0|22|23.704|23.684|22.563|22.542|0.0|0.0|0.0|0.0|0||0||0||0||23.8530006|2.5625|9.408|2.68|0.115|17.3180008|3.47270012|21.864|3.403|0.126|134.369995|42.9480019|1097.59|24.223|0.776|-1.98679996|12.1260004|298.129|9.639|1.288|16.295|0.113|1|0.261|16.072|0.368|1|0.319|12.05||32|0.825|8.775||32|0.576|17.144|0.141|1|16.846|0.407|1|13.271||32|9.787||32|16.556|0.113|1|16.391|0.368|1|12.875||32|9.351||32|16.187|0.105|1|16.187|0.395|1|12.528||32|8.928||32|15.893|0.099|1|15.999|0.412|1|12.214||32|8.538||32|15.602|0.091|1|15.734|0.389|1|11.92||32|8.236||32|15.331|0.084|1|15.451|0.355|1|11.655||32|8.034||32|15.113|0.08|1|15.222|0.334|1|11.435||32|7.903||32|14.938|0.078|1|15.079|0.336|1|11.268||32|8.078||32|17.04|0.684|0.143|2.967|19|0|55275.02271543|55276.94144233|55276.08997277|16.314|1.389|0.29|3.68499994|16|1|55275.02271543|55276.94144233|55276.08997277|12.847|1.738|0.371|5.60699987|15|3|55275.02271543|55276.94144233|55276.06630705||||4.6789999|9|0|55275.02271543|55276.94144233|55276.06630705|28|19|7|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004942|1|-0.0005868981407453|-0.0004926719320444|-0.999999706412427|121000000|
+J064322.72-895721.3|100.8447021|-89.955933|0.3489|0.3726|-0.0845|302.8824319|-27.129697|269.97912|-66.6039875|2086.216|460.894|1201089401241004652|1201m894_ab41-004652|1201m894_ab41|4652|16.143|0.064|16.9|0.911599994|15.982|0.161|6.7|0.949800014|12.204|0.247|4.4|1.03799999|8.941||1.2|0.944899976|0.956099987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|14|21|2|21|2|19|0|20|21.747|21.78|21.021|20.772|0.0|0.0|0.0|0.0|0||0||0||0||55.3180008|3.28259993|9.423|2.775|0.095|25.5410004|3.79439998|21.828|3.415|0.081|208.070007|47.3139992|1097.925|24.127|4.226|15.7150002|13.1520004|298.542|9.765|0.991|15.683|0.079|0|0.261|15.55|0.187|0|0.319|12.665|0.524|0|0.825|8.517||32|0.576|16.455|0.091|0|16.347|0.208|0|13.259||32|9.636||32|15.944|0.079|0|15.869|0.187|0|13.49|0.524|0|9.093||32|15.694|0.081|0|15.675|0.203|0|13.141|0.493|0|8.687||32|15.563|0.089|0|15.579|0.23|0|12.262||32|8.359||32|15.461|0.097|0|15.477|0.252|0|12.127||32|8.049||32|15.318|0.101|1|15.338|0.262|1|11.991||32|7.771||32|15.137|0.099|1|15.141|0.255|1|11.884||32|7.492||32|14.933|0.095|1|14.893|0.234|1|11.82||32|7.965|0.525|17|16.19|0.286|0.062|1.442|20|0|55275.02271543|55277.20605032|55276.14436185|15.959|0.897|0.196|2.7579999|18|1|55275.02271543|55277.20605032|55276.14436185|12.061|1.047|0.24|2.41599989|14|0|55275.28745078|55277.20605032|55276.17885604|9.633|2.755|0.616|3.66799998|11|0|55275.02271543|55277.20605032|55276.12104901|-18|-3|-22|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004652|1|-0.0001447071732399|0.000755379207743|-0.999999704230999|111000000|
+J172430.72-895721.0|261.1280333|-89.955858|0.2136|0.2659|0.0377|302.9779827|-27.111805|269.9829152|-66.5170941|2007.029|460.096|2403089401241004367|2403m894_ab41-004367|2403m894_ab41|4367|15.96|0.053|20.5|0.991900027|15.375|0.09|12.0|0.840799987|11.04|0.082|13.3|0.994499981|9.156|0.38|2.9|1.08000004|0.964299977|1|0|0.0|0.0|0.0|0.0|0000|0000|0|110n|AAAC|15|0000|21|23|6|23|13|22|1|22|23.728|23.693|22.961|22.656|0.0|0.0|0.0|0.0|0||0||0||0||65.4830017|3.19050002|9.383|2.693|0.0|44.6850014|3.72390008|21.725|3.303|0.0|607.98999|45.757|1096.333|23.989|0.0|34.487999|12.0749998|298.587|9.7|0.971|16.054|0.315|0|0.261|15.099|0.141|0|0.319|11.085|0.172|0|0.825|8.241||32|0.576|16.663|0.314|0|15.947|0.166|0|12.55|0.224|0|9.219||32|16.315|0.315|0|15.418|0.141|0|11.91|0.172|0|8.817||32|16.266|0.386|1|15.152|0.142|1|11.526|0.155|1|9.345||32|15.66||32|15.001|0.152|1|11.302|0.156|1|8.292||32|15.665||32|14.867|0.163|1|11.185|0.169|1|8.032||32|15.636||32|14.693|0.163|1|11.123|0.188|1|7.796||32|15.584||32|14.482|0.157|1|11.091|0.213|1|7.581||32|15.508||32|14.279|0.149|1|11.079|0.242|1|7.381||32|15.955|0.225|0.047|1.032|22|0|55275.28745078|55277.20605032|55276.18490037|15.351|0.427|0.089|1.83200002|22|0|55275.28745078|55277.20605032|55276.18490037|10.97|0.415|0.088|2.38899994|21|1|55275.28745078|55277.20605032|55276.16554954|8.856|1.53|0.326|3.68499994|14|0|55275.28745078|55277.20605032|55276.16554954|27|5|10|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004367|1|-0.0001188199161034|-0.0007612045876474|-0.999999703224658|121000000|
+J011420.89-895720.0|18.5870437|-89.9555716|0.4224|0.4104|0.1249|302.9269322|-27.1723629|270.1059263|-66.5748345|2010.918|462.282|89401241004946|0000m894_ab41-004946|0000m894_ab41|4946|16.357|0.072|15.2|1.08200002|16.53|0.258|4.2|0.990499973|13.121||-0.2|0.96359998|9.498||-0.2|0.986999989|1.00300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|12|21|0|21|0|20|0|20|21.637|21.667|20.827|20.895|0.0|0.0|0.0|0.0|0||0||0||0||45.3969994|2.99009991|9.362|2.785|0.055|15.4119997|3.65569997|21.762|3.448|0.225|-8.32159996|44.7089996|1099.188|24.738|0.0|-2.62069988|12.5860004|298.974|9.806|0.53|16.447|0.206|1|0.261|16.221|0.347|1|0.319|12.314||32|0.825|8.835||32|0.576|16.975|0.189|1|16.887|0.345|1|13.503||32|9.844||32|16.708|0.206|1|16.54|0.347|1|13.139||32|9.411||32|16.65|0.252|1|16.404|0.396|1|12.858||32|9.067||32|16.628|0.307|1|16.235|0.42|1|12.623||32|8.773||32|16.585|0.354|1|16.009|0.41|1|12.424||32|8.514||32|16.506|0.389|1|15.8|0.4|1|12.242||32|8.279||32|16.348|0.391|1|15.688|0.419|1|12.081||32|8.064||32|16.146|0.374|1|15.622|0.455|1|11.928||32|7.866||32|16.417|0.402|0.088|2.425|20|2|55275.28745078|55277.20605032|55276.23257667|16.644|1.416|0.309|2.79999995|14|0|55275.28745078|55277.20605032|55276.23257667|14.879|||2.73399997|6|0|55275.28745078|55277.20605032|55276.21367457|10.212|3.768|0.843|1.62199998|11|0|55275.28745078|55277.20605032|55276.21367457|-15|50|13|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004946|1|0.0007349766787976|0.0002471619700811|-0.999999699360076|101000000|
+J024827.19-895716.1|42.1132941|-89.9544855|1.0516|1.064|0.3234|302.9069159|-27.1678639|270.0849851|-66.5912079|2084.785|465.379|600089401241005296|0600m894_ab41-005296|0600m894_ab41|5296|17.582|0.193|5.6|0.850099981|16.788|0.322|3.4|0.805899978|12.462||1.7|1.16199994|9.18||0.7|1.00399995|0.951399982|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|1|21|0|21|1|20|0|20|20.925|21.259|21.17|20.987|0.0|0.0|0.0|0.0|0||0||0||0||14.6960001|2.61080003|9.348|2.82|0.0|12.1619997|3.6098001|21.76|3.417|0.043|76.0569992|44.0670013|1098.074|24.227|0.823|8.40509987|12.6680002|298.612|9.769|0.382|16.71||32|0.261|16.361|0.452|0|0.319|11.835||32|0.825|8.425||32|0.576|17.927|0.468|0|17.072|0.464|0|13.03||32|9.613||32|16.971||32|16.68|0.452|0|12.66||32|9.001||32|16.892||32|16.583|0.534|0|12.381||32|9.213|0.54|1|16.884||32|15.666||32|12.151||32|8.65|0.412|1|16.844||32|15.47||32|11.947||32|8.241|0.352|1|17.783||32|15.288||32|11.766||32|8.0|0.343|1|16.664||32|15.082||32|11.601||32|7.887|0.37|1|16.449||32|15.43|0.433|1|11.451||32|7.79|0.4|1|17.554|1.011|0.221|2.796|16|0|55275.28745078|55277.20605032|55276.23257667|16.787|1.581|0.345|2.84299994|14|0|55275.28745078|55277.20605032|55276.23257667|13.717|3.545|0.793|4.40600014|11|0|55275.28745078|55277.20605032|55276.21367457|10.381|4.089|0.914|3.1960001|11|0|55275.28745078|55277.20605032|55276.21367457|-30|8|-56|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241005296|1|0.0005892858672378|0.0005327090534409|-0.999999684481566|101000000|
+J190955.15-895715.7|287.4798103|-89.954363|0.3724|0.3842|-0.0946|302.9830293|-27.1318233|270.0344012|-66.5171755|2074.842|468.463|3004089401241004653|3004m894_ab41-004653|3004m894_ab41|4653|16.294|0.07|15.6|1.08299994|15.936|0.14|7.8|0.989099979|12.541|0.303|3.6|0.904900014|9.437|0.485|2.2|1.04999995|1.00300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABBC|15|0000|13|23|4|23|0|22|1|22|22.511|23.541|22.372|22.172|0.0|0.0|0.0|0.0|0||0||0||0||48.1230011|3.08200002|9.385|2.806|0.0|26.6329994|3.43330002|21.778|3.336|0.075|152.550003|42.5169983|1096.885|24.343|1.374|26.6130009|11.8859997|298.115|9.592|0.423|15.608|0.072|1|0.261|15.287|0.118|1|0.319|12.565|0.483|1|0.825|8.298||32|0.576|16.466|0.09|0|16.209|0.147|0|13.267||32|9.448||32|15.869|0.072|1|15.606|0.118|1|13.39|0.483|1|8.874||32|15.517|0.067|1|15.295|0.115|1|12.844|0.379|1|9.205|0.506|1|15.27|0.066|1|15.113|0.12|1|12.452|0.327|1|8.983|0.522|17|15.064|0.065|1|14.986|0.129|1|12.175|0.304|1|8.053||32|14.864|0.064|1|14.873|0.137|1|11.999|0.305|1|7.877||32|14.632|0.06|1|14.721|0.139|1|11.842|0.307|1|7.679||32|14.355|0.054|1|14.501|0.131|1|11.676|0.303|1|8.132|0.48|17|16.35|0.249|0.052|1.003|21|0|55275.28745078|55277.20605032|55276.18490037|15.919|0.853|0.178|2.99399996|19|0|55275.28745078|55277.20605032|55276.18490037|12.294|0.824|0.176|3.24600005|17|0|55275.28745078|55277.20605032|55276.16554954|9.022|2.023|0.431|4.92700005|12|0|55275.28745078|55277.20605032|55276.16554954|23|-3|-19|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004653|1|0.0002392492273838|-0.0007597349910023|-0.999999682781225|131000000|
+J230809.09-895715.0|347.0379101|-89.9541861|1.1008|0.9797|-0.1183|302.9543462|-27.1693942|270.1121934|-66.5503924|2074.9|468.92|89401241005613|0000m894_ab41-005613|0000m894_ab41|5613|17.598|0.187|5.8|0.869499981|16.957|0.374|2.9|0.904200017|13.14|0.538|2.0|0.973500013|9.262||0.6|1.02199996|0.938499987|1|0|0.0|0.0|0.0|0.001|0000|0000|0|nnnn|BCCU|7|0000|2|24|1|24|0|23|0|23|24.424|24.103|23.634|23.684|0.0|0.0|0.0|0.0|0||0||0||0||14.4770002|2.49559999|9.375|2.825|0.045|10.401|3.58459997|21.794|3.445|0.087|87.9029999|43.5709991|1097.964|24.593|2.161|7.48950005|11.8990002|298.808|9.583|1.332|17.47|0.443|1|0.261|15.675||32|0.319|11.803||32|0.825|8.324||32|0.576|17.892|0.372|0|16.327||32|12.982||32|9.481||32|17.731|0.443|1|15.994||32|12.628||32|8.9||32|17.051||32|15.784||32|12.352||32|8.516||32|17.016||32|15.599||32|12.123||32|8.235||32|16.836||32|15.4||32|11.92||32|7.976||32|16.448||32|15.156||32|11.738||32|7.742||32|16.472|0.369|1|14.851||32|11.573||32|7.527||32|15.652|0.199|1|14.504||32|11.423||32|7.317||32|17.464|0.76|0.155|2.675|20|0|55275.28745078|55277.33835439|55276.24674528|16.752|1.749|0.357|2.72799993|15|0|55275.28745078|55277.33835439|55276.24674528|12.856|2.124|0.443|3.48200011|15|0|55275.28745078|55277.33835439|55276.2309247|10.768|6.969|1.453|2.47099996|14|0|55275.28745078|55277.33835439|55276.2309247|15|-27|-25|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005613|1|0.0007792282585035|-0.0001793560398596|-0.999999680317315|131000000|
+J123517.83-895714.9|188.8242959|-89.9541567|1.129|0.9465|0.1987|302.9282929|-27.0824267|269.8861478|-66.553635|2030.16|470.71|1802089401241004485|1802m894_ab41-004485|1802m894_ab41|4485|17.046|0.52|2.1|0.908399999|16.384|0.213|5.1|0.927299976|11.978|0.183|5.9|1.04499996|9.359||0.4|1.14199996|0.9824|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|CBBU|7|0000|0|22|2|22|3|21|0|21|20.889|22.481|21.007|21.984|0.0|0.0|0.0|0.0|129|D|129|D|0||0||24.0860004|11.5430002|9.449|2.714|1.856|17.6359997|3.46729994|21.842|3.275|1.164|256.390015|43.3019981|1096.511|24.493|2.554|4.37060022|12.118|298.431|9.796|0.796|16.042|0.157|1|0.261|15.652|0.288|1|0.319|11.738||32|0.825|8.424||32|0.576|17.12|0.238|1|16.692|0.4|1|12.914||32|9.542||32|16.303|0.157|1|15.971|0.288|1|12.563||32|9.0||32|15.701|0.117|1|15.485|0.238|1|12.35||32|8.549||32|15.189|0.09|1|15.073|0.202|1|12.177||32|8.243||32|14.762|0.073|1|14.711|0.174|1|12.09||32|8.021||32|14.429|0.063|1|14.408|0.155|1|14.191||32|7.847||32|14.164|0.058|1|14.158|0.143|1|11.736||32|7.718||32|13.924|0.053|1|13.948|0.136|1|11.584||32|7.578||32|17.028|1.327|0.283|3.755|16|0|55275.02271543|55276.94144233|55276.00616306|16.7|1.92|0.409|3.93000007|14|2|55275.02271543|55276.94144233|55276.00616306|11.77|0.814|0.178|5.56699991|17|1|55275.02271543|55276.94144233|55275.97737947||||3.34800005|8|0|55275.02271543|55276.94144233|55275.97737947|41|39|-17|1|1|0|||||||||||||||||||||||||||||0|||||||1802089401241004485|1|-0.0007906455492286|-0.0001227417236827|-0.999999679906991|121000000|
+J220647.88-895714.8|331.699501|-89.954121|0.4079|0.3768|-0.1|302.965855|-27.1626934|270.1014635|-66.538925|2104.943|457.79|89401241004919|0000m894_ab41-004919|0000m894_ab41|4919|16.296|0.068|16.0|0.912999988|16.495|0.24|4.5|0.986199975|12.776||0.9|1.051|9.627||-0.3|1.01300001|0.987200022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|12|24|0|24|0|23|0|23|24.717|24.55|23.964|23.8|0.0|0.0|0.0|0.0|0||0||0||0||48.0600014|2.99699998|9.344|2.812|0.127|15.9280005|3.51990008|21.791|3.403|0.11|38.6790009|42.1139984|1098.42|24.711|0.72|-3.75699997|11.1719999|299.023|9.637|0.383|15.885|0.101|1|0.261|15.666|0.267|1|0.319|13.386||32|0.825|8.644||32|0.576|16.638|0.115|1|16.601|0.337|1|13.388||32|9.975||32|16.146|0.101|1|15.985|0.267|1|14.211||32|9.22||32|15.828|0.097|1|15.596|0.241|1|12.682||32|8.884||32|15.565|0.095|1|15.266|0.22|1|12.437||32|11.215||32|15.322|0.091|1|14.952|0.199|1|12.247||32|8.387||32|15.039|0.083|1|14.628|0.175|1|12.065||32|8.15||32|14.666|0.069|1|14.281|0.148|1|11.88||32|7.934||32|14.25|0.054|1|13.929|0.123|1|11.684||32|7.734||32|16.291|0.245|0.05|1.194|23|0|55275.28745078|55277.20605032|55276.21366396|16.422|1.025|0.209|3.1400001|17|0|55275.28745078|55277.20605032|55276.21366396|13.352|2.725|0.568|3.48399997|13|0|55275.28745078|55277.20605032|55276.19640507||||3.38499999|9|0|55275.28745078|55277.20605032|55276.19640507|15|26|-78|0|0|1|||||||||||||||||||||||||||||0|||||||89401241004919|1|0.0007050295942761|-0.0003796272445473|-0.999999679408162|131000000|
+J072559.19-895713.0|111.49664|-89.9536232|1.0095|1.0577|-0.3104|302.8804008|-27.1211823|269.9572017|-66.6038539|2066.348|472.058|1201089401241005047|1201m894_ab41-005047|1201m894_ab41|5047|17.316|0.165|6.6|0.866100013|17.069||0.6|0.916100025|12.69||0.9|1.09599996|9.409||-0.2|0.941900015|0.949100018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|20|0|20|0|19|0|19|21.735|21.728|20.88|20.722|0.0|0.0|0.0|0.0|0||0||0||0||18.7779999|2.84590006|9.424|2.765|0.383|2.06940007|3.65750003|21.792|3.431|0.262|40.5169983|46.2669983|1096.04|23.561|4.633|-3.30859995|13.6630001|298.74|9.92|0.0|16.127|0.16|0|0.261|15.596||32|0.319|12.506||32|0.825|8.287||32|0.576|17.105|0.219|0|16.414||32|13.701||32|9.477||32|16.388|0.16|0|15.915||32|13.331||32|8.863||32|15.726|0.113|0|16.002|0.438|0|12.961||32|8.36||32|14.917|0.067|0|14.974|0.211|0|12.592||32|8.672|0.49|1|13.922|0.033|1|13.874|0.092|1|12.185||32|8.33|0.455|1|12.887|0.016|1|12.866|0.044|1|11.756||32|8.019|0.424|1|12.001|0.009|1|12.055|0.024|1|11.963|0.409|1|7.763|0.409|1|11.404|0.008|1|11.502|0.017|1|11.485|0.303|1|7.567|0.41|1|17.273|0.699|0.156|2.602|18|0|55275.02271543|55276.94144233|55276.09127742|18.097|5.102|1.141|2.32500005|8|0|55275.02271543|55276.94144233|55276.09127742|13.33|2.891|0.663|2.60800004|12|0|55275.02271543|55276.94144233|55276.06394368||||3.91499996|9|0|55275.02271543|55276.94144233|55276.06394368|27|26|16|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005047|1|-0.000296612204568|0.0007531234634174|-0.999999672413071|111000000|
+J154856.41-895711.1|237.2350485|-89.953096|0.3643|0.3872|0.101|302.9687625|-27.094626|269.9362862|-66.5212545|2054.705|474.646|2403089401241004575|2403m894_ab41-004575|2403m894_ab41|4575|16.292|0.065|16.6|0.853500009|16.41|0.21|5.2|1.01400006|12.472||1.7|1.17200005|9.398||0.2|1.04400003|1.01600003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|15|23|1|23|1|22|0|22|22.771|23.033|21.973|22.144|0.0|0.0|0.0|0.0|0||0||0||0||48.2029991|2.90639997|9.38|2.704|0.158|17.2159996|3.32419991|21.753|3.287|0.218|74.2020035|44.2249985|1096.782|24.396|0.588|2.31010008|12.6420002|298.743|10.006|0.161|16.167|0.241|0|0.261|16.072|0.255|0|0.319|11.923||32|0.825|8.989|0.54|1|0.576|16.82|0.248|0|16.833|0.275|0|13.2||32|9.467||32|16.428|0.241|0|16.391|0.255|0|12.748||32|9.565|0.54|1|16.278|0.271|1|16.155|0.265|1|12.394||32|8.947|0.411|1|16.096|0.283|1|15.847|0.247|1|12.099||32|8.616|0.389|1|15.686|0.235|1|15.344|0.188|1|11.81||32|8.399|0.396|1|15.14|0.168|1|14.774|0.131|1|11.532||32|8.289|0.435|1|14.658|0.125|1|14.306|0.099|1|11.289||32|8.256|0.505|1|14.27|0.101|1|13.943|0.081|1|11.103||32|7.414||32|16.32|0.26|0.054|1.178|22|0|55275.02271543|55276.94144233|55276.08997277|16.444|1.016|0.212|3.0250001|19|0|55275.02271543|55276.94144233|55276.08997277|13.696|4.958|1.057|4.22599983|12|1|55275.02271543|55276.94144233|55276.06630705|11.918|||2.36199999|9|0|55275.02271543|55276.94144233|55276.06630705|26|-7|-19|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004575|1|-0.0004430367847503|-0.0006883829388388|-0.999999664923612|121000000|
+J143112.35-895711.1|217.8014887|-89.953087|1.2186|1.2345|0.3792|302.9541363|-27.085617|269.9069204|-66.531927|2095.129|465.449|2403089401241005558|2403m894_ab41-005558|2403m894_ab41|5558|17.734|0.205|5.3|0.948300004|17.091||0.8|0.98360002|13.143|0.541|2.0|1.04999995|9.53||-1.1|1.06099999|1.00699997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|2|22|0|22|0|21|0|21|23.874|23.569|22.952|22.788|0.0|0.0|0.0|0.0|0||0||0||0||12.7810001|2.41170001|9.424|2.627|0.131|2.60080004|3.29579997|21.807|3.282|0.231|87.6900024|43.6959991|1097.05|24.14|4.149|-12.8629999|12.2220001|298.134|9.75|0.973|17.125|0.313|1|0.261|16.053||32|0.319|12.073||32|0.825|8.848||32|0.576|17.857|0.345|1|16.741||32|13.32||32|11.662||32|17.386|0.313|1|16.372||32|12.898||32|9.424||32|16.964|0.275|1|16.084||32|12.579||32|8.817||32|16.563|0.236|1|15.853||32|12.319||32|8.361||32|16.259|0.215|1|15.731||32|12.085||32|8.023||32|15.994|0.199|1|15.68||32|11.873||32|8.448|0.537|1|15.755|0.185|1|15.516||32|11.672||32|8.093|0.47|17|15.546|0.176|1|15.363||32|11.479||32|7.855|0.451|17|17.775|1.326|0.283|2.029|15|0|55275.02271543|55276.94144233|55276.06029323|18.122|5.45|1.162|3.33599997|11|0|55275.02271543|55276.94144233|55276.06029323|13.023|3.247|0.709|2.39499998|11|0|55275.02271543|55276.94144233|55276.03408726||||1.98699999|8|0|55275.02271543|55276.94144233|55276.03408726|22|72|-71|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241005558|1|-0.0006469556113499|-0.0005018571357764|-0.99999966479387|121000000|
+J033421.38-895710.9|53.5890882|-89.9530397|0.5581|0.5842|0.1463|302.8974765|-27.1637386|270.0701819|-66.5984859|2061.928|474.192|600089401241004773|0600m894_ab41-004773|0600m894_ab41|4773|16.719|0.098|11.1|0.837100029|16.861|0.349|3.1|0.824599981|12.337|0.262|4.1|1.07500005|9.538||-0.1|1.08800006|0.950500011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|6|21|1|21|1|20|0|20|22.144|22.384|21.855|21.698|0.0|0.0|0.0|0.0|0||0||0||0||32.5250015|2.93790007|9.39|2.876|0.104|11.3640003|3.65680003|21.788|3.423|0.134|184.220001|44.4070015|1098.194|24.093|0.0|-1.77330005|12.1309996|298.717|9.562|0.38|16.101|0.122|1|0.261|15.484|0.169|1|0.319|11.853||32|0.825|8.836||32|0.576|16.907|0.145|1|16.6|0.252|1|13.971||32|9.845||32|16.362|0.122|1|15.803|0.169|1|12.678||32|9.412||32|15.94|0.106|1|15.221|0.127|1|12.402||32|9.065||32|15.454|0.084|1|14.744|0.101|1|12.172||32|8.769||32|15.012|0.068|1|14.367|0.086|1|11.969||32|8.508||32|14.701|0.06|1|14.091|0.079|1|11.786||32|8.271||32|14.487|0.057|1|13.9|0.077|1|11.623||32|8.054||32|14.303|0.056|1|13.739|0.077|1|11.47||32|7.854||32|16.742|0.333|0.073|1.837|20|0|55275.28745078|55277.20605032|55276.23257667|16.748|1.681|0.367|2.42700005|13|0|55275.28745078|55277.20605032|55276.23257667|12.337|1.445|0.323|3.4749999|14|0|55275.28745078|55277.20605032|55276.21367457||||2.98699999|7|0|55275.28745078|55277.20605032|55276.21367457|9|-7|38|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004773|1|0.0004864984334632|0.0006596073830146|-0.999999664118631|101000000|
+J084755.57-895710.9|131.981572|-89.9530364|0.1916|0.1868|-0.0486|302.8858275|-27.105293|269.9209161|-66.5955999|2022.868|472.391|1201089401241004366|1201m894_ab41-004366|1201m894_ab41|4366|15.207|0.038|28.4|1.02100003|15.069|0.077|14.1|0.945200026|11.439|0.118|9.2|0.943499982|9.013||1.3|1.11199999|1.00100005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|21nn|AABU|7|0000|20|20|11|20|3|19|0|19|20.605|20.708|19.898|20.075|0.0|0.0|0.0|0.0|0||0||0||0||131.0|4.61709976|9.408|2.807|0.0|59.2150002|4.19329977|21.85|3.527|0.0|420.950012|45.6269989|1096.451|23.875|0.0|15.1990004|12.0620003|298.219|9.509|0.725|14.978|0.038|1|0.261|14.896|0.17|1|0.319|11.753|0.268|1|0.825|8.667||32|0.576|15.697|0.043|1|15.706|0.192|1|13.198|0.34|1|9.707||32|15.239|0.038|1|15.215|0.17|1|12.578|0.268|1|9.243||32|14.972|0.039|1|14.985|0.178|1|12.223|0.251|1|8.926||32|14.781|0.04|1|14.846|0.195|1|11.984|0.25|1|8.693||32|14.662|0.043|1|14.775|0.219|1|11.835|0.262|1|8.353||32|14.591|0.047|1|14.774|0.258|1|11.762|0.289|1|7.968||32|14.537|0.052|1|14.803|0.309|1|11.737|0.328|1|7.655||32|14.483|0.057|1|14.83|0.364|1|11.744|0.38|1|7.402||32|15.214|0.189|0.042|0.646|19|1|55275.02271543|55276.94144233|55276.09127742|15.064|0.359|0.08|1.48800004|19|0|55275.02271543|55276.94144233|55276.09127742|11.422|0.445|0.102|2.06699991|18|0|55275.02271543|55276.94144233|55276.06394368|9.687|3.53|0.81|3.30299997|10|0|55275.02271543|55276.94144233|55276.06394368|26|31|4|1|1|0|||||||||||||||||||||||||||||0|||||||1201089401241004366|1|-0.000548270440367|0.0006093100017444|-0.999999664070367|111000000|
+J233938.60-895709.9|354.9108558|-89.9527734|1.1278|1.0092|0.1555|302.9482751|-27.1730836|270.1182381|-66.5564751|2058.963|475.187|89401241005867|0000m894_ab41-005867|0000m894_ab41|5867|17.556|0.175|6.2|0.953599989|17.169||0.5|0.978799999|12.522||1.6|1.07599998|9.035||1.0|0.996900022|0.997900009|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|23|0|23|0|22|0|22|23.792|23.729|22.945|23.011|0.0|0.0|0.0|0.0|0||0||0||0||15.059|2.4217|9.333|2.801|0.12|1.77059996|3.39560008|21.8|3.468|0.0|69.4459991|42.9609985|1098.33|24.035|0.373|12.6120005|12.9680004|298.636|9.694|0.179|16.814|0.198|1|0.261|15.732||32|0.319|11.873||32|0.825|8.576||32|0.576|17.576|0.228|0|16.428||32|13.05||32|9.668||32|17.075|0.198|1|16.051||32|12.698||32|9.152||32|16.865|0.211|1|15.805||32|12.424||32|8.695||32|16.729|0.231|1|15.628||32|12.193||32|8.318||32|16.55|0.237|1|15.476||32|11.988||32|8.021||32|16.303|0.223|1|15.323||32|11.806||32|7.812||32|15.948|0.188|1|15.102||32|11.643||32|7.622||32|15.438|0.135|1|14.784||32|11.493||32|7.384||32|17.479|0.914|0.191|3.123|19|1|55275.28745078|55277.33835439|55276.27407563|17.831|3.547|0.74|3.6559999|11|0|55275.28745078|55277.33835439|55276.27407563|13.001|2.348|0.5|1.829|12|0|55275.28745078|55277.33835439|55276.25877822|9.805|2.232|0.476|3.41199994|12|0|55275.28745078|55277.33835439|55276.25877822|-22|14|-22|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005867|1|0.0008210096285783|-0.0000731163640179|-0.999999660298536|131000000|
+J035354.76-895709.0|58.4781856|-89.9525209|0.178|0.1891|0.0382|302.8937769|-27.1613595|270.0625065|-66.6011696|2051.504|476.292|600089401241004196|0600m894_ab41-004196|0600m894_ab41|4196|15.109|0.037|29.0|0.996200025|14.901|0.066|16.4|0.883000016|12.545|0.303|3.6|1.08899999|9.549||-0.9|1.02199996|0.992799997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AABU|7|0000|21|21|14|21|1|20|0|20|22.541|22.822|21.907|21.695|0.0|0.0|0.0|0.0|0||0||0||0||143.389999|4.94040012|9.387|2.843|0.07|69.1299973|4.21750021|21.769|3.401|0.023|152.110001|42.4389992|1097.63|23.688|4.542|-10.9460001|12.007|298.306|9.335|0.266|14.998|0.058|1|0.261|14.642|0.064|1|0.319|12.033||32|0.825|8.826||32|0.576|15.672|0.061|1|15.484|0.075|1|13.221||32|9.837||32|15.259|0.058|1|14.961|0.064|1|12.858||32|9.402||32|15.013|0.06|1|14.629|0.061|1|12.57||32|9.054||32|14.764|0.059|1|14.339|0.058|1|12.339||32|8.758||32|14.514|0.056|1|14.083|0.055|1|12.137||32|8.497||32|14.332|0.056|1|13.892|0.054|1|11.956||32|8.26||32|14.224|0.059|1|13.763|0.056|1|11.79||32|8.042||32|14.158|0.064|1|13.664|0.059|1|11.639||32|7.842||32|15.102|0.12|0.026|0.537|20|0|55275.28745078|55277.20605032|55276.23257667|14.882|0.384|0.084|1.245|20|1|55275.28745078|55277.20605032|55276.23257667|12.33|1.078|0.241|3.98099995|15|0|55275.28745078|55277.20605032|55276.21367457||||3.74799991|9|0|55275.28745078|55277.20605032|55276.21367457|23|34|12|1|1|0||||||||||||||||||||||||||728598489|0.325|5.2|1|16.468|0.138|15.593|0.177|15.422|0.242|600089401241004196|1|0.0004332456432984|0.0007063888027348|-0.999999656656477|101000000|
+J212907.39-895708.7|322.2808194|-89.9524366|0.6491|0.5968|-0.2023|302.9732116|-27.158354|270.0944738|-66.5315815|2001.715|467.638|3004089401241005045|3004m894_ab41-005045|3004m894_ab41|5045|16.887|0.104|10.4|0.920000017|16.974|0.361|3.0|0.898199975|12.799||0.8|0.942200005|9.539||-0.8|0.931699991|0.920300007|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|6|24|1|24|1|23|0|23|24.278|24.652|23.744|23.41|0.0|0.0|0.0|0.0|0||0||0||0||27.882|2.6703999|9.38|2.808|0.596|10.2449999|3.40790009|21.768|3.342|0.0|33.3110008|43.5139999|1098.192|24.997|2.79|-10.0950003|12.1199999|298.952|9.775|0.448|16.273|0.11|0|0.261|16.435|0.541|0|0.319|12.642||32|0.825|8.873||32|0.576|17.06|0.132|0|16.437||32|13.831||32|9.932||32|16.534|0.11|0|16.754|0.541|0|13.467||32|9.449||32|16.232|0.106|0|15.799||32|13.19||32|8.941||32|16.03|0.108|0|15.706||32|12.958||32|8.443||32|15.876|0.113|1|15.67||32|12.751||32|8.04||32|15.727|0.116|1|15.67||32|12.572||32|7.747||32|15.518|0.111|1|15.629||32|12.407||32|7.569||32|15.251|0.1|1|16.021||32|12.256||32|7.447||32|16.983|0.574|0.117|3.247|23|1|55275.28745078|55277.20605032|55276.21366396|16.742|1.568|0.32|3.59299994|14|0|55275.28745078|55277.20605032|55276.21366396|13.371|3.707|0.773|3.81399989|10|0|55275.28745078|55277.20605032|55276.19640507||||2.29900002|8|0|55275.28745078|55277.20605032|55276.19640507|-17|-86|-30|0|2|0|||||||||||||||||||||||||||||0|||||||3004089401241005045|1|0.0006566547652254|-0.0005078717063316|-0.999999655435365|131000000|
+J002534.06-895708.6|6.3919225|-89.9523958|0.5735|0.5213|0.1348|302.9379436|-27.1754575|270.1189569|-66.5659636|2034.12|475.889|89401241005182|0000m894_ab41-005182|0000m894_ab41|5182|16.71|0.092|11.8|0.948099971|17.344|0.527|2.1|1.00300002|12.642||1.2|1.14600003|9.459||-0.8|1.00199997|1.02100003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|7|22|1|22|0|21|0|21|22.241|22.448|22.001|22.076|0.0|0.0|0.0|0.0|0||0||0||0||32.8110008|2.78309989|9.369|2.823|0.0|7.28299999|3.53530002|21.785|3.479|0.017|52.2000008|43.4099998|1098.513|24.557|0.0|-9.84039974|13.0459995|299.501|10.082|0.748|16.286|0.099|0|0.261|15.653||32|0.319|11.709||32|0.825|8.618||32|0.576|17.001|0.109|0|16.43||32|12.895||32|9.628||32|16.547|0.099|0|15.972||32|12.534||32|9.194||32|16.324|0.103|0|15.655||32|12.26||32|8.847||32|16.201|0.113|0|15.447||32|12.03||32|8.556||32|16.142|0.128|0|15.348||32|11.826||32|8.295||32|16.087|0.143|1|15.33||32|11.645||32|8.06||32|15.949|0.146|1|15.32||32|11.48||32|7.844||32|15.691|0.131|1|15.237||32|11.33||32|7.645||32|16.71|0.344|0.073|1.229|21|0|55275.28745078|55277.33835439|55276.28283929|17.225|2.987|0.637|2.08999991|10|0|55275.28745078|55277.33835439|55276.28283929|13.532|2.351|0.513|2.86500001|10|0|55275.28745078|55277.33835439|55276.26723075||||4.82600021|9|0|55275.28745078|55277.33835439|55276.26723075|22|21|27|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005182|1|0.0008256852757149|0.0000924975761214|-0.999999654843952|101000000|
+J111711.61-895708.3|169.2983803|-89.9523252|0.4721|0.4407|0.0725|302.9105119|-27.0844544|269.8821896|-66.5695176|2071.77|474.554|1802089401241004612|1802m894_ab41-004612|1802m894_ab41|4612|16.494|0.081|13.4|0.743200004|16.171|0.182|6.0|0.82130003|12.444|0.318|3.4|1.14300001|8.901||1.3|1.08899999|0.941799998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|11|20|1|20|2|19|0|19|19.753|20.357|19.225|19.986|0.0|0.0|0.0|0.0|0||0||0||0||40.0159988|2.99670005|9.435|2.731|0.071|21.4559994|3.59809995|21.837|3.412|0.098|166.800003|48.9039993|1097.793|24.681|1.774|17.5720005|13.0249996|297.83|9.571|0.628|16.524|0.249|1|0.261|15.578||32|0.319|11.794||32|0.825|8.478||32|0.576|17.063|0.231|0|16.112||32|13.061||32|9.531||32|16.785|0.249|1|15.897||32|12.619||32|9.054||32|16.806|0.33|1|15.96||32|12.3||32|8.702||32|16.917|0.452|1|15.727||32|12.061||32|8.408||32|16.193||32|15.526||32|11.876||32|8.08||32|16.113||32|15.345||32|11.697||32|7.778||32|16.062||32|15.18||32|11.501||32|7.521||32|16.028||32|15.028||32|11.306||32|7.303||32|16.481|0.273|0.061|1.177|19|0|55275.02271543|55276.94144233|55276.02180825|16.161|0.705|0.158|3.57800007|18|0|55275.02271543|55276.94144233|55276.02180825|11.87|1.007|0.231|1.20000005|10|0|55275.02271543|55276.94144233|55275.99081824|9.9|3.022|0.693|1.73899996|9|0|55275.02271543|55276.94144233|55275.99081824|3|-4|-49|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004612|1|-0.0008176103266699|0.0001545130139775|-0.999999653819481|111000000|
+J013906.78-895706.1|24.7782537|-89.9517211|0.4426|0.4413|0.1231|302.9207081|-27.1753941|270.1102876|-66.5809042|1995.019|466.794|89401241005005|0000m894_ab41-005005|0000m894_ab41|5005|16.418|0.074|14.6|0.879199982|17.211|0.476|2.3|1.04400003|13.098||-1.2|0.995700002|9.001||1.3|1.02600002|0.981899977|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACUU|3|0000|13|21|0|21|0|20|0|20|21.814|21.818|20.814|20.87|0.0|0.0|0.0|0.0|0||0||0||0||42.9360008|2.93199992|9.36|2.807|0.205|8.2322998|3.61290002|21.752|3.416|0.114|-54.4970016|45.6710014|1099.094|24.626|0.653|15.3470001|12.2130003|298.65|9.454|0.588|16.558|0.282|0|0.261|15.709||32|0.319|12.509||32|0.825|8.366||32|0.576|17.063|0.257|0|16.458||32|13.682||32|9.376||32|16.819|0.282|0|16.028||32|13.334||32|8.942||32|16.811|0.364|0|15.761||32|13.05||32|8.596||32|16.853|0.469|1|15.6||32|12.701||32|8.304||32|16.09||32|15.471||32|12.149||32|8.044||32|15.911||32|15.273||32|11.707||32|7.809||32|16.352|0.491|1|15.016||32|11.994|0.42|1|7.593||32|16.061|0.431|1|14.799||32|11.643|0.348|1|7.394||32|16.377|0.262|0.057|1.91|20|0|55275.28745078|55277.20605032|55276.23257667|16.868|1.87|0.408|2.8900001|12|0|55275.28745078|55277.20605032|55276.23257667||||3.06999993|7|0|55275.28745078|55277.20605032|55276.21367457|9.523|1.92|0.429|2.79299998|12|0|55275.28745078|55277.20605032|55276.21367457|37|29|12|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005005|1|0.0007650512912108|0.0003531510210702|-0.999999644990376|101000000|
+J161341.08-895705.3|243.4211829|-89.9514895|0.155|0.1628|0.0334|302.9740007|-27.097334|269.9455294|-66.5173155|2041.229|478.856|2403089401241004162|2403m894_ab41-004162|2403m894_ab41|4162|15.081|0.035|31.0|0.828999996|14.676|0.054|20.3|0.958400011|11.025|0.083|13.0|0.885999978|8.645|0.251|4.3|0.957400024|0.904699981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|000n|AAAB|15|0000|23|23|20|23|9|22|0|22|23.334|23.588|22.468|22.43|0.0|0.0|0.0|0.0|0||0||0||0||147.110001|4.74160004|9.38|2.666|0.266|85.0179977|4.19180012|21.784|3.294|0.077|616.5|47.4059982|1097.787|24.782|0.982|55.1910019|12.7370005|298.63|9.789|0.494|15.008|0.072|1|0.261|14.661|0.089|1|0.319|11.098|0.172|1|0.825|8.439|0.322|1|0.576|15.652|0.074|1|15.4|0.094|1|12.488|0.207|0|9.569|0.365|1|15.269|0.072|1|14.98|0.089|1|11.923|0.172|1|9.015|0.322|1|15.119|0.082|1|14.824|0.1|1|11.647|0.174|1|8.653|0.309|1|14.998|0.09|1|14.718|0.112|1|11.538|0.194|1|8.475|0.336|1|14.827|0.093|1|14.546|0.115|1|11.537|0.234|1|8.389|0.385|1|14.548|0.085|1|14.28|0.106|1|11.573|0.286|1|8.255|0.413|1|14.147|0.068|1|13.955|0.091|1|11.616|0.345|1|8.115|0.434|1|13.788|0.057|1|13.662|0.08|1|11.676|0.42|1|7.984|0.453|1|15.093|0.062|0.013|0.36|22|0|55275.02271543|55276.94144233|55276.08997277|14.677|0.228|0.047|0.940999985|22|0|55275.02271543|55276.94144233|55276.08997277|11.007|0.366|0.078|1.653|21|0|55275.02271543|55276.94144233|55276.06630705|8.659|1.041|0.222|5.04300022|17|0|55275.02271543|55276.94144233|55276.06630705|-9|-9|-22|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004162|1|-0.0003788235305007|-0.0007571921992114|-0.999999641576289|121000000|
+J201013.39-895704.8|302.555812|-89.9513353|1.1383|1.1769|-0.364|302.9834045|-27.1445487|270.065726|-66.5196772|2043.344|479.357|3004089401241005631|3004m894_ab41-005631|3004m894_ab41|5631|17.633|0.189|5.7|0.852100015|17.386||0.0|0.843500018|12.893||0.6|1.08500004|9.591||-1.6|1.06700003|0.957000017|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|24|1|24|0|23|0|23|23.749|23.707|22.911|22.889|0.0|0.0|0.0|0.0|0||0||0||0||14.0170002|2.44499993|9.339|2.771|0.0|0.122709997|3.44140005|21.772|3.323|0.058|26.4029999|41.9790001|1097.448|24.444|0.0|-18.6229992|11.552|298.724|9.565|0.715|17.215|0.396|1|0.261|16.444||32|0.319|12.558||32|0.825|9.008||32|0.576|17.809|0.383|0|17.139||32|13.96||32|10.011||32|17.476|0.396|1|16.763||32|13.383||32|9.584||32|17.31|0.436|1|16.47||32|13.119||32|9.254||32|16.869|0.361|1|16.076||32|12.874||32|8.978||32|16.156|0.226|1|16.177|0.386|1|12.656||32|8.732||32|15.564|0.155|1|15.587|0.265|1|12.814||32|8.512||32|15.23|0.133|1|15.187|0.213|1|12.442||32|8.31||32|15.061|0.131|1|14.917|0.191|1|12.291||32|8.122||32|17.664|1.055|0.215|4.008|18|0|55275.28745078|55277.20605032|55276.21366396||||4.0079999|11|0|55275.28745078|55277.20605032|55276.21366396|13.966|5.481|1.143|3.3210001|13|0|55275.28745078|55277.20605032|55276.19640507||||4.01000023|10|0|55275.28745078|55277.20605032|55276.19640507|6|-35|55|0|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005631|1|0.0004570579058024|-0.0007158973487014|-0.999999639294463|131000000|
+J184040.79-895704.7|280.1699652|-89.9513103|0.1926|0.2015|-0.0415|302.9865629|-27.1258611|270.0215712|-66.5127827|2092.209|471.598|3004089401241004308|3004m894_ab41-004308|3004m894_ab41|4308|15.261|0.038|28.5|0.842599988|15.393|0.088|12.4|1.14900005|12.819|0.418|2.6|1.11000001|9.511||-0.3|0.949100018|1.00999999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AACU|7|0000|23|23|9|23|1|22|0|22|22.744|22.705|21.992|21.874|0.0|0.0|0.0|0.0|0||0||0||0||124.639999|4.37769985|9.435|2.784|0.311|43.9199982|3.54909992|21.772|3.289|0.074|118.089996|45.4210014|1097.678|24.991|2.523|-4.33640003|12.4300003|298.575|9.821|1.481|15.088|0.062|1|0.261|15.251|0.11|1|0.319|11.84||32|0.825|8.385||32|0.576|15.779|0.066|0|16.02|0.119|0|13.13||32|9.575||32|15.349|0.062|1|15.57|0.11|1|12.665||32|8.961||32|15.152|0.067|1|15.35|0.117|1|12.333||32|9.17|0.497|1|15.009|0.072|1|15.177|0.123|1|12.084||32|8.544|0.355|17|14.858|0.076|1|14.983|0.123|1|11.894||32|8.09|0.287|17|14.706|0.077|1|14.775|0.12|1|11.718||32|7.769|0.257|17|14.553|0.078|1|14.556|0.113|1|11.506||32|7.525|0.243|17|14.395|0.078|1|14.346|0.107|1|11.273||32|7.311|0.233|17|15.262|0.115|0.024|0.414|22|0|55275.28745078|55277.20605032|55276.18490037|15.387|0.533|0.111|2.24399996|22|1|55275.28745078|55277.20605032|55276.18490037|12.625|2.075|0.442|6.46999979|15|0|55275.28745078|55277.20605032|55276.16554954||||2.83299994|8|0|55275.28745078|55277.20605032|55276.16554954|16|-3|-34|0|0|0||||||||||||||||||||||||||970597151|0.227|-9.5|1|16.092|0.108|15.801|0.202|15.639||3004089401241004308|1|0.0001500474222075|-0.0008364440730479|-0.999999638923477|131000000|
+J164320.07-895702.0|250.8336531|-89.9505587|0.1051|0.1072|0.0134|302.9790032|-27.1019297|269.9592694|-66.5140028|2024.48|479.32|2403089401241004004|2403m894_ab41-004004|2403m894_ab41|4004|13.77|0.026|41.2|1.06500006|13.8|0.032|33.4|1.01100004|12.664||1.0|1.07200003|9.314||0.5|0.998099983|1.03400004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|23|23|23|23|1|22|0|22|23.618|23.704|22.873|22.849|0.0|0.0|0.0|0.0|0||0||0||0||491.950012|11.9429998|9.416|2.726|0.084|190.509995|5.69780016|21.75|3.325|0.121|44.2529984|46.0089989|1097.751|25.092|2.781|5.62349987|12.0979996|298.812|9.92|0.802|13.797|0.028|0|0.261|13.799|0.035|0|0.319|12.282||32|0.825|8.4||32|0.576|14.402|0.028|0|14.549|0.038|0|13.467||32|9.572||32|14.058|0.028|0|14.118|0.035|0|13.107||32|8.976||32|13.948|0.032|0|13.944|0.039|0|12.818||32|8.512||32|13.908|0.038|1|13.856|0.044|1|12.587||32|8.871|0.519|1|13.882|0.045|1|13.783|0.049|1|12.382||32|8.596|0.513|1|13.834|0.05|1|13.679|0.053|1|12.201||32|8.414|0.539|1|13.744|0.054|1|13.53|0.054|1|11.954||32|7.484||32|13.636|0.056|1|13.374|0.053|1|11.625||32|7.317||32|13.76|0.051|0.011|0.334|22|0|55275.02271543|55276.94144233|55276.08997277|13.801|0.094|0.02|0.384000003|22|0|55275.02271543|55276.94144233|55276.08997277|14.394|5.686|1.212|4.27199984|12|0|55275.02271543|55276.94144233|55276.06630705|10.334|5.128|1.093|3.26900005|9|0|55275.02271543|55276.94144233|55276.06630705|22|13|3|1|0|0||||||||||||||||||||||||||1000254580|0.511|2.5|1|14.296|0.029|13.826|0.042|13.949|0.062|2403089401241004004|1|-0.0002833048449854|-0.0008150818647332|-0.99999962768989|121000000|
+J190135.77-895700.6|285.3990468|-89.9501706|0.8257|0.8014|-0.221|302.987851|-27.1303532|270.0331999|-66.5126649|2081.904|478.01|3004089401241005006|3004m894_ab41-005006|3004m894_ab41|5006|17.139|0.13|8.4|0.883000016|16.972||1.1|0.949199975|12.657|0.346|3.1|1.023|9.255||0.7|0.960200012|0.949800014|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|3|23|0|23|0|22|1|22|22.777|23.266|22.18|22.033|0.0|0.0|0.0|0.0|0||0||0||0||22.1100006|2.63790011|9.389|2.748|0.093|3.68470001|3.28629994|21.789|3.361|0.121|137.199997|43.7010002|1097.755|25.028|0.498|8.0060997|11.7309999|298.711|9.899|0.684|16.785|0.318|1|0.261|16.514|0.365|1|0.319|12.29|0.358|1|0.825|8.499||32|0.576|17.506|0.352|0|17.519|0.498|0|13.87|0.519|0|9.609||32|17.046|0.318|1|16.833|0.365|1|13.115|0.358|1|9.075||32|16.57|0.264|1|16.306|0.288|1|12.623|0.292|1|8.635||32|15.918|0.179|1|15.76|0.215|1|12.273|0.261|1|8.258||32|15.287|0.121|1|15.212|0.157|1|11.988|0.242|1|8.603|0.471|1|14.842|0.095|1|14.781|0.124|1|11.708|0.22|1|8.216|0.4|17|14.574|0.086|1|14.486|0.11|1|11.425|0.198|1|7.924|0.364|17|14.39|0.084|1|14.266|0.104|1|11.161|0.178|1|7.739|0.361|17|17.064|0.529|0.11|2.154|20|0|55275.28745078|55277.20605032|55276.18490037|17.69|3.263|0.68|2.66199994|12|0|55275.28745078|55277.20605032|55276.18490037|12.414|1.386|0.295|4.67700005|15|0|55275.28745078|55277.20605032|55276.16554954|12.882|||5.02299976|10|2|55275.28745078|55277.20605032|55276.16554954|0|-20|-3|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005006|1|0.000230936636481|-0.0008384646537909|-0.999999621822576|131000000|
+J060749.80-895700.5|91.9575135|-89.9501468|0.6272|0.6904|-0.1337|302.8769069|-27.1375744|269.9957103|-66.6105329|2109.74|467.032|1201089401241005061|1201m894_ab41-005061|1201m894_ab41|5061|16.936|0.109|10.0|0.978699982|17.39||-0.1|0.960500002|12.956||0.3|1.00600004|9.346|0.453|2.4|1.06200004|0.997699976|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|AUUC|9|0000|4|21|0|21|0|20|0|20|21.678|21.718|20.322|20.877|0.0|0.0|0.0|0.0|0||0||0||0||26.6490002|2.67199993|9.373|2.808|0.231|-0.486669987|3.49259996|21.787|3.476|0.088|14.6969995|44.7220001|1098.727|24.537|0.0|28.9510002|12.0819998|298.351|9.521|0.718|17.216|0.487|0|0.261|16.25||32|0.319|12.039||32|0.825|8.541||32|0.576|17.556|0.379|0|16.807||32|13.215||32|9.502||32|17.477|0.487|0|16.569||32|12.864||32|9.117||32|16.83||32|16.359||32|12.581||32|8.879||32|16.971||32|16.126||32|12.348||32|8.69||32|16.877||32|15.927||32|12.15||32|8.484||32|16.694||32|15.743||32|11.968||32|8.262||32|16.532||32|15.58||32|11.807||32|8.008||32|16.378||32|15.426||32|11.654||32|7.719||32|16.951|0.533|0.116|4.245|20|0|55275.28745078|55277.20605032|55276.18847532||||2.44300008|11|0|55275.28745078|55277.20605032|55276.18847532|14.181|8.135|1.819|4.0630002|9|0|55275.28745078|55277.20605032|55276.16736816|9.29|1.689|0.378|2.59500003|13|0|55275.28745078|55277.20605032|55276.16736816|-45|61|31|1|1|0|||||||||||||||||||||||||||||0|||||||1201089401241005061|1|-0.000029721303091|0.0008695943304469|-0.999999621461101|111000000|
+J084713.76-895659.6|131.8073702|-89.9499077|0.287|0.2777|-0.0825|302.8826747|-27.1039024|269.9159247|-66.5980247|2021.584|480.49|1201089401241004537|1201m894_ab41-004537|1201m894_ab41|4537|15.83|0.053|20.3|0.931400001|15.574|0.113|9.6|0.943700016|12.299|0.246|4.4|1.01100004|9.263||0.5|0.992999971|0.965799987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABBU|7|0000|18|20|6|20|2|19|0|19|21.155|21.225|20.752|20.505|0.0|0.0|0.0|0.0|0||0||0||0||73.8190002|3.63470006|9.423|2.786|0.072|37.1780014|3.86339998|21.798|3.496|0.172|190.770004|43.2879982|1096.084|23.519|4.69|6.27250004|12.4919996|298.971|9.726|1.335|15.304|0.043|1|0.261|14.941|0.109|1|0.319|12.224|0.389|1|0.825|8.36||32|0.576|16.166|0.054|1|15.91|0.142|1|13.072||32|9.545||32|15.565|0.043|1|15.26|0.109|1|13.049|0.389|1|8.936||32|15.095|0.036|1|14.798|0.092|1|12.501|0.301|1|8.513||32|14.732|0.032|1|14.44|0.082|1|12.138|0.269|1|8.195||32|14.502|0.031|1|14.19|0.079|1|11.931|0.268|1|7.898||32|14.375|0.033|1|14.04|0.081|1|11.827|0.289|1|7.677||32|14.306|0.036|1|13.968|0.088|1|11.79|0.326|1|7.474||32|14.27|0.039|1|13.928|0.098|1|11.789|0.374|1|7.252||32|15.834|0.208|0.047|0.786|19|0|55275.02271543|55276.94144233|55276.09127742|15.578|0.512|0.115|3.64700007|19|0|55275.02271543|55276.94144233|55276.09127742|12.234|1.393|0.32|3.80699992|11|1|55275.02271543|55276.94144233|55276.06394368|10.32|7.09|1.627|4.73999977|9|0|55275.02271543|55276.94144233|55276.06394368|8|-26|65|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241004537|1|-0.0005828172474699|0.0006516768921473|-0.999999617820569|111000000|
+J141003.46-895659.2|212.5144366|-89.9497899|1.0791|1.0632|0.3373|302.950884|-27.0808705|269.8936742|-66.5336843|2109.413|468.255|2403089401241006022|2403m894_ab41-006022|2403m894_ab41|6022|17.557|0.175|6.2|0.967899978|17.009||1.1|0.959999979|12.679||1.0|0.905300021|8.961||1.1|0.881399989|0.927200019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|0|23|0|23|0|22|0|22|23.528|23.64|22.55|22.595|0.0|0.0|0.0|0.0|0||0||0||0||15.0430002|2.42350006|9.416|2.614|0.0|3.47000003|3.22429991|21.784|3.258|0.047|45.7140007|44.3359985|1097.18|24.284|2.368|14.9359999|13.158|298.185|9.883|0.959|17.147|0.363|1|0.261|16.343||32|0.319|12.149||32|0.825|8.575||32|0.576|17.823|0.381|1|17.031||32|13.54||32|9.619||32|17.408|0.363|1|16.662||32|12.974||32|9.151||32|17.133|0.366|1|16.338||32|13.152|0.485|1|8.709||32|16.751|0.319|1|15.912||32|12.509|0.332|1|8.43||32|16.271|0.247|1|16.126|0.439|1|12.042|0.261|1|8.24||32|15.902|0.208|1|15.683|0.345|1|11.736|0.232|1|8.006||32|15.682|0.197|1|15.412|0.313|1|11.527|0.223|1|7.748||32|15.547|0.2|1|15.249|0.309|1|11.354|0.218|1|7.479||32|17.591|0.971|0.203|3.792|19|0|55275.02271543|55276.94144233|55276.02956479|17.707|3.371|0.703|3.09599996|13|0|55275.02271543|55276.94144233|55276.02956479|13.543|4.125|0.88|5.77400017|11|0|55275.02271543|55276.94144233|55276.00315326|9.846|2.517|0.537|2.65400004|14|0|55275.02271543|55276.94144233|55276.00315326|18|25|-63|0|0|1|||||||||||||||||||||||||||||0|||||||2403089401241006022|1|-0.0007389715066115|-0.0004710385768263|-0.999999616021812|121000000|
+J032224.64-895657.5|50.6027007|-89.949331|0.7513|0.7797|0.2598|302.897054|-27.1682192|270.0809752|-66.5998432|2069.875|482.877|600089401241004974|0600m894_ab41-004974|0600m894_ab41|4974|17.202|0.145|7.5|0.953800023|16.452|0.235|4.6|0.847100019|12.611|0.329|3.3|1.02900004|9.565||-0.7|1.08299994|0.973699987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|2|21|1|21|0|20|0|20|22.465|22.995|22.011|21.883|0.0|0.0|0.0|0.0|0||0||0||0||20.8630009|2.78299999|9.377|2.857|0.0|16.5629997|3.58949995|21.771|3.397|0.256|143.119995|43.3839989|1097.443|23.772|2.33|-8.81770039|11.8240004|298.806|9.37|1.145|16.634|0.255|1|0.261|15.432|0.142|1|0.319|11.703||32|0.825|8.85||32|0.576|17.439|0.301|0|16.427|0.188|0|12.895||32|9.862||32|16.895|0.255|1|15.751|0.142|1|12.528||32|9.426||32|16.484|0.225|1|15.304|0.121|1|12.255||32|9.08||32|16.106|0.196|1|14.937|0.107|1|12.024||32|8.787||32|15.699|0.162|1|14.609|0.096|1|11.82||32|8.524||32|15.327|0.136|1|14.316|0.087|1|11.639||32|8.287||32|15.061|0.124|1|14.069|0.08|1|11.475||32|8.07||32|14.865|0.119|1|13.856|0.076|1|11.324||32|7.87||32|17.036|0.512|0.112|3.039|18|0|55275.28745078|55277.20605032|55276.23257667|16.487|1.246|0.272|2.98300004|17|0|55275.28745078|55277.20605032|55276.23257667|12.503|1.274|0.285|2.66499996|14|0|55275.28745078|55277.20605032|55276.21367457||||2.03800011|7|0|55275.28745078|55277.20605032|55276.21367457|-23|6|41|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004974|1|0.0005612861477732|0.0006833866114141|-0.999999608970223|101000000|
+J210300.96-895656.7|315.7540264|-89.9491075|1.2161|1.176|-0.4058|302.9799431|-27.1557877|270.0915207|-66.5251724|2012.857|480.557|3004089401241005625|3004m894_ab41-005625|3004m894_ab41|5625|17.701|0.199|5.5|0.996900022|17.091||0.7|0.962899983|12.47||1.8|0.994700015|9.391||0.4|1.00100005|0.986000001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|24|0|24|0|23|0|23|23.981|24.423|23.435|23.184|0.0|0.0|0.0|0.0|0||0||0||0||13.1660004|2.41109991|9.372|2.748|0.269|2.48149991|3.35750008|21.737|3.257|0.156|77.5110016|42.7400017|1097.182|24.643|1.827|5.05210018|11.3529997|298.589|9.444|0.784|17.589|0.346|0|0.261|16.669||32|0.319|12.774||32|0.825|8.729||32|0.576|17.966|0.279|0|17.106||32|14.203||32|9.751||32|17.85|0.346|0|16.988||32|13.599||32|9.305||32|17.402||32|16.705||32|13.199||32|8.954||32|17.543||32|16.474||32|12.748||32|8.697||32|17.436||32|16.273||32|12.36||32|8.534||32|16.968||32|16.093||32|12.08||32|8.407||32|17.193|0.502|1|15.929||32|11.906||32|8.188||32|16.723|0.374|1|15.776||32|11.809||32|7.958||32|17.693|1.01|0.206|4.059|21|0|55275.28745078|55277.20605032|55276.21366396|18.079|4.689|0.957|2.73300004|11|0|55275.28745078|55277.20605032|55276.21366396|12.967|2.417|0.504|3.14299989|14|0|55275.28745078|55277.20605032|55276.19640507|11.641|||2.45499992|12|0|55275.28745078|55277.20605032|55276.19640507|-27|20|-7|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005625|1|0.0006362927651793|-0.0006197618274695|-0.999999605513319|131000000|
+J120404.81-895655.7|181.0200517|-89.9488106|0.2795|0.2561|0.0428|302.9201207|-27.0780555|269.8713368|-66.5597449|2046.261|486.028|1802089401241004368|1802m894_ab41-004368|1802m894_ab41|4368|15.746|0.05|21.9|1.04400003|15.641|0.115|9.4|1.01800001|12.468|0.31|3.5|0.846800029|9.074||0.9|0.948199987|0.962599993|2|0|0.0|0.0|0.0|0.0|0000|0000|0|12nn|ABBU|7|0000|19|21|5|21|3|20|1|20|21.663|21.628|20.916|21.023|0.0|0.0|0.0|0.0|0||0||0||0||79.7600021|3.64510012|9.423|2.772|0.132|34.9690018|3.70300007|21.786|3.395|0.113|163.229996|46.6809998|1095.641|23.845|3.55|11.6140003|12.7869997|298.247|9.857|1.387|15.335|0.047|1|0.261|15.237|0.125|1|0.319|11.472||32|0.825|8.165||32|0.576|16.118|0.056|1|16.16|0.157|1|12.694||32|9.164||32|15.596|0.047|1|15.556|0.125|1|12.297||32|8.741||32|15.245|0.044|1|15.168|0.113|1|11.986||32|8.323||32|14.95|0.042|1|14.873|0.107|1|11.752||32|7.95||32|14.738|0.041|1|14.641|0.104|1|11.555||32|7.68||32|14.58|0.042|1|14.424|0.1|1|11.362||32|7.467||32|14.423|0.043|1|14.183|0.093|1|11.183||32|7.303||32|14.273|0.043|1|13.954|0.087|1|11.015||32|7.184||32|15.774|0.166|0.036|0.828|20|0|55275.02271543|55276.94144233|55276.02464001|15.638|0.739|0.161|3.89899993|19|1|55275.02271543|55276.94144233|55276.02464001|12.242|1.497|0.335|4.79699993|13|1|55275.02271543|55276.94144233|55275.99534108|10.325|6.89|1.541|3.49699998|11|0|55275.02271543|55276.94144233|55275.99534108|-53|7|-17|2|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004368|1|-0.000893281063516|-0.000015904995623|-0.999999600897907|121000000|
+J160121.82-895655.1|240.34095|-89.9486514|0.5256|0.5808|0.1532|302.9744281|-27.0934472|269.9362365|-66.5160747|2048.057|486.466|2403089401241004813|2403m894_ab41-004813|2403m894_ab41|4813|16.781|0.093|11.7|0.888700008|16.936|0.324|3.3|0.977199972|13.119||0.1|1.00300002|9.514||0.0|0.930599988|0.946399987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|5|23|2|23|1|22|0|22|22.694|23.01|22.052|21.947|0.0|0.0|0.0|0.0|0||0||0||0||30.7460003|2.62470007|9.418|2.659|0.0|10.6040001|3.16599989|21.789|3.278|0.0|2.36100006|43.6419983|1097.655|24.63|0.0|0.0396689996|12.3760004|298.395|9.938|1.411|16.587|0.303|1|0.261|16.179|0.451|1|0.319|12.121||32|0.825|8.282||32|0.576|17.286|0.322|1|16.371||32|13.493||32|9.481||32|16.848|0.303|1|16.498|0.451|1|12.946||32|8.858||32|16.345|0.248|1|15.882|0.332|1|12.425||32|9.193|0.533|1|15.713|0.171|1|15.296|0.24|1|12.711|0.535|1|8.193||32|15.202|0.129|1|14.849|0.192|1|12.213|0.408|1|7.999||32|14.87|0.112|1|14.588|0.177|1|11.947|0.375|1|7.805||32|14.665|0.107|1|14.462|0.183|1|11.88|0.409|1|7.609||32|14.538|0.11|1|14.424|0.204|1|11.978|0.516|1|7.416||32|16.907|0.371|0.077|1.584|22|1|55275.02271543|55276.94144233|55276.08997277|17.0|2.221|0.463|3.41000009|16|0|55275.02271543|55276.94144233|55276.08997277||||3.44899988|10|0|55275.02271543|55276.94144233|55276.06630705||||3.01900005|10|0|55275.02271543|55276.94144233|55276.06630705|-5|31|14|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004813|1|-0.0004434745363825|-0.0007787864247485|-0.999999598410939|121000000|
+J063925.65-895654.8|99.8569143|-89.9485711|0.9836|1.0883|-0.27|302.874208|-27.1308385|269.9778217|-66.6113771|2094.782|478.293|1201089401241005252|1201m894_ab41-005252|1201m894_ab41|5252|17.422|0.17|6.4|0.944199979|17.352||-0.6|0.931699991|12.672||1.1|1.06700003|9.522||-1.2|1.07200003|0.999000013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|3|22|0|22|0|21|0|21|21.927|21.774|20.93|21.503|0.0|0.0|0.0|0.0|0||0||0||0||17.0230007|2.66860008|9.374|2.77|0.097|-2.24329996|3.61470008|21.77|3.425|0.241|48.1339989|43.5789986|1098.719|24.124|1.229|-14.3769999|12.3050003|298.715|9.584|1.165|16.524||32|0.261|16.3||32|0.319|12.305||32|0.825|8.56||32|0.576|17.862|0.537|0|17.14||32|13.633||32|9.8||32|16.785||32|16.619||32|13.13||32|9.136||32|16.629||32|16.336||32|12.765||32|8.574||32|16.521||32|16.101||32|12.455||32|8.143||32|16.323||32|15.898||32|12.133||32|8.523|0.497|17|15.871||32|15.719||32|11.835||32|8.233|0.474|17|15.54|0.238|1|15.268||32|12.3|0.516|1|8.04|0.484|17|14.475|0.103|1|14.933|0.353|1|12.006|0.452|1|7.878|0.501|17|17.42|0.906|0.193|3.713|18|0|55275.02271543|55277.20605032|55276.13548623||||2.40499997|8|0|55275.02271543|55277.20605032|55276.13548623|13.269|3.779|0.825|3.38800001|10|0|55275.02271543|55277.20605032|55276.11286089||||3.53200006|8|0|55275.02271543|55277.20605032|55276.11286089|5|-58|-73|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005252|1|-0.0001536592068459|0.0008843535157631|-0.999999597153773|111000000|
+J153401.64-895654.6|233.5068458|-89.9485013|0.4396|0.4659|0.1244|302.9695959|-27.0890776|269.9231312|-66.5192888|2064.101|485.893|2403089401241004718|2403m894_ab41-004718|2403m894_ab41|4718|16.533|0.076|14.3|0.811399996|17.163|0.403|2.7|0.841300011|12.544||1.5|1.11500001|8.917||1.4|1.04700005|0.947399974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|9|23|0|23|1|22|0|22|23.063|23.217|22.008|22.112|0.0|0.0|0.0|0.0|0||0||0||0||38.6329994|2.71029997|9.392|2.634|0.05|8.6072998|3.19320011|21.767|3.259|0.0|64.5670013|43.8209991|1097.222|24.519|0.606|17.9589996|12.507|298.275|9.629|0.676|16.256||32|0.261|15.979||32|0.319|12.238||32|0.825|8.773||32|0.576|16.689||32|16.625||32|13.423||32|9.779||32|16.517||32|16.298||32|13.063||32|9.349||32|16.642||32|16.147||32|12.79||32|8.942||32|16.547||32|16.102||32|12.559||32|8.61||32|16.344||32|16.327||32|12.356||32|8.238||32|16.163||32|15.79||32|12.175||32|7.924||32|15.998||32|15.55||32|12.011||32|7.767||32|15.847||32|15.407||32|11.861||32|7.679||32|16.539|0.383|0.08|1.375|22|0|55275.02271543|55276.94144233|55276.08997277|17.121|1.511|0.315|3.21000004|17|0|55275.02271543|55276.94144233|55276.08997277|12.989|2.757|0.588|3.66199994|11|0|55275.02271543|55276.94144233|55276.06630705|9.64|2.696|0.575|2.16700006|12|0|55275.02271543|55276.94144233|55276.06630705|7|-14|24|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004718|1|-0.0005345529462872|-0.0007225873908477|-0.999999596060223|121000000|
+J222433.32-895652.5|336.1388605|-89.9479444|0.1429|0.1366|-0.0136|302.9669012|-27.1698778|270.1195794|-66.5396057|2103.128|476.669|89401241004360|0000m894_ab41-004360|0000m894_ab41|4360|14.637|0.03|35.6|0.905200005|14.722|0.055|19.9|0.988300025|12.851|0.395|2.7|0.996999979|9.012||1.4|1.06200004|0.984799981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AACU|7|0000|25|25|19|25|0|24|1|24|24.596|24.745|23.969|23.823|0.0|0.0|0.0|0.0|0||0||0||0||221.360001|6.20970011|9.337|2.8|0.041|81.4960022|4.09560013|21.755|3.369|0.019|114.669998|41.7420006|1097.592|24.489|0.0|16.2269993|11.5819998|298.471|9.606|0.675|14.623|0.048|1|0.261|14.713|0.134|1|0.319|11.963||32|0.825|8.577||32|0.576|15.262|0.05|1|15.484|0.146|1|13.142||32|9.591||32|14.884|0.048|1|15.032|0.134|1|12.788||32|9.153||32|14.708|0.053|1|14.806|0.141|1|12.504||32|8.767||32|14.57|0.058|1|14.654|0.152|1|12.269||32|8.335||32|14.462|0.063|1|14.537|0.164|1|12.068||32|8.596|0.443|1|14.408|0.071|1|14.484|0.185|1|11.889||32|8.276|0.398|1|14.396|0.081|1|14.505|0.219|1|11.725||32|8.019|0.373|1|14.381|0.092|1|14.571|0.267|1|11.573||32|7.74|0.339|1|14.632|0.107|0.021|0.461|24|0|55275.28745078|55277.33835439|55276.25865158|14.686|0.262|0.052|1.28600001|24|0|55275.28745078|55277.33835439|55276.25865158|12.588|1.359|0.277|4.16900015|16|0|55275.28745078|55277.33835439|55276.24398629|9.372|2.844|0.581|5.375|13|0|55275.28745078|55277.33835439|55276.24398629|27|36|2|1|1|0||||||||||||||||||||||||||1201037798|0.106|104.9|1|15.158|0.05|14.82|0.098|14.568|0.127|89401241004360|1|0.0008308868651553|-0.0003675243724052|-0.999999587276341|131000000|
+J193731.92-895651.6|294.3830075|-89.9476787|0.1574|0.1624|-0.0417|302.9895251|-27.1385969|270.0541978|-66.513045|2062.506|488.246|3004089401241004221|3004m894_ab41-004221|3004m894_ab41|4221|14.917|0.033|32.6|0.748899996|14.919|0.064|17.0|0.903400004|13.126|0.534|2.0|0.932799995|9.564||-0.2|1.00699997|0.893299997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AACU|7|0000|23|23|16|23|0|22|0|22|23.797|23.576|22.944|22.824|0.0|0.0|0.0|0.0|0||0||0||0||171.149994|5.25479984|9.375|2.779|0.0|67.9789963|3.99670005|21.773|3.282|0.0|89.0319977|43.7509995|1097.393|24.886|0.0|-2.60039997|11.842|298.401|9.538|0.452|14.901|0.064|0|0.261|15.002|0.163|0|0.319|12.186||32|0.825|8.584||32|0.576|15.525|0.065|0|15.707|0.168|0|13.505||32|9.72||32|15.162|0.064|0|15.321|0.163|0|13.011||32|9.16||32|15.046|0.075|1|15.237|0.197|1|12.637||32|8.753||32|15.023|0.091|1|15.324|0.265|1|12.359||32|8.444||32|15.034|0.111|1|15.535|0.386|1|12.118||32|8.191||32|15.052|0.133|1|15.013||32|11.879||32|7.968||32|15.091|0.16|1|15.044||32|11.621||32|7.767||32|15.143|0.193|1|15.06||32|12.097|0.502|1|7.577||32|14.92|0.095|0.02|0.328|22|0|55275.28745078|55277.20605032|55276.18490037|14.956|0.274|0.057|1.13900006|22|0|55275.28745078|55277.20605032|55276.18490037|12.989|2.26|0.482|3.30900002|14|0|55275.28745078|55277.20605032|55276.16554954|13.515|||4.05700016|12|0|55275.28745078|55277.20605032|55276.16554954|0|-20|-58|0|0|1||||||||||||||||||||||||||970686720|0.341|12.0|1|15.96|0.098|15.193|0.122|14.964|0.18|3004089401241004221|1|0.000376991464636|-0.0008317286566803|-0.999999583052352|131000000|
+J030041.64-895651.5|45.1735285|-89.9476629|0.3002|0.3101|0.0824|302.9004681|-27.1723845|270.0928933|-66.5978012|2083.281|484.441|600089401241004432|0600m894_ab41-004432|0600m894_ab41|4432|15.987|0.057|19.1|1.176|15.657|0.113|9.6|0.841300011|13.03|0.474|2.3|1.14499998|8.977||1.4|1.09300005|1.05999994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|17|21|3|21|1|20|0|20|22.836|23.137|22.723|22.18|0.0|0.0|0.0|0.0|0||0||0||0||63.8839989|3.34089994|9.397|2.859|0.198|34.4570007|3.59689999|21.735|3.35|0.06|97.2919998|42.5149994|1097.411|23.792|0.963|16.6700001|12.0050001|298.695|9.453|0.624|15.956|0.116|0|0.261|15.485|0.213|0|0.319|12.199||32|0.825|8.724||32|0.576|16.551|0.113|0|16.258|0.232|0|13.555||32|9.638||32|16.217|0.116|0|15.804|0.213|0|13.024||32|9.3||32|16.116|0.137|1|15.574|0.224|1|12.604||32|8.953||32|16.113|0.169|1|15.388|0.234|1|12.293||32|8.659||32|16.115|0.204|1|15.214|0.24|1|12.046||32|8.398||32|16.061|0.229|1|15.082|0.252|1|11.805||32|8.161||32|15.99|0.249|1|14.991|0.269|1|12.226|0.473|1|7.944||32|15.904|0.264|1|14.925|0.291|1|11.863|0.389|1|7.745||32|15.979|0.252|0.055|1.246|20|0|55275.28745078|55277.20605032|55276.23257667|15.658|0.39|0.085|1.63199997|20|0|55275.28745078|55277.20605032|55276.23257667|12.801|2.155|0.482|4.65700006|13|0|55275.28745078|55277.20605032|55276.21367457|9.799|1.927|0.431|2.56500006|9|0|55275.28745078|55277.20605032|55276.21367457|9|-29|-5|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004432|1|0.0006439502098944|0.0006478626634671|-0.999999582800961|101000000|
+J200010.91-895651.3|300.0454907|-89.9475853|0.471|0.4847|-0.1525|302.9881879|-27.1436324|270.0658547|-66.5153234|2048.996|489.256|3004089401241004881|3004m894_ab41-004881|3004m894_ab41|4881|16.639|0.082|13.2|0.92900002|16.615|0.256|4.2|0.887399971|12.954|0.443|2.5|0.917200029|9.595||-1.4|1.15199995|0.966799974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|8|24|0|24|1|23|0|23|23.55|23.678|22.939|22.877|0.0|0.0|0.0|0.0|0||0||0||0||35.0390015|2.66000009|9.33|2.752|0.0|14.2550001|3.36120009|21.764|3.328|0.032|104.349998|42.5359993|1097.136|24.625|3.651|-16.1679993|11.5030003|298.918|9.657|1.171|16.321|0.152|1|0.261|16.001|0.223|1|0.319|12.338||32|0.825|9.03||32|0.576|17.015|0.165|0|16.828|0.258|0|13.548||32|10.016||32|16.582|0.152|1|16.32|0.223|1|13.163||32|9.606||32|16.339|0.158|1|16.04|0.223|1|12.933||32|10.649||32|16.057|0.151|1|15.767|0.216|1|12.752||32|9.753||32|15.622|0.122|1|15.41|0.188|1|12.572||32|9.385||32|15.169|0.095|1|15.021|0.155|1|12.334||32|9.079||32|14.853|0.083|1|14.698|0.134|1|12.074||32|8.363||32|14.67|0.08|1|14.448|0.123|1|11.829||32|8.103||32|16.674|0.286|0.058|1.605|23|0|55275.28745078|55277.20605032|55276.21366396|16.544|1.378|0.281|2.97300005|18|0|55275.28745078|55277.20605032|55276.21366396|12.597|1.673|0.349|5.61899996|15|0|55275.28745078|55277.20605032|55276.19640507||||2.09200001|7|0|55275.28745078|55277.20605032|55276.19640507|5|-55|-19|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004881|1|0.0004580330337084|-0.0007918838403771|-0.999999581562774|131000000|
+J071920.67-895650.2|109.8361262|-89.9472881|0.0742|0.0706|0.0175|302.8731304|-27.1217415|269.9549432|-66.6102868|2072.798|487.792|1201089401241004045|1201m894_ab41-004045|1201m894_ab41|4045|10.817|0.022|48.3|0.981599987|10.864|0.02|53.3|1.03499997|10.663|0.062|17.4|1.074|9.102||1.1|1.06200004|1.03400004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|111n|AAAU|7|0000|21|21|21|21|16|20|0|20|21.889|21.511|20.924|21.221|0.0|0.0|0.0|0.0|0||0||0||0||7465.0|154.539993|9.367|2.817|0.215|2848.0|53.4650002|21.745|3.403|0.2|860.409973|49.5200005|1097.225|23.888|2.074|13.0839996|11.5790005|297.945|9.37|0.373|10.819|0.006|0|0.261|10.867|0.007|0|0.319|10.687|0.085|0|0.825|8.42||32|0.576|11.445|0.006|0|11.617|0.007|0|12.128|0.107|0|9.7||32|11.08|0.006|0|11.186|0.007|0|11.512|0.085|0|8.996||32|10.952|0.006|0|11.026|0.007|0|11.169|0.08|0|8.38||32|10.903|0.006|0|10.967|0.007|0|10.951|0.082|0|8.614|0.491|1|10.88|0.006|1|10.941|0.007|1|10.78|0.084|1|8.25|0.447|1|10.864|0.006|1|10.925|0.008|1|10.634|0.087|1|8.042|0.458|1|10.851|0.006|1|10.913|0.008|1|10.5|0.089|1|7.879|0.481|1|10.839|0.006|1|10.902|0.009|1|10.37|0.091|1|7.063||32|10.818|0.017|0.004|0.071|20|0|55275.02271543|55276.94144233|55276.08450699|10.86|0.026|0.006|0.230000004|20|0|55275.02271543|55276.94144233|55276.08450699|10.696|0.207|0.046|0.920000017|19|0|55275.02271543|55276.94144233|55276.05820141|10.044|4.084|0.913|2.30299997|10|0|55275.02271543|55276.94144233|55276.05820141|29|17|52|1|0|1||||||||||||||||||||||||||789747350|0.159|134.6|1|11.291|0.024|11.001|0.022|10.891|0.023|1201089401241004045|1|-0.0003121835239864|0.0008654106315531|-0.999999576802854|111000000|
+J220724.99-895649.4|331.8541423|-89.9470728|0.287|0.2677|-0.0672|302.9709497|-27.1680924|270.1172054|-66.5356984|2113.363|474.214|89401241004741|0000m894_ab41-004741|0000m894_ab41|4741|15.878|0.05|21.5|0.922399998|16.097|0.162|6.7|0.842999995|12.595||1.4|1.09599996|9.536||0.1|1.04100001|0.971000016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|23|25|3|25|0|24|0|24|24.469|24.859|23.894|23.647|0.0|0.0|0.0|0.0|0||0||0||0||70.5719986|3.27539992|9.31|2.774|0.0|22.9640007|3.43219995|21.758|3.36|0.044|60.7280006|42.2639999|1097.696|24.531|0.0|1.19939995|11.5480003|298.386|9.553|0.486|15.687|0.098|1|0.261|15.898|0.384|1|0.319|12.375||32|0.825|10.697||32|0.576|16.395|0.107|1|16.753|0.449|1|13.691||32|9.906||32|15.948|0.098|1|16.217|0.384|1|13.2||32|11.273||32|15.558|0.089|1|15.779|0.332|1|12.717||32|9.126||32|15.087|0.072|1|15.319|0.269|1|12.269||32|8.833||32|14.696|0.06|1|14.944|0.229|1|12.631|0.488|1|8.572||32|14.447|0.057|1|14.717|0.22|1|12.385|0.46|1|8.336||32|14.285|0.057|1|14.584|0.226|1|12.236|0.467|1|8.12||32|14.144|0.057|1|14.459|0.232|1|12.086|0.468|1|7.921||32|15.878|0.239|0.048|0.8|24|0|55275.28745078|55277.33835439|55276.25865158|15.895|0.687|0.137|2.7420001|20|0|55275.28745078|55277.33835439|55276.25865158|13.297|3.49|0.712|3.18700004|13|0|55275.28745078|55277.33835439|55276.24398629|12.083|||2.83400011|9|0|55275.28745078|55277.33835439|55276.24398629|-9|-33|-48|0|1|0||||||||||||||||||||||||||996638884|0.589|77.4|1|16.142|0.119|15.574|0.176|15.575|0.28|89401241004741|1|0.000814519349192|-0.0004357509655875|-0.999999573339572|131000000|
+J115208.58-895648.8|178.0357827|-89.9469163|0.274|0.2678|0.0483|302.9166631|-27.0768387|269.8666181|-66.5624717|2053.434|490.893|1802089401241004291|1802m894_ab41-004291|1802m894_ab41|4291|15.736|0.051|21.3|0.833000004|15.55|0.112|9.7|0.950399995|12.977|0.523|2.1|1.12399995|9.371||-0.8|1.25699997|1.00600004|2|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABCU|7|0000|18|20|5|20|1|19|0|20|21.114|21.338|20.824|20.917|0.0|0.0|0.0|0.0|0||0||0||0||80.4769974|3.77889991|9.419|2.773|0.854|38.0029984|3.9203999|21.783|3.396|0.0|102.139999|49.1679993|1095.119|23.925|0.0|-11.3439999|14.1499996|298.247|9.857|0.941|15.385|0.059|1|0.261|14.868|0.109|1|0.319|11.157||32|0.825|7.99||32|0.576|16.167|0.069|1|15.869|0.147|1|12.46||32|9.124||32|15.646|0.059|1|15.187|0.109|1|11.982||32|8.566||32|15.279|0.054|1|14.725|0.092|1|11.62||32|8.184||32|14.994|0.051|1|14.396|0.084|1|11.345||32|7.93||32|14.807|0.052|1|14.184|0.083|1|11.131||32|7.773||32|14.688|0.055|1|14.064|0.088|1|10.965||32|7.659||32|14.582|0.058|1|13.978|0.094|1|10.835||32|7.528||32|14.451|0.059|1|13.892|0.1|1|10.729||32|7.329||32|15.745|0.157|0.035|0.635|19|0|55275.02271543|55276.94144233|55276.02180825|15.51|0.582|0.13|2.79299998|18|1|55275.02271543|55276.94144233|55276.02180825|12.514|2.245|0.515|3.75999999|10|1|55275.02271543|55276.94144233|55275.99081824||||1.54100001|5|0|55275.02271543|55276.94144233|55275.99534108|0|10|-51|0|0|0||||||||||||||||||||||||||970360802|2.503|-8.1|1|15.794|0.1|17.239||16.037||1802089401241004291|1|-0.0009259401215752|0.000031755575069|-0.999999570813145|111000000|
+J224521.07-895647.2|341.3377932|-89.9464647|1.1996|1.0698|-0.2155|302.9633781|-27.1737887|270.1274219|-66.5435265|2092.846|484.822|89401241005676|0000m894_ab41-005676|0000m894_ab41|5676|17.755|0.21|5.2|0.932600021|17.173|0.417|2.6|0.964399993|12.796||1.0|1.14400005|8.888||1.9|1.19799995|1.05499995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|1|25|0|25|2|24|0|24|24.651|24.447|23.986|23.919|0.0|0.0|0.0|0.0|0||0||0||0||12.5310001|2.42440009|9.336|2.79|0.0|8.52740002|3.27180004|21.75|3.417|0.0|39.9910011|40.3590012|1097.755|24.061|1.684|21.7819996|11.1789999|298.401|9.451|0.194|16.928|0.291|0|0.261|16.06||32|0.319|12.214||32|0.825|8.798||32|0.576|17.708|0.335|0|16.615||32|13.406||32|9.81||32|17.189|0.291|0|16.379||32|13.039||32|9.374||32|16.729|0.245|1|16.244||32|12.763||32|9.03||32|16.098|0.171|1|15.959||32|12.528||32|8.688||32|15.406|0.109|1|15.485||32|12.327||32|8.386||32|14.841|0.077|1|15.697|0.505|1|12.144||32|8.166||32|14.453|0.062|1|15.05|0.323|1|11.982||32|7.939||32|14.153|0.055|1|14.539|0.233|1|11.829||32|7.746||32|17.721|1.258|0.252|3.754|20|0|55275.28745078|55277.33835439|55276.25865158|16.925|1.545|0.309|2.60299993|16|0|55275.28745078|55277.33835439|55276.25865158|17.356|||3.97399998|8|1|55275.28745078|55277.33835439|55276.24398629|9.539|2.41|0.492|4.47399998|15|0|55275.28745078|55277.33835439|55276.24398629|-35|-33|9|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005676|1|0.0008852403669515|-0.0002989866610826|-0.999999563478139|131000000|
+J231737.07-895647.0|349.4044815|-89.9464113|0.123|0.1205|0.0179|302.955893|-27.1773152|270.1323707|-66.5507995|2073.794|489.939|89401241004292|0000m894_ab41-004292|0000m894_ab41|4292|14.304|0.028|38.2|1.05599999|14.163|0.039|27.6|0.879999995|12.506||1.9|0.949000001|8.954||1.6|0.925300002|0.950699985|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|24|24|23|24|1|23|0|23|24.316|24.081|23.618|23.727|0.0|0.0|0.0|0.0|0||0||0||0||300.779999|7.86450005|9.367|2.823|0.082|136.429993|4.93779993|21.764|3.367|0.033|75.7789993|40.9039993|1098.203|24.546|3.912|18.1310005|11.6929998|298.561|9.575|0.997|14.204|0.026|0|0.261|14.174|0.075|0|0.319|12.061||32|0.825|8.82||32|0.576|14.865|0.027|0|14.92|0.079|0|13.271||32|9.832||32|14.465|0.026|0|14.493|0.075|0|12.886||32|9.396||32|14.309|0.028|0|14.341|0.084|0|12.59||32|9.05||32|14.24|0.032|1|14.301|0.1|1|12.391||32|8.754||32|14.204|0.037|1|14.342|0.125|1|13.556||32|8.493||32|14.168|0.043|1|14.464|0.165|1|13.967||32|8.257||32|14.121|0.047|1|14.639|0.225|1|12.049||32|8.041||32|14.071|0.052|1|14.824|0.307|1|11.667||32|7.841||32|14.306|0.077|0.016|0.277|23|0|55275.28745078|55277.33835439|55276.24674528|14.184|0.153|0.031|0.948000014|23|0|55275.28745078|55277.33835439|55276.24674528|12.976|2.341|0.488|5.26999998|13|0|55275.28745078|55277.33835439|55276.2309247|9.32|1.705|0.356|2.50099993|14|0|55275.28745078|55277.33835439|55276.2309247|28|-7|-36|1|0|0||||||||||||||||||||||||||1095003288|0.316|162.8|1|15.371|0.074|14.967|0.096|14.607|0.095|89401241004292|1|0.0009193524637664|-0.0001719777111988|-0.999999562607261|131000000|
+J005037.01-895645.6|12.6542394|-89.9460215|0.8247|0.7796|0.2382|302.9321334|-27.1821346|270.1324671|-66.5724779|2017.035|489.919|89401241005425|0000m894_ab41-005425|0000m894_ab41|5425|17.157|0.135|8.0|0.897700012|16.736||1.7|1.00100005|12.641|0.341|3.2|1.09000003|9.1||0.9|0.934400022|0.977299988|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|BUBU|5|0000|4|22|0|22|0|21|0|21|21.64|21.633|20.821|21.226|0.0|0.0|0.0|0.0|0||0||0||0||21.7339993|2.70609999|9.368|2.743|0.135|5.79829979|3.47939992|21.794|3.418|0.164|139.190002|43.7150002|1098.461|23.877|1.646|11.5349998|12.3809996|298.662|9.675|0.378|16.819|0.252|1|0.261|16.207|0.361|1|0.319|11.87||32|0.825|8.245||32|0.576|17.51|0.273|1|17.242|0.507|1|13.092||32|9.254||32|17.08|0.252|1|16.526|0.361|1|12.695||32|8.821||32|16.819|0.255|1|16.125|0.321|1|12.36||32|8.476||32|16.58|0.252|1|15.989|0.349|1|12.043||32|8.185||32|16.304|0.236|1|15.968|0.413|1|11.722||32|7.925||32|15.975|0.205|1|15.815|0.423|1|11.437||32|7.69||32|15.657|0.179|1|15.503|0.37|1|11.186||32|7.475||32|15.423|0.165|1|15.155|0.308|1|11.699|0.529|1|7.276||32|17.145|0.857|0.183|2.867|18|0|55275.28745078|55277.33835439|55276.28283929|17.471|3.195|0.681|3.47600007|13|0|55275.28745078|55277.33835439|55276.28283929|12.537|1.515|0.331|5.39099979|16|0|55275.28745078|55277.33835439|55276.26723075|10.205|4.164|0.909|4.20800018|10|0|55275.28745078|55277.33835439|55276.26723075|53|72|-41|1|2|1|||||||||||||||||||||||||||||0|||||||89401241005425|1|0.0009192188500765|0.0002063836116497|-0.999999556221157|101000000|
+J014624.10-895645.3|26.6004317|-89.945918|0.4886|0.4852|0.1493|302.9174752|-27.1806898|270.1216877|-66.5848778|1984.593|478.636|89401241005085|0000m894_ab41-005085|0000m894_ab41|5085|16.609|0.083|13.2|0.930499971|17.149|0.421|2.6|0.877900004|12.676|0.343|3.2|1.01600003|9.278||0.7|1.14699996|0.987200022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACBU|7|0000|7|22|0|22|2|21|0|21|21.756|21.701|20.903|20.989|0.0|0.0|0.0|0.0|0||0||0||0||35.9970016|2.73679996|9.354|2.75|0.32|8.72159958|3.37879992|21.793|3.365|0.083|134.830002|42.637001|1098.355|23.749|3.944|7.7887001|11.5209999|298.736|9.333|1.033|16.778|0.387|0|0.261|15.886||32|0.319|12.223|0.52|0|0.825|8.358||32|0.576|17.274|0.345|0|16.583||32|12.946||32|9.372||32|17.039|0.387|0|16.205||32|13.048|0.52|0|8.934||32|16.389||32|15.967||32|12.399|0.37|0|8.589||32|16.43||32|15.818||32|11.971|0.31|1|8.296||32|16.515||32|15.736||32|11.699|0.291|1|8.037||32|17.702||32|15.668||32|11.515|0.29|1|7.801||32|16.136||32|15.527||32|11.352|0.29|1|7.586||32|15.586||32|15.205||32|11.145|0.276|1|7.387||32|16.612|0.415|0.088|1.937|21|1|55275.28745078|55277.33835439|55276.28283929|17.17|2.751|0.586|2.88199997|14|0|55275.28745078|55277.33835439|55276.28283929|12.534|1.545|0.337|3.44499993|12|1|55275.28745078|55277.33835439|55276.26723075|10.266|5.201|1.135|1.83200002|11|0|55275.28745078|55277.33835439|55276.26723075|10|20|-40|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005085|1|0.0008439966088243|0.0004226499722605|-0.999999554518263|101000000|
+J102826.98-895644.4|157.1124416|-89.9456711|0.2626|0.2452|-0.0219|302.8962675|-27.0840584|269.8740649|-66.5817882|2103.953|482.792|1802089401241004194|1802m894_ab41-004194|1802m894_ab41|4194|15.495|0.047|22.9|0.898999989|15.535|0.113|9.6|0.991400003|13.006|0.499|2.2|1.12300003|9.287||0.5|0.989799976|0.996200025|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABCU|7|0000|18|20|7|20|0|19|0|19|19.757|19.63|19.033|18.786|0.0|0.0|0.0|0.0|0||0||0||0||100.489998|4.38840008|9.436|2.852|0.096|38.5540009|4.01030016|21.807|3.377|0.0|99.461998|45.7350006|1096.916|24.253|0.0|5.67269993|12.4449997|298.217|9.617|0.52|15.485|0.098|0|0.261|15.526|0.259|0|0.319|11.762||32|0.825|8.34||32|0.576|16.101|0.099|0|16.281|0.28|0|13.124||32|9.544||32|15.746|0.098|0|15.845|0.259|0|12.587||32|8.916||32|15.613|0.111|0|15.674|0.284|0|12.14||32|8.467||32|15.552|0.13|0|15.636|0.339|0|12.517|0.505|0|8.132||32|15.487|0.148|1|15.592|0.391|1|12.245|0.474|1|7.865||32|15.331|0.151|1|15.444|0.403|1|12.047|0.466|1|7.669||32|15.068|0.138|1|15.219|0.38|1|11.847|0.45|1|7.531||32|14.758|0.119|1|14.945|0.339|1|11.653|0.433|1|7.414||32|15.506|0.107|0.024|0.475|19|0|55275.02271543|55276.94144233|55276.02180825|15.613|0.566|0.126|3.77600002|19|2|55275.02271543|55276.94144233|55276.02180825|12.664|2.144|0.492|2.43000007|10|0|55275.02271543|55276.94144233|55275.99081824|10.671|5.523|1.267|2.58599997|8|0|55275.02271543|55276.94144233|55275.99081824|-9|-28|-64|0|0|1||||||||||||||||||||||||||748783481|0.441|-42.0|1|16.502|0.136|15.454|0.123|15.234|0.19|1802089401241004194|1|-0.0008735643183832|0.0003687844960813|-0.999999550441588|111000000|
+J085047.49-895644.3|132.6979081|-89.9456516|0.7949|0.7724|-0.2398|302.878958|-27.1011051|269.9071974|-66.6006243|2017.176|490.941|1201089401241005063|1201m894_ab41-005063|1201m894_ab41|5063|17.3|0.158|6.9|0.769900024|16.222|0.2|5.4|0.962199986|12.855|0.427|2.5|1.09599996|8.904||1.5|0.862100005|0.916899979|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBCU|7|0000|2|20|0|20|1|18|0|19|21.593|21.611|20.977|20.725|0.0|0.0|0.0|0.0|0||0||0||0||19.0569992|2.77670002|9.411|2.783|0.002|20.4729996|3.7671001|21.782|3.38|0.024|114.32|44.9609985|1095.617|23.306|0.0|18.6760006|12.4099998|298.456|9.64|0.464|16.401|0.152|1|0.261|15.676|0.237|1|0.319|12.618||32|0.825|8.069||32|0.576|17.261|0.191|0|16.569|0.291|0|13.795||32|9.224||32|16.662|0.152|1|15.995|0.237|1|13.443||32|8.645||32|16.223|0.13|1|15.651|0.223|1|13.167||32|8.259||32|15.789|0.108|1|15.389|0.216|1|12.936||32|7.972||32|15.403|0.092|1|15.205|0.221|1|12.728||32|7.697||32|15.119|0.084|1|15.081|0.232|1|12.546||32|7.471||32|14.874|0.078|1|14.951|0.24|1|12.38||32|7.269||32|14.56|0.067|1|14.707|0.221|1|12.227||32|7.083||32|17.27|0.77|0.172|2.128|16|0|55275.02271543|55276.94144233|55276.02180825|16.186|0.843|0.189|3.5999999|16|0|55275.02271543|55276.94144233|55276.02180825|12.839|1.285|0.303|4.88500023|13|0|55275.02271543|55276.94144233|55276.02622263|9.474|1.311|0.301|3.08800006|13|0|55275.02271543|55276.94144233|55275.99081824|1|-13|32|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005063|1|-0.0006432483206823|0.0006971325975075|-0.999999550118769|111000000|
+J182057.36-895644.0|275.2390135|-89.9455745|0.8386|0.9066|-0.2121|302.9925251|-27.120926|270.0124663|-66.5065103|2108.722|480.941|3004089401241005325|3004m894_ab41-005325|3004m894_ab41|5325|17.291|0.145|7.5|0.790700018|17.049||0.9|1.00300002|13.135|0.535|2.0|1.10000002|9.096||1.1|0.931999981|0.952700019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|1|23|0|23|1|22|0|22|22.723|22.607|22.013|21.884|0.0|0.0|0.0|0.0|0||0||0||0||19.2169991|2.56690001|9.323|2.715|0.0|2.90089989|3.32800007|21.802|3.321|0.0|88.2770004|43.4819984|1097.656|24.796|0.0|12.802|11.8280001|298.404|9.45|0.561|16.765|0.256|1|0.261|16.007||32|0.319|12.115||32|0.825|8.341||32|0.576|17.571|0.302|1|16.739||32|13.473||32|9.504||32|17.026|0.256|1|16.326||32|12.94||32|8.917||32|16.618|0.226|1|16.059||32|13.235|0.51|1|8.51||32|16.257|0.202|1|15.852||32|12.825|0.436|1|8.233||32|15.907|0.175|1|15.686||32|12.532|0.399|1|8.006||32|15.495|0.142|1|15.449||32|12.253|0.365|1|7.845||32|15.01|0.105|1|15.061||32|11.938|0.317|1|7.768||32|14.51|0.077|1|15.098|0.34|1|11.623|0.273|1|7.678||32|17.278|0.709|0.148|2.006|20|0|55275.28745078|55277.20605032|55276.18490037|17.919|4.918|1.025|2.74600005|10|0|55275.28745078|55277.20605032|55276.18490037|13.048|2.648|0.565|3.91199994|11|2|55275.28745078|55277.20605032|55276.16554954|9.835|2.851|0.608|3.03299999|12|0|55275.28745078|55277.20605032|55276.16554954|40|26|-52|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005325|1|0.0000867363299353|-0.0009459352753179|-0.99999954884153|131000000|
+J003737.01-895642.9|9.4042285|-89.9452611|0.8845|0.8511|0.2358|302.9356247|-27.1827958|270.1358112|-66.5695944|2024.577|493.416|89401241005498|0000m894_ab41-005498|0000m894_ab41|5498|17.254|0.141|7.7|0.836899996|17.115||0.6|0.928600013|12.543||1.4|0.950200021|8.797||1.9|1.04200006|0.935899973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|3|22|0|22|0|21|0|21|21.593|21.705|21.089|21.659|0.0|0.0|0.0|0.0|0||0||0||0||19.8850002|2.58949995|9.355|2.738|0.11|1.94330001|3.52390003|21.843|3.388|0.176|62.8269997|44.762001|1098.926|24.375|0.48|23.6609993|12.177|298.65|9.64|0.574|16.646|0.197|1|0.261|16.095||32|0.319|12.151||32|0.825|8.282||32|0.576|17.452|0.236|1|16.835||32|13.329||32|9.249||32|16.907|0.197|1|16.414||32|12.976||32|8.858||32|16.532|0.18|1|16.101||32|12.694||32|11.793||32|16.217|0.166|1|15.792||32|12.557||32|8.302||32|15.977|0.161|1|15.468||32|12.117||32|8.041||32|15.82|0.164|1|15.873|0.47|1|11.841||32|7.805||32|15.71|0.172|1|15.589|0.42|1|11.567||32|7.591||32|15.582|0.177|1|15.316|0.376|1|11.312||32|7.392||32|17.263|0.807|0.172|2.591|18|0|55275.28745078|55277.33835439|55276.28283929|18.307|6.089|1.298|3.6099999|10|0|55275.28745078|55277.33835439|55276.28283929|13.264|2.594|0.566|3.83800006|12|0|55275.28745078|55277.33835439|55276.26723075|9.623|2.317|0.506|5.01000023|15|0|55275.28745078|55277.33835439|55276.26723075|-8|38|27|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005498|1|0.0009425340805072|0.0001561069728042|-0.999999543629956|101000000|
+J001650.17-895642.3|4.2090515|-89.9451043|0.8536|0.7676|0.1739|302.9411978|-27.1824273|270.137656|-66.5646777|2037.446|495.365|89401241005403|0000m894_ab41-005403|0000m894_ab41|5403|17.571|0.184|5.9|0.944800019|16.114|0.174|6.2|0.922800004|12.64|0.35|3.1|0.909399986|8.903||1.3|1.11300004|0.968500018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|1|22|2|22|1|21|0|21|22.646|22.705|22.295|22.319|0.0|0.0|0.0|0.0|0||0||0||0||14.8430004|2.51060009|9.353|2.778|0.102|22.6089993|3.62220001|21.787|3.432|0.127|139.289993|44.9179993|1099.168|24.414|0.0|17.1060009|13.2089996|299.074|9.835|0.599|17.145|0.368|1|0.261|16.172|0.445|1|0.319|11.708||32|0.825|8.299||32|0.576|17.799|0.379|0|16.866|0.451|0|13.023||32|9.261||32|17.406|0.368|1|16.491|0.445|1|12.533||32|8.875||32|17.283|0.427|1|15.679||32|12.198||32|8.564||32|17.051|0.427|1|15.567||32|11.909||32|8.558||32|16.582|0.335|1|15.427||32|12.384|0.536|1|8.077||32|16.152|0.266|1|15.241||32|12.069|0.474|1|7.841||32|15.893|0.244|1|15.06||32|11.81|0.434|1|7.627||32|15.739|0.244|1|14.893||32|11.623|0.42|1|7.427||32|17.571|0.867|0.185|3.968|19|0|55275.28745078|55277.33835439|55276.28283929|16.048|0.901|0.192|3.05800009|18|1|55275.28745078|55277.33835439|55276.28283929|12.565|1.0|0.218|3.01999998|13|0|55275.28745078|55277.33835439|55276.26723075|9.244|2.092|0.457|3.20099998|11|0|55275.28745078|55277.33835439|55276.26723075|34|35|23|1|1|0|||||||||||||||||||||||||||||0|||||||89401241005403|1|0.0009555261006498|0.0000703212184226|-0.999999541012293|101000000|
+J184628.54-895641.9|281.6189185|-89.9449748|0.6617|0.7182|-0.2002|302.9937278|-27.1269516|270.0277999|-66.5068087|2094.529|488.375|3004089401241005191|3004m894_ab41-005191|3004m894_ab41|5191|16.982|0.113|9.7|0.816100001|16.77||1.7|0.980400026|12.439||1.9|1.01499999|9.304||0.6|0.902999997|0.925599992|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BUUU|1|0000|4|23|0|23|0|22|0|22|22.695|22.808|21.939|21.866|0.0|0.0|0.0|0.0|0||0||0||0||25.5459995|2.64709997|9.389|2.748|0.03|5.72930002|3.31389999|21.789|3.361|0.156|81.0189972|43.3510017|1097.755|25.028|1.071|6.58830023|11.7489996|298.711|9.899|1.257|15.991|0.14|1|0.261|16.19|0.337|1|0.319|11.931||32|0.825|8.415||32|0.576|17.077|0.214|1|17.328|0.515|1|13.321||32|9.559||32|16.252|0.14|1|16.509|0.337|1|12.756||32|8.991||32|15.382|0.081|1|15.584|0.186|1|12.984|0.437|1|8.584||32|14.576|0.049|1|14.749|0.108|1|12.605|0.382|1|8.259||32|14.0|0.035|1|14.154|0.075|1|12.281|0.342|1|7.962||32|13.651|0.03|1|13.772|0.062|1|11.984|0.307|1|8.37|0.496|1|13.431|0.028|1|13.517|0.057|1|11.685|0.271|1|8.013|0.431|17|13.275|0.028|1|13.332|0.056|1|11.397|0.239|1|7.784|0.416|17|16.968|0.555|0.116|3.505|22|0|55275.28745078|55277.20605032|55276.18490037|17.527|3.067|0.639|3.67199993|13|0|55275.28745078|55277.20605032|55276.18490037|13.124|2.929|0.625|1.99000001|11|0|55275.28745078|55277.20605032|55276.16554954|10.821|6.891|1.469|1.55799997|10|0|55275.28745078|55277.20605032|55276.16554954|9|59|27|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241005191|1|0.0001934200949512|-0.0009406921996614|-0.99999953884332|131000000|
+J121745.37-895640.7|184.43908|-89.9446607|1.3397|1.2971|0.2316|302.9228152|-27.0734133|269.86132|-66.5563644|2037.483|496.522|1802089401241004889|1802m894_ab41-004889|1802m894_ab41|4889|18.628|0.506|2.1|0.918799996|16.86||1.3|1.00800002|11.91|0.192|5.7|1.01100004|9.287||0.2|0.922800004|0.96420002|1|0|0.0|0.0|0.0|0.002|0000|0000|0|nnnn|CUBU|5|0000|0|21|2|21|3|20|0|20|22.192|22.26|21.056|21.295|0.0|0.0|0.0|0.0|0||0||0||0||5.60659981|2.61299992|9.405|2.732|0.035|4.42070007|3.477|21.807|3.371|0.067|272.929993|48.2140007|1096.114|23.807|2.042|2.72169995|13.9189997|298.438|10.01|0.85|16.947|0.178|0|0.261|16.412|0.489|0|0.319|12.23||32|0.825|8.088||32|0.576|17.819|0.229|0|16.577||32|12.438||32|9.098||32|17.208|0.178|0|16.731|0.489|0|13.055||32|8.664||32|16.815|0.158|1|16.367|0.451|1|11.875||32|8.316||32|16.438|0.139|1|16.202|0.48|1|11.641||32|8.027||32|15.953|0.107|1|15.933|0.451|1|11.44||32|7.764||32|15.404|0.077|1|15.466|0.348|1|11.254||32|7.529||32|14.906|0.056|1|14.958|0.254|1|11.092||32|7.313||32|14.519|0.045|1|14.509|0.193|1|10.94||32|7.114||32|18.469|2.384|0.52|2.982|11|0|55275.02271543|55276.94144233|55276.02464001|17.986|7.052|1.539|3.86899996|12|1|55275.02271543|55276.94144233|55276.02464001|11.736|0.859|0.192|2.60500002|15|1|55275.02271543|55276.94144233|55275.99534108|11.334|||2.03999996|9|0|55275.02271543|55276.94144233|55275.99534108|-17|1|-70|0|0|1|||||||||||||||||||||||||||||0|||||||1802089401241004889|1|-0.00096295605248|-0.0000747561615367|-0.99999953356347|121000000|
+J011358.21-895640.7|18.4925773|-89.9446556|0.2898|0.2819|0.089|302.9258091|-27.1832334|270.1320432|-66.5782076|2002.035|489.446|89401241004720|0000m894_ab41-004720|0000m894_ab41|4720|15.933|0.052|20.8|0.912299991|15.858|0.136|8.0|0.790600002|11.839|0.161|6.7|1.09500003|9.544||0.0|0.886399984|0.916800022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|18|22|2|22|2|21|0|21|21.824|21.722|20.921|20.772|0.0|0.0|0.0|0.0|0||0||0||0||67.1409988|3.22359991|9.366|2.843|0.0|28.6189995|3.5941|21.825|3.447|0.102|291.309998|43.269001|1098.313|23.566|0.736|-0.264349997|12.0570002|298.573|9.628|0.604|15.665|0.083|0|0.261|15.766|0.307|0|0.319|11.214||32|0.825|8.272||32|0.576|16.36|0.088|0|16.464|0.307|0|12.472||32|9.28||32|15.926|0.083|0|16.085|0.307|0|12.039||32|8.848||32|15.744|0.091|1|15.99|0.365|1|11.764||32|8.509||32|15.669|0.105|1|15.973|0.445|1|11.596||32|8.213||32|15.633|0.122|1|15.272||32|11.49||32|7.955||32|15.555|0.134|1|15.275||32|11.395||32|7.721||32|15.382|0.133|1|15.25||32|11.345||32|7.505||32|15.144|0.123|1|15.141||32|11.202||32|7.307||32|15.932|0.279|0.059|1.341|21|1|55275.28745078|55277.33835439|55276.28283929|15.846|0.682|0.145|1.73300004|19|0|55275.28745078|55277.33835439|55276.28283929|11.78|0.938|0.205|1.83800006|15|0|55275.28745078|55277.33835439|55276.26723075||||2.80100012|10|0|55275.28745078|55277.33835439|55276.26723075|-27|7|26|1|0|0|||||||||||||||||||||||||||||0|||||||89401241004720|1|0.0009160657550664|0.0003063793562396|-0.999999533477502|101000000|
+J114358.09-895640.3|175.9920568|-89.9445484|0.3126|0.2962|0.0219|302.9138461|-27.0750893|269.8609159|-66.5645231|2058.846|496.792|1802089401241004277|1802m894_ab41-004277|1802m894_ab41|4277|16.575|0.088|12.3|0.97299999|14.79|0.062|17.5|0.898199975|11.527|0.141|7.7|1.14699996|8.465|0.238|4.6|1.02499998|1.00399995|2|0|0.0|0.0|0.0|0.0|0000|0000|0|101n|AABB|15|0000|10|20|16|20|4|19|0|19|21.205|21.196|20.568|20.861|0.0|0.0|0.0|0.0|0||0||0||0||37.1479988|3.02449989|9.449|2.757|0.19|76.5339966|4.37830019|21.854|3.421|0.307|388.290009|50.4510002|1097.469|24.857|3.9|65.1660004|14.2939997|298.139|9.846|0.0|16.111|0.134|1|0.261|14.616|0.076|1|0.319|10.8||32|0.825|7.974||32|0.576|16.945|0.162|1|15.45|0.087|1|12.054||32|8.969||32|16.372|0.134|1|14.935|0.076|1|11.625||32|8.55||32|15.918|0.114|1|14.627|0.074|1|11.384||32|8.264||32|15.581|0.104|1|14.395|0.074|1|11.236||32|8.133||32|15.352|0.101|1|14.207|0.075|1|11.131||32|8.1||32|15.149|0.099|1|14.058|0.077|1|11.06||32|7.865||32|14.929|0.094|1|13.923|0.079|1|10.997||32|7.649||32|14.712|0.088|1|13.782|0.08|1|11.522||32|7.45||32|16.553|0.492|0.11|3.383|19|1|55275.02271543|55276.94144233|55276.02180825|14.796|0.246|0.055|1.07500005|19|0|55275.02271543|55276.94144233|55276.02180825|11.414|0.812|0.186|3.95900011|17|2|55275.02271543|55276.94144233|55275.99081824|8.326|0.87|0.2|3.11199999|15|0|55275.02271543|55276.94144233|55275.99081824|-13|11|-37|0|0|1||||||||||||||||||||||||||970360808|1.933|-26.9|1|15.786|0.126|16.229||14.484||1802089401241004277|1|-0.0009654451674888|0.0000676450025291|-0.999999531669781|111000000|
+J021456.47-895639.2|33.7353018|-89.9442438|0.2898|0.2948|0.0847|302.9095814|-27.1802507|270.1167119|-66.5916301|2112.812|482.837|600089401241004400|0600m894_ab41-004400|0600m894_ab41|4400|15.942|0.054|20.1|1.07099998|15.869|0.132|8.2|0.918500006|12.257|0.225|4.8|1.11399996|9.548||0.1|1.00399995|1.02400005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|19|22|3|22|2|21|0|21|21.613|22.116|21.988|21.774|0.0|0.0|0.0|0.0|0||0||0||0||66.5699997|3.31159997|9.376|2.771|0.245|28.3470001|3.45939994|21.783|3.351|0.271|198.330002|41.0250015|1097.335|22.877|1.702|0.881519973|11.5740004|298.858|9.522|0.821|15.999|0.151|0|0.261|15.854|0.296|0|0.319|11.692||32|0.825|8.463||32|0.576|16.566|0.144|0|16.527|0.294|0|13.033||32|9.472||32|16.26|0.151|0|16.173|0.296|0|12.517||32|9.039||32|16.215|0.187|0|16.169|0.381|0|12.149||32|8.695||32|16.271|0.244|0|15.586||32|11.853||32|8.4||32|16.398|0.329|1|15.618||32|11.596||32|8.14||32|16.588|0.464|1|15.661||32|12.044|0.487|1|7.904||32|15.892||32|15.66||32|11.744|0.429|1|7.688||32|15.773||32|15.498||32|11.466|0.383|1|7.489||32|15.942|0.268|0.057|1.16|21|0|55275.28745078|55277.33835439|55276.28283929|15.884|0.829|0.177|2.94000006|18|0|55275.28745078|55277.33835439|55276.28283929|12.197|1.148|0.25|2.9920001|16|0|55275.28745078|55277.33835439|55276.26723075|15.337|||4.40100002|9|0|55275.28745078|55277.33835439|55276.26723075|-20|-35|29|0|1|0||||||||||||||||||||||||||1101434146|0.3|158.0|1|16.956|0.175|15.872|0.144|16.962||600089401241004400|1|0.0008092654362485|0.000540433639468|-0.999999526510355|101000000|
+J164348.49-895639.0|250.9520818|-89.9441866|0.3552|0.3921|0.0546|302.9851389|-27.0986463|269.9543046|-66.5079448|2021.153|495.669|2403089401241004580|2403m894_ab41-004580|2403m894_ab41|4580|16.292|0.065|16.6|0.977199972|16.328|0.189|5.7|1.01300001|13.149||-0.4|0.972800016|9.48||-0.3|1.06200004|1.00300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|17|23|1|23|0|22|0|22|23.679|23.635|22.895|22.803|0.0|0.0|0.0|0.0|0||0||0||0||48.2290001|2.90269995|9.42|2.622|0.0|18.5760002|3.24049997|21.775|3.328|0.291|-17.0340004|43.6020012|1097.027|24.884|1.378|-4.41179991|12.7930002|298.687|10.019|0.512|16.396|0.276|0|0.261|15.717||32|0.319|12.413||32|0.825|8.922||32|0.576|16.947|0.26|0|17.086|0.524|0|13.592||32|9.934||32|16.657|0.276|0|16.036||32|13.238||32|9.498||32|16.61|0.343|1|15.931||32|12.954||32|9.151||32|16.564|0.409|1|15.765||32|12.717||32|8.855||32|16.244|0.366|1|15.348||32|12.519||32|8.467||32|15.515|0.22|1|15.28|0.315|1|12.341||32|8.047||32|14.752|0.127|1|14.58|0.193|1|12.174||32|7.712||32|14.233|0.091|1|14.112|0.144|1|12.023||32|7.49||32|16.296|0.312|0.065|1.577|22|0|55275.02271543|55276.94144233|55276.08997277|16.284|0.726|0.151|4.16200018|20|0|55275.02271543|55276.94144233|55276.08997277|15.389|||3.79200006|11|0|55275.02271543|55276.94144233|55276.06630705||||2.55100012|9|0|55275.02271543|55276.94144233|55276.06630705|-4|42|-49|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241004580|1|-0.0003179151474935|-0.0009207902564695|-0.999999525537519|121000000|
+J032851.59-895639.0|52.2149596|-89.944175|0.994|1.0673|0.3289|302.8921246|-27.1713161|270.0861408|-66.6048046|2068.034|496.812|600089401241005264|0600m894_ab41-005264|0600m894_ab41|5264|17.516|0.18|6.0|0.822799981|17.457||-1.6|0.832499981|12.716|0.347|3.1|1.079|9.529||-0.7|1.04400003|0.93870002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|1|22|0|22|1|21|0|21|22.812|23.334|21.78|22.247|0.0|0.0|0.0|0.0|0||0||0||0||15.6190004|2.59139991|9.358|2.866|0.259|-5.39979982|3.28200006|21.767|3.302|0.105|129.929993|41.5200005|1097.003|23.031|1.233|-8.13389969|12.224|298.947|9.661|1.545|16.863|0.251|1|0.261|16.46||32|0.319|11.913||32|0.825|8.599||32|0.576|17.567|0.272|0|17.131||32|13.089||32|9.611||32|17.124|0.251|1|16.779||32|12.738||32|9.175||32|16.812|0.243|1|16.503||32|12.464||32|8.829||32|16.459|0.217|1|16.04||32|12.233||32|8.536||32|16.09|0.186|1|15.54||32|12.029||32|8.275||32|15.79|0.168|1|15.145||32|11.847||32|8.039||32|15.583|0.161|1|15.568|0.473|1|11.684||32|7.823||32|15.397|0.156|1|15.373|0.454|1|11.535||32|7.623||32|17.559|0.945|0.202|3.791|19|0|55275.28745078|55277.20605032|55276.26179381||||2.023|5|0|55275.28745078|55277.20605032|55276.26179381|12.653|1.825|0.398|3.37199998|13|0|55275.28745078|55277.20605032|55276.24518311||||3.5710001|8|0|55275.28745078|55277.20605032|55276.24518311|-23|-38|-3|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005264|1|0.0005969721069897|0.0007700268599903|-0.999999525341356|101000000|
+J132044.58-895638.2|200.1857627|-89.9439697|0.4143|0.3775|0.1008|302.9399402|-27.0725833|269.8678961|-66.5413192|1998.045|489.947|1802089401241004525|1802m894_ab41-004525|1802m894_ab41|4525|16.349|0.068|16.0|2.74000001|16.358|0.198|5.5|0.942799985|12.046|0.204|5.3|1.06500006|9.069||0.9|1.04200006|1.51100004|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|ABBU|7|0000|13|23|0|23|2|22|0|22|22.722|22.77|21.849|21.838|0.0|0.0|0.0|0.0|129|D|129|D|0||0||45.7369995|2.85109997|9.4|2.667|0.153|18.0610008|3.29710007|21.821|3.35|0.433|240.820007|45.1459999|1098.773|25.209|0.903|11.5719995|12.8979998|298.244|9.832|0.292|15.061|0.033|1|0.261|15.664|0.421|1|0.319|11.86|0.326|1|0.825|8.711|0.506|1|0.576|16.174|0.052|1|15.964||32|13.47|0.49|1|9.162||32|15.322|0.033|1|15.983|0.421|1|12.685|0.326|1|9.287|0.506|1|14.738|0.025|1|15.345|0.303|1|12.174|0.263|1|8.872|0.474|1|14.315|0.021|1|14.882|0.244|1|11.794|0.23|1|8.673|0.515|1|13.999|0.019|1|14.55|0.217|1|11.475|0.207|17|7.749||32|13.754|0.018|1|14.295|0.203|1|11.224|0.193|17|7.526||32|13.557|0.017|1|14.096|0.196|1|11.054|0.193|17|7.311||32|13.384|0.017|1|13.932|0.194|1|10.927|0.197|17|7.113||32|16.437|0.889|0.185|2.427|19|9|55275.02271543|55276.94144233|55276.02956479|16.32|1.052|0.219|2.16199994|17|0|55275.02271543|55276.94144233|55276.02956479|11.825|0.853|0.182|2.47099996|15|0|55275.02271543|55276.94144233|55276.00315326|10.166|4.308|0.918|1.79400003|12|0|55275.02271543|55276.94144233|55276.00315326|75|44|25|3|1|0|||||||||||||||||||||||||||||0|||||||1802089401241004525|1|-0.0009178492544795|-0.0003374438467325|-0.999999521842084|121000000|
+J100208.74-895638.2|150.5364559|-89.9439445|0.2324|0.2144|-0.0375|302.8895237|-27.0867048|269.8771676|-66.5882329|2120.804|479.449|1802089401241004173|1802m894_ab41-004173|1802m894_ab41|4173|15.4|0.043|25.2|0.902499974|15.235|0.086|12.6|0.907500029|13.029||0.1|1.03199995|9.47||0.0|0.98299998|0.952199996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|20|20|11|20|0|19|0|19|19.76|19.601|19.025|19.026|0.0|0.0|0.0|0.0|0||0||0||0||109.639999|4.3513999|9.381|2.778|0.754|50.8100014|4.03520012|21.772|3.389|0.023|5.33729982|45.993|1098.099|24.489|3.134|0.00673189992|12.9060001|298.222|9.861|1.123|15.424|0.086|0|0.261|15.201|0.154|0|0.319|11.968||32|0.825|8.693||32|0.576|16.02|0.084|0|15.92|0.159|0|13.163||32|9.701||32|15.685|0.086|0|15.52|0.154|0|12.793||32|9.269||32|15.593|0.103|1|15.411|0.181|1|12.506||32|8.927||32|15.573|0.125|1|15.388|0.22|1|12.275||32|8.636||32|15.541|0.146|1|15.319|0.248|1|12.074||32|8.378||32|15.412|0.152|1|15.132|0.246|1|11.896||32|8.145||32|15.183|0.144|1|14.866|0.224|1|11.73||32|7.931||32|14.932|0.131|1|14.611|0.203|1|11.579||32|7.733||32|15.399|0.171|0.038|0.633|19|0|55275.02271543|55276.94144233|55276.02180825|15.196|0.406|0.091|2.89899993|19|1|55275.02271543|55276.94144233|55276.02180825|14.136|9.051|2.076|1.71200001|8|0|55275.02271543|55276.94144233|55275.99081824|12.721|||2.671|9|0|55275.02271543|55276.94144233|55275.99081824|8|-50|-81|0|1|1||||||||||||||||||||||||||748688413|0.11|-65.8|1|16.573|0.151|15.596|0.147|15.294|0.212|1802089401241004173|1|-0.000851820963827|0.0004812218860634|-0.999999521413157|111000000|
+J210429.25-895637.4|316.1218941|-89.9437446|0.3713|0.3624|-0.1168|302.9847841|-27.1590011|270.1017812|-66.5216837|2008.242|493.847|3004089401241004739|3004m894_ab41-004739|3004m894_ab41|4739|16.414|0.069|15.8|0.942399979|16.225|0.175|6.2|0.955900013|11.753|0.144|7.5|1.01800001|8.809|0.266|4.1|1.00800002|0.977900028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBB|15|0000|14|24|2|24|3|23|1|23|24.706|24.654|23.957|23.598|0.0|0.0|0.0|0.0|0||0||0||0||43.0900002|2.7249999|9.375|2.709|0.161|20.4150009|3.2816999|21.815|3.267|0.17|315.339996|41.8639984|1097.121|24.309|2.647|47.4749985|11.6350002|298.235|9.507|1.338|16.225|0.113|1|0.261|16.156|0.401|1|0.319|11.915|0.23|0|0.825|8.941|0.512|1|0.576|16.859|0.114|0|16.871|0.411|0|13.343|0.286|0|9.927|0.501|1|16.486|0.113|1|16.475|0.401|1|12.74|0.23|0|9.517|0.512|1|16.389|0.134|1|16.389|0.481|1|12.47|0.234|1|8.621||32|16.362|0.161|1|15.617||32|12.381|0.267|1|8.568||32|16.273|0.179|1|15.534||32|12.358|0.315|1|8.492||32|16.115|0.183|1|15.427||32|12.379|0.379|1|8.521||32|15.979|0.188|1|15.367||32|12.41|0.453|1|8.243||32|15.94|0.208|1|15.397||32|12.417|0.524|1|8.045||32|16.454|0.288|0.059|1.409|23|0|55275.28745078|55277.20605032|55276.21366396|16.231|0.966|0.197|3.62700009|18|0|55275.28745078|55277.20605032|55276.21366396|11.69|0.743|0.155|2.09200001|19|0|55275.28745078|55277.20605032|55276.19640507|8.688|1.295|0.27|3.82200003|17|0|55275.28745078|55277.20605032|55276.19640507|-25|44|-18|1|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004739|1|0.0007077274205062|-0.0006805406218044|-0.999999517993064|131000000|
+J160059.29-895635.0|240.247064|-89.9430656|1.2649|1.3855|0.3455|302.9789801|-27.0896019|269.9291105|-66.5112639|2048.309|501.089|2403089401241005601|2403m894_ab41-005601|2403m894_ab41|5601|17.772|0.214|5.1|0.845099986|17.002||1.2|0.846499979|13.159||-0.3|0.997399986|9.418||0.2|0.928300023|0.900699973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|23|0|23|0|22|0|22|22.832|22.783|22.008|21.857|0.0|0.0|0.0|0.0|0||0||0||0||12.3369999|2.43610001|9.446|2.677|0.0|3.74589992|3.11590004|21.781|3.294|0.0|-12.7130003|43.1759987|1096.47|24.694|0.484|2.54450011|12.2709999|298.43|9.827|0.472|17.519|0.531|0|0.261|16.434|0.42|0|0.319|12.389||32|0.825|8.623||32|0.576|18.065|0.499|0|16.647||32|13.568||32|9.696||32|17.78|0.531|0|16.753|0.42|0|13.214||32|9.199||32|16.9||32|16.314|0.365|0|12.928||32|8.764||32|16.778||32|15.948|0.323|1|12.695||32|8.337||32|16.547||32|15.623|0.287|1|12.496||32|8.61|0.471|1|16.152||32|15.336|0.26|1|12.315||32|8.157|0.375|1|16.097|0.3|1|15.019|0.226|1|12.154||32|7.802|0.322|17|15.27|0.162|1|14.612|0.179|1|12.002||32|7.538|0.297|17|17.83|1.238|0.258|3.011|16|0|55275.02271543|55276.94144233|55276.08997277|17.584|2.239|0.467|2.40100002|15|0|55275.02271543|55276.94144233|55276.08997277|15.646|||2.77200007|9|0|55275.02271543|55276.94144233|55276.06630705|10.441|3.494|0.745|1.28199995|11|0|55275.02271543|55276.94144233|55276.06630705|-44|-31|54|1|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005601|1|-0.0004931308812428|-0.0008626974779627|-0.999999506287376|121000000|
+J181759.38-895634.0|274.4974579|-89.9427951|0.6777|0.7322|-0.1549|302.995504|-27.1198229|270.0112511|-66.5036798|2113.572|486.686|3004089401241005176|3004m894_ab41-005176|3004m894_ab41|5176|17.028|0.115|9.5|0.877799988|17.326|0.479|2.3|0.935599983|12.979||0.3|1.07000005|9.217||0.7|0.941799998|0.952600002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|3|23|0|23|1|22|0|22|22.698|22.651|22.032|21.858|0.0|0.0|0.0|0.0|0||0||0||0||24.4759998|2.5848999|9.366|2.729|0.369|7.40500021|3.26819992|21.759|3.332|0.023|14.908|43.5159988|1097.32|25.155|2.527|8.02250004|12.283|298.705|9.518|1.027|16.729|0.233|1|0.261|15.939||32|0.319|12.559||32|0.825|8.295||32|0.576|17.452|0.256|1|16.654||32|13.745||32|9.49||32|16.99|0.233|1|16.258||32|13.384||32|8.871||32|16.653|0.222|1|16.024||32|13.013||32|9.063|0.477|1|16.285|0.196|1|15.799||32|12.601||32|8.666|0.431|1|15.851|0.159|1|15.543||32|12.218||32|8.51|0.473|1|15.386|0.122|1|15.273||32|11.873||32|8.429|0.542|17|14.914|0.092|1|15.57|0.421|1|11.591||32|7.536||32|14.418|0.067|1|14.962|0.277|1|12.089|0.504|1|7.392||32|16.975|0.447|0.093|3.801|21|0|55275.28745078|55277.20605032|55276.18490037|17.467|2.856|0.595|3.46000004|15|0|55275.28745078|55277.20605032|55276.18490037|14.117|4.967|1.059|3.90799999|9|0|55275.28745078|55277.20605032|55276.16554954|9.933|3.797|0.81|2.8499999|12|0|55275.28745078|55277.20605032|55276.16554954|-30|39|77|1|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005176|1|0.0000782904269977|-0.0009953387841533|-0.999999501585533|131000000|
+J081603.46-895633.8|124.0144262|-89.9427405|0.1068|0.1053|-0.0081|302.8719257|-27.1074792|269.9193208|-66.6081504|2037.993|501.608|1201089401241004144|1201m894_ab41-004144|1201m894_ab41|4144|13.722|0.026|41.8|2.03800011|13.809|0.034|31.5|0.977500021|12.467||1.6|1.07200003|8.963||1.4|0.981700003|1.27699995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|21|21|21|21|3|20|0|20|21.617|21.705|20.51|20.717|0.0|0.0|0.0|0.0|0||0||0||0||514.460022|12.3030005|9.395|2.755|0.0|188.979996|5.9993|21.748|3.389|0.0|73.7519989|44.7869987|1097.073|23.88|3.359|16.6100006|12.2869997|298.139|9.511|1.781|13.586|0.018|0|0.261|13.674|0.044|0|0.319|12.172||32|0.825|8.539||32|0.576|14.286|0.019|0|14.493|0.049|0|13.37||32|9.684||32|13.847|0.018|0|13.993|0.044|0|12.997||32|9.115||32|13.639|0.019|0|13.749|0.045|0|12.715||32|8.706||32|13.529|0.021|0|13.617|0.049|0|12.481||32|8.45||32|13.478|0.023|1|13.545|0.055|1|12.284||32|8.272||32|13.454|0.027|1|13.506|0.062|1|12.104||32|8.09||32|13.435|0.03|1|13.477|0.071|1|11.94||32|7.933||32|13.413|0.034|1|13.446|0.079|1|11.787||32|7.811||32|13.723|0.046|0.01|0.171|20|0|55275.02271543|55276.94144233|55276.08450699|13.805|0.1|0.022|0.361999989|20|0|55275.02271543|55276.94144233|55276.08450699|12.828|2.836|0.634|3.8269999|10|1|55275.02271543|55276.94144233|55276.05820141|10.399|3.856|0.862|4.27400017|10|0|55275.02271543|55276.94144233|55276.05820141|22|8|11|0|0|0||||||||||||||||||||||||||1258763272|1.063|-102.2|1|15.03|0.062|14.416|0.075|14.25|0.097|1201089401241004144|1|-0.0005590471644051|0.0008283715256005|-0.999999500633317|111000000|
+J091640.51-895631.7|139.1688065|-89.9421601|0.8558|0.7587|-0.2367|302.8795616|-27.0938971|269.8898112|-66.5984879|1998.744|495.226|1201089401241005065|1201m894_ab41-005065|1201m894_ab41|5065|17.039|0.135|8.1|0.945500016|17.101|0.421|2.6|0.869000018|12.927|0.471|2.3|1.07799995|9.506||-1.1|0.953199983|0.957599998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BCCU|7|0000|4|20|1|20|3|19|0|19|20.712|21.309|20.818|20.413|0.0|0.0|0.0|0.0|0||0||0||0||24.2259998|3.00480008|9.449|2.867|0.29|9.10949993|3.53259993|21.784|3.367|0.156|106.949997|46.3919983|1097.334|24.518|1.332|-13.6219997|12.4860001|298.678|9.675|1.181|17.236|0.442|1|0.261|16.513|0.49|1|0.319|14.57||32|0.825|8.792||32|0.576|17.6|0.346|1|17.261|0.518|1|13.669||32|9.809||32|17.497|0.442|1|16.832|0.49|1|15.395||32|9.368||32|16.86||32|16.603|0.514|1|19.372||32|8.834||32|16.838||32|15.684||32|12.777||32|8.384||32|16.606||32|15.508||32|12.572||32|8.033||32|16.213||32|15.298||32|12.393||32|7.727||32|16.461|0.453|1|15.69|0.458|1|12.226||32|7.463||32|15.852|0.298|1|15.243|0.35|1|12.073||32|7.263||32|16.938|0.489|0.109|2.787|18|0|55275.02271543|55276.94144233|55276.02180825|17.549|2.483|0.555|2.55200005|12|0|55275.02271543|55276.94144233|55276.02180825|12.863|2.593|0.595|3.59599996|8|2|55275.02271543|55276.94144233|55275.99081824||||3.10899997|7|0|55275.02271543|55276.94144233|55275.99081824|-17|-38|-55|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005065|1|-0.0007638241721205|0.0006600413661201|-0.999999490458885|111000000|
+J215108.56-895628.8|327.785691|-89.9413427|0.515|0.4787|-0.133|302.9785973|-27.1695722|270.1246053|-66.5293899|1977.505|488.468|3004089401241004947|3004m894_ab41-004947|3004m894_ab41|4947|16.712|0.087|12.4|0.967199981|16.48|0.223|4.9|0.984799981|12.61||1.6|0.985199988|9.596||-0.4|1.04299998|0.991900027|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|7|25|0|25|0|24|1|24|24.633|24.757|23.877|23.713|0.0|0.0|0.0|0.0|0||0||0||0||32.7340012|2.63330007|9.324|2.788|0.0|16.1469994|3.30940008|21.776|3.326|0.051|62.5369987|40.3260002|1097.181|24.52|2.48|-5.00909996|11.5010004|298.358|9.458|1.147|16.477|0.198|0|0.261|15.672||32|0.319|12.532||32|0.825|8.877||32|0.576|17.089|0.199|0|16.306||32|13.766||32|9.89||32|16.738|0.198|0|15.991||32|13.357||32|9.453||32|16.626|0.229|0|15.87||32|12.996||32|9.105||32|16.582|0.273|1|15.804||32|12.692||32|11.339||32|16.494|0.303|1|15.719||32|12.426||32|8.459||32|16.237|0.284|1|15.534||32|12.142||32|8.173||32|15.818|0.224|1|15.273||32|11.867||32|7.931||32|15.34|0.166|1|14.974||32|12.333|0.498|1|7.705||32|16.697|0.371|0.074|1.737|23|0|55275.28745078|55277.33835439|55276.25865158|16.367|0.969|0.194|3.42400002|20|0|55275.28745078|55277.33835439|55276.25865158|13.212|2.965|0.605|3.13199997|13|0|55275.28745078|55277.33835439|55276.24398629||||3.80999994|10|0|55275.28745078|55277.33835439|55276.24398629|39|-21|-43|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004947|1|0.0008661648998719|-0.0005457552932415|-0.999999475954626|131000000|
+J072901.24-895627.8|112.2551916|-89.941056|0.7448|0.7933|-0.2604|302.8665801|-27.1185185|269.9437545|-66.6152519|2069.296|504.878|1201089401241004831|1201m894_ab41-004831|1201m894_ab41|4831|17.072|0.131|8.3|0.809899986|17.069||0.7|0.915400028|12.337|0.269|4.0|1.245|9.293||0.5|1.06900001|1.00199997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|2|21|0|21|2|20|0|20|22.078|22.342|21.391|21.489|0.0|0.0|0.0|0.0|0||0||0||0||23.507|2.83319998|9.397|2.776|0.05|2.3369|3.52410007|21.767|3.401|0.055|184.229996|45.5909996|1097.553|23.677|2.654|5.69810009|12.3549995|298.144|9.322|0.806|15.779|0.068|0|0.261|16.415|0.501|0|0.319|12.164|0.331|0|0.825|8.956||32|0.576|16.654|0.087|0|16.5||32|13.851|0.528|0|9.963||32|16.04|0.068|0|16.734|0.501|0|12.989|0.331|0|9.532||32|15.584|0.057|0|16.207|0.401|0|12.461|0.265|0|9.192||32|15.01|0.042|0|15.341|0.224|0|12.056|0.227|0|8.902||32|14.175|0.024|1|14.227|0.097|1|11.689|0.194|1|9.634||32|13.167|0.013|1|13.152|0.043|1|11.335|0.166|1|8.195||32|12.208|0.008|1|12.254|0.022|1|10.996|0.141|1|7.847||32|11.507|0.007|1|11.609|0.015|1|10.701|0.124|1|7.606||32|17.114|0.415|0.09|2.84|20|0|55275.02271543|55276.94144233|55276.08450699|17.642|2.713|0.592|2.41499996|12|0|55275.02271543|55276.94144233|55276.08450699|12.549|1.601|0.358|3.45700002|13|3|55275.02271543|55276.94144233|55276.05820141|10.655|8.41|1.88|1.54299998|8|0|55275.02271543|55276.94144233|55276.05820141|-25|-42|19|0|1|0|||||||||||||||||||||||||||||0|||||||1201089401241004831|1|-0.0003896276884032|0.0009521307444992|-0.999999470818515|111000000|
+J184945.42-895627.5|282.4392767|-89.9409768|0.1|0.1008|-0.0148|302.9982331|-27.127708|270.0318884|-66.503068|2095.81|498.981|3004089401241004029|3004m894_ab41-004029|3004m894_ab41|4029|13.56|0.025|42.6|0.946200013|13.611|0.031|35.3|1.07299995|12.898|0.44|2.5|0.968900025|9.214||0.6|0.878799975|0.964900017|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AACU|7|0000|22|23|23|23|2|22|0|22|22.167|23.038|21.995|21.98|0.0|0.0|0.0|0.0|0||0||0||0||596.97998|14.0159998|9.392|2.685|0.096|226.770004|6.41730022|21.762|3.296|0.094|109.870003|44.4840012|1099.16|25.496|2.827|7.53800011|12.5740004|298.969|9.944|0.763|13.578|0.022|1|0.261|13.638|0.039|1|0.319|11.842||32|0.825|8.502||32|0.576|14.203|0.022|1|14.393|0.042|1|13.199||32|9.611||32|13.839|0.022|1|13.957|0.039|1|12.667||32|9.078||32|13.697|0.025|1|13.776|0.042|1|12.913|0.472|1|8.688||32|13.603|0.028|1|13.663|0.046|1|12.464|0.386|1|8.378||32|13.513|0.03|1|13.566|0.051|1|12.132|0.343|1|8.056||32|13.435|0.033|1|13.493|0.056|1|11.946|0.341|1|7.768||32|13.381|0.037|1|13.449|0.062|1|11.9|0.38|1|7.532||32|13.356|0.041|1|13.425|0.07|1|11.946|0.455|1|7.331||32|13.562|0.043|0.009|0.196|21|0|55275.28745078|55277.20605032|55276.18490037|13.608|0.128|0.027|0.400000006|22|0|55275.28745078|55277.20605032|55276.18490037|12.854|1.863|0.397|4.76800013|13|1|55275.28745078|55277.20605032|55276.16554954|10.571|5.86|1.249|2.93600011|10|0|55275.28745078|55277.20605032|55276.16554954|-2|23|20|0|0|0||||||||||||||||||||||||||970584310|0.021|-9.2|1|14.279|0.036|13.731|0.041|13.58|0.053|3004089401241004029|1|0.0002218991914261|-0.0010059668162535|-0.999999469395616|131000000|
+J232616.89-895627.1|351.5703952|-89.9408758|0.72|0.6531|0.0992|302.9560479|-27.1832439|270.1469791|-66.5519728|2070.688|505.151|89401241005362|0000m894_ab41-005362|0000m894_ab41|5362|17.029|0.113|9.6|0.867900014|16.838||1.5|0.928799987|13.174|0.538|2.0|1.05900002|9.294||0.5|1.05499995|0.973399997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|3|24|1|24|1|23|1|23|23.864|23.804|23.39|23.571|0.0|0.0|0.0|0.0|0||0||0||0||24.4580002|2.54870009|9.384|2.825|0.0|4.9526|3.3283999|21.778|3.322|0.052|85.1679993|42.2200012|1098.489|24.227|0.396|5.71290016|12.3260002|298.838|9.6|0.0|16.706|0.258|0|0.261|16.275||32|0.319|12.314||32|0.825|9.01||32|0.576|17.363|0.268|0|16.894||32|13.586||32|10.014||32|16.967|0.258|0|16.594||32|13.139||32|9.586||32|16.67|0.253|0|16.437||32|12.742||32|9.649||32|16.277|0.219|1|16.239||32|12.428||32|8.857||32|15.763|0.164|1|15.84||32|12.184||32|8.56||32|15.165|0.112|1|15.292||32|11.993||32|8.254||32|14.62|0.079|1|15.31|0.33|1|11.815||32|7.962||32|14.214|0.062|1|14.824|0.242|1|11.622||32|7.703||32|17.141|0.561|0.114|2.241|22|0|55275.28745078|55277.33835439|55276.24674528|17.642|4.504|0.919|3.18000007|12|0|55275.28745078|55277.33835439|55276.24674528|13.119|2.924|0.61|2.53699994|13|0|55275.28745078|55277.33835439|55276.2309247|13.182|||3.87199998|10|0|55275.28745078|55277.33835439|55276.2309247|41|55|-63|1|1|1|||||||||||||||||||||||||||||0|||||||89401241005362|1|0.0010207631027762|-0.0001512721526025|-0.99999946757957|131000000|
+J205005.74-895625.6|312.5239289|-89.940467|0.5341|0.5136|-0.1686|302.9900563|-27.1576084|270.1009792|-66.5168009|2015.427|504.454|3004089401241005008|3004m894_ab41-005008|3004m894_ab41|5008|16.747|0.089|12.2|0.918299973|16.668|0.264|4.1|0.87379998|12.851||0.8|0.96450001|9.525||-0.1|0.930299997|0.918900013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|7|24|0|24|0|23|0|23|24.848|24.092|23.923|23.63|0.0|0.0|0.0|0.0|0||0||0||0||31.7240009|2.60330009|9.377|2.759|0.09|13.5719995|3.30439997|21.769|3.299|0.166|33.0369987|40.8129997|1097.028|24.384|0.914|-1.7938|12.2770004|298.603|9.77|0.894|16.771|0.209|1|0.261|16.668|0.527|1|0.319|12.725||32|0.825|8.718||32|0.576|17.264|0.186|1|17.269|0.491|1|13.911||32|9.865||32|17.032|0.209|1|16.987|0.527|1|13.55||32|9.294||32|16.972|0.254|1|16.029||32|13.28||32|8.876||32|16.657|0.237|1|16.427|0.502|1|13.041||32|8.603||32|16.176|0.183|1|15.921|0.379|1|12.7||32|8.403||32|15.794|0.153|1|15.488|0.302|1|12.289||32|8.307||32|15.573|0.145|1|15.183|0.265|1|11.959||32|9.384||32|15.439|0.147|1|14.975|0.252|1|11.725||32|8.097||32|16.738|0.419|0.086|2.275|23|0|55275.28745078|55277.20605032|55276.21366396|16.667|1.63|0.333|4.12699986|17|0|55275.28745078|55277.20605032|55276.21366396|13.576|4.186|0.873|3.59699988|13|0|55275.28745078|55277.20605032|55276.19640507||||1.66199994|9|0|55275.28745078|55277.20605032|55276.19640507|-2|37|45|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241005008|1|0.0007022890690689|-0.0007657717116652|-0.999999460191729|131000000|
+J001042.30-895625.3|2.6762714|-89.940384|0.3869|0.3522|0.0719|302.943765|-27.1868328|270.149726|-66.5634211|2040.707|507.941|89401241004838|0000m894_ab41-004838|0000m894_ab41|4838|16.316|0.072|15.2|0.991599977|15.776|0.132|8.3|0.924600005|11.902|0.172|6.3|1.03900003|9.127|0.357|3.0|1.00199997|0.985300004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBC|15|0000|12|22|3|22|1|21|0|21|22.649|22.737|22.618|22.529|0.0|0.0|0.0|0.0|0||0||0||0||47.151001|3.10540009|9.376|2.808|0.194|30.8759995|3.7414999|21.787|3.389|0.06|274.890015|43.5810013|1097.502|23.535|1.34|35.4140015|11.6359997|298.209|9.312|0.726|16.209|0.14|1|0.261|15.582|0.235|1|0.319|12.25|0.345|0|0.825|8.274||32|0.576|16.798|0.135|0|16.362|0.256|0|13.716|0.443|0|9.349||32|16.47|0.14|1|15.901|0.235|1|13.075|0.345|0|8.85||32|16.399|0.169|1|15.709|0.255|1|12.721|0.323|1|8.466||32|16.356|0.201|1|15.608|0.288|1|12.513|0.331|1|8.862|0.513|1|16.214|0.211|1|15.521|0.319|1|12.354|0.343|1|8.58|0.501|1|15.884|0.184|1|15.369|0.328|1|12.149|0.336|1|8.246|0.457|1|15.379|0.134|1|15.096|0.296|1|11.871|0.302|1|7.96|0.427|1|14.82|0.093|1|14.748|0.248|1|11.558|0.261|1|7.76|0.426|1|16.29|0.354|0.076|1.248|21|1|55275.28745078|55277.33835439|55276.28283929|15.782|0.64|0.136|3.38599992|19|0|55275.28745078|55277.33835439|55276.28283929|11.876|0.801|0.175|5.35500002|18|0|55275.28745078|55277.33835439|55276.26723075|9.081|1.431|0.312|2.50099993|15|0|55275.28745078|55277.33835439|55276.26723075|-10|35|17|0|1|0|||||||||||||||||||||||||||||0|||||||89401241004838|1|0.0010393609181829|0.0000485836243074|-0.99999945868411|101000000|
+J033136.80-895624.5|52.9033478|-89.9401413|0.749|0.7919|0.2242|302.8886264|-27.1739747|270.0909402|-66.608427|2067.615|507.519|600089401241005106|0600m894_ab41-005106|0600m894_ab41|5106|17.286|0.144|7.5|0.831200004|16.756|0.295|3.7|1.00600004|12.382|0.254|4.3|1.0|9.205||0.7|1.01699996|0.958999991|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|2|23|2|23|1|22|0|22|23.107|23.391|22.097|22.396|0.0|0.0|0.0|0.0|0||0||0||0||19.2950001|2.56299996|9.351|2.813|0.0|12.5200005|3.39890003|21.765|3.271|0.0|176.669998|41.3709984|1096.967|22.714|0.0|8.55630016|12.2089996|298.301|9.575|0.994|16.857|0.219|1|0.261|16.025||32|0.319|11.686||32|0.825|8.55||32|0.576|17.514|0.226|1|16.564||32|12.875||32|9.565||32|17.118|0.219|1|16.344||32|12.511||32|9.126||32|16.934|0.237|1|16.359||32|12.236||32|8.78||32|16.76|0.251|1|16.329||32|12.0||32|8.487||32|16.605|0.263|1|16.125||32|11.797||32|8.226||32|16.532|0.291|1|15.941||32|11.615||32|7.99||32|16.563|0.347|1|15.777||32|11.452||32|7.775||32|16.671|0.441|1|15.624||32|11.3||32|7.575||32|17.23|0.734|0.153|3.575|20|1|55275.28745078|55277.20605032|55276.24819836|16.878|1.592|0.332|4.30600023|14|1|55275.28745078|55277.20605032|55276.24819836|12.333|1.186|0.253|1.80200005|14|0|55275.28745078|55277.20605032|55276.23172471|10.404|5.191|1.107|3.11599994|11|0|55275.28745078|55277.20605032|55276.23172471|53|37|-14|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005106|1|0.0006301411097815|0.0008332970987169|-0.999999454268915|101000000|
+J105417.24-895623.7|163.5718578|-89.9399219|0.3387|0.3137|0.0434|302.8989088|-27.0757539|269.8550324|-66.5776329|2093.213|502.673|1802089401241004323|1802m894_ab41-004323|1802m894_ab41|4323|15.875|0.059|18.5|0.729600012|15.934|0.158|6.9|0.98210001|13.023|0.532|2.0|1.02999997|9.23||0.5|1.023|0.935899973|1|0|0.0|0.0|0.0|0.006|0000|0000|0|0nnn|ABCU|7|0000|15|20|2|20|1|19|0|19|20.714|20.648|19.537|19.412|0.0|0.0|0.0|0.0|0||0||0||0||70.8259964|3.82200003|9.434|2.826|0.23|26.6959991|3.88630009|21.83|3.5|0.088|97.901001|47.9430008|1096.04|24.704|5.154|6.25409985|12.9729996|298.314|9.79|1.955|15.739|0.102|0|0.261|15.831|0.377|0|0.319|11.529||32|0.825|8.346||32|0.576|16.386|0.105|0|16.582|0.401|0|12.718||32|9.356||32|16.0|0.102|0|16.15|0.377|0|12.354||32|8.922||32|15.849|0.114|0|15.929|0.4|0|12.069||32|8.575||32|15.78|0.133|0|15.711|0.405|0|11.837||32|8.283||32|15.71|0.149|1|15.482|0.395|1|11.635||32|8.023||32|15.565|0.154|1|15.268|0.383|1|11.454||32|7.788||32|15.324|0.144|1|15.015|0.353|1|11.288||32|7.573||32|14.943|0.116|1|14.66|0.293|1|11.138||32|7.375||32|15.851|0.172|0.039|0.75|19|0|55275.02271543|55276.94144233|55276.02180825|15.773|0.629|0.141|3.60800004|18|0|55275.02271543|55276.94144233|55276.02180825|12.65|2.093|0.48|3.71300006|11|0|55275.02271543|55276.94144233|55275.99081824|10.012|3.798|0.871|3.8440001|8|0|55275.02271543|55276.94144233|55275.99081824|-9|13|-55|0|0|1||||||||||||||||||||||||||748854892|0.669|-74.8|1|16.395|0.124|15.624|0.163|15.545||1802089401241004323|1|-0.0010057535333649|0.0002965462304818|-0.999999450259931|111000000|
+J201106.28-895623.5|302.7761674|-89.9398664|0.25|0.2508|-0.0736|302.9954532|-27.1486268|270.0816731|-66.5101278|2041.641|509.34|3004089401241004499|3004m894_ab41-004499|3004m894_ab41|4499|15.784|0.046|23.5|0.875199974|15.781|0.122|8.9|0.766700029|12.683||1.3|1.08299994|9.573||-0.5|0.963|0.917299986|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|24|24|1|24|1|23|0|23|23.692|23.831|22.961|22.909|0.0|0.0|0.0|0.0|0||0||0||0||76.9950027|3.2816|9.363|2.797|0.0|30.7399998|3.44429994|21.751|3.252|0.0|51.7420006|41.0730019|1096.005|23.933|0.0|-6.24660015|11.743|298.522|9.702|0.546|15.439|0.082|1|0.261|15.394|0.202|1|0.319|12.548||32|0.825|8.679||32|0.576|16.223|0.095|1|16.311|0.25|1|13.74||32|9.75||32|15.7|0.082|1|15.713|0.202|1|13.373||32|9.255||32|15.336|0.075|1|15.333|0.183|1|13.1||32|8.912||32|15.061|0.073|1|15.075|0.179|1|12.866||32|8.622||32|14.869|0.073|1|14.91|0.185|1|12.662||32|8.299||32|14.735|0.076|1|14.801|0.197|1|12.481||32|7.978||32|14.639|0.081|1|14.728|0.214|1|12.318||32|7.69||32|14.57|0.088|1|14.695|0.239|1|12.167||32|8.166|0.516|1|15.794|0.208|0.042|0.752|23|0|55275.28745078|55277.20605032|55276.21366396|15.744|0.326|0.067|1.42499995|23|0|55275.28745078|55277.20605032|55276.21366396|14.448|9.472|1.975|5.44799995|13|1|55275.28745078|55277.20605032|55276.19640507||||2.00200009|9|0|55275.28745078|55277.20605032|55276.19640507|25|-45|24|1|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004499|1|0.0005681715608936|-0.0008824355805802|-0.99999944924411|131000000|
+J183501.12-895622.7|278.7546701|-89.9396467|0.1975|0.2113|-0.0429|302.999553|-27.12382|270.023038|-66.5010571|2106.443|498.84|3004089401241004321|3004m894_ab41-004321|3004m894_ab41|4321|15.392|0.039|27.5|1.36399996|15.449|0.095|11.4|1.00600004|12.075|0.2|5.4|1.00800002|8.835||1.9|1.01699996|1.09800005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|10nn|AABU|7|0000|23|23|7|23|1|22|0|22|22.685|22.701|21.943|21.757|0.0|0.0|0.0|0.0|0||0||0||0||110.449997|4.01550007|9.409|2.677|0.079|41.743|3.64599991|21.791|3.322|0.101|234.320007|43.1889992|1095.773|24.243|1.691|22.4319992|11.9530001|298.535|9.736|1.183|14.868|0.055|1|0.261|14.956|0.109|1|0.319|11.675||32|0.825|8.387||32|0.576|15.732|0.069|1|15.918|0.141|1|12.973||32|9.45||32|15.129|0.055|1|15.275|0.109|1|12.5||32|8.963||32|14.641|0.046|1|14.754|0.087|1|12.211||32|8.571||32|14.123|0.035|1|14.248|0.068|1|12.0||32|8.322||32|13.705|0.029|1|13.853|0.056|1|11.84||32|8.198||32|13.457|0.027|1|13.612|0.053|1|11.753||32|8.104||32|13.334|0.028|1|13.483|0.055|1|11.731||32|7.955||32|13.276|0.031|1|13.42|0.059|1|11.769||32|7.757||32|15.395|0.181|0.038|0.788|22|0|55275.28745078|55277.20605032|55276.18490037|15.381|0.302|0.063|4.25400019|22|0|55275.28745078|55277.20605032|55276.18490037|12.172|0.905|0.193|3.4749999|19|0|55275.28745078|55277.20605032|55276.16554954|9.494|2.382|0.508|2.12800002|13|0|55275.28745078|55277.20605032|55276.16554954|14|-4|34|0|0|1|||||||||||||||||||||||||||||0|||||||3004089401241004321|1|0.0001603261099746|-0.001041091065112|-0.999999445212312|131000000|
+J012927.13-895621.4|22.3630467|-89.9392882|0.3759|0.3657|0.1032|302.9206469|-27.1880345|270.14128|-66.5837446|1987.517|499.026|89401241004848|0000m894_ab41-004848|0000m894_ab41|4848|16.259|0.067|16.3|0.878400028|16.275|0.204|5.3|0.908599973|12.128|0.205|5.3|1.16100001|9.339||0.5|0.999599993|0.981999993|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|16|22|0|21|2|21|0|21|21.558|20.896|20.884|20.696|0.0|0.0|0.0|0.0|0||0||0||0||49.7070007|3.04500008|9.354|2.702|0.048|19.4909992|3.65339994|21.765|3.334|0.0|223.350006|42.0810013|1098.287|23.105|0.673|5.65360022|11.7360001|298.917|9.418|1.015|16.249|0.238|1|0.261|16.131|0.384|1|0.319|11.818||32|0.825|8.669||32|0.576|16.842|0.227|1|16.821|0.379|1|13.188||32|9.674||32|16.51|0.238|1|16.45|0.384|1|12.643||32|9.245||32|16.374|0.271|1|16.43|0.485|1|12.832|0.442|1|8.908||32|16.273|0.304|1|15.694||32|12.327|0.342|1|8.613||32|16.178|0.336|1|15.656||32|11.896|0.277|1|9.389||32|16.034|0.346|1|15.546||32|11.532|0.233|1|7.991||32|15.735|0.305|1|15.271||32|11.22|0.203|1|7.75||32|15.259|0.227|1|15.59|0.519|1|10.93|0.179|1|7.537||32|16.239|0.256|0.055|1.255|21|0|55275.28745078|55277.33835439|55276.28283929|16.282|1.028|0.224|3.70300007|18|0|55275.28745078|55277.20605032|55276.23257667|11.928|0.889|0.194|2.54699993|15|0|55275.28745078|55277.33835439|55276.26723075|10.712|5.682|1.24|2.47099996|9|0|55275.28745078|55277.33835439|55276.26723075|23|7|68|0|0|1|||||||||||||||||||||||||||||0|||||||89401241004848|1|0.0009799284532739|0.0004031581780136|-0.999999438601697|101000000|
+J175316.27-895620.5|268.3178304|-89.939036|0.2247|0.2416|-0.0375|302.9982123|-27.1128338|269.995512|-66.4997711|1973.183|493.024|2403089401241004321|2403m894_ab41-004321|2403m894_ab41|4321|15.59|0.043|25.1|0.940500021|15.786|0.127|8.6|0.906099975|13.126||-0.1|1.06500006|9.512||-1.5|0.953000009|0.962499976|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|22|23|2|23|0|22|0|22|23.273|23.453|22.172|22.271|0.0|0.0|0.0|0.0|0||0||0||0||92.0419998|3.67319989|9.4|2.65|0.128|30.5990009|3.57220006|21.76|3.307|0.233|-5.00500011|44.5250015|1097.133|24.817|0.568|-18.8439999|12.4209995|298.705|9.702|0.408|15.738|0.142|0|0.261|15.678|0.243|0|0.319|13.745||32|0.825|9.007||32|0.576|16.28|0.133|0|16.407|0.256|0|15.944||32|9.995||32|15.999|0.142|0|15.997|0.243|0|14.57||32|9.583||32|15.988|0.181|1|15.881|0.281|1|12.885||32|9.02||32|16.049|0.237|1|15.872|0.345|1|12.654||32|8.571||32|16.068|0.292|1|15.855|0.41|1|12.45||32|8.208||32|15.979|0.318|1|15.796|0.459|1|12.268||32|7.874||32|15.838|0.324|1|15.739|0.507|1|12.105||32|8.328|0.508|17|15.756|0.345|1|14.917||32|11.955||32|8.05|0.46|17|15.595|0.137|0.029|0.917|22|0|55275.28745078|55277.20605032|55276.18490037|15.674|0.356|0.074|1.55200005|20|0|55275.28745078|55277.20605032|55276.18490037|14.764|||4.24900007|9|0|55275.28745078|55277.20605032|55276.16554954||||4.5630002|7|0|55275.28745078|55277.20605032|55276.16554954|-27|13|82|1|0|0||||||||||||||||||||||||||970399983|0.324|-78.5|1|15.811|0.085|15.601|0.17|15.826||2403089401241004321|1|-0.0000312345501444|-0.0010635632024698|-0.999999433928698|121000000|
+J090044.47-895619.8|135.1853242|-89.9388514|1.1065|1.0959|-0.313|302.8738741|-27.0954463|269.890759|-66.6037694|2006.568|506.669|1201089401241005227|1201m894_ab41-005227|1201m894_ab41|5227|17.344|0.185|5.9|0.890999973|16.886||1.1|0.83920002|12.979|0.501|2.2|0.883300006|9.421||0.0|0.984099984|0.896099985|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|2|20|0|20|0|19|0|19|21.243|20.974|20.909|20.44|0.0|0.0|0.0|0.0|0||0||0||0||18.2999992|3.11509991|9.424|2.827|0.017|3.8427|3.63129997|21.82|3.396|0.163|101.959999|47.0250015|1098.462|24.983|2.219|0.484219998|13.2709999|298.493|9.922|0.657|16.526|0.192|1|0.261|16.076||32|0.319|11.897||32|0.825|8.12||32|0.576|17.337|0.231|1|16.607||32|13.133||32|9.336||32|16.787|0.192|1|16.395||32|12.722||32|8.696||32|16.468|0.185|1|16.213||32|12.49||32|8.212||32|16.255|0.189|1|15.981||32|12.369||32|7.86||32|16.055|0.189|1|15.775||32|12.288||32|7.614||32|15.783|0.174|1|15.595||32|12.107||32|7.399||32|15.477|0.152|1|15.431||32|11.943||32|7.175||32|15.202|0.136|1|15.279||32|11.791||32|6.977||32|17.383|0.993|0.222|3.076|17|1|55275.02271543|55276.94144233|55276.02180825|18.921|9.256|2.07|3.10100007|9|0|55275.02271543|55276.94144233|55276.02180825|12.591|1.917|0.44|2.10100007|9|0|55275.02271543|55276.94144233|55275.99081824|10.852|||3.50200009|8|0|55275.02271543|55276.94144233|55275.99081824|-47|13|19|1|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005227|1|-0.0007570924661999|0.0007522105830344|-0.999999430494956|111000000|
+J120226.41-895619.6|180.6100611|-89.9387823|0.5288|0.4819|0.1084|302.91733|-27.0683317|269.8461137|-66.5599817|2047.067|512.291|1802089401241004736|1802m894_ab41-004736|1802m894_ab41|4736|16.641|0.09|12.1|1.03900003|16.263|0.211|5.1|0.990700006|12.512|0.331|3.3|1.02400005|9.023||1.0|0.981999993|1.00600004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|9|21|1|20|0|20|0|20|22.574|22.467|21.936|21.687|0.0|0.0|0.0|0.0|0||0||0||0||34.9599991|2.90009999|9.398|2.734|0.261|19.7169991|3.83450007|21.825|3.376|0.202|156.699997|47.8330002|1097.365|25.22|5.312|13.1269999|12.927|297.702|9.526|1.352|16.474|0.226|1|0.261|16.03|0.305|1|0.319|11.671|0.192|1|0.825|8.291||32|0.576|17.106|0.229|0|16.83|0.34|0|13.253|0.276|0|9.465||32|16.735|0.226|1|16.349|0.305|1|12.496|0.192|1|8.867||32|16.582|0.254|1|16.114|0.317|1|11.982|0.155|1|9.172|0.518|17|16.476|0.287|1|15.902|0.325|1|11.562|0.131|1|8.756|0.457|17|16.324|0.299|1|15.601|0.296|1|11.198|0.113|1|8.48|0.444|17|16.149|0.301|1|15.213|0.245|1|10.885|0.1|1|8.247|0.44|17|15.953|0.292|1|14.794|0.193|1|10.606|0.09|1|7.995|0.42|17|15.672|0.26|1|14.381|0.152|1|10.337|0.081|1|7.804|0.419|17|16.611|0.451|0.099|2.178|19|1|55275.02271543|55276.94144233|55276.02464001|16.304|1.094|0.245|1.91400003|14|0|55275.02271543|55276.94144233|55276.02180825|12.215|0.85|0.19|3.56200004|15|0|55275.02271543|55276.94144233|55275.99534108|10.647|6.336|1.417|2.31100011|10|0|55275.02271543|55276.94144233|55275.99534108|28|-20|0|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004736|1|-0.0010683888761311|-0.0000113761802279|-0.999999429207733|121000000|
+J224636.37-895619.4|341.6515623|-89.9387246|0.6034|0.5292|-0.1123|302.9676069|-27.1805603|270.1460993|-66.5413517|2098.498|504.3|89401241005204|0000m894_ab41-005204|0000m894_ab41|5204|16.822|0.097|11.2|0.824500024|17.211|0.432|2.5|1.03299999|12.543|0.288|3.8|0.977199972|9.304||0.9|1.00300002|0.956099987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACBU|7|0000|7|25|0|25|1|24|0|24|24.746|24.728|23.935|23.848|0.0|0.0|0.0|0.0|0||0||0||0||29.5970001|2.6473999|9.363|2.811|0.024|8.23729992|3.27550006|21.794|3.357|0.273|152.399994|40.3580017|1097.984|24.032|0.0|9.14379978|10.4689999|298.483|9.227|0.688|16.53|0.157|0|0.261|15.918||32|0.319|11.863||32|0.825|9.032||32|0.576|17.136|0.153|0|16.554||32|13.058||32|10.028||32|16.791|0.157|0|16.237||32|12.688||32|9.608||32|16.673|0.18|0|16.079||32|12.418||32|9.278||32|16.491|0.186|1|15.955||32|12.228||32|8.999||32|16.05|0.148|1|15.641||32|13.013||32|8.757||32|15.277|0.086|1|15.725|0.476|1|11.962||32|8.537||32|14.474|0.048|1|14.761|0.228|1|11.797||32|8.336||32|13.888|0.032|1|14.113|0.144|1|11.646||32|8.035||32|16.875|0.462|0.092|3.58|24|1|55275.28745078|55277.33835439|55276.25865158|17.095|1.89|0.378|3.60899997|16|0|55275.28745078|55277.33835439|55276.25865158|12.543|1.441|0.294|3.25900006|17|0|55275.28745078|55277.33835439|55276.24398629|10.261|4.412|0.9|2.73200011|12|0|55275.28745078|55277.33835439|55276.24398629|-17|51|-41|0|1|1|||||||||||||||||||||||||||||0|||||||89401241005204|1|0.0010150864237159|-0.0003366600148931|-0.99999942812963|131000000|
+J164848.81-895618.9|252.2033968|-89.938602|0.2861|0.3145|0.0545|302.9912454|-27.0968381|269.9529345|-66.5022418|2015.024|509.359|2403089401241004484|2403m894_ab41-004484|2403m894_ab41|4484|16.186|0.062|17.5|0.933499992|15.256|0.078|13.9|0.899399996|12.575|0.321|3.4|1.01499999|9.212||0.7|1.01999998|0.96359998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AABU|7|0000|16|23|9|23|0|22|0|22|23.662|23.379|22.928|22.768|0.0|0.0|0.0|0.0|0||0||0||0||53.1459999|3.03769994|9.415|2.693|0.0|49.8219986|3.57730007|21.803|3.319|0.0|147.860001|43.6910019|1096.211|24.914|0.0|8.12469959|12.3109999|298.256|9.687|0.597|16.187|0.18|0|0.261|15.274|0.132|0|0.319|11.865||32|0.825|8.355||32|0.576|16.812|0.178|0|15.969|0.133|0|13.117||32|9.49||32|16.448|0.18|0|15.593|0.132|0|12.69||32|8.931||32|16.291|0.202|1|15.52|0.16|1|12.378||32|9.197|0.512|1|16.178|0.225|1|15.531|0.2|1|12.118||32|8.792|0.453|1|16.024|0.234|1|15.488|0.23|1|11.871||32|8.418|0.399|1|15.764|0.218|1|15.326|0.234|1|12.335|0.523|1|8.04|0.343|1|15.47|0.194|1|15.084|0.218|1|12.011|0.451|1|7.722|0.307|17|15.241|0.181|1|14.861|0.205|1|11.823|0.437|1|7.491|0.293|17|16.171|0.351|0.073|1.879|22|1|55275.02271543|55276.94144233|55276.08997277|15.259|0.362|0.075|1.43499994|22|0|55275.02271543|55276.94144233|55276.08997277|12.468|1.499|0.32|4.40100002|18|0|55275.02271543|55276.94144233|55276.06630705|10.158|4.777|1.018|3.454|11|0|55275.02271543|55276.94144233|55276.06630705|23|-14|-44|1|0|1|||||||||||||||||||||||||||||0|||||||2403089401241004484|1|-0.0003275219335935|-0.0010203192047316|-0.999999425838887|121000000|
+J143229.42-895618.6|218.1226008|-89.938518|0.3473|0.3516|0.1006|302.9613839|-27.0725516|269.8785914|-66.5227062|2108.934|501.015|2403089401241004541|2403m894_ab41-004541|2403m894_ab41|4541|16.2|0.062|17.4|0.890200019|16.112|0.159|6.8|0.926299989|13.099|0.537|2.0|1.12899995|9.317||0.4|1.06799996|0.998300016|1|0|0.0|0.0|0.0|0.011|0000|0000|0|0nnn|ABCU|7|0000|16|23|1|23|2|22|0|22|22.65|22.75|22.057|21.449|0.0|0.0|0.0|0.0|0||0||0||0||52.4599991|3.01819992|9.448|2.61|0.025|22.6590004|3.31430006|21.792|3.183|0.398|91.2740021|45.1389999|1095.931|24.555|3.559|4.44460011|12.6450005|298.029|9.806|0.308|16.208|0.164|1|0.261|15.646||32|0.319|11.983||32|0.825|8.83||32|0.576|16.834|0.168|1|16.279||32|13.328||32|11.245||32|16.469|0.164|1|15.965||32|12.808||32|9.406||32|16.281|0.178|1|15.877||32|12.392||32|9.063||32|16.171|0.199|1|15.993||32|12.771|0.499|1|8.775||32|16.139|0.232|1|15.905||32|12.365|0.414|1|8.517||32|16.133|0.271|1|15.727||32|11.993|0.346|1|8.283||32|16.078|0.301|1|15.559||32|11.723|0.315|1|8.069||32|15.79|0.265|1|15.41||32|11.533|0.303|1|7.87||32|16.202|0.329|0.069|1.287|22|1|55275.02271543|55276.94144233|55276.02956479|16.118|0.677|0.141|3.62899995|22|0|55275.02271543|55276.94144233|55276.02956479|12.636|1.458|0.311|3.63100004|13|1|55275.02271543|55276.94144233|55276.00315326|10.873|7.984|1.702|1.63900006|9|0|55275.02271543|55276.94144233|55276.00315326|-1|9|-39|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004541|1|-0.0008441701173107|-0.0006624518058236|-0.999999424267043|121000000|
+J151939.79-895618.4|229.9157928|-89.9384469|0.4277|0.4456|0.1168|302.9735745|-27.0790282|269.9005479|-66.5135832|2077.23|510.507|2403089401241004708|2403m894_ab41-004708|2403m894_ab41|4708|16.469|0.074|14.6|0.925000012|16.867|0.305|3.6|1.02400005|12.77||0.8|0.854200006|8.804||1.7|1.17400002|0.99089998|1|0|0.0|0.0|0.0|0.003|0000|0000|0|1nnn|ABUU|3|0000|10|23|0|23|1|21|0|22|23.797|23.681|22.93|22.487|0.0|0.0|0.0|0.0|0||0||0||0||40.9519997|2.80340004|9.402|2.634|0.0|11.302|3.17490005|21.813|3.283|0.0|36.5519981|43.507|1096.769|24.858|0.0|21.7759991|12.9639997|297.881|9.763|1.023|16.216|0.14|1|0.261|16.24|0.319|1|0.319|12.065||32|0.825|8.864|0.476|17|0.576|16.937|0.155|0|17.136|0.389|0|13.25||32|9.363||32|16.477|0.14|1|16.559|0.319|1|12.89||32|9.44|0.476|17|16.225|0.144|1|16.3|0.329|1|12.599||32|8.857|0.376|17|15.962|0.14|1|16.122|0.346|1|12.365||32|8.459|0.335|17|15.651|0.127|1|15.894|0.338|1|12.165||32|8.142|0.311|17|15.334|0.111|1|15.562|0.294|1|11.984||32|7.832|0.285|17|15.016|0.097|1|15.165|0.238|1|11.816||32|7.541|0.262|17|14.723|0.085|1|14.805|0.196|1|11.666||32|7.306|0.249|17|16.491|0.293|0.061|1.735|21|1|55275.02271543|55276.94144233|55276.02956479|16.84|1.568|0.327|2.22399998|15|0|55275.02271543|55276.94144233|55276.02956479|13.924|4.429|0.966|5.49599981|11|0|55275.02271543|55276.94144233|55276.03408726|9.401|2.629|0.561|3.97399998|12|0|55275.02271543|55276.94144233|55276.00315326|-35|-42|-14|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004708|1|-0.0006917575359195|-0.0008219482037489|-0.999999422936164|121000000|
+J153525.52-895618.4|233.8563632|-89.9384466|0.9859|1.0482|0.2912|302.9772688|-27.0816919|269.9089128|-66.5109755|2066.27|512.143|2403089401241005289|2403m894_ab41-005289|2403m894_ab41|5289|17.432|0.163|6.7|0.862999976|17.137||0.7|0.907100022|13.163||-0.6|1.03799999|9.425||-0.2|1.03600001|0.957099974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|3|22|0|22|0|21|0|21|23.834|23.674|22.953|22.472|0.0|0.0|0.0|0.0|0||0||0||0||16.868|2.52850008|9.462|2.649|0.481|2.3973|3.21029997|21.785|3.271|0.307|-23.9099998|43.0379982|1096.588|24.819|1.624|-2.31229997|13.46|298.519|9.969|1.074|16.595|0.175|1|0.261|15.951||32|0.319|12.016||32|0.825|8.614||32|0.576|17.46|0.22|0|16.794||32|13.199||32|9.698||32|16.856|0.175|1|16.27||32|12.841||32|9.19||32|16.358|0.144|1|16.542|0.488|1|12.557||32|8.764||32|15.726|0.1|1|15.94|0.348|1|12.323||32|8.357||32|15.039|0.065|1|15.304|0.233|1|12.123||32|8.664|0.527|17|14.508|0.047|1|14.806|0.174|1|11.943||32|8.205|0.426|17|14.184|0.041|1|14.487|0.151|1|11.778||32|7.968|0.414|17|13.986|0.039|1|14.275|0.143|1|11.625||32|7.785|0.417|17|17.509|0.873|0.186|3.252|18|0|55275.02271543|55276.94144233|55276.06029323|18.411|6.326|1.349|2.97900009|10|0|55275.02271543|55276.94144233|55276.06029323|15.622|||5.99399996|8|0|55275.02271543|55276.94144233|55276.03408726||||4.74300003|8|0|55275.02271543|55276.94144233|55276.03408726|-5|-24|-19|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005289|1|-0.0006336404935128|-0.0008675493360739|-0.999999422928771|121000000|
+J020108.95-895618.3|30.2873306|-89.9384208|1.4746|1.3468|0.5042|302.9111822|-27.1869072|270.1338451|-66.5917085|2128.14|491.931|600089401241005818|0600m894_ab41-005818|0600m894_ab41|5818|18.744||-1.6|0.977900028|16.65||1.9|0.853100002|12.028|0.191|5.7|1.03900003|9.574||-0.2|1.15199995|0.999800026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|22|1|22|2|21|0|21|21.713|21.891|21.851|21.704|0.0|0.0|0.0|0.0|0||0||0||0||-4.01550007|2.52080011|9.353|2.798|0.06|6.76849985|3.51609993|21.778|3.364|0.0|244.820007|43.1570015|1098.69|23.335|1.484|-2.06209993|11.7340002|298.651|9.529|0.803|16.961||32|0.261|16.417|0.478|1|0.319|11.687||32|0.825|8.613||32|0.576|17.68||32|16.516||32|12.915||32|9.699||32|17.222||32|16.736|0.478|1|12.512||32|9.189||32|17.569|0.532|1|16.338|0.428|1|12.227||32|8.762||32|16.804|0.325|1|15.922|0.36|1|12.005||32|8.487||32|15.892|0.169|1|15.339|0.254|1|11.809||32|8.258||32|14.972|0.086|1|14.607|0.153|1|11.62||32|8.032||32|14.028|0.042|1|13.768|0.082|1|11.4||32|7.837||32|13.03|0.02|1|12.856|0.041|1|11.129||32|7.645||32|22.946|||2.587|7|0|55275.28745078|55277.33835439|55276.28283929|17.64|2.624|0.559|3.27099991|15|0|55275.28745078|55277.33835439|55276.28283929|11.85|0.684|0.149|6.24599981|17|0|55275.28745078|55277.33835439|55276.26723075||||3.06699991|9|0|55275.28745078|55277.33835439|55276.26723075|-8|3|-14|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005818|1|0.0009280617934567|0.0005420402702738|-0.99999942244666|101000000|
+J014417.72-895617.8|26.0738704|-89.9383041|1.4575|1.4067|0.3154|302.9160609|-27.1882178|270.1394687|-66.5877642|1976.997|497.118|89401241005349|0000m894_ab41-005349|0000m894_ab41|5349|18.313||0.8|0.976599991|17.259||-0.6|0.858200014|11.79|0.175|6.2|1.10500002|8.88||1.9|1.04100001|0.991699994|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|UUBU|4|0000|0|22|0|22|2|21|1|21|21.54|20.891|21.342|21.046|0.0|0.0|0.0|0.0|129|D|129|D|0||0||2.22580004|2.63389993|9.355|2.744|0.056|-2.21079993|3.94050002|21.816|3.341|0.08|304.890015|49.0870018|1098.255|22.71|2.392|21.3959999|11.5310001|298.668|9.458|1.276|16.84|0.492|1|0.261|15.868||32|0.319|11.663||32|0.825|8.576||32|0.576|16.938||32|16.628||32|13.683||32|9.582||32|17.101|0.492|1|16.187||32|12.488||32|9.152||32|16.543|0.379|1|15.845||32|12.214||32|8.809||32|15.974|0.276|1|15.481||32|11.987||32|8.518||32|15.384|0.194|1|15.733|0.506|1|11.782||32|8.258||32|14.704|0.122|1|14.829|0.26|1|11.602||32|8.024||32|13.821|0.063|1|13.767|0.114|1|11.437||32|7.81||32|12.765|0.028|1|12.682|0.048|1|11.288||32|7.612||32|19.738|6.918|1.475|2.446|12|0|55275.28745078|55277.33835439|55276.28283929||||1.30400002|6|0|55275.28745078|55277.33835439|55276.28283929|11.698|0.954|0.208|3.16799998|16|0|55275.28745078|55277.33835439|55276.26723075|10.356|4.243|0.926|4.99900007|11|0|55275.28745078|55277.33835439|55276.26723075|60|-4|26|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005349|1|0.0009672087538517|0.0004732838466387|-0.999999420254645|101000000|
+J051745.12-895617.1|79.4380298|-89.9380838|1.0284|1.1476|0.1176|302.8680645|-27.1527531|270.0286016|-66.6215735|1994.302|504.986|600089401241005283|0600m894_ab41-005283|0600m894_ab41|5283|17.492|0.176|6.2|1.046|17.293||0.3|1.13600004|12.651||1.0|1.02499998|9.208||0.6|0.986699998|1.046|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|21|0|21|0|20|0|20|20.893|21.449|20.211|20.366|0.0|0.0|0.0|0.0|0||0||0||0||15.96|2.58599997|9.424|2.766|0.0|0.862489998|3.38509989|21.781|3.288|0.0|47.4129982|45.2529984|1098.987|23.777|0.0|8.06019974|12.408|298.462|9.482|0.213|17.363|0.499|1|0.261|16.405||32|0.319|11.662||32|0.825|8.644||32|0.576|17.871|0.453|1|16.976||32|12.844||32|9.651||32|17.624|0.499|1|16.724||32|12.487||32|9.22||32|17.426|0.537|1|16.528||32|12.205||32|8.876||32|17.151|0.516|1|16.306||32|11.971||32|8.584||32|16.957|0.517|1|16.127||32|11.773||32|8.326||32|16.097||32|15.998||32|11.591||32|8.091||32|15.938||32|15.833||32|11.428||32|7.876||32|16.314|0.451|1|15.535||32|11.276||32|7.679||32|17.498|0.661|0.144|2.414|19|0|55275.28745078|55277.20605032|55276.18847532|20.204|||3.79099989|7|0|55275.28745078|55277.20605032|55276.18847532|12.859|1.829|0.409|3.08299994|10|0|55275.28745078|55277.20605032|55276.16736816|11.518|||2.05599999|9|0|55275.28745078|55277.20605032|55276.16736816|44|-53|-12|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005283|1|0.0001980804949675|0.0010623330086026|-0.999999416106178|101000000|
+J083412.57-895617.0|128.5524066|-89.9380665|0.7039|0.6989|-0.2105|302.8692223|-27.1012914|269.9027742|-66.6091132|2024.409|512.453|1201089401241005080|1201m894_ab41-005080|1201m894_ab41|5080|16.92|0.117|9.3|1.09099996|17.39||0.0|0.833199978|13.128|0.531|2.0|0.976400018|9.456||0.0|0.86619997|0.937600017|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|3|20|0|21|1|20|0|20|20.944|21.502|20.886|21.037|0.0|0.0|0.0|0.0|0||0||0||0||27.0310001|2.90370011|9.38|2.728|0.036|0.0937300026|3.4447|21.816|3.309|0.05|88.8889999|43.487999|1095.554|23.203|3.299|-0.473250002|13.0740004|298.215|9.853|1.437|17.279|0.45|0|0.261|16.169||32|0.319|12.393||32|0.825|8.688||32|0.576|17.625|0.349|0|16.79||32|13.579||32|14.057||32|17.54|0.45|0|16.488||32|13.218||32|9.264||32|16.824||32|16.21||32|12.939||32|8.763||32|16.718||32|15.974||32|12.703||32|8.337||32|16.357||32|15.773||32|12.502||32|8.018||32|16.048|0.261|1|15.589||32|12.319||32|7.853||32|14.988|0.115|1|16.682||32|12.155||32|7.721||32|14.229|0.066|1|14.68||32|12.003||32|7.554||32|16.896|0.462|0.103|3.274|19|0|55275.02271543|55276.94144233|55276.02511904|20.178|||3.296|8|0|55275.02271543|55276.94144233|55276.01834588|13.397|3.756|0.84|4.63999987|11|1|55275.02271543|55276.94144233|55275.98873224||||4.59100008|9|0|55275.02271543|55276.94144233|55275.98873224|30|-39|81|0|0|2|||||||||||||||||||||||||||||0|||||||1201089401241005080|1|-0.0006736763979109|0.0008453390630982|-0.999999415780819|111000000|
+J222258.06-895616.8|335.7419229|-89.93802|0.0992|0.0981|0.0121|302.9739599|-27.1775729|270.1419123|-66.5351804|2114.665|499.973|89401241004190|0000m894_ab41-004190|0000m894_ab41|4190|13.485|0.025|42.7|0.954200029|13.515|0.03|36.2|1.02699995|13.038|0.44|2.5|0.974300027|9.427||0.4|1.01199996|0.989099979|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AACU|7|0000|25|25|25|25|2|24|0|24|24.563|24.608|24.007|23.807|0.0|0.0|0.0|0.0|0||0||0||0||639.880005|14.9820004|9.366|2.761|0.114|247.690002|6.84959984|21.796|3.241|0.241|96.5889969|39.1349983|1097.897|24.298|0.0|4.68030024|11.0869999|299.206|9.57|0.309|13.495|0.021|0|0.261|13.555|0.031|0|0.319|12.15||32|0.825|8.732||32|0.576|14.109|0.021|0|14.293|0.033|0|14.371||32|9.738||32|13.756|0.021|0|13.874|0.031|0|12.975||32|9.308||32|13.639|0.024|0|13.725|0.034|0|12.592||32|8.963||32|13.606|0.029|1|13.676|0.04|1|12.309||32|8.67||32|13.609|0.034|1|13.662|0.047|1|12.116||32|8.411||32|13.623|0.041|1|13.653|0.055|1|11.971||32|8.176||32|13.629|0.048|1|13.634|0.063|1|11.859||32|7.961||32|13.624|0.054|1|13.599|0.069|1|11.808||32|7.763||32|13.488|0.039|0.008|0.159|24|0|55275.28745078|55277.33835439|55276.25865158|13.517|0.087|0.017|0.340000004|24|0|55275.28745078|55277.33835439|55276.25865158|13.123|2.435|0.497|3.62400007|14|1|55275.28745078|55277.33835439|55276.24398629|10.517|6.337|1.293|3.24900007|13|0|55275.28745078|55277.33835439|55276.24398629|-8|6|66|0|0|1||||||||||||||||||||||||||1091720645|0.402|40.5|1|14.052|0.033|13.615|0.038|13.633|0.055|89401241004190|1|0.0009862402899367|-0.0004444361118192|-0.999999414903145|131000000|
+J092647.25-895616.2|141.6968802|-89.937858|0.8155|0.7598|-0.181|302.8775476|-27.0891759|269.8772148|-66.5991779|1988.345|503.392|1201089401241005128|1201m894_ab41-005128|1201m894_ab41|5128|17.002|0.128|8.5|1.01499999|17.051||0.7|0.925000012|12.666||0.9|1.16600001|9.502||-0.5|0.990400016|1.01999998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BUUU|1|0000|4|20|0|20|0|19|0|19|20.521|20.729|20.051|19.88|0.0|0.0|0.0|0.0|0||0||0||0||25.0769997|2.95110011|9.449|2.867|0.0|2.46300006|3.53970003|21.784|3.367|0.0|42.9259987|46.5610008|1097.334|24.518|2.143|-5.98029995|12.5310001|298.678|9.675|1.942|16.254|0.191|1|0.261|16.311|0.415|1|0.319|12.264||32|0.825|8.858||32|0.576|17.138|0.242|1|16.624||32|13.691||32|9.871||32|16.515|0.191|1|16.63|0.415|1|13.089||32|9.434||32|15.948|0.146|1|15.977|0.294|1|12.732||32|9.308||32|15.457|0.115|1|15.456|0.226|1|12.366||32|8.553||32|15.115|0.102|1|15.081|0.193|1|12.009||32|8.184||32|14.88|0.097|1|14.809|0.178|1|11.716||32|7.958||32|14.693|0.095|1|14.57|0.166|1|11.484||32|7.791||32|14.523|0.093|1|14.334|0.154|1|11.283||32|7.679||32|17.035|0.564|0.126|2.86|19|1|55275.02271543|55276.94144233|55276.02180825|18.088|3.969|0.888|2.96499991|12|0|55275.02271543|55276.94144233|55276.02180825|13.226|3.545|0.813|3.68000007|9|0|55275.02271543|55276.94144233|55275.99081824|12.619|||3.11400008|6|0|55275.02271543|55276.94144233|55275.99081824|-15|18|23|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005128|1|-0.0008511175927003|0.0006722474245396|-0.999999411840949|111000000|
+J201927.61-895616.0|304.8650771|-89.9377792|0.2823|0.282|-0.0833|302.9967482|-27.1514555|270.0892342|-66.5096313|2035.491|514.452|3004089401241004550|3004m894_ab41-004550|3004m894_ab41|4550|15.952|0.051|21.3|0.963999987|15.842|0.129|8.4|0.915799975|12.941||0.5|1.08899999|9.246||0.5|0.962100029|0.978799999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|22|24|3|24|0|23|0|23|23.686|24.472|23.226|23.172|0.0|0.0|0.0|0.0|0||0||0||0||65.9749985|3.09299994|9.343|2.811|0.098|29.0459995|3.44630003|21.765|3.281|0.062|20.0979996|42.737999|1096.916|24.451|3.221|6.74440002|12.4949999|299.083|10.016|0.46|15.291|0.072|1|0.261|15.208|0.167|1|0.319|12.746||32|0.825|8.862||32|0.576|16.196|0.095|1|16.217|0.229|1|13.919||32|9.79||32|15.552|0.072|1|15.527|0.167|1|13.571||32|9.438||32|15.09|0.06|1|15.045|0.138|1|13.302||32|9.093||32|14.761|0.055|1|14.712|0.126|1|13.065||32|8.736||32|14.56|0.055|1|14.536|0.129|1|12.864||32|8.386||32|14.451|0.059|1|14.489|0.146|1|12.679||32|8.085||32|14.39|0.065|1|14.508|0.173|1|12.517||32|7.82||32|14.352|0.072|1|14.547|0.206|1|12.365||32|7.577||32|15.943|0.23|0.047|0.995|23|0|55275.28745078|55277.20605032|55276.21366396|15.803|0.608|0.124|2.4289999|21|0|55275.28745078|55277.20605032|55276.21366396|14.046|5.94|1.239|3.77099991|13|0|55275.28745078|55277.20605032|55276.19640507|10.507|3.269|0.682|3.45000005|11|0|55275.28745078|55277.20605032|55276.19640507|-3|-23|38|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004550|1|0.0006207835174413|-0.0008910291994746|-0.999999410347221|131000000|
+J144255.30-895615.6|220.7304282|-89.937668|0.6118|0.6218|0.18|302.9646409|-27.0730509|269.8814482|-66.5199924|2102.839|505.729|2403089401241004915|2403m894_ab41-004915|2403m894_ab41|4915|16.938|0.108|10.1|0.943799973|16.621|0.247|4.4|0.909300029|12.611||1.1|1.03299999|8.985||1.2|0.959999979|0.958299994|1|0|0.0|0.0|0.0|0.008|0000|0000|0|1nnn|ABUU|3|0000|5|23|0|23|0|22|0|22|22.66|22.879|22.02|21.625|0.0|0.0|0.0|0.0|0||0||0||0||26.5949993|2.63509989|9.4|2.621|0.006|14.184|3.22040009|21.812|3.218|0.079|50.1450005|46.4459991|1096.991|24.987|2.118|15.1999998|12.5860004|298.114|9.743|0.767|16.435|0.195|1|0.261|15.771||32|0.319|11.706||32|0.825|8.495||32|0.576|17.262|0.236|1|16.425||32|13.114||32|9.507||32|16.696|0.195|1|16.09||32|12.531||32|9.071||32|16.297|0.175|1|15.905||32|12.713|0.439|1|8.739||32|16.018|0.168|1|15.794||32|12.241|0.353|1|8.502||32|15.831|0.17|1|15.762||32|11.856|0.297|1|8.292||32|15.671|0.173|1|15.758||32|11.526|0.259|1|8.058||32|15.536|0.177|1|15.595||32|11.264|0.236|1|7.904||32|15.433|0.185|1|15.442||32|11.068|0.227|1|8.357||32|16.993|0.503|0.105|3.882|22|1|55275.02271543|55276.94144233|55276.02956479|16.629|1.681|0.351|2.53299999|15|0|55275.02271543|55276.94144233|55276.02956479|13.489|3.535|0.754|6.03700018|13|0|55275.02271543|55276.94144233|55276.00315326|9.654|1.957|0.417|3.53500009|11|0|55275.02271543|55276.94144233|55276.00315326|34|-24|18|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004915|1|-0.0008243963686063|-0.0007098548137081|-0.99999940823821|121000000|
+J210057.77-895615.4|315.240738|-89.9376209|0.7168|0.6891|-0.2289|302.9911248|-27.1615511|270.1111562|-66.5167465|2006.338|509.944|3004089401241005284|3004m894_ab41-005284|3004m894_ab41|5284|17.089|0.116|9.3|0.863399982|17.402|0.515|2.1|0.978200018|12.441||2.0|1.07599998|9.599||-0.4|0.972100019|0.968599975|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|3|24|1|24|0|23|0|23|24.775|24.713|23.88|23.826|0.0|0.0|0.0|0.0|0||0||0||0||23.1509991|2.48130012|9.381|2.799|0.0|6.9059|3.2729001|21.763|3.293|0.0|82.6389999|42.3400002|1096.376|24.257|1.16|-5.0545001|11.4610004|298.654|9.687|0.236|17.276|0.381|1|0.261|16.236||32|0.319|12.719||32|0.825|9.258||32|0.576|17.635|0.298|1|16.845||32|13.915||32|10.024||32|17.537|0.381|1|16.555||32|13.544||32|9.834||32|16.893||32|16.403||32|13.261||32|9.141||32|17.356|0.518|1|16.207||32|13.025||32|8.808||32|16.853|0.391|1|15.972||32|12.827||32|8.579||32|16.499|0.333|1|15.761||32|12.448||32|8.41||32|16.182|0.289|1|15.538||32|12.122||32|8.836||32|15.733|0.22|1|15.191||32|11.895||32|8.083||32|17.104|0.5|0.102|2.113|23|0|55275.28745078|55277.20605032|55276.21366396|17.459|2.636|0.538|4.25899982|16|0|55275.28745078|55277.20605032|55276.21366396|12.922|1.807|0.377|5.16400003|16|0|55275.28745078|55277.20605032|55276.19640507|15.276|||2.08599997|8|0|55275.28745078|55277.20605032|55276.19640507|11|55|17|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241005284|1|0.0007730693815747|-0.0007666001601185|-0.999999407343787|131000000|
+J212923.63-895614.2|322.3484775|-89.9372933|0.8071|0.7629|-0.24|302.9863111|-27.168023|270.1246199|-66.5223545|1986.798|504.371|3004089401241005298|3004m894_ab41-005298|3004m894_ab41|5298|17.254|0.126|8.6|0.976700008|16.791||1.7|0.856299996|13.045||0.3|0.98360002|9.532||0.1|0.946500003|0.937699974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|3|25|0|25|0|24|1|24|24.802|24.702|23.961|23.683|0.0|0.0|0.0|0.0|0||0||0||0||19.8810005|2.31590009|9.351|2.763|0.0|5.62709999|3.24569988|21.792|3.262|0.0|12.0410004|41.9469986|1098.349|24.566|0.0|0.969980001|11.71|298.268|9.589|0.911|16.785|0.301|0|0.261|16.229||32|0.319|12.752||32|0.825|9.009||32|0.576|17.47|0.318|0|16.787||32|13.943||32|10.016||32|17.046|0.301|0|16.548||32|13.577||32|9.585||32|16.78|0.306|1|16.446||32|13.294||32|10.728||32|16.282|0.24|1|16.078||32|13.062||32|8.86||32|15.493|0.14|1|15.387||32|12.859||32|8.494||32|14.757|0.084|1|15.239|0.315|1|12.679||32|8.148||32|14.277|0.063|1|14.658|0.215|1|12.512||32|7.824||32|14.028|0.058|1|14.36|0.188|1|12.362||32|7.552||32|17.36|0.721|0.144|3.303|22|1|55275.28745078|55277.33835439|55276.25865158|17.703|3.921|0.784|3.523|16|0|55275.28745078|55277.33835439|55276.25865158|13.998|5.449|1.112|4.86800003|12|0|55275.28745078|55277.33835439|55276.24398629||||2.97099996|11|0|55275.28745078|55277.33835439|55276.24398629|11|45|58|0|1|1|||||||||||||||||||||||||||||0|||||||3004089401241005298|1|0.0008665113565299|-0.0006685457501845|-0.999999401102145|131000000|
+J123032.30-895613.9|187.6345855|-89.9372019|0.8657|0.7952|0.1958|302.9254941|-27.0656191|269.8435798|-66.5522879|2026.943|515.078|1802089401241005128|1802m894_ab41-005128|1802m894_ab41|5128|17.325|0.151|7.2|0.876900017|16.542|0.246|4.4|0.974799991|12.462||1.6|0.992900014|9.561||-0.7|1.17799997|1.00100005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|3|22|3|22|0|21|0|21|22.701|22.926|22.046|22.371|0.0|0.0|0.0|0.0|0||0||0||0||18.625|2.59229994|9.428|2.657|0.476|15.2449999|3.45040011|21.836|3.302|0.0|73.5690002|45.2509995|1095.467|24.093|1.054|-8.3810997|11.8780003|298.273|9.602|0.435|17.102|0.438|1|0.261|16.29|0.534|1|0.319|12.302|0.344|1|0.825|8.417||32|0.576|17.685|0.43|0|16.268||32|13.244||32|9.574||32|17.363|0.438|1|16.609|0.534|1|13.127|0.344|1|8.993||32|16.574||32|15.643||32|12.445|0.237|1|8.536||32|16.446||32|15.448||32|11.946|0.185|1|8.16||32|16.303||32|15.277||32|11.58|0.159|1|7.844||32|16.247||32|15.162||32|11.281|0.142|1|7.569||32|16.321||32|15.071||32|11.031|0.132|1|7.292||32|16.389||32|14.966||32|10.806|0.123|1|7.036||32|17.429|0.724|0.154|4.322|21|0|55275.02271543|55276.94144233|55276.00616306|16.6|1.845|0.393|3.06100011|15|1|55275.02271543|55276.94144233|55276.00616306|12.896|2.637|0.575|3.22300005|12|0|55275.02271543|55276.94144233|55275.97737947||||4.79699993|6|0|55275.02271543|55276.94144233|55275.97737947|-17|-36|-59|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005128|1|-0.0010863176481091|-0.0001456131833279|-0.999999399355204|121000000|
+J093837.21-895612.9|144.6550501|-89.9369333|0.2105|0.2007|-0.045|302.8791061|-27.0861142|269.870485|-66.5971395|1979.61|502.315|1201089401241004363|1201m894_ab41-004363|1201m894_ab41|4363|15.173|0.041|26.7|1.00100005|15.227|0.088|12.4|0.895299971|12.914|0.461|2.4|1.14900005|9.109||1.0|1.05299997|1.01999998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AACU|7|0000|20|20|9|20|1|19|0|19|20.02|20.168|19.876|19.758|0.0|0.0|0.0|0.0|0||0||0||0||135.100006|5.06629992|9.419|2.86|0.0|51.1689987|4.13040018|21.783|3.371|0.177|108.230003|45.9669991|1096.303|23.946|0.0|11.9890003|12.0129995|297.828|9.292|0.923|15.145|0.063|1|0.261|15.288|0.19|1|0.319|12.383||32|0.825|12.336||32|0.576|15.779|0.064|1|16.013|0.198|1|13.575||32|9.923||32|15.406|0.063|1|15.607|0.19|1|13.208||32|12.912||32|15.24|0.069|1|15.437|0.209|1|12.934||32|9.037||32|15.121|0.076|1|15.348|0.238|1|12.702||32|8.699||32|15.022|0.084|1|15.283|0.27|1|12.497||32|8.51||32|14.941|0.091|1|15.212|0.299|1|12.211||32|9.127||32|14.855|0.098|1|15.128|0.322|1|11.853||32|8.951||32|14.72|0.099|1|15.011|0.332|1|11.552||32|7.928||32|15.181|0.139|0.031|0.68|19|0|55275.02271543|55276.94144233|55276.02180825|15.213|0.513|0.115|2.46099997|19|2|55275.02271543|55276.94144233|55276.02180825|13.159|3.211|0.737|3.44099998|10|1|55275.02271543|55276.94144233|55275.99081824|10.408|4.546|1.043|2.57999992|10|0|55275.02271543|55276.94144233|55275.99081824|-39|-38|29|1|1|0||||||||||||||||||||||||||827821580|0.283|179.5|1|16.133|0.131|15.315|0.125|15.301|0.214|1201089401241004363|1|-0.0008978407804386|0.0006367647908937|-0.999999394206084|111000000|
+J173432.66-895612.3|263.6361014|-89.9367531|0.278|0.3038|-0.0444|302.999006|-27.1073163|269.9824204|-66.4978507|1982.58|504.15|2403089401241004418|2403m894_ab41-004418|2403m894_ab41|4418|15.889|0.051|21.1|0.913299978|16.305|0.197|5.5|1.02600002|12.907||0.4|1.00300002|9.188||0.6|0.896000028|0.957700014|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|21|22|2|22|0|21|0|21|22.856|23.694|22.884|22.725|0.0|0.0|0.0|0.0|0||0||0||0||69.8939972|3.30850005|9.352|2.604|0.091|18.9689999|3.44440007|21.767|3.299|0.193|18.7099991|45.1230011|1097.55|25.05|0.193|7.70149994|12.8909998|298.949|9.911|0.779|15.888|0.134|1|0.261|15.814||32|0.319|12.316||32|0.825|8.976||32|0.576|16.501|0.133|1|17.081|0.48|1|13.475||32|9.985||32|16.149|0.134|1|16.133||32|13.141||32|9.552||32|15.975|0.148|1|16.035||32|14.342||32|9.209||32|15.816|0.159|1|15.88||32|12.732||32|8.914||32|15.633|0.161|1|15.644||32|12.874||32|8.654||32|15.402|0.154|1|15.408||32|12.255||32|8.42||32|15.2|0.149|1|15.267||32|12.035||32|8.204||32|15.092|0.155|1|15.248||32|11.85||32|8.006||32|15.908|0.202|0.043|0.764|20|0|55275.28745078|55277.20605032|55276.18960482|16.196|1.276|0.272|3.273|14|1|55275.28745078|55277.20605032|55276.18960482|14.111|5.765|1.258|3.34500003|12|0|55275.28745078|55277.20605032|55276.16955655|10.205|2.436|0.532|4.16400003|12|0|55275.28745078|55277.20605032|55276.16955655|35|-55|-4|1|1|0||||||||||||||||||||||||||970347434|0.237|34.8|1|16.069|0.104|16.052|0.255|16.272||2403089401241004418|1|-0.0001223556212676|-0.0010970646519079|-0.99999939073894|121000000|
+J102452.80-895611.9|156.2200346|-89.9366471|0.1064|0.1007|0.0146|302.8894545|-27.0773153|269.8541047|-66.5861866|2115.614|503.478|1802089401241003838|1802m894_ab41-003838|1802m894_ab41|3838|13.428|0.026|42.3|1.36300004|13.443|0.032|34.2|1.02699995|12.416|0.292|3.7|1.09200001|9.343||-0.4|0.888800025|1.09200001|1|0|0.0|0.0|0.0|0.009|0000|0000|0|01nn|AABU|7|0000|20|20|20|20|1|19|0|19|20.748|20.61|19.783|19.387|0.0|0.0|0.0|0.0|0||0||0||0||674.070007|15.9440002|9.401|2.814|0.061|264.769989|7.73330021|21.794|3.476|0.032|171.309998|46.0040016|1095.799|24.253|3.652|-5.87120008|14.5120001|298.14|10.046|2.06|13.4|0.014|0|0.261|13.418|0.03|0|0.319|11.658||32|0.825|8.861|0.52|17|0.576|14.047|0.014|0|14.194|0.033|0|12.837||32|9.395||32|13.661|0.014|0|13.737|0.03|0|12.483||32|9.437|0.52|17|13.521|0.015|0|13.545|0.032|0|12.234||32|8.949|0.451|17|13.46|0.017|0|13.449|0.036|0|11.997||32|8.623|0.434|17|13.429|0.019|0|13.386|0.041|0|11.77||32|8.241|0.384|17|13.407|0.022|1|13.334|0.046|1|11.553||32|7.865|0.335|17|13.387|0.025|1|13.287|0.051|1|11.359||32|7.547|0.302|17|13.357|0.028|1|13.236|0.056|1|11.186||32|7.313|0.291|17|13.429|0.036|0.008|0.139|19|0|55275.02271543|55276.94144233|55276.02180825|13.458|0.084|0.019|0.428000003|19|0|55275.02271543|55276.94144233|55276.02180825|12.25|1.261|0.289|2.42400002|13|0|55275.02271543|55276.94144233|55275.99081824||||4.08400011|7|0|55275.02271543|55276.94144233|55275.99081824|20|-37|71|0|1|1||||||||||||||||||||||||||806979116|0.339|-84.5|1|14.281|0.045|13.774|0.043|13.597|0.064|1802089401241003838|1|-0.0010118411476455|0.0004458525497251|-0.999999388696311|111000000|
+J193628.18-895610.0|294.1174209|-89.9361341|0.5437|0.5692|-0.1875|303.0023034|-27.1406071|270.0654513|-66.5024042|2066.476|518.216|3004089401241005067|3004m894_ab41-005067|3004m894_ab41|5067|16.859|0.097|11.2|0.944599986|17.286|0.481|2.3|0.807200015|12.229|0.224|4.8|1.005|9.148||1.0|1.08000004|0.954699993|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACBU|7|0000|6|24|0|24|2|23|0|23|23.777|23.739|22.966|22.754|0.0|0.0|0.0|0.0|0||0||0||0||28.6040001|2.5473001|9.377|2.741|0.0|7.68130016|3.40330005|21.775|3.326|0.0|203.350006|42.0079994|1097.18|24.595|2.52|11.7390003|11.4969997|298.738|9.659|1.019|16.722|0.236|0|0.261|16.165||32|0.319|12.61|0.487|0|0.825|8.525||32|0.576|17.305|0.229|0|16.847||32|13.176||32|9.581||32|16.983|0.236|0|16.484||32|13.435|0.487|0|9.101||32|16.903|0.286|0|16.327||32|13.229|0.527|0|8.798||32|16.852|0.338|0|16.262||32|12.344||32|8.595||32|16.728|0.363|0|16.21||32|12.211||32|8.446||32|16.443|0.33|1|16.052||32|12.04||32|8.299||32|15.837|0.22|1|15.607||32|11.844||32|8.557||32|15.0|0.117|1|15.389|0.317|1|11.645||32|8.006||32|16.834|0.488|0.1|2.275|22|0|55275.28745078|55277.20605032|55276.21366396|17.054|1.221|0.249|2.23200011|16|0|55275.28745078|55277.20605032|55276.21366396|12.145|1.202|0.251|3.71600008|16|0|55275.28745078|55277.20605032|55276.19640507|10.056|3.352|0.699|2.77999997|13|0|55275.28745078|55277.20605032|55276.19640507|35|38|42|1|1|1|||||||||||||||||||||||||||||0|||||||3004089401241005067|1|0.0004554629460548|-0.0010173701589501|-0.999999378755539|131000000|
+J184305.99-895609.6|280.7749823|-89.9360056|1.0161|1.1187|-0.3181|303.0037717|-27.1258104|270.030001|-66.4978399|2157.223|224.991|600089401241005232|0600m894_ab41-005232|0600m894_ab41|5232|17.555|0.182|6.0|1.13399994|17.423|0.522|2.1|0.910700023|12.472||1.8|1.10300004|9.526||-0.7|1.01900005|1.03799999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|2|22|1|22|1|21|0|21|22.463|22.975|21.983|21.848|0.0|0.0|0.0|0.0|0||0||0||0||15.0710001|2.52189994|9.371|2.638|0.006|6.77159977|3.25410008|21.753|3.262|0.026|76.1159973|43.2680016|1096.144|24.344|0.534|-8.36219978|12.2580004|298.769|9.696|0.617|16.394|0.231|1|0.261|16.411|0.344|1|0.319|12.197||32|0.825|8.75||32|0.576|17.534|0.378|0|17.509|0.512|0|13.416||32|9.845||32|16.655|0.231|1|16.73|0.344|1|13.022||32|9.326||32|15.876|0.146|1|15.947|0.218|1|12.665||32|8.95||32|15.16|0.094|1|15.178|0.134|1|12.386||32|8.844||32|14.47|0.06|1|14.489|0.086|1|12.193||32|8.516||32|13.907|0.043|1|13.963|0.063|1|12.059||32|8.281||32|13.563|0.036|1|13.633|0.054|1|11.975||32|8.066||32|13.394|0.036|1|13.452|0.052|1|12.564||32|7.867||32|17.542|1.169|0.249|4.31|16|0|55275.28745078|55277.20605032|55276.18960482|17.704|3.14|0.67|4.11600018|13|0|55275.28745078|55277.20605032|55276.18960482|13.451|2.792|0.609|2.171|11|0|55275.28745078|55277.20605032|55276.16955655||||2.08699989|5|0|55275.28745078|55277.20605032|55276.16955655|28|7|-58|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005232|1|0.0002088095238956|-0.0010972205245434|-0.999999376252657|131000000|
+J155129.49-895609.3|237.8728893|-89.9359206|0.1271|0.1283|0.0226|302.9828193|-27.0828468|269.9145172|-66.5064186|2055.298|519.637|2403089401241004064|2403m894_ab41-004064|2403m894_ab41|4064|14.348|0.029|37.9|1.13999999|14.412|0.045|24.1|0.935199976|12.742||0.7|1.06799996|9.535||-0.8|0.999000013|1.03199995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|23|23|21|23|1|22|0|22|23.581|23.627|22.626|22.438|0.0|0.0|0.0|0.0|0||0||0||0||288.98999|7.63079977|9.42|2.664|0.0|108.419998|4.49889994|21.786|3.316|0.0|34.1860008|46.2929993|1096.966|25.3|0.0|-9.83040047|12.165|298.696|9.919|1.688|14.258|0.029|0|0.261|14.368|0.054|0|0.319|11.914||32|0.825|8.485||32|0.576|14.937|0.031|0|15.154|0.06|0|14.225||32|9.714||32|14.519|0.029|0|14.687|0.054|0|12.739||32|9.061||32|14.322|0.031|1|14.469|0.056|1|12.439||32|8.551||32|14.217|0.034|1|14.351|0.062|1|12.754||32|8.858|0.491|1|14.15|0.039|1|14.273|0.07|1|12.094||32|8.5|0.442|17|14.076|0.042|1|14.193|0.077|1|11.915||32|8.233|0.423|17|13.972|0.045|1|14.066|0.079|1|11.75||32|7.979|0.403|17|13.84|0.045|1|13.883|0.077|1|11.599||32|7.742|0.384|17|14.349|0.08|0.017|0.279|22|0|55275.02271543|55276.94144233|55276.08997277|14.417|0.241|0.05|1.19000006|22|1|55275.02271543|55276.94144233|55276.08997277|13.098|3.681|0.785|4.21500015|9|0|55275.02271543|55276.94144233|55276.06630705||||3.41000009|11|0|55275.02271543|55276.94144233|55276.06630705|-3|22|-42|0|0|0||||||||||||||||||||||||||912354340|0.166|-90.6|1|14.852|0.035|14.463|0.045|14.382|0.093|2403089401241004064|1|-0.000594762701047|-0.0009471371378226|-0.99999937459409|121000000|
+J190017.90-895607.7|285.0746053|-89.9354934|0.4962|0.5287|-0.1462|303.0043437|-27.1306311|270.0420705|-66.4984165|2092.812|514.865|3004089401241004916|3004m894_ab41-004916|3004m894_ab41|4916|16.681|0.087|12.5|0.877099991|16.849|0.307|3.5|0.916000009|12.838||0.7|0.936500013|9.536||-0.8|0.953700006|0.917900026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|9|23|1|23|0|22|0|22|22.608|23.656|22.868|22.414|0.0|0.0|0.0|0.0|0||0||0||0||33.6949997|2.69239998|9.389|2.64|0.114|11.4960003|3.25270009|21.761|3.321|0.182|30.9449997|42.5730019|1097.13|24.532|2.64|-9.35859966|12.1470003|299.125|9.793|1.046|16.736|0.33|1|0.261|16.068|0.234|1|0.319|12.55||32|0.825|8.87||32|0.576|17.306|0.316|0|17.027|0.304|0|13.734||32|9.885||32|16.997|0.33|1|16.387|0.234|1|13.375||32|9.446||32|16.91|0.393|1|15.99|0.21|1|13.095||32|9.102||32|16.784|0.435|1|15.657|0.193|1|12.858||32|8.806||32|16.278|0.329|1|15.229|0.157|1|12.655||32|8.545||32|15.385|0.171|1|14.683|0.113|1|12.474||32|8.309||32|14.545|0.092|1|14.151|0.081|1|12.311||32|8.093||32|13.985|0.063|1|13.74|0.064|1|12.156||32|7.894||32|16.692|0.492|0.103|2.246|21|1|55275.28745078|55277.20605032|55276.18490037|16.947|1.574|0.328|3.49900007|16|0|55275.28745078|55277.20605032|55276.18490037|13.932|4.686|0.999|1.94000006|10|0|55275.28745078|55277.20605032|55276.16554954|13.352|||2.91499996|9|0|55275.28745078|55277.20605032|55276.16554954|2|-16|-66|0|0|0||||||||||||||||||||||||||858154385|0.974|154.7|2|17.018|0.205|16.318|0.257|15.622|0.264|3004089401241004916|1|0.0002928076764678|-0.0010871090123402|-0.999999366228629|131000000|
+J051149.09-895606.4|77.9545555|-89.9351144|0.705|0.7884|0.0965|302.8657735|-27.1554651|270.0341284|-66.6241622|1995.895|513.724|600089401241005017|0600m894_ab41-005017|0600m894_ab41|5017|17.124|0.126|8.6|0.818799973|17.13|0.411|2.6|0.959900022|12.648|0.343|3.2|1.12699997|9.47||0.1|1.00999999|0.972899973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCBU|7|0000|2|21|1|21|0|20|0|20|21.362|22.293|20.7|20.88|0.0|0.0|0.0|0.0|0||0||0||0||22.3980007|2.60459995|9.399|2.773|0.071|8.8696003|3.35669994|21.74|3.318|0.096|138.25|43.6459999|1096.975|22.84|0.0|1.5309|12.1409998|298.474|9.591|0.276|16.213|0.135|1|0.261|16.145|0.377|1|0.319|11.818||32|0.825|8.614||32|0.576|17.052|0.167|1|17.012|0.45|1|13.0||32|9.622||32|16.474|0.135|1|16.464|0.377|1|12.643||32|9.19||32|16.198|0.136|1|16.215|0.39|1|12.36||32|8.845||32|16.04|0.145|1|16.048|0.415|1|12.127||32|8.551||32|15.922|0.156|1|15.916|0.442|1|11.929||32|8.292||32|15.798|0.165|1|15.818|0.477|1|11.748||32|8.056||32|15.608|0.161|1|15.685|0.491|1|11.584||32|7.841||32|15.345|0.145|1|15.478|0.467|1|11.432||32|7.642||32|17.169|0.517|0.113|2.278|20|0|55275.28745078|55277.20605032|55276.18847532|17.126|2.601|0.568|3.74600005|12|1|55275.28745078|55277.20605032|55276.18847532|12.497|1.148|0.257|4.20599985|16|0|55275.28745078|55277.20605032|55276.16736816||||3.33599997|8|0|55275.28745078|55277.20605032|55276.16736816|-6|-3|33|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005017|1|0.0002363316807565|0.001107532925806|-0.999999358758872|101000000|
+J150113.60-895606.1|225.3066786|-89.9350309|0.2526|0.2609|0.08|302.971063|-27.0733245|269.8853411|-66.5144816|2092.195|516.282|2403089401241004393|2403m894_ab41-004393|2403m894_ab41|4393|15.877|0.05|21.7|0.857200027|15.593|0.101|10.7|0.904100001|11.262|0.102|10.6|1.01400006|8.904||1.6|1.11699998|0.969500005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|011n|AAAU|7|0000|23|23|5|23|7|22|1|22|22.673|23.239|22.213|22.083|0.0|0.0|0.0|0.0|0||0||0||0||70.6780014|3.2513001|9.425|2.659|0.0|36.5330009|3.41479993|21.798|3.258|0.064|495.470001|46.6069984|1096.438|25.192|2.144|19.5720005|11.9689999|297.96|9.729|1.104|15.61|0.073|1|0.261|15.544|0.266|1|0.319|11.456|0.295|1|0.825|8.379||32|0.576|16.352|0.082|1|16.335|0.293|1|12.845|0.353|1|9.474||32|15.871|0.073|1|15.863|0.266|1|12.281|0.295|1|8.955||32|15.561|0.071|1|15.624|0.278|1|11.993|0.294|1|8.547||32|15.271|0.068|1|15.473|0.3|1|11.802|0.306|1|8.299||32|14.995|0.063|1|15.388|0.334|1|11.678|0.329|1|8.189||32|14.739|0.059|1|15.363|0.385|1|11.614|0.365|1|8.169||32|14.494|0.055|1|15.297|0.421|1|11.614|0.425|1|7.954||32|14.278|0.052|1|15.127|0.415|1|11.673|0.517|1|7.755||32|15.887|0.223|0.047|0.707|22|0|55275.02271543|55276.94144233|55276.02956479|15.6|0.469|0.098|2.80299997|22|0|55275.02271543|55276.94144233|55276.02956479|11.208|0.526|0.112|3.02900004|21|1|55275.02271543|55276.94144233|55276.00315326|9.912|4.015|0.856|2.56699991|12|0|55275.02271543|55276.94144233|55276.00315326|6|25|15|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241004393|1|-0.0007975023102004|-0.000806085678827|-0.999999357107765|121000000|
+J124405.58-895604.3|191.0232741|-89.9345544|0.6032|0.5598|0.1767|302.9295612|-27.0627444|269.8385891|-66.5481122|2016.049|520.358|1802089401241004899|1802m894_ab41-004899|1802m894_ab41|4899|16.854|0.102|10.6|1.00699997|16.538|0.235|4.6|0.86650002|13.089||-0.1|1.028|9.064||0.9|1.02999997|0.979300022|1|0|0.0|0.0|0.0|0.001|0000|0000|0|nnnn|ABUU|3|0000|3|23|2|23|0|22|0|22|23.802|23.589|22.68|22.782|0.0|0.0|0.0|0.0|0||0||0||0||28.7210007|2.70000005|9.513|2.692|0.089|15.2980003|3.31669998|21.847|3.241|0.121|-6.71190023|46.0509987|1096.505|25.007|1.172|11.3249998|13.0959997|298.152|9.857|0.81|16.525||32|0.261|15.577||32|0.319|12.025||32|0.825|7.958||32|0.576|17.667|0.507|0|16.295||32|13.465||32|8.966||32|16.786||32|15.896||32|12.85||32|8.534||32|16.865||32|15.674||32|13.066|0.469|1|8.19||32|16.853||32|15.536||32|12.598|0.378|1|7.896||32|16.653||32|15.434||32|12.207|0.317|1|7.635||32|16.472||32|15.31||32|11.834|0.266|1|7.399||32|16.309||32|15.175||32|11.479|0.223|1|7.183||32|16.156||32|15.052||32|11.164|0.192|1|6.984||32|16.893|0.403|0.084|2.238|22|0|55274.89041135|55276.94144233|55275.95765212|16.488|1.167|0.243|3.43199992|17|0|55274.89041135|55276.94144233|55275.95765212|14.25|7.944|1.694|5.43599987|9|0|55274.89041135|55276.94144233|55275.92797183|10.008|2.975|0.634|2.47399998|12|0|55274.89041135|55276.94144233|55275.92797183|-25|31|-39|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004899|1|-0.0011211653257999|-0.0002184051363837|-0.999999347643541|121000000|
+J161311.51-895604.3|243.2979952|-89.9345533|0.2944|0.3022|0.0684|302.9885874|-27.0864616|269.9262415|-66.5022243|2039.236|523.152|2403089401241004498|2403m894_ab41-004498|2403m894_ab41|4498|15.897|0.053|20.6|1.17900002|16.018|0.144|7.5|0.884299994|13.009||0.2|0.968200028|9.131||0.9|0.905900002|0.991100013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|ABUU|3|0000|18|23|1|23|0|22|0|22|22.367|22.945|22.025|22.074|0.0|0.0|0.0|0.0|0||0||0||0||69.3919983|3.36669993|9.521|2.67|0.0|24.698|3.2729001|21.765|3.36|0.0|10.5959997|44.3019981|1096.846|25.366|4.421|10.5679998|12.3629999|298.384|10.033|0.964|15.556|0.052|1|0.261|15.538|0.145|1|0.319|12.029||32|0.825|8.283||32|0.576|16.317|0.06|1|16.446|0.178|1|18.352||32|9.354||32|15.817|0.052|1|15.857|0.145|1|12.854||32|8.859||32|15.424|0.046|1|15.419|0.126|1|12.423||32|8.565||32|15.031|0.039|1|14.983|0.104|1|12.029||32|8.411||32|14.683|0.034|1|14.579|0.086|1|11.689||32|8.828||32|14.353|0.029|1|14.203|0.072|1|11.412||32|8.163||32|14.021|0.025|1|13.862|0.061|1|11.212||32|7.947||32|13.745|0.022|1|13.605|0.056|1|11.097||32|7.748||32|15.886|0.326|0.068|1.031|22|2|55275.02271543|55276.94144233|55276.08997277|16.043|0.625|0.13|2.11800003|21|0|55275.02271543|55276.94144233|55276.08997277|14.309|8.496|1.811|3.05299997|11|0|55275.02271543|55276.94144233|55276.06630705|10.466|5.722|1.22|2.20900011|10|0|55275.02271543|55276.94144233|55276.06630705|19|24|21|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004498|1|-0.0005132751732831|-0.0010204451334436|-0.99999934761995|121000000|
+J004543.94-895604.1|11.4330937|-89.9344932|0.2212|0.2163|0.0584|302.9337493|-27.1936428|270.1614983|-66.5736108|2013.998|520.13|89401241004559|0000m894_ab41-004559|0000m894_ab41|4559|15.469|0.041|26.3|1.046|15.595|0.111|9.8|0.976300001|12.414|0.271|4.0|1.01100004|8.744||1.8|0.986800015|1.00199997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|ABBU|7|0000|22|22|5|22|0|21|0|21|21.612|21.597|20.932|21.207|0.0|0.0|0.0|0.0|0||0||0||0||102.879997|3.91849995|9.335|2.699|0.184|36.4679985|3.73740005|21.797|3.386|0.051|171.630005|42.8689995|1098.12|23.289|0.276|23.9710007|13.2040005|299.449|9.842|0.855|15.132|0.037|1|0.261|15.166|0.179|1|0.319|12.273|0.416|1|0.825|8.42||32|0.576|15.919|0.044|0|16.073|0.221|0|13.137||32|9.507||32|15.393|0.037|1|15.485|0.179|1|13.098|0.416|1|8.996||32|15.024|0.034|1|15.058|0.156|1|12.477|0.303|1|8.625||32|14.683|0.03|1|14.67|0.134|1|12.056|0.253|1|8.379||32|14.378|0.028|1|14.339|0.119|1|11.744|0.229|1|8.19||32|14.145|0.026|1|14.087|0.112|1|11.492|0.215|1|7.972||32|13.988|0.026|1|13.926|0.111|1|11.3|0.209|1|7.736||32|13.881|0.027|1|13.835|0.118|1|11.172|0.213|1|7.555||32|15.474|0.174|0.037|0.564|21|0|55275.28745078|55277.33835439|55276.28283929|15.576|0.647|0.138|2.76699996|21|1|55275.28745078|55277.33835439|55276.28283929|12.371|1.142|0.249|3.47300005|18|0|55275.28745078|55277.33835439|55276.26723075|9.333|1.891|0.413|2.78299999|11|0|55275.28745078|55277.33835439|55276.26723075|25|-9|-9|1|0|0||||||||||||||||||||||||||1085364294|0.248|-8.4|1|16.207|0.108|15.438|0.133|15.304|0.195|89401241004559|1|0.0011206214594109|0.0002266305799096|-0.999999346422849|101000000|
+J115726.33-895603.9|179.3597286|-89.9344248|0.9082|0.8315|0.1879|302.9147257|-27.064392|269.8351518|-66.5613551|2050.747|523.68|1802089401241005238|1802m894_ab41-005238|1802m894_ab41|5238|17.246|0.144|7.5|0.818099976|17.197|0.464|2.3|0.977199972|12.663||0.8|1.01600003|9.457||-0.9|1.03699994|0.95660001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|2|21|0|21|0|20|0|20|22.322|22.371|21.828|21.617|0.0|0.0|0.0|0.0|0||0||0||0||20.0289993|2.65470004|9.393|2.756|0.168|8.34090042|3.56599998|21.8|3.411|0.086|39.1409988|48.5979996|1096.579|25.267|0.439|-12.3459997|13.0640001|297.877|9.883|1.329|16.652||32|0.261|16.424|0.535|1|0.319|12.583|0.464|1|0.825|8.141||32|0.576|17.857|0.507|0|16.507||32|13.28||32|9.154||32|16.913||32|16.743|0.535|1|13.408|0.464|1|8.717||32|16.861||32|16.234|0.433|1|12.921|0.384|1|8.372||32|16.727||32|15.854|0.378|1|12.547|0.337|1|8.078||32|16.408||32|15.593|0.359|1|12.199|0.296|1|7.816||32|16.115||32|15.43|0.365|1|11.841|0.252|1|7.581||32|15.975||32|15.355|0.397|1|11.515|0.217|1|7.365||32|15.946||32|15.333|0.447|1|11.221|0.191|1|7.165||32|17.263|0.662|0.144|3.297|19|0|55274.89041135|55276.94144233|55275.96793221|17.211|2.902|0.633|2.18400002|13|0|55274.89041135|55276.94144233|55275.96793221|13.356|3.948|0.883|5.57399988|9|0|55274.89041135|55276.94144233|55275.93579789||||3.53299999|8|0|55274.89041135|55276.94144233|55275.93579789|57|-6|34|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005238|1|-0.0011444307078112|0.0000127893676335|-0.999999345057179|111000000|
+J163319.01-895603.8|248.3292401|-89.9344011|0.2911|0.3209|0.07|302.9926181|-27.0909592|269.939251|-66.4997347|2024.206|522.119|2403089401241004407|2403m894_ab41-004407|2403m894_ab41|4407|16.467|0.073|14.9|1.21599996|15.109|0.069|15.7|0.917200029|11.462|0.12|9.0|1.03799999|9.435|0.483|2.2|1.02900004|1.04799998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|311n|AABC|15|0000|10|23|11|23|7|22|1|22|22.803|23.197|21.941|22.282|0.0|0.0|0.0|0.0|0||0||0||0||41.0519981|2.75950003|9.525|2.718|0.057|57.0849991|3.63339996|21.724|3.344|0.358|412.470001|45.7789993|1096.446|25.018|1.301|26.6739998|11.8599997|298.356|9.861|0.65|16.249|0.17|1|0.261|14.986|0.088|1|0.319|11.487|0.177|1|0.825|8.646|0.388|1|0.576|17.003|0.191|1|15.787|0.098|1|12.921|0.221|1|9.852|0.477|1|16.51|0.17|1|15.305|0.088|1|12.312|0.177|1|9.222|0.388|1|16.188|0.164|1|15.062|0.091|1|11.973|0.168|1|8.884|0.378|1|15.91|0.158|1|14.912|0.099|1|11.778|0.174|1|8.637|0.381|1|15.625|0.146|1|14.785|0.106|1|11.633|0.183|1|8.396|0.374|1|15.292|0.127|1|14.622|0.107|1|11.478|0.187|1|8.19|0.371|1|14.953|0.108|1|14.415|0.103|1|11.291|0.182|1|8.001|0.368|1|14.692|0.098|1|14.21|0.098|1|11.095|0.175|1|7.811|0.36|1|16.501|0.523|0.109|2.866|22|3|55275.02271543|55276.94144233|55276.08997277|15.114|0.309|0.065|1.33000004|22|0|55275.02271543|55276.94144233|55276.08997277|11.358|0.572|0.122|4.35500002|18|0|55275.02271543|55276.94144233|55276.06630705|9.516|2.076|0.443|5.52699995|13|0|55275.02271543|55276.94144233|55276.06630705|29|-29|-48|1|1|1|||||||||||||||||||||||||||||0|||||||2403089401241004407|1|-0.0004227859708247|-0.0010639944806848|-0.999999344583669|121000000|
+J152638.34-895603.6|231.6597604|-89.9343532|0.5026|0.5279|0.1487|302.9781144|-27.076988|269.8978363|-66.5091861|2074.017|521.918|2403089401241004744|2403m894_ab41-004744|2403m894_ab41|4744|16.662|0.084|12.9|0.866999984|17.184|0.423|2.6|0.93809998|13.121||-0.4|1.01400006|9.305||0.4|1.21000004|1.00199997|1|0|0.0|0.0|0.0|0.001|0000|0000|0|0nnn|ACUU|3|0000|8|23|2|23|0|22|0|22|23.832|23.7|22.978|22.664|0.0|0.0|0.0|0.0|0||0||0||0||34.3019981|2.66580009|9.4|2.66|0.0|8.43999958|3.28830004|21.781|3.27|0.0|-17.6310005|44.7140007|1096.574|25.306|3.315|5.5078001|12.2790003|297.89|9.733|0.741|15.988|0.129|1|0.261|16.044|0.337|1|0.319|11.954||32|0.825|8.592||32|0.576|16.918|0.173|1|17.105|0.486|1|13.127||32|9.765||32|16.249|0.129|1|16.363|0.337|1|12.779||32|9.168||32|15.737|0.104|1|15.776|0.253|1|12.503||32|8.66||32|15.349|0.09|1|15.34|0.209|1|12.273||32|8.267||32|15.055|0.083|1|15.023|0.189|1|12.068||32|7.965||32|14.779|0.076|1|14.716|0.168|1|11.889||32|7.729||32|14.441|0.065|1|14.363|0.142|1|11.722||32|7.531||32|14.043|0.052|1|13.991|0.115|1|11.572||32|7.36||32|16.626|0.32|0.067|3.16|22|0|55275.02271543|55276.94144233|55276.02956479|16.862|1.684|0.351|4.17000008|16|0|55275.02271543|55276.94144233|55276.02956479|13.445|3.156|0.673|2.9749999|9|0|55275.02271543|55276.94144233|55276.00315326|10.077|4.816|1.027|2.78500009|12|0|55275.02271543|55276.94144233|55276.00315326|26|-5|-13|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004744|1|-0.000710744291698|-0.0008986600376838|-0.999999343626129|121000000|
+J010736.65-895602.2|16.9027434|-89.9339473|1.1284|1.0629|0.3179|302.9266799|-27.1940446|270.1590035|-66.5798331|1997.714|517.492|89401241005610|0000m894_ab41-005610|0000m894_ab41|5610|17.681|0.207|5.3|0.834699988|17.116||0.6|0.84859997|12.501|0.298|3.6|1.06500006|9.394|0.489|2.2|0.888000011|0.904500008|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBC|13|0000|1|22|0|22|2|21|0|21|21.625|21.735|20.861|20.899|0.0|0.0|0.0|0.0|0||0||0||0||13.4189997|2.5559001|9.362|2.716|0.212|2.11279988|3.4361999|21.794|3.33|0.206|158.350006|43.4440002|1101.374|24.359|1.795|27.6870003|12.4799995|298.844|9.553|0.852|16.568||32|0.261|16.111||32|0.319|12.459|0.464|0|0.825|8.406||32|0.576|17.163||32|16.866||32|13.197||32|9.482||32|16.829||32|16.43||32|13.284|0.464|0|8.982||32|16.637||32|16.088||32|12.705|0.353|1|8.609||32|16.394||32|15.768||32|12.21|0.277|1|8.296||32|16.025||32|16.14|0.488|1|11.788|0.226|1|8.027||32|16.039|0.335|1|15.595|0.348|1|11.417|0.189|1|7.794||32|15.299|0.198|1|14.985|0.231|1|11.068|0.16|1|7.599||32|14.711|0.132|1|14.446|0.161|1|10.753|0.137|1|7.43||32|17.683|1.024|0.218|2.389|16|0|55275.28745078|55277.33835439|55276.28283929|18.514|8.654|1.845|3.3829999|10|0|55275.28745078|55277.33835439|55276.28283929|12.138|1.216|0.265|2.29099989|13|0|55275.28745078|55277.33835439|55276.26723075|9.161|1.45|0.316|3.22300005|15|0|55275.28745078|55277.33835439|55276.26723075|-22|-27|-6|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005610|1|0.0011030336148598|0.0003351849259518|-0.999999335483734|101000000|
+J090613.28-895600.9|136.5553405|-89.9335953|0.5907|0.5681|-0.1506|302.8698589|-27.0913025|269.8785723|-66.6063255|1999.004|518.837|1201089401241004964|1201m894_ab41-004964|1201m894_ab41|4964|16.724|0.099|11.0|0.91049999|17.018|0.412|2.6|0.840499997|12.564|0.313|3.5|1.11399996|8.863||1.7|0.938499987|0.946500003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACBU|7|0000|6|21|0|20|2|20|0|20|20.663|20.14|20.03|20.009|0.0|0.0|0.0|0.0|0||0||0||0||32.3810005|2.95510006|9.333|2.814|0.076|9.83450031|3.73510003|21.803|3.358|0.268|149.369995|43.0320015|1094.654|23.647|2.04|20.9179993|12.1300001|298.102|9.557|1.073|16.631|0.266|0|0.261|16.187|0.323|0|0.319|13.618||32|0.825|8.055||32|0.576|17.211|0.258|0|17.072|0.393|0|13.338||32|9.199||32|16.892|0.266|0|16.506|0.323|0|14.443||32|8.631||32|16.727|0.295|1|16.155|0.301|1|12.626||32|8.907|0.488|1|16.39|0.267|1|15.816|0.272|1|12.285||32|8.637|0.497|1|15.846|0.196|1|15.449|0.235|1|11.961||32|8.471|0.541|1|15.327|0.144|1|15.102|0.201|1|11.672||32|7.514||32|14.973|0.12|1|14.81|0.178|1|11.408||32|7.328||32|14.753|0.113|1|14.573|0.164|1|11.195||32|7.169||32|16.708|0.569|0.124|3.384|19|1|55275.02271543|55276.94144233|55276.01834588|16.731|1.224|0.274|2.57200003|14|0|55275.02271543|55276.94144233|55275.98542146|12.379|1.651|0.369|3.15700006|13|0|55275.02271543|55276.94144233|55275.98873224|9.754|3.045|0.681|1.61199999|10|0|55275.02271543|55276.94144233|55275.98873224|-8|-1|5|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004964|1|-0.0008414654738669|0.0007969776738561|-0.999999328380996|111000000|
+J054059.25-895600.0|85.2469113|-89.9333404|0.5673|0.6219|-0.0804|302.8605148|-27.1483081|270.0139233|-66.6271386|1973.818|510.006|600089401241004869|0600m894_ab41-004869|0600m894_ab41|4869|16.772|0.1|10.9|1.03699994|17.162|0.467|2.3|1.08200002|12.586|0.33|3.3|0.974300027|9.221||0.6|0.948499978|1.00800002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACBU|7|0000|8|21|0|21|1|20|0|20|20.773|20.839|20.031|19.907|0.0|0.0|0.0|0.0|0||0||0||0||30.9890003|2.8506999|9.391|2.831|0.0|8.61359978|3.70289993|21.818|3.463|0.187|146.389999|44.4990005|1098.172|23.396|5.109|7.03709984|12.7259998|298.525|9.67|0.798|16.378||32|0.261|16.004||32|0.319|11.924||32|0.825|8.248||32|0.576|17.501|0.441|1|16.534||32|13.26||32|9.388||32|16.639||32|16.323||32|12.749||32|8.824||32|16.604||32|16.318||32|12.965|0.431|1|8.465||32|16.684||32|16.151||32|12.495|0.345|1|8.158||32|16.661||32|15.947||32|12.094|0.287|1|7.955||32|16.481||32|15.767||32|11.731|0.242|1|7.807||32|16.318||32|15.605||32|11.401|0.207|1|7.643||32|16.168||32|15.456||32|11.132|0.186|1|7.512||32|16.713|0.458|0.1|2.11|19|1|55275.28745078|55277.20605032|55276.18847532|16.88|1.653|0.361|3.49799991|13|0|55275.28745078|55277.20605032|55276.18847532|12.9|2.457|0.549|3.58299994|13|1|55275.28745078|55277.20605032|55276.16736816|13.041|||3.08500004|11|0|55275.28745078|55277.20605032|55276.16736816|-3|-14|-5|0|0|0||||||||||||||||||||||||||1329090278|1.146|-0.8|1|16.76|0.156|16.873||16.351||600089401241004869|1|0.0000964040037463|0.0011594283792862|-0.999999323215822|101000000|
+J231225.59-895559.7|348.1066625|-89.9332766|0.1126|0.1109|0.0167|302.9633238|-27.1887459|270.1640485|-66.5468721|2083.998|522.968|89401241004262|0000m894_ab41-004262|0000m894_ab41|4262|14.074|0.027|40.3|1.35399997|13.869|0.035|30.7|0.973399997|13.205||-0.3|0.976199985|9.578||-0.3|1.08200002|1.09500003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|24|24|24|24|0|23|0|23|24.773|24.794|23.996|23.997|0.0|0.0|0.0|0.0|0||0||0||0||371.730011|9.21959972|9.375|2.791|0.058|178.75|5.8276|21.785|3.365|0.051|-12.3459997|41.3880005|1099.21|24.686|0.201|-2.94589996|11.6899996|298.713|9.635|0.131|14.019|0.028|0|0.261|13.839|0.053|0|0.319|12.432||32|0.825|8.993||32|0.576|14.675|0.029|0|14.611|0.059|0|13.602||32|10.009||32|14.28|0.028|0|14.158|0.053|0|13.257||32|9.569||32|14.141|0.031|1|13.982|0.057|1|12.983||32|9.226||32|14.094|0.036|1|13.916|0.067|1|12.747||32|8.935||32|14.077|0.043|1|13.88|0.078|1|12.544||32|8.675||32|14.069|0.05|1|13.852|0.089|1|12.369||32|8.438||32|14.07|0.058|1|13.837|0.102|1|12.201||32|8.224||32|14.076|0.067|1|13.831|0.116|1|12.052||32|8.024||32|14.074|0.055|0.011|0.203|23|0|55275.28745078|55277.33835439|55276.24674528|13.874|0.117|0.024|0.430999994|23|0|55275.28745078|55277.33835439|55276.24674528|14.759|9.463|1.973|3.09500003|12|0|55275.28745078|55277.33835439|55276.2309247||||4.76200008|10|0|55275.28745078|55277.33835439|55276.2309247|-10|-14|25|0|0|0||||||||||||||||||||||||||1180999449|0.507|-85.7|1|15.296|0.052|14.759|0.086|14.284|0.083|89401241004262|1|0.0011395428312137|-0.0002400009493452|-0.99999932192061|131000000|
+J012232.82-895559.6|20.6367693|-89.9332316|1.3262|1.0982|0.3617|302.9217579|-27.1943102|270.1572317|-66.5841622|1936.253|217.606|2403089401241004949|2403m894_ab41-004949|2403m894_ab41|4949|18.802||-2.5|0.8028|17.387||-2.5|0.94630003|11.927|0.176|6.2|0.986500025|8.866||1.8|0.956900001|0.918200016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|22|0|22|0|21|0|21|21.457|21.051|20.951|21.005|0.0|0.0|0.0|0.0|0||0||0||0||-5.93959999|2.38840008|9.361|2.737|0.009|-8.7482996|3.50200009|21.751|3.383|0.095|268.570007|43.6559982|1098.281|22.744|3.323|21.2999992|11.8690004|299.018|9.828|1.163|16.938||32|0.261|16.197||32|0.319|12.026|0.289|1|0.825|8.306||32|0.576|17.781||32|16.881||32|13.624|0.42|0|9.464||32|17.199||32|16.516||32|12.851|0.289|1|8.882||32|16.647||32|16.235||32|12.299|0.226|1|8.456||32|16.658|0.346|1|16.463||32|11.853|0.185|1|8.852|0.522|1|15.918|0.211|1|15.472||32|11.467|0.156|1|8.599|0.522|1|15.179|0.126|1|15.604|0.534|1|11.141|0.137|1|7.667||32|14.425|0.074|1|14.57|0.24|1|10.848|0.121|1|7.496||32|13.623|0.041|1|13.606|0.114|1|10.582|0.109|1|7.374||32||||2.048|4|0|55275.28745078|55277.33835439|55276.28283929||||1.57500005|7|0|55275.28745078|55277.33835439|55276.28283929|11.767|0.443|0.097|2.36500001|18|0|55275.28745078|55277.33835439|55276.26723075|9.512|2.553|0.557|4.11600018|11|0|55275.28745078|55277.33835439|55276.26723075|-97|40|23|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004949|1|0.0010905524003012|0.0004107106260614|-0.999999321005891|101000000|
+J000515.86-895559.3|1.3161187|-89.9331616|0.1199|0.1182|0.0201|302.9469532|-27.1936421|270.1679953|-66.5621542|2043.976|526.973|89401241004287|0000m894_ab41-004287|0000m894_ab41|4287|14.295|0.028|38.6|1.41499996|14.01|0.039|28.2|0.989600003|11.139|0.088|12.4|1.06900001|||||1.15499997|1|0|0.0|0.0|0.0||0000|0000|0|011n|AAAX|7|0000|22|22|22|22|10|21|||22.985|23.521|22.833|23.097|0.0|0.0|0.0||0||0||0||0||303.450012|7.85769987|9.388|2.786|0.113|157.059998|5.57910013|21.781|3.343|0.069|555.330017|44.8740005|1097.772|23.538|1.617|||298.459|9.435|0.353|14.179|0.025|0|0.261|13.897|0.05|0|0.319|11.27|0.131|0|0.825|||||14.859|0.027|0|14.698|0.057|0|12.726|0.172|0||||14.44|0.025|0|14.216|0.05|0|12.095|0.131|0||||14.293|0.028|0|14.034|0.054|0|11.743|0.122|0||||14.254|0.033|1|13.98|0.064|1|11.511|0.121|1||||14.258|0.039|1|13.965|0.076|1|11.336|0.123|1||||14.272|0.047|1|13.943|0.087|1|11.173|0.123|1||||14.272|0.054|1|13.904|0.098|1|11.003|0.121|1||||14.253|0.061|1|13.855|0.107|1|10.829|0.117|1||||14.295|0.062|0.013|0.22|21|0|55275.28745078|55277.33835439|55276.28283929|14.003|0.143|0.03|0.49000001|21|0|55275.28745078|55277.33835439|55276.28283929|11.014|0.459|0.1|3.21000004|19|1|55275.28745078|55277.33835439|55276.26723075|||||0|||||-9|33||0|1|||||||||||||||||||||||||||1085342201|0.277|-162.8|1|16.445|0.148|15.49|0.154|14.71|0.132|89401241004287|1|0.0011662416080335|0.0000267939869352|-0.999999319581065|101000000|
+J061132.79-895558.9|92.8866419|-89.933031|0.2209|0.2358|-0.0343|302.8577984|-27.1397347|269.9914986|-66.6275927|2128.419|507.838|1201089401241004397|1201m894_ab41-004397|1201m894_ab41|4397|15.543|0.044|24.7|1.25600004|15.241|0.09|12.1|1.07500005|12.17|0.232|4.7|0.978699982|9.257|0.426|2.5|0.973500013|1.06900001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABC|15|0000|20|21|7|21|1|20|0|20|22.768|22.892|21.727|21.511|0.0|0.0|0.0|0.0|0||0||0||0||96.137001|3.89499998|9.398|2.85|0.045|50.5149994|4.17089987|21.786|3.492|0.108|214.699997|45.8110008|1098.486|23.481|4.421|31.4220009|12.3310003|298.811|9.494|1.567|15.132|0.064|0|0.261|14.753|0.099|0|0.319|12.275|0.426|0|0.825|8.208||32|0.576|15.919|0.074|0|15.681|0.125|0|13.047||32|9.26||32|15.393|0.064|0|15.072|0.099|0|13.1|0.426|0|8.784||32|15.11|0.063|0|14.727|0.094|0|12.613|0.353|0|8.468||32|14.955|0.068|1|14.529|0.097|1|12.307|0.33|1|8.198||32|14.866|0.075|1|14.424|0.105|1|12.084|0.324|1|7.976||32|14.8|0.083|1|14.361|0.117|1|11.861|0.311|1|7.786||32|14.732|0.091|1|14.321|0.132|1|11.648|0.298|1|7.6||32|14.659|0.097|1|14.287|0.147|1|11.486|0.295|1|7.435||32|15.554|0.166|0.036|0.724|20|0|55275.28745078|55277.20605032|55276.18847532|15.201|0.499|0.109|1.78400004|20|1|55275.28745078|55277.20605032|55276.18847532|12.086|0.735|0.164|3.07999992|16|0|55275.28745078|55277.20605032|55276.16736816|8.911|0.734|0.164|2.28900003|15|0|55275.28745078|55277.20605032|55276.16736816|-4|35|47|0|1|1|||||||||||||||||||||||||||||0|||||||1201089401241004397|1|-0.0000588623706761|0.00116734654721|-0.999999316918397|111000000|
+J023739.92-895558.8|39.4163618|-89.9330139|0.6142|0.6421|0.2086|302.8982476|-27.1880708|270.1303216|-66.6031878|2109.927|516.116|600089401241004748|0600m894_ab41-004748|0600m894_ab41|4748|16.951|0.108|10.1|0.865999997|17.189|0.422|2.6|0.85769999|12.357|0.249|4.4|1.14900005|9.206||0.9|1.05200005|0.975700021|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACBU|7|0000|4|23|0|23|1|22|0|22|23.721|23.648|22.916|22.779|0.0|0.0|0.0|0.0|0||0||0||0||26.2759991|2.61019993|9.333|2.74|0.166|8.4059|3.26349998|21.837|3.236|0.051|180.809998|41.5369987|1098.654|22.695|0.0|10.1990004|11.3599997|298.553|9.389|0.19|16.056|0.097|1|0.261|16.503|0.522|1|0.319|11.85||32|0.825|8.555||32|0.576|16.895|0.119|0|16.55||32|13.115||32|9.563||32|16.317|0.097|1|16.822|0.522|1|12.675||32|9.131||32|16.002|0.093|1|15.851||32|12.388||32|8.784||32|15.767|0.094|1|15.747||32|12.159||32|8.493||32|15.488|0.088|1|15.645||32|11.954||32|8.231||32|15.148|0.076|1|15.48||32|11.786||32|7.996||32|14.819|0.065|1|15.301||32|11.591||32|7.78||32|14.547|0.059|1|15.17||32|11.361||32|7.581||32|16.964|0.52|0.109|2.41|22|0|55275.28745078|55277.33835439|55276.3086008|17.092|1.777|0.371|3.48399997|15|0|55275.28745078|55277.33835439|55276.3086008|12.152|1.103|0.235|4.61899996|16|0|55275.28745078|55277.33835439|55276.29487272|10.574|6.028|1.285|3.579|11|0|55275.28745078|55277.33835439|55276.29487272|26|48|74|0|1|2|||||||||||||||||||||||||||||0|||||||600089401241004748|1|0.0009032123091884|0.0007423390122324|-0.999999316569924|101000000|
+J111037.77-895556.6|167.6574144|-89.9324107|0.8431|0.7631|0.0913|302.8995959|-27.0669971|269.8339136|-66.5750687|2086.66|524.701|1802089401241005025|1802m894_ab41-005025|1802m894_ab41|5025|17.069|0.134|8.1|0.9023|17.242|0.485|2.2|0.889699996|13.053||-0.1|1.06400001|9.147||0.8|1.00100005|0.959500015|1|0|0.0|0.0|0.0|0.011|0000|0000|0|0nnn|BCUU|3|0000|6|21|1|21|1|20|0|20|20.787|20.819|19.906|19.79|0.0|0.0|0.0|0.0|0||0||0||0||23.573|2.91829991|9.422|2.811|0.24|8.00010014|3.57259989|21.767|3.445|0.123|-3.65109992|47.6300011|1095.552|24.976|2.409|10.1569996|12.3050003|298.267|9.656|0.957|16.812|0.3|1|0.261|15.828||32|0.319|11.976||32|0.825|8.388||32|0.576|17.379|0.283|1|16.497||32|13.447||32|9.373||32|17.073|0.3|1|16.147||32|12.801||32|8.964||32|17.069|0.385|1|15.973||32|12.849|0.373|1|8.707||32|17.083|0.483|1|15.822||32|12.282|0.274|1|8.515||32|16.949|0.515|1|15.615||32|11.827|0.218|1|8.3||32|16.7|0.483|1|15.399||32|11.484|0.188|1|8.0||32|16.477|0.458|1|15.224||32|11.199|0.168|1|7.704||32|16.338|0.463|1|15.043||32|10.924|0.15|1|7.401||32|16.964|0.553|0.121|1.853|18|0|55274.89041135|55276.94144233|55275.96793221|17.37|2.238|0.488|3.58100009|13|0|55274.89041135|55276.94144233|55275.96793221|13.957|6.68|1.494|2.4690001|7|0|55274.89041135|55276.94144233|55275.93579789|10.811|6.116|1.368|2.49499989|8|0|55274.89041135|55276.94144233|55275.93579789|7|-34|-48|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005025|1|-0.0011523899245803|0.0002521590247959|-0.999999304206402|111000000|
+J141456.01-895555.5|213.7333788|-89.9321053|0.1666|0.1669|0.0392|302.9590827|-27.0647152|269.8582682|-66.5229409|2127.684|510.921|2403089401241004145|2403m894_ab41-004145|2403m894_ab41|4145|14.96|0.034|31.9|1.352|15.058|0.068|15.9|0.941699982|12.378||2.0|0.976599991|9.358||0.2|0.9648|1.05900002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|23|23|14|23|1|22|0|22|23.193|23.426|22.262|22.221|0.0|0.0|0.0|0.0|0||0||0||0||164.479996|5.15579987|9.512|2.622|0.261|59.8079987|3.76379991|21.819|3.238|0.105|88.0589981|44.6259995|1096.724|24.683|3.568|2.63790011|12.9960003|298.171|9.999|1.105|14.893|0.077|1|0.261|14.874|0.146|1|0.319|12.004||32|0.825|8.795||32|0.576|15.573|0.081|0|15.732|0.171|0|13.352||32|9.887||32|15.154|0.077|1|15.193|0.146|1|12.829||32|9.371||32|14.952|0.083|1|14.885|0.142|1|12.452||32|8.893||32|14.828|0.092|1|14.683|0.147|1|12.187||32|8.542||32|14.739|0.102|1|14.55|0.156|1|11.963||32|8.206||32|14.7|0.116|1|14.471|0.171|1|12.45|0.503|1|7.92||32|14.73|0.138|1|14.435|0.192|1|12.155|0.445|1|7.655||32|14.805|0.17|1|14.417|0.218|1|11.9|0.405|1|7.381||32|14.956|0.07|0.015|0.469|22|0|55275.02271543|55276.94144233|55276.02956479|15.024|0.241|0.05|1.57700002|22|0|55275.02271543|55276.94144233|55276.02956479|12.651|1.891|0.403|4.64499998|12|0|55275.02271543|55276.94144233|55276.00315326|10.694|6.206|1.323|3.68499994|8|0|55275.02271543|55276.94144233|55276.00315326|17|51|34|0|1|0||||||||||||||||||||||||||858107354|0.299|43.4|1|15.431|0.068|15.076|0.083|15.077|0.161|2403089401241004145|1|-0.0009854710142567|-0.0006580572448856|-0.999999297903525|121000000|
+J212412.62-895555.5|321.0525919|-89.9320897|0.1054|0.1047|-0.0069|302.9919088|-27.1701335|270.1325484|-66.517964|1985.467|518.469|3004089401241004060|3004m894_ab41-004060|3004m894_ab41|4060|13.814|0.026|41.8|0.926699996|13.836|0.034|32.3|1.04299998|12.511||1.7|0.915700018|9.559||-0.6|1.03699994|0.978299975|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|25|25|25|25|0|24|0|24|24.73|24.831|24.0|23.716|0.0|0.0|0.0|0.0|0||0||0||0||472.570007|11.3039999|9.318|2.72|0.112|184.289993|5.70489979|21.794|3.266|0.054|73.1579971|41.8779984|1097.838|24.383|2.753|-7.58860016|11.8900003|299.073|9.966|1.136|13.81|0.015|0|0.261|13.828|0.036|0|0.319|12.428||32|0.825|8.884||32|0.576|14.43|0.016|0|14.587|0.04|0|13.651||32|9.897||32|14.071|0.015|0|14.147|0.036|0|13.253||32|9.46||32|13.937|0.017|1|13.97|0.039|1|12.958||32|9.114||32|13.839|0.019|1|13.856|0.043|1|12.703||32|8.824||32|13.681|0.019|1|13.695|0.045|1|12.475||32|8.561||32|13.454|0.019|1|13.475|0.043|1|12.327||32|8.326||32|13.237|0.018|1|13.262|0.041|1|12.225||32|8.111||32|13.102|0.018|1|13.118|0.042|1|12.158||32|7.911||32|13.813|0.049|0.01|0.205|24|0|55275.28745078|55277.33835439|55276.25865158|13.833|0.129|0.026|0.458000004|24|0|55275.28745078|55277.33835439|55276.25865158|12.861|2.109|0.43|4.60300016|13|0|55275.28745078|55277.33835439|55276.24398629|12.039|||4.31099987|9|0|55275.28745078|55277.33835439|55276.24398629|-13|37|61|0|1|1||||||||||||||||||||||||||996513238|0.147|-164.6|1|14.465|0.034|13.976|0.041|14.012|0.067|3004089401241004060|1|0.0009218026632902|-0.0007450611490406|-0.99999929758162|131000000|
+J173519.00-895555.3|263.8292019|-89.9320452|1.1731|1.2704|-0.1551|303.0040834|-27.1059801|269.9816861|-66.4931467|1977.16|515.235|2403089401241005554|2403m894_ab41-005554|2403m894_ab41|5554|17.688|0.202|5.4|0.917100012|17.466||-0.4|1.0|12.484||1.5|0.938499987|8.924||1.4|0.937900007|0.945599973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|22|0|22|0|21|0|21|23.566|23.715|22.905|22.811|0.0|0.0|0.0|0.0|0||0||0||0||13.323|2.4849999|9.347|2.601|0.059|-1.16340005|3.25600004|21.767|3.318|0.279|68.2720032|46.2639999|1097.081|25.232|1.342|17.8409996|12.4379997|297.976|9.595|0.696|16.915||32|0.261|16.545||32|0.319|12.464||32|0.825|8.527||32|0.576|17.457||32|17.172||32|13.624||32|9.539||32|17.176||32|16.864||32|13.289||32|9.103||32|17.029||32|16.578||32|15.347||32|8.939||32|16.786||32|16.343||32|12.882||32|8.786||32|16.396||32|16.137||32|12.679||32|8.569||32|16.663|0.473|1|15.955||32|12.497||32|8.416||32|16.128|0.336|1|15.791||32|12.333||32|8.225||32|15.64|0.247|1|15.435||32|12.178||32|7.908||32|17.729|1.349|0.288|3.335|17|0|55275.28745078|55277.20605032|55276.18960482||||3.70000005|11|0|55275.28745078|55277.20605032|55276.18960482|13.194|2.535|0.553|3.43799996|11|0|55275.28745078|55277.20605032|55276.16955655|9.593|3.048|0.665|2.60299993|11|0|55275.28745078|55277.20605032|55276.16955655|-36|-4|4|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005554|1|-0.0001274900319791|-0.0011791628164106|-0.999999296660425|121000000|
+J202528.46-895555.1|306.3686186|-89.9319752|0.9156|0.9175|-0.315|303.0020221|-27.1552737|270.1011833|-66.5059014|2029.67|529.182|3004089401241005424|3004m894_ab41-005424|3004m894_ab41|5424|17.436|0.154|7.1|0.805800021|17.408|0.484|2.2|0.981899977|12.769||0.9|0.934099972|9.413||-1.1|0.893999994|0.90140003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|1|24|0|24|0|23|0|23|24.7|24.764|23.919|23.558|0.0|0.0|0.0|0.0|0||0||0||0||16.8110008|2.37840009|9.398|2.757|0.123|6.86929989|3.06329989|21.733|3.237|0.143|38.8230019|42.4550018|1097.777|24.475|1.168|-15.6389999|13.6009998|298.828|10.146|1.12|16.942|0.379|0|0.261|16.565|0.448|0|0.319|12.712||32|0.825|9.403||32|0.576|17.657|0.413|0|17.43|0.531|0|13.909||32|10.03||32|17.203|0.379|0|16.884|0.448|0|13.537||32|9.979||32|16.968|0.396|0|16.672|0.478|0|14.215||32|9.122||32|16.759|0.405|1|16.455|0.486|1|13.153||32|8.798||32|16.464|0.372|1|16.134|0.435|1|12.953||32|8.572||32|16.082|0.309|1|15.766|0.367|1|12.774||32|8.276||32|15.669|0.246|1|15.341|0.289|1|12.611||32|7.949||32|15.259|0.194|1|14.882|0.218|1|12.462||32|7.659||32|17.488|0.819|0.167|3.816|21|0|55275.28745078|55277.20605032|55276.21366396|17.462|3.294|0.672|3.95300007|16|0|55275.28745078|55277.20605032|55276.21366396|13.4|2.444|0.51|4.37200022|12|0|55275.28745078|55277.20605032|55276.19640507||||2.898|7|0|55275.28745078|55277.20605032|55276.19640507|51|-55|-64|1|1|1|||||||||||||||||||||||||||||0|||||||3004089401241005424|1|0.000704016447664|-0.0009560004813984|-0.999999295211712|131000000|
+J225643.36-895555.0|344.180675|-89.9319633|0.6867|0.612|-0.0953|302.9686224|-27.1878418|270.164441|-66.5420756|2096.555|523.411|89401241005272|0000m894_ab41-005272|0000m894_ab41|5272|17.062|0.111|9.7|0.772499979|16.898|0.317|3.4|0.967800021|12.9|0.424|2.6|0.896300018|9.646||-1.0|1.04100001|0.915199995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BBCU|7|0000|4|25|1|25|0|24|1|24|24.695|24.974|24.08|24.105|0.0|0.0|0.0|0.0|0||0||0||0||23.7310009|2.43449998|9.39|2.735|0.112|10.9820004|3.20889997|21.775|3.287|0.116|109.629997|42.7659988|1098.696|24.271|0.0|-11.4619999|10.9840002|298.917|9.617|0.911|16.662|0.286|1|0.261|15.808||32|0.319|12.105||32|0.825|9.058||32|0.576|17.403|0.319|1|16.54||32|13.29||32|10.047||32|16.923|0.286|1|16.127||32|12.93||32|9.634||32|16.466|0.243|1|16.395|0.517|1|12.652||32|9.319||32|15.748|0.156|1|15.55|0.295|1|12.416||32|8.945||32|15.015|0.096|1|14.775|0.174|1|12.215||32|8.561||32|14.522|0.072|1|14.237|0.126|1|12.032||32|8.246||32|14.246|0.065|1|13.92|0.109|1|11.869||32|7.997||32|14.097|0.065|1|13.741|0.107|1|11.716||32|7.76||32|17.055|0.497|0.099|2.215|24|0|55275.28745078|55277.33835439|55276.25865158|16.951|1.67|0.334|3.45000005|18|0|55275.28745078|55277.33835439|55276.25865158|12.545|1.725|0.352|4.99700022|16|0|55275.28745078|55277.33835439|55276.24398629||||2.5|8|0|55275.28745078|55277.33835439|55276.24398629|16|-4|64|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005272|1|0.0011424897962584|-0.0003237082643442|-0.999999294964764|131000000|
+J152135.22-895555.0|230.3967729|-89.9319535|0.4075|0.4182|0.119|302.9784776|-27.0741908|269.8911801|-66.5082428|2078.843|527.49|2403089401241004632|2403m894_ab41-004632|2403m894_ab41|4632|16.385|0.071|15.3|0.890500009|16.622|0.251|4.3|0.83039999|12.917||0.5|1.06700003|8.942||1.2|1.12100005|0.971800029|1|0|0.0|0.0|0.0|0.002|0000|0000|0|0nnn|ABUU|3|0000|14|23|0|23|1|22|0|22|23.22|23.657|22.735|22.512|0.0|0.0|0.0|0.0|0||0||0||0||44.262001|2.88709998|9.395|2.648|0.055|14.1619997|3.27150011|21.825|3.265|0.0|21.2709999|43.3359985|1095.788|25.034|4.349|16.1490002|12.927|297.882|9.882|1.873|15.813|0.122|1|0.261|16.006|0.403|1|0.319|11.999||32|0.825|8.438||32|0.576|16.728|0.159|1|16.99|0.534|1|13.53||32|9.525||32|16.074|0.122|1|16.325|0.403|1|12.824||32|9.014||32|15.61|0.103|1|15.855|0.342|1|12.476||32|8.688||32|15.263|0.093|1|15.511|0.308|1|12.228||32|8.383||32|14.955|0.084|1|15.193|0.277|1|12.021||32|8.112||32|14.636|0.074|1|14.849|0.238|1|11.847||32|7.889||32|14.342|0.066|1|14.518|0.204|1|11.691||32|7.68||32|14.11|0.061|1|14.242|0.182|1|11.54||32|7.493||32|16.382|0.306|0.064|1.331|22|0|55275.02271543|55276.94144233|55276.02956479|16.573|0.998|0.208|3.36500001|18|0|55275.02271543|55276.94144233|55276.02956479|13.837|8.125|1.732|1.86000001|9|0|55275.02271543|55276.94144233|55276.00315326|9.524|3.166|0.675|1.16199994|8|0|55275.02271543|55276.94144233|55276.00315326|9|-65|50|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241004632|1|-0.0007570789856793|-0.0009150463454213|-0.999999294760549|121000000|
+J053110.18-895554.6|82.7924541|-89.9318443|0.5472|0.6343|0.0253|302.8599697|-27.1515236|270.0215559|-66.6283246|1979.14|516.652|600089401241004803|0600m894_ab41-004803|0600m894_ab41|4803|16.949|0.116|9.3|0.969900012|16.469|0.247|4.4|0.960799992|11.784|0.16|6.8|1.13600004|8.788||1.8|0.840399981|0.990199983|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0n1n|BBBU|7|0000|4|21|0|21|4|20|0|20|20.757|20.729|19.891|19.977|0.0|0.0|0.0|0.0|0||0||0||0||26.3379993|2.81890011|9.391|2.831|0.177|16.3129997|3.7119|21.818|3.463|0.059|306.359985|45.1660004|1098.172|23.396|3.185|22.6760006|12.8629999|298.525|9.67|1.049|16.766|0.22|1|0.261|16.17|0.358|1|0.319|11.831||32|0.825|8.313||32|0.576|17.335|0.211|1|16.853|0.36|1|13.061||32|9.44||32|17.027|0.22|1|16.489|0.358|1|12.656||32|8.889||32|16.899|0.253|1|16.351|0.408|1|12.401||32|8.479||32|16.82|0.291|1|16.234|0.455|1|12.215||32|8.168||32|16.84|0.356|1|16.158|0.508|1|12.064||32|7.91||32|16.835|0.417|1|15.32||32|11.9||32|7.712||32|16.582|0.385|1|15.161||32|11.694||32|7.544||32|16.051|0.271|1|15.502|0.437|1|11.441||32|7.398||32|16.904|0.459|0.1|2.094|19|0|55275.28745078|55277.20605032|55276.18847532|16.433|1.495|0.326|3.43400002|16|0|55275.28745078|55277.20605032|55276.18847532|11.608|0.757|0.169|2.51799989|16|1|55275.28745078|55277.20605032|55276.16736816|9.464|1.969|0.44|3.93600011|10|0|55275.28745078|55277.20605032|55276.16736816|3|8|-44|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241004803|1|0.000149244538246|0.0011801421881208|-0.999999292494992|101000000|
+J130513.36-895554.6|196.3056967|-89.9318416|1.0324|0.9745|0.2803|302.9365168|-27.0601211|269.8356707|-66.5414865|1998.725|523.528|1802089401241005568|1802m894_ab41-005568|1802m894_ab41|5568|17.574|0.175|6.2|0.825100005|17.007|0.344|3.2|0.979900002|12.915||0.4|1.07299995|9.499||-0.2|1.01999998|0.969699979|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|1|24|1|24|0|23|0|23|23.816|23.584|22.827|22.717|0.0|0.0|0.0|0.0|0||0||0||0||14.8009996|2.3835001|9.394|2.632|0.129|9.93389988|3.14409995|21.794|3.232|0.0|17.4239998|45.362999|1096.522|25.196|2.169|-2.83839989|12.5749998|298.11|9.922|0.81|16.858||32|0.261|15.79||32|0.319|11.757||32|0.825|8.585||32|0.576|17.356||32|16.458||32|12.949||32|9.596||32|17.119||32|16.109||32|12.582||32|9.161||32|17.096||32|15.946||32|12.298||32|8.815||32|17.078||32|15.897||32|12.067||32|8.521||32|16.875||32|15.694||32|11.864||32|8.26||32|16.694||32|15.514||32|11.684||32|8.024||32|16.527||32|15.348||32|11.518||32|7.808||32|16.144||32|15.137||32|11.368||32|7.609||32|17.581|0.947|0.193|2.782|19|0|55274.89041135|55276.94144233|55275.98210006|17.046|2.272|0.464|2.53399992|16|0|55274.89041135|55276.94144233|55275.98210006|13.218|2.386|0.497|4.06400013|11|0|55274.89041135|55276.94144233|55275.95477317|11.255|||1.98899996|9|0|55274.89041135|55276.94144233|55275.95477317|51|-8|-25|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005568|1|-0.0011417406534019|-0.000333991560528|-0.999999292438709|121000000|
+J164146.28-895554.4|250.4428354|-89.9317876|0.4118|0.4511|0.0595|302.9965958|-27.0915748|269.9427443|-66.4964213|2016.752|527.863|2403089401241004645|2403m894_ab41-004645|2403m894_ab41|4645|16.429|0.073|14.8|0.910600007|16.582|0.243|4.5|0.87620002|13.076||-1.8|1.03999996|9.505||-1.1|1.03600001|0.961199999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|12|22|0|22|0|21|0|21|23.046|23.473|22.215|22.388|0.0|0.0|0.0|0.0|0||0||0||0||42.4869995|2.87479997|9.361|2.651|0.414|14.6969995|3.28309989|21.772|3.313|0.353|-85.6480026|46.6220016|1096.054|25.515|4.065|-14.3120003|12.4969997|298.549|9.743|1.38|16.097|0.134|1|0.261|16.144|0.32|1|0.319|12.308||32|0.825|8.688||32|0.576|16.855|0.153|1|17.012|0.381|1|13.665||32|9.8||32|16.358|0.134|1|16.463|0.32|1|13.133||32|9.264||32|16.023|0.128|1|16.031|0.278|1|12.548||32|8.906||32|15.746|0.123|1|15.608|0.233|1|12.063||32|8.625||32|15.536|0.122|1|15.301|0.212|1|12.323|0.427|1|8.409||32|15.351|0.121|1|15.091|0.206|1|11.99|0.37|1|8.248||32|15.123|0.114|1|14.869|0.195|1|11.775|0.353|1|8.132||32|14.827|0.1|1|14.587|0.173|1|11.621|0.353|1|7.933||32|16.448|0.303|0.065|1.103|21|0|55275.02271543|55276.94144233|55276.09036233|16.603|1.102|0.235|2.71099997|16|0|55275.02271543|55276.94144233|55276.09036233||||4.3670001|6|0|55275.02271543|55276.94144233|55276.06558822||||1.98800004|4|0|55275.02271543|55276.94144233|55276.06558822|14|-7|95|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004645|1|-0.0003985270311433|-0.0011218472556091|-0.999999291317219|121000000|
+J153001.55-895553.7|232.5064656|-89.9315973|0.3519|0.3674|0.0967|302.9809326|-27.0754785|269.8955596|-66.5064019|2072.49|529.431|2403089401241004578|2403m894_ab41-004578|2403m894_ab41|4578|16.31|0.067|16.2|1.04100001|15.793|0.122|8.9|0.854300022|12.563|0.342|3.2|1.074|8.904||1.4|1.07500005|1.00699997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|12|23|3|23|4|22|1|22|23.511|23.586|22.84|22.691|0.0|0.0|0.0|0.0|0||0||0||0||47.4199982|2.92700005|9.419|2.667|0.185|30.3980007|3.41939998|21.775|3.283|0.0|149.5|47.0760002|1096.765|25.376|3.023|18.1259995|12.6800003|297.631|9.688|1.556|15.942|0.173|1|0.261|15.355|0.161|1|0.319|11.784||32|0.825|8.593||32|0.576|16.827|0.221|1|16.292|0.204|1|12.883||32|9.61||32|16.203|0.173|1|15.674|0.161|1|12.609||32|9.169||32|15.696|0.139|1|15.259|0.142|1|12.442||32|8.82||32|15.307|0.121|1|14.926|0.13|1|12.203||32|8.529||32|15.044|0.114|1|14.662|0.123|1|12.001||32|8.266||32|14.865|0.115|1|14.454|0.12|1|11.816||32|8.029||32|14.681|0.113|1|14.255|0.116|1|11.653||32|7.814||32|14.381|0.098|1|14.016|0.107|1|11.502||32|7.614||32|16.378|0.294|0.061|1.352|22|1|55275.02271543|55276.94144233|55276.02956479|15.799|0.597|0.125|2.92499995|22|0|55275.02271543|55276.94144233|55276.02956479|12.235|1.806|0.385|4.18499994|12|2|55275.02271543|55276.94144233|55276.00315326|9.574|2.543|0.542|4.59000015|16|0|55275.02271543|55276.94144233|55276.00315326|-11|46|-6|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241004578|1|-0.0007266643605987|-0.0009472287350995|-0.999999287358061|121000000|
+J150532.92-895553.4|226.387188|-89.9315167|0.2835|0.293|0.0769|302.9743962|-27.071061|269.8814804|-66.5110809|2091.313|526.014|2403089401241004436|2403m894_ab41-004436|2403m894_ab41|4436|15.954|0.053|20.6|0.981999993|15.778|0.122|8.9|0.949999988|12.736||0.9|1.01499999|8.851||1.8|1.14699996|1.01900005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABUU|3|0000|21|23|5|23|0|22|0|22|22.522|22.87|22.011|22.02|0.0|0.0|0.0|0.0|0||0||0||0||65.8310013|3.19930005|9.406|2.628|0.137|30.8209991|3.46429992|21.81|3.221|0.142|38.5089989|44.5379982|1096.482|25.466|2.016|21.7549992|11.9639997|298.117|9.733|0.552|15.545|0.082|1|0.261|15.304|0.117|1|0.319|11.604||32|0.825|8.318||32|0.576|16.366|0.099|1|16.209|0.145|1|12.942||32|9.351||32|15.806|0.082|1|15.623|0.117|1|12.429||32|8.894||32|15.409|0.074|1|15.208|0.103|1|12.013||32|8.642||32|15.089|0.068|1|14.834|0.09|1|11.7||32|8.405||32|14.838|0.065|1|14.505|0.079|1|11.482||32|8.219||32|14.641|0.064|1|14.241|0.073|1|11.342||32|8.095||32|14.468|0.063|1|14.025|0.069|1|11.255||32|7.995||32|14.291|0.061|1|13.828|0.066|1|11.174||32|7.895||32|15.983|0.246|0.051|0.992|22|0|55275.02271543|55276.94144233|55276.02956479|15.777|0.743|0.155|3.59200001|20|2|55275.02271543|55276.94144233|55276.02956479|13.339|2.547|0.543|3.25099993|12|0|55275.02271543|55276.94144233|55276.00315326|9.443|2.805|0.598|2.99900007|11|0|55275.02271543|55276.94144233|55276.00315326|-17|-10|3|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004436|1|-0.0008244677087521|-0.0008653888179983|-0.99999928567734|121000000|
+J023507.87-895553.3|38.7828323|-89.9314851|0.6374|0.6519|0.1949|302.8982426|-27.1897733|270.1345011|-66.6035671|1870.507|326.076|3004089401241004954|3004m894_ab41-004954|3004m894_ab41|4954|17.006|0.114|9.5|0.951799989|16.684|0.262|4.1|0.9727|12.609|0.31|3.5|1.14999998|9.537||-0.2|0.963|1.00699997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|3|23|1|23|1|22|0|22|23.706|23.724|22.896|22.818|0.0|0.0|0.0|0.0|0||0||0||0||24.9909992|2.63240004|9.327|2.751|0.0|13.375|3.22539997|21.721|3.213|0.038|143.399994|40.9059982|1098.932|23.007|1.474|-1.97039998|12.1379995|299.153|9.634|1.336|15.945|0.096|1|0.261|16.039|0.329|1|0.319|11.898||32|0.825|8.731||32|0.576|16.901|0.129|1|17.025|0.43|1|13.097||32|9.743||32|16.206|0.096|1|16.358|0.329|1|12.723||32|9.307||32|15.684|0.077|1|15.853|0.268|1|12.442||32|8.967||32|15.237|0.063|1|15.42|0.222|1|12.212||32|8.671||32|14.891|0.056|1|15.088|0.198|1|12.007||32|8.412||32|14.637|0.052|1|14.862|0.189|1|11.831||32|8.177||32|14.431|0.05|1|14.697|0.189|1|11.667||32|11.174||32|14.257|0.049|1|14.583|0.196|1|11.515||32|7.761||32|16.978|0.571|0.119|3.339|22|1|55275.28745078|55277.33835439|55276.3086008|16.666|1.504|0.314|2.61400008|15|0|55275.28745078|55277.33835439|55276.3086008|12.438|1.668|0.356|4.83599997|16|0|55275.28745078|55277.33835439|55276.29487272|11.213|6.844|1.459|3.45600009|12|0|55275.28745078|55277.33835439|55276.29487272|10|-45|-37|0|1|1|||||||||||||||||||||||||||||0|||||||3004089401241004954|1|0.0009321646390693|0.000749019857246|-0.999999285018914|101000000|
+J074033.77-895552.8|115.1407419|-89.9313374|0.3989|0.4155|-0.132|302.8565416|-27.113531|269.9264814|-66.6228497|2063.812|531.101|1201089401241004731|1201m894_ab41-004731|1201m894_ab41|4731|16.387|0.07|15.5|1.005|16.498|0.23|4.7|1.02400005|12.955|0.444|2.4|1.05200005|9.2||0.8|0.957499981|1.00699997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|13|22|1|22|1|21|0|21|22.121|22.386|21.007|21.219|0.0|0.0|0.0|0.0|0||0||0||0||44.1959991|2.8513999|9.425|2.731|0.248|15.882|3.37129998|21.821|3.243|0.05|104.220001|42.6220016|1096.899|23.497|2.168|9.23180008|11.9449997|298.34|9.445|0.985|15.794|0.076|0|0.261|15.707|0.205|0|0.319|12.018||32|0.825|8.765||32|0.576|16.616|0.092|0|16.634|0.256|0|14.538||32|9.811||32|16.055|0.076|0|16.026|0.205|0|12.843||32|9.341||32|15.783|0.076|1|15.715|0.199|1|12.367||32|9.067||32|15.661|0.084|1|15.559|0.213|1|11.979||32|8.841||32|15.604|0.096|1|15.474|0.237|1|11.714||32|8.548||32|15.573|0.111|1|15.438|0.271|1|11.511||32|8.276||32|15.554|0.127|1|15.447|0.318|1|11.327||32|8.016||32|15.545|0.145|1|15.475|0.376|1|11.167||32|7.796||32|16.403|0.32|0.068|1.429|21|0|55275.02271543|55276.94144233|55276.03624953|16.575|0.799|0.17|2.77600002|18|0|55275.02271543|55276.94144233|55276.03624953|13.04|2.492|0.544|3.15300012|11|1|55275.02271543|55276.94144233|55276.00889862|10.495|6.718|1.466|4.07600021|10|0|55275.02271543|55276.94144233|55276.00889862|8|-38|-76|0|1|0|||||||||||||||||||||||||||||0|||||||1201089401241004731|1|-0.0005091269671843|0.0010848608490381|-0.999999281933077|111000000|
+J170136.33-895552.6|255.4013942|-89.9313055|1.1413|1.3125|0.189|303.0003873|-27.0964648|269.9565889|-66.4942262|2001.343|525.724|2403089401241005548|2403m894_ab41-005548|2403m894_ab41|5548|17.694|0.203|5.3|0.816299975|16.789||1.7|1.03900003|13.021||-1.0|0.9102|9.344||0.2|1.03299999|0.945800006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|22|0|22|1|21|0|21|23.723|23.733|22.906|22.649|0.0|0.0|0.0|0.0|0||0||0||0||13.2609997|2.47930002|9.373|2.655|0.0|5.54209995|3.30069995|21.77|3.298|0.0|-48.4179993|49.0639992|1096.813|25.363|0.0|2.29349995|13.3509998|298.265|9.775|0.81|17.446|0.469|0|0.261|16.363||32|0.319|12.513||32|0.825|8.564||32|0.576|18.102|0.481|0|16.83||32|13.893||32|9.729||32|17.707|0.469|0|16.682||32|13.338||32|9.14||32|17.44|0.474|1|16.476||32|12.824||32|8.698||32|16.96|0.378|1|16.241||32|12.432||32|8.324||32|16.125|0.212|1|16.034||32|12.857|0.525|1|8.649|0.471|1|15.195|0.107|1|15.475||32|12.545|0.465|1|8.332|0.423|1|14.36|0.058|1|15.012|0.291|1|12.272|0.421|1|8.188|0.438|17|13.653|0.035|1|14.027|0.135|1|11.969|0.366|1|8.083|0.463|17|18.016|1.453|0.31|3.03|16|2|55275.02271543|55276.94144233|55276.09036233|17.62|4.331|0.923|2.09500003|12|0|55275.02271543|55276.94144233|55276.09036233||||2.92600012|4|1|55275.02271543|55276.94144233|55276.06558822|10.746|8.086|1.764|2.71600008|8|0|55275.02271543|55276.94144233|55276.06558822|-11|-19|89|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005548|1|-0.0003021889002481|-0.0011602367984973|-0.999999281265962|121000000|
+J182142.17-895550.8|275.4257263|-89.930787|0.1897|0.1991|-0.0363|303.0090246|-27.1191806|270.0164071|-66.4918052|2124.686|516.215|3004089401241004310|3004m894_ab41-004310|3004m894_ab41|4310|15.301|0.038|28.8|0.984099984|15.307|0.086|12.7|0.903199971|13.108||-1.1|1.102|9.509||-0.7|0.988799989|0.990400016|1|0|0.0|0.0|0.0|0.004|0000|0000|0|00nn|AAUU|3|0000|22|22|6|22|0|21|0|21|22.501|22.448|22.005|21.429|0.0|0.0|0.0|0.0|0||0||0||0||120.150002|4.17110014|9.384|2.67|0.092|47.5400009|3.75079989|21.762|3.342|0.0|-49.3040009|45.2859993|1095.615|24.734|2.005|-8.51249981|12.4510002|298.585|9.667|0.938|15.244|0.043|1|0.261|15.455|0.181|1|0.319|12.298||32|0.825|8.95||32|0.576|15.893|0.045|1|16.096|0.175|1|13.487||32|9.958||32|15.505|0.043|1|15.774|0.181|1|13.123||32|9.526||32|15.312|0.047|1|15.73|0.226|1|12.837||32|9.184||32|15.175|0.051|1|15.735|0.282|1|12.603||32|8.895||32|15.08|0.056|1|15.76|0.348|1|12.401||32|8.637||32|15.002|0.061|1|15.824|0.436|1|12.22||32|8.405||32|14.909|0.065|1|15.879|0.534|1|12.055||32|8.192||32|14.765|0.066|1|14.997||32|11.903||32|7.995||32|15.284|0.144|0.031|0.804|21|0|55275.28745078|55277.20605032|55276.18960482|15.302|0.256|0.055|0.938000023|21|0|55275.28745078|55277.20605032|55276.18960482||||4.09600019|7|0|55275.28745078|55277.20605032|55276.16955655||||1.91199994|5|0|55275.28745078|55277.20605032|55276.16955655|15|-14|30|0|0|0||||||||||||||||||||||||||970505435|0.223|136.7|1|16.393|0.134|15.542|0.146|15.605|0.265|3004089401241004310|1|0.0001142222575995|-0.0012025816961525|-0.999999270375004|131000000|
+J100031.78-895550.3|150.1324475|-89.9306447|0.3796|0.3509|-0.0721|302.8790653|-27.0771985|269.8485908|-66.5951747|1957.357|509.366|1201089401241004648|1201m894_ab41-004648|1201m894_ab41|4648|16.125|0.065|16.7|0.907000005|15.964|0.162|6.7|0.835500002|12.809|0.415|2.6|0.974799991|9.564||-1.5|1.06599998|0.940599978|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABCU|7|0000|15|20|2|20|1|19|0|19|20.833|20.749|20.378|20.278|0.0|0.0|0.0|0.0|0||0||0||0||56.2109985|3.37420011|9.407|2.847|0.0|25.9689999|3.8684001|21.791|3.45|0.0|119.260002|45.5769997|1095.637|24.118|0.0|-18.1970005|11.8430004|298.207|9.524|1.726|15.894|0.136|0|0.261|16.118|0.473|0|0.319|11.743||32|0.825|8.809||32|0.576|16.551|0.14|0|16.688|0.426|0|12.936||32|9.824||32|16.155|0.136|0|16.437|0.473|0|12.568||32|9.385||32|16.046|0.158|0|15.758||32|12.294||32|9.04||32|16.081|0.203|1|15.937||32|12.06||32|8.747||32|16.216|0.277|1|15.875||32|11.856||32|8.417||32|16.432|0.399|1|15.694||32|11.675||32|8.125||32|16.591|0.536|1|15.53||32|11.511||32|7.844||32|16.428|0.531|1|15.379||32|11.36||32|7.593||32|16.169|0.243|0.054|1.367|19|0|55275.02271543|55276.94144233|55276.02180825|15.893|0.71|0.159|2.80200005|17|0|55275.02271543|55276.94144233|55276.02180825|12.56|1.907|0.438|2.58299994|10|0|55275.02271543|55276.94144233|55275.99081824||||2.26799989|5|0|55275.02271543|55276.94144233|55275.99081824|31|39|-70|1|1|0|||||||||||||||||||||||||||||0|||||||1201089401241004648|1|-0.001049701424571|0.000602814322992|-0.999999267370637|111000000|
+J041558.52-895550.2|63.9938641|-89.9306152|0.0879|0.0885|-0.01|302.8711902|-27.171682|270.0766749|-66.6230496|2035.642|533.27|600089401241003932|0600m894_ab41-003932|0600m894_ab41|3932|12.977|0.024|46.0|0.900099993|13.004|0.026|41.0|1.01300001|11.765|0.145|7.5|1.14499998|9.03||1.0|1.06900001|1.02699995|1|0|0.0|0.0|0.0|0.0|0000|dd00|0|001n|AABU|7|0000|23|23|23|23|5|22|0|22|22.717|22.723|21.882|21.802|0.0|0.0|0.0|0.0|1|d|1|d|0||0||1021.40002|22.2070007|9.326|2.793|0.216|396.5|9.67640018|21.71|3.296|0.07|311.799988|41.6580009|1098.464|22.96|0.0|13.158|12.7860003|298.854|9.816|0.955|12.943|0.009|1|0.261|12.987|0.023|1|0.319|11.949|0.248|1|0.825|8.334||32|0.576|13.587|0.01|1|13.758|0.025|1|13.45|0.33|1|9.496||32|13.204|0.009|1|13.306|0.023|1|12.774|0.248|1|8.91||32|13.039|0.009|1|13.104|0.024|1|12.355|0.217|1|9.193|0.523|1|12.932|0.01|1|12.983|0.027|1|12.011|0.194|1|8.698|0.428|1|12.843|0.011|1|12.889|0.029|1|11.711|0.176|1|8.331|0.383|1|12.765|0.012|1|12.808|0.032|1|11.459|0.164|1|8.039|0.359|1|12.695|0.012|1|12.734|0.034|1|11.23|0.153|1|7.795|0.346|1|12.631|0.013|1|12.665|0.037|1|11.022|0.144|1|7.611|0.347|17|12.976|0.044|0.009|0.147|22|0|55275.28745078|55277.20605032|55276.24819836|13.016|0.068|0.014|0.326000005|22|0|55275.28745078|55277.20605032|55276.24819836|11.754|0.609|0.13|1.96500003|19|0|55275.28745078|55277.20605032|55276.23172471|9.845|3.144|0.67|2.94799995|10|0|55275.28745078|55277.20605032|55276.23172471|19|-5|37|0|0|1||||||||||||||||||||||||||922203414|0.222|35.5|1|13.657|0.026|13.157|0.034|13.134|0.046|600089401241003932|1|0.000530980641911|0.0010883758128382|-0.999999266748555|101000000|
+J091918.50-895550.0|139.8270873|-89.9305632|0.2774|0.2642|-0.0742|302.8696034|-27.0863859|269.8663762|-66.6054456|1986.895|523.245|1201089401241004491|1201m894_ab41-004491|1201m894_ab41|4491|15.641|0.05|21.6|1.05200005|15.809|0.146|7.4|0.838|12.394|0.281|3.9|1.16199994|9.424|0.505|2.2|1.00800002|1.01199996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBC|15|0000|19|20|2|20|0|19|0|19|20.912|20.782|19.88|20.054|0.0|0.0|0.0|0.0|0||0||0||0||87.7809982|4.05840015|9.436|2.88|0.334|29.941|4.02780008|21.809|3.378|0.268|174.770004|45.2750015|1096.027|23.912|6.021|26.9370003|12.5220003|297.829|9.418|2.217|15.356|0.081|0|0.261|15.095|0.102|0|0.319|11.745||32|0.825|8.344||32|0.576|16.097|0.09|0|16.057|0.133|0|13.133||32|9.458||32|15.617|0.081|0|15.414|0.102|0|12.57||32|8.92||32|15.402|0.086|1|15.031|0.092|1|12.87|0.527|1|8.471||32|15.281|0.095|1|14.76|0.088|1|12.449|0.444|1|8.168||32|15.138|0.1|1|14.524|0.084|1|12.191|0.42|1|7.981||32|14.949|0.099|1|14.286|0.079|1|12.045|0.433|1|7.876||32|14.768|0.098|1|14.061|0.074|1|11.958|0.464|1|7.817||32|14.621|0.098|1|13.866|0.071|1|11.919|0.515|1|7.709||32|15.655|0.161|0.036|0.522|19|0|55275.02271543|55276.94144233|55276.02180825|15.859|0.562|0.126|3.15799999|19|0|55275.02271543|55276.94144233|55276.02180825|12.303|1.396|0.32|2.63899994|12|0|55275.02271543|55276.94144233|55275.99081824|9.0|1.355|0.311|3.52600002|12|0|55275.02271543|55276.94144233|55275.99081824|-11|47|-4|0|1|0||||||||||||||||||||||||||806891179|0.591|15.4|1|16.277|0.136|15.806|0.178|15.845||1201089401241004491|1|-0.000926014390274|0.0007817927081955|-0.999999265648486|111000000|
+J161130.52-895549.9|242.8772004|-89.9305523|0.3168|0.3399|0.0756|302.9916838|-27.0835201|269.9206024|-66.4988782|2040.034|533.676|2403089401241004524|2403m894_ab41-004524|2403m894_ab41|4524|16.109|0.058|18.6|0.993399978|16.135|0.158|6.9|0.936699986|13.1|0.522|2.1|0.992699981|9.576||-0.5|0.995800018|0.976499975|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|18|23|3|23|1|22|0|22|23.059|23.409|22.125|22.261|0.0|0.0|0.0|0.0|0||0||0||0||57.0519981|3.06789994|9.521|2.67|0.083|22.1720009|3.2328999|21.765|3.36|0.105|91.223999|43.8810005|1096.846|25.366|1.965|-5.94369984|11.7119999|298.384|10.033|0.372|15.799|0.085|1|0.261|15.808|0.249|1|0.319|11.772||32|0.825|8.635||32|0.576|16.545|0.096|1|16.62|0.279|1|13.043||32|9.641||32|16.06|0.085|1|16.127|0.249|1|12.597||32|9.211||32|15.748|0.083|1|15.864|0.255|1|12.295||32|8.866||32|15.447|0.078|1|15.625|0.253|1|12.076||32|8.573||32|15.155|0.072|1|15.364|0.239|1|11.883||32|8.313||32|14.892|0.066|1|15.076|0.216|1|11.668||32|8.078||32|14.663|0.063|1|14.765|0.189|1|11.458||32|7.862||32|14.427|0.058|1|14.438|0.161|1|11.283||32|7.663||32|16.113|0.233|0.049|0.861|22|0|55275.02271543|55276.94144233|55276.08997277|16.3|0.993|0.207|4.05299997|20|1|55275.02271543|55276.94144233|55276.08997277|12.829|2.266|0.483|5.20599985|14|0|55275.02271543|55276.94144233|55276.06630705||||4.08099985|9|0|55275.02271543|55276.94144233|55276.06630705|5|-10|-8|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004524|1|-0.000552590756437|-0.0010787982370498|-0.99999926541864|121000000|
+J015117.65-895549.6|27.8235595|-89.9304621|0.0704|0.0729|-0.0177|302.9117288|-27.1953347|270.1548076|-66.5930895|1963.017|513.04|89401241004093|0000m894_ab41-004093|0000m894_ab41|4093|10.48|0.023|46.6|0.847599983|10.53|0.02|55.3|0.947300017|10.3|0.046|23.7|1.14100003|9.231|0.405|2.7|1.03400004|0.987399995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|111n|AAAC|15|0000|22|22|22|22|19|21|0|21|22.027|22.216|21.99|22.137|0.0|0.0|0.0|0.0|0||0||0||0||10184.0|218.479996|9.365|2.791|0.0|3871.6001|69.9609985|21.808|3.331|0.084|1202.5|50.8050003|1099.026|23.187|1.721|32.1829987|11.9989996|298.605|9.584|0.706|10.494|0.006|0|0.261|10.519|0.006|0|0.319|10.414|0.076|0|0.825|8.253||32|0.576|11.121|0.006|0|11.279|0.006|0|11.849|0.097|0|9.388||32|10.755|0.006|0|10.838|0.006|0|11.239|0.076|0|8.829||32|10.625|0.006|0|10.673|0.006|0|10.9|0.072|0|8.488||32|10.573|0.006|0|10.609|0.006|0|10.694|0.074|0|8.249||32|10.548|0.006|0|10.579|0.007|0|10.564|0.079|0|8.066||32|10.533|0.006|1|10.561|0.007|1|10.468|0.085|1|7.924||32|10.524|0.006|1|10.55|0.007|1|10.379|0.091|1|7.745||32|10.516|0.006|1|10.541|0.008|1|10.293|0.097|1|7.553||32|10.478|0.012|0.003|0.081|21|0|55275.28745078|55277.33835439|55276.28283929|10.53|0.025|0.005|0.0860000029|21|0|55275.28745078|55277.33835439|55276.28283929|10.3|0.171|0.037|0.878000021|20|0|55275.28745078|55277.33835439|55276.26723075|9.049|1.629|0.356|4.91800022|15|0|55275.28745078|55277.33835439|55276.26723075|24|31|-22|1|1|0||||||||||||||||||||||||||713693560|0.182|8.2|1|11.254|0.022|10.695|0.024|10.619|0.023|89401241004093|1|0.0010733528284373|0.0005664789109847|-0.999999263507403|101000000|
+J082331.59-895549.4|125.8816417|-89.9304028|0.1513|0.1517|-0.0338|302.8599619|-27.1009195|269.8972174|-66.617065|2029.918|533.343|1201089401241004258|1201m894_ab41-004258|1201m894_ab41|4258|14.711|0.032|33.7|0.871399999|14.811|0.062|17.6|1.0|12.884|0.454|2.4|1.10300004|9.419|0.499|2.2|0.968500018|0.98119998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AACC|15|0000|21|21|15|21|0|20|0|20|22.714|22.555|21.842|21.71|0.0|0.0|0.0|0.0|0||0||0||0||206.789993|6.1427002|9.37|2.694|0.47|75.0999985|4.27260017|21.775|3.295|0.012|111.239998|46.4830017|1098.366|24.543|3.018|27.073|12.4390001|298.054|9.554|0.868|14.727|0.045|0|0.261|14.899|0.143|0|0.319|12.341||32|0.825|8.548||32|0.576|15.338|0.045|0|15.601|0.147|0|13.527||32|9.549||32|14.988|0.045|0|15.218|0.143|0|13.166||32|9.124||32|14.898|0.053|1|15.151|0.176|1|12.877||32|8.882||32|14.904|0.066|1|15.256|0.24|1|12.644||32|8.661||32|14.932|0.081|1|15.488|0.357|1|12.444||32|10.133||32|14.957|0.098|1|15.063||32|12.264||32|8.233||32|14.995|0.118|1|15.192||32|12.1||32|8.016||32|15.044|0.142|1|15.278||32|11.947||32|7.816||32|14.715|0.095|0.021|0.333|20|0|55275.02271543|55276.94144233|55276.01834588|14.81|0.296|0.065|1.13900006|20|0|55275.02271543|55276.94144233|55276.01834588|12.511|1.775|0.397|2.2579999|11|0|55275.02271543|55276.94144233|55275.98873224|9.258|1.843|0.412|3.78999996|13|0|55275.02271543|55276.94144233|55275.98873224|-16|-47|23|0|1|0||||||||||||||||||||||||||1258763246|0.203|-59.2|1|15.225|0.062|14.74|0.082|14.917|0.172|1201089401241004258|1|-0.0007119508722983|0.00098418530543|-0.999999262252348|111000000|
+J064934.29-895549.1|102.3928995|-89.9303065|0.0795|0.077|0.014|302.85361|-27.1287022|269.9622946|-66.628774|2103.761|525.769|1201089401241004066|1201m894_ab41-004066|1201m894_ab41|4066|12.366|0.022|48.3|1.03400004|12.396|0.022|48.4|1.11899996|11.688|0.136|8.0|1.01900005|9.574||-0.3|0.927100003|1.023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|001n|AABU|7|0000|23|23|23|23|4|22|0|22|22.888|22.636|21.882|21.872|0.0|0.0|0.0|0.0|0||0||0||0||1793.40002|37.1469994|9.354|2.732|0.011|694.549988|14.3599997|21.799|3.369|0.113|334.859985|41.8419991|1097.335|23.015|1.271|-3.68210006|11.7279997|298.057|9.51|0.765|12.355|0.007|0|0.261|12.414|0.017|0|0.319|11.674||32|0.825|8.756||32|0.576|12.986|0.007|0|13.156|0.018|0|12.874||32|9.844||32|12.616|0.007|0|12.733|0.017|0|12.499||32|9.332||32|12.487|0.007|0|12.586|0.019|0|12.306||32|8.698||32|12.434|0.007|1|12.54|0.022|1|12.163||32|8.15||32|12.404|0.007|1|12.527|0.026|1|12.051||32|8.482|0.533|1|12.379|0.008|1|12.524|0.03|1|11.968||32|8.156|0.49|1|12.355|0.008|1|12.525|0.035|1|13.108||32|7.878|0.463|1|12.334|0.009|1|12.53|0.041|1|11.742||32|7.627|0.442|17|12.365|0.029|0.006|0.2|22|0|55275.02271543|55277.20605032|55276.08711043|12.395|0.046|0.01|0.170000002|22|0|55275.02271543|55277.20605032|55276.08711043|11.628|0.712|0.152|2.55900002|19|1|55275.02271543|55277.20605032|55276.06331461|12.852|||4.40299988|10|0|55275.02271543|55277.20605032|55276.06331461|-22|-2|-43|0|0|1||||||||||||||||||||||||||843692537|0.632|-34.1|1|13.052|0.026|12.557|0.029|12.493|0.035|1201089401241004066|1|-0.0002610527455602|0.0011880379691209|-0.99999926020835|111000000|
+J120556.84-895549.0|181.4868416|-89.9303041|1.1899|1.0982|0.2592|302.9164834|-27.0598282|269.8248589|-66.5588028|2044.146|534.45|1802089401241005576|1802m894_ab41-005576|1802m894_ab41|5576|17.512|0.181|6.0|0.863300025|17.186||0.3|0.915099978|13.052||-0.3|0.975000024|9.542||-0.5|0.987399995|0.931400001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|22|0|22|1|21|0|21|22.648|22.113|21.852|21.892|0.0|0.0|0.0|0.0|0||0||0||0||15.6709995|2.60529995|9.409|2.809|0.074|1.11849999|3.65310001|21.825|3.422|0.227|-13.0970001|47.6669998|1096.897|25.172|2.258|-5.82480001|12.0860004|297.866|9.589|0.268|16.77||32|0.261|16.07||32|0.319|12.329||32|0.825|11.24||32|0.576|17.996|0.528|0|16.753||32|13.604||32|10.928||32|17.031||32|16.389||32|13.154||32|11.816||32|17.047||32|16.107||32|12.842||32|9.169||32|17.149||32|15.875||32|12.595||32|8.872||32|16.948||32|15.675||32|12.361||32|8.611||32|16.768||32|15.495||32|12.144||32|8.374||32|16.603||32|15.332||32|11.936||32|8.089||32|15.979||32|15.179||32|11.694||32|7.779||32|17.659|0.819|0.175|3.094|19|0|55274.89041135|55276.94144233|55275.97308416|18.552|8.716|1.858|3.50200009|9|0|55274.89041135|55276.94144233|55275.97308416||||1.69500005|6|0|55274.89041135|55276.94144233|55275.94272538||||3.04699993|11|0|55274.89041135|55276.94144233|55275.94272538|52||48|1||0|||||||||||||||||||||||||||||0|||||||1802089401241005576|1|-0.0012160122350213|-0.0000315629444855|-0.999999260158739|121000000|
+J175549.95-895548.6|268.9581346|-89.9301925|0.3232|0.3454|-0.0576|303.0080437|-27.1113646|269.9968179|-66.4909129|1960.532|512.509|2403089401241004509|2403m894_ab41-004509|2403m894_ab41|4509|16.12|0.059|18.4|0.842700005|16.087|0.161|6.7|0.935199976|12.537|0.346|3.1|1.11500001|9.457||-1.1|0.91079998|0.947399974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|17|21|3|21|2|20|0|20|22.662|23.083|22.122|22.127|0.0|0.0|0.0|0.0|0||0||0||0||56.4799995|3.07660007|9.394|2.644|0.0|23.1860008|3.43959999|21.763|3.345|0.054|153.190002|48.8300018|1096.573|25.004|0.569|-14.5950003|13.0620003|298.882|9.989|0.282|16.016|0.104|0|0.261|16.01|0.298|0|0.319|11.737||32|0.825|11.475||32|0.576|16.633|0.106|0|16.683|0.3|0|12.928||32|9.995||32|16.277|0.104|0|16.329|0.298|0|12.562||32|12.051||32|16.163|0.121|1|16.315|0.378|1|12.302||32|9.189||32|16.046|0.135|1|16.293|0.462|1|12.064||32|8.854||32|15.783|0.128|1|16.04|0.441|1|11.821||32|8.501||32|15.442|0.111|1|15.705|0.386|1|11.607||32|8.164||32|15.164|0.101|1|15.42|0.345|1|11.492||32|7.865||32|14.934|0.094|1|15.185|0.321|1|11.471||32|7.598||32|16.127|0.326|0.071|1.462|20|1|55275.28745078|55277.20605032|55276.21681103|16.064|1.036|0.226|2.18199992|15|0|55275.28745078|55277.20605032|55276.21681103|12.193|1.283|0.287|5.22200012|14|0|55275.28745078|55277.20605032|55276.19712065||||3.47900009|8|0|55275.28745078|55277.20605032|55276.19712065|4|-49|-23|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241004509|1|-0.0000221536157235|-0.0012181695706581|-0.999999257785782|121000000|
+J004747.53-895548.4|11.9480826|-89.9301378|0.1482|0.145|0.0334|302.9331655|-27.1980098|270.1719263|-66.5750781|2010.128|530.974|89401241004369|0000m894_ab41-004369|0000m894_ab41|4369|14.838|0.032|33.4|1.62|14.531|0.05|21.9|1.11300004|10.975|0.077|14.1|1.17299998|9.11||1.2|0.974300027|1.22099996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|001n|AAAU|7|0000|22|22|22|22|11|21|0|21|22.194|22.367|20.957|21.455|0.0|0.0|0.0|0.0|0||0||0||0||184.059998|5.50699997|9.343|2.676|0.309|97.1880035|4.43489981|21.795|3.303|0.066|645.440002|45.7150002|1098.221|23.083|1.211|13.1420002|11.4189997|298.799|9.371|0.799|14.478|0.021|1|0.261|14.299|0.087|1|0.319|11.265|0.222|1|0.825|8.828||32|0.576|15.262|0.025|0|15.152|0.102|0|12.704|0.281|0|9.9||32|14.739|0.021|1|14.618|0.087|1|12.09|0.222|1|9.404||32|14.468|0.021|1|14.372|0.089|1|11.779|0.215|1|8.854||32|14.292|0.021|1|14.251|0.098|1|11.638|0.233|1|8.429||32|14.143|0.023|1|14.172|0.11|1|11.612|0.275|1|8.202||32|14.009|0.023|1|14.11|0.123|1|11.664|0.34|1|8.127||32|13.891|0.024|1|14.058|0.136|1|11.751|0.428|1|8.109||32|13.771|0.025|1|14.0|0.148|1|11.852|0.539|1|7.993||32|14.838|0.088|0.019|0.379|21|0|55275.28745078|55277.33835439|55276.28283929|14.56|0.192|0.041|0.809000015|21|0|55275.28745078|55277.33835439|55276.28283929|10.956|0.294|0.064|1.39900005|20|0|55275.28745078|55277.33835439|55276.26723075|10.367|4.394|0.959|3.24699998|11|0|55275.28745078|55277.33835439|55276.26723075|13|-22|42|0|0|1|||||||||||||||||||||||||||||0|||||||89401241004369|1|0.0011929098142531|0.0002524312576252|-0.999999256622041|101000000|
+J160141.50-895547.3|240.4229315|-89.9298304|1.0836|1.1908|0.2848|302.9900797|-27.0807959|269.9131413|-66.4996588|2047.818|535.74|2403089401241005504|2403m894_ab41-005504|2403m894_ab41|5504|17.616|0.184|5.9|0.987500012|17.3||0.4|0.929899991|13.071||0.0|0.990499973|9.394||-1.5|1.01499999|0.977400005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|23|0|23|0|22|1|22|23.736|23.687|22.68|22.641|0.0|0.0|0.0|0.0|0||0||0||0||14.2469997|2.41639996|9.412|2.625|0.207|1.3549|3.11380005|21.788|3.319|0.256|-1.61819994|46.8269997|1096.883|25.154|4.096|-20.5200005|13.8500004|298.453|10.078|1.504|17.216|0.367|1|0.261|16.259||32|0.319|12.276||32|0.825|8.426||32|0.576|18.016|0.43|1|17.052||32|13.468||32|9.681||32|17.477|0.367|1|16.578||32|13.101||32|9.002||32|16.914|0.284|1|16.126||32|12.818||32|9.26|0.537|1|16.374|0.214|1|16.354|0.431|1|12.584||32|8.786|0.443|1|15.802|0.153|1|15.769|0.303|1|12.381||32|8.464|0.406|1|15.191|0.103|1|15.144|0.202|1|12.2||32|8.178|0.378|1|14.64|0.072|1|14.598|0.142|1|12.036||32|7.897|0.347|1|14.208|0.056|1|14.179|0.112|1|11.883||32|7.654|0.326|1|17.77|1.105|0.231|3.855|18|0|55275.02271543|55276.94144233|55276.08997277|19.192|||2.27900004|11|0|55275.02271543|55276.94144233|55276.08997277|13.702|3.745|0.798|4.20300007|12|0|55275.02271543|55276.94144233|55276.06630705||||3.17799997|7|0|55275.02271543|55276.94144233|55276.06630705|14|35|6|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005504|1|-0.0006044994845395|-0.0010651038729219|-0.999999250066775|121000000|
+J103246.56-895547.1|158.194038|-89.9297672|0.5656|0.5112|-0.0132|302.8870541|-27.0703837|269.8358984|-66.5867122|2117.129|522.408|1802089401241004637|1802m894_ab41-004637|1802m894_ab41|4637|16.6|0.093|11.7|0.865100026|16.276|0.214|5.1|0.907400012|12.961||-0.6|1.01999998|9.364||-0.7|0.924000025|0.924600005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|8|21|1|21|0|20|0|20|20.746|20.769|19.845|19.776|0.0|0.0|0.0|0.0|0||0||0||0||36.3069992|3.0948|9.333|2.848|0.0|19.4780006|3.8354001|21.799|3.462|0.0|-29.9459991|51.8089981|1096.457|25.299|1.938|-9.92949963|14.2309999|298.262|9.99|0.187|16.162|0.137|0|0.261|15.758|0.304|0|0.319|11.552||32|0.825|8.185||32|0.576|16.842|0.144|0|16.604|0.354|0|12.741||32|9.347||32|16.423|0.137|0|16.077|0.304|0|12.377||32|8.761||32|16.288|0.156|0|15.84|0.316|0|12.095||32|8.315||32|16.177|0.175|0|15.691|0.341|0|11.861||32|7.978||32|15.915|0.165|1|15.497|0.343|1|11.661||32|7.684||32|15.427|0.124|1|15.139|0.291|1|11.482||32|7.436||32|14.724|0.076|1|14.572|0.201|1|11.318||32|7.224||32|14.003|0.045|1|13.956|0.131|1|11.166||32|7.021||32|16.58|0.335|0.073|1.847|20|0|55274.89041135|55276.94144233|55275.96793221|16.501|1.11|0.242|4.50199986|16|2|55274.89041135|55276.94144233|55275.96793221|14.483|5.684|1.271|2.57399988|9|0|55274.89041135|55276.94144233|55275.93579789||||2.49499989|8|0|55274.89041135|55276.94144233|55275.93579789|32|27|74|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004637|1|-0.0011380843759729|0.0004553386509419|-0.999999248715051|111000000|
+J123419.96-895546.5|188.5831697|-89.929595|0.6923|0.645|0.1832|302.926021|-27.0579473|269.8250607|-66.5501038|2021.369|534.413|1802089401241005048|1802m894_ab41-005048|1802m894_ab41|5048|16.933|0.11|9.9|1.06400001|16.76||1.8|0.971700013|13.033||0.2|1.31799996|9.444||-1.7|0.935400009|1.06700003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BUUU|1|0000|4|23|1|23|1|22|0|22|23.419|23.202|22.383|22.807|0.0|0.0|0.0|0.0|0||0||0||0||26.7280006|2.704|9.415|2.672|0.018|5.85550022|3.30850005|21.822|3.289|0.172|7.60769987|44.6879997|1095.618|25.155|2.456|-22.4160004|13.2200003|298.551|10.097|0.24|16.807|0.257|1|0.261|16.264||32|0.319|12.183|0.302|1|0.825|8.62||32|0.576|17.447|0.263|1|16.801||32|13.95|0.517|1|9.636||32|17.068|0.257|1|16.583||32|13.008|0.302|1|9.196||32|16.831|0.268|1|16.302||32|12.367|0.215|1|8.85||32|16.61|0.272|1|16.066||32|11.932|0.177|1|8.555||32|16.38|0.265|1|15.863||32|11.641|0.161|1|8.294||32|16.13|0.249|1|15.683||32|11.398|0.15|1|7.981||32|15.927|0.24|1|15.519||32|11.16|0.138|1|7.738||32|15.831|0.253|1|15.365||32|10.929|0.127|1|7.534||32|16.968|0.524|0.109|3.658|22|1|55274.89041135|55276.94144233|55275.95765212|18.093|4.854|1.012|3.32999992|10|1|55274.89041135|55276.94144233|55275.95765212|13.603|5.057|1.078|3.43400002|11|0|55274.89041135|55276.94144233|55275.92797183||||4.03999996|8|0|55274.89041135|55276.94144233|55275.92797183|33|61|48|0|0|1|||||||||||||||||||||||||||||0|||||||1802089401241005048|1|-0.0012150363366589|-0.0001833919114947|-0.999999245026769|121000000|
+J055554.24-895546.1|88.9760172|-89.9294888|0.4454|0.5002|-0.0672|302.8549919|-27.1450545|270.0031769|-66.6312088|1958.83|513.677|600089401241004673|0600m894_ab41-004673|0600m894_ab41|4673|16.561|0.083|13.1|0.815699995|16.977|0.406|2.7|0.97240001|11.963|0.184|5.9|1.01400006|9.267||0.6|1.03900003|0.955299973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACBU|7|0000|8|21|1|21|1|20|0|20|21.646|22.417|20.929|20.501|0.0|0.0|0.0|0.0|0||0||0||0||37.6310005|2.87599993|9.354|2.839|0.029|10.217|3.82010007|21.812|3.523|0.032|259.859985|44.0709991|1097.777|23.149|1.295|7.04400015|12.0380001|298.432|9.471|1.343|16.024|0.088|1|0.261|15.748|0.215|1|0.319|12.103|0.371|1|0.825|8.288||32|0.576|16.795|0.101|0|16.689|0.272|0|13.664|0.525|0|9.536||32|16.285|0.088|1|16.067|0.215|1|12.928|0.371|1|8.864||32|15.965|0.085|1|15.603|0.182|1|12.452|0.311|1|9.104|0.504|17|15.606|0.076|1|15.132|0.147|1|12.142|0.291|1|8.638|0.425|17|15.154|0.06|1|14.656|0.114|1|11.89|0.277|1|8.252|0.374|17|14.73|0.048|1|14.262|0.094|1|11.625|0.256|1|8.012|0.369|17|14.415|0.042|1|13.98|0.084|1|11.374|0.236|1|7.846|0.383|17|14.203|0.04|1|13.788|0.081|1|11.174|0.226|1|7.712|0.404|17|16.581|0.365|0.08|1.555|20|0|55275.28745078|55277.20605032|55276.18847532|16.805|1.203|0.262|3.11299992|12|0|55275.28745078|55277.20605032|55276.18847532|11.823|0.71|0.159|5.33799982|17|0|55275.28745078|55277.20605032|55276.16736816|10.556|5.675|1.269|3.87299991|10|0|55275.28745078|55277.20605032|55276.16736816|10|67|-13|0|2|0|||||||||||||||||||||||||||||0|||||||600089401241004673|1|0.0000219928953479|0.0012304560936052|-0.99999924274677|101000000|
+J105708.57-895545.5|164.285731|-89.9293219|0.5859|0.5335|0.0541|302.893954|-27.0660816|269.8288268|-66.5797581|2098.977|529.902|1802089401241004726|1802m894_ab41-004726|1802m894_ab41|4726|16.644|0.091|11.9|0.868900001|16.971||0.8|1.04200006|12.562||1.1|1.08099997|9.446||-0.2|0.869499981|0.961099982|1|0|0.0|0.0|0.0|0.003|0000|0000|0|0nnn|AUUU|1|0000|7|21|1|21|1|20|0|20|20.908|20.607|19.961|19.811|0.0|0.0|0.0|0.0|0||0||0||0||34.8810005|2.9210999|9.363|2.846|0.635|2.83060002|3.7183001|21.83|3.475|0.0|53.9510002|47.8520012|1095.727|25.047|2.853|-2.45429993|13.1999998|297.934|9.977|1.246|16.314|0.103|0|0.261|16.261||32|0.319|12.502|0.436|0|0.825|8.567||32|0.576|16.959|0.106|0|16.78||32|13.218||32|9.698||32|16.575|0.103|0|16.58||32|13.327|0.436|0|9.143||32|16.36|0.108|1|16.445||32|12.855|0.362|1|8.62||32|16.158|0.11|1|16.217||32|12.443|0.305|1|8.293||32|15.919|0.107|1|15.947||32|12.008|0.247|1|8.066||32|15.636|0.097|1|15.613||32|11.591|0.198|1|7.837||32|15.335|0.086|1|15.281||32|11.225|0.164|1|7.671||32|15.04|0.075|1|14.951||32|10.902|0.139|1|7.546||32|16.637|0.308|0.067|1.127|20|0|55274.89041135|55276.94144233|55275.96793221|17.058|2.537|0.554|3.73699999|12|0|55274.89041135|55276.94144233|55275.96793221|13.587|4.177|0.934|3.875|13|0|55274.89041135|55276.94144233|55275.93579789|11.145|7.817|1.748|1.98399997|7|0|55274.89041135|55276.94144233|55275.93579789|1|7|19|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004726|1|-0.0011874604935854|0.0003340992045151|-0.999999239157359|111000000|
+J021514.72-895544.7|33.8113694|-89.9290842|0.3422|0.3484|0.1033|302.9034063|-27.1943804|270.1483638|-66.6001007|2130.213|518.509|600089401241004413|0600m894_ab41-004413|0600m894_ab41|4413|16.209|0.064|17.1|0.844299972|16.167|0.171|6.3|0.983699977|11.945|0.179|6.1|1.00300002|9.124|0.362|3.0|0.799300015|0.905200005|1|0|0.0|0.0|0.0|0.0|0000|h000|0|1nnn|ABBC|15|0000|16|22|2|22|2|21|1|21|23.688|23.547|22.932|22.691|0.0|0.0|0.0|0.0|8|h|0||0||0||52.0369987|3.04699993|9.373|2.738|0.168|21.5440006|3.40009999|21.747|3.288|0.069|264.26001|43.4850006|1099.745|23.39|2.461|35.5219994|11.8430004|298.628|9.512|1.222|15.441|0.05|1|0.261|15.457|0.172|1|0.319|12.439|0.533|1|0.825|9.155||32|0.576|16.313|0.063|1|16.427|0.224|1|13.054||32|9.553||32|15.702|0.05|1|15.776|0.172|1|13.264|0.533|1|9.731||32|15.24|0.043|1|15.277|0.142|1|12.707|0.417|1|10.483||32|14.79|0.036|1|14.786|0.112|1|12.215|0.329|1|8.509||32|14.276|0.027|1|14.208|0.079|1|11.797|0.269|1|8.157||32|13.591|0.018|1|13.458|0.047|1|11.417|0.224|1|7.87||32|12.714|0.011|1|12.592|0.025|1|11.065|0.189|1|7.627||32|11.818|0.007|1|11.792|0.015|1|10.745|0.162|1|7.41||32|16.21|0.245|0.052|1.031|21|0|55275.28745078|55277.33835439|55276.28283929|16.113|1.008|0.215|3.06900001|17|1|55275.28745078|55277.33835439|55276.28283929|11.826|0.857|0.187|3.9849999|15|0|55275.28745078|55277.33835439|55276.26723075|8.902|1.515|0.331|4.64099979|12|0|55275.28745078|55277.33835439|55276.26723075|-61|-56|44|2|1|1|||||||||||||||||||||||||||||0|||||||600089401241004413|1|0.0010283838569535|0.0006887385451424|-0.999999234032636|101000000|
+J035827.87-895544.4|59.6161445|-89.9290097|0.1727|0.1821|0.0446|302.8737857|-27.1767797|270.0904902|-66.6219231|2049.548|537.888|600089401241004190|0600m894_ab41-004190|0600m894_ab41|4190|15.228|0.037|29.5|1.04299998|14.82|0.06|18.2|0.934400022|12.159|0.208|5.2|1.06099999|8.965||1.2|1.09899998|1.03100002|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|AABU|7|0000|23|23|20|23|1|22|0|22|23.113|23.684|22.001|22.355|0.0|0.0|0.0|0.0|129|D|129|D|0||0||128.429993|4.35099983|9.307|2.788|0.116|74.4530029|4.0941|21.761|3.312|0.065|216.940002|41.6230011|1099.128|23.268|2.278|15.6289997|12.7410002|298.969|9.977|1.535|14.972|0.05|1|0.261|14.587|0.075|1|0.319|12.258|0.331|1|0.825|8.414||32|0.576|15.726|0.057|1|15.466|0.09|1|13.834|0.473|1|9.432||32|15.233|0.05|1|14.906|0.075|1|13.083|0.331|1|8.99||32|14.906|0.048|1|14.542|0.069|1|12.655|0.288|1|8.67||32|14.58|0.044|1|14.202|0.063|1|12.344|0.267|1|8.335||32|14.134|0.035|1|13.805|0.053|1|11.992|0.232|1|8.046||32|13.593|0.026|1|13.375|0.042|1|11.615|0.192|1|7.827||32|13.158|0.02|1|13.02|0.036|1|11.268|0.161|1|7.654||32|12.913|0.019|1|12.797|0.033|1|10.968|0.14|1|7.504||32|15.219|0.12|0.025|0.456|22|0|55275.28745078|55277.20605032|55276.24819836|14.805|0.161|0.034|0.774999976|22|0|55275.28745078|55277.20605032|55276.24819836|11.955|0.962|0.205|3.35800004|16|0|55275.28745078|55277.20605032|55276.23172471|9.62|1.88|0.401|3.48099995|15|0|55275.28745078|55277.20605032|55276.23172471|0|-7|-14|0|0|0||||||||||||||||||||||||||922153135|1.105|-2.3|1|16.538|0.184|15.529|0.164|15.127|0.2|600089401241004190|1|0.0006266816447161|0.0010688429236853|-0.999999232422166|101000000|
+J192620.27-895543.8|291.5844875|-89.9288377|0.0942|0.0915|-0.0124|303.0109571|-27.138929|270.0656376|-66.494523|2076.75|536.111|3004089401241004012|3004m894_ab41-004012|3004m894_ab41|4012|13.268|0.024|45.5|1.27600002|13.297|0.029|37.9|1.03799999|13.037|0.494|2.2|1.12600005|9.596||-0.8|1.06200004|1.12300003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AACU|7|0000|23|23|23|23|0|22|0|22|23.703|23.398|22.911|22.808|0.0|0.0|0.0|0.0|0||0||0||0||781.210022|17.1800003|9.347|2.747|0.204|302.779999|7.9987998|21.822|3.355|0.11|96.6419983|43.9570007|1097.268|24.618|7.292|-9.63129997|11.4960003|298.786|9.599|0.549|13.25|0.009|0|0.261|13.29|0.027|0|0.319|12.119||32|0.825|8.868||32|0.576|13.886|0.01|0|14.059|0.03|0|13.343||32|9.946||32|13.511|0.009|0|13.609|0.027|0|12.944||32|9.444||32|13.368|0.009|1|13.422|0.029|1|12.705||32|10.209||32|13.29|0.01|1|13.329|0.033|1|16.376||32|8.994||32|13.225|0.011|1|13.261|0.037|1|12.386||32|8.759||32|13.158|0.011|1|13.203|0.042|1|12.207||32|8.546||32|13.098|0.012|1|13.156|0.046|1|12.043||32|8.352||32|13.049|0.013|1|13.114|0.051|1|11.889||32|8.172||32|13.269|0.05|0.01|0.167|22|0|55275.28745078|55277.20605032|55276.21941447|13.295|0.099|0.021|0.42899999|22|0|55275.28745078|55277.20605032|55276.21941447|12.519|1.339|0.286|3.13700008|13|0|55275.28745078|55277.20605032|55276.20163246||||2.47300005|7|0|55275.28745078|55277.20605032|55276.20163246|-22|13|-6|0|0|0||||||||||||||||||||||||||1126848742|0.624|59.3|1|13.826|0.028|13.441|0.039|13.254|0.042|3004089401241004012|1|0.0004569042762378|-0.001154921937047|-0.999999228696603|131000000|
+J150517.63-895543.8|226.3234678|-89.9288353|0.6265|0.6433|0.1757|302.9759844|-27.0687816|269.8767057|-66.5091905|2227.229|402.963|3004089401241005140|3004m894_ab41-005140|3004m894_ab41|5140|16.911|0.103|10.6|0.876900017|16.861||1.5|0.994599998|12.532||1.3|0.984799981|9.313||0.3|0.984899998|0.956499994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|AUUU|1|0000|4|23|0|23|1|22|1|22|22.677|22.141|21.903|21.833|0.0|0.0|0.0|0.0|0||0||0||0||27.2700005|2.57690001|9.406|2.636|0.067|4.79879999|3.28200006|21.799|3.25|0.0|60.0579987|46.8889999|1096.646|25.37|3.314|4.15719986|12.8409996|298.243|10.104|1.106|16.041|0.121|1|0.261|15.545||32|0.319|11.934||32|0.825|8.587||32|0.576|16.999|0.167|1|16.391||32|13.32||32|9.68||32|16.302|0.121|1|15.864||32|12.759||32|9.163||32|15.802|0.099|1|15.481||32|12.98|0.481|1|8.751||32|15.451|0.089|1|15.939|0.533|1|12.428|0.36|1|8.442||32|15.197|0.084|1|15.7|0.514|1|11.982|0.287|1|8.221||32|14.945|0.079|1|15.483|0.497|1|11.599|0.238|1|8.025||32|14.681|0.072|1|15.264|0.471|1|11.253|0.201|1|7.82||32|14.451|0.067|1|15.085|0.46|1|10.974|0.179|1|7.606||32|16.948|0.521|0.109|1.865|22|0|55275.02271543|55276.94144233|55276.02956479|18.596|7.666|1.598|3.99300003|11|1|55275.02271543|55276.94144233|55276.02956479|12.899|2.176|0.464|3.27200007|10|0|55275.02271543|55276.94144233|55276.00315326||||5.08799982|11|0|55275.02271543|55276.94144233|55276.00315326|31|10|-52|0|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005140|1|-0.0008577477898329|-0.0008983181459071|-0.999999228646321|121000000|
+J011110.92-895543.6|17.7955206|-89.9287806|0.6789|0.6565|0.1928|302.9250263|-27.1991114|270.1706258|-66.5823824|1991.007|529.568|89401241005233|0000m894_ab41-005233|0000m894_ab41|5233|17.06|0.124|8.8|0.989499986|16.654|0.278|3.9|0.995999992|12.545|0.319|3.4|1.01499999|9.101|0.361|3.0|0.940199971|0.982800007|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBC|15|0000|3|22|0|22|2|21|0|21|22.277|22.524|21.022|21.389|0.0|0.0|0.0|0.0|0||0||0||0||23.7749996|2.71550012|9.351|2.709|0.174|13.7550001|3.5229001|21.789|3.365|0.103|152.009995|44.6710014|1099.906|23.755|0.214|36.2779999|12.0489998|298.475|9.514|1.237|17.108|0.542|1|0.261|16.148|0.406|1|0.319|12.099||32|0.825|8.334||32|0.576|17.678|0.507|1|17.02|0.477|1|13.303||32|9.39||32|17.369|0.542|1|16.467|0.406|1|12.924||32|8.91||32|16.372||32|16.037|0.354|1|12.643||32|8.486||32|16.748|0.492|1|15.565|0.285|1|12.957||32|8.118||32|16.108|0.328|1|15.093|0.222|1|12.054||32|8.584|0.532|1|15.459|0.213|1|14.668|0.177|1|11.775||32|7.631||32|14.926|0.151|1|14.294|0.146|1|11.487||32|7.473||32|14.497|0.118|1|13.971|0.125|1|11.207||32|7.314||32|17.057|0.788|0.168|3.098|19|1|55275.28745078|55277.33835439|55276.28283929|16.635|1.129|0.241|3.0480001|16|0|55275.28745078|55277.33835439|55276.28283929|12.249|1.257|0.274|4.14400005|15|0|55275.28745078|55277.33835439|55276.26723075|9.215|1.589|0.347|4.10099983|13|0|55275.28745078|55277.33835439|55276.26723075|5|-3|0|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005233|1|0.0011835378827525|0.0003798903778715|-0.999999227460392|101000000|
+J230239.69-895542.9|345.6653966|-89.9285912|1.1692|1.039|-0.1823|302.9686051|-27.1916672|270.1738064|-66.5429329|2094.284|533.165|89401241005571|0000m894_ab41-005571|0000m894_ab41|5571|17.662|0.187|5.8|0.879000008|16.9||1.4|0.944000006|12.907|0.422|2.6|0.894699991|9.599||-0.3|0.941699982|0.912199974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|2|25|0|25|2|24|0|24|25.156|26.169|24.725|24.778|0.0|0.0|0.0|0.0|0||0||0||0||13.658|2.35800004|9.36|2.697|0.262|4.52710009|3.22090006|21.812|3.354|0.254|108.949997|42.348999|1099.174|24.133|3.063|-3.65700006|11.4700003|299.17|9.654|1.534|16.976|0.373|1|0.261|16.252|0.421|1|0.319|12.278||32|0.825|9.039||32|0.576|17.85|0.471|1|16.5||32|13.464||32|10.043||32|17.237|0.373|1|16.571|0.421|1|13.103||32|9.615||32|16.65|0.283|1|15.981|0.318|1|12.819||32|9.278||32|15.943|0.184|1|15.336|0.218|1|12.584||32|8.99||32|15.208|0.112|1|14.693|0.146|1|12.384||32|8.736||32|14.597|0.076|1|14.153|0.105|1|12.203||32|8.506||32|14.193|0.061|1|13.763|0.085|1|12.04||32|8.295||32|13.977|0.057|1|13.515|0.078|1|11.887||32|8.101||32|17.796|0.93|0.186|4.024|21|0|55275.28745078|55277.33835439|55276.25865158|17.763|4.556|0.911|3.26900005|12|0|55275.28745078|55277.33835439|55276.25865158|12.62|1.879|0.383|5.04099989|14|0|55275.28745078|55277.33835439|55276.24398629||||4.41099977|11|0|55275.28745078|55277.33835439|55276.24398629|57|29|-31|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005571|1|0.0012075164874178|-0.0003085688676548|-0.999999223344292|131000000|
+J235259.89-895542.6|358.2495793|-89.9285195|0.7888|0.7266|0.1248|302.9521873|-27.1973241|270.1795996|-66.5584227|2053.712|539.085|89401241005354|0000m894_ab41-005354|0000m894_ab41|5354|17.373|0.15|7.2|0.917200029|16.768|0.298|3.6|0.995500028|12.78||0.9|0.936600029|8.665|0.235|4.6|1.06500006|0.975099981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUB|11|0000|1|23|1|23|0|22|0|22|24.901|25.564|24.184|24.273|0.0|0.0|0.0|0.0|0||0||0||0||17.8180008|2.46650004|9.395|2.74|0.0|12.3809996|3.3993001|21.784|3.33|0.052|38.3919983|42.0209999|1099.84|23.952|4.215|54.1819992|11.7320004|297.99|9.316|1.582|16.834|0.279|0|0.261|15.651||32|0.319|12.234||32|0.825|8.385||32|0.576|17.6|0.319|0|16.341||32|13.666||32|9.401||32|17.095|0.279|0|15.97||32|13.059||32|8.961||32|16.702|0.252|0|15.719||32|13.223|0.461|0|8.745||32|16.306|0.218|1|15.468||32|12.611|0.324|1|8.581||32|15.798|0.164|1|15.165||32|12.112|0.244|1|8.381||32|15.176|0.11|1|14.806||32|11.718|0.198|1|8.153||32|14.614|0.076|1|15.097|0.447|1|11.382|0.167|1|7.903||32|14.178|0.059|1|14.656|0.343|1|11.092|0.145|1|7.716||32|17.391|0.922|0.192|2.732|19|1|55275.28745078|55277.33835439|55276.27407563|16.887|1.715|0.358|3.25600004|17|0|55275.28745078|55277.33835439|55276.27407563|13.638|3.271|0.697|3.42000008|13|0|55275.28745078|55277.33835439|55276.25877822|8.59|0.741|0.158|4.33300018|19|0|55275.28745078|55277.33835439|55276.25877822|-1|24|25|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005354|1|0.0012469869620671|-0.0000381080631158|-0.999999221785343|131000000|
+J213355.68-895541.8|323.4820239|-89.928278|0.1893|0.1832|-0.0819|302.9931088|-27.1748394|270.1446585|-66.5179622|1861.565|374.55|2403089401241004026|2403m894_ab41-004026|2403m894_ab41|4026|14.975|0.038|28.6|0.971599996|14.77|0.06|18.0|1.01900005|12.529|0.305|3.6|1.04100001|9.347||-0.5|0.963199973|0.997799993|2|1|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|AABU|7|0000|25|25|17|25|1|24|0|24|24.705|24.716|23.937|23.775|0.0|0.0|0.0|0.0|0||0||0||0||162.190002|5.66169977|9.344|2.709|0.051|77.9520035|4.31990004|21.734|3.181|0.198|154.300003|43.3759995|1096.78|24.02|2.737|-7.27939987|14.4650002|298.82|9.764|1.007|14.091|0.027|1|0.261|13.85|0.036|1|0.319|11.866||32|0.825|8.815||32|0.576|15.041|0.036|1|14.89|0.051|1|13.002||32|9.945||32|14.352|0.027|1|14.169|0.036|1|12.691||32|9.391||32|13.93|0.023|1|13.73|0.031|1|12.5||32|9.15||32|13.657|0.023|1|13.445|0.03|1|12.262||32|8.977||32|13.433|0.022|1|13.227|0.029|1|12.061||32|8.724||32|13.236|0.022|1|13.049|0.029|1|11.876||32|8.497||32|13.108|0.022|1|12.929|0.03|1|11.713||32|8.289||32|13.054|0.024|1|12.861|0.032|1|11.562||32|8.096||32|14.973|0.106|0.021|0.408|24|0|55275.28745078|55277.33835439|55276.25865158|14.78|0.289|0.058|1.10300004|24|0|55275.28745078|55277.33835439|55276.25865158|12.539|1.334|0.272|5.58199978|16|0|55275.28745078|55277.33835439|55276.24398629||||3.08100009|10|0|55275.28745078|55277.33835439|55276.24398629|-2|0|49|0|0|1||||||||||||||||||||||||||996551506|0.457|152.9|1|16.81|0.191|15.938|0.199|15.177|0.178|2403089401241004026|1|0.0010060218081358|-0.0007449055450318|-0.999999216517618|131000000|
+J050325.37-895541.6|75.8557366|-89.9282448|0.5086|0.5674|0.1135|302.8600603|-27.1607185|270.0442048|-66.6302826|1996.965|532.832|600089401241004764|0600m894_ab41-004764|0600m894_ab41|4764|16.965|0.113|9.6|0.787999988|15.804|0.134|8.1|0.863600016|12.046|0.199|5.4|1.15100002|9.455||-0.5|1.04400003|0.954900026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|2|21|2|21|0|20|1|20|22.799|22.755|21.533|21.574|0.0|0.0|0.0|0.0|0||0||0||0||25.9360008|2.70029998|9.399|2.79|0.127|30.0930004|3.70889997|21.775|3.417|0.11|240.679993|44.1739998|1097.519|23.262|1.523|-5.89669991|13.0860004|298.768|9.549|0.735|16.309||32|0.261|15.129|0.099|0|0.319|11.734||32|0.825|8.693||32|0.576|16.821||32|16.045|0.124|0|13.045||32|9.708||32|16.57||32|15.448|0.099|0|12.559||32|9.269||32|16.553||32|15.103|0.093|0|12.219||32|8.923||32|16.612||32|14.82|0.089|0|11.958||32|8.63||32|16.508||32|14.532|0.083|0|11.73||32|8.367||32|16.257||32|14.22|0.073|1|11.514||32|8.132||32|15.629||32|13.886|0.063|1|11.309||32|7.915||32|15.332|0.291|1|13.532|0.052|1|11.149||32|7.716||32|17.015|0.252|0.055|1.114|20|0|55275.28745078|55277.20605032|55276.18847532|15.849|0.622|0.136|1.95000005|18|0|55275.28745078|55277.20605032|55276.18847532|11.968|0.932|0.208|2.0309999|14|0|55275.28745078|55277.20605032|55276.16736816||||3.273|7|0|55275.28745078|55277.20605032|55276.16736816|-26|0|0|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241004764|1|0.0003060331730174|0.0012143976809601|-0.999999215790677|101000000|
+J220118.09-895541.3|330.325391|-89.9281405|0.613|0.5633|-0.1696|302.9865259|-27.1810973|270.1567355|-66.5250548|2141.139|515.492|89401241005162|0000m894_ab41-005162|0000m894_ab41|5162|16.994|0.106|10.3|0.901199996|16.43|0.204|5.3|0.949000001|12.824|0.396|2.7|1.05400002|9.285||0.7|0.883400023|0.944000006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|ABCU|7|0000|3|25|1|25|2|24|0|24|24.827|24.571|23.9|23.795|0.0|0.0|0.0|0.0|0||0||0||0||25.2560005|2.45600009|9.319|2.748|0.019|16.9020004|3.16820002|21.783|3.269|0.134|117.559998|42.9300003|1098.164|24.572|2.738|7.84180021|11.3920002|298.774|9.691|1.207|16.534|0.202|1|0.261|16.048|0.366|1|0.319|12.445||32|0.825|8.532||32|0.576|17.222|0.215|0|16.897|0.425|0|13.553||32|9.649||32|16.795|0.202|1|16.367|0.366|1|13.27||32|9.108||32|16.585|0.216|1|16.119|0.379|1|13.052||32|8.62||32|16.377|0.221|1|16.021|0.43|1|12.817||32|8.243||32|16.106|0.207|1|15.963|0.49|1|16.63||32|7.915||32|15.837|0.191|1|15.895|0.542|1|12.27||32|7.679||32|15.623|0.182|1|15.026||32|11.91||32|7.498||32|15.381|0.168|1|14.863||32|11.592||32|7.349||32|16.998|0.548|0.11|2.078|23|0|55275.28745078|55277.33835439|55276.25865158|16.356|1.1|0.22|2.6559999|18|0|55275.28745078|55277.33835439|55276.25865158|12.409|1.602|0.327|4.53200006|16|1|55275.28745078|55277.33835439|55276.24398629|10.197|3.657|0.746|3.94899988|10|0|55275.28745078|55277.33835439|55276.24398629|1|5|22|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005162|1|0.0010896998619496|-0.000620913970551|-0.999999213509717|131000000|
+J153345.74-895540.4|233.4406056|-89.9279023|0.2391|0.2518|0.055|302.984589|-27.0733894|269.8922877|-66.5027601|2070.762|539.41|2403089401241004332|2403m894_ab41-004332|2403m894_ab41|4332|15.654|0.046|23.7|0.7579|15.574|0.106|10.3|0.890399992|12.736||0.8|0.939400017|9.45||-0.7|0.914399981|0.871299982|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|22|23|6|23|0|22|0|22|23.316|23.404|22.629|22.595|0.0|0.0|0.0|0.0|0||0||0||0||86.814003|3.67059994|9.436|2.646|0.0|37.2029991|3.62649989|21.811|3.322|0.0|36.7039986|45.4379997|1095.637|24.982|0.0|-9.80749989|13.1479998|298.32|9.966|0.742|15.623|0.126|1|0.261|15.34|0.143|1|0.319|12.496||32|0.825|8.504||32|0.576|16.269|0.129|1|16.164|0.163|1|14.373||32|9.515||32|15.884|0.126|1|15.659|0.143|1|13.321||32|9.08||32|15.692|0.137|1|15.348|0.139|1|12.841||32|8.734||32|15.498|0.142|1|15.058|0.132|1|12.438||32|8.44||32|15.258|0.137|1|14.781|0.123|1|12.112||32|8.178||32|15.015|0.13|1|14.543|0.117|1|11.877||32|7.942||32|14.801|0.124|1|14.354|0.115|1|11.714||32|7.726||32|14.626|0.121|1|14.205|0.115|1|11.558||32|7.526||32|15.666|0.148|0.031|0.881|22|0|55275.02271543|55276.94144233|55276.02956479|15.567|0.506|0.106|2.68700004|22|0|55275.02271543|55276.94144233|55276.02956479|13.284|3.156|0.673|2.85899997|11|0|55275.02271543|55276.94144233|55276.00315326||||2.10500002|7|0|55275.02271543|55276.94144233|55276.00315326|48|-32|46|2|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004332|1|-0.0007495382729647|-0.0010107498652872|-0.99999920828823|121000000|
+J171441.89-895540.3|258.674573|-89.9278796|0.1844|0.1978|0.005|303.0058191|-27.0985906|269.9644955|-66.4899888|1988.684|531.292|2403089401241004230|2403m894_ab41-004230|2403m894_ab41|4230|15.285|0.038|28.5|0.907500029|15.146|0.075|14.5|0.999899983|12.935||-1.3|0.943599999|9.55||-0.2|1.03299999|0.967599988|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|22|22|13|22|0|20|0|21|23.15|23.3|22.959|22.456|0.0|0.0|0.0|0.0|0||0||0||0||121.910004|4.27019978|9.484|2.72|0.026|55.1520004|3.79879999|21.763|3.336|0.038|-67.598999|53.0750008|1097.549|25.725|3.512|-2.65070009|11.9899998|298.317|9.655|1.04|15.242|0.061|0|0.261|14.901|0.083|0|0.319|12.558||32|0.825|8.477||32|0.576|15.874|0.061|0|15.725|0.094|0|13.8||32|9.634||32|15.503|0.061|0|15.22|0.083|0|13.383||32|9.053||32|15.324|0.066|1|14.972|0.085|1|13.14||32|8.576||32|15.159|0.07|1|14.793|0.089|1|12.971||32|8.919|0.476|1|14.909|0.068|1|14.546|0.085|1|12.764||32|8.557|0.414|1|14.455|0.053|1|14.147|0.07|1|12.582||32|8.175|0.345|1|13.828|0.035|1|13.642|0.051|1|12.417||32|7.835|0.294|1|13.247|0.024|1|13.175|0.039|1|12.263||32|7.557|0.262|17|15.307|0.129|0.028|0.615|21|0|55275.02271543|55277.20605032|55276.16253395|15.153|0.226|0.048|2.16300011|21|0|55275.02271543|55277.20605032|55276.16253395||||3.13899994|9|0|55275.02271543|55276.94144233|55276.08795391||||2.954|8|0|55275.02271543|55277.20605032|55276.14119659|-2|59|5|0|1|0||||||||||||||||||||||||||1019383752|0.115|-60.7|1|16.024|0.079|15.496|0.133|15.022||2403089401241004230|1|-0.0002471925915152|-0.0012342272469679|-0.999999207789149|121000000|
+J002804.05-895539.8|7.0169117|-89.9277238|0.4369|0.4047|0.1179|302.9401882|-27.2000569|270.1804029|-66.5694347|2024.878|539.839|89401241004977|0000m894_ab41-004977|0000m894_ab41|4977|16.429|0.072|15.0|0.975700021|16.441|0.227|4.8|0.8671|12.657|0.33|3.3|1.02699995|9.254||0.7|1.04799998|0.975199997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|11|22|0|22|1|21|0|21|22.753|22.646|21.831|22.544|0.0|0.0|0.0|0.0|0||0||0||0||42.4860001|2.82380009|9.348|2.682|0.119|16.7350006|3.50040007|21.746|3.368|0.088|137.199997|41.75|1098.558|23.125|2.938|7.84569979|11.823|298.878|9.392|1.271|16.275|0.15|1|0.261|16.024|0.425|1|0.319|12.627||32|0.825|8.995||32|0.576|16.915|0.154|0|16.921|0.522|0|13.381||32|9.994||32|16.536|0.15|1|16.343|0.425|1|13.452||32|9.571||32|16.374|0.167|1|16.022|0.41|1|12.618||32|9.241||32|16.203|0.177|1|15.803|0.415|1|12.333||32|8.964||32|15.98|0.174|1|15.589|0.411|1|12.087||32|8.603||32|15.645|0.151|1|15.315|0.377|1|11.838||32|8.253||32|15.169|0.113|1|14.944|0.311|1|11.575||32|7.924||32|14.665|0.082|1|14.502|0.238|1|11.327||32|7.67||32|16.427|0.361|0.077|1.242|21|1|55275.28745078|55277.33835439|55276.28283929|16.372|0.989|0.211|3.52200007|17|0|55275.28745078|55277.33835439|55276.28283929|12.501|1.724|0.376|2.74099994|12|0|55275.28745078|55277.33835439|55276.26723075|10.427|4.819|1.052|3.9460001|13|0|55275.28745078|55277.33835439|55276.26723075|-10|-20|49|0|0|1|||||||||||||||||||||||||||||0|||||||89401241004977|1|0.0012520090644659|0.0001541025171312|-0.999999204362542|101000000|
+J023353.26-895539.3|38.471953|-89.9275983|0.1856|0.1931|0.0469|302.8967288|-27.1934394|270.1427611|-66.6056875|2117.847|528.254|600089401241004182|0600m894_ab41-004182|0600m894_ab41|4182|15.231|0.038|28.8|1.14699996|15.223|0.078|14.0|0.877399981|12.419|0.252|4.3|0.942799985|9.152||1.1|1.04200006|0.999300003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|24|24|12|24|1|23|0|23|23.539|23.66|22.94|22.779|0.0|0.0|0.0|0.0|0||0||0||0||128.130005|4.44129992|9.331|2.798|0.097|51.3720016|3.68249989|21.731|3.242|0.0|170.729996|39.5589981|1098.155|22.491|2.616|11.9200001|11.349|298.97|9.669|1.556|15.012|0.049|1|0.261|15.102|0.14|1|0.319|12.063||32|0.825|8.434||32|0.576|15.725|0.053|1|15.884|0.153|1|13.433||32|9.443||32|15.273|0.049|1|15.421|0.14|1|12.888||32|9.01||32|15.006|0.049|1|15.179|0.145|1|12.531||32|8.666||32|14.797|0.05|1|15.012|0.154|1|12.169||32|8.372||32|14.607|0.05|1|14.857|0.161|1|11.833||32|8.113||32|14.391|0.049|1|14.636|0.155|1|11.525||32|7.877||32|14.119|0.044|1|14.311|0.134|1|11.236||32|7.661||32|13.761|0.037|1|13.897|0.105|1|11.681|0.503|1|7.462||32|15.231|0.13|0.026|0.555|23|0|55275.28745078|55277.33835439|55276.29362153|15.172|0.326|0.066|3.60800004|23|0|55275.28745078|55277.33835439|55276.29362153|12.453|1.39|0.29|4.72599983|19|0|55275.28745078|55277.33835439|55276.27983905|9.731|2.031|0.423|4.82700014|14|0|55275.28745078|55277.33835439|55276.27983905|-8|-8|18|0|0|0||||||||||||||||||||||||||806850308|0.416|-74.3|1|16.091|0.135|15.547|0.141|15.182|0.211|600089401241004182|1|0.0009893258690825|0.0007861549316697|-0.999999201597055|101000000|
+J022358.42-895539.2|35.9934251|-89.9275757|1.0406|0.9943|0.2795|302.8999256|-27.1947533|270.1475646|-66.6032028|2125.427|525.123|600089401241005833|0600m894_ab41-005833|0600m894_ab41|5833|17.564|0.177|6.1|0.858299971|16.965||1.2|1.03199995|12.424|0.275|3.9|0.912299991|9.029||1.3|0.99970001|0.946500003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|1|23|0|23|1|22|0|22|23.762|23.55|22.924|22.735|0.0|0.0|0.0|0.0|0||0||0||0||14.9370003|2.44059992|9.336|2.741|0.066|3.78110003|3.27169991|21.778|3.273|0.026|169.970001|43.1040001|1099.039|22.663|2.942|15.2700005|11.7399998|298.786|9.618|1.752|15.614|0.056|1|0.261|15.583|0.194|1|0.319|11.668||32|0.825|8.512||32|0.576|16.807|0.094|1|16.834|0.327|1|13.058||32|9.512||32|15.875|0.056|1|15.902|0.194|1|12.493||32|9.088||32|15.15|0.038|1|15.217|0.134|1|12.82|0.525|1|8.746||32|14.656|0.03|1|14.755|0.108|1|12.478|0.475|1|8.449||32|14.339|0.027|1|14.457|0.099|1|12.209|0.447|1|8.117||32|14.107|0.026|1|14.234|0.095|1|11.938|0.41|1|7.792||32|13.879|0.024|1|14.004|0.089|1|11.65|0.366|1|7.52||32|13.56|0.021|1|13.654|0.075|1|11.332|0.314|1|7.313||32|17.587|0.926|0.193|2.873|19|0|55275.28745078|55277.33835439|55276.3086008|18.027|5.127|1.069|3.13899994|9|0|55275.28745078|55277.33835439|55276.3086008|12.278|1.258|0.268|1.98599994|15|0|55275.28745078|55277.33835439|55276.29487272|9.867|3.215|0.686|4.05999994|11|0|55275.28745078|55277.33835439|55276.29487272|57|-10|-14|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005833|1|0.0010227165093328|0.0007428677429201|-0.99999920109891|101000000|
+J124145.83-895538.8|190.4409614|-89.9274482|0.5741|0.5341|0.1686|302.9284783|-27.0556692|269.8207224|-66.5474585|2014.478|538.986|1802089401241004875|1802m894_ab41-004875|1802m894_ab41|4875|16.787|0.093|11.7|0.980799973|16.885|0.328|3.3|0.920799971|12.661|0.376|2.9|1.18499994|9.522||0.0|0.928900003|0.999499977|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABCU|7|0000|6|23|1|23|1|22|0|22|23.651|23.601|22.864|22.877|0.0|0.0|0.0|0.0|0||0||0||0||30.5680008|2.61570001|9.458|2.641|0.057|11.1210003|3.35759997|21.792|3.245|0.048|136.639999|47.2739983|1096.75|25.479|3.925|-0.0328090005|12.3129997|298.496|10.007|1.423|16.245|0.15|1|0.261|16.019||32|0.319|11.803|0.213|1|0.825|8.584||32|0.576|17.045|0.172|1|16.626||32|13.377|0.297|1|9.592||32|16.506|0.15|1|16.338||32|12.628|0.213|1|9.16||32|16.232|0.15|1|16.305||32|12.128|0.173|1|8.819||32|16.104|0.165|1|16.078||32|11.776|0.152|1|8.522||32|16.065|0.191|1|15.874||32|11.51|0.143|1|8.261||32|16.056|0.223|1|15.697||32|11.288|0.135|1|8.026||32|15.991|0.245|1|15.533||32|11.095|0.13|1|7.808||32|15.875|0.254|1|15.378||32|10.92|0.126|1|7.609||32|16.902|0.57|0.119|3.265|21|1|55274.89041135|55276.94144233|55275.95765212|17.126|1.562|0.326|3.2809999|18|0|55274.89041135|55276.94144233|55275.95765212|12.232|1.349|0.288|2.02999997|14|0|55274.89041135|55276.94144233|55275.92797183|11.353|||4.53900003|12|0|55274.89041135|55276.94144233|55275.92797183|21|-29|-35|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004875|1|-0.0012453001442038|-0.0002294757344113|-0.999999198283898|121000000|
+J044010.93-895538.5|70.0455707|-89.9273875|0.1234|0.1263|0.0062|302.8633224|-27.1674893|270.0624695|-66.6289497|2015.143|539.281|600089401241004033|0600m894_ab41-004033|0600m894_ab41|4033|14.31|0.028|38.5|1.11000001|14.311|0.043|25.0|1.02999997|12.135|0.208|5.2|1.07700002|9.289||0.6|1.01900005|1.05700004|1|0|0.0|0.0|0.0|0.0|0000|dD00|0|1nnn|AABU|7|0000|23|23|22|23|1|22|0|22|22.734|22.642|21.942|21.676|0.0|0.0|0.0|0.0|1|d|129|D|0||0||299.109985|7.77759981|9.35|2.847|0.0|118.989998|4.75979996|21.784|3.397|0.0|221.779999|42.5009995|1099.054|23.252|0.0|7.25470018|11.6260004|298.649|9.338|0.909|14.136|0.019|0|0.261|14.079|0.066|0|0.319|11.631||32|0.825|8.85||32|0.576|14.841|0.021|0|14.929|0.078|0|12.958||32|9.858||32|14.397|0.019|0|14.398|0.066|0|12.456||32|9.426||32|14.168|0.019|0|14.127|0.067|0|12.092||32|9.081||32|14.017|0.02|0|13.954|0.07|0|11.821||32|8.787||32|13.889|0.022|1|13.811|0.074|1|11.618||32|8.526||32|13.737|0.022|1|13.651|0.075|1|11.455||32|8.289||32|13.522|0.021|1|13.425|0.071|1|11.323||32|8.073||32|13.192|0.018|1|13.1|0.061|1|11.199||32|7.873||32|14.31|0.055|0.011|0.207|22|0|55275.28745078|55277.20605032|55276.24819836|14.31|0.191|0.04|0.824999988|22|0|55275.28745078|55277.20605032|55276.24819836|12.174|0.863|0.184|3.90100002|15|0|55275.28745078|55277.20605032|55276.23172471|10.585|6.332|1.35|2.02900004|11|0|55275.28745078|55277.20605032|55276.23172471|-24|8|16|1|0|0||||||||||||||||||||||||||1181143947|0.077|24.3|1|15.129|0.056|14.446|0.046|14.447|0.085|600089401241004033|1|0.0004325039925462|0.0011912420894132|-0.999999196940968|101000000|
+J030324.99-895538.3|45.8541524|-89.9273102|0.4346|0.4493|0.1295|302.8874148|-27.1891158|270.1275437|-66.6128171|2094.811|536.498|600089401241004639|0600m894_ab41-004639|0600m894_ab41|4639|16.542|0.077|14.1|0.948899984|17.108|0.385|2.8|0.909300029|12.069|0.182|6.0|0.927999973|9.318||0.7|0.981599987|0.939100027|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACBU|7|0000|10|24|0|24|1|23|0|23|23.813|23.718|22.873|22.794|0.0|0.0|0.0|0.0|0||0||0||0||38.3079987|2.71639991|9.279|2.784|0.122|9.05290031|3.20830011|21.786|3.269|0.041|235.699997|39.4650002|1097.877|22.435|3.233|7.56599998|11.0679998|298.594|9.438|0.926|16.052|0.092|1|0.261|16.342|0.369|1|0.319|11.79||32|0.825|8.473||32|0.576|16.791|0.104|1|17.241|0.451|1|12.975||32|10.82||32|16.313|0.092|1|16.661|0.369|1|12.615||32|9.049||32|16.085|0.097|1|16.374|0.371|1|12.324||32|8.527||32|15.963|0.107|1|16.223|0.402|1|12.089||32|8.117||32|15.875|0.119|1|16.114|0.437|1|11.888||32|7.825||32|15.737|0.124|1|15.948|0.443|1|11.71||32|7.621||32|15.477|0.114|1|15.618|0.381|1|11.543||32|7.445||32|15.09|0.092|1|15.184|0.294|1|11.392||32|7.281||32|16.54|0.331|0.068|1.498|23|0|55275.28745078|55277.33835439|55276.29362153|17.017|2.097|0.428|2.11500001|15|0|55275.28745078|55277.33835439|55276.29362153|12.059|1.066|0.222|3.36800003|20|0|55275.28745078|55277.33835439|55276.27983905|10.379|5.738|1.196|3.8440001|13|0|55275.28745078|55277.33835439|55276.27983905|-18|16|10|0|0|0||||||||||||||||||||||||||1085423168|1.121|-108.0|1|16.677|0.152|17.272||16.969||600089401241004639|1|0.0008836161806413|0.0009103623849549|-0.999999195231063|101000000|
+J081004.23-895537.5|122.5176537|-89.9271066|0.9326|0.9618|-0.3368|302.8548029|-27.1036134|269.9012469|-66.6221435|2040.237|542.715|1201089401241005281|1201m894_ab41-005281|1201m894_ab41|5281|17.671|0.211|5.1|0.922100008|16.999||0.9|1.06400001|11.847|0.164|6.6|0.965699971|9.064||1.0|1.00699997|0.984300017|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|2|21|0|21|3|21|0|20|22.757|22.681|21.978|21.576|0.0|0.0|0.0|0.0|0||0||0||0||13.5419998|2.6329999|9.391|2.748|0.0|3.01550007|3.49640012|21.796|3.412|0.166|289.220001|43.5699997|1098.445|24.349|0.85|12.1099997|12.71|297.831|9.658|0.809|16.753|0.186|1|0.261|16.069||32|0.319|11.849||32|0.825|8.315||32|0.576|17.596|0.225|0|16.869||32|13.07||32|9.33||32|17.014|0.186|1|16.388||32|12.674||32|8.891||32|16.558|0.158|1|16.571|0.449|1|12.436||32|8.547||32|16.052|0.124|1|15.859|0.289|1|12.263||32|8.253||32|15.49|0.09|1|15.233|0.196|1|12.152||32|7.991||32|14.978|0.066|1|14.763|0.15|1|13.9||32|7.756||32|14.612|0.055|1|14.438|0.13|1|11.974||32|7.54||32|14.384|0.052|1|14.217|0.122|1|11.821||32|7.34||32|17.585|1.078|0.235|3.745|15|1|55275.02271543|55276.94144233|55276.00259843|18.096|5.92|1.292|2.52399993|9|0|55275.02271543|55276.94144233|55276.08450699|11.769|0.848|0.185|3.61800003|16|1|55275.02271543|55276.94144233|55276.00889862|10.502|5.677|1.269|3.1099999|10|0|55275.02271543|55276.94144233|55275.97219743|29|-37|-1|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005281|1|-0.0006838991245798|0.0010727770319103|-0.999999190715386|111000000|
+J075043.56-895537.0|117.6815083|-89.9269566|0.8639|0.8865|-0.2816|302.852588|-27.1094483|269.9144713|-66.6253688|2056.358|543.083|1201089401241005383|1201m894_ab41-005383|1201m894_ab41|5383|17.543|0.175|6.2|0.897599995|16.716||1.8|0.749599993|12.058|0.191|5.7|1.21300006|8.739||1.9|0.939199984|0.948199987|1|0|0.0|0.0|0.0|0.003|0000|0000|0|nn1n|BUBU|5|0000|3|22|0|22|4|21|0|21|22.708|22.785|21.842|21.401|0.0|0.0|0.0|0.0|0||0||0||0||15.2390003|2.45630002|9.402|2.777|0.071|6.1262002|3.42980003|21.858|3.421|0.039|238.139999|41.9690018|1097.936|24.227|2.273|24.7409992|12.9329996|298.338|9.816|1.428|16.831|0.242|1|0.261|16.039|0.3|1|0.319|12.345|0.476|1|0.825|8.241||32|0.576|17.636|0.287|1|17.028|0.398|1|13.01||32|9.285||32|17.092|0.242|1|16.358|0.3|1|13.17|0.476|1|8.817||32|16.712|0.223|1|15.899|0.257|1|12.707|0.405|1|8.599||32|16.36|0.199|1|15.504|0.222|1|12.356|0.364|1|11.229||32|15.945|0.164|1|15.138|0.191|1|12.043|0.328|1|8.272||32|15.54|0.133|1|14.82|0.168|1|11.741|0.293|1|8.036||32|15.231|0.117|1|14.559|0.154|1|11.474|0.266|1|7.82||32|15.012|0.11|1|14.322|0.142|1|11.259|0.252|1|7.621||32|17.612|1.085|0.231|3.334|19|1|55275.02271543|55276.94144233|55276.03624953|17.385|1.531|0.326|2.86100006|13|0|55275.02271543|55276.94144233|55276.03624953|11.827|1.075|0.235|4.75899982|16|2|55275.02271543|55276.94144233|55276.00889862|9.081|1.613|0.352|2.40100002|10|0|55275.02271543|55276.94144233|55276.00889862|-70|75|35|2|2|0|||||||||||||||||||||||||||||0|||||||1201089401241005383|1|-0.0005922383498667|0.0011289329588684|-0.999999187381725|111000000|
+J212933.74-895535.6|322.3906107|-89.9265615|0.107|0.1058|-0.0183|302.9955857|-27.1748855|270.1459922|-66.5158232|1976.192|530.389|3004089401241004066|3004m894_ab41-004066|3004m894_ab41|4066|13.948|0.027|40.8|2.94300008|13.76|0.032|33.4|1.34800005|12.525|0.294|3.7|1.07700002|9.385||0.4|0.946099997|1.59200001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|25|25|25|25|0|24|0|24|24.589|24.631|23.975|23.815|0.0|0.0|0.0|0.0|0||0||0||0||417.779999|10.2449999|9.365|2.71|0.07|197.710007|5.91610003|21.769|3.196|0.146|154.860001|41.9869995|1097.467|24.297|0.118|4.21239996|11.8529997|298.586|9.63|0.865|13.806|0.02|1|0.261|13.632|0.038|1|0.319|12.072||32|0.825|8.952||32|0.576|14.507|0.022|0|14.457|0.043|0|13.4||32|9.92||32|14.067|0.02|1|13.951|0.038|1|12.897||32|9.528||32|13.856|0.021|1|13.703|0.039|1|13.244|0.529|1|9.591||32|13.732|0.024|1|13.56|0.042|1|12.913|0.484|1|8.959||32|13.614|0.025|1|13.441|0.045|1|12.624|0.446|1|8.701||32|13.444|0.025|1|13.299|0.046|1|12.421|0.436|1|8.469||32|13.252|0.025|1|13.141|0.047|1|12.352|0.477|1|8.257||32|13.113|0.025|1|13.014|0.048|1|11.612||32|7.985||32|13.939|0.055|0.011|0.328|24|0|55275.28745078|55277.33835439|55276.25865158|13.759|0.125|0.025|0.493000001|24|0|55275.28745078|55277.33835439|55276.25865158|12.374|1.386|0.283|4.37099981|17|0|55275.28745078|55277.33835439|55276.24398629|11.171|||2.00500011|11|0|55275.28745078|55277.33835439|55276.24398629|1|8|75|0|0|2||||||||||||||||||||||||||996538700|0.383|-76.7|1|15.105|0.048|14.429|0.052|14.144|0.079|3004089401241004066|1|0.0010153839262744|-0.0007822160023329|-0.999999178566467|131000000|
+J204930.63-895534.1|312.377643|-89.9261439|0.0832|0.0824|0.0103|303.0041535|-27.1645268|270.1248713|-66.5061002|2008.072|541.228|3004089401241003989|3004m894_ab41-003989|3004m894_ab41|3989|12.611|0.024|46.0|0.850799978|12.621|0.023|46.2|1.11199999|12.461|0.279|3.9|1.01300001|9.488||0.2|1.09099996|1.01300001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|25|25|25|25|1|24|0|24|24.634|24.316|23.886|23.625|0.0|0.0|0.0|0.0|0||0||0||0||1430.5|31.0849991|9.366|2.786|0.225|564.210022|12.21|21.757|3.256|0.0|164.289993|42.2369995|1096.96|24.661|2.992|2.37930012|11.5050001|298.578|9.529|1.394|12.59|0.01|0|0.261|12.636|0.017|0|0.319|11.955||32|0.825|9.034||32|0.576|13.216|0.01|0|13.392|0.019|0|13.228||32|10.028||32|12.851|0.01|0|12.955|0.017|0|12.78||32|9.61||32|12.718|0.01|1|12.786|0.018|1|12.52||32|9.29||32|12.66|0.012|1|12.716|0.021|1|12.391||32|9.021||32|12.627|0.013|1|12.677|0.024|1|12.411||32|8.788||32|12.606|0.015|1|12.654|0.028|1|12.507||32|8.577||32|12.592|0.016|1|12.645|0.031|1|12.344||32|8.383||32|12.582|0.018|1|12.648|0.036|1|12.192||32|8.204||32|12.611|0.035|0.007|0.135|24|0|55275.28745078|55277.33835439|55276.25865158|12.627|0.039|0.008|0.210999995|24|0|55275.28745078|55277.33835439|55276.25865158|12.326|1.169|0.239|6.18900013|18|0|55275.28745078|55277.33835439|55276.24398629|11.364|||3.3210001|13|0|55275.28745078|55277.33835439|55276.24398629|-16|-22|45|0|0|1||||||||||||||||||||||||||996409826|0.077|28.7|1|13.128|0.024|12.709|0.027|12.72|0.03|3004089401241003989|1|0.0008688262796473|-0.0009522321177202|-0.9999991691971|131000000|
+J224927.26-895533.4|342.3636208|-89.9259698|0.4221|0.3727|-0.0863|302.9741526|-27.1919394|270.1772019|-66.5381795|2106.719|536.739|89401241004908|0000m894_ab41-004908|0000m894_ab41|4908|16.493|0.073|14.9|0.864499986|15.816|0.124|8.7|0.872799993|13.008||0.6|1.10800004|9.443||0.3|0.988499999|0.953700006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABUU|3|0000|14|25|4|25|0|24|0|24|25.71|26.55|24.92|24.994|0.0|0.0|0.0|0.0|0||0||0||0||40.0800018|2.69700003|9.37|2.751|0.0|29.7590008|3.41070008|21.766|3.334|0.01|21.8150005|38.7319984|1097.88|23.576|0.0|3.43429995|11.5240002|298.936|9.68|0.487|16.261|0.181|1|0.261|15.675|0.306|1|0.319|12.314||32|0.825|8.987||32|0.576|16.916|0.186|1|16.484|0.341|1|13.513||32|10.061||32|16.522|0.181|1|15.994|0.306|1|13.139||32|9.563||32|16.375|0.204|1|15.75|0.317|1|12.859||32|9.236||32|16.327|0.242|1|15.592|0.34|1|12.624||32|9.95||32|16.255|0.274|1|15.462|0.364|1|12.419||32|11.588||32|15.978|0.25|1|15.246|0.352|1|12.24||32|8.479||32|15.535|0.194|1|14.913|0.302|1|12.075||32|8.172||32|15.122|0.152|1|14.58|0.256|1|11.922||32|7.882||32|16.49|0.409|0.082|2.693|24|1|55275.28745078|55277.33835439|55276.25865158|15.775|0.696|0.139|2.83299994|21|0|55275.28745078|55277.33835439|55276.25865158|14.512|8.901|1.817|3.773|12|0|55275.28745078|55277.33835439|55276.24398629|10.831|7.31|1.492|2.59500003|9|0|55275.28745078|55277.33835439|55276.24398629|6|15|17|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004908|1|0.0012313414879428|-0.0003914651999276|-0.99999916527622|131000000|
+J122253.89-895532.7|185.724556|-89.9257563|0.8077|0.7498|0.1918|302.9215615|-27.0544872|269.8143402|-66.5531935|2029.544|545.519|1802089401241005194|1802m894_ab41-005194|1802m894_ab41|5194|17.137|0.134|8.1|1.03600001|17.072|0.411|2.6|0.981000006|12.968||-2.5|1.00300002|9.497||-0.7|0.882000029|0.97390002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|3|23|0|23|0|22|0|22|22.645|22.561|21.899|22.5|0.0|0.0|0.0|0.0|0||0||0||0||22.1469994|2.72589993|9.399|2.756|0.124|9.35709953|3.5387001|21.817|3.369|0.0|-126.959999|51.519001|1097.147|26.093|3.343|-8.26879978|12.5930004|298.496|10.078|0.47|16.653||32|0.261|16.06||32|0.319|12.726||32|0.825|8.653||32|0.576|17.047||32|16.58||32|13.966||32|9.666||32|16.914||32|16.379||32|13.551||32|9.229||32|17.005||32|16.107||32|13.003||32|8.879||32|16.85||32|15.871||32|12.488||32|8.588||32|16.649||32|15.67||32|12.623|0.405|1|8.325||32|16.042||32|15.485||32|12.089|0.291|1|8.088||32|15.78|0.336|1|15.322||32|11.704|0.235|1|7.873||32|14.866|0.167|1|15.17||32|11.382|0.199|1|7.673||32|17.132|0.696|0.145|3.161|21|0|55274.89041135|55276.94144233|55275.95765212|16.903|1.637|0.341|1.69599998|13|0|55274.89041135|55276.94144233|55275.95765212||||5.85699987|5|0|55274.89041135|55276.94144233|55275.92797183|13.581|||2.96799994|9|0|55274.89041135|55276.94144233|55275.92797183|19|30|16|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005194|1|-0.0012893347824545|-0.0001292508373045|-0.999999160454668|121000000|
+J054747.27-895532.6|86.9469928|-89.9257454|0.1733|0.183|-0.0083|302.8516654|-27.1484919|270.009972|-66.6348577|1960.181|525.476|600089401241004171|0600m894_ab41-004171|0600m894_ab41|4171|15.096|0.036|30.1|0.883099973|14.917|0.069|15.7|0.906099975|12.5|0.307|3.5|1.06400001|8.934||1.6|0.952000022|0.947899997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|21|21|14|21|1|20|0|20|20.858|21.379|20.359|20.005|0.0|0.0|0.0|0.0|0||0||0||0||145.080002|4.82070017|9.382|2.83|0.022|68.1240005|4.3519001|21.787|3.504|0.269|158.440002|44.8180008|1098.009|23.44|1.038|18.9459991|11.6719999|298.127|9.359|1.423|14.998|0.036|1|0.261|14.694|0.077|1|0.319|12.539|0.445|1|0.825|8.699||32|0.576|15.647|0.037|0|15.502|0.087|0|13.351||32|9.715||32|15.259|0.036|1|15.013|0.077|1|13.364|0.445|1|9.275||32|15.096|0.04|1|14.766|0.08|1|12.705|0.317|1|8.943||32|14.994|0.044|1|14.613|0.085|1|12.199|0.245|1|8.635||32|14.883|0.048|1|14.499|0.092|1|11.781|0.2|1|8.327||32|14.767|0.05|1|14.401|0.099|1|11.435|0.171|1|8.023||32|14.663|0.053|1|14.308|0.106|1|11.168|0.156|1|7.757||32|14.558|0.056|1|14.2|0.11|1|10.95|0.146|1|7.573||32|15.09|0.114|0.025|0.462|20|0|55275.28745078|55277.20605032|55276.18847532|14.839|0.219|0.048|1.59300005|20|0|55275.28745078|55277.20605032|55276.18847532|12.568|1.425|0.319|3.68000007|13|0|55275.28745078|55277.20605032|55276.16736816|9.952|3.891|0.87|4.06699991|11|0|55275.28745078|55277.20605032|55276.16736816|8|-8|-18|0|0|0||||||||||||||||||||||||||946648566|0.094|66.4|1|16.065|0.127|15.258|0.137|15.078||600089401241004171|1|0.0000690239847954|0.0012941467527379|-0.999999160209583|101000000|
+J020654.29-895532.6|31.7262097|-89.9257389|0.8907|0.8423|0.3067|302.9049171|-27.1984251|270.1590429|-66.5996794|1954.793|181.41|2403089401241005777|2403m894_ab41-005777|2403m894_ab41|5777|18.796||-4.4|0.925899982|17.435||-2.3|0.983699977|11.649|0.132|8.2|1.09099996|9.285||0.6|0.906300008|0.97420001|1|0|0.0|0.0|0.0|0.0|0000|H000|0|nnnn|UUBU|4|0000|0|22|0|22|2|21|0|21|23.456|23.583|22.899|22.903|0.0|0.0|0.0|0.0|1032|H|0||0||0||-10.6870003|2.40249991|9.376|2.756|0.346|-7.83169985|3.35039997|21.754|3.249|0.093|346.899994|42.1010017|1097.643|22.544|1.378|7.08860016|11.7600002|298.756|9.487|0.58|16.687|0.262|1|0.261|15.698||32|0.319|11.938|0.29|1|0.825|8.708||32|0.576|17.389||32|16.729||32|13.504|0.408|0|9.871||32|16.948|0.262|1|16.017||32|12.763|0.29|1|9.284||32|15.94|0.134|1|15.84|0.346|1|12.221|0.229|1|8.77||32|14.999|0.07|1|14.832|0.169|1|11.768|0.187|1|8.4||32|13.985|0.034|1|13.804|0.08|1|11.378|0.158|1|8.162||32|12.916|0.016|1|12.789|0.037|1|11.027|0.135|1|7.917||32|11.938|0.009|1|11.916|0.02|1|10.705|0.117|1|7.643||32|11.218|0.007|1|11.273|0.014|1|10.418|0.103|1|7.419||32||||1.987|5|0|55275.28745078|55277.33835439|55276.28283929||||3.16899991|6|0|55275.28745078|55277.33835439|55276.28283929|11.621|0.492|0.107|4.87400007|19|0|55275.28745078|55277.33835439|55276.26723075|10.822|6.964|1.52|3.3440001|10|0|55275.28745078|55277.33835439|55276.26723075|8|42|-11|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005777|1|0.0011024246803872|0.0006815682178273|-0.999999160061942|101000000|
+J161153.31-895532.0|242.9721555|-89.9255671|0.5316|0.5782|0.1221|302.9960613|-27.0804095|269.9151938|-66.4943822|2039.14|546.701|2403089401241004842|2403m894_ab41-004842|2403m894_ab41|4842|16.764|0.091|11.9|0.868300021|16.847||1.5|1.03199995|13.04||-0.5|1.11199999|9.5||-0.4|1.08800006|1.01999998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|AUUU|1|0000|7|22|0|22|0|21|0|21|23.543|23.717|22.575|22.429|0.0|0.0|0.0|0.0|0||0||0||0||31.2189999|2.62459993|9.533|2.626|0.076|4.96939993|3.27029991|21.753|3.282|0.121|-23.8540001|48.2000008|1096.625|25.496|1.066|-5.32359982|12.559|298.167|9.828|1.158|17.243|0.396|0|0.261|16.6||32|0.319|12.717||32|0.825|8.661||32|0.576|17.564|0.302|0|17.226||32|13.9||32|9.672||32|17.504|0.396|0|16.919||32|13.542||32|9.237||32|16.95||32|16.636||32|13.26||32|8.891||32|16.959||32|16.399||32|13.025||32|8.596||32|16.748||32|16.2||32|12.826||32|8.335||32|16.39||32|16.017||32|12.644||32|8.098||32|16.177||32|15.852||32|12.48||32|7.883||32|16.216||32|15.699||32|12.327||32|7.683||32|16.792|0.409|0.087|2.06|21|0|55275.02271543|55276.94144233|55276.09036233|17.33|2.609|0.556|2.75999999|12|0|55275.02271543|55276.94144233|55276.09036233|15.833|||4.79400015|8|0|55275.02271543|55276.94144233|55276.06558822||||4.44000006|8|0|55275.02271543|55276.94144233|55276.06558822|34|21|39|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004842|1|-0.0005903406020272|-0.0011572180375136|-0.999999156171838|121000000|
+J025325.52-895531.9|43.3563584|-89.9255432|1.13|1.1614|0.4145|302.8894348|-27.1923062|270.1363803|-66.6117669|2104.138|538.714|600089401241005825|0600m894_ab41-005825|0600m894_ab41|5825|18.846||-0.8|0.890799999|17.128||0.8|0.861599982|11.916|0.162|6.7|1.102|9.142|0.345|3.1|1.11099994|0.986299992|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBB|12|0000|0|24|0|24|0|23|0|23|23.478|23.714|22.896|22.874|0.0|0.0|0.0|0.0|0||0||0||0||-1.94340003|2.29340005|9.307|2.811|0.051|2.50580001|3.19180012|21.758|3.266|0.036|271.450012|40.3790016|1098.013|22.473|1.087|34.9410019|11.1110001|297.966|9.165|0.976|16.977|0.205|1|0.261|16.531|0.352|1|0.319|11.588||32|0.825|8.275||32|0.576|18.137|0.335|1|17.563|0.486|1|12.791||32|9.397||32|17.238|0.205|1|16.85|0.352|1|12.413||32|8.851||32|16.502|0.135|1|16.285|0.273|1|12.152||32|8.425||32|15.856|0.093|1|15.723|0.202|1|11.933||32|8.078||32|15.279|0.066|1|15.179|0.148|1|11.724||32|7.797||32|14.739|0.048|1|14.678|0.11|1|11.526||32|7.571||32|14.248|0.036|1|14.235|0.085|1|11.333||32|7.393||32|13.853|0.029|1|13.862|0.07|1|11.143||32|7.246||32||||3.407|8|0|55275.28745078|55277.33835439|55276.29362153|18.907|7.0|1.429|3.93499994|14|0|55275.28745078|55277.33835439|55276.29362153|11.779|0.439|0.092|2.79900002|20|0|55275.28745078|55277.33835439|55276.27983905|8.946|1.693|0.353|3.66799998|16|0|55275.28745078|55277.33835439|55276.27983905|64|-3|16|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005825|1|0.0009448756636691|0.0008921621759152|-0.99999915562796|101000000|
+J195336.22-895531.1|298.400952|-89.9253187|0.1598|0.1603|-0.0422|303.0127751|-27.148143|270.0890641|-66.4949908|2055.029|547.429|3004089401241004249|3004m894_ab41-004249|3004m894_ab41|4249|14.984|0.033|32.9|1.00899994|14.939|0.064|16.8|0.918500006|12.807|0.392|2.8|1.06400001|8.907||1.2|0.999000013|0.993499994|1|0|0.0|0.0|0.0|0.001|0000|0000|0|10nn|AACU|7|0000|23|23|13|23|2|22|0|22|23.827|24.398|23.13|23.044|0.0|0.0|0.0|0.0|0||0||0||0||160.910004|4.89289999|9.337|2.765|0.288|66.7399979|3.96140003|21.734|3.33|0.116|119.470001|43.1889992|1096.735|24.78|3.003|16.6019993|13.3900003|298.531|9.913|0.689|14.95|0.029|0|0.261|14.909|0.086|0|0.319|12.044||32|0.825|8.555||32|0.576|15.573|0.03|0|15.655|0.091|0|13.423||32|9.651||32|15.211|0.029|0|15.228|0.086|0|12.869||32|9.131||32|15.065|0.032|1|15.033|0.093|1|13.176|0.502|1|8.691||32|14.954|0.036|1|14.864|0.098|1|12.825|0.45|1|8.352||32|14.813|0.037|1|14.669|0.099|1|12.601|0.439|1|8.045||32|14.63|0.037|1|14.446|0.095|1|12.429|0.441|1|7.793||32|14.438|0.036|1|14.22|0.09|1|12.286|0.449|1|7.625||32|14.27|0.035|1|14.015|0.086|1|12.123|0.446|1|7.469||32|14.987|0.14|0.029|0.49|22|0|55275.28745078|55277.20605032|55276.21941447|14.875|0.359|0.075|1.25699997|21|1|55275.28745078|55277.20605032|55276.21941447|12.492|1.691|0.36|3.49000001|14|0|55275.28745078|55277.20605032|55276.20163246|9.133|0.936|0.2|2.0769999|14|0|55275.28745078|55277.20605032|55276.20163246|0|-8|26|0|0|0||||||||||||||||||||||||||1146967434|0.252|24.7|1|15.719|0.076|14.922|0.097|14.99|0.138|3004089401241004249|1|0.0006199642487257|-0.0011465543594279|-0.999999150528355|131000000|
+J175541.06-895530.7|268.9210938|-89.9252021|0.2203|0.2342|-0.034|303.013472|-27.1101156|269.99647|-66.4859242|1954.391|524.042|2403089401241004284|2403m894_ab41-004284|2403m894_ab41|4284|15.491|0.043|25.4|1.05799997|15.61|0.114|9.5|0.955799997|12.369||1.8|1.02699995|9.485||-1.3|0.854099989|0.971000016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABUU|3|0000|21|21|6|21|1|20|0|20|21.868|21.927|21.251|21.704|0.0|0.0|0.0|0.0|0||0||0||0||100.870003|3.9684999|9.528|2.691|0.0|35.9620018|3.78690004|21.781|3.357|0.0|83.5299988|47.6389999|1096.883|25.243|3.623|-16.9500008|12.7329998|298.756|9.878|2.127|15.342|0.055|0|0.261|15.366|0.148|0|0.319|12.09||32|0.825|8.989||32|0.576|16.002|0.057|0|16.173|0.165|0|13.361||32|9.971||32|15.603|0.055|0|15.685|0.148|0|12.915||32|9.565||32|15.418|0.06|1|15.402|0.148|1|12.572||32|9.251||32|15.291|0.066|1|15.138|0.143|1|12.257||32|8.987||32|15.165|0.07|1|14.868|0.134|1|11.976||32|8.76||32|15.04|0.073|1|14.628|0.126|1|12.435|0.5|1|8.556||32|14.942|0.078|1|14.451|0.125|1|12.16|0.451|1|8.368||32|14.886|0.085|1|14.352|0.131|1|11.905|0.41|1|8.196||32|15.519|0.191|0.042|0.963|20|1|55275.28745078|55277.20605032|55276.21681103|15.572|0.454|0.099|2.11400008|20|0|55275.28745078|55277.20605032|55276.21681103|12.8|2.034|0.455|4.04099989|13|0|55275.28745078|55277.20605032|55276.19712065||||4.01599979|6|0|55275.28745078|55277.20605032|55276.19712065|20|6|22|0|0|0||||||||||||||||||||||||||970426381|0.614|143.4|1|16.503|0.152|15.892|0.213|16.509||2403089401241004284|1|-0.0000245811534609|-0.0013052384283165|-0.999999147873843|121000000|
+J193651.60-895530.1|294.2150149|-89.9250376|0.2106|0.2138|-0.0663|303.0145066|-27.1428921|270.0770842|-66.4923233|2069.354|547.126|3004089401241004372|3004m894_ab41-004372|3004m894_ab41|4372|15.46|0.041|26.3|0.937699974|15.294|0.087|12.5|0.932200015|12.814||0.8|0.942499995|8.886||1.6|1.14300001|0.983900011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|23|23|11|23|1|22|0|22|23.595|23.538|22.858|22.617|0.0|0.0|0.0|0.0|0||0||0||0||103.730003|3.93910003|9.336|2.762|0.055|48.1489983|3.86549997|21.779|3.366|0.125|33.3240013|42.6940002|1095.624|24.345|0.148|19.4519997|12.3789997|298.75|9.79|0.348|15.227|0.037|0|0.261|14.99|0.097|0|0.319|12.963||32|0.825|8.459||32|0.576|15.936|0.041|0|15.865|0.116|0|13.793||32|9.5||32|15.488|0.037|0|15.309|0.097|0|13.788||32|9.035||32|15.162|0.036|1|14.913|0.087|1|12.978||32|8.71||32|14.709|0.029|1|14.482|0.073|1|12.58||32|8.382||32|14.093|0.02|1|13.983|0.056|1|12.211||32|8.123||32|13.52|0.015|1|13.52|0.043|1|11.866||32|7.905||32|13.163|0.013|1|13.199|0.037|1|12.279|0.499|1|7.695||32|12.992|0.012|1|13.019|0.036|1|11.983|0.437|1|7.503||32|15.461|0.139|0.029|0.421|22|0|55275.28745078|55277.20605032|55276.21941447|15.202|0.394|0.082|1.92499995|22|0|55275.28745078|55277.20605032|55276.21941447|13.65|5.703|1.216|3.98300004|11|0|55275.28745078|55277.20605032|55276.20163246|9.818|4.412|0.941|3.56800008|11|0|55275.28745078|55277.20605032|55276.20163246|13|-16|11|0|0|0||||||||||||||||||||||||||1126874266|0.391|-143.5|1|16.586|0.157|15.717|0.189|15.361|0.215|3004089401241004372|1|0.0005366314319394|-0.0011932226792744|-0.999999144122806|131000000|
+J230957.91-895529.8|347.49133|-89.92495|0.2842|0.2592|-0.0231|302.9680664|-27.1959649|270.184074|-66.544346|2090.553|543.854|89401241004677|0000m894_ab41-004677|0000m894_ab41|4677|15.991|0.052|20.7|0.839100003|15.343|0.086|12.6|0.853200018|12.744||1.1|1.11000001|9.05||1.4|0.944199979|0.931699991|1|0|0.0|0.0|0.0|0.001|0000|0000|0|00nn|AAUU|3|0000|23|25|9|24|0|23|1|24|26.311|26.558|25.665|25.376|0.0|0.0|0.0|0.0|0||0||0||0||63.6220016|3.07270002|9.355|2.757|0.122|45.9990005|3.64499998|21.762|3.358|0.074|45.8699989|40.368|1099.47|23.594|0.916|15.9790001|11.0249996|298.709|9.501|0.003|15.777|0.11|1|0.261|15.102|0.138|1|0.319|12.669||32|0.825|9.043||32|0.576|16.456|0.116|0|15.922|0.157|0|13.859||32|10.054||32|16.038|0.11|1|15.421|0.138|1|13.494||32|9.619||32|15.871|0.122|1|15.186|0.145|1|13.21||32|9.272||32|15.777|0.138|1|15.028|0.155|1|12.977||32|8.975||32|15.683|0.152|1|14.892|0.164|1|12.774||32|8.714||32|15.538|0.158|1|14.759|0.172|1|12.592||32|8.477||32|15.312|0.149|1|14.584|0.17|1|12.426||32|8.26||32|14.974|0.126|1|14.309|0.152|1|12.273||32|8.061||32|15.998|0.209|0.042|0.998|24|0|55275.28745078|55277.33835439|55276.25865158|15.341|0.429|0.088|1.78999996|23|0|55275.28745078|55277.33835439|55276.24674528|13.082|2.418|0.504|5.46899986|13|0|55275.28745078|55277.33835439|55276.27119668|10.353|3.822|0.78|4.12599993|13|0|55275.28745078|55277.33835439|55276.24398629|-5|-13|-77|0|0|1|||||||||||||||||||||||||||||0|||||||89401241004677|1|0.0012787768488177|-0.0002837010234665|-0.999999142121382|131000000|
+J091823.57-895529.8|139.5982322|-89.9249461|0.3674|0.354|-0.1011|302.8643626|-27.0832455|269.8560325|-66.6092887|1982.691|537.357|1201089401241004653|1201m894_ab41-004653|1201m894_ab41|4653|16.068|0.066|16.5|0.885200024|15.976|0.158|6.9|0.801299989|12.515|0.321|3.4|1.05499995|9.461||0.1|0.948800027|0.917800009|1|0|0.0|0.0|0.0|0.004|0000|0000|0|0nnn|ABBU|7|0000|13|21|0|21|1|20|0|20|21.696|21.636|20.661|20.732|0.0|0.0|0.0|0.0|0||0||0||0||59.2610016|3.59730005|9.396|2.862|0.121|25.677|3.73189998|21.771|3.336|0.031|156.339996|46.1689987|1097.089|24.488|0.522|1.44490004|12.2939997|298.34|9.613|0.234|15.91|0.073|1|0.261|15.575|0.171|1|0.319|12.578|0.54|0|0.825|8.509||32|0.576|16.544|0.075|0|16.439|0.201|0|13.173||32|9.66||32|16.171|0.073|1|15.894|0.171|1|13.403|0.54|0|9.085||32|16.0|0.08|1|15.581|0.165|1|12.952|0.459|1|8.618||32|15.789|0.081|1|15.32|0.161|1|12.613|0.416|1|8.969|0.535|17|15.469|0.073|1|15.036|0.15|1|12.343|0.392|1|8.544|0.443|17|15.134|0.064|1|14.739|0.135|1|12.142|0.384|1|8.213|0.391|17|14.866|0.058|1|14.471|0.123|1|11.987|0.388|1|7.988|0.375|17|14.668|0.055|1|14.264|0.117|1|11.802|0.375|1|7.842|0.382|17|16.011|0.258|0.056|2.024|20|0|55275.02271543|55276.94144233|55276.01834588|15.979|0.518|0.113|1.99899995|20|0|55275.02271543|55276.94144233|55276.01834588|11.999|0.927|0.207|2.7579999|14|0|55275.02271543|55276.94144233|55275.98873224|11.184|8.287|1.853|3.12199998|9|0|55275.02271543|55276.94144233|55275.98873224|12|1|34|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004653|1|-0.000997541011633|0.0008490270169727|-0.999999142032159|111000000|
+J222937.18-895529.6|337.4049328|-89.9248963|0.4537|0.4059|-0.0932|302.9808923|-27.1893255|270.1741134|-66.5317562|2123.545|533.566|89401241004979|0000m894_ab41-004979|0000m894_ab41|4979|16.652|0.082|13.3|0.96390003|15.941|0.138|7.9|0.806699991|12.398|0.257|4.2|1.11300004|9.071||1.2|1.023|0.973699987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|11|25|1|25|2|24|0|24|25.255|26.098|24.6|24.776|0.0|0.0|0.0|0.0|0||0||0||0||34.6049995|2.60019994|9.363|2.817|0.045|26.5259991|3.37299991|21.768|3.288|0.102|174.130005|41.2939987|1098.155|23.785|0.893|13.9940004|11.6520004|298.663|9.537|0.898|16.434|0.216|1|0.261|15.951|0.351|1|0.319|11.83||32|0.825|8.709||32|0.576|17.092|0.225|0|16.689|0.371|0|13.141||32|9.919||32|16.695|0.216|1|16.27|0.351|1|12.655||32|9.285||32|16.499|0.231|1|16.122|0.392|1|12.311||32|8.712||32|16.334|0.247|1|16.055|0.458|1|12.792|0.541|1|8.327||32|16.154|0.251|1|15.931|0.492|1|12.564|0.528|1|8.708|0.493|1|15.899|0.236|1|15.637|0.445|1|12.346|0.512|1|8.388|0.447|1|15.504|0.191|1|15.156|0.332|1|12.154|0.499|1|8.158|0.432|1|14.934|0.13|1|14.567|0.222|1|11.998|0.496|1|7.936|0.416|1|16.651|0.475|0.095|2.221|24|1|55275.28745078|55277.33835439|55276.25865158|15.863|0.584|0.117|4.18200016|23|0|55275.28745078|55277.33835439|55276.25865158|12.187|1.204|0.246|3.51600003|18|0|55275.28745078|55277.33835439|55276.24398629|10.422|6.392|1.305|4.13399982|14|0|55275.28745078|55277.33835439|55276.24398629|28|30|-17|1|1|0|||||||||||||||||||||||||||||0|||||||89401241004979|1|0.0012101925246248|-0.0005036322888708|-0.999999140893916|131000000|
+J065130.08-895528.1|102.875347|-89.9244793|0.3648|0.3877|-0.1013|302.8470603|-27.12811|269.9575683|-66.6343251|2106.836|540.798|1201089401241004672|1201m894_ab41-004672|1201m894_ab41|4672|16.279|0.066|16.5|0.728299975|16.409|0.225|4.8|0.87470001|12.422|0.278|3.9|0.963999987|9.158||0.8|0.906199992|0.863900006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|16|22|1|22|0|21|0|21|22.732|22.748|21.805|21.766|0.0|0.0|0.0|0.0|0||0||0||0||48.7890015|2.96210003|9.38|2.724|0.045|17.2269993|3.5625999|21.847|3.413|0.131|170.320007|43.5839996|1097.18|23.385|0.0|9.70269966|12.3520002|297.861|9.47|0.781|15.843|0.144|0|0.261|15.943|0.364|0|0.319|12.063||32|0.825|8.776||32|0.576|16.618|0.164|0|16.761|0.41|0|13.428||32|9.905||32|16.104|0.144|0|16.262|0.364|0|12.888||32|9.352||32|15.736|0.133|0|15.877|0.33|0|13.281|0.536|0|8.846||32|15.233|0.104|1|15.298|0.24|1|12.314||32|8.377||32|14.464|0.062|1|14.5|0.139|1|12.122||32|8.686|0.532|1|13.637|0.034|1|13.718|0.08|1|11.934||32|8.245|0.434|1|13.012|0.023|1|13.134|0.054|1|12.421|0.495|1|7.971|0.406|17|12.647|0.019|1|12.772|0.045|1|12.113|0.43|1|7.758|0.397|17|16.262|0.243|0.052|1.907|21|0|55275.02271543|55276.94144233|55276.03624953|16.246|0.868|0.185|2.77099991|18|0|55275.02271543|55276.94144233|55276.03624953|12.148|0.875|0.191|4.24399996|15|0|55275.02271543|55276.94144233|55276.00889862|10.003|2.73|0.596|3.17000008|11|0|55275.02271543|55276.94144233|55276.00889862|21|-9|-17|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004672|1|-0.0002937098011502|0.0012849447137159|-0.99999913132544|111000000|
+J154446.34-895527.6|236.1930954|-89.9243412|0.2783|0.2978|0.0755|302.9902258|-27.0731124|269.8944385|-66.4978071|2062.416|549.586|2403089401241004387|2403m894_ab41-004387|2403m894_ab41|4387|15.821|0.051|21.4|1.00399995|16.233|0.179|6.1|0.895200014|12.819||0.4|1.028|9.508||-1.0|0.99849999|0.977999985|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|21|22|2|22|2|20|0|21|23.428|23.632|22.099|22.717|0.0|0.0|0.0|0.0|0||0||0||0||74.4339981|3.4855001|9.52|2.644|0.144|20.2660007|3.34710002|21.771|3.273|0.049|19.5559998|49.3100014|1096.423|25.361|3.952|-12.3579998|12.4659996|298.3|9.763|1.451|15.775|0.14|1|0.261|15.916|0.212|1|0.319|12.349||32|0.825|8.986||32|0.576|16.457|0.149|1|16.763|0.248|1|13.527||32|9.993||32|16.036|0.14|1|16.235|0.212|1|13.174||32|9.562||32|15.753|0.14|1|15.872|0.197|1|12.893||32|9.126||32|15.518|0.139|1|15.574|0.185|1|12.661||32|8.79||32|15.324|0.14|1|15.321|0.177|1|12.458||32|8.49||32|15.176|0.145|1|15.105|0.172|1|12.277||32|8.171||32|15.101|0.157|1|14.971|0.177|1|12.114||32|7.906||32|15.078|0.177|1|14.902|0.192|1|11.96||32|7.666||32|15.846|0.192|0.041|1.243|21|0|55275.02271543|55276.94144233|55276.02720854|16.355|0.947|0.202|4.47399998|19|1|55275.02271543|55276.94144233|55276.02720854|13.009|3.6|0.805|3.02200007|8|0|55275.02271543|55276.94144233|55276.01186953||||4.73999977|8|0|55275.02271543|55276.94144233|55275.99942711|-7|-51|21|0|1|0||||||||||||||||||||||||||912354310|0.509|56.5|1|16.153|0.109|15.671|0.131|15.16||2403089401241004387|1|-0.0007347178883363|-0.0010972224246508|-0.999999128145908|121000000|
+J224252.04-895527.4|340.7168485|-89.9242914|0.9982|0.9136|-0.1925|302.9772001|-27.1922536|270.1794702|-66.5356045|2113.454|539.122|89401241005700|0000m894_ab41-005700|0000m894_ab41|5700|17.618|0.181|6.0|0.851199985|17.282|0.452|2.4|0.877799988|13.127|0.507|2.1|1.06400001|9.174|0.35|3.1|0.99940002|0.943599999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCCB|15|0000|1|25|0|25|0|24|0|24|26.07|26.616|25.147|25.193|0.0|0.0|0.0|0.0|0||0||0||0||14.2180004|2.37610006|9.374|2.806|0.032|7.71490002|3.21519995|21.737|3.321|0.102|88.961998|41.5690002|1099.177|24.163|2.959|33.9119987|10.9379997|298.585|9.526|0.494|16.603|0.225|1|0.261|15.797|0.261|1|0.319|12.334||32|0.825|8.892||32|0.576|17.525|0.295|1|16.947|0.401|1|13.513||32|9.86||32|16.864|0.225|1|16.116|0.261|1|13.159||32|9.468||32|16.397|0.19|1|15.535|0.199|1|12.906||32|9.025||32|16.047|0.17|1|15.122|0.169|1|12.626||32|8.662||32|15.754|0.157|1|14.816|0.154|1|12.366||32|8.366||32|15.501|0.147|1|14.603|0.149|1|12.159||32|8.1||32|15.305|0.143|1|14.457|0.152|1|11.986||32|7.856||32|15.136|0.14|1|14.32|0.154|1|11.801||32|7.649||32|17.615|0.857|0.171|3.092|22|0|55275.28745078|55277.33835439|55276.25865158|17.312|2.192|0.438|2.07999992|16|0|55275.28745078|55277.33835439|55276.25865158|12.417|1.074|0.219|2.63899994|15|0|55275.28745078|55277.33835439|55276.24398629|9.117|1.489|0.304|4.61600018|17|0|55275.28745078|55277.33835439|55276.24398629|0|5|12|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005700|1|0.0012472323780469|-0.0004363628665467|-0.999999126999041|131000000|
+J090358.07-895527.0|135.9919754|-89.924177|0.973|0.9381|-0.295|302.8605991|-27.0866953|269.8626091|-66.6133276|1993.929|543.036|1201089401241005212|1201m894_ab41-005212|1201m894_ab41|5212|17.4|0.176|6.2|0.869400024|17.017|0.379|2.9|0.924199998|12.46|0.3|3.6|1.10099995|9.126||0.6|1.04799998|0.979099989|1|0|0.0|0.0|0.0|0.006|0000|0000|0|nnnn|BCBU|7|0000|1|21|0|21|1|20|1|20|21.289|21.381|20.233|20.839|0.0|0.0|0.0|0.0|0||0||0||0||17.3780003|2.82340002|9.424|2.855|0.047|9.84840012|3.43470001|21.796|3.306|0.111|164.449997|45.4700012|1096.998|24.211|1.648|8.63389969|13.408|298.16|9.774|0.534|17.018|0.482|1|0.261|16.431|0.533|1|0.319|11.948||32|0.825|8.516||32|0.576|17.665|0.502|0|16.447||32|13.252||32|9.531||32|17.279|0.482|1|16.75|0.533|1|12.773||32|9.092||32|16.38||32|15.739||32|13.131|0.514|1|8.828||32|16.182||32|15.556||32|12.723|0.436|1|8.561||32|16.635|0.514|1|15.396||32|12.365|0.378|1|8.314||32|16.238|0.42|1|15.226||32|12.069|0.339|1|8.067||32|15.927|0.368|1|15.025||32|11.848|0.322|1|7.862||32|15.697|0.342|1|15.528|0.529|1|11.682|0.317|1|7.735||32|17.366|0.842|0.184|2.668|17|0|55275.02271543|55276.94144233|55276.01834588|16.856|1.21|0.264|2.9000001|17|0|55275.02271543|55276.94144233|55276.01834588|12.452|2.032|0.454|3.648|14|0|55275.02271543|55276.94144233|55275.98873224|10.038|5.171|1.156|4.86800003|9|0|55275.02271543|55276.94144233|55275.98873224|6|-2|-75|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241005212|1|-0.0009518175067624|0.0009194171407055|-0.999999124357394|111000000|
+J114933.04-895526.7|177.3877047|-89.9241061|0.1524|0.1448|0.0258|302.9091827|-27.055011|269.8093774|-66.5640522|2058.014|550.465|1802089401241003951|1802m894_ab41-003951|1802m894_ab41|3951|14.497|0.031|34.6|1.36300004|14.591|0.058|18.6|1.06299996|13.008||-0.2|1.05700004|9.408||-1.6|0.908299983|1.09899998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|21|21|15|20|0|20|0|20|21.788|20.877|21.467|21.514|0.0|0.0|0.0|0.0|0||0||0||0||251.899994|7.29080009|9.413|2.776|0.348|91.9300003|4.9369998|21.823|3.459|0.131|-7.46740007|49.6459999|1094.377|25.213|3.46|-21.4610004|13.6669998|298.289|10.033|1.652|14.383|0.03|0|0.261|14.45|0.087|0|0.319|12.377||32|0.825|8.804||32|0.576|15.07|0.032|0|15.274|0.097|0|13.589||32|9.812||32|14.644|0.03|0|14.769|0.087|0|13.202||32|9.38||32|14.447|0.032|0|14.522|0.089|0|12.924||32|9.038||32|14.36|0.037|0|14.417|0.099|0|12.694||32|8.741||32|14.327|0.042|0|14.398|0.117|0|12.491||32|8.48||32|14.301|0.049|1|14.4|0.138|1|12.314||32|8.246||32|14.232|0.053|1|14.362|0.154|1|12.15||32|8.029||32|14.042|0.051|1|14.205|0.154|1|11.995||32|7.83||32|14.504|0.067|0.015|0.423|20|0|55274.89041135|55276.94144233|55275.96793221|14.561|0.209|0.047|0.801999986|19|0|55274.89041135|55276.94144233|55276.00195628|13.263|2.977|0.666|2.8499999|9|0|55274.89041135|55276.94144233|55275.93579789||||1.84099996|7|0|55274.89041135|55276.94144233|55275.93579789|11|26|-74|0|0|1||||||||||||||||||||||||||853287764|0.235|-173.2|1|15.033|0.055|14.709|0.085|14.394|0.111|1802089401241003951|1|-0.0013232208240481|0.0000603716488047|-0.999999122720573|111000000|
+J033838.25-895526.7|54.6594022|-89.9240973|0.8448|0.8851|0.2831|302.8750422|-27.1847286|270.1106512|-66.6225859|1885.888|466.979|89401241005937|0000m894_ab41-005937|0000m894_ab41|5937|18.856||-4.4|0.882099986|17.454||-1.6|0.864199996|11.708|0.144|7.6|1.08000004|9.022|0.326|3.3|1.13999999|0.987200022|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nn1n|UUBB|12|0000|0|24|0|23|5|23|1|23|23.729|22.886|22.867|22.729|0.0|0.0|0.0|0.0|129|D|129|D|0||0||-9.92109966|2.2736001|9.341|2.773|0.031|-5.37020016|3.29049993|21.731|3.33|0.118|328.589996|43.5130005|1100.534|23.395|0.77|39.0299988|11.7049999|298.137|9.346|1.159|17.898||32|0.261|15.791||32|0.319|12.111|0.485|0|0.825|8.514||32|0.576|18.519||32|16.474||32|12.751||32|9.524||32|18.159||32|16.11||32|12.936|0.485|0|9.09||32|17.891||32|15.838||32|12.528|0.428|0|8.745||32|17.663||32|15.609||32|12.259|0.413|0|8.453||32|17.456||32|15.404||32|12.077|0.422|0|8.191||32|17.272||32|15.224||32|11.922|0.432|1|7.956||32|17.105||32|15.059||32|11.771|0.438|1|7.741||32|16.587||32|14.91||32|11.612|0.434|1|7.541||32||||1.892|2|0|55275.28745078|55277.33835439|55276.29362153||||1.08099997|6|0|55275.28745078|55277.33835439|55276.2654554|11.485|0.687|0.143|4.33199978|19|1|55275.28745078|55277.33835439|55276.27983905|9.414|1.686|0.352|5.33799982|17|0|55275.28745078|55277.33835439|55276.27983905|-16|15|-50|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005937|1|0.0007662838023901|0.0010806370209838|-0.999999122515997|101000000|
+J210314.15-895526.6|315.8089638|-89.9240739|0.3511|0.3395|-0.092|303.0035315|-27.1694344|270.1365707|-66.5077249|1995.385|543.724|3004089401241004641|3004m894_ab41-004641|3004m894_ab41|4641|16.227|0.062|17.5|0.848200023|16.073|0.15|7.3|0.845099986|12.939|0.404|2.7|1.09200001|9.542||0.2|0.967899978|0.935199976|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABCU|7|0000|17|25|2|25|1|24|0|24|24.542|23.714|23.819|23.718|0.0|0.0|0.0|0.0|0||0||0||0||51.2010002|2.92330003|9.368|2.809|0.586|23.4939995|3.23729992|21.759|3.186|0.055|105.800003|39.3339996|1096.018|23.961|1.253|1.78240001|11.1920004|298.563|9.566|1.236|15.634|0.117|1|0.261|15.551|0.191|1|0.319|12.554||32|0.825|9.034||32|0.576|16.487|0.145|0|16.509|0.248|0|13.739||32|10.03||32|15.895|0.117|1|15.87|0.191|1|13.379||32|9.61||32|15.295|0.087|1|15.238|0.138|1|13.095||32|9.284||32|14.5|0.052|1|14.464|0.084|1|12.864||32|9.009||32|13.689|0.03|1|13.722|0.052|1|12.659||32|8.768||32|13.086|0.021|1|13.175|0.037|1|12.478||32|8.552||32|12.758|0.018|1|12.865|0.032|1|12.315||32|8.354||32|12.621|0.018|1|12.721|0.032|1|12.163||32|8.171||32|16.213|0.356|0.071|3.308|24|1|55275.28745078|55277.33835439|55276.25865158|16.075|0.772|0.154|3.29699993|23|0|55275.28745078|55277.33835439|55276.25865158|12.809|2.366|0.483|4.1789999|16|0|55275.28745078|55277.33835439|55276.24398629|11.356|||4.41300011|9|0|55275.28745078|55277.33835439|55276.24398629|-10|-15|-63|0|0|1|||||||||||||||||||||||||||||0|||||||3004089401241004641|1|0.0009501658742338|-0.0009237067549728|-0.999999121974936|131000000|
+J010326.29-895526.6|15.8595767|-89.9240609|0.2829|0.2749|0.0775|302.9274473|-27.2039914|270.1837947|-66.5813541|1993.661|543.278|89401241004648|0000m894_ab41-004648|0000m894_ab41|4648|15.899|0.052|20.9|0.970099986|15.585|0.109|9.9|0.979399979|12.523|0.304|3.6|1.02699995|8.928||1.6|0.957799971|0.980400026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|ABBU|7|0000|20|22|4|22|1|21|0|21|22.758|22.772|21.839|21.706|0.0|0.0|0.0|0.0|0||0||0||0||69.2600021|3.30830002|9.378|2.697|0.034|36.8300018|3.7032001|21.799|3.332|0.007|155.210007|43.4309998|1099.354|23.366|0.0|19.1819992|11.6709995|298.645|9.448|0.503|15.779|0.138|1|0.261|15.246|0.166|1|0.319|11.884||32|0.825|8.535||32|0.576|16.421|0.14|1|16.082|0.191|1|13.26||32|9.657||32|16.04|0.138|1|15.565|0.166|1|12.709||32|9.111||32|15.745|0.136|1|15.201|0.153|1|12.34||32|8.748||32|15.243|0.106|1|14.746|0.125|1|12.078||32|8.507||32|14.569|0.069|1|14.222|0.094|1|11.88||32|8.191||32|13.985|0.048|1|13.76|0.072|1|11.687||32|7.87||32|13.605|0.039|1|13.414|0.061|1|12.183|0.514|1|7.652||32|13.374|0.037|1|13.162|0.056|1|11.833|0.428|1|7.47||32|15.877|0.225|0.048|1.383|21|1|55275.28745078|55277.33835439|55276.28283929|15.64|0.55|0.117|2.46199989|20|1|55275.28745078|55277.33835439|55276.28283929|12.282|1.383|0.302|3.704|14|0|55275.28745078|55277.33835439|55276.26723075|10.184|3.578|0.781|3.204|13|0|55275.28745078|55277.33835439|55276.26723075|-6|-39|69|0|1|1|||||||||||||||||||||||||||||0|||||||89401241004648|1|0.0012749354900623|0.0003622026430557|-0.999999121673985|101000000|
+J165724.38-895526.4|254.3516134|-89.9240023|0.0882|0.0866|-0.0082|303.0069299|-27.0918643|269.9486172|-66.4875196|1999.913|545.103|2403089401241003955|2403m894_ab41-003955|2403m894_ab41|3955|12.719|0.024|45.5|1.097|12.755|0.025|43.8|0.905399978|12.601|0.395|2.8|1.11899996|9.34||-0.4|1.08700001|1.04799998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AACU|7|0000|21|21|21|21|1|20|0|20|22.444|22.652|22.182|21.986|0.0|0.0|0.0|0.0|0||0||0||0||1295.0|28.4909992|9.509|2.73|0.0|498.779999|11.3979998|21.78|3.439|0.0|144.410004|52.4780006|1096.832|25.677|4.656|-5.31190014|14.552|298.764|10.172|1.252|12.699|0.009|0|0.261|12.743|0.016|0|0.319|12.296|0.457|0|0.825|8.982||32|0.576|13.33|0.01|0|13.502|0.018|0|12.956||32|9.975||32|12.96|0.009|0|13.062|0.016|0|13.121|0.457|0|9.558||32|12.824|0.01|0|12.892|0.017|0|12.829|0.45|0|9.23||32|12.77|0.011|0|12.826|0.02|0|12.699|0.494|0|8.959||32|12.747|0.012|1|12.797|0.023|1|11.864||32|8.718||32|12.732|0.013|1|12.778|0.026|1|11.745||32|8.5||32|12.71|0.015|1|12.748|0.029|1|11.636||32|8.302||32|12.671|0.016|1|12.697|0.032|1|11.538||32|8.118||32|12.715|0.034|0.008|0.135|20|0|55275.02271543|55276.94144233|55276.1128427|12.757|0.065|0.014|0.219999999|20|0|55275.02271543|55276.94144233|55276.1128427|12.076|1.085|0.243|3.86599994|14|0|55275.02271543|55276.94144233|55276.08795391||||1.73599994|8|0|55275.02271543|55276.94144233|55276.08795391|9|45|-25|0|1|0||||||||||||||||||||||||||12004537|0.505|13.5|1|13.346|0.026|12.917|0.031|12.813|0.032|2403089401241003955|1|-0.0003577767489398|-0.0012772469138408|-0.999999120317673|121000000|
+J220847.09-895526.2|332.1962243|-89.9239487|0.7157|0.6475|-0.1941|302.9876263|-27.1858343|270.1688762|-66.5251442|2140.872|528.153|89401241005305|0000m894_ab41-005305|0000m894_ab41|5305|17.132|0.12|9.0|0.887399971|16.773|0.281|3.9|1.02699995|12.987|0.444|2.4|1.07000005|9.072||1.2|0.997099996|0.99150002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBCU|7|0000|3|25|0|25|0|24|0|24|24.954|24.906|24.1|24.278|0.0|0.0|0.0|0.0|0||0||0||0||22.2520008|2.46630001|9.352|2.752|0.163|12.3240004|3.19460011|21.781|3.247|0.179|101.169998|41.4169998|1098.316|24.338|0.0|14.2080002|11.5220003|298.653|9.65|0.89|16.913|0.312|0|0.261|16.135||32|0.319|12.065||32|0.825|8.274||32|0.576|17.486|0.301|0|16.701||32|13.273||32|9.436||32|17.174|0.312|0|16.454||32|12.89||32|8.85||32|17.046|0.358|1|16.321||32|12.588||32|8.444||32|16.676|0.315|1|15.976||32|12.321||32|8.139||32|16.094|0.223|1|16.147|0.488|1|12.05||32|7.859||32|15.538|0.158|1|15.407|0.292|1|11.803||32|7.644||32|15.007|0.113|1|14.795|0.193|1|11.607||32|7.489||32|14.389|0.074|1|14.19|0.127|1|11.455||32|7.364||32|17.269|0.613|0.123|2.85|22|0|55275.28745078|55277.33835439|55276.25865158|16.836|1.95|0.39|2.94899988|17|0|55275.28745078|55277.33835439|55276.25865158|12.675|2.007|0.41|3.97099996|15|0|55275.28745078|55277.33835439|55276.24398629|9.671|2.821|0.576|2.16700006|13|0|55275.28745078|55277.33835439|55276.24398629|5|-8|44|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005305|1|0.0011741032140988|-0.0006191332825653|-0.999999119077423|131000000|
+J185155.57-895526.1|282.9815551|-89.9239245|0.2591|0.2705|-0.0753|303.0173952|-27.1282926|270.0428345|-66.4865718|2107.827|542.009|3004089401241004462|3004m894_ab41-004462|3004m894_ab41|4462|15.774|0.048|22.6|0.917599976|15.888|0.139|7.8|1.01499999|12.82||0.6|0.86500001|9.517||-1.9|0.978399992|0.941399992|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|21|21|3|21|0|20|0|20|22.298|21.948|21.798|22.057|0.0|0.0|0.0|0.0|0||0||0||0||77.6740036|3.43319988|9.339|2.662|0.0|27.8509998|3.5769999|21.756|3.288|0.0|25.948|46.0320015|1097.55|24.746|2.726|-23.1630001|12.3649998|298.691|9.675|1.293|15.566|0.087|0|0.261|15.589|0.209|0|0.319|12.732||32|0.825|8.906||32|0.576|16.262|0.094|0|16.401|0.239|0|13.913||32|9.92||32|15.827|0.087|0|15.908|0.209|0|13.557||32|9.482||32|15.613|0.093|0|15.66|0.215|0|13.275||32|9.138||32|15.489|0.102|1|15.5|0.229|1|13.045||32|8.845||32|15.393|0.113|1|15.393|0.251|1|12.837||32|8.584||32|15.281|0.12|1|15.299|0.271|1|12.657||32|8.349||32|15.14|0.123|1|15.176|0.281|1|12.494||32|8.134||32|14.983|0.122|1|15.035|0.284|1|12.344||32|7.935||32|15.777|0.216|0.047|0.929|20|0|55275.28745078|55277.20605032|55276.21681103|15.749|0.638|0.139|2.92000008|18|0|55275.28745078|55277.20605032|55276.21681103|13.762|4.678|1.046|2.08599997|7|0|55275.28745078|55277.20605032|55276.19712065||||2.04299998|8|0|55275.28745078|55277.20605032|55276.19712065|0|67|81|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004462|1|0.0002982664032869|-0.0012938338816163|-0.999999118515131|131000000|
+J003049.46-895524.9|7.7061008|-89.9236008|1.0192|0.8694|0.1993|302.9396319|-27.2042465|270.1904086|-66.570838|2021.173|550.244|89401241004984|0000m894_ab41-004984|0000m894_ab41|4984|17.675|0.207|5.2|0.838199973|17.42||-0.2|0.935100019|11.976|0.191|5.7|1.03199995|9.056|0.322|3.4|0.972000003|0.937600017|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBB|13|0000|1|22|0|22|2|20|1|21|22.567|22.804|21.963|22.403|0.0|0.0|0.0|0.0|0||0||0||0||13.4949999|2.57340002|9.324|2.733|0.0|-0.76473999|3.39479995|21.753|3.33|0.153|256.720001|45.2540016|1099.247|23.135|1.571|37.8230019|11.2229996|298.706|9.644|1.304|16.658||32|0.261|16.031||32|0.319|11.756||32|0.825|11.44||32|0.576|17.29||32|16.718||32|12.992||32|9.766||32|16.919||32|16.35||32|12.581||32|12.016||32|16.645||32|16.07||32|12.4||32|9.237||32|16.301||32|15.834||32|12.33||32|8.955||32|16.44|0.372|1|15.631||32|12.268||32|8.606||32|15.881|0.262|1|15.304||32|12.328||32|8.217||32|15.451|0.205|1|14.982||32|12.088||32|7.867||32|15.068|0.166|1|14.663||32|11.934||32|7.594||32|17.643|0.834|0.178|2.235|17|0|55275.28745078|55277.33835439|55276.34599308|19.036|||3.54699993|13|0|55275.28745078|55277.33835439|55276.34599308|11.782|0.655|0.146|2.14299989|17|0|55275.28745078|55277.33835439|55276.29967857|9.389|1.868|0.408|5.53800011|14|0|55275.28745078|55277.33835439|55276.33339187|42|-47|47|1|1|1|||||||||||||||||||||||||||||0|||||||89401241004984|1|0.0013213745115708|0.0001788001171516|-0.999999110999564|101000000|
+J102340.46-895524.7|155.9185858|-89.9235409|0.1588|0.1477|-0.0197|302.880313|-27.0670366|269.824293|-66.5918086|2130.563|534.379|1802089401241003996|1802m894_ab41-003996|1802m894_ab41|3996|14.759|0.033|32.7|0.997300029|14.482|0.051|21.4|0.876900017|11.548|0.149|7.3|1.09099996|9.129||0.5|0.922200024|0.968699992|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABU|7|0000|21|21|19|21|2|20|0|20|20.777|20.611|19.93|20.041|0.0|0.0|0.0|0.0|0||0||0||0||197.929993|6.05749989|9.36|2.827|0.047|101.709999|4.74739981|21.806|3.402|0.057|380.769989|52.0849991|1097.744|25.779|0.0|6.56339979|14.3959999|298.643|10.166|0.919|14.608|0.033|0|0.261|14.429|0.092|0|0.319|10.93||32|0.825|8.277||32|0.576|15.279|0.036|0|15.181|0.099|0|12.163||32|9.818||32|14.869|0.033|0|14.748|0.092|0|11.755||32|8.853||32|14.726|0.037|0|14.621|0.106|0|11.538||32|8.509||32|14.681|0.044|0|14.628|0.132|0|11.443||32|8.215||32|14.674|0.052|1|14.689|0.168|1|11.42||32|7.956||32|14.682|0.062|1|14.761|0.212|1|12.053||32|7.719||32|14.665|0.071|1|14.809|0.258|1|11.309||32|7.505||32|14.615|0.078|1|14.826|0.301|1|11.156||32|7.305||32|14.758|0.079|0.017|0.29|20|0|55274.89041135|55276.94144233|55275.96793221|14.467|0.175|0.038|1.13399994|20|0|55274.89041135|55276.94144233|55275.96793221|11.463|0.423|0.095|2.60899997|19|0|55274.89041135|55276.94144233|55275.93579789|10.677|6.5|1.453|2.19400001|9|0|55274.89041135|55276.94144233|55275.93579789|-18|-54|-5|0|2|0|||||||||||||||||||||||||||||0|||||||1802089401241003996|1|-0.0012183204716878|0.000544506871432|-0.999999109603351|111000000|
+J013358.82-895524.5|23.4950877|-89.9234992|0.5067|0.4965|0.1516|302.916041|-27.2033421|270.1765926|-66.5911083|1968.144|535.712|89401241005248|0000m894_ab41-005248|0000m894_ab41|5248|16.611|0.088|12.3|1.10899997|16.405|0.217|5.0|1.01900005|12.975|0.456|2.4|1.10699999|9.179||0.9|1.01300001|1.05900002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|7|22|2|22|0|21|0|21|22.564|22.955|22.297|22.53|0.0|0.0|0.0|0.0|0||0||0||0||35.9329987|2.92610002|9.374|2.733|0.612|17.2980003|3.45770001|21.791|3.363|0.336|102.300003|42.9490013|1098.68|23.016|2.324|10.6199999|11.5640001|298.422|9.435|1.127|15.786|0.151|1|0.261|15.58|0.309|1|0.319|12.02||32|0.825|8.718||32|0.576|16.711|0.201|1|16.604|0.427|1|13.203||32|9.808||32|16.047|0.151|1|15.899|0.309|1|12.845||32|9.294||32|15.553|0.124|1|15.384|0.249|1|12.564||32|8.902||32|15.14|0.105|1|14.98|0.213|1|12.329||32|8.581||32|14.778|0.091|1|14.654|0.19|1|12.13||32|8.287||32|14.404|0.076|1|14.322|0.165|1|11.949||32|7.993||32|13.932|0.057|1|13.874|0.127|1|11.785||32|7.758||32|13.272|0.036|1|13.211|0.08|1|11.633||32|7.576||32|16.629|0.434|0.092|1.261|21|0|55275.28745078|55277.33835439|55276.28283929|16.47|1.256|0.268|1.66100001|15|0|55275.28745078|55277.33835439|55276.28283929|12.672|1.511|0.33|4.0539999|13|0|55275.28745078|55277.33835439|55276.26723075|10.377|5.324|1.162|2.98300004|11|0|55275.28745078|55277.33835439|55276.26723075|2|-32|53|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005248|1|0.001224495127335|0.0005323008080597|-0.999999108633369|101000000|
+J110349.43-895524.4|165.9559681|-89.9234695|1.0828|0.9616|0.1639|302.8930301|-27.0599035|269.8132164|-66.5791693|2097.561|546.158|1802089401241005086|1802m894_ab41-005086|1802m894_ab41|5086|17.318|0.166|6.5|0.899600029|17.177||0.4|0.979799986|12.868|0.469|2.3|1.10399997|9.461||-0.9|0.981899977|0.988799989|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|2|21|0|21|1|20|0|20|20.805|20.632|19.938|19.608|0.0|0.0|0.0|0.0|0||0||0||0||18.7390003|2.87059999|9.399|2.863|0.5|1.35979998|3.56960011|21.791|3.397|0.067|112.889999|48.7960014|1095.328|24.909|3.323|-11.7969999|13.0240002|298.152|9.816|0.476|16.782||32|0.261|16.615||32|0.319|12.428|0.404|1|0.825|8.789||32|0.576|17.858|0.42|0|17.123||32|13.867|0.511|0|9.795||32|17.043||32|16.934||32|13.253|0.404|1|9.365||32|17.038||32|16.703||32|12.901|0.377|1|9.023||32|16.979||32|16.336||32|12.739|0.398|1|8.73||32|16.799||32|15.963||32|12.68|0.449|1|8.472||32|16.639||32|15.677||32|12.635|0.503|1|8.238||32|16.551||32|15.469||32|11.821||32|8.023||32|16.754||32|15.265||32|11.721||32|7.825||32|17.23|0.589|0.129|1.997|18|0|55274.89041135|55276.94144233|55275.96793221|19.1|||3.16100001|10|0|55274.89041135|55276.94144233|55275.96793221|12.268|1.38|0.308|3.29200006|11|0|55274.89041135|55276.94144233|55275.93579789||||2.50300002|6|0|55274.89041135|55276.94144233|55275.93579789|22|-13|83|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005086|1|-0.0012957832018289|0.0003241329574605|-0.999999107941462|111000000|
+J125225.51-895523.6|193.1063258|-89.9232289|0.7638|0.7025|0.2186|302.9322875|-27.051386|269.8121594|-66.5431879|2003.366|547.996|1802089401241005183|1802m894_ab41-005183|1802m894_ab41|5183|17.223|0.127|8.5|0.916499972|16.765|0.292|3.7|0.952099979|12.863|0.428|2.5|1.20599997|9.26||0.4|0.938399971|0.999000013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BBCU|7|0000|4|24|1|23|1|23|0|23|23.635|23.638|22.744|22.873|0.0|0.0|0.0|0.0|0||0||0||0||20.4570007|2.39989996|9.476|2.623|0.181|12.4219999|3.33969998|21.862|3.256|0.073|113.400002|44.6640015|1095.475|24.817|4.127|5.09639978|13.1140003|298.663|10.113|1.737|16.761||32|0.261|15.904||32|0.319|11.818||32|0.825|10.44||32|0.576|17.164||32|16.561||32|12.977||32|9.68||32|17.022||32|16.223||32|12.643||32|11.016||32|17.137||32|16.072||32|12.362||32|9.068||32|16.902||32|15.989||32|12.128||32|8.773||32|16.706||32|15.95||32|11.932||32|8.513||32|16.524||32|16.86||32|11.751||32|8.277||32|16.36||32|15.812||32|11.587||32|8.06||32|16.206||32|15.659||32|11.433||32|7.861||32|17.256|0.872|0.178|3.169|20|1|55274.89041135|55276.94144233|55275.98210006|16.751|1.705|0.355|3.23000002|16|0|55274.89041135|55276.94144233|55275.95765212|12.59|1.568|0.327|4.80900002|12|1|55274.89041135|55276.94144233|55275.95477317|9.824|2.634|0.549|3.07399988|10|0|55274.89041135|55276.94144233|55275.95477317|-24|-35|0|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005183|1|-0.0013050049721721|-0.0003038360562926|-0.999999102322434|121000000|
+J080933.39-895523.0|122.3891436|-89.923077|0.4424|0.4454|-0.1425|302.8504759|-27.1024179|269.8961401|-66.6256307|2040.259|553.274|1201089401241004785|1201m894_ab41-004785|1201m894_ab41|4785|16.523|0.082|13.3|0.852800012|16.127|0.167|6.5|0.986199975|12.546|0.327|3.3|0.875199974|9.522||-0.1|1.15900004|0.963800013|1|0|0.0|0.0|0.0|0.002|0000|0000|0|0nnn|ABBU|7|0000|12|22|2|22|1|21|0|21|22.646|22.734|22.022|21.503|0.0|0.0|0.0|0.0|0||0||0||0||38.9669991|2.92529988|9.407|2.77|0.132|22.3360004|3.44269991|21.822|3.346|0.111|151.880005|45.7330017|1098.133|24.663|3.549|-1.35810006|12.302|297.848|9.792|0.884|16.17|0.128|1|0.261|15.388|0.135|1|0.319|12.119||32|0.825|8.494||32|0.576|16.933|0.144|1|16.375|0.178|1|13.49||32|9.51||32|16.431|0.128|1|15.707|0.135|1|12.944||32|9.07||32|16.032|0.114|1|15.214|0.111|1|12.489||32|8.726||32|15.64|0.099|1|14.817|0.096|1|12.794|0.474|1|8.622||32|15.323|0.089|1|14.528|0.089|1|12.405|0.401|1|8.066||32|15.122|0.087|1|14.336|0.088|1|12.156|0.376|1|7.863||32|15.012|0.092|1|14.206|0.09|1|11.987|0.375|1|7.719||32|14.915|0.096|1|14.096|0.094|1|11.824|0.372|1|7.519||32|16.497|0.409|0.087|1.75|21|1|55275.02271543|55276.94144233|55275.97309574|16.124|0.992|0.211|2.63599992|17|0|55275.02271543|55276.94144233|55275.97309574|12.25|1.1|0.24|2.44700003|13|0|55275.02271543|55276.94144233|55275.94273751|11.017|8.286|1.808|3.15499997|9|0|55275.02271543|55276.94144233|55275.94273751|9|-7|-23|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004785|1|-0.0007191644950379|0.0011336966714025|-0.999999098766737|111000000|
+J012356.63-895521.3|20.9859722|-89.9226108|0.3403|0.3351|0.0913|302.9196158|-27.2047679|270.1818513|-66.5883198|1975.429|541.202|89401241004766|0000m894_ab41-004766|0000m894_ab41|4766|16.056|0.06|18.1|0.964900017|16.118|0.174|6.3|0.88410002|12.471||1.7|1.07299995|9.49|0.481|2.3|1.03799999|0.985499978|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUC|11|0000|15|22|2|22|1|21|0|21|22.664|22.615|22.239|22.114|0.0|0.0|0.0|0.0|0||0||0||0||59.9129982|3.3118999|9.374|2.71|0.022|22.5380001|3.60380006|21.839|3.392|0.0|75.0839996|43.8339996|1100.647|23.973|1.781|25.3409996|11.2259998|298.651|9.3|0.326|15.805|0.15|1|0.261|15.677|0.304|1|0.319|12.183||32|0.825|8.664||32|0.576|16.561|0.169|1|16.575|0.369|1|13.378||32|9.664||32|16.066|0.15|1|15.996|0.304|1|13.008||32|9.24||32|15.694|0.139|1|15.635|0.284|1|12.721||32|8.949||32|15.368|0.127|1|15.305|0.259|1|12.489||32|8.617||32|15.092|0.119|1|15.012|0.238|1|12.287||32|8.303||32|14.856|0.113|1|14.792|0.229|1|12.108||32|8.046||32|14.641|0.108|1|14.599|0.224|1|11.942||32|7.837||32|14.401|0.099|1|14.375|0.209|1|11.791||32|7.658||32|16.039|0.284|0.061|1.285|21|0|55275.28745078|55277.33835439|55276.28283929|16.041|0.866|0.185|2.50099993|17|0|55275.28745078|55277.33835439|55276.28283929|12.814|2.091|0.456|2.87199998|11|0|55275.28745078|55277.33835439|55276.26723075|9.752|1.893|0.413|4.16300011|14|0|55275.28745078|55277.33835439|55276.26723075|39|-5|-29|1|0|0||||||||||||||||||||||||||1161249425|0.74|101.9|1|16.346|0.126|16.053||15.369|0.202|89401241004766|1|0.0012611010291514|0.0004837371112165|-0.999999087810885|101000000|
+J233640.21-895520.7|354.16756|-89.9224293|0.111|0.1122|0.0159|302.9598672|-27.2016329|270.1939387|-66.5527064|2068.633|554.066|89401241004242|0000m894_ab41-004242|0000m894_ab41|4242|13.942|0.026|41.4|1.01100004|14.017|0.038|28.6|0.914399981|12.897|0.421|2.6|1.00300002|9.236||0.6|0.992900014|0.976899981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AACU|7|0000|23|23|22|23|0|21|0|22|25.824|25.868|25.134|25.053|0.0|0.0|0.0|0.0|0||0||0||0||419.950012|10.1330004|9.312|2.742|0.0|156.009995|5.44859982|21.762|3.297|0.072|109.910004|42.6619987|1099.188|23.377|0.0|7.69460011|12.1619997|298.906|9.753|0.509|13.953|0.023|0|0.261|14.062|0.051|0|0.319|12.051||32|0.825|8.979||32|0.576|14.567|0.024|0|14.787|0.053|0|13.24||32|9.992||32|14.214|0.023|0|14.381|0.051|0|12.876||32|9.555||32|14.1|0.027|0|14.265|0.059|0|12.591||32|9.383||32|14.063|0.032|1|14.263|0.073|1|12.357||32|8.83||32|14.05|0.038|1|14.304|0.09|1|12.158||32|8.475||32|14.037|0.044|1|14.352|0.111|1|11.977||32|8.148||32|14.016|0.05|1|14.394|0.135|1|11.814||32|7.909||32|13.978|0.055|1|14.409|0.157|1|11.661||32|7.717||32|13.943|0.066|0.014|0.244|22|0|55275.28745078|55277.33835439|55276.3344836|14.01|0.125|0.026|0.569999993|22|0|55275.28745078|55277.33835439|55276.3344836|12.78|1.733|0.378|5.38600016|11|0|55275.28745078|55277.33835439|55276.2892784|10.224|3.921|0.836|4.27899981|11|0|55275.28745078|55277.33835439|55276.32193202|10|67|-25|0|2|0||||||||||||||||||||||||||1329023254|0.133|17.5|1|14.635|0.033|14.186|0.042|13.926|0.053|89401241004242|1|0.0013468549669207|-0.0001375790198206|-0.999999083526436|131000000|
+J024024.60-895520.5|40.1025198|-89.9223815|1.5214|1.4983|0.5825|302.8919683|-27.1971592|270.1495548|-66.6106363|1977.6|161.409|2403089401241005861|2403m894_ab41-005861|2403m894_ab41|5861|18.811||-2.2|0.8495|17.473||-1.2|0.98180002|12.162|0.209|5.2|1.13|9.572||-0.5|1.01699996|0.991100013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|0|24|2|23|0|23|23.397|23.757|22.877|22.83|0.0|0.0|0.0|0.0|0||0||0||0||-5.10340023|2.36879992|9.318|2.788|0.134|-3.74670005|3.23449993|21.746|3.272|0.061|216.279999|41.6870003|1099.323|22.793|2.135|-5.61180019|11.7539997|298.759|9.65|0.458|15.98|0.1|1|0.261|15.598||32|0.319|11.52||32|0.825|8.644|0.392|1|0.576|17.457|0.22|1|16.696||32|12.837||32|9.31||32|16.241|0.1|1|15.917||32|12.345||32|9.22|0.392|1|15.166|0.049|1|15.406|0.228|1|11.922||32|8.636|0.312|1|14.171|0.025|1|14.346|0.107|1|12.239|0.476|1|8.288|0.294|1|13.351|0.015|1|13.54|0.062|1|11.816|0.389|1|8.089|0.308|1|12.814|0.012|1|13.011|0.045|1|11.48|0.337|1|7.937|0.33|1|12.516|0.011|1|12.712|0.04|1|11.249|0.316|1|7.77|0.343|1|12.362|0.01|1|12.556|0.04|1|11.121|0.324|1|7.567|0.34|1||||2.508|10|0|55275.28745078|55277.33835439|55276.29362153||||2.87199998|12|0|55275.28745078|55277.33835439|55276.29362153|12.028|1.241|0.259|2.18000007|15|1|55275.28745078|55277.33835439|55276.27983905||||4.96899986|13|0|55275.28745078|55277.33835439|55276.27983905|40|-10|21|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005861|1|0.0010361985981859|0.0008726381301583|-0.999999082397159|101000000|
+J171733.31-895518.5|259.3888232|-89.9218255|0.4099|0.4528|0.026|303.012464|-27.0969981|269.9639222|-66.483867|1981.289|545.524|2403089401241004627|2403m894_ab41-004627|2403m894_ab41|4627|16.492|0.078|13.9|0.953599989|15.902|0.143|7.6|0.954900026|13.029||-1.4|0.896600008|9.499||-0.3|1.00899994|0.950600028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|ABUU|3|0000|11|21|4|21|0|20|0|20|22.285|21.915|21.444|21.99|0.0|0.0|0.0|0.0|0||0||0||0||40.105999|2.88739991|9.564|2.708|0.0|27.493|3.63100004|21.736|3.388|0.0|-65.7549973|48.6660004|1097.464|25.487|0.0|-3.61279988|12.5749998|298.416|9.676|1.034|15.932|0.145|0|0.261|15.363|0.143|0|0.319|12.514||32|0.825|8.808||32|0.576|16.757|0.175|0|16.337|0.187|0|13.701||32|9.794||32|16.193|0.145|0|15.682|0.143|0|13.339||32|9.384||32|15.843|0.137|1|15.285|0.128|1|13.052||32|9.021||32|15.537|0.128|1|14.972|0.119|1|12.821||32|8.644||32|15.147|0.107|1|14.615|0.103|1|12.618||32|8.256||32|14.596|0.076|1|14.169|0.081|1|12.439||32|7.898||32|13.947|0.049|1|13.659|0.059|1|12.273||32|8.321|0.496|1|13.335|0.033|1|13.179|0.044|1|12.124||32|8.043|0.447|1|16.475|0.155|0.034|1.468|20|0|55275.02271543|55276.94144233|55276.1128427|15.912|0.911|0.199|2.85700011|17|1|55275.02271543|55276.94144233|55276.1128427||||2.65799999|6|0|55275.02271543|55276.94144233|55276.08795391||||3.57800007|9|0|55275.02271543|55276.94144233|55276.08795391|27|-15|-15|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004627|1|-0.0002512453551705|-0.0013410707956178|-0.999999069202013|121000000|
+J044913.78-895517.6|72.3074375|-89.9215753|0.6168|0.683|0.1135|302.856004|-27.1680009|270.0600987|-66.6354127|2004.559|552.71|600089401241004876|0600m894_ab41-004876|0600m894_ab41|4876|17.243|0.136|8.0|0.898699999|16.122|0.158|6.9|0.96420002|12.444|0.288|3.8|1.046|9.473||-1.5|0.929799974|0.955500007|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|3|23|2|23|1|21|0|22|22.726|22.676|21.908|21.712|0.0|0.0|0.0|0.0|0||0||0||0||20.0750008|2.52270007|9.348|2.777|0.039|22.4419994|3.26900005|21.714|3.294|0.249|166.899994|44.2420006|1099.464|23.475|2.73|-19.698|12.8800001|299.604|9.836|1.299|16.673|0.256|0|0.261|15.653|0.223|0|0.319|11.878||32|0.825|8.959||32|0.576|17.428|0.289|0|16.554|0.271|0|13.07||32|9.972||32|16.934|0.256|0|15.972|0.223|0|12.703||32|9.535||32|16.491|0.22|0|15.538|0.194|0|12.421||32|9.192||32|15.882|0.156|1|15.084|0.158|1|12.189||32|8.899||32|15.095|0.091|1|14.55|0.117|1|11.984||32|8.639||32|14.206|0.048|1|13.929|0.078|1|11.804||32|8.403||32|13.418|0.027|1|13.333|0.053|1|11.64||32|8.187||32|12.887|0.02|1|12.89|0.04|1|11.488||32|7.988||32|17.224|0.787|0.164|2.606|19|1|55275.28745078|55277.20605032|55276.24819836|16.135|0.854|0.178|2.49300003|19|0|55275.28745078|55277.20605032|55276.24819836|12.116|1.112|0.243|2.91799998|13|0|55275.28745078|55277.20605032|55276.2010757||||1.99199998|6|0|55275.28745078|55277.20605032|55276.23172471|16|13|16|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004876|1|0.0004159814642125|0.0013040265895619|-0.999999063236599|101000000|
+J154153.65-895516.9|235.4735557|-89.9213709|0.2899|0.306|0.0753|302.991702|-27.0702782|269.8882541|-66.4958893|2065.559|557.137|2403089401241004408|2403m894_ab41-004408|2403m894_ab41|4408|15.911|0.053|20.5|0.923500001|16.152|0.169|6.4|0.91170001|13.059||-1.1|1.07000005|9.464||-1.0|0.936200023|0.955799997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|20|22|2|22|0|21|0|21|22.852|23.525|21.859|22.383|0.0|0.0|0.0|0.0|0||0||0||0||68.5049973|3.33699989|9.606|2.646|0.136|21.8339996|3.39669991|21.775|3.27|0.116|-52.4729996|47.375|1095.946|25.173|3.347|-12.4709997|12.9809999|298.697|9.995|1.091|15.995|0.247|1|0.261|15.877||32|0.319|12.279||32|0.825|8.98||32|0.576|16.623|0.248|1|16.346||32|13.467||32|9.982||32|16.256|0.247|1|16.196||32|13.104||32|9.556||32|16.062|0.268|1|16.207||32|12.822||32|9.221||32|15.965|0.303|1|15.975||32|12.591||32|8.935||32|16.002|0.377|1|15.774||32|12.39||32|8.685||32|15.472||32|15.594||32|12.212||32|10.114||32|15.58||32|15.429||32|12.048||32|8.251||32|15.678||32|15.277||32|11.896||32|8.058||32|15.906|0.213|0.045|0.978|21|0|55275.02271543|55276.94144233|55276.02720854|16.13|0.907|0.193|2.74499989|18|0|55275.02271543|55276.94144233|55276.02720854||||1.84899998|7|0|55275.02271543|55276.94144233|55275.99942711||||2.21799994|6|0|55275.02271543|55276.94144233|55275.99942711|-8|-5|-82|0|0|0||||||||||||||||||||||||||912339743|0.52|4.1|1|16.733|0.183|16.124|0.212|15.276|0.212|2403089401241004408|1|-0.0007778213164515|-0.001130618778892|-0.999999058347145|121000000|
+J182420.81-895516.9|276.0867357|-89.9213687|0.1674|0.1762|-0.0374|303.0196431|-27.118856|270.0208947|-66.4825195|2132.963|539.549|3004089401241004198|3004m894_ab41-004198|3004m894_ab41|4198|14.974|0.034|31.7|0.871699989|15.09|0.077|14.1|0.979600012|13.082||-0.1|0.970300019|9.45||-0.3|1.04100001|0.961300015|1|0|0.0|0.0|0.0|0.0|0000|h000|0|00nn|AAUU|3|0000|21|21|11|21|0|20|0|20|21.0|20.915|20.305|20.976|0.0|0.0|0.0|0.0|8|h|0||0||0||162.389999|5.12239981|9.34|2.726|0.106|58.0639992|4.10559988|21.766|3.383|0.073|-4.60489988|46.348999|1096.622|24.942|0.499|-4.21299982|13.1490002|298.667|9.637|0.965|14.681|0.025|0|0.261|14.737|0.089|0|0.319|12.271||32|0.825|8.621||32|0.576|15.427|0.029|0|15.597|0.104|0|14.178||32|9.755||32|14.942|0.025|0|15.056|0.089|0|13.096||32|9.197||32|14.568|0.023|0|14.601|0.076|0|12.666||32|8.812||32|14.024|0.018|1|13.944|0.051|1|12.242||32|8.558||32|13.209|0.011|1|13.077|0.028|1|11.833||32|8.355||32|12.298|0.008|1|12.215|0.016|1|12.102|0.441|1|8.194||32|11.531|0.006|1|11.527|0.011|1|11.646|0.336|1|8.01||32|11.026|0.006|1|11.063|0.009|1|11.295|0.28|1|7.799||32|14.997|0.097|0.021|0.489|20|0|55275.28745078|55277.20605032|55276.21681103|15.064|0.324|0.071|1.97800004|20|0|55275.28745078|55277.20605032|55276.21681103||||6.18300009|10|0|55275.28745078|55277.20605032|55276.19712065|11.976|||4.51000023|9|0|55275.28745078|55277.20605032|55276.19712065|1|-7|-16|0|0|0||||||||||||||||||||||||||970518641|0.321|-55.3|1|15.713|0.078|15.18|0.112|15.138|0.155|3004089401241004198|1|0.000145518163065|-0.0013646375593481|-0.999999058293955|131000000|
+J074405.51-895516.6|116.0229955|-89.9213041|1.0836|1.258|-0.3786|302.8458298|-27.1102087|269.9129538|-66.6314024|2062.959|557.521|1201089401241005345|1201m894_ab41-005345|1201m894_ab41|5345|18.113|0.293|3.7|0.813199997|17.12||0.6|0.878700018|12.057|0.192|5.7|1.12|9.252||0.4|1.03999996|0.951099992|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|1|22|0|22|1|21|0|21|22.729|22.712|21.913|21.609|0.0|0.0|0.0|0.0|0||0||0||0||9.01159954|2.43309999|9.376|2.732|0.309|1.98090005|3.48530006|21.832|3.384|0.432|238.339996|42.1699982|1098.445|24.349|2.062|5.64230013|12.9549999|298.004|9.612|0.628|16.593||32|0.261|16.545|0.527|1|0.319|11.947||32|0.825|8.345||32|0.576|17.298||32|16.693||32|13.24||32|10.269||32|16.854||32|16.864|0.527|1|12.772||32|8.921||32|16.52||32|16.34|0.421|1|13.138|0.496|1|8.408||32|16.887|0.475|1|16.041|0.396|1|12.672|0.4|1|7.984||32|16.596|0.439|1|15.889|0.415|1|12.222|0.319|1|7.636||32|16.446|0.449|1|15.789|0.445|1|11.85|0.267|1|7.396||32|16.353|0.479|1|15.6|0.434|1|11.551|0.235|1|7.242||32|16.254|0.505|1|15.308|0.383|1|11.296|0.215|1|7.11||32|18.109|1.498|0.319|3.427|16|0|55275.02271543|55276.94144233|55276.03624953|17.795|4.076|0.869|1.75399995|11|0|55275.02271543|55276.94144233|55276.03624953|12.188|1.038|0.226|3.06100011|16|1|55275.02271543|55276.94144233|55276.00889862|10.934|||4.38800001|8|0|55275.02271543|55276.94144233|55276.00889862|-17|22|0|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005345|1|-0.0006025992689913|0.0012342540975644|-0.999999056745027|111000000|
+J203921.82-895516.3|309.8409473|-89.9212005|1.2498|1.2219|-0.4031|303.0108439|-27.1638858|270.1266057|-66.5001534|1854.781|424.377|2403089401241005481|2403m894_ab41-005481|2403m894_ab41|5481|17.787|0.212|5.1|0.866699994|17.528||-2.2|0.948300004|12.815||0.8|1.08200002|9.144||0.7|1.05599999|0.983900011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|25|0|25|0|24|0|24|24.678|24.586|24.008|23.723|0.0|0.0|0.0|0.0|0||0||0||0||12.1630001|2.37680006|9.355|2.808|0.021|-6.69980001|3.07430005|21.772|3.249|0.051|34.2840004|42.1279984|1097.193|24.71|1.309|8.79850006|13.0360003|298.506|9.833|0.924|16.251|0.145|1|0.261|16.473||32|0.319|12.386||32|0.825|9.007||32|0.576|17.268|0.207|1|17.371||32|13.582||32|10.015||32|16.512|0.145|1|16.792||32|13.211||32|9.583||32|15.907|0.107|1|16.082||32|12.931||32|9.239||32|15.284|0.075|1|15.794|0.286|1|12.702||32|8.948||32|14.546|0.046|1|14.753|0.133|1|12.497||32|8.69||32|13.756|0.027|1|13.874|0.07|1|12.317||32|8.457||32|13.107|0.018|1|13.228|0.045|1|12.15||32|8.242||32|12.706|0.014|1|12.828|0.036|1|12.0||32|8.045||32|17.825|1.104|0.221|3.429|21|0|55275.28745078|55277.33835439|55276.25865158||||1.83099997|9|0|55275.28745078|55277.33835439|55276.25865158|13.324|3.475|0.709|3.41199994|13|0|55275.28745078|55277.33835439|55276.24398629|10.563|4.617|0.942|4.9380002|13|0|55275.28745078|55277.33835439|55276.24398629|42|-3|-44|1|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005481|1|0.0008811042949906|-0.0010559987247224|-0.99999905426051|131000000|
+J035833.54-895515.5|59.6397744|-89.9209815|1.1781|1.2647|0.4255|302.8671835|-27.1822532|270.100681|-66.6288589|2049.637|558.906|600089401241005071|0600m894_ab41-005071|0600m894_ab41|5071|18.232||1.3|0.855799973|16.708|0.279|3.9|0.979600012|12.081|0.194|5.6|0.958700001|9.182||0.8|1.00100005|0.941399992|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|UBBU|6|0000|0|23|3|23|2|22|0|22|23.752|23.304|22.337|22.624|0.0|0.0|0.0|0.0|129|D|129|D|0||0||3.10809994|2.48320007|9.345|2.811|0.225|13.0900002|3.36389995|21.758|3.337|0.0|233.080002|41.6959991|1099.136|22.88|3.397|9.875|11.901|298.403|9.474|0.932|17.094|0.261|1|0.261|16.015|0.351|1|0.319|13.138||32|0.825|8.848||32|0.576|17.995|0.341|0|16.943|0.442|0|13.229||32|9.858||32|17.355|0.261|1|16.334|0.351|1|13.963||32|9.424||32|16.847|0.213|1|15.936|0.317|1|12.483||32|11.399||32|16.308|0.161|1|15.582|0.283|1|12.25||32|8.65||32|15.787|0.12|1|15.226|0.246|1|12.051||32|8.285||32|15.357|0.096|1|14.888|0.212|1|11.871||32|8.045||32|15.019|0.082|1|14.57|0.184|1|11.709||32|7.865||32|14.701|0.07|1|14.255|0.159|1|11.556||32|7.659||32|19.341|4.838|1.009|2.676|13|0|55275.28745078|55277.20605032|55276.24819836|16.636|1.767|0.368|2.52800012|13|1|55275.28745078|55277.20605032|55276.24819836|12.078|0.762|0.162|4.2249999|19|0|55275.28745078|55277.20605032|55276.23172471|9.739|2.943|0.627|3.02399993|12|0|55275.28745078|55277.20605032|55276.23172471|-39|0|-19|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005071|1|0.0006970615133648|0.0011900045255158|-0.999999048996786|101000000|
+J105402.34-895514.6|163.5097568|-89.9207451|0.9251|0.8607|0.1172|302.8882954|-27.0590676|269.8087782|-66.5830892|2107.86|550.695|1802089401241005282|1802m894_ab41-005282|1802m894_ab41|5282|17.278|0.155|7.0|0.883400023|16.664|0.288|3.8|0.876699984|12.644||0.9|1.03199995|9.452||-0.5|0.960600019|0.933899999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|2|21|2|21|0|20|0|20|20.795|20.664|19.965|19.627|0.0|0.0|0.0|0.0|0||0||0||0||19.4430008|2.77870011|9.399|2.863|0.382|13.6230001|3.60800004|21.791|3.397|0.045|42.1599998|48.2939987|1095.328|24.909|3.342|-6.51429987|13.1309996|298.152|9.816|0.727|16.648|0.224|1|0.261|16.129|0.32|1|0.319|12.361||32|0.825|8.815||32|0.576|17.338|0.239|0|16.879|0.343|0|13.533||32|9.822||32|16.909|0.224|1|16.448|0.32|1|13.186||32|9.391||32|16.825|0.268|1|16.334|0.373|1|12.972||32|9.048||32|16.847|0.34|1|16.373|0.48|1|12.763||32|8.755||32|16.884|0.422|1|15.699||32|12.569||32|8.496||32|16.268||32|15.862||32|12.414||32|8.262||32|16.405||32|15.968||32|12.276||32|8.048||32|16.661||32|15.817||32|12.132||32|7.85||32|17.192|0.615|0.134|2.56|18|0|55274.89041135|55276.94144233|55275.96793221|16.688|1.669|0.364|4.06400013|16|0|55274.89041135|55276.94144233|55275.96793221|15.384|||4.08900023|10|0|55274.89041135|55276.94144233|55275.93579789||||4.54799986|7|0|55274.89041135|55276.94144233|55275.93579789|0|-10|45|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005282|1|-0.0013263627857411|0.0003926408860459|-0.99999904329699|111000000|
+J013640.05-895513.7|24.1668893|-89.9204793|0.7116|0.6971|0.2143|302.9143847|-27.2061324|270.1826305|-66.5931582|1962.759|541.976|89401241004903|0000m894_ab41-004903|0000m894_ab41|4903|17.356|0.156|6.9|0.929499984|16.608|0.257|4.2|0.931800008|11.766|0.151|7.2|1.08099997|9.259||0.7|1.20099998|1.00999999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|1|22|1|22|2|21|0|21|22.972|23.403|22.732|23.076|0.0|0.0|0.0|0.0|0||0||0||0||18.0970001|2.60829997|9.374|2.733|0.102|14.3450003|3.3987|21.791|3.363|0.103|311.519989|43.3390007|1098.68|23.016|0.0|7.73000002|11.8199997|298.422|9.435|0.727|16.977|0.537|1|0.261|16.218|0.526|1|0.319|11.739||32|0.825|9.009||32|0.576|16.915||32|16.218||32|13.008||32|10.009||32|17.238|0.537|1|16.537|0.526|1|12.564||32|9.585||32|16.719|0.431|1|16.192|0.496|1|12.248||32|9.252||32|16.147|0.316|1|15.731|0.403|1|11.993||32|8.973||32|15.599|0.229|1|15.232|0.306|1|11.79||32|8.727||32|15.032|0.161|1|14.759|0.234|1|11.614||32|8.419||32|14.48|0.113|1|14.324|0.182|1|11.456||32|8.104||32|14.049|0.087|1|13.965|0.151|1|11.296||32|7.834||32|17.37|0.752|0.16|4.013|19|0|55275.28745078|55277.33835439|55276.28283929|16.574|1.251|0.267|4.15799999|18|0|55275.28745078|55277.33835439|55276.28283929|11.635|0.631|0.138|3.921|18|0|55275.28745078|55277.33835439|55276.26723075|10.752|8.029|1.752|4.375|13|0|55275.28745078|55277.33835439|55276.26723075|1|-37|42|0|1|1|||||||||||||||||||||||||||||0|||||||89401241004903|1|0.0012662571918072|0.0005681992186492|-0.999999036870722|101000000|
+J004314.69-895513.6|10.811233|-89.9204485|0.3319|0.3183|0.0905|302.9351131|-27.207657|270.1965578|-66.5755077|2008.927|556.606|89401241004767|0000m894_ab41-004767|0000m894_ab41|4767|16.062|0.057|18.9|0.988699973|16.079|0.163|6.7|0.938499987|12.754|0.382|2.8|1.01800001|8.903||1.7|0.979099989|0.977500021|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|17|22|2|22|1|20|1|21|22.619|22.692|21.923|21.794|0.0|0.0|0.0|0.0|0||0||0||0||59.5719986|3.15140009|9.339|2.724|0.053|23.3649998|3.5079|21.784|3.311|0.055|125.400002|44.1100006|1100.652|23.574|1.541|19.9370003|11.8009996|298.22|9.539|1.077|16.079|0.249|1|0.261|16.084|0.469|1|0.319|12.156||32|0.825|8.706||32|0.576|16.693|0.248|0|16.818|0.493|0|13.342||32|9.852||32|16.34|0.249|1|16.403|0.469|1|12.981||32|9.282||32|16.119|0.265|1|16.148|0.483|1|12.693||32|8.823||32|15.755|0.235|1|15.714|0.402|1|12.46||32|8.492||32|15.127|0.159|1|15.027|0.257|1|12.261||32|8.248||32|14.413|0.097|1|14.322|0.158|1|12.082||32|8.042||32|13.858|0.068|1|13.76|0.11|1|11.919||32|7.843||32|13.418|0.052|1|13.295|0.082|1|11.766||32|7.61||32|16.058|0.241|0.051|0.829|21|0|55275.28745078|55277.33835439|55276.34599308|16.25|0.959|0.204|2.74000001|18|0|55275.28745078|55277.33835439|55276.34599308|12.524|1.667|0.373|2.58599997|13|0|55275.28745078|55277.33835439|55276.29967857|9.513|2.504|0.547|2.65700006|13|0|55275.28745078|55277.33835439|55276.33339187|-15|22|-36|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004767|1|0.0013637906756292|0.0002604341003712|-0.999999036124072|101000000|
+J160943.79-895513.0|242.4324857|-89.920287|1.1307|1.2168|0.2613|303.0000654|-27.0764478|269.9075211|-66.4900187|2040.476|560.59|2403089401241005598|2403m894_ab41-005598|2403m894_ab41|5598|17.564|0.187|5.8|0.945200026|17.294||0.2|0.881900012|12.849||0.4|1.02199996|9.172||0.5|0.994000018|0.956799984|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|20|0|20|0|19|0|19|23.214|23.22|22.931|22.58|0.0|0.0|0.0|0.0|0||0||0||0||14.9359999|2.56690001|9.55|2.605|0.0|0.750519991|3.43860006|21.749|3.261|0.0|20.9209995|47.0110016|1096.013|24.61|0.0|6.37540007|13.802|298.27|10.037|0.827|17.09||32|0.261|16.543||32|0.319|12.682||32|0.825|8.82||32|0.576|18.358||32|17.228||32|13.876||32|9.837||32|17.351||32|16.862||32|13.507||32|9.396||32|17.081||32|16.591||32|13.236||32|9.047||32|16.843||32|16.353||32|12.997||32|8.754||32|16.64||32|16.15||32|12.792||32|8.491||32|16.456||32|15.967||32|12.607||32|8.255||32|16.292||32|15.804||32|12.442||32|8.039||32|16.141||32|15.653||32|12.289||32|7.839||32|17.592|0.932|0.208|2.244|16|0|55275.02271543|55276.94144233|55276.08133871|18.844|||3.29500008|9|0|55275.02271543|55276.94144233|55276.08133871|14.071|5.284|1.212|2.66199994|9|0|55275.02271543|55276.94144233|55276.05348187|9.943|2.737|0.628|4.21700001|10|0|55275.02271543|55276.94144233|55276.05348187|5|-20|-5|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005598|1|-0.0006438631026805|-0.0012332991434782|-0.999999032206295|121000000|
+J043115.27-895512.6|67.8136461|-89.9201744|0.0949|0.0941|-0.0093|302.8584551|-27.1739757|270.0760067|-66.6346059|2019.923|559.131|600089401241003937|0600m894_ab41-003937|0600m894_ab41|3937|13.26|0.025|44.2|1.08099997|13.31|0.029|37.8|1.06799996|11.975|0.174|6.2|1.05599999|9.542||0.0|1.00399995|1.04999995|1|0|0.0|0.0|0.0|0.0|0000|dd00|0|00nn|AABU|7|0000|23|23|23|23|1|22|0|22|22.76|22.759|21.735|21.776|0.0|0.0|0.0|0.0|1|d|1|d|0||0||786.849976|17.7880001|9.346|2.834|0.176|299.200012|7.91599989|21.767|3.354|0.027|257.100006|41.2270012|1097.529|22.143|0.835|0.327890009|11.9189997|299.512|9.736|1.707|13.206|0.011|0|0.261|13.291|0.031|0|0.319|11.815||32|0.825|8.769||32|0.576|13.858|0.011|0|14.058|0.034|0|13.003||32|9.777||32|13.467|0.011|0|13.61|0.031|0|12.64||32|9.345||32|13.306|0.011|0|13.429|0.034|0|12.36||32|9.001||32|13.223|0.012|1|13.349|0.038|1|12.132||32|8.71||32|13.167|0.014|1|13.303|0.044|1|11.929||32|8.45||32|13.113|0.015|1|13.257|0.05|1|11.748||32|8.215||32|13.046|0.016|1|13.182|0.054|1|11.584||32|8.0||32|12.952|0.017|1|13.076|0.056|1|11.434||32|7.801||32|13.26|0.028|0.006|0.101|22|0|55275.28745078|55277.20605032|55276.24819836|13.315|0.066|0.014|0.35800001|22|0|55275.28745078|55277.20605032|55276.24819836|11.98|0.913|0.195|1.82200003|18|0|55275.28745078|55277.20605032|55276.23172471|9.928|2.904|0.619|1.86399996|9|0|55275.28745078|55277.20605032|55276.23172471|-18|-18|-71|0|0|1||||||||||||||||||||||||||806877285|0.163|146.1|1|13.938|0.029|13.444|0.038|13.379|0.046|600089401241003937|1|0.0005261080829377|0.0012900667074924|-0.999999029468617|101000000|
+J050627.32-895512.4|76.613841|-89.9201306|0.1077|0.1099|-0.0038|302.8514005|-27.1634533|270.0466312|-66.6384014|1988.536|552.508|600089401241003981|0600m894_ab41-003981|0600m894_ab41|3981|13.777|0.026|41.6|0.961600006|13.87|0.038|28.6|0.987500012|12.005|0.189|5.8|1.06900001|8.95||1.6|1.05200005|1.01300001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AABU|7|0000|21|21|21|21|1|20|1|20|22.719|22.824|21.739|21.61|0.0|0.0|0.0|0.0|0||0||0||0||488.839996|11.7510004|9.373|2.818|0.178|178.699997|6.23960018|21.775|3.51|0.194|250.119995|43.4550018|1096.749|22.715|0.759|18.3439999|11.6739998|298.188|9.34|0.963|13.786|0.019|0|0.261|13.803|0.031|0|0.319|11.821||32|0.825|8.94||32|0.576|14.404|0.02|0|14.566|0.034|0|13.105||32|9.957||32|14.047|0.019|0|14.122|0.031|0|12.646||32|9.516||32|13.924|0.022|0|13.93|0.033|0|12.322||32|9.165||32|13.877|0.026|1|13.828|0.036|1|12.053||32|8.873||32|13.856|0.03|1|13.75|0.041|1|11.832||32|8.609||32|13.838|0.035|1|13.662|0.044|1|11.657||32|8.372||32|13.801|0.039|1|13.544|0.046|1|11.514||32|8.156||32|13.743|0.042|1|13.401|0.047|1|11.354||32|7.956||32|13.777|0.044|0.01|0.153|20|0|55275.28745078|55277.20605032|55276.18847532|13.866|0.118|0.026|0.367000014|20|0|55275.28745078|55277.20605032|55276.18847532|11.817|0.644|0.144|2.04699993|16|0|55275.28745078|55277.20605032|55276.16736816|9.903|2.668|0.596|2.57500005|12|0|55275.28745078|55277.20605032|55276.16736816|40|10|-45|1|0|1||||||||||||||||||||||||||727852038|0.211|14.8|1|14.365|0.032|13.958|0.053|13.746|0.051|600089401241003981|1|0.0003227250417385|0.0013561109983921|-0.999999028405282|101000000|
+J225324.49-895512.3|343.3520659|-89.9200999|0.8784|0.785|-0.1781|302.9761618|-27.1976859|270.192269|-66.5377005|2107.927|552.448|89401241005358|0000m894_ab41-005358|0000m894_ab41|5358|17.466|0.165|6.6|1.01499999|16.432|0.207|5.2|0.91079998|13.018||0.3|1.01499999|8.791||2.0|1.046|0.993499994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|1|25|1|25|0|22|0|24|26.721|26.517|25.921|25.504|0.0|0.0|0.0|0.0|0||0||0||0||16.3570004|2.48959994|9.297|2.801|0.168|16.8719997|3.21729994|21.76|3.297|0.0|14.5799999|41.8829994|1100.269|23.852|1.617|24.0389996|12.1009998|298.469|9.756|0.369|16.751||32|0.261|16.081|0.318|1|0.319|12.672||32|0.825|8.71||32|0.576|17.24||32|16.895|0.357|1|13.868||32|9.744||32|17.012||32|16.4|0.318|1|13.497||32|9.286||32|16.942||32|16.113|0.316|1|13.213||32|8.918||32|16.749||32|15.799|0.294|1|12.976||32|8.615||32|16.287||32|15.397|0.245|1|12.6||32|8.415||32|16.012|0.29|1|14.901|0.182|1|12.282||32|8.264||32|14.931|0.125|1|14.31|0.123|1|11.988||32|10.711||32|14.003|0.061|1|13.684|0.08|1|11.731||32|7.927||32|17.481|0.611|0.122|3.696|22|0|55275.28745078|55277.33835439|55276.31422692|16.378|1.197|0.239|2.09699988|17|0|55275.28745078|55277.33835439|55276.31422692|14.4|5.341|1.139|3.75699997|10|0|55275.28745078|55277.33835439|55276.30087496|9.295|1.832|0.374|3.39700007|16|0|55275.28745078|55277.33835439|55276.30187727|24|-3|37|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005358|1|0.0013360655420595|-0.0003995158420614|-0.999999027657507|131000000|
+J120930.12-895512.0|182.3755005|-89.9200267|0.1176|0.1156|0.0185|302.9155768|-27.0495172|269.7991496|-66.5572656|2040.331|561.257|1802089401241003873|1802m894_ab41-003873|1802m894_ab41|3873|13.884|0.027|40.0|2.47799993|13.936|0.039|28.0|1.11500001|12.636||0.8|0.923600018|9.44||-0.9|0.836199999|1.347|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|22|22|21|22|0|21|0|21|22.798|22.221|21.899|22.046|0.0|0.0|0.0|0.0|0||0||0||0||442.869995|11.0629997|9.391|2.757|0.0|168.089996|5.99630022|21.817|3.429|0.09|41.0359993|49.4140015|1096.532|25.874|5.52|-11.9540005|13.2749996|298.051|10.031|1.972|13.684|0.023|0|0.261|13.811|0.067|0|0.319|12.251||32|0.825|8.768||32|0.576|14.409|0.025|0|14.623|0.075|0|13.486||32|9.781||32|13.945|0.023|0|14.13|0.067|0|13.076||32|9.344||32|13.72|0.024|1|13.908|0.07|1|12.827||32|8.999||32|13.614|0.026|1|13.811|0.079|1|12.665||32|8.706||32|13.57|0.03|1|13.771|0.092|1|12.498||32|8.444||32|13.534|0.035|1|13.75|0.106|1|12.349||32|8.209||32|13.481|0.038|1|13.724|0.121|1|12.229||32|7.993||32|13.411|0.041|1|13.687|0.134|1|12.053||32|7.794||32|13.882|0.064|0.014|0.244|21|0|55274.89041135|55276.94144233|55275.97308416|13.929|0.129|0.028|0.521000028|21|0|55274.89041135|55276.94144233|55275.97308416|12.811|1.442|0.315|2.38100004|13|0|55274.89041135|55276.94144233|55275.94272538||||1.65999997|7|0|55274.89041135|55276.94144233|55275.94272538|31|-20|-59|1|0|0||||||||||||||||||||||||||857646461|0.179|92.7|1|14.676|0.04|14.134|0.048|13.926|0.069|1802089401241003873|1|-0.0013945982900689|-0.0000578536246139|-0.999999025873809|121000000|
+J215653.58-895511.9|329.2232893|-89.9199748|0.7598|0.6644|-0.1938|302.993998|-27.1860599|270.1725634|-66.5196655|1947.184|535.697|3004089401241005031|3004m894_ab41-005031|3004m894_ab41|5031|17.138|0.122|8.9|0.966499984|16.916|0.316|3.4|0.983699977|12.564|0.307|3.5|0.888800025|9.266||0.6|1.10000002|0.979300022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BBBU|7|0000|5|24|1|24|0|22|0|23|24.787|25.819|24.228|24.659|0.0|0.0|0.0|0.0|0||0||0||0||22.1110001|2.4776001|9.328|2.782|0.0|10.802|3.13910007|21.751|3.246|0.0|149.479996|42.2509995|1098.718|24.0|5.657|7.6402998|11.7559996|298.479|9.46|0.299|16.707|0.286|0|0.261|16.246||32|0.319|12.023||32|0.825|8.118||32|0.576|17.4|0.306|0|16.884||32|13.308||32|9.267||32|16.968|0.286|0|16.565||32|12.848||32|8.694||32|16.731|0.298|1|16.321||32|12.451||32|8.281||32|16.462|0.288|1|15.966||32|12.118||32|7.979||32|16.084|0.245|1|16.163|0.448|1|11.856||32|7.761||32|15.619|0.188|1|15.495|0.286|1|11.629||32|7.617||32|15.109|0.137|1|14.924|0.197|1|11.413||32|7.512||32|14.601|0.099|1|14.396|0.139|1|11.207||32|7.434||32|17.15|0.685|0.14|2.787|21|0|55275.28745078|55277.33835439|55276.28533396|16.822|1.851|0.378|3.17799997|15|0|55275.28745078|55277.33835439|55276.28533396|12.338|0.911|0.194|2.81299996|15|0|55275.28745078|55277.33835439|55276.30087496|10.738|7.984|1.665|1.96800005|10|0|55275.28745078|55277.33835439|55276.27119115|-6|-6|1|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005031|1|0.001200002686705|-0.0007146842264356|-0.999999024609528|131000000|
+J015421.63-895511.5|28.5901313|-89.9198745|0.1234|0.1273|0.0284|302.9074908|-27.2052788|270.1771445|-66.5989524|1947.605|536.227|89401241004274|0000m894_ab41-004274|0000m894_ab41|4274|14.247|0.029|37.5|0.800400019|14.185|0.041|26.2|0.861599982|12.264|0.232|4.7|1.125|9.47||0.1|1.04100001|0.951200008|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AABU|7|0000|22|22|22|22|2|21|0|21|24.327|24.421|23.444|23.7|0.0|0.0|0.0|0.0|0||0||0||0||317.200012|8.44909954|9.35|2.716|0.044|133.619995|5.09429979|21.764|3.319|0.243|197.039993|42.0429993|1098.494|22.889|2.839|1.71430004|12.0539999|298.908|9.437|1.407|14.265|0.056|0|0.261|14.091|0.049|0|0.319|12.123||32|0.825|8.989||32|0.576|14.877|0.055|0|14.875|0.055|0|13.556||32|10.003||32|14.526|0.056|0|14.41|0.049|0|12.948||32|9.565||32|14.412|0.065|1|14.207|0.053|1|13.086|0.429|0|9.215||32|14.36|0.076|1|14.087|0.058|1|12.549|0.324|1|8.917||32|14.306|0.088|1|13.978|0.063|1|12.076|0.254|1|8.652||32|14.231|0.097|1|13.846|0.066|1|11.659|0.204|1|8.414||32|14.12|0.102|1|13.685|0.066|1|11.324|0.175|1|8.133||32|13.95|0.1|1|13.493|0.064|1|11.063|0.158|1|7.819||32|14.246|0.066|0.014|0.221|21|0|55275.28745078|55277.33835439|55276.28283929|14.186|0.17|0.036|0.639999986|21|0|55275.28745078|55277.33835439|55276.28283929|12.138|1.254|0.274|2.41300011|13|0|55275.28745078|55277.33835439|55276.26723075|12.146|||3.02399993|11|0|55275.28745078|55277.33835439|55276.26723075|33|-19|-27|1|0|0||||||||||||||||||||||||||1161273459|0.201|67.4|1|15.29|0.059|14.558|0.078|14.214|0.089|89401241004274|1|0.0012279338308932|0.0006692169125788|-0.999999022163137|101000000|
+J081243.13-895511.0|123.1797093|-89.9197436|0.2566|0.2599|-0.0746|302.8473723|-27.1002607|269.8892828|-66.6278412|2037.027|561.863|1201089401241004525|1201m894_ab41-004525|1201m894_ab41|4525|15.867|0.053|20.7|0.814599991|15.143|0.074|14.8|0.973399997|12.46|0.29|3.8|1.03499997|9.079||1.0|1.06500006|0.966799974|1|0|0.0|0.0|0.0|0.001|0000|0000|0|10nn|AABU|7|0000|18|22|13|22|3|21|0|21|22.301|22.726|21.889|21.276|0.0|0.0|0.0|0.0|0||0||0||0||71.3199997|3.44889998|9.4|2.77|0.0|55.3230019|3.74970007|21.816|3.359|0.0|164.380005|43.8310013|1096.478|23.975|4.121|12.4049997|12.3039999|297.74|9.68|1.26|15.582|0.068|1|0.261|14.816|0.083|1|0.319|12.596||32|0.825|8.599||32|0.576|16.279|0.074|1|15.674|0.098|1|13.716||32|9.61||32|15.843|0.068|1|15.135|0.083|1|13.421||32|9.175||32|15.611|0.071|1|14.84|0.081|1|13.142||32|8.83||32|15.421|0.073|1|14.627|0.082|1|12.911||32|8.538||32|15.295|0.079|1|14.472|0.086|1|12.707||32|8.277||32|15.236|0.088|1|14.37|0.093|1|12.525||32|9.258||32|15.181|0.097|1|14.294|0.101|1|12.125||32|8.501||32|15.089|0.102|1|14.232|0.109|1|11.733||32|7.986||32|15.873|0.274|0.058|0.923|21|1|55275.02271543|55276.94144233|55275.97309574|15.14|0.282|0.06|1.13199997|21|0|55275.02271543|55276.94144233|55275.97309574|12.206|1.284|0.28|5.90899992|15|0|55275.02271543|55276.94144233|55275.94273751|10.206|2.447|0.534|2.7420001|12|0|55275.02271543|55276.94144233|55275.94273751|15|-26|-8|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004525|1|-0.0007665779059561|0.0011723597632303|-0.999999018964969|111000000|
+J085539.10-895510.9|133.9129432|-89.9197143|0.9982|0.974|-0.3178|302.8546632|-27.0867209|269.8596872|-66.6184837|1998.121|556.222|1201089401241005314|1201m894_ab41-005314|1201m894_ab41|5314|17.467|0.18|6.0|0.765299976|16.706|0.288|3.8|0.986400008|12.613||1.1|1.05999994|9.257||0.3|1.05400002|0.960099995|1|0|0.0|0.0|0.0|0.004|0000|0000|0|nnnn|BBUU|3|0000|1|21|1|21|0|20|0|20|21.647|21.638|21.269|21.228|0.0|0.0|0.0|0.0|0||0||0||0||16.3430004|2.71239996|9.437|2.817|0.01|13.1040001|3.47169995|21.752|3.295|0.153|49.8170013|46.5309982|1098.289|24.969|0.529|3.63599992|13.8879995|298.396|10.222|1.479|16.469|0.245|1|0.261|15.798|0.231|1|0.319|12.089||32|0.825|8.362||32|0.576|17.415|0.33|1|16.819|0.316|1|13.356||32|9.307||32|16.73|0.245|1|16.117|0.231|1|12.914||32|8.938||32|16.291|0.212|1|15.7|0.204|1|12.588||32|8.595||32|16.027|0.206|1|15.473|0.206|1|12.337||32|8.301||32|15.883|0.217|1|15.393|0.23|1|12.12||32|8.04||32|15.817|0.242|1|15.42|0.278|1|11.908||32|7.805||32|15.82|0.282|1|15.505|0.35|1|11.704||32|7.589||32|15.884|0.344|1|15.565|0.426|1|11.501||32|7.39||32|17.516|0.571|0.125|2.414|19|0|55275.02271543|55276.94144233|55276.01834588|16.924|1.687|0.368|3.93499994|15|1|55275.02271543|55276.94144233|55276.01834588|13.376|3.945|0.882|5.55100012|11|0|55275.02271543|55276.94144233|55275.98873224|10.418|7.569|1.693|4.01300001|8|0|55275.02271543|55276.94144233|55275.98873224|-25|-20|63|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241005314|1|-0.000971857309912|0.0010094526601195|-0.999999018248866|111000000|
+J201350.33-895510.9|303.4597161|-89.9197058|0.5655|0.5756|-0.1915|303.016388|-27.1563823|270.1109947|-66.4936822|2037.003|561.962|3004089401241005021|3004m894_ab41-005021|3004m894_ab41|5021|16.956|0.105|10.3|1.08399999|16.315|0.195|5.6|0.95450002|12.372|0.277|3.9|1.03299999|8.771||1.8|0.938199997|1.0|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|4|23|2|23|2|22|0|22|24.712|24.66|23.976|23.767|0.0|0.0|0.0|0.0|0||0||0||0||26.1469994|2.53600001|9.316|2.783|0.0|18.7940006|3.37389994|21.776|3.33|0.137|178.389999|45.5690002|1098.146|25.302|3.704|23.4820004|12.8459997|298.608|9.944|0.785|16.623|0.186|1|0.261|15.876|0.268|1|0.319|12.376|0.356|1|0.825|8.591||32|0.576|17.288|0.197|1|16.754|0.326|1|13.818|0.458|0|9.582||32|16.884|0.186|1|16.195|0.268|1|13.201|0.356|1|9.167||32|16.495|0.169|1|15.771|0.234|1|12.829|0.325|1|8.855||32|15.987|0.131|1|15.384|0.204|1|12.56|0.314|1|8.635||32|15.562|0.107|1|15.1|0.189|1|12.359|0.313|1|8.459||32|15.289|0.098|1|14.925|0.189|1|12.199|0.317|1|8.293||32|15.121|0.098|1|14.819|0.201|1|12.047|0.32|1|8.13||32|14.981|0.099|1|14.748|0.216|1|11.905|0.321|1|8.683||32|16.949|0.42|0.088|3.085|21|0|55275.28745078|55277.20605032|55276.21941447|16.26|1.019|0.212|3.78999996|17|0|55275.28745078|55277.20605032|55276.21941447|12.092|1.126|0.24|3.14299989|17|0|55275.28745078|55277.20605032|55276.20163246|9.372|1.952|0.416|3.34200001|15|0|55275.28745078|55277.20605032|55276.20163246|-4|-21|15|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005021|1|0.0007726615247178|-0.0011691493995751|-0.999999018041443|131000000|
+J025551.13-895510.7|43.9630495|-89.9196484|0.1339|0.1403|0.0305|302.8852479|-27.1969486|270.1457253|-66.6164211|2106.446|554.123|600089401241004058|0600m894_ab41-004058|0600m894_ab41|4058|14.535|0.03|36.4|0.957499981|14.755|0.056|19.3|1.05599999|11.386|0.099|11.0|1.07700002|8.694|0.249|4.4|1.028|1.02600002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|000n|AAAB|15|0000|24|24|17|24|7|23|0|23|23.521|23.531|22.964|22.846|0.0|0.0|0.0|0.0|0||0||0||0||243.199997|6.67929983|9.355|2.758|0.117|79.0479965|4.10580015|21.785|3.315|0.263|442.040009|40.3440018|1097.385|21.875|1.241|52.7599983|12.0900002|298.6|9.632|0.599|14.348|0.021|0|0.261|14.587|0.093|0|0.319|11.309||32|0.825|8.016||32|0.576|15.059|0.023|0|15.419|0.107|0|12.645||32|9.138||32|14.609|0.021|0|14.906|0.093|0|12.134||32|8.592||32|14.358|0.021|1|14.589|0.09|1|12.496|0.511|1|8.987|0.542|1|14.178|0.022|1|14.343|0.089|1|12.136|0.455|1|8.667|0.53|1|14.029|0.023|1|14.142|0.089|1|11.818|0.409|1|8.391|0.521|1|13.892|0.023|1|13.965|0.089|1|11.516|0.365|1|8.173|0.529|1|13.758|0.024|1|13.802|0.089|1|11.239|0.329|1|7.246||32|13.591|0.024|1|13.607|0.085|1|11.03|0.312|1|7.122||32|14.537|0.074|0.015|0.238|23|0|55275.28745078|55277.33835439|55276.29362153|14.752|0.311|0.063|1.33599997|23|1|55275.28745078|55277.33835439|55276.29362153|11.362|0.59|0.123|5.04300022|22|1|55275.28745078|55277.33835439|55276.27983905|8.657|0.941|0.196|3.41000009|18|0|55275.28745078|55277.33835439|55276.27983905|13|-1|-10|0|0|0||||||||||||||||||||||||||707114274|0.145|-38.7|1|15.639|0.068|14.694|0.062|14.547|0.11|600089401241004058|1|0.001009430387364|0.0009735383028637|-0.999999016636249|101000000|
+J023004.40-895509.6|37.5183541|-89.9193527|0.082|0.0848|-0.015|302.8940849|-27.2014442|270.1611271|-66.6097418|2129.058|547.001|600089401241003914|0600m894_ab41-003914|0600m894_ab41|3914|12.617|0.024|45.8|1.01999998|12.664|0.024|45.6|0.964600027|11.251|0.091|12.0|1.13199997|9.075|0.328|3.3|1.00800002|1.028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|000n|AAAB|15|0000|24|24|24|24|6|23|0|23|23.669|23.723|22.881|22.994|0.0|0.0|0.0|0.0|0||0||0||0||1422.80005|31.0830002|9.312|2.773|0.0|542.640015|11.9119997|21.791|3.321|0.122|500.529999|41.7869987|1098.731|22.528|1.736|37.1559982|11.2119999|298.703|9.515|0.566|12.599|0.008|1|0.261|12.674|0.018|1|0.319|11.334||32|0.825|8.243||32|0.576|13.227|0.008|1|13.429|0.02|1|12.598||32|9.34||32|12.86|0.008|1|12.993|0.018|1|12.159||32|8.819||32|12.723|0.008|1|12.828|0.019|1|11.866||32|8.411||32|12.655|0.008|1|12.756|0.022|1|11.647||32|8.101||32|12.606|0.009|1|12.714|0.025|1|11.468||32|7.806||32|12.565|0.01|1|12.682|0.029|1|11.317||32|7.545||32|12.525|0.011|1|12.649|0.032|1|11.2||32|7.368||32|12.464|0.011|1|12.585|0.035|1|11.111||32|7.223||32|12.617|0.028|0.006|0.113|23|0|55275.28745078|55277.33835439|55276.29362153|12.662|0.041|0.008|0.284999996|23|0|55275.28745078|55277.33835439|55276.29362153|11.266|0.459|0.096|3.2650001|21|1|55275.28745078|55277.33835439|55276.27983905|8.914|1.396|0.291|2.91499996|15|0|55275.28745078|55277.33835439|55276.27983905|17|-12|2|0|0|0||||||||||||||||||||||||||806836938|0.353|28.0|1|13.233|0.025|12.757|0.028|12.715|0.034|600089401241003914|1|0.0011164180547948|0.0008572260461451|-0.999999009386626|101000000|
+J231340.92-895509.2|348.4205237|-89.9192418|0.4941|0.4413|-0.0408|302.9694823|-27.2016738|270.1987611|-66.5443726|2090.437|559.159|89401241005058|0000m894_ab41-005058|0000m894_ab41|5058|16.593|0.078|13.9|0.856999993|17.296|0.475|2.3|0.954699993|12.481||1.8|1.04999995|9.035||1.4|0.952000022|0.948300004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|12|24|0|23|0|22|0|23|26.583|26.61|25.556|24.926|0.0|0.0|0.0|0.0|0||0||0||0||36.5499992|2.62310004|9.287|2.761|0.189|7.61549997|3.33039999|21.788|3.366|0.08|76.9499969|42.1910019|1100.043|23.68|2.133|15.5909996|11.4720001|298.119|9.503|1.349|16.283|0.17|1|0.261|16.027||32|0.319|12.439||32|0.825|8.873||32|0.576|16.962|0.178|0|16.609||32|13.628||32|9.883||32|16.544|0.17|1|16.346||32|13.264||32|9.449||32|16.357|0.186|1|16.252||32|12.981||32|9.103||32|16.191|0.198|1|16.107||32|12.748||32|8.806||32|15.901|0.182|1|15.753||32|12.547||32|8.545||32|15.465|0.144|1|15.271||32|12.367||32|8.308||32|14.972|0.107|1|15.552|0.539|1|12.2||32|8.647||32|14.437|0.075|1|14.761|0.299|1|12.048||32|7.823||32|16.589|0.412|0.084|2.152|23|1|55275.28745078|55277.33835439|55276.34323024|17.317|2.399|0.5|2.75399995|15|0|55275.28745078|55277.33835439|55276.3344836|12.849|2.057|0.439|3.67799997|13|0|55275.28745078|55277.33835439|55276.30087496|9.229|1.963|0.409|3.9289999|13|0|55275.28745078|55277.33835439|55276.33160466|26|-52|23|0|1|0||||||||||||||||||||||||||1085364271|0.158|153.2|1|16.689|0.16|16.344||16.888||89401241005058|1|0.0013808080630519|-0.0002829237733664|-0.999999006661122|131000000|
+J204244.74-895509.1|310.6864243|-89.9192021|0.6496|0.6368|-0.2104|303.0122302|-27.1658502|270.1320941|-66.499385|2010.447|560.209|3004089401241005113|3004m894_ab41-005113|3004m894_ab41|5113|16.98|0.107|10.1|0.877300024|17.173|0.392|2.8|1.03699994|12.795||0.9|1.04700005|8.93||1.6|1.05299997|0.999899983|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|ACUU|3|0000|2|25|1|25|1|24|0|24|24.593|24.697|23.936|23.74|0.0|0.0|0.0|0.0|0||0||0||0||25.5890007|2.5302|9.341|2.847|0.04|8.52639961|3.079|21.751|3.274|0.165|36.7200012|42.0180016|1096.88|24.498|0.947|18.6030006|11.9300003|298.661|9.883|0.333|16.113|0.151|1|0.261|16.14||32|0.319|12.273||32|0.825|8.955||32|0.576|17.032|0.199|1|16.703||32|13.458||32|11.175||32|16.374|0.151|1|16.459||32|13.098||32|9.531||32|15.805|0.117|1|16.167||32|12.808||32|9.186||32|15.275|0.089|1|15.711||32|12.576||32|8.892||32|14.836|0.071|1|15.205||32|12.373||32|8.632||32|14.436|0.058|1|15.252|0.37|1|12.194||32|8.397||32|13.952|0.044|1|14.453|0.206|1|12.028||32|8.182||32|13.38|0.03|1|13.731|0.122|1|11.877||32|7.983||32|17.037|0.44|0.088|3.018|24|0|55275.28745078|55277.33835439|55276.25865158|17.543|2.922|0.584|4.15500021|16|0|55275.28745078|55277.33835439|55276.25865158|14.749|9.329|1.904|2.91400003|10|0|55275.28745078|55277.33835439|55276.24398629|9.475|1.631|0.333|4.38399982|14|0|55275.28745078|55277.33835439|55276.24398629|-18|52|25|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005113|1|0.0009193288606544|-0.0010693307966991|-0.999999005682552|131000000|
+J122659.84-895509.0|186.749352|-89.9191872|0.3665|0.3485|0.0974|302.9222581|-27.0478024|269.7983247|-66.5510817|2024.148|562.247|1802089401241004474|1802m894_ab41-004474|1802m894_ab41|4474|16.106|0.061|17.8|0.899200022|17.138|0.418|2.6|0.963500023|12.945||0.1|1.07099998|9.425||-1.1|0.853100002|0.944500029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|17|23|0|23|0|22|0|22|23.175|22.776|22.201|22.77|0.0|0.0|0.0|0.0|0||0||0||0||57.2319984|3.21760011|9.405|2.681|0.074|8.80560017|3.39120007|21.803|3.335|0.159|4.74230003|50.2299995|1096.491|26.221|1.606|-14.4329996|13.4580002|298.195|10.187|0.759|16.325|0.242|0|0.261|16.091||32|0.319|12.099||32|0.825|8.732||32|0.576|16.779|0.207|0|16.671||32|13.441||32|9.745||32|16.586|0.242|0|16.41||32|12.924||32|9.308||32|16.702|0.35|1|16.382||32|13.261|0.493|0|8.964||32|16.764|0.458|1|16.229||32|12.888|0.429|1|8.669||32|16.319|0.367|1|16.027||32|12.597|0.391|1|8.35||32|15.419|0.189|1|15.327||32|12.336|0.359|1|8.609||32|14.579|0.102|1|15.125|0.325|1|12.121|0.337|1|7.957||32|14.01|0.069|1|14.464|0.204|1|11.96|0.33|1|7.758||32|16.092|0.282|0.059|1.238|22|0|55274.89041135|55276.94144233|55275.95765212|17.008|1.735|0.362|2.76799989|14|0|55274.89041135|55276.94144233|55275.95765212|12.864|2.715|0.579|3.06200004|8|0|55274.89041135|55276.94144233|55275.92797183||||3.21199989|8|0|55274.89041135|55276.94144233|55275.92797183|-14|-3|84|0|0|0||||||||||||||||||||||||||857700723|0.463|-81.0|1|16.843|0.201|16.151|0.244|15.632|0.303|1802089401241004474|1|-0.0014006744543378|-0.0001657646839938|-0.999999005316077|121000000|
+J130913.26-895509.0|197.3052535|-89.9191689|1.09|1.0479|0.3059|302.9389512|-27.0475684|269.8061798|-66.5365449|2192.495|506.642|2403089401241005922|2403m894_ab41-005922|2403m894_ab41|5922|17.672|0.191|5.7|0.903999984|17.273|0.445|2.4|0.924000025|12.841||0.3|0.94660002|9.436||-2.5|1.03699994|0.949199975|1|0|0.0|0.0|0.0|0.002|0000|0000|0|nnnn|BCUU|3|0000|3|24|0|24|0|23|0|23|23.88|23.71|22.915|22.696|0.0|0.0|0.0|0.0|0||0||0||0||13.5270004|2.38339996|9.41|2.6|0.077|7.77330017|3.18869996|21.796|3.195|0.084|17.0900002|49.3619995|1097.059|25.944|2.142|-32.7599983|13.3190002|298.183|10.033|0.804|16.499||32|0.261|16.507||32|0.319|12.261||32|0.825|8.964||32|0.576|17.145||32|16.715||32|13.551||32|9.977||32|16.76||32|16.826||32|13.086||32|9.54||32|16.498||32|16.207||32|12.769||32|9.197||32|16.275||32|15.975||32|12.494||32|8.904||32|16.004||32|15.769||32|12.239||32|8.644||32|15.641||32|15.588||32|12.745|0.534|1|8.408||32|15.742|0.393|1|15.424||32|12.385|0.445|17|8.193||32|14.909|0.21|1|14.946||32|11.996|0.357|17|7.994||32|17.645|1.307|0.267|2.736|17|1|55274.89041135|55276.94144233|55275.98210006|17.25|2.008|0.41|3.70499992|16|0|55274.89041135|55276.94144233|55275.98210006|12.838|1.886|0.393|3.81200004|12|0|55274.89041135|55276.94144233|55275.95477317||||3.02099991|7|0|55274.89041135|55276.94144233|55275.95477317|-29|29|-57|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005922|1|-0.0013469072035338|-0.000419650361901|-0.999999004866784|121000000|
+J005839.85-895508.9|14.666081|-89.9191624|0.0993|0.1015|0.0143|302.9290505|-27.2089537|270.1967632|-66.5810526|1994.409|556.774|89401241004206|0000m894_ab41-004206|0000m894_ab41|4206|13.605|0.025|43.0|0.975199997|13.566|0.031|34.9|0.982299984|12.196|0.22|4.9|1.07700002|9.298||0.6|1.00899994|1.00699997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|22|22|22|22|3|20|0|21|22.585|22.76|21.941|21.617|0.0|0.0|0.0|0.0|0||0||0||0||572.609985|13.3179998|9.295|2.655|0.129|236.410004|6.77899981|21.757|3.278|0.037|209.649994|42.5289993|1099.149|22.94|3.345|6.79040003|11.7299995|298.919|9.715|1.225|13.616|0.024|1|0.261|13.547|0.041|1|0.319|12.24||32|0.825|8.773||32|0.576|14.243|0.024|1|14.312|0.044|1|13.438||32|9.889||32|13.877|0.024|1|13.866|0.041|1|13.065||32|9.349||32|13.746|0.027|1|13.694|0.045|1|12.803||32|8.887||32|13.681|0.032|1|13.617|0.051|1|12.554||32|8.455||32|13.619|0.036|1|13.544|0.058|1|12.294||32|8.082||32|13.542|0.039|1|13.45|0.063|1|12.043||32|7.756||32|13.467|0.043|1|13.356|0.067|1|11.808||32|8.229|0.516|1|13.411|0.046|1|13.282|0.071|1|11.579||32|8.096|0.543|1|13.605|0.054|0.011|0.193|21|0|55275.28745078|55277.33835439|55276.34599308|13.566|0.103|0.022|0.423000008|21|0|55275.28745078|55277.33835439|55276.34599308|12.194|1.437|0.321|6.26399994|14|1|55275.28745078|55277.33835439|55276.29967857|11.18|6.408|1.398|3.96799994|12|0|55275.28745078|55277.33835439|55276.33339187|-20|8|44|0|0|1||||||||||||||||||||||||||1085423115|0.216|-125.1|1|14.412|0.03|13.841|0.039|13.696|0.056|89401241004206|1|0.0013649113971068|0.0003572142977588|-0.999999004706916|101000000|
+J024131.91-895508.9|40.3829667|-89.9191523|0.2325|0.2404|0.07|302.8899103|-27.1998476|270.1551477|-66.6130131|2119.39|551.302|600089401241004251|0600m894_ab41-004251|0600m894_ab41|4251|15.674|0.045|24.0|0.978600025|15.636|0.107|10.2|0.881500006|11.584|0.122|8.9|1.10300004|8.891||1.7|0.957599998|0.976999998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|10nn|AABU|7|0000|22|24|5|24|0|23|1|23|23.223|23.731|22.935|22.729|0.0|0.0|0.0|0.0|0||0||0||0||85.1999969|3.5467999|9.338|2.752|0.0|35.1300011|3.44689989|21.732|3.318|0.0|368.390015|41.473999|1098.578|22.309|0.0|20.2080002|11.9090004|298.325|9.465|0.7|14.792|0.026|1|0.261|14.736|0.102|1|0.319|11.557|0.245|1|0.825|8.861|0.51|1|0.576|15.814|0.037|1|15.887|0.157|1|13.172|0.362|0|9.349||32|15.053|0.026|1|15.055|0.102|1|12.382|0.245|1|9.437|0.51|1|14.253|0.017|1|14.262|0.064|1|11.852|0.194|1|8.868|0.414|1|13.458|0.011|1|13.53|0.041|1|11.457|0.167|1|8.434|0.364|1|12.88|0.009|1|12.994|0.03|1|11.162|0.153|1|8.148|0.355|1|12.544|0.008|1|12.657|0.026|1|10.94|0.148|1|8.009|0.387|1|12.337|0.008|1|12.424|0.025|1|10.765|0.146|1|7.922|0.436|1|12.124|0.008|1|12.192|0.023|1|10.617|0.147|1|7.844|0.487|1|15.678|0.231|0.047|0.909|23|0|55275.28745078|55277.33835439|55276.29362153|15.657|0.713|0.145|2.41799998|20|1|55275.28745078|55277.33835439|55276.29362153|11.577|0.363|0.076|3.00399995|22|0|55275.28745078|55277.33835439|55276.27983905|9.695|3.347|0.698|4.48099995|13|0|55275.28745078|55277.33835439|55276.27983905|11|17|-8|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004251|1|0.0010748467386961|0.0009142154314216|-0.999999004456821|101000000|
+J061514.61-895507.6|93.8109006|-89.9187788|0.1532|0.161|-0.0208|302.8417807|-27.1409014|269.9863845|-66.6417499|2142.471|542.544|1201089401241004251|1201m894_ab41-004251|1201m894_ab41|4251|14.772|0.032|33.6|0.866299987|14.98|0.069|15.8|0.897000015|12.392|0.278|3.9|0.911000013|9.587||-2.2|1.05700004|0.928499997|1|0|0.0|0.0|0.0|0.002|0000|0000|0|11nn|AABU|7|0000|21|21|14|22|0|20|0|21|21.697|22.756|21.884|21.489|0.0|0.0|0.0|0.0|0||0||0||0||195.539993|5.8217001|9.356|2.843|0.064|64.2429962|4.06010008|21.831|3.449|0.0|175.029999|44.8540001|1099.226|23.745|3.11|-24.9829998|11.5930004|298.618|9.391|0.537|14.791|0.058|0|0.261|15.024|0.115|0|0.319|12.632||32|0.825|8.723||32|0.576|15.385|0.058|0|15.704|0.117|0|13.806||32|9.739||32|15.052|0.058|0|15.343|0.115|0|13.457||32|9.299||32|14.963|0.069|0|15.273|0.138|0|13.186||32|8.949||32|14.97|0.086|0|15.35|0.184|0|12.947||32|8.658||32|15.028|0.108|0|15.546|0.265|0|12.746||32|8.395||32|15.105|0.138|0|15.925|0.446|0|12.559||32|8.158||32|15.206|0.176|1|15.542||32|12.396||32|7.943||32|15.349|0.231|1|15.821||32|12.243||32|7.743||32|14.774|0.087|0.019|0.381|20|0|55275.02271543|55276.94144233|55276.08450699|15.014|0.283|0.06|1.30900002|21|0|55275.02271543|55277.20605032|55276.13548623|12.271|0.896|0.2|1.98199999|15|0|55275.28745078|55277.20605032|55276.16736816||||2.07500005|7|0|55275.02271543|55277.20605032|55276.11286089|41|-28|62|1|1|1||||||||||||||||||||||||||863284281|0.192|96.7|1|15.584|0.077|15.063|0.122|14.803|0.138|1201089401241004251|1|-0.0000942174028073|0.0014144416666618|-0.999998995238422|111000000|
+J000434.95-895507.1|1.1456301|-89.9186551|0.0755|0.0815|0.0084|302.9504857|-27.2078059|270.2044704|-66.5622021|2043.737|564.955|89401241004118|0000m894_ab41-004118|0000m894_ab41|4118|11.929|0.023|47.5|0.930199981|11.962|0.022|49.1|0.924399972|11.445|0.113|9.6|1.01400006|||||0.952700019|1|0|0.0|0.0|0.0||0000|0000|0|110n|AABX|7|0000|22|22|22|22|5|21|||23.874|24.088|23.112|23.456|0.0|0.0|0.0||0||0||0||0||2681.69995|56.4449997|9.311|2.772|0.0|1035.69995|21.1000004|21.771|3.393|0.0|418.899994|43.5769997|1099.348|23.26|3.753|||298.679|9.65|1.024|11.926|0.007|0|0.261|11.978|0.011|0|0.319|11.807|0.27|0|0.825|||||12.551|0.007|0|12.727|0.012|0|13.284|0.354|0||||12.187|0.007|0|12.297|0.011|0|12.632|0.27|0||||12.063|0.007|1|12.14|0.012|1|12.238|0.243|1||||12.017|0.007|1|12.083|0.014|1|11.982|0.238|1||||11.995|0.008|1|12.058|0.016|1|11.803|0.242|1||||11.98|0.008|1|12.042|0.018|1|11.659|0.251|1||||11.965|0.009|1|12.028|0.02|1|11.549|0.264|1||||11.95|0.009|1|12.015|0.023|1|11.477|0.284|1||||11.923|0.014|0.003|0.103|21|0|55275.28745078|55277.33835439|55276.34599308|11.963|0.029|0.006|0.118000001|21|0|55275.28745078|55277.33835439|55276.34599308|11.382|0.428|0.093|1.86199999|19|0|55275.28745078|55277.33835439|55276.33339187|||||0|||||45|-5||1|0|||||||||||||||||||||||||||1101364107|0.209|-39.1|1|12.467|0.021|12.131|0.026|11.963|0.025|89401241004118|1|0.001419451629532|0.0000283857439436|-0.999998992175153|101000000|
+J120508.96-895506.3|181.2873545|-89.9184279|0.1853|0.1742|-0.0428|302.9135431|-27.0482413|269.7949978|-66.5587424|2231.214|461.765|2403089401241004014|2403m894_ab41-004014|2403m894_ab41|4014|14.707|0.037|29.6|0.906099975|14.81|0.067|16.3|0.945500016|13.005||-0.4|0.98180002|8.992||0.5|0.901300013|0.932699978|2|1|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|AAUU|3|0000|22|22|15|22|0|21|0|21|22.745|22.491|21.994|21.858|0.0|0.0|0.0|0.0|0||0||0||0||207.559998|7.01070023|9.385|2.741|0.24|75.163002|4.62249994|21.813|3.424|0.515|-20.9869995|49.7560005|1095.355|25.388|2.261|8.03540039|16.0279999|298.119|10.028|0.849|13.972|0.026|1|0.261|14.116|0.09|1|0.319|12.768||32|0.825|8.578||32|0.576|14.895|0.034|1|15.109|0.119|1|14.094||32|9.622||32|14.233|0.026|1|14.435|0.09|1|13.593||32|9.154||32|13.856|0.024|1|14.057|0.082|1|12.979||32|8.794||32|13.667|0.025|1|13.87|0.086|1|12.742||32|8.486||32|13.572|0.027|1|13.793|0.096|1|12.538||32|8.173||32|13.509|0.03|1|13.765|0.111|1|12.358||32|7.879||32|13.454|0.033|1|13.745|0.126|1|12.193||32|7.626||32|13.391|0.036|1|13.723|0.142|1|12.04||32|7.407||32|14.709|0.08|0.017|0.329|21|0|55274.89041135|55276.94144233|55275.97308416|14.811|0.29|0.062|1.01300001|21|0|55274.89041135|55276.94144233|55275.97308416|14.872|||6.19199991|8|0|55274.89041135|55276.94144233|55275.94272538|10.98|9.585|2.092|2.3670001|11|0|55274.89041135|55276.94144233|55275.94272538|15|-71|52|0|2|0||||||||||||||||||||||||||857646457|0.225|-59.2|1|15.233|0.065|15.02|0.098|14.709|0.156|2403089401241004014|1|-0.0014233414800286|-0.0000319858367159|-0.999998986537455|121000000|
+J073102.62-895506.2|112.7609576|-89.9183952|0.9029|0.9425|-0.2768|302.8416013|-27.1140952|269.9203881|-66.6359387|2075.612|563.889|1201089401241005062|1201m894_ab41-005062|1201m894_ab41|5062|17.624|0.192|5.7|0.871699989|17.125|0.416|2.6|1.01199996|12.053|0.189|5.8|1.08800006|9.074||1.0|1.16600001|0.999599993|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCBU|7|0000|1|22|0|22|1|21|0|21|22.584|22.804|21.429|21.411|0.0|0.0|0.0|0.0|0||0||0||0||14.1400003|2.49959993|9.381|2.702|0.026|8.91279984|3.41420007|21.818|3.357|0.048|239.199997|41.5589981|1097.078|23.29|0.467|12.4020004|12.3870001|298.246|9.665|0.733|16.831|0.263|1|0.261|16.065|0.332|1|0.319|11.951||32|0.825|8.381||32|0.576|17.696|0.331|1|16.973|0.408|1|13.264||32|9.398||32|17.092|0.263|1|16.384|0.332|1|12.776||32|8.957||32|16.696|0.237|1|16.088|0.329|1|12.444||32|8.611||32|16.358|0.215|1|15.851|0.33|1|12.187||32|8.331||32|16.078|0.199|1|15.57|0.307|1|11.951||32|8.089||32|15.877|0.195|1|15.305|0.284|1|11.722||32|7.819||32|15.746|0.2|1|15.096|0.272|1|11.517||32|7.556||32|15.663|0.213|1|14.942|0.271|1|12.057|0.515|1|7.374||32|17.644|1.183|0.252|3.674|17|0|55275.02271543|55276.94144233|55276.03624953|16.952|1.664|0.355|1.82599998|14|0|55275.02271543|55276.94144233|55276.03624953|12.151|0.774|0.169|3.94300008|17|0|55275.02271543|55276.94144233|55276.00889862|10.195|4.073|0.889|3.13899994|10|0|55275.02271543|55276.94144233|55276.00889862|-45|37|-30|1|1|0|||||||||||||||||||||||||||||0|||||||1201089401241005062|1|-0.0005510325787683|0.0013133591861068|-0.999998985724858|111000000|
+J002146.62-895505.9|5.444279|-89.9183293|0.6529|0.6012|0.1542|302.9437679|-27.2091436|270.2044547|-66.5683245|2027.707|564.887|89401241005554|0000m894_ab41-005554|0000m894_ab41|5554|16.978|0.111|9.8|0.896399975|16.376|0.215|5.0|0.89349997|12.709|0.363|3.0|1.09099996|9.511||0.3|1.148|1.00100005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BBCU|7|0000|4|22|1|22|1|21|0|21|22.465|22.913|22.337|22.419|0.0|0.0|0.0|0.0|0||0||0||0||25.6329994|2.62660003|9.324|2.733|0.0|17.7609997|3.51950002|21.753|3.33|0.0|130.800003|43.7290001|1099.2|23.073|0.0|2.80749989|11.0240002|298.706|9.644|0.638|16.03|0.117|0|0.261|15.41|0.143|0|0.319|12.347||32|0.825|8.8||32|0.576|16.928|0.152|0|16.372|0.188|0|13.525||32|9.898||32|16.291|0.117|0|15.729|0.143|0|13.172||32|9.376||32|15.727|0.091|0|15.244|0.119|0|12.885||32|8.994||32|14.97|0.057|1|14.618|0.083|1|12.651||32|8.639||32|13.984|0.028|1|13.757|0.046|1|13.389||32|8.342||32|12.955|0.014|1|12.855|0.024|1|12.09||32|8.094||32|12.119|0.009|1|12.117|0.015|1|11.708||32|7.828||32|11.586|0.007|1|11.627|0.012|1|11.363||32|7.537||32|16.779|0.25|0.053|3.018|19|0|55275.28745078|55277.33835439|55276.34599308|16.4|1.334|0.285|3.99000001|17|0|55275.28745078|55277.33835439|55276.34599308|12.463|1.451|0.317|4.22399998|15|0|55275.28745078|55277.33835439|55276.33339187|10.324|2.864|0.625|4.46899986|12|0|55275.28745078|55277.33835439|55276.33339187|47|39|40|1|1|1|||||||||||||||||||||||||||||0|||||||89401241005554|1|0.0014189927014746|0.0001352408013222|-0.999998984084303|101000000|
+J053833.65-895505.7|84.6402329|-89.918275|0.3168|0.3487|-0.0502|302.8446727|-27.1536811|270.0192544|-66.6420754|1959.108|546.66|600089401241004408|0600m894_ab41-004408|0600m894_ab41|4408|16.012|0.061|17.8|0.905399978|16.004|0.166|6.5|0.929499984|11.78|0.159|6.8|0.939300001|9.193||0.8|0.986299992|0.936600029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0n0n|ABBU|7|0000|17|21|0|21|4|20|0|20|20.523|20.747|19.907|19.885|0.0|0.0|0.0|0.0|0||0||0||0||62.4189987|3.50410008|9.398|2.913|0.0|25.0359993|3.8375001|21.73|3.473|0.0|307.589996|45.0390015|1097.551|23.096|0.0|9.3416996|11.9870005|298.665|9.542|1.762|15.974|0.185|0|0.261|15.649|0.203|0|0.319|11.684||32|0.825|8.625||32|0.576|16.557|0.179|0|16.4|0.219|0|12.861||32|9.634||32|16.235|0.185|0|15.968|0.203|0|12.509||32|9.201||32|16.205|0.233|1|15.823|0.229|1|12.231||32|8.861||32|16.328|0.324|1|15.783|0.273|1|12.032||32|8.57||32|16.497|0.456|1|15.802|0.332|1|11.894||32|8.313||32|15.792||32|15.783|0.384|1|13.053||32|8.08||32|15.702||32|15.618|0.382|1|11.648||32|7.866||32|15.576||32|15.325|0.335|1|11.496||32|7.668||32|16.014|0.196|0.043|0.725|20|0|55275.28745078|55277.20605032|55276.18847532|15.983|0.567|0.124|1.95500004|18|0|55275.28745078|55277.20605032|55276.18847532|11.727|0.755|0.169|4.3920002|16|0|55275.28745078|55277.20605032|55276.16736816|10.216|5.792|1.295|3.91400003|9|0|55275.28745078|55277.20605032|55276.16736816|1|7|16|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004408|1|0.0001332360631894|0.0014201333006774|-0.999998982734262|101000000|
+J232637.19-895505.1|351.6549799|-89.9180984|0.6321|0.5716|0.0337|302.9652242|-27.2045089|270.2036199|-66.5486901|2079.116|564.185|89401241005241|0000m894_ab41-005241|0000m894_ab41|5241|16.919|0.102|10.7|0.91930002|17.13|0.394|2.8|0.872799993|12.872|0.383|2.8|1.00800002|9.038||1.2|1.11899996|0.975399971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACCU|7|0000|6|24|0|24|2|23|0|23|26.165|26.543|25.11|24.62|0.0|0.0|0.0|0.0|0||0||0||0||27.0620003|2.53320003|9.292|2.702|0.034|8.87110043|3.22219992|21.749|3.299|0.114|112.529999|39.7280006|1099.401|23.416|2.766|14.1820002|12.1219997|298.489|9.743|1.292|17.159|0.458|1|0.261|16.099||32|0.319|12.278||32|0.825|8.599||32|0.576|17.542|0.367|1|16.646||32|13.661||32|9.609||32|17.42|0.458|1|16.418||32|13.103||32|9.175||32|16.664||32|16.334||32|13.408|0.542|1|8.831||32|17.008|0.504|1|16.048||32|12.964|0.445|1|8.536||32|15.936|0.227|1|15.426||32|12.654|0.401|1|8.275||32|14.995|0.113|1|15.254|0.31|1|12.382|0.367|1|8.038||32|14.385|0.075|1|14.593|0.196|1|12.128|0.336|1|7.822||32|14.05|0.063|1|14.213|0.159|1|11.87|0.303|1|7.623||32|16.934|0.54|0.11|3.675|23|1|55275.28745078|55277.33835439|55276.36252723|17.119|2.098|0.428|2.51999998|18|0|55275.28745078|55277.33835439|55276.36252723|12.764|2.258|0.471|2.78500009|13|1|55275.28745078|55277.33835439|55276.35174065|9.879|3.165|0.66|3.12599993|12|0|55275.28745078|55277.33835439|55276.35174065|23|53|-34|0|1|0|||||||||||||||||||||||||||||0|||||||89401241005241|1|0.001414316454772|-0.0002074615355963|-0.999998978333817|131000000|
+J074057.63-895504.5|115.2401401|-89.9179217|0.6694|0.6731|-0.2154|302.841851|-27.1105296|269.9117492|-66.6349263|2066.528|566.12|1201089401241005163|1201m894_ab41-005163|1201m894_ab41|5163|16.964|0.11|9.9|0.880299985|17.197|0.461|2.4|0.956700027|13.078|0.485|2.2|1.04400003|9.528||0.0|0.932099998|0.950600028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BCCU|7|0000|5|22|0|22|1|21|0|21|22.752|22.76|21.9|21.707|0.0|0.0|0.0|0.0|0||0||0||0||25.9619999|2.62840009|9.422|2.685|0.17|8.34090042|3.54029989|21.822|3.311|0.154|93.1080017|41.5600014|1097.774|23.469|0.0|-0.112369999|12.2449999|297.993|9.567|1.104|16.61|0.193|1|0.261|16.453|0.473|1|0.319|12.287||32|0.825|8.284||32|0.576|17.336|0.211|1|16.54||32|13.634||32|9.41||32|16.871|0.193|1|16.772|0.473|1|13.112||32|8.86||32|16.5|0.177|1|16.361|0.419|1|12.665||32|8.413||32|16.127|0.155|1|15.993|0.371|1|12.273||32|8.059||32|15.811|0.14|1|15.692|0.339|1|11.988||32|7.763||32|15.567|0.132|1|15.445|0.318|1|11.803||32|7.496||32|15.39|0.13|1|15.261|0.312|1|11.668||32|7.246||32|15.26|0.133|1|15.132|0.319|1|11.509||32|7.048||32|16.986|0.515|0.11|2.46|21|0|55275.02271543|55276.94144233|55276.03624953|17.145|2.248|0.479|3.14400005|15|0|55275.02271543|55276.94144233|55276.03624953|13.036|2.705|0.59|2.80100012|11|0|55275.02271543|55276.94144233|55276.00889862||||2.33599997|10|0|55275.02271543|55276.94144233|55276.00889862|18|-47|16|0|1|0|||||||||||||||||||||||||||||0|||||||1201089401241005163|1|-0.0006108520223287|0.001295769529357|-0.99999897392004|111000000|
+J190054.42-895504.5|285.2267831|-89.9179175|0.7633|0.8227|-0.2372|303.0240688|-27.1315168|270.0540244|-66.4814987|2104.471|559.381|3004089401241005154|3004m894_ab41-005154|3004m894_ab41|5154|17.208|0.137|7.9|0.840900004|16.693|0.29|3.7|0.895099998|12.848||0.5|1.12699997|9.245||-0.2|0.94660002|0.948000014|1|0|0.0|0.0|0.0|0.004|0000|0000|0|nnnn|BBUU|3|0000|0|21|0|21|1|20|0|20|21.871|21.749|21.028|21.95|0.0|0.0|0.0|0.0|0||0||0||0||20.7479992|2.62129998|9.445|2.723|0.006|13.2679996|3.54979992|21.777|3.402|0.0|24.4020004|45.3110008|1098.129|24.709|1.495|-3.7809999|15.8879995|299.24|10.455|1.039|16.602||32|0.261|16.214|0.425|0|0.319|12.629||32|0.825|8.967||32|0.576|17.037||32|17.02|0.478|0|14.441||32|9.978||32|16.863||32|16.533|0.425|0|13.454||32|9.543||32|16.902||32|16.298|0.442|0|13.176||32|9.202||32|16.761||32|16.121|0.468|1|12.941||32|8.913||32|16.557||32|15.925|0.471|1|12.739||32|8.657||32|16.375||32|15.662|0.437|1|12.559||32|8.425||32|16.212||32|15.343|0.379|1|12.397||32|8.213||32|15.891||32|15.025|0.325|1|12.247||32|8.017||32|17.13|0.412|0.09|1.63|19|0|55275.28745078|55277.20605032|55276.21681103|16.59|1.147|0.25|1.73599994|15|0|55275.28745078|55277.20605032|55276.21681103|12.934|3.349|0.749|3.22399998|10|1|55275.28745078|55277.20605032|55276.19712065|9.768|3.217|0.719|3.05200005|9|0|55275.28745078|55277.20605032|55276.19712065|14|-2|-13|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005154|1|0.0003762607689555|-0.0013823155144451|-0.9999989738153|131000000|
+J090116.90-895504.0|135.3204227|-89.9177993|0.4194|0.4043|-0.1441|302.8540161|-27.0840158|269.8527189|-66.6184387|1991.812|559.775|1201089401241004756|1201m894_ab41-004756|1201m894_ab41|4756|16.497|0.081|13.4|0.907100022|15.631|0.116|9.3|1.06900001|12.314|0.255|4.3|1.45599997|9.14||0.7|1.04299998|1.11000001|1|0|0.0|0.0|0.0|0.003|0000|0000|0|00nn|ABBU|7|0000|8|21|6|21|2|20|0|20|21.916|21.807|21.818|21.544|0.0|0.0|0.0|0.0|0||0||0||0||39.9249992|2.96950006|9.385|2.779|0.025|35.2869987|3.77959991|21.84|3.342|0.267|188.050003|44.2330017|1095.067|23.726|0.508|8.89729977|13.0410004|298.284|9.943|0.243|16.051|0.143|1|0.261|15.11|0.107|1|0.319|11.951||32|0.825|8.339||32|0.576|16.83|0.165|1|16.024|0.133|1|13.269||32|9.356||32|16.312|0.143|1|15.429|0.107|1|12.776||32|8.915||32|16.044|0.144|1|15.111|0.103|1|12.426||32|8.572||32|15.901|0.157|1|14.918|0.106|1|12.175||32|8.276||32|15.824|0.177|1|14.775|0.112|1|12.0||32|8.015||32|15.746|0.194|1|14.652|0.118|1|11.888||32|7.779||32|15.623|0.201|1|14.538|0.124|1|11.813||32|7.564||32|15.505|0.208|1|14.436|0.13|1|11.772||32|7.364||32|16.544|0.357|0.078|1.982|20|1|55275.02271543|55276.94144233|55276.01834588|15.626|0.699|0.153|3.78500009|19|3|55275.02271543|55276.94144233|55276.01834588|12.574|1.695|0.379|4.55000019|13|5|55275.02271543|55276.94144233|55275.98873224|10.558|5.799|1.297|3.90700006|8|0|55275.02271543|55276.94144233|55275.98873224|11|20|-10|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004756|1|-0.0010201239378825|0.0010087773285371|-0.999998970857197|111000000|
+J153647.58-895503.2|234.1982698|-89.917579|1.1064|1.1856|0.3163|302.9930515|-27.0662601|269.8791147|-66.493815|2071.187|566.565|2403089401241005506|2403m894_ab41-005506|2403m894_ab41|5506|17.628|0.189|5.8|0.947700024|17.46||-0.1|0.973999977|13.127||-2.1|1.06299996|9.384||-0.2|0.946399987|0.978999972|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BUUU|1|0000|1|22|0|22|0|21|0|21|22.727|22.822|21.987|21.794|0.0|0.0|0.0|0.0|8|h|0||0||0||14.0909996|2.44939995|9.593|2.625|0.153|-0.484899998|3.27200007|21.761|3.261|0.522|-92.2170029|44.4620018|1096.058|24.981|2.998|-3.49119997|13.9729996|298.159|10.005|1.095|16.659||32|0.261|16.081||32|0.319|12.246||32|0.825|9.215||32|0.576|17.187||32|16.77||32|13.442||32|9.894||32|16.92||32|16.4||32|13.071||32|9.791||32|16.705||32|16.111||32|12.782||32|9.23||32|16.443||32|15.88||32|12.551||32|8.956||32|16.263||32|15.677||32|12.349||32|8.716||32|16.236||32|15.499||32|12.171||32|8.5||32|16.07||32|15.333||32|12.005||32|8.301||32|15.919||32|15.182||32|11.854||32|8.116||32|17.8|0.734|0.157|3.567|21|0|55275.02271543|55276.94144233|55276.02720854||||1.48599994|8|0|55275.02271543|55276.94144233|55276.02720854||||3.39100003|8|0|55275.02271543|55276.94144233|55275.99942711||||3.42799997|8|0|55275.02271543|55276.94144233|55275.99942711|37|-6|-14|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005506|1|-0.0008415072542485|-0.0011667043236519|-0.999998965332746|121000000|
+J202301.58-895502.9|305.7566211|-89.9174735|0.3239|0.3252|-0.104|303.0173617|-27.1602398|270.1209073|-66.4936914|2028.059|567.172|3004089401241004660|3004m894_ab41-004660|3004m894_ab41|4660|16.147|0.058|18.7|1.00199997|16.021|0.147|7.4|0.946799994|12.525||1.7|1.10099995|9.454||-0.8|0.949100018|0.996699989|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|18|24|3|24|0|23|0|23|24.744|24.64|23.959|23.771|0.0|0.0|0.0|0.0|0||0||0||0||55.1069984|2.94269991|9.324|2.81|0.0|24.6420002|3.33739996|21.759|3.315|0.0|71.0410004|41.9039993|1095.729|24.293|0.0|-10.7250004|13.099|299.228|10.121|0.605|16.006|0.115|1|0.261|15.956|0.315|1|0.319|12.298||32|0.825|8.618||32|0.576|16.635|0.116|1|16.691|0.334|1|13.598||32|9.803||32|16.267|0.115|1|16.275|0.315|1|13.123||32|9.194||32|16.052|0.121|1|15.983|0.31|1|12.738||32|8.843||32|15.745|0.113|1|15.621|0.275|1|12.419||32|8.61||32|15.354|0.095|1|15.262|0.239|1|12.178||32|8.453||32|14.969|0.079|1|14.961|0.214|1|12.035||32|8.327||32|14.63|0.067|1|14.721|0.2|1|11.952||32|10.675||32|14.382|0.061|1|14.553|0.197|1|11.861||32|7.988||32|16.149|0.266|0.054|1.088|23|0|55275.28745078|55277.33835439|55276.26603696|16.005|0.79|0.161|2.08999991|19|0|55275.28745078|55277.33835439|55276.26603696|13.046|2.719|0.567|4.66200018|15|0|55275.28745078|55277.33835439|55276.25105515|13.227|||1.74800003|7|0|55275.28745078|55277.33835439|55276.25105515|26|-5|10|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004660|1|0.0008416646176447|-0.0011688610152367|-0.999998962681761|131000000|
+J225811.20-895502.5|344.5466679|-89.9173765|0.8972|0.7976|-0.184|302.9759757|-27.2008888|270.2000257|-66.5385661|2105.635|560.526|89401241005198|0000m894_ab41-005198|0000m894_ab41|5198|17.619|0.185|5.9|0.836600006|16.41|0.202|5.4|0.943799973|12.544|0.29|3.7|1.028|9.262||0.4|1.0|0.948700011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|2|25|1|25|0|24|1|24|26.558|26.694|25.496|25.095|0.0|0.0|0.0|0.0|0||0||0||0||14.1969995|2.41680002|9.295|2.775|0.021|17.2140007|3.19700003|21.777|3.319|0.157|152.240005|40.6739998|1099.672|23.799|0.681|4.92869997|13.1700001|299.682|10.353|0.933|16.397|0.234|1|0.261|15.498|0.19|1|0.319|12.558|0.404|1|0.825|8.469||32|0.576|17.529|0.374|1|16.605|0.281|1|13.456||32|9.551||32|16.658|0.234|1|15.817|0.19|1|13.383|0.404|1|9.045||32|15.597|0.114|1|15.025|0.119|1|12.692|0.276|1|8.764||32|14.503|0.052|1|14.217|0.07|1|12.242|0.227|1|8.56||32|13.618|0.028|1|13.529|0.046|1|11.946|0.208|1|8.358||32|13.036|0.02|1|13.035|0.034|1|11.746|0.205|1|9.604||32|12.728|0.018|1|12.743|0.031|1|11.589|0.206|1|8.02||32|12.597|0.018|1|12.603|0.031|1|11.441|0.207|1|7.82||32|17.577|1.034|0.207|3.886|21|0|55275.28745078|55277.33835439|55276.36980225|16.503|1.566|0.313|3.0079999|18|0|55275.28745078|55277.33835439|55276.36980225|12.257|1.109|0.226|3.32399988|16|0|55275.28745078|55277.33835439|55276.35976824|9.859|3.013|0.615|4.81500006|10|0|55275.28745078|55277.33835439|55276.35976824|14|22|-43|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005198|1|0.0013899176508596|-0.0003842393864192|-0.999998960243968|131000000|
+J031934.53-895500.8|49.8939142|-89.9169006|0.7725|0.7963|0.2395|302.8756456|-27.1944813|270.1349256|-66.6242099|2008.437|138.106|2403089401241005986|2403m894_ab41-005986|2403m894_ab41|5986|18.869||-7.0|1.01199996|17.475||-1.6|0.951399982|12.027|0.181|6.0|0.940299988|9.124|0.349|3.1|1.10399997|0.998000026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBB|12|0000|0|24|0|24|3|23|0|23|23.657|23.434|22.975|22.811|0.0|0.0|0.0|0.0|0||0||0||0||-15.6400003|2.24489999|9.322|2.688|0.292|-5.05779982|3.22839999|21.769|3.247|0.153|244.919998|40.757|1098.483|22.434|3.19|35.5019989|11.401|298.514|9.19|0.781|16.797||32|0.261|16.365||32|0.319|11.662||32|0.825|8.73||32|0.576|17.421||32|17.048||32|12.92||32|9.676||32|17.058||32|16.684||32|12.487||32|9.306||32|16.777||32|16.403||32|12.154||32|8.922||32|16.541||32|16.168||32|11.888||32|8.493||32|16.339||32|15.966||32|11.673||32|8.125||32|16.161||32|15.788||32|11.488||32|7.833||32|15.997||32|15.624||32|11.316||32|7.634||32|15.845||32|15.471||32|11.155||32|7.523||32|||||0||55275.28745078|55277.33835439|55276.29362153||||2.71000004|6|0|55275.28745078|55277.33835439|55276.29362153|11.918|0.926|0.193|3.34899998|18|1|55275.28745078|55277.33835439|55276.27983905|9.009|1.775|0.37|4.10200024|15|0|55275.28745078|55277.33835439|55276.27983905||-15|-28||0|0|||||||||||||||||||||||||||||0|||||||2403089401241005986|1|0.0009343279963093|0.0011093109984463|-0.999998948229599|101000000|
+J172235.28-895500.6|260.6470338|-89.9168453|0.1814|0.1948|-0.0254|303.0183913|-27.096694|269.9661381|-66.478656|1972.537|556.243|2403089401241004223|2403m894_ab41-004223|2403m894_ab41|4223|15.221|0.037|29.5|0.799199998|15.264|0.084|13.0|0.813499987|12.993||0.0|1.06900001|9.465||0.0|1.04100001|0.923200011|1|0|0.0|0.0|0.0|0.001|0000|0000|0|00nn|AAUU|3|0000|21|21|6|21|1|20|0|20|21.967|22.029|21.689|22.05|0.0|0.0|0.0|0.0|0||0||0||0||129.309998|4.38590002|9.338|2.62|0.388|49.4949989|3.80990005|21.764|3.337|0.206|1.89600003|49.3590012|1097.327|25.598|0.726|0.0882339999|12.927|298.713|9.779|0.72|15.26|0.073|0|0.261|15.08|0.101|0|0.319|12.267||32|0.825|8.742||32|0.576|15.853|0.072|0|15.905|0.116|0|13.455||32|9.742||32|15.521|0.073|0|15.399|0.101|0|13.092||32|9.318||32|15.408|0.086|1|15.113|0.1|1|12.804||32|8.883||32|15.345|0.1|1|14.907|0.102|1|12.571||32|8.485||32|15.271|0.112|1|14.738|0.105|1|12.371||32|8.147||32|15.138|0.117|1|14.57|0.106|1|12.191||32|8.586|0.513|1|14.919|0.112|1|14.39|0.104|1|12.025||32|8.327|0.472|1|14.652|0.1|1|14.212|0.101|1|11.875||32|8.081|0.434|1|15.227|0.128|0.028|0.476|20|0|55275.02271543|55277.20605032|55276.14434366|15.287|0.372|0.081|1.57599998|20|0|55275.02271543|55277.20605032|55276.14434366|16.238|||4.94899988|8|0|55275.02271543|55277.20605032|55276.12102991|10.181|3.239|0.724|2.11500001|9|0|55275.02271543|55277.20605032|55276.12102991|11|-24|15|0|0|0||||||||||||||||||||||||||970347402|0.489|-20.5|1|15.729|0.083|15.259|0.123|15.451|0.232|2403089401241004223|1|-0.0002358631703816|-0.0014320284179747|-0.999998946831033|121000000|
+J222051.91-895500.4|335.2163164|-89.9167896|0.0841|0.0861|0.0121|302.9890517|-27.1940333|270.1896547|-66.5257129|2139.321|549.818|89401241004143|0000m894_ab41-004143|0000m894_ab41|4143|12.631|0.024|45.2|0.943799973|12.598|0.024|44.5|1.12100005|12.075|0.206|5.3|1.09899998|8.972||1.4|0.970799983|1.02900004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABU|7|0000|24|24|23|24|2|22|0|23|26.616|25.977|25.906|25.646|0.0|0.0|0.0|0.0|0||0||0||0||1405.09998|31.1149998|9.32|2.78|0.043|576.690002|12.9650002|21.787|3.257|0.05|234.380005|44.5579987|1100.572|24.758|0.0|17.0219994|11.9209995|298.794|9.794|0.61|12.62|0.008|0|0.261|12.611|0.015|0|0.319|11.937|0.287|0|0.825|8.316||32|0.576|13.248|0.009|0|13.364|0.016|0|13.5|0.406|0|9.454||32|12.881|0.008|0|12.93|0.015|0|12.762|0.287|0|8.892||32|12.746|0.009|1|12.762|0.016|1|12.24|0.23|1|8.52||32|12.686|0.01|1|12.69|0.018|1|11.865|0.203|1|8.311||32|12.65|0.011|1|12.651|0.02|1|11.606|0.192|1|8.091||32|12.624|0.012|1|12.627|0.023|1|11.447|0.196|1|7.801||32|12.604|0.013|1|12.616|0.026|1|11.323|0.204|1|7.536||32|12.586|0.014|1|12.614|0.03|1|11.188|0.208|1|7.391||32|12.627|0.025|0.005|0.127|23|0|55275.28745078|55277.33835439|55276.28533396|12.598|0.046|0.009|0.173999995|22|0|55275.28745078|55277.33835439|55276.28533396|11.943|1.076|0.229|5.58300018|16|1|55275.28745078|55277.33835439|55276.30087496|9.687|2.245|0.468|3.33800006|16|0|55275.28745078|55277.33835439|55276.27119115|-18|-30|7|0|1|0||||||||||||||||||||||||||1200999497|0.195|-141.5|1|13.118|0.026|12.792|0.028|12.677|0.03|89401241004143|1|0.0013185341817774|-0.0006087927318638|-0.999998945418955|131000000|
+J064505.54-895500.2|101.2731025|-89.9167463|0.3455|0.3623|-0.0881|302.8384054|-27.1304302|269.9589504|-66.642351|2118.653|558.232|1201089401241004661|1201m894_ab41-004661|1201m894_ab41|4661|16.209|0.063|17.1|0.931999981|15.952|0.153|7.1|0.845899999|12.645|0.333|3.3|0.985899985|9.181||1.0|1.10099995|0.961199999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|15|22|2|22|2|21|0|21|22.704|22.659|21.995|21.726|0.0|0.0|0.0|0.0|0||0||0||0||52.0660019|3.04189992|9.404|2.856|0.0|26.2450008|3.69210005|21.846|3.444|0.0|138.639999|42.5789986|1098.253|23.584|0.0|11.2510004|11.2279997|297.718|9.273|1.906|15.951|0.099|1|0.261|15.821|0.33|1|0.319|12.808||32|0.825|8.628||32|0.576|16.624|0.104|1|16.536|0.341|1|13.995||32|9.638||32|16.212|0.099|1|16.14|0.33|1|13.633||32|9.204||32|16.009|0.106|1|16.066|0.401|1|13.351||32|8.857||32|15.856|0.114|1|16.149|0.535|1|13.124||32|8.563||32|15.705|0.12|1|15.367||32|12.926||32|8.302||32|15.532|0.121|1|15.305||32|12.75||32|8.066||32|15.314|0.115|1|15.145||32|12.59||32|7.85||32|15.035|0.102|1|14.883||32|12.446||32|7.65||32|16.235|0.319|0.068|0.994|21|0|55275.02271543|55276.94144233|55276.03624953|15.963|0.476|0.101|2.80200005|20|0|55275.02271543|55276.94144233|55276.03624953|12.676|1.858|0.405|2.97300005|12|1|55275.02271543|55276.94144233|55276.00889862|10.55|6.705|1.463|2.98200011|12|0|55275.02271543|55276.94144233|55276.00889862|-18|36|26|0|1|0|||||||||||||||||||||||||||||0|||||||1201089401241004661|1|-0.000284050621974|0.0014250157280585|-0.999998944322152|111000000|
+J193117.67-895500.1|292.8236308|-89.916719|0.6143|0.636|-0.206|303.0240918|-27.1425366|270.080962|-66.4839276|2076.979|568.135|3004089401241005082|3004m894_ab41-005082|3004m894_ab41|5082|16.93|0.106|10.3|0.825800002|16.786|0.316|3.4|0.885999978|12.844||0.6|1.11300004|9.076||0.9|0.992699981|0.949100018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|5|22|2|22|0|21|1|21|22.347|22.037|21.624|22.049|0.0|0.0|0.0|0.0|0||0||0||0||26.7959995|2.60820007|9.342|2.738|0.099|12.1730003|3.54049993|21.759|3.383|0.169|27.5839996|43.9399986|1096.719|24.193|0.0|11.3959999|12.8660002|298.062|9.778|0.919|16.728|0.161|0|0.261|16.041||32|0.319|12.503||32|0.825|8.968||32|0.576|17.292|0.154|0|16.497||32|13.685||32|9.975||32|16.989|0.161|0|16.36||32|13.328||32|9.544||32|16.905|0.192|0|16.238||32|13.05||32|10.577||32|16.744|0.203|1|16.01||32|12.822||32|8.799||32|16.404|0.179|1|15.805||32|12.526||32|8.379||32|15.929|0.137|1|15.625||32|12.246||32|8.023||32|15.46|0.103|1|15.463||32|12.013||32|7.786||32|15.098|0.085|1|15.313||32|11.824||32|7.643||32|17.005|0.561|0.12|2.287|20|1|55275.28745078|55277.20605032|55276.24673901|17.54|2.345|0.5|3.80200005|16|1|55275.28745078|55277.20605032|55276.24673901|13.453|4.392|0.958|2.50500011|10|0|55275.28745078|55277.20605032|55276.22941141|11.555|||2.20300007|8|0|55275.28745078|55277.20605032|55276.22941141|4|4|-15|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005082|1|0.0005638167861672|-0.0013397201355101|-0.999998943629737|131000000|
+J150427.78-895500.1|226.1157708|-89.9167169|0.795|0.8139|0.2647|302.9832008|-27.0585036|269.8552131|-66.5006163|2101.677|563.361|2403089401241005330|2403m894_ab41-005330|2403m894_ab41|5330|17.339|0.144|7.5|0.977699995|16.628|0.245|4.4|0.973200023|12.456||1.6|0.958899975|9.415||-1.0|0.952799976|0.963100016|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BBUU|3|0000|2|23|1|23|0|22|0|22|23.448|23.288|22.318|22.301|0.0|0.0|0.0|0.0|8|h|0||0||0||18.375|2.4374001|9.404|2.59|0.0|14.0839996|3.1796999|21.789|3.184|0.0|74.1610031|45.4560013|1096.442|25.16|2.536|-13.5790005|13.5769997|298.325|10.023|1.506|16.998|0.523|1|0.261|15.968|0.335|1|0.319|11.697||32|0.825|8.967||32|0.576|17.02||32|17.015|0.466|1|13.036||32|9.981||32|17.259|0.523|1|16.287|0.335|1|12.522||32|9.543||32|16.908|0.487|1|15.815|0.279|1|12.185||32|9.2||32|16.766|0.53|1|15.529|0.266|1|11.953||32|8.907||32|15.917||32|15.364|0.276|1|11.734||32|8.648||32|15.846||32|15.211|0.283|1|11.516||32|8.414||32|15.808||32|15.05|0.284|1|11.347||32|8.199||32|15.778||32|14.914|0.289|1|11.228||32|8.001||32|17.485|0.894|0.186|4.356|19|2|55275.02271543|55276.94144233|55276.02956479|16.867|1.947|0.406|3.21499991|12|1|55275.02271543|55276.94144233|55276.02956479|13.166|2.849|0.607|2.25699997|12|0|55275.02271543|55276.94144233|55276.00315326||||3.73900008|7|0|55275.02271543|55276.94144233|55276.00315326|18|-62|37|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241005330|1|-0.0010076159916298|-0.0010476449445797|-0.999998943574484|121000000|
+J145620.69-895500.0|224.0862484|-89.9166922|0.4494|0.4625|0.1448|302.9804128|-27.0569097|269.8499158|-66.5026764|2109.146|561.389|2403089401241004791|2403m894_ab41-004791|2403m894_ab41|4791|16.614|0.081|13.4|1.01900005|16.118|0.158|6.9|0.869599998|12.938|0.465|2.3|0.990100026|9.388||0.2|0.976599991|0.961099982|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0nnn|ABCU|7|0000|11|23|2|23|1|22|0|22|23.592|23.504|22.754|22.551|0.0|0.0|0.0|0.0|8|h|0||0||0||35.8540001|2.68519998|9.545|2.612|0.0|22.5310001|3.28620005|21.78|3.182|0.118|105.910004|45.3829994|1096.472|25.327|2.955|1.98459995|12.9280005|298.264|9.883|0.764|16.309|0.195|1|0.261|15.905|0.33|1|0.319|11.839||32|0.825|8.903||32|0.576|17.107|0.229|1|16.815|0.409|1|13.12||32|9.781||32|16.57|0.195|1|16.224|0.33|1|12.664||32|9.479||32|16.267|0.191|1|15.874|0.311|1|12.322||32|9.381||32|16.089|0.201|1|15.624|0.307|1|12.051||32|8.886||32|15.936|0.21|1|15.436|0.31|1|11.84||32|8.587||32|15.738|0.206|1|15.296|0.322|1|11.675||32|8.374||32|15.528|0.198|1|15.181|0.337|1|11.554||32|8.144||32|15.368|0.197|1|15.094|0.358|1|11.466||32|7.896||32|16.617|0.415|0.087|2.11|22|0|55275.02271543|55276.94144233|55276.02956479|16.11|0.992|0.207|2.43600011|17|0|55275.02271543|55276.94144233|55276.02956479|12.611|1.863|0.397|3.85599995|12|0|55275.02271543|55276.94144233|55276.00315326|10.768|7.636|1.628|2.62800002|9|0|55275.02271543|55276.94144233|55276.00315326|4|0|-39|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004791|1|-0.0010443953491099|-0.0010116035536733|-0.999998942947744|121000000|
+J144137.18-895459.8|220.4049199|-89.9166134|0.558|0.5733|0.1638|302.9752164|-27.0542155|269.8407161|-66.5065779|2122.533|557.225|2403089401241004973|2403m894_ab41-004973|2403m894_ab41|4973|16.867|0.097|11.2|0.776199996|16.616|0.243|4.5|0.890399992|13.09||0.0|1.05999994|9.424||-0.6|0.992200017|0.923500001|1|0|0.0|0.0|0.0|0.0|0000|h000|0|1nnn|ABUU|3|0000|4|23|2|24|0|22|0|23|23.662|23.735|22.966|22.747|0.0|0.0|0.0|0.0|8|h|0||0||0||28.3889999|2.5315001|9.631|2.651|0.632|14.2399998|3.18160009|21.79|3.13|0.99|1.81579995|45.0950012|1096.735|24.915|3.671|-8.23880005|13.4689999|297.721|9.809|0.415|16.792|0.277|1|0.261|16.195|0.352|1|0.319|11.944||32|0.825|8.717||32|0.576|17.422|0.28|0|17.139|0.45|0|13.129||32|9.727||32|17.053|0.277|1|16.514|0.352|1|12.769||32|9.293||32|16.861|0.304|1|16.166|0.333|1|12.478||32|8.946||32|16.606|0.298|1|15.925|0.331|1|12.245||32|8.651||32|16.255|0.259|1|15.668|0.314|1|12.045||32|8.391||32|15.954|0.232|1|15.404|0.291|1|11.864||32|8.155||32|15.796|0.233|1|15.183|0.276|1|11.698||32|7.939||32|15.772|0.262|1|15.029|0.276|1|11.547||32|7.74||32|16.856|0.354|0.074|1.82|22|0|55275.02271543|55276.94144233|55276.02956479|16.555|1.383|0.282|3.39199996|18|0|55274.89041135|55276.94144233|55275.98210006||||3.4749999|9|0|55275.02271543|55276.94144233|55276.00315326||||2.42000008|7|0|55274.89041135|55276.94144233|55275.95477317|-30|-72|-40|1|1|0|||||||||||||||||||||||||||||0|||||||2403089401241004973|1|-0.001108239465294|-0.0009433498170012|-0.999998940947644|121000000|
+J031104.99-895457.7|47.770806|-89.9160436|0.7509|0.7787|0.2607|302.8778946|-27.1969936|270.1422114|-66.6228112|2000.048|137.528|2403089401241005982|2403m894_ab41-005982|2403m894_ab41|5982|18.873||-6.2|0.914900005|17.493||-2.4|1.02100003|11.704|0.134|8.1|0.991299987|8.973||1.7|1.07099998|0.996200025|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|1|24|2|23|0|23|23.637|23.612|22.948|22.864|0.0|0.0|0.0|0.0|0||0||0||0||-13.8140001|2.23709989|9.335|2.718|0.0|-7.58029985|3.17440009|21.754|3.269|0.0|330.019989|40.7529984|1098.505|22.399|0.167|18.8689995|10.974|298.178|9.064|0.424|18.084||32|0.261|16.758||32|0.319|11.673||32|0.825|8.493||32|0.576|18.72||32|17.448||32|12.967||32|9.706||32|18.345||32|17.077||32|12.498||32|9.069||32|17.76||32|16.789||32|12.138||32|8.56||32|17.268|0.33|1|16.312||32|11.865||32|8.188||32|16.29|0.163|1|15.719||32|11.619||32|7.885||32|15.6|0.101|1|15.748|0.367|1|11.389||32|7.648||32|15.003|0.068|1|15.085|0.232|1|11.176||32|7.453||32|14.544|0.052|1|14.633|0.176|1|11.715|0.533|1|7.293||32|||||0||55275.28745078|55277.33835439|55276.29362153||||2.5539999|6|0|55275.28745078|55277.33835439|55276.29362153|11.686|0.598|0.125|3.44799995|21|0|55275.28745078|55277.33835439|55276.27983905|9.873|3.815|0.795|3.22199988|13|0|55275.28745078|55277.33835439|55276.27983905||-46|-25||0|0|||||||||||||||||||||||||||||0|||||||2403089401241005982|1|0.0009848357520456|0.0010850109992551|-0.99999892642426|101000000|
+J041717.61-895457.6|64.3234016|-89.9160101|1.3357|1.4822|0.4779|302.8580624|-27.1804634|270.0917682|-66.6363784|2031.779|571.329|600089401241005364|0600m894_ab41-005364|0600m894_ab41|5364|18.288||1.2|1.05700004|16.774||1.7|1.09200001|12.034|0.187|5.8|1.204|9.103||1.0|1.10800004|1.11099994|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|UUBU|4|0000|2|23|1|23|1|22|0|22|23.415|23.605|22.152|22.368|0.0|0.0|0.0|0.0|129|D|129|D|0||0||2.83139992|2.41759992|9.362|2.785|0.0|5.67150021|3.32069993|21.786|3.343|0.137|243.5|41.8950005|1098.802|22.722|3.26|12.2969999|11.9490004|298.417|9.355|1.695|16.374|0.125|1|0.261|16.359|0.531|1|0.319|11.88||32|0.825|8.995||32|0.576|17.458|0.192|1|16.43||32|13.069||32|9.993||32|16.635|0.125|1|16.678|0.531|1|12.705||32|9.571||32|15.997|0.091|1|16.175|0.436|1|12.42||32|9.235||32|15.418|0.066|1|15.651|0.334|1|12.188||32|8.956||32|14.853|0.048|1|15.054|0.232|1|11.987||32|8.707||32|14.27|0.033|1|14.412|0.152|1|11.805||32|8.426||32|13.695|0.023|1|13.817|0.102|1|11.64||32|8.14||32|13.231|0.018|1|13.359|0.077|1|11.489||32|7.846||32|19.57|7.619|1.589|2.936|11|1|55275.28745078|55277.20605032|55276.24819836|17.418|2.987|0.623|4.0079999|14|0|55275.28745078|55277.20605032|55276.24819836|11.929|0.812|0.173|3.78900003|17|0|55275.28745078|55277.20605032|55276.23172471|9.862|2.529|0.539|3.37700009|15|0|55275.28745078|55277.20605032|55276.23172471|28|-3|-12|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005364|1|0.0006351609871868|0.001321147685936|-0.999998925569079|101000000|
+J200838.88-895457.5|302.162014|-89.9159788|0.4675|0.4708|-0.1642|303.0210383|-27.155902|270.1121181|-66.4895409|2041.471|571.91|3004089401241004960|3004m894_ab41-004960|3004m894_ab41|4960|16.618|0.083|13.1|0.838100016|16.589|0.256|4.2|1.05999994|12.314|0.254|4.3|1.097|9.328|0.481|2.3|1.13|1.02600002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBC|15|0000|10|22|2|22|0|21|1|21|23.986|23.894|23.81|23.745|0.0|0.0|0.0|0.0|0||0||0||0||35.7140007|2.73320007|9.299|2.804|0.256|14.6020002|3.44169998|21.74|3.336|0.0|188.100006|43.973999|1096.58|24.29|1.089|29.4169998|13.0419998|298.245|9.641|1.232|16.509|0.241|1|0.261|16.566|0.457|1|0.319|12.522|0.479|1|0.825|8.388||32|0.576|17.115|0.236|0|17.174|0.426|0|13.173||32|9.432||32|16.77|0.241|1|16.885|0.457|1|13.347|0.479|1|8.964||32|16.639|0.277|1|16.16||32|12.93|0.423|1|8.676||32|16.44|0.286|1|16.105||32|12.615|0.394|1|8.491||32|16.138|0.261|1|15.839||32|12.362|0.375|1|8.366||32|15.847|0.235|1|15.465||32|12.187|0.376|1|8.247||32|15.668|0.233|1|15.783|0.439|1|12.091|0.401|1|8.07||32|15.6|0.251|1|15.464|0.376|1|12.007|0.427|1|7.863||32|16.62|0.273|0.058|1.119|21|0|55275.28745078|55277.20605032|55276.24673901|16.556|1.939|0.413|3.50999999|14|1|55275.28745078|55277.20605032|55276.24673901|12.186|0.934|0.204|4.66099977|16|0|55275.28745078|55277.20605032|55276.22941141|9.715|2.063|0.45|4.10699987|14|1|55275.28745078|55277.20605032|55276.22941141|13|56|23|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004960|1|0.0007806113955049|-0.0012414143443783|-0.999998924767559|131000000|
+J091703.34-895456.9|139.2639523|-89.9158317|0.8257|0.7745|-0.2112|302.8558338|-27.0781836|269.8393132|-66.615553|1975.973|560.286|1201089401241005144|1201m894_ab41-005144|1201m894_ab41|5144|17.146|0.142|7.7|0.906599998|16.828|0.313|3.5|0.967400014|12.961|0.446|2.4|1.12699997|9.509||-0.8|1.01900005|0.999800026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BBCU|7|0000|4|22|0|22|1|21|0|21|22.338|21.912|21.552|21.678|0.0|0.0|0.0|0.0|0||0||0||0||21.9519997|2.86209989|9.408|2.803|0.142|11.7180004|3.38030005|21.796|3.274|0.095|103.620003|42.5299988|1094.688|23.468|3.237|-9.49370003|12.4580002|298.117|9.727|1.804|16.947|0.293|0|0.261|16.085|0.262|0|0.319|12.237||32|0.825|8.917||32|0.576|17.481|0.272|0|16.956|0.314|0|13.42||32|9.929||32|17.208|0.293|0|16.404|0.262|0|13.062||32|9.493||32|17.209|0.379|1|16.047|0.244|1|12.781||32|9.145||32|17.188|0.462|1|15.739|0.228|1|12.546||32|8.85||32|16.878|0.417|1|15.426|0.206|1|12.347||32|8.588||32|16.422|0.325|1|15.096|0.18|1|12.164||32|8.26||32|16.083|0.276|1|14.8|0.159|1|12.001||32|7.964||32|15.882|0.264|1|14.566|0.148|1|11.849||32|7.759||32|17.067|0.754|0.161|2.983|18|1|55274.89041135|55276.94144233|55275.96707613|16.766|1.12|0.239|2.40899992|17|0|55274.89041135|55276.94144233|55275.96707613|12.822|3.383|0.738|3.69400001|14|1|55274.89041135|55276.94144233|55275.93643125||||3.58500004|8|0|55274.89041135|55276.94144233|55275.93643125|34|56|71|1|1|1|||||||||||||||||||||||||||||0|||||||1201089401241005144|1|-0.0011131061958212|0.0009586414575711|-0.999998920999994|111000000|
+J170115.78-895456.7|255.3157878|-89.915771|0.4335|0.479|0.0417|303.0158006|-27.0891819|269.9464989|-66.4792219|1991.113|565.087|2403089401241004653|2403m894_ab41-004653|2403m894_ab41|4653|16.46|0.078|14.0|0.872699976|16.567|0.265|4.1|0.987900019|12.614||0.6|1.00300002|8.991||0.9|1.07299995|0.979700029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|8|20|0|20|1|19|1|19|21.298|21.692|21.08|21.727|0.0|0.0|0.0|0.0|0||0||0||0||41.2980003|2.95580006|9.318|2.697|0.105|14.8940001|3.63030005|21.723|3.388|0.196|32.9949989|54.8800011|1097.592|25.995|3.535|12.3459997|13.9060001|298.783|9.919|0.32|16.116|0.17|1|0.261|16.264|0.399|1|0.319|12.223||32|0.825|8.611||32|0.576|16.849|0.189|1|17.054|0.443|1|13.514||32|9.567||32|16.377|0.17|1|16.583|0.399|1|13.048||32|9.187||32|16.02|0.157|1|16.234|0.373|1|12.674||32|9.076||32|15.707|0.145|1|15.918|0.344|1|12.374||32|8.943||32|15.454|0.139|1|15.612|0.312|1|12.137||32|8.699||32|15.155|0.124|1|15.196|0.251|1|12.001||32|8.48||32|14.69|0.094|1|14.639|0.175|1|11.93||32|8.279||32|14.093|0.063|1|14.027|0.114|1|11.875||32|8.092||32|16.481|0.371|0.083|1.415|19|0|55275.02271543|55276.94144233|55276.09125832|16.686|1.281|0.287|3.75200009|16|0|55275.02271543|55276.94144233|55276.09125832|14.491|8.448|1.938|3.34899998|8|1|55275.02271543|55276.94144233|55276.06392358|9.837|3.311|0.76|4.87699986|9|0|55275.02271543|55276.94144233|55276.06392358|-11|-45|-47|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004653|1|-0.0003726507086807|-0.0014220563311056|-0.999998919443036|121000000|
+J203853.24-895456.4|309.721873|-89.9156883|0.1958|0.1881|-0.0546|303.016456|-27.1662273|270.1351008|-66.4958018|2012.476|569.891|3004089401241004334|3004m894_ab41-004334|3004m894_ab41|4334|15.282|0.039|28.1|0.935199976|15.151|0.072|15.1|0.887099981|12.946|0.429|2.5|1.04999995|9.505||-0.9|1.02400005|0.970200002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AACU|7|0000|24|24|10|24|1|23|0|23|24.646|24.643|23.902|23.802|0.0|0.0|0.0|0.0|0||0||0||0||122.279999|4.35179996|9.335|2.88|0.0|54.9150009|3.63730001|21.754|3.327|0.049|105.120003|41.5299988|1095.901|24.386|2.28|-11.3690004|12.4960003|298.865|9.824|0.94|15.078|0.068|1|0.261|15.068|0.156|1|0.319|12.275||32|0.825|8.619||32|0.576|15.786|0.073|1|15.851|0.171|1|13.448||32|9.633||32|15.339|0.068|1|15.387|0.156|1|13.1||32|9.195||32|15.106|0.07|1|15.201|0.17|1|12.868||32|8.854||32|14.956|0.076|1|15.161|0.204|1|12.635||32|8.559||32|14.851|0.083|1|15.243|0.265|1|12.397||32|8.3||32|14.749|0.089|1|15.387|0.356|1|12.204||32|8.065||32|14.615|0.091|1|15.428|0.431|1|12.039||32|7.849||32|14.455|0.091|1|15.246|0.419|1|11.894||32|7.65||32|15.29|0.081|0.017|0.396|23|0|55275.28745078|55277.33835439|55276.26603696|15.154|0.324|0.066|1.48500001|23|0|55275.28745078|55277.33835439|55276.26603696|12.686|2.34|0.488|4.94399977|14|1|55275.28745078|55277.33835439|55276.25105515||||3.83599997|10|0|55275.28745078|55277.33835439|55276.25105515|13|4|-1|0|0|0||||||||||||||||||||||||||996409808|0.204|121.6|1|16.096|0.093|15.65|0.152|15.122|0.169|3004089401241004334|1|0.0009403894486846|-0.0011318251225236|-0.999998917319202|131000000|
+J024345.83-895455.8|40.9409879|-89.9155258|1.4165|1.3626|0.5401|302.8872067|-27.2026791|270.1607758|-66.6159811|1974.427|143.473|2403089401241005800|2403m894_ab41-005800|2403m894_ab41|5800|18.807||-0.7|0.986199975|17.064||0.8|0.999800026|11.97|0.17|6.4|0.984799981|9.581||-0.6|0.988499999|0.987200022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|0|24|1|23|0|23|23.542|23.873|22.979|22.852|0.0|0.0|0.0|0.0|0||0||0||0||-1.55209994|2.37680006|9.333|2.765|0.064|2.70449996|3.36089993|21.741|3.341|0.079|258.230011|40.4539986|1098.295|22.059|1.699|-6.95590019|11.6619997|298.352|9.156|0.892|15.154|0.036|1|0.261|14.989|0.14|1|0.319|12.104|0.443|1|0.825|8.344||32|0.576|16.617|0.078|1|16.515|0.305|1|12.866||32|9.583||32|15.415|0.036|1|15.308|0.14|1|12.929|0.443|1|8.92||32|14.265|0.017|1|14.202|0.066|1|12.327|0.327|1|8.461||32|13.254|0.01|1|13.271|0.035|1|11.842|0.26|1|8.115||32|12.521|0.008|1|12.583|0.023|1|11.435|0.215|1|7.901||32|12.052|0.007|1|12.126|0.018|1|11.092|0.186|1|7.76||32|11.745|0.006|1|11.825|0.016|1|10.804|0.166|1|9.795||32|11.546|0.006|1|11.632|0.016|1|10.586|0.156|1|7.517||32|22.679|||2.275|12|0|55275.28745078|55277.33835439|55276.29362153|18.22|6.067|1.238|2.99399996|11|0|55275.28745078|55277.33835439|55276.29362153|11.957|0.678|0.141|2.30299997|21|0|55275.28745078|55277.33835439|55276.27983905||||2.12899995|8|0|55275.28745078|55277.33835439|55276.27983905|-38|7|20|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005800|1|0.0011137035565222|0.0009661156768949|-0.999998913141853|101000000|
+J163753.91-895455.2|249.4746502|-89.9153465|0.9541|1.0617|0.11|303.0113055|-27.0815527|269.9256193|-66.4814118|2012.916|570.867|2403089401241005457|2403m894_ab41-005457|2403m894_ab41|5457|17.471|0.171|6.3|0.779600024|16.901||1.1|0.932600021|13.032||-1.2|1.05299997|9.354||-2.0|0.918600023|0.916999996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|21|1|21|0|20|0|20|20.761|20.941|20.367|21.231|0.0|0.0|0.0|0.0|0||0||0||0||16.2759991|2.56329989|9.51|2.64|0.0|3.97679996|3.48729992|21.758|3.303|0.03|-58.0|48.5519981|1096.999|25.582|3.968|-28.3770008|14.368|298.648|10.103|1.666|16.749||32|0.261|15.908||32|0.319|12.808||32|0.825|10.639||32|0.576|17.242||32|16.745||32|13.794||32|9.958||32|17.01||32|16.227||32|13.633||32|11.215||32|16.922||32|15.859||32|13.034||32|9.108||32|17.835||32|15.627||32|12.721||32|8.775||32|16.705||32|15.518||32|12.38||32|8.531||32|16.525||32|15.519||32|12.023||32|8.34||32|16.362||32|15.509||32|11.67||32|8.08||32|16.151||32|15.38||32|11.961|0.419|1|7.806||32|17.522|0.791|0.173|2.377|18|0|55275.02271543|55276.94144233|55276.1128427|18.568|5.117|1.117|3.51099992|11|0|55275.02271543|55276.94144233|55276.1128427|16.071|||4.06799984|8|0|55275.02271543|55276.94144233|55276.08795391||||3.03699994|4|0|55275.02271543|55276.94144233|55276.08795391|-14|-45|18|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005457|1|-0.0005180372366257|-0.0013836869354287|-0.999998908523347|121000000|
+J014503.21-895454.9|26.2633812|-89.9152559|0.4974|0.4858|0.1649|302.9098266|-27.2105903|270.1913397|-66.5980916|1949.816|550.994|89401241005045|0000m894_ab41-005045|0000m894_ab41|5045|16.654|0.087|12.4|0.852800012|16.915|0.334|3.3|0.79369998|11.883|0.171|6.3|1.03199995|9.624||-0.8|1.08599997|0.935199976|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|8|22|0|22|3|20|0|21|24.127|24.296|23.887|23.644|0.0|0.0|0.0|0.0|0||0||0||0||34.5309982|2.78180003|9.332|2.642|0.126|10.8120003|3.32500005|21.806|3.297|0.156|279.829987|44.1049995|1099.659|22.661|4.221|-8.90359974|11.2080002|298.496|9.13|1.053|16.578|0.259|1|0.261|15.781||32|0.319|11.651||32|0.825|8.798||32|0.576|17.171|0.254|0|16.425||32|12.956||32|9.812||32|16.839|0.259|1|16.1||32|12.476||32|9.374||32|16.658|0.284|1|15.967||32|12.185||32|9.028||32|16.311|0.255|1|15.763||32|12.045||32|8.733||32|15.735|0.182|1|15.336||32|11.992||32|8.47||32|15.089|0.119|1|15.406|0.396|1|11.934||32|8.233||32|14.593|0.088|1|14.815|0.268|1|11.859||32|8.015||32|14.307|0.078|1|14.487|0.227|1|11.801||32|7.815||32|16.671|0.513|0.109|2.6|21|1|55275.28745078|55277.33835439|55276.34599308|16.952|1.688|0.36|3.24000001|15|0|55275.28745078|55277.33835439|55276.34599308|11.73|0.878|0.196|3.69700003|15|1|55275.28745078|55277.33835439|55276.29967857||||3.45900011|8|0|55275.28745078|55277.33835439|55276.33339187|-6|-36|1|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005045|1|0.0013263783746364|0.0006544825773604|-0.999998906185883|101000000|
+J111608.37-895454.4|169.0348951|-89.9151322|0.9966|0.9258|0.1343|302.893424|-27.0505152|269.7904046|-66.5767119|2091.317|569.948|1802089401241005185|1802m894_ab41-005185|1802m894_ab41|5185|17.225|0.152|7.2|0.868200004|17.408||-0.2|1.102|12.989||-0.3|1.03199995|9.352||-0.6|0.871200025|0.965300024|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|21|0|21|0|20|0|20|20.75|20.722|19.975|19.829|0.0|0.0|0.0|0.0|0||0||0||0||20.4179993|2.8499999|9.401|2.832|0.083|-0.575100005|3.43420005|21.781|3.517|0.067|-16.1079998|50.4889984|1094.301|25.328|0.0|-8.72539997|14.3929996|298.639|10.103|0.79|16.695|0.157|0|0.261|16.511||32|0.319|12.752||32|0.825|8.944||32|0.576|17.372|0.165|0|19.146||32|13.943||32|9.836||32|16.956|0.157|0|16.83||32|13.577||32|9.52||32|16.795|0.173|0|16.547||32|13.3||32|9.202||32|16.759|0.207|0|16.308||32|13.067||32|8.936||32|16.844|0.268|1|16.111||32|12.876||32|8.705||32|16.972|0.356|1|15.929||32|12.702||32|8.497||32|16.893|0.384|1|15.765||32|12.546||32|8.308||32|16.395|0.28|1|15.613||32|12.22||32|8.131||32|17.149|0.418|0.091|2.477|20|0|55274.89041135|55276.94144233|55275.96793221|21.956|||3.27999997|10|0|55274.89041135|55276.94144233|55275.96793221|14.512|9.139|2.043|3.64199996|9|0|55274.89041135|55276.94144233|55275.93579789|14.56|||3.56699991|8|0|55274.89041135|55276.94144233|55275.93579789|-36|75|22|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005185|1|-0.0014541797276194|0.0002817449059979|-0.999998902989962|111000000|
+J220752.80-895454.3|331.9700301|-89.9151057|0.652|0.5948|-0.1783|302.9943931|-27.1923204|270.1880852|-66.5207014|2152.446|548.221|89401241005357|0000m894_ab41-005357|0000m894_ab41|5357|16.94|0.103|10.6|0.923300028|17.194||0.6|0.98360002|12.828|0.383|2.8|1.05900002|9.511||0.2|1.09899998|1.01199996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|AUCU|5|0000|4|24|0|24|0|22|0|23|26.659|26.598|25.835|25.659|0.0|0.0|0.0|0.0|0||0||0||0||26.5340004|2.51250005|9.322|2.778|0.08|2.04390001|3.15840006|21.748|3.246|0.203|117.169998|41.3100014|1098.026|23.738|0.0|2.09369993|11.3859997|298.601|9.485|0.835|16.175|0.194|0|0.261|16.063||32|0.319|12.102||32|0.825|8.586||32|0.576|17.118|0.262|0|16.912||32|13.4||32|9.79||32|16.436|0.194|0|16.382||32|12.927||32|9.162||32|15.683|0.127|1|16.356|0.528|1|12.545||32|8.587||32|14.739|0.066|1|15.003|0.189|1|12.181||32|8.826|0.477|1|13.825|0.035|1|13.986|0.089|1|12.553|0.523|1|8.486|0.445|1|13.179|0.023|1|13.312|0.057|1|12.101|0.407|1|8.287|0.461|1|12.821|0.02|1|12.926|0.047|1|11.743|0.342|1|8.162|0.503|1|12.658|0.019|1|12.735|0.045|1|11.467|0.305|1|8.017|0.529|1|16.937|0.524|0.107|3.908|23|0|55275.28745078|55277.33835439|55276.28533396|19.549|||3.24799991|11|0|55275.28745078|55277.33835439|55276.28533396|12.839|1.802|0.384|3.58999991|15|0|55275.28745078|55277.33835439|55276.30087496||||3.73099995|9|0|55275.28745078|55277.33835439|55276.27119115|-54|-36|31|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005357|1|0.001307885523478|-0.0006962928449193|-0.999998902305263|131000000|
+J182423.53-895454.3|276.0980751|-89.9151053|0.0701|0.0698|-0.0065|303.0266326|-27.1181295|270.0225953|-66.476293|2139.69|554.503|3004089401241003944|3004m894_ab41-003944|3004m894_ab41|3944|10.611|0.022|49.2|0.733200014|10.645|0.019|58.5|0.987299979|10.538|0.062|17.6|1.08099997|8.641||1.9|0.97329998|0.941100001|2|1|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|AAAU|7|0000|20|20|20|20|15|19|0|19|21.206|21.381|21.105|21.312|0.0|0.0|0.0|0.0|0||0||0||0||9026.7002|183.5|9.344|2.749|0.0|3482.3999|59.5470009|21.757|3.408|0.125|965.630005|54.7470016|1097.474|25.518|4.09|26.8649998|14.2790003|298.804|9.69|1.153|10.56|0.006|1|0.261|10.573|0.006|1|0.319|10.57|0.128|1|0.825|8.714|0.423|1|0.576|11.204|0.006|1|11.346|0.007|1|11.977|0.157|1|9.943|0.529|1|10.821|0.006|1|10.892|0.006|1|11.395|0.128|1|9.29|0.423|1|10.653|0.006|1|10.695|0.007|1|11.082|0.125|1|8.872|0.386|1|10.56|0.006|1|10.595|0.007|1|10.918|0.133|1|8.654|0.403|1|10.508|0.006|1|10.539|0.007|1|10.835|0.148|1|8.513|0.435|17|10.479|0.006|1|10.508|0.007|1|10.793|0.168|1|8.331|0.445|17|10.461|0.006|1|10.489|0.008|1|10.791|0.196|1|8.142|0.444|17|10.448|0.006|1|10.477|0.008|1|10.833|0.234|1|7.991|0.452|17|10.611|0.017|0.004|0.071|19|0|55275.28745078|55277.20605032|55276.20042507|10.645|0.024|0.005|0.0850000009|19|0|55275.28745078|55277.20605032|55276.20042507|10.489|0.308|0.071|1.24600005|18|1|55275.28745078|55277.20605032|55276.17883594|9.089|1.366|0.313|2.38400006|14|0|55275.28745078|55277.20605032|55276.17883594|-14|3|43|0|0|1||||||||||||||||||||||||||970532020|0.131|94.2|1|11.558|0.024|10.939|0.029|10.734|0.023|3004089401241003944|1|0.0001574010360991|-0.0014733070081221|-0.999998902295084|131000000|
+J052353.82-895454.1|80.9742621|-89.9150399|0.7462|0.8538|0.1229|302.8433088|-27.1597973|270.0336207|-66.6446134|1968.715|559.859|600089401241004915|0600m894_ab41-004915|0600m894_ab41|4915|17.105|0.135|8.1|1.03799999|16.807||1.1|0.902199984|12.649|0.353|3.1|1.09500003|9.491||0.1|1.04799998|1.01600003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|2|21|0|21|0|20|0|20|21.023|22.346|20.689|20.801|0.0|0.0|0.0|0.0|0||0||0||0||22.809|2.83290005|9.395|2.908|0.0|4.26340008|3.84299994|21.735|3.452|0.0|138.220001|44.9269981|1098.322|23.166|0.0|0.72262001|12.3079996|298.389|9.338|0.0|16.666|0.224|1|0.261|15.915||32|0.319|11.923||32|0.825|8.763||32|0.576|17.339|0.235|1|16.618||32|13.105||32|9.771||32|16.927|0.224|1|16.234||32|12.748||32|9.339||32|16.59|0.213|1|15.894||32|12.467||32|8.995||32|16.144|0.175|1|15.53||32|12.232||32|8.702||32|15.58|0.125|1|15.729|0.396|1|12.034||32|8.443||32|14.958|0.083|1|15.121|0.268|1|11.853||32|8.208||32|14.417|0.059|1|14.59|0.191|1|11.689||32|7.993||32|14.012|0.047|1|14.175|0.15|1|11.537||32|7.795||32|17.153|0.75|0.164|2.799|19|1|55275.28745078|55277.20605032|55276.18847532|17.103|2.269|0.495|3.86899996|11|0|55275.28745078|55277.20605032|55276.18847532|12.432|1.432|0.32|2.99900007|14|0|55275.28745078|55277.20605032|55276.16736816|10.748|8.546|1.911|3.07500005|7|0|55275.28745078|55277.20605032|55276.16736816|-16|60|-61|0|1|1||||||||||||||||||||||||||870474396|0.291|83.7|1|16.394|0.184|15.774||15.081||600089401241004915|1|0.0002326240163532|0.0014644721923658|-0.999998900603028|101000000|
+J233052.19-895452.9|352.7174985|-89.9147097|1.0835|0.9879|-0.0652|302.9649396|-27.2082267|270.2125944|-66.5497533|2076.302|573.526|89401241005852|0000m894_ab41-005852|0000m894_ab41|5852|17.525|0.174|6.3|0.826200008|17.244|0.44|2.5|0.843800008|12.585||1.5|1.19599998|9.449||0.2|1.05599999|0.976300001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|1|24|0|24|0|23|0|23|24.667|25.164|24.234|24.058|0.0|0.0|0.0|0.0|0||0||0||0||15.4849997|2.477|9.311|2.714|0.0|7.98950005|3.23709989|21.716|3.296|0.116|63.6380005|41.4449997|1098.807|23.517|1.673|1.92449999|12.2040005|298.703|9.653|0.54|17.119|0.301|1|0.261|16.134||32|0.319|12.428||32|0.825|8.749||32|0.576|17.775|0.311|1|16.71||32|13.617||32|9.761||32|17.38|0.301|1|16.453||32|13.253||32|9.325||32|16.958|0.265|1|16.286||32|12.967||32|8.981||32|16.345|0.187|1|17.834||32|12.735||32|8.687||32|15.815|0.139|1|15.91||32|12.53||32|8.428||32|15.466|0.119|1|15.73||32|12.216||32|8.192||32|15.201|0.108|1|15.564||32|11.913||32|7.976||32|14.843|0.089|1|15.315||32|11.635||32|7.777||32|17.495|0.987|0.202|3.184|19|0|55275.28745078|55277.33835439|55276.36252723|17.076|1.973|0.403|2.68700004|14|0|55275.28745078|55277.33835439|55276.36252723|13.545|3.917|0.817|4.97100019|13|0|55275.28745078|55277.33835439|55276.35174065|10.07|4.832|1.007|3.70600009|11|0|55275.28745078|55277.33835439|55276.35174065|-25|54|-4|0|1|0|||||||||||||||||||||||||||||0|||||||89401241005852|1|0.0014765883103617|-0.0001886969842715|-0.999998892039591|131000000|
+J095052.48-895452.6|147.7186669|-89.9146378|0.3191|0.2887|-0.0847|302.8639649|-27.0679284|269.8182379|-66.6061938|1944.691|550.205|1201089401241004486|1201m894_ab41-004486|1201m894_ab41|4486|15.849|0.055|19.8|0.912|16.119|0.17|6.4|0.98299998|13.063|0.541|2.0|0.920599997|9.555||-0.6|0.950399995|0.93870002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABCU|7|0000|19|22|1|22|1|21|0|21|21.803|21.703|20.941|20.895|0.0|0.0|0.0|0.0|0||0||0||0||72.4960022|3.66930008|9.378|2.849|0.167|22.5030003|3.52679992|21.804|3.362|0.056|94.3249969|46.9920006|1096.32|24.762|0.391|-7.11899996|11.941|297.53|9.518|0.714|15.123|0.077|1|0.261|15.042|0.108|1|0.319|11.86||32|0.825|8.583||32|0.576|16.092|0.105|1|16.116|0.154|1|13.975||32|9.594||32|15.384|0.077|1|15.361|0.108|1|12.685||32|9.159||32|14.824|0.06|1|14.816|0.085|1|12.4||32|8.813||32|14.472|0.053|1|14.453|0.075|1|12.166||32|8.52||32|14.31|0.055|1|14.248|0.075|1|11.965||32|8.259||32|14.239|0.061|1|14.127|0.079|1|11.785||32|8.023||32|14.159|0.066|1|14.004|0.082|1|11.619||32|7.808||32|14.024|0.067|1|13.845|0.081|1|11.468||32|7.608||32|15.837|0.197|0.042|0.654|21|0|55274.89041135|55276.94144233|55275.96707613|16.047|0.793|0.169|3.02600002|17|0|55274.89041135|55276.94144233|55275.96707613|12.574|1.834|0.4|2.94199991|12|0|55274.89041135|55276.94144233|55275.93643125||||3.73099995|9|0|55274.89041135|55276.94144233|55275.93643125|30|-45|5|1|1|0||||||||||||||||||||||||||1207337943|0.158|143.5|1|16.729|0.174|16.155|0.238|15.515|0.273|1201089401241004486|1|-0.0012595738098146|0.0007956952576439|-0.999998890170821|111000000|
+J070714.25-895452.5|106.8094018|-89.9145933|0.7076|0.7531|-0.1905|302.8361853|-27.1222407|269.9377032|-66.642454|2099.733|569.569|1201089401241005019|1201m894_ab41-005019|1201m894_ab41|5019|17.106|0.126|8.6|0.797999978|17.079|0.405|2.7|0.917999983|12.795|0.393|2.8|1.07200003|9.016||1.4|0.971300006|0.935000002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BCCU|7|0000|4|22|0|22|0|21|0|21|21.807|22.579|21.428|21.379|0.0|0.0|0.0|0.0|0||0||0||0||22.7730007|2.64310002|9.353|2.78|0.18|9.29699993|3.46560001|21.812|3.441|0.187|120.760002|43.6930008|1098.272|23.794|0.852|15.8339996|11.6890001|297.997|9.383|0.189|16.236|0.112|1|0.261|16.045|0.368|1|0.319|12.105||32|0.825|8.501||32|0.576|17.085|0.139|1|17.069|0.505|1|13.484||32|9.512||32|16.497|0.112|1|16.364|0.368|1|12.93||32|9.077||32|16.003|0.093|1|15.775|0.279|1|13.234|0.516|1|8.731||32|15.499|0.072|1|15.23|0.209|1|12.83|0.44|1|8.439||32|14.914|0.051|1|14.689|0.154|1|12.497|0.391|1|8.179||32|14.213|0.032|1|14.125|0.108|1|12.17|0.341|1|7.944||32|13.565|0.021|1|13.606|0.078|1|11.843|0.294|1|7.728||32|13.13|0.017|1|13.225|0.063|1|11.542|0.256|1|7.529||32|17.093|0.631|0.134|2.131|19|0|55275.02271543|55276.94144233|55276.03624953|17.198|2.349|0.501|3.28800011|11|0|55275.02271543|55276.94144233|55276.03624953|12.596|1.443|0.315|4.08599997|14|0|55275.02271543|55276.94144233|55276.00889862|10.043|3.428|0.748|2.86500001|9|0|55275.02271543|55276.94144233|55276.00889862|47|12|18|1|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005019|1|-0.0004310729548954|0.00142693623717|-0.999998889013924|111000000|
+J072537.90-895452.4|111.4079392|-89.9145683|0.8787|0.9164|-0.2815|302.8370014|-27.1154254|269.9213549|-66.6402266|2082.135|573.08|1201089401241005274|1201m894_ab41-005274|1201m894_ab41|5274|17.343|0.153|7.1|0.881299973|17.327|0.513|2.1|1.00199997|12.802|0.374|2.9|1.22099996|9.51||-0.2|0.875199974|0.991900027|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCCU|7|0000|3|22|1|22|1|21|0|21|22.252|22.714|21.473|21.414|0.0|0.0|0.0|0.0|0||0||0||0||18.3110008|2.5776|9.422|2.685|0.111|7.40040016|3.49410009|21.822|3.311|0.0|120.0|41.348999|1097.774|23.469|1.479|-3.09800005|12.448|297.993|9.567|0.457|16.775|0.274|1|0.261|16.179||32|0.319|12.085||32|0.825|8.58||32|0.576|17.539|0.313|0|16.813||32|13.274||32|9.853||32|17.036|0.274|1|16.498||32|12.91||32|9.156||32|16.677|0.254|1|16.239||32|12.63||32|8.6||32|16.281|0.218|1|16.587|0.534|1|12.402||32|8.225||32|15.719|0.156|1|15.725|0.291|1|12.198||32|7.888||32|14.924|0.089|1|14.861|0.156|1|12.017||32|8.244|0.485|1|14.106|0.049|1|14.126|0.092|1|11.854||32|7.921|0.439|1|13.488|0.032|1|13.578|0.064|1|11.703||32|7.688|0.426|1|17.398|0.977|0.208|2.901|19|1|55275.02271543|55276.94144233|55276.03624953|17.406|2.973|0.634|3.08100009|12|0|55275.02271543|55276.94144233|55276.03624953|12.791|2.629|0.574|2.63800001|11|0|55275.02271543|55276.94144233|55276.00889862||||3.6400001|9|0|55275.02271543|55276.94144233|55276.00889862|-30|42|37|0|1|0|||||||||||||||||||||||||||||0|||||||1201089401241005274|1|-0.0005442470336405|0.0013881885024902|-0.999998888363306|111000000|
+J051441.48-895452.3|78.6728427|-89.9145407|0.6565|0.7455|0.1159|302.8442951|-27.1631428|270.0423402|-66.6444979|1976.708|564.114|600089401241004896|0600m894_ab41-004896|0600m894_ab41|4896|17.025|0.124|8.7|0.897199988|16.718||1.5|0.979700029|12.177|0.222|4.9|0.940199971|9.477|0.53|2.0|1.03100002|0.958500028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BUBC|13|0000|4|21|0|21|0|20|1|20|22.67|22.525|21.425|21.442|0.0|0.0|0.0|0.0|0||0||0||0||24.552|2.81489992|9.349|2.892|0.149|5.59060001|3.69020009|21.762|3.445|0.148|213.449997|43.5620003|1098.391|23.398|0.0|25.6620007|12.5240002|298.645|9.405|1.44|16.177|0.156|1|0.261|15.941|0.247|1|0.319|12.112||32|0.825|8.591||32|0.576|17.11|0.21|1|16.969|0.344|1|13.37||32|9.552||32|16.438|0.156|1|16.26|0.247|1|12.937||32|9.167||32|15.747|0.108|1|15.645|0.182|1|12.567||32|8.928||32|15.055|0.071|1|15.045|0.13|1|12.264||32|8.76||32|14.508|0.052|1|14.532|0.097|1|12.019||32|8.499||32|14.087|0.042|1|14.093|0.077|1|11.782||32|8.263||32|13.722|0.035|1|13.71|0.063|1|11.538||32|8.047||32|13.424|0.031|1|13.406|0.055|1|11.332||32|7.848||32|17.054|0.651|0.142|3.203|20|1|55275.28745078|55277.20605032|55276.18847532|17.397|2.972|0.649|2.73399997|11|0|55275.28745078|55277.20605032|55276.18847532|12.07|0.896|0.2|3.73099995|16|0|55275.28745078|55277.20605032|55276.16736816|9.358|1.734|0.388|4.46500015|12|1|55275.28745078|55277.20605032|55276.16736816|-15|1|-54|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241004896|1|0.0002929559160796|0.0014624931622402|-0.999998887644672|101000000|
+J093746.23-895451.5|144.4426547|-89.9143333|1.0699|0.9954|-0.2327|302.8599539|-27.0712805|269.8244428|-66.6104276|1955.857|556.511|1201089401241005359|1201m894_ab41-005359|1201m894_ab41|5359|17.427|0.172|6.3|0.903900027|16.992||1.0|0.962000012|12.312||1.8|0.892499983|9.505||-1.1|1.09500003|0.959699988|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|0|22|0|22|0|21|0|21|21.795|21.651|20.918|21.205|0.0|0.0|0.0|0.0|0||0||0||0||16.9540005|2.68580008|9.383|2.801|0.277|3.39240003|3.34019995|21.774|3.296|0.238|90.2190018|49.0890007|1097.395|25.072|4.493|-13.2440004|12.5|298.382|9.906|0.919|17.238|0.395|1|0.261|16.23||32|0.319|11.863||32|0.825|8.758||32|0.576|17.73|0.35|0|16.872||32|13.078||32|9.824||32|17.499|0.395|1|16.549||32|12.688||32|9.334||32|17.517|0.52|1|16.309||32|12.428||32|8.924||32|16.594||32|15.988||32|12.564||32|9.28||32|16.723|0.374|1|16.298|0.541|1|12.14||32|8.489||32|16.0|0.226|1|15.581|0.329|1|11.962||32|8.253||32|15.409|0.153|1|15.008|0.226|1|11.798||32|8.037||32|14.861|0.106|1|14.528|0.167|1|11.646||32|7.838||32|17.332|0.557|0.119|2.089|19|0|55274.89041135|55276.94144233|55275.96707613|17.812|4.259|0.908|2.88000011|12|0|55274.89041135|55276.94144233|55275.96707613|12.604|1.775|0.387|4.26900005|12|0|55274.89041135|55276.94144233|55275.93643125||||3.81800008|8|0|55274.89041135|55276.94144233|55275.93643125|47|3|15|1|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005359|1|-0.0012163676329103|0.0008694647391116|-0.9999988822398|111000000|
+J025540.62-895450.5|43.9192625|-89.9140285|0.8642|0.8398|0.3001|302.882045|-27.2017933|270.1560565|-66.6202651|1891.864|514.161|89401241005115|0000m894_ab41-005115|0000m894_ab41|5115|18.826||-3.4|0.999300003|16.955||1.2|1.02499998|11.54|0.117|9.3|1.03600001|9.367|0.454|2.4|1.04700005|1.02100003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn1n|UUBC|12|0000|0|24|1|24|4|23|0|23|23.719|23.685|22.972|22.879|0.0|0.0|0.0|0.0|0||0||0||0||-7.92840004|2.33579993|9.328|2.747|0.072|3.80780005|3.30649996|21.779|3.312|0.209|383.549988|41.3390007|1098.916|22.285|1.141|28.3999996|11.8629999|299.043|9.606|0.971|16.882|0.175|1|0.261|16.461|0.536|1|0.319|11.432||32|0.825|8.165||32|0.576|18.243|0.346|1|16.676||32|12.76||32|9.298||32|17.143|0.175|1|16.78|0.536|1|12.257||32|8.741||32|16.104|0.086|1|15.773|0.273|1|11.906||32|8.326||32|15.058|0.041|1|14.832|0.143|1|12.377|0.539|1|7.997||32|14.017|0.02|1|13.943|0.076|1|12.03|0.471|1|7.77||32|13.103|0.011|1|13.158|0.044|1|11.663|0.398|1|7.594||32|12.448|0.008|1|12.568|0.03|1|11.351|0.347|1|7.424||32|12.065|0.007|1|12.191|0.025|1|11.108|0.319|1|7.287||32||||2.579|5|0|55275.28745078|55277.33835439|55276.29362153|19.174|||3.11500001|12|1|55275.28745078|55277.33835439|55276.29362153|11.495|0.41|0.086|2.06200004|22|0|55275.28745078|55277.33835439|55276.27983905|9.093|1.453|0.303|2.05999994|13|0|55275.28745078|55277.33835439|55276.27983905|-60|40|9|0|1|0|||||||||||||||||||||||||||||0|||||||89401241005115|1|0.0010808261518344|0.0010408023416247|-0.999998874272024|101000000|
+J214044.02-895450.2|325.1834548|-89.9139586|0.1658|0.1598|-0.0323|303.0034311|-27.1860718|270.1772324|-66.5114833|1953.787|556.649|3004089401241004272|3004m894_ab41-004272|3004m894_ab41|4272|15.035|0.034|31.7|0.944299996|14.831|0.057|18.9|0.836199999|12.273|0.229|4.7|1.03299999|9.326||0.5|0.993099988|0.948300004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABU|7|0000|25|25|17|25|2|24|0|24|25.564|26.478|24.79|25.063|0.0|0.0|0.0|0.0|0||0||0||0||153.470001|4.83990002|9.386|2.836|0.14|73.7040024|3.89240003|21.782|3.28|0.19|195.339996|41.2400017|1098.013|24.383|1.9|5.46089983|12.0120001|299.225|9.797|1.637|14.791|0.051|1|0.261|14.7|0.116|1|0.319|11.772||32|0.825|8.331||32|0.576|15.528|0.056|0|15.525|0.133|0|13.02||32|9.486||32|15.052|0.051|1|15.019|0.116|1|12.597||32|8.907||32|14.785|0.051|1|14.76|0.119|1|12.301||32|8.481||32|14.574|0.052|1|14.581|0.125|1|12.056||32|8.159||32|14.372|0.052|1|14.417|0.129|1|11.813||32|7.915||32|14.155|0.05|1|14.239|0.13|1|11.587||32|7.735||32|13.935|0.048|1|14.054|0.128|1|11.405||32|7.603||32|13.751|0.046|1|13.888|0.126|1|11.252||32|7.525||32|15.037|0.133|0.027|0.466|24|0|55275.28745078|55277.33835439|55276.25865158|14.814|0.318|0.064|1.40400004|24|1|55275.28745078|55277.33835439|55276.25865158|12.194|1.417|0.289|2.42199993|15|1|55275.28745078|55277.33835439|55276.24398629|11.394|||2.49099994|10|0|55275.28745078|55277.33835439|55276.24398629|-9|32|67|0|1|1||||||||||||||||||||||||||1169397401|0.258|-0.7|1|16.811|0.169|15.901|0.176|15.53|0.205|3004089401241004272|1|0.0012328758869317|-0.0008573991593321|-0.999998872441229|131000000|
+J165510.81-895449.0|253.7950684|-89.9136387|0.3554|0.3919|0.0543|303.0167012|-27.0861773|269.939612|-66.4777671|1995.491|571.952|2403089401241004583|2403m894_ab41-004583|2403m894_ab41|4583|16.228|0.066|16.4|0.875800014|16.099|0.175|6.2|0.893400013|12.123|0.277|3.9|1.01100004|9.068||0.6|0.99940002|0.940199971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|13|20|1|20|1|19|0|19|21.148|21.593|20.9|21.517|0.0|0.0|0.0|0.0|0||0||0||0||51.1479988|3.12350011|9.389|2.718|0.0|22.9290009|3.70230007|21.753|3.42|0.0|224.350006|57.2770004|1099.091|26.685|0.403|8.54599953|14.4160004|298.65|10.057|0.869|15.982|0.174|1|0.261|15.715|0.222|1|0.319|11.681||32|0.825|8.648||32|0.576|16.721|0.191|1|16.558|0.256|1|12.907||32|9.63||32|16.243|0.174|1|16.034|0.222|1|12.506||32|9.224||32|15.927|0.168|1|15.732|0.217|1|12.287||32|9.022||32|15.671|0.164|1|15.528|0.222|1|12.135||32|9.743||32|15.472|0.165|1|15.368|0.231|1|12.04||32|8.642||32|15.284|0.163|1|15.193|0.231|1|11.991||32|8.411||32|15.054|0.153|1|14.953|0.215|1|11.944||32|8.924||32|14.746|0.133|1|14.628|0.183|1|11.91||32|9.057||32|16.229|0.329|0.074|1.056|19|1|55275.02271543|55276.94144233|55276.09125832|16.049|0.812|0.181|3.74300003|15|0|55275.02271543|55276.94144233|55276.09125832|11.752|0.586|0.134|1.58899999|14|0|55275.02271543|55276.94144233|55276.06392358|12.456|||3.15400004|9|0|55275.02271543|55276.94144233|55276.06392358|40|23|0|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004583|1|-0.0004206444468231|-0.0014474026600288|-0.999998864041249|121000000|
+J132249.97-895448.5|200.7082183|-89.9134925|0.1003|0.1002|0.0159|302.9451795|-27.0424587|269.796824|-66.5299874|1968.934|564.256|1802089401241003840|1802m894_ab41-003840|1802m894_ab41|3840|13.432|0.026|42.3|1.06500006|13.503|0.03|35.8|1.03299999|12.766||0.8|0.939899981|9.49||-1.6|1.04100001|1.01800001|1|0|0.0|0.0|0.0|0.002|0000|h000|0|00nn|AAUU|3|0000|24|24|24|24|0|23|0|23|23.8|23.859|22.746|22.602|0.0|0.0|0.0|0.0|8|h|0||0||0||671.98999|15.8769999|9.427|2.545|0.047|250.570007|6.99179983|21.767|3.18|0.082|36.75|43.6409988|1095.712|25.254|0.86|-20.1669998|12.6750002|298.311|10.007|1.873|13.408|0.013|0|0.261|13.577|0.055|0|0.319|16.384||32|0.825|8.987||32|0.576|14.057|0.014|0|14.321|0.059|0|15.121||32|9.993||32|13.669|0.013|0|13.896|0.055|0|17.209||32|9.563||32|13.515|0.015|0|13.746|0.062|0|12.556||32|9.223||32|13.435|0.016|1|13.701|0.074|1|12.231||32|8.934||32|13.381|0.018|1|13.701|0.088|1|11.965||32|8.681||32|13.33|0.02|1|13.719|0.106|1|11.738||32|8.45||32|13.274|0.022|1|13.738|0.125|1|11.565||32|8.239||32|13.208|0.024|1|13.747|0.145|1|11.44||32|8.044||32|13.428|0.04|0.008|0.305|23|0|55274.89041135|55276.94144233|55275.98210006|13.493|0.084|0.017|0.351999998|23|0|55274.89041135|55276.94144233|55275.98210006|13.027|2.414|0.503|3.76900005|10|0|55274.89041135|55276.94144233|55275.95477317||||4.65700006|6|0|55274.89041135|55276.94144233|55275.95477317|8|9|31|0|0|0||||||||||||||||||||||||||857927393|0.234|-66.9|1|14.077|0.032|13.564|0.021|13.467|0.049|1802089401241003840|1|-0.0014122949201424|-0.0005338932903819|-0.999998860189857|121000000|
+J123419.97-895448.2|188.5832182|-89.9134032|0.2106|0.1979|0.049|302.9246664|-27.0418005|269.7848493|-66.5476372|2015.244|576.359|1802089401241004153|1802m894_ab41-004153|1802m894_ab41|4153|15.308|0.04|26.8|1.28999996|15.265|0.086|12.6|1.00800002|13.019||-0.6|1.01900005|9.416||0.1|0.91140002|1.05599999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|21|23|9|23|0|22|0|22|23.536|23.053|22.824|22.864|0.0|0.0|0.0|0.0|0||0||0||0||119.339996|4.44540024|9.44|2.696|0.058|49.4269981|3.92869997|21.826|3.351|0.124|-30.6599998|49.1170006|1094.369|25.702|0.982|1.62750006|12.7620001|298.353|10.055|0.305|15.235|0.044|0|0.261|15.212|0.164|0|0.319|12.754||32|0.825|8.401||32|0.576|15.867|0.045|0|15.974|0.176|0|13.946||32|9.44||32|15.496|0.044|0|15.531|0.164|0|13.579||32|8.977||32|15.355|0.05|0|15.33|0.176|0|13.297||32|8.692||32|15.255|0.056|1|15.202|0.194|1|13.065||32|8.378||32|15.131|0.06|1|15.106|0.214|1|12.731||32|8.049||32|14.931|0.059|1|14.985|0.226|1|12.334||32|8.425|0.464|1|14.605|0.051|1|14.792|0.22|1|12.001||32|8.163|0.433|1|14.199|0.04|1|14.513|0.195|1|11.722||32|7.989|0.432|1|15.309|0.112|0.023|0.864|22|0|55274.89041135|55276.94144233|55275.95765212|15.25|0.465|0.097|2.2980001|21|1|55274.89041135|55276.94144233|55275.95765212|14.522|9.964|2.124|4.95900011|9|0|55274.89041135|55276.94144233|55275.92797183|10.538|5.653|1.205|4.27899981|11|0|55274.89041135|55276.94144233|55275.92797183|23|-42|45|1|1|0||||||||||||||||||||||||||857728229|0.438|-141.2|1|16.228|0.132|15.717|0.161|15.006||1802089401241004153|1|-0.001494471056066|-0.0002255697777681|-0.999998857836617|121000000|
+J215435.74-895448.0|328.6489407|-89.9133431|0.2654|0.2472|-0.0687|302.9998486|-27.1902542|270.1857079|-66.515513|1940.829|552.001|3004089401241004506|3004m894_ab41-004506|3004m894_ab41|4506|15.831|0.049|22.1|0.867200017|15.6|0.1|10.8|0.826699972|12.394|0.257|4.2|1.00899994|8.978|0.298|3.6|1.14300001|0.95599997|1|0|0.0|0.0|0.0|0.001|0000|0000|0|00nn|AABB|15|0000|22|25|8|25|2|23|1|24|26.436|26.73|25.568|25.664|0.0|0.0|0.0|0.0|0||0||0||0||73.7099991|3.33599997|9.361|2.774|0.0|36.3190002|3.35459995|21.772|3.261|0.0|174.710007|41.2999992|1097.914|23.924|0.0|40.6310005|11.1459999|297.913|9.229|1.63|15.522|0.094|0|0.261|15.285|0.168|0|0.319|11.994||32|0.825|8.345||32|0.576|16.274|0.107|0|16.164|0.203|0|14.208||32|9.361||32|15.783|0.094|0|15.604|0.168|0|12.819||32|8.921||32|15.493|0.093|1|15.273|0.16|1|12.542||32|8.626||32|15.235|0.091|1|15.008|0.155|1|12.312||32|8.397||32|14.932|0.083|1|14.762|0.15|1|12.105||32|8.158||32|14.594|0.072|1|14.526|0.142|1|11.924||32|7.947||32|14.303|0.064|1|14.329|0.138|1|11.761||32|7.798||32|14.094|0.061|1|14.185|0.139|1|11.61||32|8.951||32|15.836|0.204|0.041|0.849|24|0|55275.28745078|55277.33835439|55276.25865158|15.623|0.526|0.105|3.8269999|24|1|55275.28745078|55277.33835439|55276.25865158|12.349|1.787|0.373|4.43200016|16|1|55275.28745078|55277.33835439|55276.27119668|8.917|1.478|0.302|4.44399977|17|0|55275.28745078|55277.33835439|55276.24398629|4|17|-45|0|0|1|||||||||||||||||||||||||||||0|||||||3004089401241004506|1|0.0012916237875792|-0.0007868969697324|-0.999998856249921|131000000|
+J212503.42-895447.8|321.26429|-89.9132954|0.4707|0.4401|-0.1418|303.0082969|-27.1819978|270.1696567|-66.5063635|1967.376|564.233|3004089401241004839|3004m894_ab41-004839|3004m894_ab41|4839|16.604|0.08|13.6|0.795400023|16.322|0.192|5.7|0.922900021|13.074|0.487|2.2|1.06900001|9.519||0.2|0.927999973|0.925100029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|8|25|2|25|0|24|0|24|25.005|25.326|24.148|24.35|0.0|0.0|0.0|0.0|0||0||0||0||36.1650009|2.65350008|9.33|2.844|0.218|18.6730003|3.30119991|21.761|3.307|0.256|93.4000015|41.9090004|1097.309|24.171|1.395|2.2328999|11.2270002|298.88|9.673|0.463|15.605|0.068|1|0.261|15.592|0.248|1|0.319|11.9||32|0.825|8.647||32|0.576|16.607|0.096|1|16.63|0.343|1|13.292||32|9.716||32|15.866|0.068|1|15.911|0.248|1|12.725||32|9.223||32|15.213|0.049|1|15.329|0.188|1|13.029|0.484|1|8.829||32|14.652|0.036|1|14.811|0.144|1|12.683|0.435|1|8.516||32|14.221|0.029|1|14.379|0.117|1|12.394|0.402|1|8.264||32|13.893|0.026|1|14.029|0.1|1|12.122|0.369|1|8.031||32|13.645|0.024|1|13.767|0.091|1|11.814|0.324|1|7.857||32|13.472|0.023|1|13.591|0.089|1|11.496|0.277|1|7.753||32|16.649|0.344|0.069|1.796|24|0|55275.28745078|55277.33835439|55276.25865158|16.176|1.226|0.245|3.15199995|18|1|55275.28745078|55277.33835439|55276.25865158|12.791|1.61|0.329|2.17499995|12|0|55275.28745078|55277.33835439|55276.24398629|12.2|||4.00099993|11|0|55275.28745078|55277.33835439|55276.24398629|23|41|46|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004839|1|0.0011804198447205|-0.0009469031373419|-0.999998854991064|131000000|
+J065844.88-895446.9|104.6870276|-89.9130528|0.4615|0.4928|-0.1249|302.8342735|-27.1253498|269.9443925|-66.6448053|2108.832|571.391|1201089401241004809|1201m894_ab41-004809|1201m894_ab41|4809|16.667|0.09|12.1|0.896000028|16.024|0.164|6.6|0.920300007|12.461|0.29|3.7|1.03799999|9.151|0.368|2.9|1.02199996|0.965300024|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBC|15|0000|7|22|2|22|0|21|0|21|22.657|22.553|21.887|21.606|0.0|0.0|0.0|0.0|0||0||0||0||34.1479988|2.8197|9.414|2.816|0.211|24.5629997|3.70490003|21.821|3.469|0.141|164.240005|43.8440018|1098.653|23.911|0.615|34.6300011|11.7460003|298.032|9.365|0.083|16.436|0.238|1|0.261|15.768|0.32|1|0.319|12.039||32|0.825|8.49||32|0.576|17.078|0.24|1|16.537|0.345|1|13.234||32|10.284||32|16.697|0.238|1|16.087|0.32|1|12.864||32|9.066||32|16.491|0.255|1|15.865|0.338|1|12.581||32|8.722||32|16.264|0.256|1|15.593|0.326|1|12.348||32|8.429||32|16.006|0.243|1|15.231|0.28|1|12.147||32|8.169||32|15.597|0.197|1|14.825|0.227|1|11.969||32|7.934||32|14.895|0.12|1|14.337|0.169|1|11.803||32|7.718||32|14.079|0.066|1|13.794|0.118|1|11.652||32|7.519||32|16.652|0.4|0.085|1.266|21|0|55275.02271543|55276.94144233|55276.03624953|16.022|0.797|0.17|3.25600004|19|0|55275.02271543|55276.94144233|55276.03624953|12.424|1.328|0.29|4.125|15|0|55275.02271543|55276.94144233|55276.00889862|9.155|1.591|0.347|2.39700007|16|0|55275.02271543|55276.94144233|55276.00889862|37|31|-30|1|1|1|||||||||||||||||||||||||||||0|||||||1201089401241004809|1|-0.0003847490344986|0.0014679300699516|-0.999998848574082|111000000|
+J095712.29-895446.7|149.3012381|-89.9129884|0.1397|0.1319|-0.0169|302.8645836|-27.0650853|269.8115732|-66.6050175|1937.156|551.048|1201089401241004200|1201m894_ab41-004200|1201m894_ab41|4200|14.365|0.03|35.6|0.988699973|14.298|0.045|24.1|0.937699974|12.662|0.387|2.8|1.10699999|9.438||-0.6|0.897700012|0.979799986|1|0|0.0|0.0|0.0|0.001|0000|0000|0|01nn|AACU|7|0000|21|21|21|21|2|20|0|20|21.804|21.72|20.957|20.803|0.0|0.0|0.0|0.0|0||0||0||0||284.399994|7.98449993|9.402|2.888|0.095|120.400002|5.00470018|21.841|3.379|0.263|136.529999|48.6409988|1095.907|24.866|0.691|-7.66060019|13.2989998|297.95|9.988|0.446|14.321|0.037|1|0.261|14.216|0.058|1|0.319|11.771||32|0.825|8.908||32|0.576|14.978|0.039|1|15.0|0.064|1|13.212||32|9.922||32|14.582|0.037|1|14.535|0.058|1|12.596||32|9.484||32|14.375|0.039|1|14.318|0.061|1|12.322||32|8.999||32|14.208|0.041|1|14.182|0.066|1|12.09||32|8.649||32|14.044|0.043|1|14.048|0.071|1|11.883||32|8.352||32|13.891|0.044|1|13.917|0.074|1|11.704||32|8.074||32|13.767|0.045|1|13.81|0.078|1|11.539||32|7.902||32|13.666|0.048|1|13.717|0.082|1|11.389||32|7.814||32|14.365|0.055|0.012|0.263|20|0|55274.89041135|55276.94144233|55275.96793221|14.292|0.193|0.042|0.809000015|20|0|55274.89041135|55276.94144233|55275.96793221|12.045|1.259|0.281|5.48899984|13|1|55274.89041135|55276.94144233|55275.93579789||||2.70600009|7|0|55274.89041135|55276.94144233|55275.93579789|-12|-30|-24|0|1|0||||||||||||||||||||||||||806935937|0.281|-65.5|1|15.444|0.071|14.693|0.065|14.6|0.113|1201089401241004200|1|-0.0013058212506749|0.0007753017552044|-0.99999884686836|111000000|
+J003121.38-895446.5|7.8390849|-89.9129221|0.0734|0.0788|-0.0109|302.9404849|-27.2148999|270.2169683|-66.5724357|2016.9|577.877|89401241004115|0000m894_ab41-004115|0000m894_ab41|4115|11.84|0.023|48.2|0.912899971|11.888|0.021|51.3|1.051|11.526|0.127|8.6|1.04700005|9.366|0.429|2.5|1.24000001|1.05700004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|001n|AABC|15|0000|22|22|22|22|4|21|0|21|21.806|21.822|21.051|21.179|0.0|0.0|0.0|0.0|0||0||0||0||2910.30005|60.3470001|9.305|2.681|0.0|1108.19995|21.6210003|21.769|3.329|0.0|388.579987|45.3019981|1100.516|23.363|1.379|28.4239998|11.2209997|298.348|9.049|0.273|11.841|0.007|0|0.261|11.892|0.008|0|0.319|12.116|0.3|0|0.825|10.154||32|0.576|12.467|0.007|0|12.643|0.009|0|13.491|0.355|0|10.306||32|12.102|0.007|0|12.211|0.008|0|12.941|0.3|0|10.73||32|11.976|0.007|1|12.05|0.009|1|12.629|0.289|0|11.008||32|11.926|0.008|1|11.984|0.009|1|12.42|0.294|1|10.558||32|11.901|0.009|1|11.948|0.01|1|12.276|0.31|1|9.008||32|11.884|0.009|1|11.92|0.011|1|12.182|0.335|1|8.524||32|11.868|0.01|1|11.892|0.012|1|12.107|0.363|1|8.214||32|11.85|0.011|1|11.86|0.013|1|11.988|0.373|1|8.019||32|11.84|0.024|0.005|0.082|21|0|55275.28745078|55277.33835439|55276.34599308|11.888|0.035|0.008|0.151999995|21|0|55275.28745078|55277.33835439|55276.34599308|11.439|0.519|0.113|2.71499991|20|0|55275.28745078|55277.33835439|55276.33339187|9.268|1.793|0.391|2.71000004|16|0|55275.28745078|55277.33835439|55276.33339187|10|-18|-32|0|0|1||||||||||||||||||||||||||1127037907|0.12|-55.0|1|12.431|0.024|12.038|0.027|11.937|0.026|89401241004115|1|0.0015055924693956|0.0002072869401523|-0.999998845111053|101000000|
+J113621.43-895445.9|174.0893061|-89.9127597|0.2866|0.2656|0.0611|302.9003979|-27.0455523|269.7817683|-66.5695411|2072.617|579.092|1802089401241004256|1802m894_ab41-004256|1802m894_ab41|4256|15.692|0.05|21.6|1.16900003|15.821|0.142|7.6|1.023|12.871||-0.8|0.891300023|9.388||-1.0|0.99119997|1.01800001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABUU|3|0000|17|21|4|21|0|20|0|20|20.897|20.676|19.91|20.803|0.0|0.0|0.0|0.0|0||0||0||0||83.7649994|3.88100004|9.4|2.813|0.058|29.6310005|3.87639999|21.728|3.496|0.167|-47.0610008|56.2830009|1095.099|26.035|0.44|-14.25|13.927|298.381|10.182|1.333|15.667|0.105|1|0.261|15.771|0.287|1|0.319|12.487||32|0.825|8.75||32|0.576|16.289|0.107|1|16.502|0.302|1|13.74||32|9.76||32|15.928|0.105|1|16.09|0.287|1|13.312||32|9.326||32|15.756|0.116|1|15.933|0.322|1|12.928||32|8.985||32|15.652|0.13|1|15.925|0.396|1|12.646||32|8.692||32|15.615|0.151|1|16.006|0.513|1|12.526||32|8.432||32|15.584|0.173|1|15.255||32|14.687||32|8.199||32|15.513|0.188|1|15.246||32|12.325||32|7.983||32|15.4|0.195|1|15.244||32|12.174||32|7.785||32|15.67|0.226|0.049|0.994|20|0|55274.89041135|55276.94144233|55275.96793221|15.74|0.737|0.161|3.50999999|18|1|55274.89041135|55276.94144233|55275.96793221||||4.59800005|7|0|55274.89041135|55276.94144233|55275.93579789||||4.58400011|7|0|55274.89041135|55276.94144233|55275.93579789|-8|14|-9|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004256|1|-0.0015145358384764|0.0001567977565632|-0.999998840797157|111000000|
+J192000.34-895445.5|290.0014397|-89.9126652|0.2083|0.213|-0.0619|303.0292944|-27.138981|270.0748509|-66.4786238|2089.511|576.884|3004089401241004368|3004m894_ab41-004368|3004m894_ab41|4368|15.496|0.041|26.3|0.924799979|15.12|0.076|14.4|1.00800002|12.249|0.232|4.7|1.204|9.177||0.5|0.957899988|1.01900005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|21|21|11|21|3|20|0|20|21.945|21.988|21.71|22.181|0.0|0.0|0.0|0.0|0||0||0||0||100.379997|3.80940008|9.284|2.73|0.078|56.4949989|3.93409991|21.716|3.331|0.366|199.759995|42.5979996|1096.301|23.969|4.79|7.27199984|13.2799997|298.58|9.987|0.842|15.224|0.045|0|0.261|14.94|0.12|0|0.319|12.177||32|0.825|8.663||32|0.576|15.926|0.049|0|15.749|0.134|0|13.427||32|9.674||32|15.485|0.045|0|15.259|0.12|0|13.002||32|9.239||32|15.299|0.049|0|15.049|0.127|0|12.74||32|8.896||32|15.202|0.055|1|14.947|0.144|1|12.567||32|8.602||32|15.121|0.061|1|14.889|0.164|1|12.511||32|8.343||32|15.041|0.067|1|14.877|0.191|1|12.509||32|8.109||32|14.975|0.074|1|14.93|0.233|1|12.516||32|7.893||32|14.925|0.081|1|15.06|0.301|1|12.366||32|7.694||32|15.478|0.117|0.026|0.841|20|0|55275.28745078|55277.20605032|55276.23255848|15.117|0.296|0.065|1.49800003|20|0|55275.28745078|55277.20605032|55276.23255848|12.123|1.444|0.323|5.39599991|13|2|55275.28745078|55277.20605032|55276.21365547|10.191|4.267|0.954|3.01300001|10|0|55275.28745078|55277.20605032|55276.21365547|-9|-10|22|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004368|1|0.0005213703685324|-0.0014323413279562|-0.999998838284955|131000000|
+J225813.04-895444.9|344.5543539|-89.9124725|0.0812|0.0835|0.0098|302.978581|-27.2052109|270.2118947|-66.5372551|2109.026|572.909|89401241004135|0000m894_ab41-004135|0000m894_ab41|4135|12.51|0.023|46.3|0.910600007|12.549|0.023|46.4|0.997799993|11.704|0.135|8.0|0.959599972|9.016||1.6|0.99879998|0.963699996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AABU|7|0000|25|25|25|25|1|24|0|24|25.022|25.602|24.502|24.276|0.0|0.0|0.0|0.0|0||0||0||0||1570.5|33.9500008|9.277|2.835|0.15|603.070007|12.9870005|21.739|3.336|0.167|329.910004|41.0449982|1099.56|23.985|0.0|17.1819992|11.0159998|298.352|9.405|0.492|12.512|0.009|1|0.261|12.545|0.013|1|0.319|11.512|0.16|0|0.825|8.521||32|0.576|13.144|0.01|0|13.309|0.015|0|13.095|0.233|0|9.535||32|12.773|0.009|1|12.864|0.013|1|12.337|0.16|0|9.097||32|12.641|0.01|1|12.688|0.014|1|11.855|0.131|1|8.758||32|12.582|0.011|1|12.604|0.016|1|11.52|0.118|1|8.495||32|12.542|0.012|1|12.545|0.018|1|11.259|0.112|1|9.858||32|12.508|0.013|1|12.495|0.02|1|11.05|0.108|1|8.075||32|12.484|0.015|1|12.456|0.022|1|10.888|0.107|1|7.86||32|12.471|0.017|1|12.428|0.024|1|10.756|0.108|1|7.66||32|12.509|0.033|0.007|0.124|24|0|55275.28745078|55277.33835439|55276.36980225|12.549|0.067|0.013|0.244000003|24|0|55275.28745078|55277.33835439|55276.36980225|11.63|0.55|0.112|1.56099999|19|0|55275.28745078|55277.33835439|55276.35976824|9.589|2.443|0.499|3.25099993|15|0|55275.28745078|55277.33835439|55276.35976824|23|-34|-8|1|1|0||||||||||||||||||||||||||1201668487|0.114|52.0|1|13.272|0.024|12.708|0.027|12.592|0.039|89401241004135|1|0.0014724687924413|-0.000406847836206|-0.999998833154566|131000000|
+J080118.73-895444.3|120.3280532|-89.912322|0.5373|0.5482|-0.1809|302.8379657|-27.1018057|269.8883588|-66.6363484|2047.432|581.579|1201089401241004919|1201m894_ab41-004919|1201m894_ab41|4919|16.736|0.095|11.4|1.04999995|16.73|0.289|3.8|1.16999996|12.435|0.289|3.8|1.01800001|8.948||1.5|1.01900005|1.06099999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|6|22|1|22|1|21|0|21|22.219|22.412|21.875|21.353|0.0|0.0|0.0|0.0|0||0||0||0||32.0419998|2.8039|9.423|2.773|0.164|12.8219995|3.4151001|21.873|3.336|0.094|168.229996|44.743|1097.234|23.573|0.473|17.882|11.9399996|298.362|9.546|0.489|16.542|0.202|1|0.261|15.704||32|0.319|11.991||32|0.825|8.722||32|0.576|17.148|0.202|1|16.298||32|13.34||32|9.675||32|16.803|0.202|1|16.023||32|12.816||32|9.298||32|16.677|0.233|1|16.325||32|12.439||32|8.952||32|16.632|0.277|1|15.744||32|12.875|0.506|1|8.661||32|16.485|0.292|1|15.541||32|12.678|0.509|1|8.4||32|16.057|0.233|1|15.359||32|12.547|0.534|1|8.164||32|15.497|0.162|1|15.195||32|11.668||32|7.95||32|14.939|0.111|1|15.042||32|11.528||32|7.75||32|16.814|0.494|0.105|2.647|21|1|55275.02271543|55276.94144233|55275.97309574|16.643|1.913|0.408|2.38700008|13|0|55275.02271543|55276.94144233|55275.97309574|12.193|1.32|0.288|4.99599981|14|0|55275.02271543|55276.94144233|55275.94273751|10.105|2.942|0.642|3.78299999|10|0|55275.02271543|55276.94144233|55275.94273751|8|57|-55|0|1|1|||||||||||||||||||||||||||||0|||||||1201089401241004919|1|-0.0007727100233326|0.0013208496663964|-0.999998829137004|111000000|
+J013745.54-895443.7|24.4397831|-89.9121536|0.6215|0.6125|0.176|302.9120866|-27.2142133|270.201349|-66.5969252|1952.836|561.412|89401241005208|0000m894_ab41-005208|0000m894_ab41|5208|16.893|0.105|10.4|0.90259999|16.761|0.29|3.7|0.92049998|12.717||0.9|0.958800018|9.262||0.7|1.023|0.9472|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|ABUU|3|0000|7|22|0|22|0|21|0|21|23.59|23.986|23.638|23.17|0.0|0.0|0.0|0.0|0||0||0||0||27.7159996|2.67030001|9.328|2.652|0.0|12.4619999|3.32690001|21.77|3.251|0.118|41.4220009|44.1889992|1100.87|23.43|3.01|8.18480015|11.5389996|298.344|9.191|1.313|17.209|0.381|1|0.261|16.07||32|0.319|12.382||32|0.825|8.923||32|0.576|17.549|0.295|1|16.573||32|13.571||32|9.934||32|17.47|0.381|1|16.389||32|13.207||32|9.499||32|16.942||32|18.42||32|12.923||32|9.154||32|16.964||32|16.155||32|12.69||32|8.858||32|16.872||32|15.953||32|12.488||32|8.596||32|16.831||32|15.774||32|12.31||32|8.36||32|16.786||32|15.607||32|12.143||32|8.143||32|16.633||32|15.454||32|11.99||32|7.943||32|16.902|0.728|0.155|3.374|19|2|55275.28745078|55277.33835439|55276.34599308|16.74|1.253|0.267|3.3900001|17|0|55275.28745078|55277.33835439|55276.34599308|13.142|2.71|0.591|4.69299984|10|0|55275.28745078|55277.33835439|55276.33339187|10.239|3.784|0.826|2.02900004|11|0|55275.28745078|55277.33835439|55276.33339187|18|23|40|0|0|0||||||||||||||||||||||||||728598458|0.514|119.6|1|16.551|0.164|16.544||16.928||89401241005208|1|0.001395828409638|0.000634344835468|-0.99999882463415|101000000|
+J182412.75-895443.0|276.0531499|-89.911967|0.129|0.2162|-0.0716|303.0301245|-27.1176891|270.0232557|-66.473165|2143.244|561.913|3004089401241003945|3004m894_ab41-003945|3004m894_ab41|3945|12.45|0.038|28.3|0.733200014|12.47|0.037|29.7|0.987299979|12.195|0.28|3.9|1.08099997|9.366||-0.2|0.97329998|0.941100001|2|1|0.0|0.0|0.0|0.0|0000|d000|0|nnnn|AABU|7|0000|20|20|20|20|0|19|0|19|21.203|21.503|21.653|21.397|0.0|0.0|0.0|0.0|9|dh|0||0||0||1660.09998|58.5849991|9.344|2.749|0.051|648.429993|21.8630009|21.757|3.408|0.207|209.970001|54.0589981|1097.474|25.518|2.24|-3.03299999|14.2089996|298.804|9.69|1.09|11.641|0.006|1|0.261|11.604|0.01|1|0.319|11.409|0.291|1|0.825|8.372||32|0.576|12.697|0.007|1|12.74|0.013|1|13.027|0.431|1|9.453||32|11.902|0.006|1|11.923|0.01|1|12.234|0.291|1|8.948||32|11.271|0.006|1|11.324|0.008|1|11.698|0.23|1|8.627||32|10.847|0.006|1|10.917|0.007|1|11.324|0.202|1|8.414||32|10.62|0.006|1|10.681|0.007|1|11.088|0.195|1|8.309||32|10.52|0.006|1|10.565|0.007|1|10.967|0.206|1|8.217||32|10.48|0.006|1|10.516|0.008|1|10.924|0.23|1|8.1||32|10.462|0.006|1|10.494|0.008|1|10.924|0.265|1|7.952||32|12.448|0.03|0.007|0.141|19|0|55275.28745078|55277.20605032|55276.20042507|12.475|0.059|0.013|0.218999997|19|0|55275.28745078|55277.20605032|55276.20042507|12.105|0.723|0.166|2.61299992|17|0|55275.28745078|55277.20605032|55276.17883594||||3.21399999|8|0|55275.28745078|55277.20605032|55276.17883594|10|24|23|0|0|0||||||||||||||||||||||||||970532015|0.276|164.9|1|13.121|0.027|12.653|0.031|12.617|0.037|3004089401241003945|1|0.0001620217066621|-0.0015278981806594|-0.999998819637361|131000000|
+J144352.96-895442.5|220.9706809|-89.9118117|0.9763|0.9868|0.3204|302.9785729|-27.0503636|269.8329935|-66.5027972|2124.678|569.808|2403089401241005721|2403m894_ab41-005721|2403m894_ab41|5721|17.486|0.163|6.7|0.992799997|17.247|0.427|2.5|0.925100029|13.107||-0.6|0.925400019|9.539||-0.1|0.981999993|0.954200029|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BCUU|3|0000|3|24|0|24|1|22|0|23|23.803|23.567|22.265|22.804|0.0|0.0|0.0|0.0|8|h|0||0||0||16.0620003|2.40700006|9.693|2.661|0.361|7.96330023|3.13059998|21.82|3.162|0.429|-28.0599995|45.2879982|1096.355|25.403|7.694|-0.606400013|12.1120005|297.653|9.816|0.368|17.045|0.312|1|0.261|16.175||32|0.319|12.212||32|0.825|8.794||32|0.576|17.708|0.324|0|16.818||32|13.404||32|9.805||32|17.306|0.312|1|16.494||32|13.037||32|9.37||32|17.153|0.35|1|16.394||32|12.756||32|9.022||32|16.934|0.355|1|16.332||32|12.522||32|8.727||32|16.598|0.314|1|16.132||32|12.323||32|8.466||32|16.246|0.268|1|15.95||32|12.142||32|8.229||32|15.911|0.23|1|15.662||32|11.977||32|8.013||32|15.58|0.195|1|15.423||32|11.827||32|7.813||32|17.489|1.218|0.249|2.25|17|1|55274.89041135|55276.94144233|55275.98210006|17.22|2.866|0.585|3.25099993|14|0|55274.89041135|55276.94144233|55275.98210006||||5.49399996|9|0|55274.89041135|55276.94144233|55275.98510601|14.197|||5.30299997|9|0|55274.89041135|55276.94144233|55275.95477317|-1|-14|12|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005721|1|-0.0011621470765572|-0.0010091954370927|-0.99999881546867|121000000|
+J062928.71-895442.4|97.3696368|-89.9117981|0.6397|0.689|-0.1585|302.8332587|-27.1365601|269.9714573|-66.6481796|2137.55|564.886|1201089401241004993|1201m894_ab41-004993|1201m894_ab41|4993|16.997|0.111|9.7|0.916999996|16.899|0.357|3.0|0.96420002|12.567||1.5|1.08399999|9.647||-0.9|1.06799996|1.00300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BCUU|3|0000|5|23|0|23|0|22|1|22|22.752|22.737|21.782|21.845|0.0|0.0|0.0|0.0|0||0||0||0||25.1989994|2.58789992|9.385|2.824|0.0|10.9759998|3.60489988|21.815|3.452|0.0|64.6200027|42.1980019|1098.087|23.174|4.137|-9.34930038|10.9650002|298.268|9.345|0.0|16.772|0.212|1|0.261|16.615|0.467|1|0.319|12.281||32|0.825|8.975||32|0.576|17.312|0.197|0|17.175|0.416|0|13.47||32|9.982||32|17.033|0.212|1|16.934|0.467|1|13.106||32|9.551||32|17.013|0.27|1|16.142||32|12.825||32|9.215||32|17.027|0.34|1|16.082||32|12.591||32|8.927||32|17.02|0.407|1|16.006||32|12.388||32|8.675||32|17.026|0.483|1|15.871||32|12.209||32|8.446||32|16.811|0.462|1|15.652||32|12.045||32|8.236||32|16.233|0.312|1|15.327||32|11.892||32|8.042||32|17.007|0.64|0.134|3.734|21|1|55275.02271543|55277.20605032|55276.08711043|16.709|1.663|0.347|1.65499997|14|0|55275.02271543|55277.20605032|55276.08711043|13.057|3.208|0.684|4.14599991|12|0|55275.02271543|55277.20605032|55276.06331461||||4.1880002|8|0|55275.02271543|55277.20605032|55276.06331461|13|21|58|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241004993|1|-0.0001974605896955|0.0015266963426677|-0.999998815103094|111000000|
+J034710.21-895442.2|56.792544|-89.9117486|1.0768|1.1179|0.3681|302.8630779|-27.1916939|270.1218695|-66.6345011|2061.302|582.702|600089401241004849|0600m894_ab41-004849|0600m894_ab41|4849|18.509|0.409|2.7|0.921299994|17.424|0.506|2.1|0.894699991|11.917|0.17|6.4|1.04299998|9.301|0.41|2.6|1.05999994|0.97329998|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|CCBC|15|0000|0|23|0|23|2|22|0|22|23.834|23.764|22.87|22.822|0.0|0.0|0.0|0.0|129|D|129|D|0||0||6.25750017|2.35529995|9.351|2.802|0.044|6.76819992|3.15370011|21.752|3.363|0.106|271.029999|42.5489998|1099.546|22.634|2.0|30.1809998|11.401|298.787|9.39|1.819|17.041||32|0.261|16.428||32|0.319|11.833||32|0.825|9.285||32|0.576|17.588||32|16.95||32|13.088||32|9.808||32|17.302||32|16.747||32|12.658||32|9.861||32|17.074||32|16.463||32|12.352||32|9.159||32|16.693||32|16.23||32|12.118||32|8.867||32|16.669|0.328|1|16.025||32|11.917||32|8.605||32|15.949|0.2|1|15.843||32|11.741||32|8.37||32|15.39|0.139|1|15.679||32|11.591||32|8.154||32|14.962|0.108|1|17.867||32|11.45||32|7.954||32|18.558|2.365|0.493|3.284|15|0|55275.28745078|55277.20605032|55276.24819836|17.399|2.876|0.6|3.76799989|14|0|55275.28745078|55277.20605032|55276.24819836|11.886|0.97|0.207|3.99499989|19|0|55275.28745078|55277.20605032|55276.23172471|9.407|1.972|0.42|3.99399996|14|0|55275.28745078|55277.20605032|55276.23172471|-1|-10|-4|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004849|1|0.0008435669349403|0.0012887393394596|-0.999998813772167|101000000|
+J235124.75-895442.0|357.8531291|-89.9116769|0.6351|0.5731|0.1206|302.9576317|-27.213465|270.2218553|-66.5572434|2056.658|583.105|89401241005062|0000m894_ab41-005062|0000m894_ab41|5062|16.933|0.107|10.1|0.912299991|17.137|0.407|2.7|0.966600001|12.15|0.208|5.2|0.960600019|8.784||2.0|0.971700013|0.949800014|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACBU|7|0000|6|23|0|23|3|22|0|22|23.846|23.691|23.015|23.196|0.0|0.0|0.0|0.0|0||0||0||0||26.7099991|2.6322999|9.336|2.75|0.0|8.81540012|3.30599999|21.827|3.364|0.062|218.860001|41.8600006|1099.61|23.429|0.0|24.0650005|12.2559996|298.962|9.502|0.388|16.101|0.162|1|0.261|15.721|0.189|1|0.319|12.063|0.271|1|0.825|8.785||32|0.576|17.06|0.222|1|16.844|0.283|1|13.655|0.395|1|9.713||32|16.362|0.162|1|16.04|0.189|1|12.888|0.271|1|9.361||32|15.826|0.129|1|15.446|0.143|1|12.362|0.217|1|8.989||32|15.375|0.106|1|15.004|0.118|1|11.974|0.188|1|8.664||32|15.029|0.093|1|14.683|0.105|1|11.649|0.167|1|8.387||32|14.792|0.088|1|14.445|0.1|1|11.353|0.15|1|8.196||32|14.554|0.082|1|14.188|0.092|1|11.087|0.136|1|8.104||32|14.124|0.064|1|13.774|0.072|1|10.862|0.127|1|8.006||32|16.897|0.477|0.099|2.031|21|0|55275.28745078|55277.33835439|55276.3344836|16.95|1.483|0.309|2.35899997|15|0|55275.28745078|55277.33835439|55276.3344836|12.044|1.046|0.223|4.5710001|16|1|55275.28745078|55277.33835439|55276.32193202|9.595|1.846|0.394|4.49700022|13|0|55275.28745078|55277.33835439|55276.32193202|46|-17|45|1|0|1|||||||||||||||||||||||||||||0|||||||89401241005062|1|0.0015404458425523|-0.0000577474808695|-0.999998811845211|131000000|
+J145902.76-895441.9|224.7615234|-89.9116496|0.9226|0.9501|0.2989|302.9843427|-27.0531413|269.8426862|-66.4984173|2110.226|574.81|2403089401241005501|2403m894_ab41-005501|2403m894_ab41|5501|17.414|0.155|7.0|1.023|17.137|0.411|2.6|0.818899989|12.831||0.5|0.994000018|9.508||-0.6|1.20799994|0.998600006|1|0|0.0|0.0|0.0|0.001|0000|h000|0|nnnn|BCUU|3|0000|3|23|0|24|1|22|1|22|23.857|23.081|22.968|22.699|0.0|0.0|0.0|0.0|8|h|0||0||0||17.1599998|2.45689988|9.721|2.681|0.035|8.81449986|3.33990002|21.82|3.162|0.204|23.9500008|46.4690018|1096.389|25.257|1.813|-6.99490023|12.4689999|297.665|9.874|1.365|16.759||32|0.261|15.826||32|0.319|12.398||32|0.825|8.712||32|0.576|17.236||32|16.598||32|13.594||32|9.831||32|17.02||32|16.145||32|13.223||32|9.288||32|16.818||32|15.815||32|12.947||32|8.909||32|16.581||32|15.554||32|12.709||32|8.664||32|16.378||32|15.308||32|12.505||32|8.472||32|16.198||32|15.038||32|12.324||32|8.196||32|15.878||32|14.802||32|12.161||32|7.887||32|15.668||32|15.376|0.54|1|12.006||32|7.647||32|17.585|1.06|0.221|4.08|18|2|55275.02271543|55276.94144233|55276.02956479|17.132|1.63|0.333|3.39899993|16|0|55274.89041135|55276.94144233|55275.98210006|13.769|4.941|1.053|5.00600004|9|1|55275.02271543|55276.94144233|55276.00315326||||4.28800011|8|1|55275.02271543|55276.94144233|55276.00315326|-14|35|-7|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005501|1|-0.0010948910121662|-0.0010858144226295|-0.999998811109649|121000000|
+J092425.98-895441.8|141.1082721|-89.9116336|0.6446|0.6073|-0.177|302.8539793|-27.0734292|269.826706|-66.6160944|1965.382|568.126|1201089401241005053|1201m894_ab41-005053|1201m894_ab41|5053|16.89|0.108|10.1|0.835699975|16.691||2.0|0.98180002|12.282|0.256|4.2|0.8926|9.433||0.3|1.13399994|0.95660001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|AUBU|5|0000|4|22|0|22|1|21|0|21|22.489|22.223|21.648|21.748|0.0|0.0|0.0|0.0|0||0||0||0||27.7970009|2.75580001|9.421|2.832|0.116|6.61339998|3.34130001|21.778|3.314|0.09|193.710007|45.6759987|1096.34|24.37|4.277|3.4216001|11.6450005|297.503|9.677|2.124|16.697|0.233|0|0.261|15.907||32|0.319|11.613||32|0.825|8.866||32|0.576|17.273|0.224|0|16.618||32|12.882||32|9.879||32|16.958|0.233|0|16.226||32|12.438||32|9.442||32|16.966|0.306|1|15.998||32|12.189||32|9.097||32|17.065|0.416|1|15.824||32|12.063||32|8.8||32|17.009|0.476|1|15.624||32|11.962||32|8.539||32|16.811|0.468|1|15.367||32|11.812||32|8.245||32|16.7|0.492|1|15.135||32|11.596||32|8.019||32|15.943||32|14.987||32|11.375||32|8.625||32|16.88|0.405|0.086|1.611|21|0|55274.89041135|55276.94144233|55275.96707613|17.012|1.465|0.312|3.00200009|14|0|55274.89041135|55276.94144233|55275.96707613|12.294|1.42|0.31|4.15799999|14|1|55274.89041135|55276.94144233|55275.93643125|10.397|5.244|1.144|1.86399996|10|0|55274.89041135|55276.94144233|55275.93643125|-3|-41|33|0|1|0|||||||||||||||||||||||||||||0|||||||1201089401241005053|1|-0.0012004124421267|0.0009683246191417|-0.999998810677993|111000000|
+J030135.17-895441.3|45.3965655|-89.9114759|0.6878|0.6908|0.2244|302.8783827|-27.2027759|270.1566687|-66.6236586|2106.8|576.217|600089401241004950|0600m894_ab41-004950|0600m894_ab41|4950|17.969|0.254|4.3|0.958599985|15.908|0.138|7.9|1.074|12.181|0.209|5.2|1.02199996|8.755|0.254|4.3|1.08000004|1.02999997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBB|15|0000|0|24|3|24|1|23|1|23|23.72|23.678|22.951|22.945|0.0|0.0|0.0|0.0|0||0||0||0||10.2930002|2.4072001|9.316|2.744|0.044|27.3279991|3.46659994|21.746|3.299|0.101|212.619995|40.8349991|1098.911|22.315|1.728|49.8950005|11.6920004|298.924|9.52|0.736|16.778|0.164|0|0.261|15.848|0.286|0|0.319|12.013||32|0.825|8.333||32|0.576|17.581|0.192|0|16.604|0.304|0|13.269||32|9.304||32|17.039|0.164|0|16.167|0.286|0|12.838||32|8.909||32|16.688|0.154|0|16.01|0.319|0|12.477||32|8.605||32|16.349|0.141|1|15.935|0.37|1|12.144||32|8.303||32|15.894|0.112|1|15.766|0.382|1|11.808||32|8.01||32|15.197|0.07|1|15.201|0.268|1|11.476||32|7.765||32|14.289|0.036|1|14.295|0.135|1|11.176||32|7.564||32|13.345|0.018|1|13.393|0.068|1|11.583|0.467|1|7.385||32|17.99|1.268|0.259|3.266|18|0|55275.28745078|55277.33835439|55276.29362153|15.931|0.712|0.145|2.9289999|20|1|55275.28745078|55277.33835439|55276.29362153|12.075|0.741|0.154|2.66599989|20|0|55275.28745078|55277.33835439|55276.27983905|8.611|0.985|0.205|3.00099993|18|0|55275.28745078|55277.33835439|55276.27983905|27|11|6|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241004950|1|0.001084917465403|0.0011000406187891|-0.999998806431653|101000000|
+J232423.91-895440.7|351.0996398|-89.9113312|0.248|0.231|0.0266|302.9688775|-27.2105023|270.2201041|-66.546836|2083.913|581.378|89401241004596|0000m894_ab41-004596|0000m894_ab41|4596|15.643|0.045|24.2|0.904299974|15.613|0.105|10.4|0.85769999|12.6|0.307|3.5|1.04700005|9.138||0.9|1.05400002|0.961199999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|23|24|4|24|3|23|0|23|24.61|24.624|23.93|23.773|0.0|0.0|0.0|0.0|0||0||0||0||87.625|3.62319994|9.321|2.781|0.076|35.8839989|3.46320009|21.773|3.32|0.089|144.520004|40.9039993|1099.675|23.709|0.0|10.7939997|12.1289997|298.969|9.777|0.643|15.48|0.078|1|0.261|15.303|0.113|1|0.319|12.169||32|0.825|8.646||32|0.576|16.15|0.083|0|16.132|0.131|0|13.539||32|9.655||32|15.741|0.078|1|15.622|0.113|1|12.994||32|9.222||32|15.574|0.087|1|15.381|0.117|1|13.226|0.47|1|8.88||32|15.481|0.099|1|15.246|0.128|1|12.73|0.368|1|8.586||32|15.412|0.111|1|15.153|0.14|1|12.248|0.283|1|8.326||32|15.356|0.125|1|15.047|0.149|1|11.828|0.227|1|8.092||32|15.268|0.134|1|14.894|0.149|1|11.513|0.197|1|7.876||32|15.103|0.132|1|14.683|0.141|1|11.259|0.179|1|7.677||32|15.63|0.155|0.032|0.637|23|0|55275.28745078|55277.33835439|55276.36252723|15.583|0.383|0.078|1.69000006|23|0|55275.28745078|55277.33835439|55276.36252723|12.38|1.602|0.334|3.375|14|0|55275.28745078|55277.33835439|55276.35174065|9.809|3.176|0.662|4.77699995|13|0|55275.28745078|55277.33835439|55276.35174065|3|0|12|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004596|1|0.0015289271260075|-0.0002394334474946|-0.999998802526017|131000000|
+J024154.59-895440.3|40.4774608|-89.9112159|0.0777|0.0798|-0.0146|302.885638|-27.2068167|270.1701746|-66.618251|2126.036|570.991|600089401241003899|0600m894_ab41-003899|0600m894_ab41|3899|11.936|0.024|46.1|0.904999971|11.978|0.022|49.3|1.00899994|11.257|0.091|12.0|1.02999997|9.051|0.339|3.2|1.00800002|0.984600008|1|0|0.0|0.0|0.0|0.0|0000|0000|0|000n|AAAB|15|0000|24|24|24|24|8|23|0|23|24.348|24.491|22.927|23.301|0.0|0.0|0.0|0.0|0||0||0||0||2663.6001|57.7420006|9.337|2.814|0.067|1020.29999|20.7129993|21.729|3.337|0.212|498.0|41.6100006|1098.063|21.708|0.502|37.9770012|11.8540001|298.479|9.413|1.29|11.922|0.006|0|0.261|11.973|0.011|0|0.319|11.673|0.246|0|0.825|8.355||32|0.576|12.556|0.006|0|12.735|0.012|0|13.201|0.342|0|9.475||32|12.183|0.006|0|12.292|0.011|0|12.498|0.246|0|8.931||32|12.049|0.006|1|12.122|0.012|1|12.025|0.205|1|9.264|0.54|1|11.99|0.006|1|12.048|0.013|1|11.699|0.188|1|8.894|0.492|1|11.952|0.006|1|12.003|0.015|1|11.452|0.181|1|8.545|0.445|1|11.92|0.006|1|11.967|0.016|1|11.223|0.172|1|8.248|0.414|1|11.887|0.007|1|11.93|0.018|1|11.026|0.167|1|8.03|0.405|1|11.845|0.007|1|11.883|0.02|1|10.864|0.165|1|7.823|0.397|1|11.936|0.02|0.004|0.126|23|0|55275.28745078|55277.33835439|55276.29362153|11.978|0.037|0.008|0.131999999|23|0|55275.28745078|55277.33835439|55276.29362153|11.298|0.561|0.117|4.0|21|1|55275.28745078|55277.33835439|55276.27983905|9.053|1.187|0.247|2.8829999|17|0|55275.28745078|55277.33835439|55276.27983905|4|11|9|0|0|0||||||||||||||||||||||||||806863586|0.232|-70.2|1|12.943|0.025|12.209|0.026|12.012|0.023|600089401241003899|1|0.0011787014270094|0.0010059044780708|-0.999998799408843|101000000|
+J153224.10-895439.4|233.1004516|-89.9109655|0.7705|0.8209|0.2028|302.9965031|-27.0601786|269.8659935|-66.4894516|2077.484|583.256|2403089401241005099|2403m894_ab41-005099|2403m894_ab41|5099|17.216|0.136|8.0|0.899100006|16.673|0.281|3.9|0.957199991|12.945||-0.6|0.848699987|9.494||-0.7|1.10300004|0.948400021|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BBUU|3|0000|2|21|1|21|0|20|0|20|22.123|22.078|21.867|21.469|0.0|0.0|0.0|0.0|8|h|0||0||0||20.5790005|2.57489991|9.517|2.653|0.416|13.5200005|3.50530005|21.792|3.325|0.153|-31.9839993|52.605999|1097.906|26.072|4.788|-9.14620018|12.6269999|297.932|9.6|0.904|16.552|0.277|1|0.261|15.685|0.184|1|0.319|12.406||32|0.825|8.975||32|0.576|17.521|0.38|0|16.77|0.266|0|17.701||32|9.968||32|16.813|0.277|1|16.004|0.184|1|13.231||32|9.551||32|16.032|0.176|1|15.379|0.134|1|12.947||32|9.223||32|15.27|0.108|1|14.847|0.102|1|12.712||32|8.951||32|14.69|0.076|1|14.435|0.084|1|12.513||32|8.713||32|14.351|0.066|1|14.166|0.077|1|12.333||32|8.498||32|14.193|0.066|1|14.012|0.078|1|12.167||32|9.084||32|14.134|0.072|1|13.93|0.083|1|12.017||32|8.53||32|17.23|0.713|0.156|2.101|17|0|55275.02271543|55276.94144233|55276.04668158|16.679|1.537|0.335|3.47900009|13|0|55275.02271543|55276.94144233|55276.04668158|15.25|||1.97099996|7|0|55275.02271543|55276.94144233|55276.01848474||||5.31599998|8|0|55275.02271543|55276.94144233|55276.01848474|42|47|-44|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005099|1|-0.0009330097781942|-0.0012426727538088|-0.999998792627862|121000000|
+J171314.11-895438.7|258.3087921|-89.9107679|0.1579|0.164|-0.0163|303.0230836|-27.0910512|269.9547024|-66.4733214|1976.03|574.289|2403089401241004146|2403m894_ab41-004146|2403m894_ab41|4146|14.811|0.032|33.4|0.960799992|15.046|0.074|14.7|0.85680002|12.823||0.3|0.99059999|9.415||-2.8|1.05200005|0.960699975|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|20|20|13|20|1|19|0|19|22.25|22.399|22.541|22.285|0.0|0.0|0.0|0.0|0||0||0||0||188.690002|5.64659977|9.357|2.685|0.06|60.487999|4.10430002|21.75|3.399|0.0|16.6599998|50.5320015|1096.438|25.388|2.54|-37.8849983|13.5839996|299.026|9.975|1.364|14.802|0.049|0|0.261|14.955|0.108|0|0.319|12.62||32|0.825|8.635||32|0.576|15.44|0.05|0|15.749|0.12|0|13.878||32|9.646||32|15.063|0.049|0|15.274|0.108|0|13.445||32|9.211||32|14.917|0.055|0|15.075|0.116|0|13.111||32|8.865||32|14.847|0.064|0|15.008|0.135|0|12.851||32|8.571||32|14.792|0.073|1|15.014|0.162|1|12.571||32|8.31||32|14.707|0.08|1|14.947|0.18|1|12.241||32|8.073||32|14.493|0.076|1|14.635|0.157|1|11.892||32|7.857||32|14.072|0.059|1|14.098|0.111|1|12.207|0.457|1|7.658||32|14.812|0.081|0.018|0.316|19|0|55275.02271543|55276.94144233|55276.09125832|15.003|0.331|0.074|2.70000005|19|1|55275.02271543|55276.94144233|55276.09125832|13.643|5.842|1.34|3.77600002|9|0|55275.02271543|55276.94144233|55276.06392358||||1.84500003|3|0|55275.02271543|55276.94144233|55276.06392358|-6|46|99|0|1|0||||||||||||||||||||||||||970347385|0.28|-1.0|1|15.406|0.067|14.927|0.094|15.113|0.178|2403089401241004146|1|-0.0003155855829799|-0.0015250836347904|-0.999998787262088|121000000|
+J021317.38-895438.5|33.3224261|-89.9106979|0.2533|0.2597|0.0811|302.8968105|-27.211819|270.1879635|-66.6096547|2153.312|560.779|600089401241004293|0600m894_ab41-004293|0600m894_ab41|4293|15.749|0.048|22.7|0.798200011|15.712|0.112|9.7|0.917200029|12.359|0.246|4.4|1.08299994|9.679||0.0|1.14199996|0.979900002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|ABBU|7|0000|21|24|4|24|1|23|0|23|24.701|24.673|23.887|23.823|0.0|0.0|0.0|0.0|0||0||0||0||79.4769974|3.5072999|9.352|2.745|0.239|32.7459984|3.37269998|21.757|3.262|0.226|180.460007|40.8590012|1099.007|22.596|0.0|0.209700003|10.5489998|298.651|9.218|0.74|15.257|0.124|1|0.261|15.267|0.24|1|0.319|12.071||32|0.825|8.958||32|0.576|16.132|0.156|1|16.259|0.319|1|13.26||32|9.972||32|15.518|0.124|1|15.586|0.24|1|12.896||32|9.534||32|14.991|0.099|1|15.066|0.194|1|12.611||32|9.186||32|14.497|0.078|1|14.641|0.162|1|12.377||32|8.89||32|14.15|0.068|1|14.357|0.15|1|12.176||32|8.626||32|13.969|0.068|1|14.213|0.156|1|11.995||32|8.388||32|13.879|0.073|1|14.145|0.17|1|11.83||32|8.171||32|13.817|0.079|1|14.095|0.187|1|11.678||32|7.971||32|15.749|0.194|0.04|0.963|23|0|55275.28745078|55277.33835439|55276.29362153|15.746|0.516|0.105|2.72399998|22|1|55275.28745078|55277.33835439|55276.29362153|12.567|1.781|0.371|4.01200008|16|1|55275.28745078|55277.33835439|55276.27983905|12.726|||2.8499999|9|0|55275.28745078|55277.33835439|55276.27983905|33|-42|5|1|1|0||||||||||||||||||||||||||1101434062|0.459|-25.7|1|16.35|0.106|15.702|0.14|15.91||600089401241004293|1|0.0013023663443636|0.0008562246886791|-0.999998785359856|101000000|
+J004917.75-895438.3|12.323989|-89.9106619|0.3788|0.3662|0.0925|302.932855|-27.2174906|270.2195856|-66.5796237|1998.071|580.535|89401241004824|0000m894_ab41-004824|0000m894_ab41|4824|16.257|0.066|16.5|1.02499998|16.396|0.216|5.0|0.972199976|12.331|0.249|4.4|0.937699974|9.175|0.368|2.9|1.08200002|1.00100005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBC|15|0000|14|22|1|22|1|21|2|21|21.69|21.844|20.883|20.838|0.0|0.0|0.0|0.0|0||0||0||0||49.7910004|3.02040005|9.325|2.753|0.175|17.4440002|3.46749997|21.765|3.339|0.251|185.160004|42.4459991|1099.104|23.002|0.475|33.8689995|11.4910002|298.459|9.441|1.273|16.085|0.221|1|0.261|15.498||32|0.319|12.102||32|0.825|8.199||32|0.576|16.747|0.228|1|16.115||32|13.41||32|9.299||32|16.346|0.221|1|15.817||32|12.927||32|8.775||32|16.081|0.225|1|15.622||32|12.526||32|8.539||32|15.774|0.209|1|15.372||32|12.153||32|8.41||32|15.344|0.17|1|14.99||32|12.569|0.527|1|8.291||32|14.661|0.107|1|15.104|0.481|1|12.24|0.457|1|8.195||32|13.765|0.055|1|13.998|0.202|1|11.98|0.418|1|8.095||32|12.921|0.029|1|13.108|0.103|1|11.755|0.391|1|7.944||32|16.253|0.281|0.06|1.152|21|0|55275.28745078|55277.33835439|55276.34599308|16.484|1.136|0.242|2.0539999|15|0|55275.28745078|55277.33835439|55276.34599308|12.229|1.297|0.283|2.45600009|14|0|55275.28745078|55277.33835439|55276.33339187|9.435|2.5|0.545|3.74699998|11|1|55275.28745078|55277.33835439|55276.33339187|5|-78|15|0|2|0|||||||||||||||||||||||||||||0|||||||89401241004824|1|0.0015233130732704|0.0003328041355366|-0.999998784378605|101000000|
+J211440.57-895438.1|318.6690491|-89.9106066|0.1564|0.1517|-0.0361|303.0134103|-27.1804363|270.1683527|-66.5015824|1974.868|574.353|3004089401241004238|3004m894_ab41-004238|3004m894_ab41|4238|14.916|0.033|33.1|1.02400005|14.767|0.055|19.9|0.899100006|13.181||0.0|1.28799999|9.017||1.5|0.951699972|1.03499997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|25|25|20|25|2|24|1|24|24.766|25.188|23.764|24.15|0.0|0.0|0.0|0.0|0||0||0||0||171.259995|5.17710018|9.342|2.863|0.0|78.2320023|3.92910004|21.782|3.298|0.202|1.61849999|41.5289993|1097.676|24.433|4.588|16.7119999|11.2370005|298.563|9.659|0.338|14.725|0.028|1|0.261|14.589|0.084|1|0.319|12.561||32|0.825|8.372||32|0.576|15.433|0.031|0|15.418|0.097|0|13.842||32|9.484||32|14.986|0.028|1|14.908|0.084|1|13.386||32|8.948||32|14.718|0.028|1|14.617|0.084|1|12.885||32|9.248|0.498|1|14.495|0.028|1|14.383|0.084|1|12.47||32|8.824|0.423|1|14.266|0.027|1|14.138|0.08|1|12.174||32|8.512|0.387|1|14.04|0.026|1|13.894|0.076|1|11.901||32|8.262|0.365|17|13.867|0.026|1|13.698|0.074|1|12.34|0.503|1|8.005|0.338|17|13.75|0.027|1|13.565|0.075|1|12.036|0.437|1|7.745|0.308|17|14.912|0.082|0.016|0.359|24|0|55275.28745078|55277.33835439|55276.25865158|14.75|0.27|0.054|1.26400006|24|0|55275.28745078|55277.33835439|55276.25865158||||4.8130002|10|2|55275.28745078|55277.33835439|55276.24398629|9.5|2.507|0.512|4.38899994|13|0|55275.28745078|55277.33835439|55276.24398629|-2|14|-14|0|0|0||||||||||||||||||||||||||996500525|0.174|-19.6|1|15.894|0.089|15.141|0.111|14.728|0.128|3004089401241004238|1|0.001171571636441|-0.0010303726960264|-0.999998782875263|131000000|
+J020351.61-895437.9|30.9650604|-89.9105467|0.5951|0.5827|0.1737|302.9006567|-27.2131769|270.1931902|-66.6066153|2162.002|556.616|600089401241004796|0600m894_ab41-004796|0600m894_ab41|4796|16.863|0.099|11.0|0.881799996|17.101||0.9|0.957799971|12.334|0.251|4.3|1.06599998|9.232||0.9|1.13900006|1.005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|AUBU|5|0000|3|24|0|24|3|22|1|23|24.558|24.714|23.886|23.792|0.0|0.0|0.0|0.0|0||0||0||0||28.5060005|2.59640002|9.288|2.783|0.061|2.85349989|3.12969995|21.754|3.276|0.375|184.669998|42.7029991|1100.677|23.147|0.829|10.1730003|10.9899998|298.543|9.312|0.314|15.876|0.097|1|0.261|16.432|0.378|1|0.319|12.116||32|0.825|8.888||32|0.576|16.84|0.131|1|17.502|0.534|1|13.329||32|9.898||32|16.137|0.097|1|16.751|0.378|1|12.941||32|9.464||32|15.612|0.078|1|16.158|0.284|1|12.847||32|9.117||32|15.195|0.066|1|15.659|0.223|1|12.522||32|8.819||32|14.896|0.06|1|15.272|0.188|1|12.325||32|8.558||32|14.661|0.057|1|14.937|0.163|1|12.144||32|8.321||32|14.387|0.052|1|14.57|0.135|1|11.98||32|8.103||32|14.048|0.044|1|14.175|0.109|1|11.826||32|7.904||32|16.875|0.451|0.092|3.429|23|0|55275.28745078|55277.33835439|55276.3515125|18.006|5.635|1.15|2.76099992|14|0|55275.28745078|55277.33835439|55276.3515125|11.997|1.036|0.221|2.33500004|14|0|55275.28745078|55277.33835439|55276.30991016|10.374|4.266|0.89|5.35400009|12|0|55275.28745078|55277.33835439|55276.34024702|10|-50|-28|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241004796|1|0.0013387452663714|0.0008032885929895|-0.999998781243531|101000000|
+J113138.38-895437.5|172.9099464|-89.9104197|0.55|0.4948|0.0863|302.8975998|-27.0439473|269.7764211|-66.5716066|2078.072|584.613|1802089401241004626|1802m894_ab41-004626|1802m894_ab41|4626|16.594|0.092|11.8|1.17200005|16.258|0.201|5.4|0.925999999|12.861||0.0|0.943400025|9.498||-0.5|0.939599991|0.994300008|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|10|21|0|21|0|20|0|20|20.893|21.02|19.886|20.553|0.0|0.0|0.0|0.0|0||0||0||0||36.5200005|3.10770011|9.387|2.775|0.215|19.8050003|3.66039991|21.75|3.478|0.036|0.751529992|56.4339981|1095.166|26.009|1.579|-6.70300007|12.5799999|297.878|9.748|0.872|16.146|0.188|1|0.261|15.784|0.301|1|0.319|12.376||32|0.825|8.904||32|0.576|16.973|0.227|1|16.664|0.362|1|13.615||32|9.91||32|16.407|0.188|1|16.103|0.301|1|13.201||32|9.48||32|15.935|0.159|1|15.73|0.279|1|12.919||32|9.14||32|15.591|0.143|1|15.505|0.282|1|12.687||32|8.848||32|15.386|0.142|1|15.439|0.318|1|12.493||32|8.589||32|15.219|0.143|1|15.43|0.371|1|12.339||32|8.356||32|14.972|0.133|1|15.331|0.394|1|12.209||32|8.141||32|14.644|0.113|1|15.077|0.359|1|12.092||32|7.943||32|16.478|0.492|0.107|2.201|18|1|55274.89041135|55276.94144233|55275.96793221|16.202|0.888|0.194|3.24900007|17|0|55274.89041135|55276.94144233|55275.96793221|12.885|2.274|0.508|1.86000001|7|0|55274.89041135|55276.94144233|55275.93579789||||3.61999989|7|0|55274.89041135|55276.94144233|55275.93579789|-41|-62|82|1|1|0|||||||||||||||||||||||||||||0|||||||1802089401241004626|1|-0.0015515159914029|0.0001929780204128|-0.999998777778059|111000000|
+J134804.82-895437.3|207.0201012|-89.9103721|0.0869|0.0888|-0.0117|302.956534|-27.0412498|269.7996017|-66.5198625|1942.402|561.573|1802089401241003812|1802m894_ab41-003812|1802m894_ab41|3812|12.632|0.024|44.6|1.33000004|12.686|0.025|44.1|1.13900006|12.264|0.251|4.3|1.12800002|9.414||0.2|1.11099994|1.17400002|1|0|0.0|0.0|0.0|0.003|0000|ddd0|0|11nn|AABU|7|0000|24|24|24|24|2|23|0|23|23.725|23.674|22.845|22.76|0.0|0.0|0.0|0.0|9|dh|1|d|1|d|0||1404.0|31.4979992|9.41|2.517|0.03|531.619995|12.0579996|21.802|3.094|0.0|197.050003|45.5340004|1095.822|25.323|0.0|2.49609995|12.3470001|298.532|10.094|0.112|12.609|0.009|0|0.261|12.666|0.014|0|0.319|11.769|0.359|0|0.825|8.591||32|0.576|13.254|0.01|0|13.442|0.016|0|13.375|0.532|0|9.494||32|12.87|0.009|0|12.985|0.014|0|12.594|0.359|0|9.167||32|12.705|0.01|1|12.78|0.014|1|12.069|0.286|0|8.822||32|12.598|0.01|1|12.655|0.015|1|11.706|0.254|1|8.529||32|12.504|0.011|1|12.547|0.016|1|11.433|0.238|1|8.269||32|12.413|0.012|1|12.442|0.017|1|11.214|0.23|1|8.033||32|12.327|0.012|1|12.343|0.018|1|11.026|0.225|1|7.819||32|12.246|0.013|1|12.251|0.019|1|10.866|0.224|1|7.62||32|12.636|0.034|0.007|0.158|23|0|55274.89041135|55276.94144233|55275.98210006|12.686|0.059|0.012|0.230000004|23|0|55274.89041135|55276.94144233|55275.98210006|11.984|0.971|0.202|3.68700004|19|0|55274.89041135|55276.94144233|55275.95477317|12.721|||3.46199989|12|0|55274.89041135|55276.94144233|55275.95477317|33|49|-12|1|2|0||||||||||||||||||||||||||858015893|0.124|-60.3|1|13.582|0.028|12.876|0.027|12.698|0.034|1802089401241003812|1|-0.001393553912005|-0.0007106671238908|-0.999998776479118|121000000|
+J051515.04-895437.1|78.8127017|-89.9103292|0.1332|0.1379|0.0187|302.8398752|-27.1646657|270.0438926|-66.6486697|1972.652|574.382|600089401241004047|0600m894_ab41-004047|0600m894_ab41|4047|14.409|0.029|37.0|0.898899972|14.523|0.054|20.1|0.852199972|11.771|0.156|7.0|1.13499999|9.246|0.416|2.6|1.00699997|0.967999995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABC|15|0000|21|21|16|21|1|20|1|20|22.552|22.782|21.591|21.587|0.0|0.0|0.0|0.0|0||0||0||0||273.23999|7.39230013|9.357|2.853|0.024|97.9319992|4.88000011|21.776|3.448|0.042|310.269989|44.4430008|1098.054|23.05|0.898|31.7310009|12.1440001|298.229|9.331|0.452|14.397|0.033|1|0.261|14.472|0.085|1|0.319|11.788||32|0.825|8.376||32|0.576|15.039|0.034|1|15.234|0.092|1|13.094||32|9.427||32|14.658|0.033|1|14.791|0.085|1|12.613||32|8.952||32|14.476|0.035|1|14.576|0.09|1|12.277||32|8.664||32|14.329|0.038|1|14.405|0.095|1|12.043||32|8.465||32|14.198|0.04|1|14.268|0.101|1|11.913||32|8.407||32|14.093|0.043|1|14.181|0.11|1|11.887||32|8.144||32|14.013|0.047|1|14.125|0.122|1|11.893||32|7.929||32|13.956|0.051|1|14.102|0.137|1|11.741||32|7.729||32|14.406|0.081|0.018|0.331|20|0|55275.28745078|55277.20605032|55276.18847532|14.479|0.177|0.039|1.10300004|20|0|55275.28745078|55277.20605032|55276.18847532|11.677|0.58|0.13|2.66799998|17|0|55275.28745078|55277.20605032|55276.16736816|9.596|1.942|0.434|3.75500011|13|3|55275.28745078|55277.20605032|55276.16736816|-4|4|-29|0|0|0||||||||||||||||||||||||||1181184545|0.041|150.4|1|15.399|0.051|14.692|0.074|14.634|0.104|600089401241004047|1|0.0003036462181266|0.001535311713183|-0.999998775307709|101000000|
+J044646.51-895437.0|71.6938054|-89.9102782|0.5881|0.6476|0.1264|302.8456177|-27.1745624|270.0710905|-66.645874|2000.762|582.136|600089401241004863|0600m894_ab41-004863|0600m894_ab41|4863|17.119|0.123|8.8|0.934499979|16.754|0.292|3.7|0.936800003|11.827|0.158|6.9|1.06299996|9.261|0.44|2.5|1.12800002|1.00999999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn1n|BBBC|15|0000|1|23|1|23|4|22|1|22|22.649|22.646|21.964|21.747|0.0|0.0|0.0|0.0|0||0||0||0||22.5139999|2.55029988|9.352|2.781|0.045|12.5419998|3.37100005|21.726|3.332|0.007|294.579987|42.9410019|1099.557|22.861|1.878|31.2980003|12.6780005|298.068|9.465|1.511|16.327||32|0.261|15.82||32|0.319|11.867||32|0.825|8.44||32|0.576|17.552|0.478|0|16.362||32|13.157||32|9.574||32|16.588||32|16.139||32|12.692||32|9.016||32|16.563||32|15.859||32|12.355||32|8.651||32|16.675||32|15.626||32|12.092||32|8.462||32|16.61||32|15.423||32|11.906||32|8.334||32|16.431||32|15.244||32|11.78||32|8.158||32|16.267||32|15.08||32|11.671||32|7.934||32|16.114||32|14.927||32|11.555||32|7.69||32|17.094|0.556|0.116|3.059|21|0|55275.28745078|55277.20605032|55276.24819836|16.665|1.279|0.267|2.05999994|15|0|55275.28745078|55277.20605032|55276.24819836|11.765|0.758|0.162|3.14100003|17|1|55275.28745078|55277.20605032|55276.23172471|9.62|1.98|0.422|5.08300018|14|2|55275.28745078|55277.20605032|55276.23172471|-8|16|41|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241004863|1|0.0004918543645129|0.0014866910103465|-0.99999877391381|101000000|
+J212737.28-895436.2|321.9053564|-89.9100666|0.1742|0.1664|-0.0394|303.0104355|-27.1847874|270.1775341|-66.5051228|1961.916|571.186|3004089401241004278|3004m894_ab41-004278|3004m894_ab41|4278|15.056|0.035|31.0|0.891200006|15.045|0.068|16.0|0.995899975|12.952||0.6|0.993099988|9.482||0.1|0.936600029|0.951600015|1|0|0.0|0.0|0.0|0.001|0000|0000|0|00nn|AAUU|3|0000|25|25|14|25|0|24|0|24|25.704|26.602|24.803|24.915|0.0|0.0|0.0|0.0|0||0||0||0||150.520004|4.86320019|9.342|2.881|0.0|60.5320015|3.78789997|21.703|3.312|0.0|24.9230003|39.7849998|1098.055|24.508|0.0|1.01549995|12.2650003|298.901|9.858|0.96|14.867|0.035|1|0.261|14.845|0.123|1|0.319|11.918||32|0.825|8.445||32|0.576|15.568|0.039|1|15.702|0.146|1|13.431||32|9.566||32|15.128|0.035|1|15.164|0.123|1|12.743||32|9.021||32|14.855|0.035|1|14.836|0.117|1|12.717|0.355|1|8.667||32|14.59|0.034|1|14.564|0.113|1|12.186|0.269|1|8.405||32|14.3|0.031|1|14.288|0.106|1|11.842|0.236|1|8.206||32|14.001|0.028|1|13.997|0.096|1|11.598|0.223|1|8.087||32|13.728|0.026|1|13.726|0.087|1|11.381|0.212|1|7.87||32|13.513|0.024|1|13.514|0.082|1|11.168|0.201|1|7.67||32|15.068|0.094|0.019|0.453|24|0|55275.28745078|55277.33835439|55276.25865158|14.98|0.26|0.052|1.14699996|23|0|55275.28745078|55277.33835439|55276.25865158|14.743|8.932|1.823|2.3210001|11|0|55275.28745078|55277.33835439|55276.24398629|10.422|4.526|0.924|3.41199994|11|0|55275.28745078|55277.33835439|55276.24398629|-16|33|23|0|0|0||||||||||||||||||||||||||1169384247|0.317|139.1|1|15.97|0.083|15.208|0.089|15.202|0.143|3004089401241004278|1|0.0012352900139822|-0.0009684046261277|-0.999998768124772|131000000|
+J222701.85-895435.6|336.757718|-89.9098906|0.5306|0.4802|-0.1258|302.9916123|-27.2009496|270.2078496|-66.5250121|2141.095|568.799|89401241005157|0000m894_ab41-005157|0000m894_ab41|5157|16.664|0.087|12.5|1.01800001|16.765|0.282|3.8|0.930299997|13.037|0.448|2.4|1.05400002|9.388||0.2|0.991100013|0.995199978|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABCU|7|0000|8|25|0|25|1|24|0|24|25.227|26.062|24.759|24.581|0.0|0.0|0.0|0.0|0||0||0||0||34.2410011|2.7341001|9.263|2.787|0.148|12.4189997|3.22930002|21.79|3.309|0.103|96.6350021|39.8349991|1099.069|23.996|1.929|3.02390003|12.4069996|298.675|9.765|1.599|16.925|0.369|1|0.261|15.835||32|0.319|12.254||32|0.825|8.718||32|0.576|17.296|0.293|0|16.502||32|13.538||32|9.728||32|17.186|0.369|1|16.154||32|13.079||32|9.294||32|16.672||32|15.971||32|12.704||32|8.949||32|16.693||32|15.749||32|12.373||32|8.654||32|16.31||32|15.411||32|12.073||32|8.393||32|15.973|0.274|1|15.488|0.38|1|11.804||32|8.157||32|14.81|0.109|1|14.575|0.191|1|11.543||32|7.941||32|13.873|0.053|1|13.785|0.106|1|11.984|0.507|1|7.741||32|16.667|0.533|0.107|3.948|23|0|55275.28745078|55277.33835439|55276.36980225|16.536|1.068|0.214|3.31299996|18|0|55275.28745078|55277.33835439|55276.36980225|12.797|1.975|0.403|4.46799994|15|0|55275.28745078|55277.33835439|55276.35976824|11.896|||4.71899986|12|0|55275.28745078|55277.33835439|55276.35976824|-4|-31|-48|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005157|1|0.0014450707091837|-0.0006206207970161|-0.999998763299471|131000000|
+J100606.23-895435.4|151.5259691|-89.9098571|0.2309|0.216|-0.0326|302.8650635|-27.0604543|269.8004519|-66.6035588|2161.52|558.929|1802089401241004111|1802m894_ab41-004111|1802m894_ab41|4111|15.367|0.042|25.6|0.89230001|15.565|0.106|10.3|0.992600024|12.837||0.3|0.981100023|9.411||0.1|0.95630002|0.952099979|1|0|0.0|0.0|0.0|0.002|0000|0000|0|11nn|AAUU|3|0000|21|21|6|21|0|20|0|20|21.908|21.699|20.93|20.512|0.0|0.0|0.0|0.0|0||0||0||0||113.080002|4.41300011|9.411|2.887|0.055|37.5139999|3.65070009|21.787|3.337|0.183|16.7870007|49.6969986|1096.834|25.385|2.077|0.801310003|13.2279997|298.372|10.041|0.521|15.05|0.044|1|0.261|15.277|0.175|1|0.319|12.032||32|0.825|8.596||32|0.576|15.771|0.048|0|16.111|0.2|0|13.227||32|9.596||32|15.311|0.044|1|15.596|0.175|1|12.857||32|9.172||32|15.013|0.043|1|15.248|0.165|1|12.573||32|8.842||32|14.664|0.039|1|14.867|0.144|1|12.341||32|8.451||32|14.235|0.032|1|14.432|0.117|1|12.138||32|8.061||32|13.816|0.026|1|13.986|0.091|1|15.282||32|8.399|0.482|17|13.383|0.02|1|13.505|0.068|1|11.9||32|8.101|0.435|17|12.865|0.015|1|12.976|0.048|1|11.549||32|7.897|0.423|17|15.367|0.11|0.024|0.373|20|0|55274.89041135|55276.94144233|55275.96793221|15.541|0.632|0.138|3.46199989|20|2|55274.89041135|55276.94144233|55275.96793221|13.026|2.447|0.547|2.64299989|9|0|55274.89041135|55276.94144233|55275.93579789|11.779|||4.02699995|10|0|55274.89041135|55276.94144233|55275.93579789|-39|-54|65|1|1|1||||||||||||||||||||||||||806950281|0.554|-178.0|1|16.323|0.148|15.669|0.16|15.618||1802089401241004111|1|-0.0013829741808942|0.0007500822948186|-0.999998762378717|111000000|
+J130530.26-895434.2|196.3761102|-89.9095207|0.6865|0.6545|0.1897|302.9381469|-27.0378473|269.7819901|-66.5350475|1982.308|579.613|1802089401241005182|1802m894_ab41-005182|1802m894_ab41|5182|17.029|0.111|9.7|1.00699997|17.264||0.6|1.03999996|13.064||-1.9|0.870800018|9.438||-2.1|0.940100014|0.963|1|0|0.0|0.0|0.0|0.0|0000|h000|0|1nnn|BUUU|1|0000|4|24|0|24|0|23|0|23|23.869|23.706|22.625|22.736|0.0|0.0|0.0|0.0|8|h|0||0||0||24.4489994|2.50950003|9.388|2.565|0.005|1.69140005|3.07450008|21.777|3.177|0.067|-91.3659973|47.125|1097.18|25.953|0.466|-27.5450001|13.2910004|298.11|10.058|0.966|16.682|0.258|0|0.261|15.919||32|0.319|12.336||32|0.825|8.985||32|0.576|17.367|0.272|0|16.606||32|13.529||32|9.997||32|16.943|0.258|0|16.238||32|13.161||32|9.561||32|16.691|0.263|0|15.965||32|12.888||32|9.218||32|16.419|0.254|0|15.732||32|12.655||32|8.926||32|16.102|0.229|0|15.527||32|12.451||32|8.668||32|15.739|0.194|1|15.347||32|12.272||32|8.435||32|15.268|0.146|1|15.182||32|12.108||32|8.22||32|14.636|0.094|1|15.03||32|11.957||32|8.023||32|17.164|0.69|0.141|2.994|22|2|55274.89041135|55276.94144233|55275.98210006|18.849|||2.85700011|11|0|55274.89041135|55276.94144233|55275.98210006||||2.93300009|6|0|55274.89041135|55276.94144233|55275.95477317||||3.10400009|6|0|55274.89041135|55276.94144233|55275.95477317|-38|47|-82|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005182|1|-0.0015150977867629|-0.0004452311615954|-0.999998753123177|121000000|
+J101912.83-895434.1|154.8034814|-89.909489|0.7674|0.698|-0.1105|302.8692655|-27.0568734|269.7937888|-66.5991064|2149.919|565.95|1802089401241004873|1802m894_ab41-004873|1802m894_ab41|4873|17.013|0.121|9.0|0.89319998|16.939|0.373|2.9|0.8028|12.989||-0.9|0.934199989|9.404||0.1|1.05599999|0.916000009|1|0|0.0|0.0|0.0|0.002|0000|0000|0|1nnn|BCUU|3|0000|5|21|0|21|0|20|0|20|21.392|21.461|20.911|20.466|0.0|0.0|0.0|0.0|0||0||0||0||24.8209991|2.7730999|9.35|2.836|0.094|10.5790005|3.6315999|21.792|3.409|0.064|-47.1290016|50.5149994|1096.883|25.645|2.067|1.39859998|13.0179996|298.263|9.787|0.631|16.487|0.186|1|0.261|16.616|0.542|1|0.319|11.974||32|0.825|8.394||32|0.576|17.198|0.205|0|17.234|0.52|0|13.144||32|9.403||32|16.748|0.186|1|16.935|0.542|1|12.799||32|8.97||32|16.408|0.176|1|16.028||32|12.52||32|8.624||32|15.936|0.141|1|15.772||32|12.291||32|8.333||32|15.389|0.103|1|16.062|0.467|1|12.087||32|8.074||32|14.944|0.081|1|15.599|0.36|1|11.907||32|7.839||32|14.651|0.072|1|15.341|0.331|1|11.74||32|7.624||32|14.452|0.069|1|15.178|0.327|1|11.59||32|7.426||32|16.954|0.475|0.104|2.284|19|0|55274.89041135|55276.94144233|55275.96793221|16.779|1.27|0.277|2.68600011|15|0|55274.89041135|55276.94144233|55275.96793221|15.55|||2.93300009|7|0|55274.89041135|55276.94144233|55275.93579789|11.03|9.134|2.042|3.90300012|10|0|55274.89041135|55276.94144233|55275.93579789|47|-53|56|1|1|0|||||||||||||||||||||||||||||0|||||||1802089401241004873|1|-0.0014294092604096|0.0006725228572179|-0.999998752250308|111000000|
+J071511.64-895433.3|108.7985379|-89.9092659|0.0891|0.0862|0.0121|302.8305221|-27.1187317|269.9262407|-66.6465857|2094.905|584.906|1201089401241004084|1201m894_ab41-004084|1201m894_ab41|4084|12.94|0.024|46.2|0.887799978|13.03|0.026|41.0|1.05999994|12.17|0.221|4.9|0.976400018|9.061||1.3|1.05400002|0.991400003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|22|22|22|22|1|21|0|21|22.307|22.494|21.072|21.425|0.0|0.0|0.0|0.0|0||0||0||0||1057.19995|22.8850002|9.377|2.733|0.067|387.380005|9.45489979|21.799|3.352|0.158|214.690002|43.7739983|1097.327|23.289|2.008|14.4879999|11.5670004|298.056|9.203|0.61|12.923|0.008|0|0.261|13.034|0.023|0|0.319|12.001||32|0.825|8.665||32|0.576|13.544|0.008|0|13.781|0.025|0|13.164||32|9.675||32|13.184|0.008|0|13.353|0.023|0|12.826||32|9.241||32|13.058|0.008|0|13.189|0.025|0|14.225||32|8.894||32|13.007|0.009|1|13.119|0.029|1|12.428||32|8.603||32|12.972|0.01|1|13.078|0.033|1|12.225||32|8.343||32|12.934|0.011|1|13.04|0.038|1|12.044||32|8.107||32|12.883|0.011|1|12.991|0.042|1|11.879||32|7.892||32|12.823|0.012|1|12.933|0.046|1|11.729||32|7.693||32|12.94|0.03|0.006|0.12|21|0|55275.02271543|55276.94144233|55276.03624953|13.04|0.078|0.017|0.342000008|21|0|55275.02271543|55276.94144233|55276.03624953|12.131|1.092|0.238|2.54999995|15|0|55275.02271543|55276.94144233|55276.00889862|10.175|5.183|1.131|4.5079999|10|0|55275.02271543|55276.94144233|55276.00889862|1|-22|41|0|0|1||||||||||||||||||||||||||946687513|0.176|-152.1|1|13.871|0.029|13.188|0.035|13.017|0.039|1201089401241004084|1|-0.0005103042908645|0.0014991344046355|-0.999998746091998|111000000|
+J023017.55-895432.0|37.5731654|-89.9089137|0.4426|0.4512|0.1338|302.8890954|-27.2108934|270.1818967|-66.6161458|2139.339|572.324|600089401241004471|0600m894_ab41-004471|0600m894_ab41|4471|16.562|0.08|13.6|0.894400001|16.316|0.196|5.5|0.990100026|12.171|0.206|5.3|1.00699997|9.025||1.3|0.885900021|0.941699982|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|9|24|3|24|2|23|0|23|24.786|24.701|23.881|23.76|0.0|0.0|0.0|0.0|0||0||0||0||37.618|2.76690006|9.347|2.784|0.0|18.7759991|3.38980007|21.769|3.361|0.135|214.639999|40.7369995|1099.805|22.36|3.836|14.9870005|11.9560003|298.74|9.363|1.196|15.356|0.099|1|0.261|15.131|0.185|1|0.319|11.856||32|0.825|8.621||32|0.576|16.495|0.158|1|16.365|0.304|1|13.055||32|9.71||32|15.617|0.099|1|15.45|0.185|1|12.681||32|9.197||32|14.708|0.056|1|14.566|0.106|1|12.407||32|8.784||32|13.796|0.03|1|13.708|0.06|1|12.174||32|8.489||32|12.978|0.018|1|12.967|0.037|1|11.967||32|8.288||32|12.376|0.013|1|12.419|0.027|1|11.789||32|8.055||32|12.03|0.011|1|12.083|0.023|1|11.624||32|7.77||32|11.874|0.011|1|11.914|0.023|1|11.472||32|7.493||32|16.575|0.381|0.078|1.737|23|0|55275.28745078|55277.33835439|55276.29362153|16.208|1.04|0.212|3.11500001|19|0|55275.28745078|55277.33835439|55276.29362153|12.049|1.082|0.226|2.67700005|15|0|55275.28745078|55277.33835439|55276.27983905|9.861|3.0|0.626|2.27099991|12|0|55275.28745078|55277.33835439|55276.27983905|-11|-23|5|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004471|1|0.0012600005295107|0.0009693912710725|-0.999998736338816|101000000|
+J164750.14-895431.9|251.9589455|-89.9088628|0.5343|0.5877|0.0763|303.0197469|-27.0813257|269.9292898|-66.4740365|2000.052|585.769|2403089401241004885|2403m894_ab41-004885|2403m894_ab41|4885|16.682|0.093|11.7|0.876800001|16.869||1.2|1.01999998|12.555||0.7|1.03100002|9.392||-0.5|0.909699976|0.95630002|1|0|0.0|0.0|0.0|0.002|0000|0000|0|0nnn|AUUU|1|0000|7|20|0|20|1|19|0|19|21.308|21.658|21.446|21.431|0.0|0.0|0.0|0.0|0||0||0||0||33.6660004|2.86999989|9.358|2.669|0.0|4.14839983|3.56750011|21.737|3.415|0.103|40.8149986|54.9039993|1097.453|26.172|2.634|-7.44089985|13.8780003|298.267|9.892|0.885|16.565|0.366|1|0.261|16.087||32|0.319|12.242||32|0.825|8.696||32|0.576|17.245|0.389|1|16.88||32|13.617||32|11.037||32|16.826|0.366|1|16.406||32|13.067||32|9.272||32|16.603|0.384|1|16.636|0.44|1|12.612||32|8.778||32|16.396|0.395|1|16.04|0.317|1|12.866|0.436|1|8.369||32|16.122|0.369|1|15.452|0.222|1|12.34|0.321|1|8.09||32|15.752|0.31|1|14.903|0.159|1|11.816|0.234|1|7.927||32|15.31|0.24|1|14.424|0.119|1|11.362|0.178|1|7.823||32|14.903|0.19|1|14.044|0.096|1|11.009|0.147|1|7.695||32|16.668|0.392|0.088|1.724|19|0|55275.02271543|55276.94144233|55276.09125832|17.53|3.256|0.728|2.00500011|12|0|55275.02271543|55276.94144233|55276.09125832|13.308|1.848|0.424|6.36000013|11|0|55275.02271543|55276.94144233|55276.06392358|12.6|||2.88199997|8|0|55275.02271543|55276.94144233|55276.06392358|-23|-8|-15|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004885|1|-0.0004926195033284|-0.0015124386144526|-0.999998734926931|121000000|
+J235910.36-895431.8|359.7931707|-89.9088353|0.2416|0.2229|0.0476|302.9550925|-27.2169589|270.2291798|-66.5602125|2048.856|590.706|89401241004584|0000m894_ab41-004584|0000m894_ab41|4584|15.633|0.044|24.6|0.961799979|15.504|0.099|11.0|0.869400024|11.977|0.179|6.1|0.940699995|9.378||0.4|1.01900005|0.944500029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|000n|AABU|7|0000|22|23|8|23|4|22|0|22|23.789|23.204|22.472|22.937|0.0|0.0|0.0|0.0|0||0||0||0||88.4339981|3.59299994|9.366|2.74|0.162|39.6769981|3.61109996|21.766|3.326|0.167|256.630005|42.382|1099.156|23.381|0.842|4.91769981|11.6000004|298.727|9.487|1.273|15.38|0.067|1|0.261|15.084|0.1|1|0.319|12.059|0.273|1|0.825|8.568||32|0.576|16.121|0.075|1|16.036|0.128|1|13.777|0.448|0|9.749||32|15.641|0.067|1|15.403|0.1|1|12.884|0.273|1|9.144||32|15.365|0.067|1|14.99|0.088|1|12.264|0.199|1|8.716||32|15.129|0.067|1|14.657|0.08|1|11.789|0.158|1|8.483||32|14.88|0.064|1|14.375|0.074|1|11.427|0.135|1|8.376||32|14.653|0.061|1|14.147|0.071|1|11.161|0.124|1|8.259||32|14.456|0.06|1|13.976|0.07|1|10.963|0.119|1|8.101||32|14.267|0.058|1|13.843|0.071|1|10.801|0.117|1|7.899||32|15.631|0.186|0.039|0.58|22|0|55275.28745078|55277.33835439|55276.3344836|15.467|0.496|0.103|2.88599992|22|1|55275.28745078|55277.33835439|55276.3344836|11.831|1.018|0.217|2.70099998|15|1|55275.28745078|55277.33835439|55276.32193202|11.172|8.274|1.764|2.97099996|9|0|55275.28745078|55277.33835439|55276.32193202|6|18|20|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004584|1|0.0015911134298815|-0.0000057437082951|-0.99999873416173|131000000|
+J064628.00-895431.4|101.6167013|-89.9087379|0.7891|0.8716|-0.2354|302.8293955|-27.1300985|269.9536343|-66.6500948|2124.092|578.527|1201089401241005141|1201m894_ab41-005141|1201m894_ab41|5141|17.355|0.149|7.3|0.989499986|16.971||1.0|0.930499971|12.159|0.223|4.9|1.03499997|9.598||-0.2|1.13600004|1.01800001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|2|22|0|22|2|21|0|21|22.706|22.784|21.896|21.868|0.0|0.0|0.0|0.0|0||0||0||0||18.1100006|2.47720003|9.389|2.789|0.0|3.3441|3.4612|21.81|3.464|0.0|217.050003|44.5060005|1098.474|23.486|4.985|-1.92349994|11.4729996|298.33|9.426|1.183|16.474||32|0.261|15.888||32|0.319|12.069||32|0.825|8.801||32|0.576|16.994||32|16.621||32|13.218||32|9.816||32|16.735||32|16.207||32|12.894||32|9.377||32|16.716||32|15.926||32|12.659||32|9.035||32|16.717||32|16.352|0.524|1|12.491||32|8.739||32|16.452||32|15.81|0.383|1|12.351||32|8.479||32|15.927||32|15.211|0.26|1|12.174||32|8.243||32|16.11|0.474|1|14.696|0.188|1|12.01||32|8.027||32|15.584|0.336|1|14.308|0.151|1|11.859||32|7.828||32|17.382|0.622|0.133|2.425|18|0|55275.02271543|55276.94144233|55276.03624953|17.985|5.287|1.127|3.83100009|11|0|55275.02271543|55276.94144233|55276.03624953|12.067|1.005|0.219|2.84899998|17|0|55275.02271543|55276.94144233|55276.00889862|11.519|||1.801|8|0|55275.02271543|55276.94144233|55276.00889862|48|-30|-32|1|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005141|1|-0.0003207363643188|0.0015601966965729|-0.999998731456422|111000000|
+J234922.79-895431.4|357.3449965|-89.9087239|0.4323|0.3938|0.0571|302.9593703|-27.216104|270.229179|-66.5563135|2059.065|590.742|89401241004895|0000m894_ab41-004895|0000m894_ab41|4895|16.592|0.079|13.7|0.926999986|15.919|0.141|7.7|0.932299972|11.738|0.148|7.3|0.968900025|9.078||1.4|1.10899997|0.980700016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|8|24|3|23|3|22|0|23|23.817|23.671|22.919|23.269|0.0|0.0|0.0|0.0|0||0||0||0||36.5880013|2.67549992|9.296|2.714|0.11|27.0559998|3.52259994|21.782|3.311|0.13|319.670013|43.5579987|1100.082|23.761|1.565|15.2189999|10.9219999|298.471|9.362|0.603|16.228|0.251|1|0.261|15.711|0.265|1|0.319|11.91|0.236|1|0.825|8.623||32|0.576|17.086|0.311|1|16.587|0.317|1|13.447|0.326|1|9.67||32|16.489|0.251|1|16.03|0.265|1|12.735|0.236|1|9.199||32|15.972|0.202|1|15.659|0.243|1|12.237|0.193|1|8.989||32|15.519|0.165|1|15.319|0.221|1|11.85|0.167|1|8.774||32|15.207|0.149|1|15.015|0.2|1|11.538|0.15|1|8.474||32|15.039|0.151|1|14.807|0.196|1|11.28|0.139|1|8.197||32|14.946|0.161|1|14.683|0.202|1|11.078|0.134|1|7.951||32|14.804|0.163|1|14.539|0.204|1|10.924|0.133|1|7.732||32|16.565|0.491|0.1|1.669|21|1|55275.28745078|55277.33835439|55276.36252723|15.891|0.735|0.153|3.41300011|20|0|55275.28745078|55277.33835439|55276.3344836|11.559|0.466|0.099|1.70200002|18|0|55275.28745078|55277.33835439|55276.32193202|9.975|2.675|0.558|4.13399982|14|0|55275.28745078|55277.33835439|55276.35174065|-13|-9|6|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004895|1|0.0015913575847856|-0.0000737940344089|-0.999998731066934|131000000|
+J230742.05-895431.2|346.9252192|-89.9086822|1.7808|1.5363|-0.4749|302.9768226|-27.210271|270.2234321|-66.5398916|1874.677|516.712|3004089401241005642|3004m894_ab41-005642|3004m894_ab41|5642|18.839||-1.1|0.824100018|17.14||0.8|0.916800022|12.191|0.209|5.2|0.985199988|9.437||0.4|0.90109998|0.902999997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|25|0|25|2|24|0|24|24.813|24.694|23.897|23.8|0.0|0.0|0.0|0.0|0||0||0||0||-2.47729993|2.30800009|9.295|2.803|0.36|2.52620006|3.1322|21.757|3.306|0.181|210.630005|40.4949989|1099.552|23.844|0.0|4.29169989|11.158|298.212|9.336|0.597|16.864|0.346|1|0.261|16.011|0.301|1|0.319|11.833||32|0.825|8.598||32|0.576|17.308||32|17.216|0.482|0|13.159||32|9.71||32|17.125|0.346|1|16.33|0.301|1|12.658||32|9.174||32|16.04|0.165|1|15.515|0.184|1|12.887|0.447|1|8.714||32|14.91|0.073|1|14.636|0.102|1|12.393|0.352|1|8.285||32|13.92|0.036|1|13.801|0.057|1|11.949|0.282|1|7.957||32|13.193|0.022|1|13.152|0.037|1|11.583|0.238|1|7.694||32|12.752|0.017|1|12.733|0.03|1|11.327|0.219|1|7.45||32|12.546|0.017|1|12.511|0.028|1|11.15|0.213|1|7.265||32||||2.111|11|0|55275.28745078|55277.33835439|55276.36980225|18.787|8.064|1.613|2.171|12|0|55275.28745078|55277.33835439|55276.36980225|12.157|1.304|0.266|5.28499985|15|0|55275.28745078|55277.33835439|55276.35976824|11.515|||2.977|11|0|55275.28745078|55277.33835439|55276.35976824|58|11|-38|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005642|1|0.0015524779161417|-0.0003605526627418|-0.999998729906242|131000000|
+J031326.51-895431.0|48.3604761|-89.9086284|0.9766|0.9597|0.3631|302.8722565|-27.2025299|270.1530464|-66.6289201|1998.22|118.059|2403089401241005542|2403m894_ab41-005542|2403m894_ab41|5542|18.842||-2.0|0.942700028|17.515||-1.3|1.15400004|11.626|0.125|8.7|1.02400005|8.854||2.0|1.03299999|1.03600001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn0n|UUBU|4|0000|0|24|1|24|5|23|0|23|23.586|23.644|22.892|22.861|0.0|0.0|0.0|0.0|0||0||0||0||-4.62279987|2.30150008|9.293|2.738|0.0|-4.0079999|3.11039996|21.732|3.271|0.0|354.519989|40.9300003|1099.165|22.234|2.31|22.6590004|11.4449997|298.337|9.272|0.539|18.102|0.515|0|0.261|16.986||32|0.319|11.931||32|0.825|8.424||32|0.576|18.152||32|17.673||32|13.031||32|9.557||32|18.363|0.515|0|17.305||32|12.756||32|9.0||32|17.872|0.419|1|17.036||32|12.603||32|8.62||32|17.539|0.38|1|16.808||32|12.37||32|8.281||32|17.145|0.317|1|16.607||32|12.167||32|7.974||32|16.648|0.236|1|16.43||32|11.985||32|7.742||32|16.196|0.181|1|16.272||32|11.823||32|7.503||32|15.838|0.149|1|16.125||32|11.67||32|7.295||32||||2.407|5|0|55275.28745078|55277.33835439|55276.29362153||||3.5|9|1|55275.28745078|55277.33835439|55276.29362153|11.585|0.615|0.128|2.10100007|22|1|55275.28745078|55277.33835439|55276.27983905|9.459|2.34|0.488|2.24600005|13|0|55275.28745078|55277.33835439|55276.27983905|95|-18|-16|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005542|1|0.0010596081315846|0.0011918084263377|-0.999998728410833|101000000|
+J022102.98-895430.8|35.2624517|-89.9085683|0.1136|0.1188|0.0241|302.8927328|-27.2126819|270.1880807|-66.613382|2148.526|569.284|600089401241004003|0600m894_ab41-004003|0600m894_ab41|4003|14.105|0.028|39.3|0.893700004|14.145|0.039|28.0|1.01600003|12.064|0.186|5.8|1.10899997|9.232|0.355|3.1|1.06299996|1.01499999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AABB|15|0000|25|25|24|25|2|23|0|24|24.714|24.801|23.914|23.797|0.0|0.0|0.0|0.0|0||0||0||0||361.399994|9.20489979|9.289|2.733|0.029|138.679993|4.95060015|21.732|3.287|0.15|236.740005|40.4970016|1099.744|22.711|1.184|32.151001|10.5240002|298.316|9.212|0.419|14.065|0.035|1|0.261|14.134|0.08|1|0.319|12.051||32|0.825|8.6||32|0.576|14.719|0.037|1|14.904|0.088|1|13.239||32|9.606||32|14.326|0.035|1|14.453|0.08|1|12.876||32|9.176||32|14.131|0.038|1|14.236|0.085|1|12.589||32|8.934||32|13.984|0.041|1|14.081|0.092|1|12.357||32|8.708||32|13.879|0.045|1|13.961|0.099|1|12.154||32|8.46||32|13.81|0.049|1|13.87|0.107|1|11.974||32|8.236||32|13.727|0.053|1|13.762|0.113|1|11.808||32|8.027||32|13.54|0.052|1|13.544|0.106|1|11.658||32|7.77||32|14.107|0.044|0.009|0.188|24|0|55275.28745078|55277.33835439|55276.32218298|14.146|0.143|0.029|0.672999978|24|0|55275.28745078|55277.33835439|55276.32218298|11.94|1.142|0.238|3.70499992|19|1|55275.28745078|55277.33835439|55276.27983905|9.066|1.276|0.26|4.12599993|19|0|55275.28745078|55277.33835439|55276.31016484|42|-11|13|1|0|0||||||||||||||||||||||||||916142418|0.278|-143.1|1|14.918|0.059|14.422|0.075|14.23|0.107|600089401241004003|1|0.0013029825628448|0.0009212816993256|-0.999998726737425|101000000|
+J104714.77-895430.8|161.8115589|-89.9085575|0.4124|0.3771|0.0234|302.8789616|-27.0498044|269.7813521|-66.5891|2123.828|579.099|1802089401241004448|1802m894_ab41-004448|1802m894_ab41|4448|16.248|0.068|15.9|1.02699995|16.363|0.223|4.9|0.931900024|13.0||-2.6|1.15199995|9.47||0.2|1.17700005|1.06599998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|14|21|0|21|0|20|1|20|20.631|20.833|19.927|19.879|0.0|0.0|0.0|0.0|0||0||0||0||50.2260017|3.15319991|9.383|2.757|0.0|17.9790001|3.69829988|21.816|3.424|0.0|-128.339996|50.0229988|1096.125|25.674|1.435|1.98469996|11.9180002|297.951|9.675|1.223|16.347|0.186|0|0.261|15.561||32|0.319|12.143||32|0.825|8.438||32|0.576|16.834|0.166|0|16.191||32|13.322||32|9.447||32|16.608|0.186|0|15.88||32|12.968||32|9.014||32|16.679|0.257|1|15.761||32|12.688||32|8.67||32|16.831|0.365|1|15.714||32|12.459||32|8.378||32|16.708|0.393|1|15.647||32|12.256||32|8.118||32|16.219|0.296|1|15.462||32|12.074||32|7.884||32|15.684|0.21|1|15.156||32|11.911||32|7.669||32|15.154|0.149|1|14.782||32|11.76||32|7.471||32|16.275|0.236|0.051|1.019|20|0|55274.89041135|55276.94144233|55275.96793221|16.193|0.604|0.132|3.83400011|17|0|55274.89041135|55276.94144233|55275.96793221||||2.35800004|6|0|55274.89041135|55276.94144233|55275.93579789||||3.36400008|9|0|55274.89041135|55276.94144233|55275.93579789|-30|-26|45|1|0|0||||||||||||||||||||||||||748883677|0.485|29.3|1|16.469|0.147|15.395||15.243||1802089401241004448|1|-0.0015162291317226|0.0004981718443088|-0.999998726436206|111000000|
+J044117.30-895429.9|70.322105|-89.9083171|0.7841|0.8613|0.2011|302.8450313|-27.1774413|270.0778834|-66.6470183|1821.971|432.861|89401241005915|0000m894_ab41-005915|0000m894_ab41|5915|18.838||-4.6|0.912800014|17.446||-4.2|0.912299991|11.948|0.176|6.2|1.17900002|8.878|0.285|3.8|1.01999998|1.00199997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBB|12|0000|0|23|0|23|3|22|0|22|22.741|22.764|22.003|21.782|0.0|0.0|0.0|0.0|0||0||0||0||-10.7440004|2.31159997|9.323|2.692|0.051|-13.9449997|3.31590009|21.759|3.33|0.084|263.619995|42.7029991|1098.65|22.296|2.366|44.5299988|11.6730003|298.769|9.538|0.757|17.15||32|0.261|15.842||32|0.319|11.695||32|0.825|8.441||32|0.576|17.77||32|16.518||32|13.015||32|9.376||32|17.411||32|16.161||32|12.52||32|9.017||32|17.132||32|15.883||32|12.185||32|8.821||32|16.902||32|15.653||32|11.985||32|8.637||32|16.698||32|15.449||32|11.876||32|8.376||32|16.518||32|15.268||32|11.79||32|8.142||32|16.354||32|15.105||32|11.705||32|7.927||32|16.202||32|14.954||32|11.624||32|7.728||32|||||0||55275.28745078|55277.20605032|55276.24819836||||0.941999972|3|0|55275.28745078|55277.20605032|55276.24819836|11.849|0.96|0.205|2.31100011|15|0|55275.28745078|55277.20605032|55276.23172471|8.745|0.819|0.175|4.43400002|17|0|55275.28745078|55277.20605032|55276.23172471||-96|23||0|0|||||||||||||||||||||||||||||0|||||||89401241005915|1|0.0005388276417873|0.0015067186265176|-0.999998719731057|101000000|
+J200923.86-895429.8|302.3494493|-89.9082844|0.5302|0.5273|-0.1853|303.0290903|-27.1587231|270.1229902|-66.4831792|2040.087|592.021|3004089401241004983|3004m894_ab41-004983|3004m894_ab41|4983|16.656|0.09|12.0|0.929700017|16.797|0.315|3.4|0.883000016|12.884||0.4|0.887300014|9.448||-1.4|1.01400006|0.925300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|8|23|0|23|0|22|0|22|23.319|22.959|22.533|23.178|0.0|0.0|0.0|0.0|0||0||0||0||34.480999|2.86759996|9.304|2.848|0.067|12.052|3.50209999|21.768|3.438|0.135|18.1089993|46.5690002|1098.486|25.347|3.622|-17.823|13.1739998|298.798|10.043|0.897|16.665|0.287|1|0.261|16.623|0.51|1|0.319|12.336||32|0.825|8.84||32|0.576|17.206|0.27|1|17.268|0.499|1|13.51||32|9.85||32|16.926|0.287|1|16.942|0.51|1|13.161||32|9.416||32|16.824|0.337|1|16.066||32|12.886||32|9.072||32|16.748|0.388|1|16.018||32|12.658||32|8.781||32|16.734|0.463|1|16.049||32|12.453||32|8.521||32|16.698|0.528|1|15.977||32|12.276||32|8.286||32|16.409|0.472|1|15.626||32|12.11||32|8.071||32|15.759|0.298|1|15.781|0.527|1|11.961||32|7.871||32|16.695|0.399|0.083|2.126|22|1|55275.28745078|55277.33835439|55276.29420055|16.767|1.055|0.22|3.15300012|17|0|55275.28745078|55277.33835439|55276.29420055|13.437|3.296|0.703|5.30200005|12|0|55275.28745078|55277.33835439|55276.27981791||||4.34299994|9|0|55275.28745078|55277.33835439|55276.27981791|15|-50|24|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004983|1|0.0008565257818724|-0.0013523043971751|-0.99999871881738|131000000|
+J215524.34-895429.1|328.8514234|-89.9080974|0.6724|0.6353|-0.1917|303.0037012|-27.1942384|270.1973528|-66.5130472|1933.592|563.703|3004089401241005213|3004m894_ab41-005213|3004m894_ab41|5213|16.929|0.108|10.1|0.885200024|17.424|0.496|2.2|0.905399978|12.487||1.9|1.12699997|9.619||-0.4|1.09300005|0.997099996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|ACUU|3|0000|3|24|0|24|1|22|0|23|26.453|26.801|25.576|25.401|0.0|0.0|0.0|0.0|0||0||0||0||26.8260002|2.65689993|9.212|2.843|0.415|6.76719999|3.09439993|21.722|3.242|0.0|77.1210022|41.6040001|1098.786|24.046|1.789|-4.76329994|11.2600002|298.685|9.59|0.783|16.638|0.265|1|0.261|16.074||32|0.319|12.269||32|0.825|10.026||32|0.576|17.341|0.285|1|16.725||32|13.456||32|9.96||32|16.899|0.265|1|16.393||32|13.094||32|10.602||32|16.54|0.247|1|16.143||32|12.812||32|9.246||32|16.136|0.211|1|15.822||32|12.58||32|8.949||32|15.678|0.167|1|15.412||32|12.375||32|8.685||32|15.226|0.13|1|15.709|0.486|1|12.194||32|8.448||32|14.874|0.109|1|15.288|0.384|1|12.029||32|9.127||32|14.62|0.1|1|15.026|0.347|1|11.877||32|7.98||32|16.921|0.483|0.098|1.707|22|0|55275.28745078|55277.33835439|55276.34323024|17.397|2.704|0.552|3.18300009|12|0|55275.28745078|55277.33835439|55276.34323024|12.88|2.454|0.523|4.51000023|15|0|55275.28745078|55277.33835439|55276.30087496||||1.77400005|9|0|55275.28745078|55277.33835439|55276.33160466|-34|81|30|1|2|0|||||||||||||||||||||||||||||0|||||||3004089401241005213|1|0.0013727517422837|-0.0008296849758476|-0.99999871358692|131000000|
+J132950.44-895428.3|202.4601781|-89.9078652|0.4493|0.4362|0.1356|302.9491678|-27.037311|269.7862494|-66.5253639|1956.919|575.382|1802089401241004698|1802m894_ab41-004698|1802m894_ab41|4698|16.528|0.077|14.1|0.932900012|16.498|0.214|5.1|0.935800016|13.06||-0.8|0.971499979|9.295||-0.5|0.896000028|0.931599975|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0nnn|ABUU|3|0000|10|24|1|24|0|23|0|23|23.824|23.825|22.937|22.784|0.0|0.0|0.0|0.0|8|h|0||0||0||38.7859993|2.74429989|9.405|2.454|0.265|15.8800001|3.1249001|21.841|3.096|0.0|-38.9949989|47.3250008|1096.002|25.51|3.403|-7.43219995|15.1700001|298.212|10.356|1.027|15.859|0.065|0|0.261|16.157|0.474|0|0.319|12.263||32|0.825|8.92||32|0.576|16.705|0.082|0|16.257||32|13.449||32|9.901||32|16.12|0.065|0|16.476|0.474|0|13.088||32|9.496||32|15.737|0.059|0|16.119|0.445|0|12.8||32|10.373||32|15.378|0.052|1|15.785|0.406|1|12.566||32|9.462||32|14.942|0.042|1|15.385|0.338|1|12.288||32|8.611||32|14.366|0.03|1|14.77|0.226|1|12.021||32|8.323||32|13.713|0.02|1|14.04|0.134|1|11.814||32|8.094||32|13.116|0.014|1|13.39|0.085|1|11.663||32|7.923||32|16.597|0.416|0.085|2.012|23|2|55274.89041135|55276.94144233|55275.98210006|16.527|1.519|0.31|2.29399991|18|0|55274.89041135|55276.94144233|55275.98210006|14.904|||2.80200005|7|0|55274.89041135|55276.94144233|55275.95477317||||3.95499992|8|0|55274.89041135|55276.94144233|55275.95477317|20|46|42|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004698|1|-0.001486076079006|-0.0006143431474943|-0.999998707079356|121000000|
+J094613.28-895428.2|146.5553416|-89.9078388|0.2718|0.2453|-0.0634|302.857088|-27.0644689|269.8062776|-66.6113825|1940.829|568.209|1201089401241004423|1201m894_ab41-004423|1201m894_ab41|4423|15.531|0.048|22.7|0.872799993|15.874|0.136|8.0|0.899800003|13.095||-0.5|0.97329998|9.455||-0.5|1.028|0.93900001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABUU|3|0000|18|22|4|22|1|21|0|21|21.719|21.628|20.903|21.194|0.0|0.0|0.0|0.0|0||0||0||0||97.1910019|4.27510023|9.366|2.881|0.187|28.2140007|3.53060007|21.804|3.356|0.003|-22.0240002|45.8009987|1096.331|25.058|4.131|-7.18240023|13.0900002|297.958|9.842|1.642|15.284|0.04|1|0.261|15.602|0.187|1|0.319|11.961||32|0.825|8.41||32|0.576|15.986|0.044|1|16.394|0.206|1|13.156||32|9.672||32|15.545|0.04|1|15.921|0.187|1|12.786||32|8.986||32|15.275|0.04|1|15.66|0.189|1|12.509||32|8.548||32|15.024|0.039|1|15.438|0.192|1|12.273||32|8.282||32|14.748|0.036|1|15.172|0.181|1|12.071||32|8.054||32|14.386|0.031|1|14.738|0.143|1|11.891||32|7.855||32|13.846|0.022|1|14.066|0.09|1|11.729||32|7.72||32|13.157|0.014|1|13.3|0.051|1|11.576||32|7.594||32|15.523|0.162|0.034|0.682|21|0|55274.89041135|55276.94144233|55275.96707613|15.868|0.748|0.159|3.77099991|19|0|55274.89041135|55276.94144233|55275.96707613|14.663|||2.05100012|7|0|55274.89041135|55276.94144233|55275.93643125||||3.11800003|6|0|55274.89041135|55276.94144233|55275.93643125|-5|-23|-92|0|0|0||||||||||||||||||||||||||748674705|0.391|-44.3|1|16.421|0.152|15.56|0.184|15.523||1201089401241004423|1|-0.0013421750221412|0.0008865031177685|-0.999998706338379|111000000|
+J050243.48-895427.4|75.6811748|-89.9076352|0.8885|0.9774|-0.0909|302.8395579|-27.1703148|270.0576354|-66.6501938|1983.016|584.959|600089401241005775|0600m894_ab41-005775|0600m894_ab41|5775|17.335|0.154|7.1|0.896600008|17.295||-0.9|0.873199999|12.948|0.432|2.5|1.16900003|9.563||-0.3|1.03199995|0.986100018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|3|22|0|22|0|20|0|21|22.868|22.813|21.957|21.778|0.0|0.0|0.0|0.0|0||0||0||0||18.4549999|2.61089993|9.371|2.8|0.0|-3.2579999|3.81049991|21.779|3.427|0.0|104.889999|41.7439995|1099.488|23.254|3.268|-3.42020011|11.8479996|298.62|9.321|0.619|16.506|0.212|1|0.261|16.27|0.426|1|0.319|11.778||32|0.825|8.662||32|0.576|17.476|0.296|1|16.644||32|13.183||32|10.206||32|16.767|0.212|1|16.589|0.426|1|12.603||32|9.238||32|16.166|0.158|1|15.907|0.294|1|12.856|0.501|1|8.719||32|15.71|0.129|1|15.485|0.247|1|12.409|0.411|1|8.344||32|15.326|0.109|1|15.177|0.225|1|12.109|0.377|1|8.081||32|14.905|0.087|1|14.864|0.198|1|11.916|0.371|1|7.928||32|14.524|0.072|1|14.567|0.176|1|11.76|0.375|1|7.891||32|14.291|0.067|1|14.368|0.168|1|11.624|0.38|1|7.875||32|17.448|0.843|0.18|3.378|19|1|55275.28745078|55277.20605032|55276.21969707||||3.16599989|7|0|55275.28745078|55277.20605032|55276.21969707|12.593|2.104|0.47|1.86000001|12|0|55275.28745078|55277.20605032|55276.16736816||||3.13199997|11|0|55275.28745078|55277.20605032|55276.20108177|-18|-61|7|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241005775|1|0.0003986929068824|0.0015619901841172|-0.999998700614471|101000000|
+J225720.49-895427.3|344.3353918|-89.9075885|0.1958|0.1809|-0.0254|302.981536|-27.2093419|270.2234656|-66.5355981|2113.323|584.985|89401241004468|0000m894_ab41-004468|0000m894_ab41|4468|15.264|0.038|28.5|0.96359998|15.163|0.072|15.0|0.876299977|12.88|0.388|2.8|1.03900003|9.621||-0.7|1.01199996|0.969099998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AACU|7|0000|24|25|14|25|2|24|0|24|24.633|24.75|24.03|23.885|0.0|0.0|0.0|0.0|0||0||0||0||124.269997|4.3585|9.313|2.806|0.169|54.3100014|3.61409998|21.744|3.302|0.105|111.690002|39.9109993|1099.289|23.765|1.334|-7.40180016|11.2370005|298.382|9.624|0.898|15.044|0.05|1|0.261|14.792|0.087|1|0.319|12.266||32|0.825|9.228||32|0.576|15.762|0.055|0|15.693|0.107|0|13.455||32|9.838||32|15.305|0.05|1|15.111|0.087|1|13.091||32|9.804||32|14.9|0.045|1|14.641|0.074|1|12.806||32|8.873||32|14.257|0.031|1|14.047|0.053|1|13.849||32|8.408||32|13.524|0.02|1|13.421|0.036|1|12.243||32|8.029||32|12.974|0.014|1|12.941|0.028|1|11.888||32|7.716||32|12.658|0.013|1|12.64|0.024|1|11.549||32|7.434||32|12.512|0.013|1|12.477|0.024|1|11.276||32|7.216||32|15.269|0.158|0.032|0.575|24|0|55275.28745078|55277.33835439|55276.36980225|15.12|0.283|0.057|2.48799992|24|0|55275.28745078|55277.33835439|55276.36980225|12.672|1.875|0.383|3.12899995|14|0|55275.28745078|55277.33835439|55276.35976824||||4.11899996|8|0|55275.28745078|55277.33835439|55276.35976824|8|-18|6|0|0|0||||||||||||||||||||||||||1169463299|0.112|-70.3|1|15.938|0.083|15.275|0.111|15.009|0.15|89401241004468|1|0.0015529791181988|-0.0004354878482332|-0.99999869930225|131000000|
+J002824.21-895427.2|7.1009116|-89.9075609|1.1815|1.0254|0.2147|302.9423462|-27.2201286|270.2307118|-66.5719665|2018.077|592.187|89401241005416|0000m894_ab41-005416|0000m894_ab41|5416|18.773||-2.9|0.976599991|16.861|0.328|3.3|1.04400003|11.974|0.179|6.1|1.00899994|8.993||1.4|1.148|1.03600001|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|UBBU|6|0000|0|22|1|22|1|21|1|21|21.609|21.609|20.924|21.155|0.0|0.0|0.0|0.0|129|D|129|D|0||0||-7.0637002|2.45359993|9.323|2.71|0.089|11.368|3.43440008|21.788|3.362|0.259|257.220001|42.4150009|1098.773|22.984|2.6|16.3610001|11.8529997|298.382|9.463|0.473|16.656|0.346|0|0.261|15.678|0.231|0|0.319|12.686|0.535|0|0.825|8.879||32|0.576|17.119||32|16.761|0.335|0|13.278||32|9.885||32|16.917|0.346|0|15.997|0.231|0|13.511|0.535|0|9.455||32|15.902|0.175|1|15.284|0.155|1|13.011|0.435|0|9.112||32|14.781|0.077|1|14.434|0.088|1|12.616|0.373|1|8.82||32|13.694|0.035|1|13.542|0.047|1|12.265|0.324|1|8.497||32|12.832|0.019|1|12.803|0.029|1|11.968|0.292|1|8.147||32|12.275|0.014|1|12.301|0.021|1|11.728|0.271|1|7.896||32|11.964|0.012|1|11.99|0.019|1|11.53|0.26|1|7.712||32||||1.892|5|0|55275.28745078|55277.33835439|55276.34599308|17.148|2.088|0.445|3.56699991|13|0|55275.28745078|55277.33835439|55276.34599308|11.926|0.763|0.166|2.62800002|18|0|55275.28745078|55277.33835439|55276.33339187|10.275|4.058|0.886|4.64499998|12|0|55275.28745078|55277.33835439|55276.33339187|-47|14|-50|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005416|1|0.0016009912249594|0.0001994398658207|-0.999998698524572|101000000|
+J073708.24-895427.1|114.284363|-89.907538|0.2817|0.29|-0.0857|302.8301001|-27.1098045|269.9040772|-66.6449603|2072.892|592.822|1201089401241004563|1201m894_ab41-004563|1201m894_ab41|4563|15.892|0.051|21.5|0.950800002|16.358|0.207|5.2|0.905600011|12.583||1.5|1.16999996|9.519||0.0|1.04299998|1.01300001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|21|22|0|22|1|21|0|21|22.793|22.632|21.897|21.666|0.0|0.0|0.0|0.0|0||0||0||0||69.6930008|3.24659991|9.422|2.72|0.03|18.0620003|3.44370008|21.812|3.322|0.0|62.5169983|42.151001|1096.895|23.298|3.615|0.511919975|12.0860004|297.835|9.637|2.085|16.015|0.172|0|0.261|16.157||32|0.319|12.18||32|0.825|8.528||32|0.576|16.528|0.157|0|16.503||32|13.362||32|9.537||32|16.276|0.172|0|16.476||32|13.005||32|9.104||32|16.323|0.234|0|16.334||32|12.722||32|8.828||32|16.531|0.35|0|16.103||32|12.491||32|8.295||32|16.081||32|15.901||32|12.289||32|7.973||32|16.133||32|15.719||32|12.108||32|7.701||32|16.035||32|15.556||32|11.944||32|7.469||32|15.614||32|15.402||32|11.791||32|7.263||32|15.89|0.232|0.05|0.853|21|0|55275.02271543|55276.94144233|55275.97309574|16.289|0.928|0.198|3.92499995|18|0|55275.02271543|55276.94144233|55275.97309574|13.339|4.496|0.981|5.28299999|10|1|55275.02271543|55276.94144233|55275.94273751|11.859|||4.54400015|10|0|55275.02271543|55276.94144233|55275.94273751|-6|-26|32|0|0|0||||||||||||||||||||||||||863297557|0.676|-168.4|1|16.469|0.163|15.957|0.235|15.299|0.224|1201089401241004563|1|-0.0006636865948363|0.0014709731259944|-0.999998697878235|111000000|
+J203106.40-895426.9|307.7766943|-89.9074828|0.1273|0.1237|-0.0224|303.0262259|-27.1671031|270.1420601|-66.4875185|2017.156|592.278|3004089401241004124|3004m894_ab41-004124|3004m894_ab41|4124|14.249|0.029|37.7|0.894400001|14.241|0.041|26.3|1.05299997|12.395||2.0|1.07599998|9.448||-0.1|1.07000005|1.01999998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|23|23|23|23|2|22|0|22|23.633|23.519|23.397|23.655|0.0|0.0|0.0|0.0|0||0||0||0||316.630005|8.39280033|9.281|2.903|0.0|126.889999|4.82110023|21.764|3.342|0.0|87.0690002|43.7579994|1096.63|24.295|0.0|-1.66589999|13.1759996|298.643|9.908|0.423|14.266|0.041|0|0.261|14.332|0.093|0|0.319|12.201||32|0.825|8.755||32|0.576|14.871|0.041|0|15.05|0.097|0|13.419||32|9.766||32|14.527|0.041|0|14.651|0.093|0|13.026||32|9.331||32|14.431|0.049|0|14.541|0.109|0|12.725||32|8.988||32|14.415|0.059|0|14.567|0.138|0|12.54||32|8.693||32|14.429|0.072|1|14.658|0.18|1|12.458||32|8.433||32|14.455|0.087|1|14.761|0.234|1|12.398||32|8.197||32|14.464|0.102|1|14.835|0.291|1|12.233||32|7.983||32|14.421|0.112|1|14.837|0.335|1|12.08||32|7.784||32|14.253|0.044|0.009|0.25|22|0|55275.28745078|55277.33835439|55276.29420055|14.245|0.199|0.041|0.940999985|22|0|55275.28745078|55277.33835439|55276.29420055|13.251|3.121|0.665|4.15299988|11|2|55275.28745078|55277.33835439|55276.27981791|10.823|9.684|2.065|2.84100008|10|0|55275.28745078|55277.33835439|55276.27981791|-15|21|-26|0|0|0||||||||||||||||||||||||||996409794|0.174|93.8|1|14.981|0.047|14.497|0.062|14.357|0.085|3004089401241004124|1|0.000989159526319|-0.0012762884058722|-0.999998696324819|131000000|
+J174252.66-895426.6|265.7194533|-89.9074102|0.1339|0.1372|-0.0126|303.0313061|-27.1008345|269.9826905|-66.4683764|1944.199|571.095|2403089401241004097|2403m894_ab41-004097|2403m894_ab41|4097|14.463|0.029|37.1|0.95599997|14.581|0.052|20.7|1.06200004|12.765||0.5|1.02900004|9.456||-0.3|0.828599989|0.967199981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|21|21|19|21|0|20|0|20|22.706|22.671|22.149|22.122|0.0|0.0|0.0|0.0|0||0||0||0||259.959991|7.00699997|9.355|2.604|0.162|92.8389969|4.48659992|21.805|3.424|0.161|25.6760006|49.2179985|1095.895|25.223|2.543|-3.8348999|13.0780001|298.505|9.69|0.727|14.526|0.03|0|0.261|14.586|0.085|0|0.319|16.545||32|0.825|8.974||32|0.576|15.116|0.029|0|15.338|0.091|0|13.982||32|9.98||32|14.787|0.03|0|14.905|0.085|0|17.37||32|9.55||32|14.701|0.035|1|14.709|0.091|1|13.209||32|9.21||32|14.668|0.042|1|14.57|0.099|1|12.975||32|8.92||32|14.591|0.047|1|14.421|0.104|1|12.773||32|9.972||32|14.44|0.048|1|14.245|0.105|1|12.591||32|8.324||32|14.232|0.046|1|14.05|0.102|1|12.426||32|8.064||32|14.04|0.045|1|13.869|0.099|1|12.513||32|7.837||32|14.466|0.1|0.022|0.341|20|0|55275.28732341|55277.20605032|55276.15694404|14.612|0.201|0.044|1.09099996|20|0|55275.28732341|55277.20605032|55276.15694404|13.217|2.455|0.549|4.30299997|10|0|55275.28732341|55277.20605032|55276.13426031|11.519|||2.9849999|6|0|55275.28732341|55277.20605032|55276.13426031|26|-34|-68|1|1|0||||||||||||||||||||||||||970399920|0.13|-29.9|1|15.139|0.041|14.58|0.083|14.308|0.077|2403089401241004097|1|-0.0001206182091359|-0.0016114884857422|-0.999998694277202|121000000|
+J082038.03-895426.5|125.1584872|-89.9073661|0.0827|0.0803|0.0143|302.8356458|-27.0929745|269.865489|-66.6363854|2026.978|593.642|1201089401241004071|1201m894_ab41-004071|1201m894_ab41|4071|12.485|0.023|46.6|2.296|12.426|0.023|46.8|1.07200003|11.683|0.139|7.8|1.03199995|9.501||-1.8|1.03600001|1.36899996|1|0|0.0|0.0|0.0|0.002|0000|0000|0|110n|AABU|7|0000|22|22|21|21|5|21|0|21|22.003|21.284|20.982|21.292|0.0|0.0|0.0|0.0|0||0||0||0||1607.5|34.4679985|9.391|2.761|0.096|675.280029|14.4230003|21.732|3.272|0.136|336.450012|43.1609993|1095.847|23.42|1.349|-22.0370007|12.5489998|297.809|9.791|1.187|12.458|0.008|0|0.261|12.408|0.014|0|0.319|11.926||32|0.825|8.675||32|0.576|13.097|0.008|0|13.173|0.015|0|13.044||32|9.68||32|12.719|0.008|0|12.727|0.014|0|12.751||32|9.251||32|12.577|0.008|0|12.548|0.015|0|12.683||32|8.905||32|12.514|0.009|0|12.465|0.017|0|12.551||32|8.611||32|12.481|0.009|1|12.421|0.019|1|12.354||32|8.352||32|12.463|0.01|1|12.398|0.022|1|12.174||32|8.118||32|12.454|0.011|1|12.386|0.024|1|12.01||32|7.902||32|12.448|0.013|1|12.378|0.028|1|11.858||32|7.704||32|12.499|0.035|0.007|0.323|21|0|55275.02271543|55276.94144233|55275.97309574|12.418|0.041|0.009|0.232999995|20|0|55275.02271543|55276.94144233|55276.01834588|11.62|0.798|0.174|1.903|18|1|55275.02271543|55276.94144233|55275.94273751||||4.9749999|6|0|55275.02271543|55276.94144233|55275.94273751|29|11|2|1|0|0||||||||||||||||||||||||||863323844|0.298|-78.1|1|13.617|0.029|12.797|0.033|12.622|0.034|1201089401241004071|1|-0.0009309989963245|0.001321807370071|-0.999998693032219|111000000|
+J040321.18-895426.0|60.8382583|-89.9072293|0.688|0.7524|0.1871|302.8544349|-27.1902364|270.1140158|-66.6416794|2044.841|594.896|600089401241004795|0600m894_ab41-004795|0600m894_ab41|4795|17.237|0.132|8.2|0.95569998|17.527||-1.6|1.02100003|12.061|0.187|5.8|1.00100005|9.05||1.4|1.09200001|1.01400006|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|BUBU|5|0000|2|24|0|24|2|23|0|23|23.777|23.764|22.938|22.835|0.0|0.0|0.0|0.0|137|Dh|137|Dh|0||0||20.1940002|2.44810009|9.32|2.762|0.097|-4.86059999|3.07640004|21.728|3.34|0.392|237.369995|40.8120003|1099.13|22.087|0.645|15.7130003|11.1540003|298.76|9.223|1.059|15.679|0.056|1|0.261|15.663||32|0.319|11.891||32|0.825|8.662||32|0.576|16.778|0.088|1|16.665||32|13.233||32|10.213||32|15.94|0.056|1|15.982||32|12.716||32|9.238||32|15.297|0.041|1|15.915|0.36|1|12.344||32|8.892||32|14.782|0.031|1|15.209|0.233|1|12.729|0.484|1|8.599||32|14.358|0.026|1|14.643|0.168|1|12.392|0.428|1|8.337||32|13.984|0.022|1|14.182|0.131|1|12.058|0.373|1|8.101||32|13.642|0.019|1|13.797|0.107|1|11.716|0.316|1|7.885||32|13.333|0.016|1|13.469|0.091|1|11.396|0.271|1|7.686||32|17.294|0.817|0.167|2.503|20|0|55275.28745078|55277.33835439|55276.29362153||||2.5710001|9|0|55275.28745078|55277.33835439|55276.29362153|11.916|0.947|0.197|3.71799994|18|0|55275.28745078|55277.33835439|55276.27983905|9.655|2.941|0.613|3.91499996|13|0|55275.28745078|55277.33835439|55276.27983905|0|49|6|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241004795|1|0.0007889757113327|0.0014139219480542|-0.999998689170167|101000000|
+J050951.79-895425.6|77.4658188|-89.9071376|0.2451|0.2677|0.0071|302.8376226|-27.1679476|270.0508501|-66.6513499|1975.404|584.066|600089401241004305|0600m894_ab41-004305|0600m894_ab41|4305|15.791|0.049|22.0|0.857800007|15.626|0.124|8.8|0.927900016|11.302|0.102|10.7|1.11399996|8.877||1.6|0.963800013|0.961700022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|111n|ABAU|7|0000|20|21|6|21|7|20|0|20|22.729|22.77|21.91|21.709|0.0|0.0|0.0|0.0|0||0||0||0||76.4960022|3.47009993|9.394|2.85|0.182|35.4640007|4.04050016|21.747|3.444|0.134|477.589996|44.7550011|1099.544|23.446|1.379|19.9610004|12.3030005|298.768|9.515|1.085|15.289|0.055|1|0.261|15.093|0.157|1|0.319|11.914|0.414|1|0.825|8.334||32|0.576|16.143|0.068|1|16.013|0.196|1|13.252|0.473|1|9.421||32|15.55|0.055|1|15.412|0.157|1|12.739|0.414|1|8.91||32|15.06|0.046|1|14.997|0.139|1|12.535|0.447|1|8.503||32|14.618|0.038|1|14.653|0.126|1|12.442|0.509|1|8.217||32|14.307|0.034|1|14.407|0.121|1|11.617||32|8.049||32|14.14|0.035|1|14.301|0.129|1|11.537||32|7.955||32|14.07|0.038|1|14.316|0.152|1|11.471||32|7.808||32|14.042|0.042|1|14.38|0.185|1|11.407||32|7.62||32|15.793|0.24|0.052|1.019|20|0|55275.28745078|55277.20605032|55276.18847532|15.447|0.485|0.106|3.16199994|18|0|55275.28745078|55277.20605032|55276.18847532|11.214|0.507|0.113|3.92199993|18|1|55275.28745078|55277.20605032|55276.16736816|9.809|3.327|0.744|2.60700011|13|0|55275.28745078|55277.20605032|55276.16736816|29|22|-38|1|0|1|||||||||||||||||||||||||||||0|||||||600089401241004305|1|0.0003517392287338|0.0015821258355926|-0.999998686577815|101000000|
+J034219.71-895425.1|55.5821463|-89.9069898|0.2901|0.315|0.0799|302.8609698|-27.1964682|270.1325728|-66.6373807|2067.152|594.79|600089401241004381|0600m894_ab41-004381|0600m894_ab41|4381|16.069|0.055|19.8|0.934300005|16.171|0.164|6.6|0.926599979|12.045|0.183|5.9|1.22500002|9.588|0.5|2.2|1.06099999|1.03199995|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|ABBC|15|0000|21|24|3|24|2|23|0|23|23.688|23.708|22.952|22.751|0.0|0.0|0.0|0.0|129|D|129|D|0||0||59.2089996|2.98530006|9.327|2.716|0.204|21.4580002|3.25049996|21.794|3.237|0.147|240.899994|40.637001|1099.239|22.201|0.0|23.1660004|10.6619997|298.405|9.004|0.58|15.881|0.067|1|0.261|16.128|0.356|1|0.319|13.913||32|0.825|8.946||32|0.576|16.519|0.068|0|16.809|0.354|0|14.661||32|9.958||32|16.142|0.067|1|16.447|0.356|1|14.738||32|9.522||32|15.95|0.073|1|16.391|0.437|1|14.321||32|9.179||32|15.776|0.079|1|15.672||32|15.503||32|8.885||32|15.551|0.079|1|15.605||32|12.35||32|8.626||32|15.263|0.073|1|15.57||32|12.17||32|8.39||32|14.946|0.065|1|15.599||32|12.008||32|8.174||32|14.635|0.057|1|15.604||32|11.853||32|7.976||32|16.038|0.192|0.039|1.6|23|0|55275.28745078|55277.33835439|55276.29362153|16.152|1.01|0.206|4.25699997|20|1|55275.28745078|55277.33835439|55276.29362153|11.95|1.026|0.214|4.10900021|18|0|55275.28745078|55277.33835439|55276.27983905|9.357|1.639|0.342|3.00699997|16|0|55275.28745078|55277.33835439|55276.27983905|5|-19|-22|0|0|0||||||||||||||||||||||||||728548380|0.247|140.9|1|16.407|0.148|15.795|0.214|14.806||600089401241004381|1|0.0009175472468723|0.0013391486095763|-0.999998682393158|101000000|
+J004635.88-895425.0|11.6495044|-89.9069617|0.873|0.8007|0.1875|302.9341254|-27.221174|270.22925|-66.5793283|1998.808|590.595|89401241005137|0000m894_ab41-005137|0000m894_ab41|5137|17.392|0.166|6.5|0.940500021|16.764|0.3|3.6|0.985899985|12.27|0.242|4.5|1.04499996|8.942||1.8|1.11000001|1.01499999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|2|22|0|22|1|21|0|21|21.632|21.777|20.755|20.731|0.0|0.0|0.0|0.0|0||0||0||0||17.5009995|2.68230009|9.27|2.754|0.0|12.4250002|3.43519998|21.812|3.368|0.121|195.860001|43.7179985|1099.807|23.542|0.0|19.8040009|11.0950003|298.587|9.238|0.7|16.564|0.373|1|0.261|15.768|0.346|1|0.319|12.171|0.312|1|0.825|8.664||32|0.576|17.423|0.461|1|16.77|0.461|1|13.777|0.458|1|9.668||32|16.825|0.373|1|16.087|0.346|1|12.996|0.312|1|9.24||32|16.264|0.29|1|15.59|0.285|1|12.494|0.255|1|8.853||32|15.637|0.202|1|15.094|0.223|1|12.133|0.224|1|8.588||32|14.987|0.134|1|14.55|0.163|1|11.841|0.205|1|8.472||32|14.314|0.085|1|13.957|0.111|1|11.555|0.185|1|9.244||32|13.543|0.049|1|13.253|0.068|1|11.24|0.16|1|8.263||32|12.619|0.025|1|12.413|0.037|1|10.894|0.132|1|8.077||32|17.465|1.047|0.223|2.643|19|0|55275.28745078|55277.33835439|55276.34599308|16.723|1.24|0.264|2.72199988|15|0|55275.28745078|55277.33835439|55276.34599308|12.159|1.406|0.307|4.10699987|15|1|55275.28745078|55277.33835439|55276.33339187|9.814|2.401|0.524|2.78900003|13|0|55275.28745078|55277.33835439|55276.33339187|12|20|24|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005137|1|0.0015903758642506|0.0003278895431959|-0.99999868159566|101000000|
+J152903.61-895424.8|232.2650591|-89.9069093|0.1193|0.1239|0.0186|302.9982726|-27.0562122|269.8571965|-66.4870229|2082.349|593.315|2403089401241004043|2403m894_ab41-004043|2403m894_ab41|4043|14.155|0.028|39.1|0.948899984|14.138|0.041|26.4|0.957799971|12.99||-0.7|1.11099994|9.436||0.0|0.974600017|0.993900001|1|0|0.0|0.0|0.0|0.0|0000|h000|0|00nn|AAUU|3|0000|21|21|21|21|0|20|0|20|22.219|22.436|21.724|21.608|0.0|0.0|0.0|0.0|8|h|0||0||0||345.0|8.82460022|9.552|2.648|0.0|139.559998|5.27869987|21.757|3.299|0.0|-32.8989983|50.4780006|1096.719|25.427|0.51|-0.349550009|13.3219995|298.272|9.965|0.871|14.172|0.034|1|0.261|14.253|0.109|1|0.319|12.632||32|0.825|8.959||32|0.576|14.794|0.034|0|14.978|0.114|0|13.824||32|9.968||32|14.433|0.034|1|14.572|0.109|1|13.457||32|9.535||32|14.304|0.038|1|14.447|0.125|1|14.305||32|9.199||32|14.25|0.045|1|14.42|0.151|1|12.768||32|8.913||32|14.22|0.053|1|14.418|0.182|1|12.439||32|8.66||32|14.193|0.06|1|14.416|0.215|1|12.15||32|8.296||32|14.153|0.068|1|14.405|0.247|1|11.873||32|8.001||32|14.098|0.074|1|14.387|0.28|1|11.625||32|7.789||32|14.154|0.073|0.016|0.229|20|0|55275.02271543|55276.94144233|55276.04668158|14.135|0.187|0.041|0.796999991|20|0|55275.02271543|55276.94144233|55276.04668158|13.949|8.696|1.945|1.84300005|7|0|55275.02271543|55276.94144233|55276.01848474|11.652|||3.99499989|9|0|55275.02271543|55276.94144233|55276.01848474|0|-33|89|0|0|1||||||||||||||||||||||||||912325087|0.085|119.7|1|14.679|0.042|14.334|0.053|14.195|0.077|2403089401241004043|1|-0.000994355605721|-0.0012849255786777|-0.999998680110722|121000000|
+J113013.67-895424.7|172.5569905|-89.9068788|1.3213|1.2091|0.2591|302.8956396|-27.0408158|269.7677568|-66.5726001|1854.911|500.88|1201089401241005370|1201m894_ab41-005370|1201m894_ab41|5370|17.576|0.203|5.3|0.841300011|17.048||0.7|0.789600015|12.928||-0.5|1.00699997|9.412||-1.1|0.959699988|0.894599974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|21|0|21|1|20|0|20|21.52|21.499|20.492|20.809|0.0|0.0|0.0|0.0|0||0||0||0||14.783|2.77020001|9.299|2.764|0.0|2.37940001|3.59380007|21.792|3.444|0.0|-27.2810001|53.4339981|1095.194|25.934|15.029|-15.0670004|13.6160002|297.969|9.937|0.873|16.325|0.237|1|0.261|16.165|0.504|1|0.319|12.439||32|0.825|8.682||32|0.576|17.442|0.372|1|16.4||32|13.725||32|9.69||32|16.586|0.237|1|16.484|0.504|1|13.264||32|9.258||32|15.766|0.144|1|15.713|0.32|1|12.951||32|8.913||32|15.084|0.095|1|15.116|0.228|1|12.755||32|8.622||32|14.635|0.076|1|14.718|0.191|1|12.598||32|8.362||32|14.377|0.071|1|14.484|0.182|1|12.444||32|8.128||32|14.179|0.069|1|14.317|0.181|1|12.352||32|7.912||32|13.937|0.063|1|14.112|0.172|1|12.32||32|7.713||32|17.623|0.88|0.192|3.62|17|1|55274.89041135|55276.94144233|55275.96793221|17.636|2.677|0.584|2.53800011|12|0|55274.89041135|55276.94144233|55275.96793221|15.239|||3.81999993|6|0|55274.89041135|55276.94144233|55275.93579789||||1.55799997|8|0|55274.89041135|55276.94144233|55275.93579789|85|78|99|4|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005370|1|-0.001611576870762|0.0002105375599254|-0.999998679246091|111000000|
+J122539.48-895424.6|186.4145295|-89.9068577|0.1217|0.1193|0.024|302.9201783|-27.0356023|269.7674074|-66.5501306|2021.925|594.477|1802089401241003897|1802m894_ab41-003897|1802m894_ab41|3897|14.057|0.028|39.5|1.23099995|14.065|0.042|25.9|0.974900007|12.825|0.462|2.3|1.04100001|8.965||0.9|0.972899973|1.05200005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|10nn|AACU|7|0000|22|22|20|22|1|22|0|22|23.998|23.059|22.905|23.354|0.0|0.0|0.0|0.0|0||0||0||0||377.619995|9.57009983|9.456|2.692|0.2|149.210007|5.75349998|21.848|3.388|0.049|117.510002|50.0180016|1094.562|25.817|4.725|12.9130001|14.1040001|298.067|10.218|1.358|13.985|0.031|1|0.261|13.938|0.049|1|0.319|11.882|0.229|1|0.825|8.547||32|0.576|14.653|0.032|1|14.761|0.056|1|13.495|0.337|1|9.631||32|14.246|0.031|1|14.257|0.049|1|12.707|0.229|1|9.123||32|14.04|0.033|1|13.991|0.049|1|12.201|0.185|1|8.64||32|13.886|0.035|1|13.806|0.051|1|11.876|0.169|1|8.254||32|13.772|0.038|1|13.671|0.054|1|11.68|0.169|1|7.96||32|13.705|0.042|1|13.584|0.059|1|11.545|0.174|1|7.785||32|13.656|0.047|1|13.525|0.065|1|11.422|0.179|1|7.687||32|13.599|0.051|1|13.469|0.071|1|11.309|0.184|1|7.578||32|14.056|0.076|0.016|0.282|21|0|55274.89041135|55276.94144233|55275.92797183|14.056|0.153|0.033|0.541999996|20|0|55274.89041135|55276.94144233|55275.92797183|12.686|1.422|0.303|2.8269999|12|0|55274.89041135|55276.94144233|55275.92797183|9.768|3.442|0.734|2.30999994|12|0|55274.89041135|55276.94144233|55275.92797183|-10|3|-14|0|0|0||||||||||||||||||||||||||857714626|0.176|-28.9|1|15.057|0.055|14.438|0.059|14.15|0.078|1802089401241003897|1|-0.0016154622340631|-0.0001816179487449|-0.999998678647472|121000000|
+J002320.70-895424.4|5.8362717|-89.906796|1.1557|1.0171|0.204|302.9447316|-27.2206605|270.2331855|-66.5700133|1849.247|210.452|2403089401241004986|2403m894_ab41-004986|2403m894_ab41|4986|18.755||-2.9|0.912999988|16.834||1.5|0.842100024|11.817|0.152|7.1|0.974399984|9.122||1.0|1.04700005|0.927100003|1|0|0.0|0.0|0.0|0.0|0000|Dd00|0|nnnn|UUBU|4|0000|0|22|0|22|2|21|0|21|21.645|21.623|21.095|21.486|0.0|0.0|0.0|0.0|129|D|1|d|0||0||-7.25699997|2.49460006|9.332|2.703|0.117|5.01919985|3.31399989|21.814|3.357|0.163|297.23999|41.6450005|1098.477|22.894|0.0|11.802|11.8850002|298.174|9.355|0.641|16.526||32|0.261|15.708||32|0.319|11.789||32|0.825|8.955||32|0.576|17.334||32|16.51||32|13.124||32|9.964||32|16.787||32|16.027||32|12.614||32|9.531||32|16.945|0.464|1|16.344|0.484|1|12.942|0.478|1|9.186||32|16.198|0.288|1|15.893|0.395|1|12.649|0.45|1|8.695||32|15.382|0.164|1|15.253|0.264|1|12.378|0.422|1|8.23||32|14.405|0.079|1|14.334|0.134|1|12.118|0.392|1|7.904||32|13.423|0.038|1|13.393|0.066|1|11.894|0.371|1|7.632||32|12.626|0.021|1|12.644|0.038|1|11.7|0.356|1|7.393||32||||1.858|5|0|55275.28745078|55277.33835439|55276.34599308|17.85|3.131|0.668|2.48799992|14|0|55275.28745078|55277.33835439|55276.34599308|11.78|0.768|0.168|2.95900011|18|1|55275.28745078|55277.33835439|55276.33339187|10.793|8.124|1.773|2.29299998|11|0|55275.28745078|55277.33835439|55276.33339187|98|-33|22|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241004986|1|0.0016182842639594|0.0001654144291981|-0.999998676896178|101000000|
+J121645.17-895424.3|184.1882236|-89.9067607|0.1772|0.1698|0.0367|302.9161343|-27.035982|269.7662902|-66.5537253|2031.346|595.56|1802089401241004036|1802m894_ab41-004036|1802m894_ab41|4036|14.987|0.034|31.5|0.886500001|15.119|0.079|13.8|0.924199998|13.051||-0.8|0.97420001|8.845||1.4|0.955500007|0.932600021|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|22|22|12|22|0|21|1|22|23.495|23.317|22.639|23.076|0.0|0.0|0.0|0.0|0||0||0||0||160.330002|5.08650017|9.411|2.694|0.055|56.5330009|4.09439993|21.816|3.36|0.033|-37.7989998|47.723999|1094.777|26.017|5.154|18.8579998|13.5279999|297.151|9.904|0.839|14.724|0.042|1|0.261|14.745|0.108|1|0.319|12.269||32|0.825|8.819|0.453|1|0.576|15.501|0.048|1|15.663|0.135|1|13.693||32|9.35||32|14.985|0.042|1|15.064|0.108|1|13.094||32|9.395|0.453|1|14.54|0.036|1|14.596|0.091|1|13.242|0.481|1|8.838|0.366|1|14.117|0.03|1|14.166|0.076|1|12.639|0.34|1|8.458|0.332|1|13.819|0.028|1|13.841|0.068|1|12.233|0.28|1|8.199|0.327|1|13.656|0.028|1|13.635|0.066|1|11.952|0.253|1|8.001|0.333|1|13.581|0.031|1|13.52|0.069|1|11.791|0.251|1|7.841|0.345|17|13.547|0.034|1|13.462|0.075|1|11.691|0.26|1|7.728|0.369|17|14.983|0.098|0.021|0.317|21|0|55274.89041135|55276.94144233|55275.92797183|15.084|0.281|0.06|1.597|21|0|55274.89041135|55276.94144233|55275.92797183|13.789|5.379|1.174|4.125|8|0|55274.89041135|55276.94144233|55275.92381874|9.17|2.246|0.479|4.65199995|13|0|55274.89041135|55276.94144233|55275.92797183|21|14|-23|0|0|0||||||||||||||||||||||||||857686720|0.199|90.4|1|15.828|0.088|15.181|0.114|15.156|0.218|1802089401241004036|1|-0.0016229869032737|-0.000118849329012|-0.999998675893298|121000000|
+J232003.00-895423.8|350.0125105|-89.9066285|1.2455|1.0608|-0.2293|302.9726822|-27.2141966|270.2310243|-66.5443451|2277.84|435.328|600089401241005610|0600m894_ab41-005610|0600m894_ab41|5610|18.816||-2.5|0.9023|17.509||-2.3|0.996299982|11.921|0.162|6.7|1.00199997|9.189||0.9|1.02900004|0.972100019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|25|0|24|3|24|1|24|24.713|24.673|23.845|23.748|0.0|0.0|0.0|0.0|0||0||0||0||-5.9920001|2.35870004|9.275|2.769|0.096|-7.05870008|3.12789989|21.805|3.391|0.082|270.25|40.4469986|1100.125|23.612|2.531|10.3249998|11.559|298.122|9.561|1.107|17.34||32|0.261|16.222||32|0.319|12.276|0.337|1|0.825|8.637||32|0.576|18.222||32|17.211||32|13.768|0.445|1|9.765||32|17.601||32|16.541||32|13.101|0.337|1|9.213||32|17.147||32|16.585|0.416|1|12.657|0.29|1|8.787||32|16.643||32|15.884|0.272|1|12.308|0.261|1|8.49||32|16.73|0.473|1|15.338|0.198|1|12.015|0.239|1|8.305||32|15.97|0.277|1|14.897|0.155|1|11.783|0.227|1|8.182||32|15.475|0.205|1|14.544|0.131|1|11.589|0.222|1|8.064||32|15.066|0.161|1|14.247|0.114|1|11.404|0.215|1|7.866||32||||2.414|9|0|55275.28745078|55277.33835439|55276.36980225||||2.99099994|6|0|55275.28745078|55277.33835439|55276.36252723|11.864|0.945|0.193|2.80599999|19|0|55275.28745078|55277.33835439|55276.35976824|10.063|4.947|1.01|4.86800003|12|0|55275.28745078|55277.33835439|55276.35976824|-48|57|-10|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241005610|1|0.0016049434829698|-0.0002826335174075|-0.999998672136474|131000000|
+J185015.72-895422.5|282.5655018|-89.906277|0.6407|0.6854|-0.1734|303.0372223|-27.1276362|270.0510717|-66.4692224|2123.402|585.537|3004089401241005029|3004m894_ab41-005029|3004m894_ab41|5029|16.928|0.108|10.0|0.876100004|16.626||1.9|0.893000007|12.461||1.3|1.01400006|9.295||0.4|0.9454|0.927299976|1|0|0.0|0.0|0.0|0.002|0000|0000|0|nnnn|AUUU|1|0000|3|21|0|21|1|20|0|20|22.56|22.436|21.671|21.857|0.0|0.0|0.0|0.0|0||0||0||0||26.8490009|2.67880011|9.358|2.709|0.214|6.87230015|3.62150002|21.739|3.401|0.31|66.1220016|49.1199989|1097.586|25.564|2.009|5.27519989|12.5319996|298.801|9.626|1.449|16.755|0.33|0|0.261|16.652|0.479|0|0.319|12.082||32|0.825|8.964||32|0.576|17.334|0.317|0|16.755||32|13.376||32|9.976||32|17.016|0.33|0|16.971|0.479|0|12.907||32|9.54||32|16.824|0.356|1|16.407|0.368|1|12.555||32|9.197||32|16.329|0.281|1|15.793|0.26|1|12.259||32|8.908||32|15.476|0.155|1|15.065|0.161|1|11.966||32|8.649||32|14.461|0.072|1|14.24|0.089|1|11.693||32|8.416||32|13.53|0.036|1|13.467|0.051|1|12.207|0.539|1|8.203||32|12.84|0.022|1|12.867|0.034|1|11.999|0.512|1|8.005||32|16.968|0.533|0.116|1.736|19|0|55275.28732341|55277.20605032|55276.15694404|17.341|2.57|0.561|3.296|11|0|55275.28732341|55277.20605032|55276.15694404|12.781|2.26|0.505|1.74399996|8|0|55275.28732341|55277.20605032|55276.13426031|11.896|||4.01000023|10|0|55275.28732341|55277.20605032|55276.13426031|21|-22|56|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005029|1|0.0003558719977845|-0.0015965947804857|-0.999998662119219|131000000|
+J175827.69-895421.9|269.615399|-89.9060927|0.1472|0.1539|-0.0179|303.034605|-27.1066049|269.9984213|-66.4668037|1927.869|566.547|2403089401241004125|2403m894_ab41-004125|2403m894_ab41|4125|14.731|0.032|34.2|0.960500002|14.636|0.057|19.1|0.861999989|12.437||1.2|1.13300002|9.423||-0.3|0.897300005|0.960099995|1|0|0.0|0.0|0.0|0.001|0000|0000|0|11nn|AAUU|3|0000|21|21|17|21|1|20|1|20|22.001|22.132|20.96|21.166|0.0|0.0|0.0|0.0|0||0||0||0||203.130005|5.94140005|9.342|2.584|0.05|88.2160034|4.61759996|21.763|3.37|0.313|61.5330009|53.1769981|1096.971|25.947|4.182|-4.25930023|13.4809999|298.609|9.859|2.118|14.677|0.029|1|0.261|14.515|0.098|1|0.319|12.425|0.392|1|0.825|8.77||32|0.576|15.324|0.03|0|15.337|0.112|0|13.298||32|9.779||32|14.938|0.029|1|14.834|0.098|1|13.25|0.392|1|9.346||32|14.728|0.031|1|14.555|0.098|1|12.612|0.281|1|9.006||32|14.501|0.031|1|14.312|0.097|1|12.182|0.234|1|8.712||32|14.233|0.029|1|14.061|0.092|1|11.908|0.219|1|8.455||32|13.977|0.027|1|13.823|0.087|1|11.751|0.222|1|8.222||32|13.745|0.026|1|13.611|0.084|1|11.656|0.237|1|8.007||32|13.541|0.024|1|13.426|0.081|1|11.59|0.256|1|7.809||32|14.746|0.078|0.017|0.38|20|0|55275.28732341|55277.20605032|55276.15694404|14.644|0.245|0.053|0.940999985|20|0|55275.28732341|55277.20605032|55276.15694404|13.215|3.408|0.762|3.21600008|9|3|55275.28732341|55277.20605032|55276.13426031||||3.74099994|8|0|55275.28732341|55277.20605032|55276.13426031|38|48|-17|1|1|0||||||||||||||||||||||||||970452688|0.284|-88.1|1|15.754|0.077|15.069|0.109|15.036|0.164|2403089401241004125|1|-0.0000110017309363|-0.0016389538955287|-0.999998656853643|121000000|
+J001425.19-895420.9|3.6049949|-89.9058238|1.0386|0.9656|0.2531|302.9489478|-27.2211057|270.2363429|-66.5664526|2032.491|598.103|89401241005491|0000m894_ab41-005491|0000m894_ab41|5491|17.407|0.159|6.8|0.928200006|17.42||-0.3|0.888599992|12.752||1.0|1.02400005|9.579||0.0|1.00600004|0.958000004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|22|0|22|1|21|0|21|22.462|22.397|21.848|22.274|0.0|0.0|0.0|0.0|0||0||0||0||17.2660007|2.53379989|9.323|2.71|0.0|-0.968420029|3.39479995|21.788|3.362|0.013|42.3779984|41.6240005|1098.773|22.984|0.0|-0.563549995|11.677|298.382|9.463|0.567|16.581|0.193|1|0.261|16.233||32|0.319|12.115||32|0.825|8.743||32|0.576|17.396|0.228|1|17.074||32|13.31||32|9.852||32|16.842|0.193|1|16.552||32|12.94||32|9.319||32|16.445|0.173|1|16.661|0.416|1|12.659||32|8.982||32|16.112|0.159|1|16.018|0.286|1|12.318||32|8.74||32|15.771|0.14|1|15.498|0.214|1|12.078||32|8.534||32|15.395|0.117|1|15.049|0.166|1|11.927||32|8.35||32|14.997|0.094|1|14.619|0.13|1|11.809||32|8.113||32|14.567|0.073|1|14.199|0.102|1|12.048||32|7.875||32|17.632|1.043|0.222|4.213|17|2|55275.28745078|55277.33835439|55276.34599308||||2.98900008|8|0|55275.28745078|55277.33835439|55276.34599308|14.392|||2.56200004|9|0|55275.28745078|55277.33835439|55276.33339187||||2.87700009|8|0|55275.28745078|55277.33835439|55276.33339187|32|0|-17|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005491|1|0.0016404315765839|0.0001033507837164|-0.999998649150517|101000000|
+J220124.40-895420.3|330.3516699|-89.9056474|0.5458|0.5191|-0.14|303.0035944|-27.1976935|270.2057577|-66.5138999|2170.196|566.714|89401241005083|0000m894_ab41-005083|0000m894_ab41|5083|16.779|0.094|11.5|0.811999977|16.285|0.176|6.2|0.857500017|13.162||0.2|0.988699973|9.659||-1.5|1.12800002|0.941600025|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|6|25|0|25|1|24|0|24|25.452|26.373|24.904|24.625|0.0|0.0|0.0|0.0|0||0||0||0||30.7910004|2.67289996|9.251|2.812|0.026|19.3169994|3.13170004|21.706|3.236|0.047|7.42700005|39.3619995|1099.149|23.99|2.919|-16.1149998|10.8529997|298.477|9.466|1.022|16.443|0.205|1|0.261|15.653||32|0.319|12.418||32|0.825|9.033||32|0.576|17.13|0.218|1|16.32||32|13.607||32|10.044||32|16.704|0.205|1|15.972||32|13.243||32|9.609||32|16.43|0.207|1|15.805||32|12.96||32|9.27||32|16.184|0.205|1|15.686||32|12.723||32|8.981||32|16.009|0.21|1|15.593||32|12.521||32|8.724||32|15.896|0.223|1|15.582||32|13.088||32|8.492||32|15.757|0.228|1|18.413||32|12.087||32|8.279||32|15.528|0.213|1|15.471||32|11.887||32|8.083||32|16.745|0.374|0.075|1.467|23|0|55275.28745078|55277.33835439|55276.36980225|16.271|0.793|0.159|2.62100005|23|0|55275.28745078|55277.33835439|55276.36980225||||3.64100003|10|0|55275.28745078|55277.33835439|55276.35976824||||3.65499997|9|0|55275.28745078|55277.33835439|55276.35976824|27|-35|-50|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005083|1|0.001431165621165|-0.0008146127953967|-0.99999864408456|131000000|
+J102323.77-895419.9|155.8490417|-89.9055353|0.3083|0.2807|-0.0468|302.8680661|-27.0527094|269.7829682|-66.5992086|2150.279|577.199|1802089401241004280|1802m894_ab41-004280|1802m894_ab41|4280|15.857|0.052|20.7|1.02600002|16.028|0.158|6.9|0.976199985|12.649||0.8|1.11399996|9.455||-0.6|1.08000004|1.04499996|1|0|0.0|0.0|0.0|0.001|0000|0000|0|0nnn|ABUU|3|0000|19|21|2|21|1|20|0|20|21.529|21.641|20.965|20.73|0.0|0.0|0.0|0.0|0||0||0||0||71.9670029|3.47020006|9.345|2.805|0.0|24.4769993|3.5611999|21.754|3.407|0.008|40.5610008|48.7859993|1095.584|25.455|2.281|-7.4138999|13.0869999|297.998|9.974|0.834|15.681|0.057|1|0.261|16.125|0.462|1|0.319|11.682||32|0.825|8.294||32|0.576|16.327|0.059|0|16.726|0.425|0|13.077||32|9.394||32|15.942|0.057|1|16.444|0.462|1|12.507||32|8.87||32|15.737|0.061|1|15.66||32|12.739|0.44|1|8.531||32|15.533|0.063|1|15.627||32|12.374|0.391|1|8.314||32|15.308|0.062|1|15.613||32|12.09|0.362|1|8.093||32|15.088|0.059|1|15.524||32|11.867|0.348|1|7.85||32|14.864|0.056|1|15.281||32|11.681|0.341|1|7.612||32|14.579|0.05|1|14.896||32|11.472|0.324|1|7.378||32|15.846|0.207|0.045|0.869|20|0|55274.89041135|55276.94144233|55275.96793221|16.064|1.044|0.228|2.80100012|15|1|55274.89041135|55276.94144233|55275.96793221|13.031|3.575|0.799|2.59800005|9|0|55274.89041135|55276.94144233|55275.93579789||||2.41799998|7|0|55274.89041135|55276.94144233|55275.93579789|-20|-62|49|0|1|0|||||||||||||||||||||||||||||0|||||||1802089401241004280|1|-0.0015044086086211|0.0006745608663485|-0.999998640860264|111000000|
+J002122.53-895419.3|5.3438791|-89.9053812|1.24|1.1368|0.2333|302.9458333|-27.2219616|270.2369178|-66.5693423|2250.305|495.014|600089401241005234|0600m894_ab41-005234|0600m894_ab41|5234|18.791||-3.5|0.885299981|17.427||-1.9|0.870299995|12.013|0.194|5.6|1.16499996|9.368||0.5|0.947099984|0.962599993|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|22|0|22|1|21|0|21|21.652|21.732|21.165|21.757|0.0|0.0|0.0|0.0|0||0||0||0||-8.38500023|2.41330004|9.33|2.578|0.061|-6.55600023|3.37380004|21.803|3.339|0.038|248.289993|44.3019981|1099.883|23.225|1.048|5.94189978|11.2180004|297.905|9.155|0.393|17.444|0.525|1|0.261|16.445||32|0.319|11.851||32|0.825|8.877||32|0.576|17.732||32|17.121||32|13.084||32|9.885||32|17.705|0.525|1|16.764||32|12.676||32|9.453||32|16.807|0.299|1|16.388||32|12.426||32|9.108||32|16.202|0.212|1|16.022||32|12.252||32|8.814||32|15.735|0.166|1|15.602||32|12.102||32|8.457||32|15.277|0.129|1|15.806|0.516|1|11.925||32|8.135||32|14.728|0.091|1|14.875|0.255|1|11.736||32|7.905||32|13.975|0.052|1|13.917|0.121|1|11.561||32|7.69||32||||1.235|3|0|55275.28745078|55277.33835439|55276.34599308||||1.70899999|5|0|55275.28745078|55277.33835439|55276.34599308|11.971|0.779|0.17|4.98600006|20|0|55275.28745078|55277.33835439|55276.33339187|11.625|||1.68099999|10|0|55275.28745078|55277.33835439|55276.33339187||60|-52||0|1|||||||||||||||||||||||||||||0|||||||600089401241005234|1|0.0016442307165275|0.0001538008065742|-0.999998636424402|101000000|
+J180856.09-895418.8|272.2337496|-89.9052317|0.1489|0.1556|-0.026|303.0365564|-27.110643|270.0092507|-66.4660123|2165.354|570.64|3004089401241004163|3004m894_ab41-004163|3004m894_ab41|4163|14.765|0.032|33.7|0.926699996|14.653|0.057|19.1|0.941500008|12.598||1.0|1.00999999|9.35||0.3|0.867799997|0.934000015|1|0|0.0|0.0|0.0|0.001|0000|dd00|0|00nn|AAUU|3|0000|21|21|18|21|0|20|0|20|21.76|21.644|21.013|20.776|0.0|0.0|0.0|0.0|1|d|1|d|0||0||196.699997|5.83309984|9.355|2.67|0.0|86.8600006|4.55889988|21.791|3.444|0.0|49.019001|47.8989983|1095.692|25.414|4.006|3.29550004|12.7740002|298.892|9.845|1.124|14.628|0.037|1|0.261|14.419|0.079|1|0.319|12.048||32|0.825|8.605||32|0.576|15.308|0.039|1|15.278|0.092|1|13.32||32|9.576||32|14.889|0.037|1|14.738|0.079|1|12.873||32|9.181||32|14.644|0.038|1|14.424|0.076|1|12.517||32|8.965||32|14.389|0.037|1|14.164|0.074|1|12.261||32|8.675||32|14.116|0.035|1|13.925|0.071|1|12.07||32|8.417||32|13.899|0.034|1|13.74|0.071|1|11.905||32|8.184||32|13.75|0.034|1|13.604|0.073|1|11.766||32|7.97||32|13.606|0.034|1|13.46|0.073|1|11.644||32|7.772||32|14.767|0.113|0.025|0.427|20|0|55275.28732341|55277.20605032|55276.15694404|14.714|0.23|0.05|1.13499999|20|0|55275.28732341|55277.20605032|55276.15694404|13.846|4.356|0.974|4.546|9|0|55275.28732341|55277.20605032|55276.13426031|10.555|6.498|1.453|1.79700005|9|0|55275.28732341|55277.20605032|55276.13426031|4|-26|25|0|0|0||||||||||||||||||||||||||970478798|0.235|-72.5|1|16.024|0.087|15.411|0.149|14.974|0.156|3004089401241004163|1|0.0000644677202682|-0.0016527620767015|-0.99999863210978|131000000|
+J035726.93-895417.9|59.3622398|-89.9049835|0.367|0.3914|0.0927|302.8544252|-27.1935368|270.1221314|-66.6424143|2051.173|600.776|600089401241004448|0600m894_ab41-004448|0600m894_ab41|4448|16.42|0.07|15.4|1.07299995|16.381|0.196|5.5|0.914499998|11.831|0.15|7.3|1.13800001|9.17|0.344|3.2|1.13800001|1.06200004|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nn0n|ABBB|15|0000|13|24|2|24|4|23|0|23|23.64|23.723|22.963|22.795|0.0|0.0|0.0|0.0|137|Dh|137|Dh|0||0||42.8590012|2.77489996|9.341|2.754|0.0|17.684|3.19860005|21.766|3.344|0.054|293.619995|40.4640007|1099.236|22.273|2.379|34.0340004|10.7779999|298.321|8.938|0.38|15.345|0.042|1|0.261|15.699|0.282|1|0.319|11.738||32|0.825|8.618||32|0.576|16.326|0.058|1|16.659|0.361|1|13.095||32|9.634||32|15.606|0.042|1|16.018|0.282|1|12.563||32|9.194||32|15.055|0.032|1|15.462|0.219|1|12.204||32|8.851||32|14.546|0.026|1|14.877|0.16|1|11.937||32|8.555||32|14.058|0.02|1|14.321|0.116|1|11.702||32|8.295||32|13.636|0.017|1|13.849|0.089|1|12.192|0.511|1|8.059||32|13.303|0.015|1|13.473|0.074|1|11.933|0.467|1|7.844||32|13.043|0.013|1|13.176|0.065|1|11.676|0.425|1|7.644||32|16.421|0.356|0.073|1.477|23|0|55275.28745078|55277.33835439|55276.29362153|16.525|1.043|0.213|3.56399989|18|0|55275.28745078|55277.33835439|55276.29362153|11.642|0.698|0.145|5.4460001|19|1|55275.28745078|55277.33835439|55276.27983905|8.971|1.793|0.374|3.26699996|17|0|55275.28745078|55277.33835439|55276.27983905|5|26|-8|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004448|1|0.0008451091251338|0.0014268544794478|-0.999998624937485|101000000|
+J084908.40-895417.8|132.2850209|-89.904951|1.1736|1.1224|-0.3248|302.8389345|-27.081429|269.8387736|-66.6309442|1995.84|595.349|1201089401241005410|1201m894_ab41-005410|1201m894_ab41|5410|17.639|0.196|5.5|0.919700027|17.305|0.467|2.3|0.981100023|12.779||0.8|0.927299976|9.533||-0.9|1.12800002|0.984799981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|2|23|1|23|1|22|0|22|22.722|22.526|21.825|21.779|0.0|0.0|0.0|0.0|0||0||0||0||13.9499998|2.51889992|9.397|2.741|0.126|7.55030012|3.24780011|21.824|3.286|0.106|33.7750015|44.4249992|1096.649|24.122|3.491|-10.4049997|12.1780005|297.927|9.674|0.727|17.315|0.465|0|0.261|15.891|0.232|0|0.319|12.701||32|0.825|8.754||32|0.576|17.919|0.457|0|16.979|0.338|0|13.887||32|9.766||32|17.576|0.465|0|16.21|0.232|0|13.526||32|9.33||32|16.722||32|15.672|0.183|0|13.242||32|8.984||32|16.613||32|15.276|0.158|1|13.006||32|8.69||32|16.575||32|14.971|0.143|1|12.808||32|8.429||32|16.631||32|14.728|0.135|1|12.629||32|8.193||32|16.679||32|14.533|0.131|1|12.463||32|7.976||32|16.528||32|14.361|0.129|1|12.312||32|7.777||32|17.573|1.076|0.224|2.774|17|0|55274.89041135|55276.94144233|55275.9260225|17.315|3.605|0.752|3.42600012|13|1|55274.89041135|55276.94144233|55275.9260225|13.932|5.309|1.132|3.73399997|10|0|55274.89041135|55276.94144233|55275.8949045||||3.49900007|8|0|55274.89041135|55276.94144233|55275.8949045|36|60|-94|1|1|0|||||||||||||||||||||||||||||0|||||||1201089401241005410|1|-0.0011161507665097|0.0012272780882944|-0.999998623997034|111000000|
+J122322.75-895417.5|185.8448236|-89.904872|0.7261|0.6557|0.1096|302.9188737|-27.0337398|269.7621881|-66.5508414|2023.833|599.898|1802089401241005789|1802m894_ab41-005789|1802m894_ab41|5789|16.987|0.12|9.0|0.994000018|16.777|0.321|3.4|1.05799997|12.305|0.298|3.6|1.01699996|9.333||0.1|0.914200008|0.992799997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BBBU|7|0000|5|22|0|22|1|22|0|22|23.914|23.235|23.089|23.509|0.0|0.0|0.0|0.0|0||0||0||0||25.4150009|2.81279993|9.394|2.654|0.208|12.2799997|3.63199997|21.857|3.384|0.0|189.720001|52.0299988|1094.787|26.059|2.597|0.741789997|14.2790003|298.316|10.203|1.904|14.481|0.028|1|0.261|14.428|0.083|1|0.319|11.972|0.305|1|0.825|8.298||32|0.576|15.692|0.047|1|15.652|0.138|1|13.385|0.379|1|9.424||32|14.742|0.028|1|14.747|0.083|1|12.797|0.305|1|8.874||32|14.158|0.021|1|14.182|0.064|1|12.523|0.307|1|8.507||32|13.821|0.019|1|13.849|0.058|1|12.385|0.334|1|8.858|0.489|1|13.637|0.019|1|13.659|0.059|1|12.283|0.366|1|8.489|0.438|17|13.53|0.021|1|13.548|0.062|1|12.179|0.394|1|8.249|0.432|17|13.458|0.022|1|13.48|0.068|1|12.118|0.433|1|8.134|0.47|17|13.403|0.024|1|13.435|0.075|1|12.118|0.498|1|8.058|0.522|17|16.965|0.708|0.151|3.643|20|2|55274.89041135|55276.94144233|55275.92797183|16.647|1.484|0.316|3.773|14|0|55274.89041135|55276.94144233|55275.92797183|12.001|0.91|0.194|2.875|16|0|55274.89041135|55276.94144233|55275.92797183|9.821|4.434|0.945|4.43499994|8|0|55274.89041135|55276.94144233|55275.92797183|45|-20|48|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005789|1|-0.0016516651061659|-0.0001690755879958|-0.999998621706961|121000000|
+J145705.93-895417.3|224.2747322|-89.9048288|0.6815|0.7132|0.2153|302.9876143|-27.0469251|269.8291487|-66.4941767|2117.067|591.431|2403089401241005196|2403m894_ab41-005196|2403m894_ab41|5196|17.074|0.12|9.1|0.877200007|16.696|0.272|4.0|0.918299973|12.963||-0.6|0.91079998|9.383||-0.4|0.880599976|0.893700004|1|0|0.0|0.0|0.0|0.002|0000|h000|0|0nnn|BBUU|3|0000|4|23|1|22|1|22|0|22|23.732|22.841|22.983|22.808|0.0|0.0|0.0|0.0|8|h|0||0||0||23.4570007|2.5869|9.697|2.62|0.258|13.2299995|3.30949998|21.777|3.223|0.134|-31.7220001|51.7290001|1097.352|25.93|4.039|-5.86229992|13.9940004|297.975|10.158|1.389|16.39||32|0.261|16.043||32|0.319|12.304||32|0.825|8.853||32|0.576|16.963||32|16.77||32|13.499||32|9.865||32|16.651||32|16.362||32|13.129||32|9.429||32|16.51||32|16.751|0.508|1|12.846||32|9.087||32|16.312||32|16.24|0.394|1|12.61||32|8.791||32|15.92||32|15.68|0.283|1|12.41||32|8.53||32|16.018|0.386|1|15.203|0.215|1|12.232||32|8.294||32|15.512|0.282|1|14.877|0.185|1|12.067||32|8.077||32|15.273|0.26|1|14.677|0.177|1|11.915||32|7.878||32|16.951|0.562|0.117|3.809|20|1|55274.89041135|55276.94144233|55275.97778257|16.703|1.283|0.273|2.7190001|17|0|55274.89041135|55276.94144233|55275.99412384|14.205|9.658|2.059|3.97300005|8|0|55274.89041135|55276.94144233|55275.9490173|10.575|5.814|1.24|2.56200004|11|0|55274.89041135|55276.94144233|55275.9490173|14|16|24|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005196|1|-0.0011893133730292|-0.0011595787757338|-0.99999862045443|121000000|
+J124726.78-895417.0|191.8616212|-89.9047312|1.2107|1.1149|0.3305|302.9300535|-27.032902|269.7657968|-66.5409517|1997.908|596.361|1802089401241005552|1802m894_ab41-005552|1802m894_ab41|5552|17.635|0.187|5.8|0.881399989|17.383||0.2|0.9199|13.062||-0.5|1.06400001|8.88||1.3|1.07700002|0.982599974|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BUUU|1|0000|1|23|0|23|0|23|2|23|24.539|24.574|23.689|23.395|0.0|0.0|0.0|0.0|8|h|0||0||0||13.9969997|2.41560006|9.379|2.571|0.08|0.502409995|3.26270008|21.828|3.244|0.078|-21.3999996|47.2060013|1095.903|25.676|4.053|17.7830009|13.3400002|297.531|9.84|1.019|16.508|0.164|0|0.261|16.176||32|0.319|12.402||32|0.825|8.773||32|0.576|17.424|0.214|0|16.854||32|14.791||32|10.979||32|16.769|0.164|0|16.495||32|13.227||32|9.349||32|16.324|0.143|0|16.207||32|12.939||32|9.006||32|15.958|0.128|1|15.973||32|12.706||32|8.712||32|15.626|0.115|1|15.771||32|12.506||32|8.451||32|15.305|0.103|1|15.59||32|12.326||32|8.216||32|14.987|0.09|1|15.425||32|12.163||32|8.0||32|14.671|0.079|1|15.27||32|12.01||32|7.801||32|17.54|0.798|0.166|1.625|17|0|55274.89041135|55276.94144233|55275.95477317|20.56|||2.9230001|8|0|55274.89041135|55276.94144233|55275.95477317|15.334|||2.33200002|9|0|55274.89041135|55276.94144233|55275.95477317|9.905|5.342|1.114|3.22900009|14|0|55274.89041135|55276.94144233|55275.95477317|47|28|-6|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005552|1|-0.0016272491567851|-0.0003417769460319|-0.999998617623395|121000000|
+J235250.72-895416.1|358.2113394|-89.9044806|0.4806|0.4416|0.0796|302.9590795|-27.2205685|270.2399859|-66.557544|2055.801|601.986|89401241004960|0000m894_ab41-004960|0000m894_ab41|4960|16.559|0.079|13.7|0.853500009|16.725|0.29|3.7|0.901199996|12.421|0.27|4.0|1.03699994|9.498||-0.5|1.28699994|1.01499999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|ABBU|7|0000|12|23|0|23|1|22|0|22|23.715|23.648|22.831|23.093|0.0|0.0|0.0|0.0|0||0||0||0||37.7019997|2.74699998|9.348|2.681|0.051|12.8800001|3.43589997|21.817|3.367|0.082|170.399994|42.368|1099.247|23.182|1.08|-5.73990011|12.5790005|299.275|9.881|0.417|16.146|0.117|1|0.261|16.195|0.272|1|0.319|12.296|0.35|1|0.825|9.001||32|0.576|16.908|0.136|0|17.002|0.313|0|13.201||32|10.007||32|16.407|0.117|1|16.514|0.272|1|13.121|0.35|1|9.577||32|16.055|0.11|1|16.162|0.254|1|12.565|0.272|1|9.239||32|15.681|0.096|1|15.692|0.203|1|12.134|0.226|1|11.345||32|15.23|0.077|1|15.107|0.143|1|11.767|0.195|1|8.612||32|14.722|0.057|1|14.53|0.1|1|11.464|0.174|1|8.289||32|14.205|0.042|1|14.022|0.073|1|11.224|0.162|1|8.019||32|13.736|0.031|1|13.594|0.057|1|11.037|0.157|1|7.792||32|16.538|0.329|0.069|2.918|22|0|55275.28745078|55277.33835439|55276.3344836|16.556|1.081|0.225|2.60800004|17|0|55275.28745078|55277.33835439|55276.3344836|12.387|1.451|0.309|3.671|14|0|55275.28745078|55277.33835439|55276.32193202|11.272|9.447|2.014|5.25099993|8|0|55275.28745078|55277.33835439|55276.32193202|-65|55|81|3|1|1|||||||||||||||||||||||||||||0|||||||89401241004960|1|0.0016663143495305|-0.0000520359334251|-0.99999861034341|131000000|
+J024822.50-895415.5|42.093787|-89.9043093|0.293|0.3019|0.0969|302.8793664|-27.2116492|270.1789716|-66.624753|2125.417|590.303|600089401241004397|0600m894_ab41-004397|0600m894_ab41|4397|16.04|0.055|19.6|0.742500007|15.858|0.128|8.5|0.907100022|11.73|0.137|7.9|0.964999974|9.305||0.8|0.993200004|0.897800028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|22|24|2|24|2|23|0|23|24.761|24.545|23.765|23.815|0.0|0.0|0.0|0.0|0||0||0||0||60.8310013|3.10570002|9.306|2.797|0.08|28.6189995|3.375|21.784|3.337|0.209|321.970001|40.5670013|1097.999|21.721|2.573|8.2670002|10.8990002|298.513|9.081|0.346|15.544|0.058|0|0.261|15.648|0.283|0|0.319|12.398|0.384|0|0.825|8.831||32|0.576|16.339|0.069|0|16.458|0.319|0|13.209||32|10.03||32|15.805|0.058|0|15.967|0.283|0|13.223|0.384|0|9.407||32|15.445|0.054|1|15.645|0.273|1|12.722|0.314|0|8.924||32|15.098|0.048|1|15.294|0.244|1|12.378|0.283|1|8.542||32|14.711|0.041|1|14.849|0.196|1|12.094|0.263|1|8.144||32|14.229|0.031|1|14.289|0.138|1|11.793|0.236|1|7.803||32|13.613|0.021|1|13.64|0.089|1|11.513|0.212|1|8.229|0.495|1|12.941|0.014|1|13.006|0.057|1|11.28|0.197|1|7.935|0.449|1|16.041|0.204|0.042|0.801|23|0|55275.28745078|55277.33835439|55276.29362153|15.864|0.7|0.143|2.08100009|21|0|55275.28745078|55277.33835439|55276.29362153|11.722|0.607|0.127|3.43499994|21|0|55275.28745078|55277.33835439|55276.27983905|10.403|5.336|1.113|3.82800007|11|0|55275.28745078|55277.33835439|55276.27983905|12|3|37|0|0|1||||||||||||||||||||||||||1181077463|0.56|-91.1|1|16.937|0.193|16.164|0.222|15.839|0.267|600089401241004397|1|0.0012393081919957|0.0011195568004465|-0.999998605352915|101000000|
+J035122.76-895414.7|57.8448462|-89.9040862|0.9944|1.0595|0.3198|302.8556846|-27.1959745|270.1287506|-66.6418579|2057.851|602.953|600089401241005882|0600m894_ab41-005882|0600m894_ab41|5882|17.812|0.217|5.0|0.856899977|17.471|0.525|2.1|1.06500006|12.175|0.2|5.4|1.14100003|9.618||0.0|1.08599997|1.03299999|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|BCBU|7|0000|1|24|1|24|1|23|0|23|23.746|23.688|22.942|22.773|0.0|0.0|0.0|0.0|137|Dh|1161|DH|0||0||11.8900003|2.37120008|9.352|2.765|0.127|6.47749996|3.13000011|21.761|3.314|0.125|213.740005|39.3699989|1098.324|21.581|0.0|-0.469170004|11.2679996|298.686|9.19|0.526|15.721|0.059|1|0.261|15.869|0.241|1|0.319|12.013||32|0.825|8.593||32|0.576|16.869|0.094|1|16.981|0.357|1|13.279||32|9.605||32|15.982|0.059|1|16.188|0.241|1|12.838||32|9.169||32|15.271|0.04|1|15.489|0.164|1|12.533||32|8.824||32|14.647|0.029|1|14.839|0.113|1|12.322||32|8.532||32|14.118|0.022|1|14.298|0.084|1|12.122||32|8.271||32|13.73|0.019|1|13.899|0.069|1|11.916||32|8.037||32|13.465|0.018|1|13.606|0.062|1|11.708||32|7.821||32|13.246|0.017|1|13.364|0.057|1|11.506||32|7.622||32|17.89|1.442|0.294|2.28|15|0|55275.28745078|55277.33835439|55276.29362153|18.113|5.539|1.131|4.31500006|12|0|55275.28745078|55277.33835439|55276.29362153|12.315|0.803|0.167|3.2809999|20|0|55275.28745078|55277.33835439|55276.27983905|10.374|4.481|0.934|2.38000011|13|0|55275.28745078|55277.33835439|55276.27983905|14|-45|33|0|1|1|||||||||||||||||||||||||||||0|||||||600089401241005882|1|0.0008909320496964|0.0014172349504605|-0.999998598841607|101000000|
+J113526.88-895413.5|173.8620143|-89.9037567|0.1636|0.1532|0.0312|302.8967423|-27.0371508|269.7593356|-66.5708152|2076.152|602.416|1802089401241003961|1802m894_ab41-003961|1802m894_ab41|3961|14.621|0.033|33.1|0.932399988|14.603|0.059|18.3|0.861400008|12.902||-0.7|1.06599998|9.424||-2.3|0.973800004|0.955200016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|20|20|16|20|0|20|0|20|21.806|21.491|20.796|21.294|0.0|0.0|0.0|0.0|0||0||0||0||224.630005|6.78599977|9.445|2.8|0.041|90.9250031|4.95720005|21.84|3.486|0.121|-39.118|54.7459984|1096.132|26.339|4.268|-31.0009995|13.467|298.054|10.09|0.284|14.446|0.04|1|0.261|14.412|0.103|1|0.319|12.487||32|0.825|8.864||32|0.576|15.165|0.045|0|15.257|0.12|0|13.623||32|9.872||32|14.707|0.04|1|14.731|0.103|1|13.312||32|9.44||32|14.375|0.038|1|14.393|0.098|1|13.1||32|9.097||32|13.965|0.033|1|14.04|0.088|1|12.868||32|9.492||32|13.545|0.027|1|13.684|0.076|1|12.667||32|8.397||32|13.253|0.024|1|13.425|0.071|1|12.49||32|8.053||32|13.115|0.025|1|13.296|0.073|1|12.324||32|7.732||32|13.06|0.027|1|13.255|0.081|1|12.174||32|7.488||32|14.62|0.088|0.02|0.322|19|0|55274.89041135|55276.94144233|55275.93579789|14.571|0.245|0.055|1.18799996|19|0|55274.89041135|55276.94144233|55275.93579789|15.083|||2.4690001|8|0|55274.89041135|55276.94144233|55275.93579789||||2.0999999|5|0|55274.89041135|55276.94144233|55275.93579789|-20|-41|48|0|1|0|0.57|9.78|0.72|5.0|14.671|0.038|1|9.78|0.72|5.0|14.687|0.097|1|9.78|0.72|5.0|16.621|9.999|1|16.84|0.88|5.0||||853287708|0.201|12.2|1|15.227|0.061|14.85|0.084|14.68|0.125|1802089401241003961|1|-0.0016701328840582|0.0001796056973609|-0.999998589197976|111000000|
+J213058.32-895413.2|322.7430406|-89.9036913|0.6201|0.5833|-0.2079|303.0149994|-27.1898879|270.1922562|-66.5022865|1952.392|585.349|3004089401241005077|3004m894_ab41-005077|3004m894_ab41|5077|17.019|0.117|9.3|0.774900019|16.294|0.202|5.4|0.841499984|12.065|0.196|5.5|1.06599998|8.901||1.3|1.00199997|0.915300012|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|2|23|2|23|2|22|0|22|26.661|26.631|25.834|25.426|0.0|0.0|0.0|0.0|0||0||0||0||24.6879997|2.66860008|9.234|2.868|0.032|19.1539993|3.56590009|21.817|3.413|0.136|236.559998|42.6419983|1098.924|24.132|1.647|17.5289993|13.0380001|298.626|9.989|1.305|16.507|0.25|1|0.261|16.149|0.453|1|0.319|11.426||32|0.825|8.363||32|0.576|17.304|0.292|1|16.964|0.512|1|12.676||32|9.512||32|16.768|0.25|1|16.468|0.453|1|12.251||32|8.939||32|16.205|0.192|1|16.039|0.394|1|11.988||32|9.204|0.482|17|15.627|0.14|1|15.581|0.321|1|11.808||32|8.719|0.394|17|15.185|0.113|1|15.215|0.277|1|11.687||32|8.342|0.345|17|14.861|0.099|1|14.96|0.259|1|11.596||32|8.054|0.321|17|14.573|0.088|1|14.774|0.253|1|11.525||32|7.776|0.296|17|14.311|0.08|1|14.617|0.253|1|11.711||32|7.531|0.279|17|17.09|0.372|0.078|2.077|22|0|55275.28745078|55277.33835439|55276.31434208|16.318|1.253|0.261|4.15399981|17|0|55275.28745078|55277.33835439|55276.31434208|11.935|1.172|0.25|3.08599997|16|1|55275.28745078|55277.33835439|55276.30087496|9.598|2.185|0.466|2.88000011|13|0|55275.28745078|55277.33835439|55276.30087496|18|30|-31|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241005077|1|0.0013378789186698|-0.0010176032657431|-0.999998587280798|131000000|
+J030544.42-895413.0|46.4351166|-89.9036337|1.1216|1.1356|0.3924|302.8719912|-27.2084318|270.1674313|-66.6304463|2107.575|597.197|600089401241005563|0600m894_ab41-005563|0600m894_ab41|5563|18.47|0.38|2.9|0.85589999|17.492||-0.7|0.917599976|12.0|0.173|6.3|1.13100004|9.353|0.408|2.7|1.01999998|0.976800025|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|CUBC|13|0000|1|24|0|24|3|23|0|23|24.055|24.368|23.016|23.386|0.0|0.0|0.0|0.0|0||0||0||0||6.48360014|2.27069998|9.342|2.723|0.0|-2.18969989|3.17919993|21.793|3.268|0.123|251.169998|40.0489998|1099.162|21.992|1.19|28.7730007|10.8190002|298.504|9.184|0.336|16.928|0.217|1|0.261|16.112||32|0.319|11.898||32|0.825|8.552||32|0.576|17.801|0.269|1|17.019||32|13.093||32|9.613||32|17.189|0.217|1|16.431||32|12.723||32|9.128||32|16.807|0.2|1|16.628|0.441|1|12.436||32|8.714||32|16.529|0.192|1|16.263|0.39|1|12.204||32|8.32||32|16.285|0.185|1|16.013|0.373|1|12.003||32|8.008||32|16.017|0.17|1|15.732|0.34|1|11.823||32|7.789||32|15.715|0.15|1|15.4|0.292|1|11.658||32|7.653||32|15.373|0.126|1|15.084|0.251|1|11.507||32|7.585||32|18.654|3.352|0.684|2.303|12|0|55275.28745078|55277.33835439|55276.29362153||||1.66700006|8|0|55275.28745078|55277.33835439|55276.29362153|11.865|0.96|0.2|3.95600009|18|1|55275.28745078|55277.33835439|55276.27983905|9.156|1.285|0.268|4.71700001|18|0|55275.28745078|55277.33835439|55276.27983905|43|25|52|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241005563|1|0.0011591298558276|0.0012187010568055|-0.999998585591856|101000000|
+J222740.21-895413.0|336.9175555|-89.9036187|0.6309|0.6127|-0.19|302.9955258|-27.2061735|270.2225621|-66.5227641|2146.927|584.164|89401241005066|0000m894_ab41-005066|0000m894_ab41|5066|17.732|0.208|5.2|0.950600028|15.902|0.132|8.2|0.906300008|11.773|0.143|7.6|1.15799999|9.177||0.7|0.977400005|0.995299995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|1|25|3|25|1|24|0|24|24.743|24.524|23.822|24.002|0.0|0.0|0.0|0.0|0||0||0||0||12.7939997|2.45280004|9.263|2.787|0.008|27.4969997|3.3520999|21.79|3.309|0.044|309.700012|40.8079987|1099.069|23.996|2.353|9.12899971|12.3540001|298.675|9.765|1.244|17.123|0.307|1|0.261|15.554|0.173|1|0.319|11.999|0.332|1|0.825|8.599||32|0.576|17.75|0.307|1|16.411|0.204|1|13.438|0.419|0|9.609||32|17.384|0.307|1|15.873|0.173|1|12.824|0.332|1|9.175||32|17.216|0.338|1|15.552|0.166|1|12.473|0.31|1|8.831||32|16.99|0.34|1|15.281|0.159|1|12.249|0.311|1|8.539||32|16.456|0.251|1|14.986|0.146|1|12.134|0.338|1|8.279||32|15.741|0.154|1|14.673|0.129|1|12.094|0.385|1|8.044||32|15.145|0.103|1|14.397|0.117|1|12.034|0.423|1|7.829||32|14.755|0.083|1|14.175|0.109|1|11.918|0.437|1|7.63||32|17.66|0.933|0.187|3.297|19|0|55275.28745078|55277.33835439|55276.36980225|16.06|0.682|0.136|3.27600002|22|2|55275.28745078|55277.33835439|55276.36980225|11.726|0.689|0.141|5.69000006|22|0|55275.28745078|55277.33835439|55276.35976824|11.049|6.055|1.236|2.95300007|11|0|55275.28745078|55277.33835439|55276.35976824|-57|1|2|2|0|0|||||||||||||||||||||||||||||0|||||||89401241005066|1|0.0015474979209005|-0.0006595034519063|-0.99999858515169|131000000|
+J162759.52-895412.8|246.9980297|-89.9035584|0.4008|0.4344|0.0533|303.0196928|-27.071631|269.9055964|-66.4719067|2018.842|602.834|2403089401241004695|2403m894_ab41-004695|2403m894_ab41|4695|16.36|0.074|14.7|0.851100028|16.049|0.171|6.4|0.86619997|12.228||2.0|0.87470001|9.409||-0.9|0.960699975|0.88410002|1|0|0.0|0.0|0.0|0.001|0000|h000|0|1nnn|ABUU|3|0000|13|19|2|19|1|18|0|18|22.289|22.469|22.609|22.184|0.0|0.0|0.0|0.0|8|h|0||0||0||45.2809982|3.06990004|9.376|2.6|0.111|24.0|3.77460003|21.818|3.383|0.183|101.540001|51.0499992|1095.876|24.98|2.05|-12.3710003|13.6619997|298.337|9.842|1.299|16.63|0.443|0|0.261|15.431||32|0.319|12.335||32|0.825|8.762||32|0.576|17.126|0.393|0|16.115||32|13.479||32|9.831||32|16.891|0.443|0|15.75||32|13.16||32|9.338||32|16.2||32|15.593||32|12.963||32|8.973||32|16.305||32|15.501||32|12.726||32|8.679||32|16.401||32|15.366||32|12.523||32|8.408||32|16.219||32|15.144||32|12.339||32|8.135||32|16.055||32|14.901||32|12.095||32|7.912||32|15.902||32|14.697||32|11.756||32|7.726||32|16.353|0.264|0.061|1.056|18|0|55275.02271543|55276.94144233|55276.05696021|16.054|0.863|0.198|3.18600011|16|0|55275.02271543|55276.94144233|55276.05696021|12.582|1.79|0.422|4.98600006|11|0|55275.02271543|55276.94144233|55276.02620141||||1.87|8|0|55275.02271543|55276.94144233|55276.02620141|-57|6|80|2|0|1|||||||||||||||||||||||||||||0|||||||2403089401241004695|1|-0.0006577409892419|-0.001549392528549|-0.999998583378788|121000000|
+J230835.15-895412.7|347.1464636|-89.9035523|0.4768|0.429|-0.092|302.9789703|-27.2150458|270.2361858|-66.5390754|2104.17|598.211|89401241004954|0000m894_ab41-004954|0000m894_ab41|4954|16.859|0.099|11.0|0.746699989|15.802|0.119|9.1|0.977699995|11.814|0.142|7.6|1.09000003|9.334|0.404|2.7|1.16400003|0.990100026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBC|15|0000|5|25|2|25|3|24|1|24|24.673|24.411|23.871|23.822|0.0|0.0|0.0|0.0|0||0||0||0||28.5970001|2.60969996|9.284|2.792|0.0|30.1490002|3.31539989|21.776|3.373|0.202|298.100006|39.1189995|1098.545|23.264|2.966|29.2719994|10.8859997|298.635|9.66|0.858|16.573|0.285|1|0.261|15.382|0.154|1|0.319|11.794||32|0.825|8.344||32|0.576|17.244|0.297|1|16.274|0.185|1|13.055||32|9.396||32|16.834|0.285|1|15.701|0.154|1|12.619||32|8.92||32|16.643|0.309|1|15.365|0.145|1|12.355||32|8.599||32|16.514|0.341|1|15.121|0.144|1|12.157||32|8.33||32|16.352|0.355|1|14.903|0.142|1|11.978||32|8.077||32|16.033|0.312|1|14.678|0.136|1|11.813||32|7.858||32|15.584|0.24|1|14.446|0.127|1|11.669||32|7.706||32|15.177|0.19|1|14.228|0.12|1|11.547||32|7.568||32|16.891|0.491|0.098|2.343|24|1|55275.28745078|55277.33835439|55276.36980225|15.789|0.611|0.122|2.77399993|22|0|55275.28745078|55277.33835439|55276.36980225|11.746|0.8|0.163|2.75399995|19|0|55275.28745078|55277.33835439|55276.35976824|9.288|2.087|0.426|4.74100018|13|0|55275.28745078|55277.33835439|55276.35976824|39|11|32|1|0|0|||||||||||||||||||||||||||||0|||||||89401241004954|1|0.0016411479565004|-0.0003744726306332|-0.999998583200813|131000000|
+J051409.16-895412.4|78.5381786|-89.9034612|0.9531|1.0708|0.1347|302.8330359|-27.1678816|270.0484117|-66.655315|1968.029|591.797|600089401241004961|0600m894_ab41-004961|0600m894_ab41|4961|18.261||1.0|0.870999992|17.269||-2.2|0.890699983|12.203|0.219|4.9|0.996100008|8.462|0.207|5.2|1.04999995|0.942200005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBB|12|0000|1|21|0|21|0|20|1|20|22.573|22.783|21.929|21.594|0.0|0.0|0.0|0.0|0||0||0||0||2.66930008|2.59699988|9.399|2.807|0.0|-8.62030029|3.90269995|21.805|3.439|0.0|208.330002|42.0970001|1099.488|23.254|1.79|65.3270035|12.4510002|298.651|9.345|1.535|17.436|0.363|1|0.261|18.052||32|0.319|12.229||32|0.825|8.523|0.353|1|0.576|18.438|0.52|0|17.429||32|13.409||32|9.673|0.408|1|17.697|0.363|1|18.371||32|13.054||32|9.099|0.353|1|16.954|0.236|1|16.472||32|12.692||32|8.788|0.355|1|16.274|0.157|1|15.863||32|12.192||32|8.595|0.379|1|15.77|0.12|1|15.843|0.334|1|11.77||32|8.272|0.348|1|15.399|0.101|1|15.234|0.226|1|11.471||32|7.921|0.305|1|14.995|0.081|1|14.764|0.17|1|11.272||32|7.618|0.275|1|14.554|0.062|1|14.395|0.139|1|11.12||32|7.359|0.254|1|20.608|||3.37|13|0|55275.28745078|55277.20605032|55276.18847532||||3.2809999|6|0|55275.28745078|55277.20605032|55276.18847532|12.237|1.256|0.281|1.64199996|15|0|55275.28745078|55277.20605032|55276.16736816|8.304|0.904|0.202|3.17000008|16|0|55275.28745078|55277.20605032|55276.16736816|35|43|-20|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004961|1|0.0003348186386033|0.001651317644111|-0.999998580522251|101000000|
+J064132.32-895412.4|100.3846995|-89.9034589|0.1758|0.1832|-0.0364|302.8235387|-27.1322834|269.9560836|-66.6556625|2133.626|589.842|1201089401241004312|1201m894_ab41-004312|1201m894_ab41|4312|15.122|0.036|29.9|0.880999982|14.992|0.07|15.5|0.904200017|12.212|0.229|4.7|1.20500004|9.473||0.3|1.02499998|1.0|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|22|22|15|22|3|21|0|21|22.655|22.696|21.855|21.804|0.0|0.0|0.0|0.0|0||0||0||0||141.589996|4.7329998|9.403|2.847|0.136|63.5859985|4.09740019|21.827|3.497|0.381|206.559998|43.6419983|1097.486|23.105|2.193|3.56559992|11.0939999|298.173|9.244|1.3|15.025|0.064|0|0.261|14.772|0.093|0|0.319|12.032||32|0.825|8.778||32|0.576|15.675|0.066|0|15.569|0.104|0|13.284||32|9.789||32|15.286|0.064|0|15.091|0.093|0|12.857||32|9.354||32|15.152|0.073|0|14.874|0.098|0|12.515||32|9.009||32|15.12|0.088|1|14.759|0.11|1|12.231||32|8.715||32|15.104|0.104|1|14.671|0.122|1|11.973||32|8.455||32|15.044|0.115|1|14.565|0.13|1|11.717||32|8.219||32|14.934|0.122|1|14.427|0.133|1|11.496||32|8.004||32|14.845|0.129|1|14.285|0.134|1|11.323||32|7.805||32|15.124|0.097|0.021|0.386|21|0|55275.02271543|55276.94144233|55276.03624953|14.969|0.268|0.057|1.06099999|21|0|55275.02271543|55276.94144233|55276.03624953|12.044|1.335|0.291|3.69799995|15|1|55275.02271543|55276.94144233|55276.00889862|11.46|||2.18799996|11|0|55275.02271543|55276.94144233|55276.00889862|-15|9|1|0|0|0||||||||||||||||||||||||||843653669|0.529|-7.2|1|16.862|0.237|15.942|0.21|15.221|0.234|1201089401241004312|1|-0.0003037249206148|0.0016573595315883|-0.99999858045427|111000000|
+J104315.64-895412.1|160.8151669|-89.9033712|0.2881|0.262|-0.0195|302.8743521|-27.0462385|269.7702766|-66.5922948|2132.289|590.549|1802089401241004216|1802m894_ab41-004216|1802m894_ab41|4216|15.743|0.052|21.1|1.09000003|15.54|0.108|10.1|0.863099992|13.017||-0.9|0.975799978|9.413||-1.3|1.02600002|0.984700024|2|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|17|21|4|21|0|20|0|20|21.293|21.691|20.36|20.589|0.0|0.0|0.0|0.0|0||0||0||0||79.9759979|3.7974999|9.405|2.793|0.151|38.3769989|3.80250001|21.777|3.443|0.0|-46.0200005|49.2350006|1096.048|25.514|3.967|-17.8780003|13.6099997|298.185|10.009|1.889|15.229|0.066|1|0.261|15.019|0.134|1|0.319|11.923||32|0.825|8.506||32|0.576|16.071|0.08|0|15.989|0.175|0|13.112||32|9.707||32|15.49|0.066|1|15.338|0.134|1|12.748||32|9.082||32|14.955|0.052|1|14.789|0.105|1|12.463||32|8.68||32|14.356|0.037|1|14.228|0.078|1|12.231||32|8.447||32|13.803|0.027|1|13.727|0.059|1|12.027||32|8.306||32|13.424|0.023|1|13.375|0.051|1|11.847||32|8.088||32|13.211|0.022|1|13.155|0.048|1|11.683||32|7.825||32|13.086|0.022|1|13.012|0.049|1|11.532||32|7.607||32|15.734|0.264|0.058|1.086|20|1|55274.89041135|55276.94144233|55275.96793221|15.517|0.457|0.1|2.45799994|20|0|55274.89041135|55276.94144233|55275.96793221||||3.54399991|5|0|55274.89041135|55276.94144233|55275.93579789||||4.06500006|6|0|55274.89041135|55276.94144233|55275.93579789|34|15|15|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004216|1|-0.0015928274130166|0.0005542084610943|-0.999998577875896|111000000|
+J032516.28-895411.8|51.3178663|-89.9032941|0.9169|0.9248|0.2892|302.8642898|-27.2038667|270.1524102|-66.6361262|2086.626|602.257|600089401241005381|0600m894_ab41-005381|0600m894_ab41|5381|17.514|0.168|6.5|0.860300004|16.908||1.4|0.934499979|12.269|0.225|4.8|0.999000013|9.11||1.1|0.83859998|0.91140002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|2|24|2|24|0|23|0|23|23.675|23.662|22.916|22.8|0.0|0.0|0.0|0.0|0||0||0||0||15.6479998|2.41470003|9.316|2.684|0.282|4.51060009|3.18889999|21.753|3.244|0.168|196.089996|40.6699982|1098.861|21.816|2.936|12.9200001|11.5229998|298.795|9.147|0.547|16.697|0.138|1|0.261|16.522||32|0.319|11.955||32|0.825|8.803||32|0.576|17.391|0.148|0|16.994||32|13.146||32|9.97||32|16.958|0.138|1|16.841||32|12.78||32|9.379||32|16.722|0.143|1|16.655||32|12.498||32|8.899||32|16.484|0.142|1|16.424||32|12.268||32|8.507||32|16.194|0.13|1|16.218||32|12.062||32|8.265||32|15.877|0.114|1|16.037||32|11.882||32|8.105||32|15.574|0.1|1|15.872||32|11.718||32|7.934||32|15.269|0.086|1|15.719||32|11.566||32|7.738||32|17.642|0.752|0.154|3.885|22|0|55275.28745078|55277.33835439|55276.29362153|20.798|||2.74600005|9|1|55275.28745078|55277.33835439|55276.29362153|12.252|1.153|0.24|3.36999989|17|0|55275.28745078|55277.33835439|55276.27983905|10.259|4.758|0.992|4.43400002|13|0|55275.28745078|55277.33835439|55276.27983905|6|-36|-24|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005381|1|0.0010548963906479|0.0013175677019885|-0.999998575603463|101000000|
+J080743.29-895411.4|121.9303994|-89.9031756|1.3944|1.5017|-0.501|302.8291235|-27.0964828|269.8708341|-66.6428299|2040.283|605.408|1201089401241005829|1201m894_ab41-005829|1201m894_ab41|5829|18.088||1.5|1.00699997|17.371||-2.5|0.942099988|12.142|0.21|5.2|0.978299975|9.291||0.4|0.90170002|0.95539999|1|0|0.0|0.0|0.0|0.004|0000|0000|0|nnnn|UUBU|4|0000|1|22|0|21|1|21|0|21|21.487|21.003|20.97|20.917|0.0|0.0|0.0|0.0|0||0||0||0||3.98589993|2.6177001|9.417|2.817|0.045|-8.92109966|3.55349994|21.864|3.377|0.061|220.449997|42.6870003|1094.604|22.841|1.465|5.45739985|12.5|297.933|9.5|0.733|16.874|0.244|0|0.261|16.299||32|0.319|12.299||32|0.825|8.955||32|0.576|17.848|0.343|0|17.086||32|13.484||32|9.957||32|17.135|0.244|0|16.618||32|13.124||32|9.531||32|16.541|0.182|0|16.192||32|12.84||32|9.197||32|15.927|0.128|0|15.776||32|12.612||32|8.911||32|15.251|0.083|1|15.857|0.47|1|12.408||32|8.659||32|14.458|0.047|1|14.712|0.194|1|12.229||32|8.431||32|13.618|0.026|1|13.735|0.092|1|12.066||32|8.222||32|12.907|0.016|1|12.99|0.053|1|11.915||32|7.797||32|19.864|8.761|1.868|3.483|8|1|55275.02271543|55276.94144233|55275.97309574||||2.07399988|5|0|55275.02271543|55276.94144233|55276.01834588|12.031|1.15|0.251|2.50300002|13|0|55275.02271543|55276.94144233|55275.94273751||||2.64899993|7|0|55275.02271543|55276.94144233|55275.94273751|-68|-31|-27|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005829|1|-0.0008937709048316|0.0014342062875315|-0.999998572111928|111000000|
+J071141.09-895410.9|107.9212363|-89.9030536|0.2388|0.2447|-0.0601|302.8234194|-27.1195612|269.9247255|-66.6529335|2101.92|600.054|1201089401241004448|1201m894_ab41-004448|1201m894_ab41|4448|15.631|0.044|24.5|1.03799999|15.811|0.133|8.2|0.942200005|13.078|0.504|2.2|1.074|9.483||-0.1|1.11399996|1.03699994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABCU|7|0000|22|22|4|22|0|21|0|21|22.443|22.633|21.177|21.479|0.0|0.0|0.0|0.0|0||0||0||0||88.637001|3.61789989|9.36|2.768|0.054|29.9020004|3.6645|21.818|3.408|0.06|93.0419998|43.2200012|1097.651|23.201|0.0|-1.03260005|12.7580004|298.382|9.789|0.429|15.199|0.064|1|0.261|15.142|0.116|1|0.319|12.305||32|0.825|8.877||32|0.576|15.992|0.076|0|16.102|0.153|0|13.475||32|10.028||32|15.46|0.064|1|15.461|0.116|1|13.13||32|9.453||32|15.105|0.059|1|15.001|0.099|1|12.853||32|9.072||32|14.75|0.053|1|14.564|0.082|1|13.303||32|8.78||32|14.364|0.045|1|14.125|0.066|1|12.186||32|8.496||32|13.925|0.035|1|13.685|0.052|1|11.834||32|8.223||32|13.459|0.027|1|13.276|0.042|1|11.545||32|7.964||32|13.083|0.022|1|12.959|0.036|1|11.317||32|7.698||32|15.635|0.173|0.037|0.758|21|0|55275.02271543|55276.94144233|55276.03624953|15.812|0.82|0.175|1.98800004|20|1|55275.02271543|55276.94144233|55276.03624953|12.879|2.393|0.522|4.1789999|12|0|55275.02271543|55276.94144233|55276.00889862|11.639|||2.96799994|12|0|55275.02271543|55276.94144233|55276.00889862|7|8|-79|0|0|2||||||||||||||||||||||||||843640537|1.649|2.2|1|16.422|0.18|15.628|0.189|16.28||1201089401241004448|1|-0.0005206540748288|0.0016099356088483|-0.99999856851231|111000000|
+J010949.92-895410.4|17.458003|-89.9029105|0.596|0.5605|0.1741|302.9231623|-27.224933|270.2331093|-66.5896635|1971.734|594.51|89401241005061|0000m894_ab41-005061|0000m894_ab41|5061|16.836|0.101|10.7|0.904600024|16.53|0.248|4.4|0.837499976|12.537|0.308|3.5|1.051|9.444||0.2|1.02499998|0.950399995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|5|22|2|21|0|21|0|21|21.628|20.835|21.538|21.273|0.0|0.0|0.0|0.0|0||0||0||0||29.2180004|2.73149991|9.328|2.666|0.132|15.415|3.51460004|21.768|3.281|0.189|153.240005|43.4749985|1100.042|23.572|0.809|2.85430002|11.8000002|298.64|9.552|0.851|16.452|0.175|1|0.261|15.661|0.178|1|0.319|12.406||32|0.825|8.952||32|0.576|17.149|0.187|1|16.594|0.224|1|13.6||32|9.958||32|16.713|0.175|1|15.98|0.178|1|13.231||32|9.528||32|16.45|0.178|1|15.608|0.164|1|13.602||32|9.184||32|16.212|0.178|1|15.333|0.157|1|12.84||32|8.894||32|16.0|0.176|1|15.074|0.148|1|12.64||32|8.637||32|15.776|0.17|1|14.81|0.137|1|12.459||32|8.404||32|15.536|0.159|1|14.56|0.126|1|12.294||32|8.191||32|15.311|0.148|1|14.349|0.119|1|12.145||32|9.774||32|16.835|0.486|0.104|1.938|21|0|55275.28745078|55277.33835439|55276.34599308|16.527|1.432|0.312|2.64499998|13|0|55275.28745078|55277.33835439|55276.37749928|12.322|1.484|0.324|2.8499999|16|0|55275.28745078|55277.33835439|55276.33339187|10.779|7.621|1.663|2.59899998|10|0|55275.28745078|55277.33835439|55276.33339187|23|-50|27|0|1|0|||||||||||||||||||||||||||||0|||||||89401241005061|1|0.0016164750761435|0.000508370292303|-0.999998564282956|101000000|
+J160251.18-895409.4|240.7132853|-89.9026211|0.7167|0.7775|0.1477|303.0129935|-27.0627895|269.8806531|-66.4757312|2046.459|606.971|2403089401241005193|2403m894_ab41-005193|2403m894_ab41|5193|17.081|0.126|8.6|0.916599989|17.374||-0.3|1.08899999|12.502||1.0|0.997799993|8.903|0.342|3.2|0.911800027|0.975700021|1|0|0.0|0.0|0.0|0.0|0000|h000|0|1nnn|BUUB|9|0000|4|20|0|20|1|19|1|19|21.393|21.724|21.204|21.512|0.0|0.0|0.0|0.0|8|h|0||0||0||23.3129997|2.70799994|9.371|2.601|0.165|-0.916779995|3.54220009|21.754|3.337|0.12|54.1800003|52.0289993|1095.847|25.384|2.569|43.5410004|13.7060003|298.23|9.917|0.542|16.439||32|0.261|15.802||32|0.319|11.867||32|0.825|8.651||32|0.576|16.963||32|16.504||32|13.159||32|9.504||32|16.7||32|16.121||32|12.692||32|9.227||32|16.597||32|15.841||32|12.394||32|8.965||32|16.488||32|15.612||32|12.177||32|8.8||32|16.314||32|15.41||32|11.934||32|8.549||32|16.026||32|15.233||32|11.648||32|8.315||32|15.668||32|15.07||32|11.391||32|8.1||32|15.358||32|14.915||32|11.182||32|7.902||32|17.17|0.586|0.131|3.943|19|1|55275.02271543|55276.94144233|55276.02178915||||2.29699993|7|0|55275.02271543|55276.94144233|55276.02178915|13.181|3.569|0.819|2.81299996|10|0|55275.02271543|55276.94144233|55275.99079813|8.752|1.481|0.34|3.48300004|13|0|55275.02271543|55276.94144233|55275.99079813|44|-17|-35|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005193|1|-0.0008314015228043|-0.0014823453630889|-0.999998555710823|121000000|
+J100020.16-895409.3|150.0840389|-89.902607|0.08|0.0784|0.0144|302.8576455|-27.0566483|269.7873652|-66.6091379|1920.898|573.077|1201089401241004056|1201m894_ab41-004056|1201m894_ab41|4056|11.925|0.024|45.9|0.885900021|11.941|0.022|50.1|0.94690001|11.69|0.152|7.1|1.05900002|9.422||0.0|0.880299985|0.939499974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABU|7|0000|22|22|22|22|2|21|0|21|21.718|21.743|20.97|21.021|0.0|0.0|0.0|0.0|0||0||0||0||2690.80005|58.6850014|9.366|2.918|0.424|1055.59998|21.0890007|21.761|3.37|0.196|334.329987|46.8460007|1095.379|24.929|3.209|0.609860003|13.1929998|298.381|10.107|1.734|11.928|0.006|0|0.261|11.952|0.012|0|0.319|11.326||32|0.825|8.643||32|0.576|12.559|0.006|0|12.7|0.013|0|12.544||32|9.65||32|12.189|0.006|0|12.271|0.012|0|12.151||32|9.219||32|12.058|0.006|1|12.116|0.013|1|11.946||32|8.875||32|12.005|0.006|1|12.06|0.015|1|11.836||32|8.585||32|11.975|0.006|1|12.035|0.017|1|11.767||32|8.325||32|11.95|0.007|1|12.016|0.019|1|11.753||32|8.09||32|11.925|0.007|1|11.995|0.022|1|11.747||32|7.875||32|11.896|0.007|1|11.974|0.024|1|11.597||32|7.676||32|11.925|0.028|0.006|0.096|21|0|55274.89041135|55276.94144233|55275.96707613|11.941|0.03|0.006|0.0960000008|21|0|55274.89041135|55276.94144233|55275.96707613|11.589|0.635|0.139|4.64900017|20|0|55274.89041135|55276.94144233|55275.93643125|11.131|7.226|1.577|3.9519999|10|0|55274.89041135|55276.94144233|55275.93643125|-5|34|24|0|1|0||||||||||||||||||||||||||806950262|0.504|137.4|1|12.569|0.028|12.169|0.029|12.059|0.03|1201089401241004056|1|-0.0014733393655169|0.0008477539421596|-0.99999855529114|111000000|
+J171011.34-895408.7|257.547291|-89.9024338|0.0992|0.1657|-0.0681|303.0309804|-27.0864072|269.9473117|-66.4654291|1972.546|596.071|2403089401241003981|2403m894_ab41-003981|2403m894_ab41|3981|12.619|0.04|27.0|0.92869997|12.625|0.04|27.3|0.994799972|12.664|0.518|2.1|1.05799997|8.756||-1.2|0.958800018|0.98360002|2|1|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|AACU|7|0000|21|21|21|21|0|20|0|20|22.347|22.735|21.351|21.688|0.0|0.0|0.0|0.0|0||0||0||0||1419.90002|52.625|9.388|2.603|0.06|562.530029|20.6019993|21.778|3.341|0.05|136.270004|65.0410004|1095.663|25.34|1.778|-30.2980003|24.9279995|299.415|10.22|1.549|12.387|0.01|1|0.261|12.422|0.013|1|0.319|12.093|0.294|1|0.825|8.743||32|0.576|13.035|0.01|1|13.196|0.014|1|13.588|0.388|1|9.755||32|12.648|0.01|1|12.741|0.013|1|12.918|0.294|1|9.319||32|12.511|0.011|1|12.564|0.014|1|12.571|0.277|1|8.793||32|12.467|0.012|1|12.497|0.016|1|12.352|0.281|1|8.305||32|12.457|0.014|1|12.47|0.018|1|12.188|0.291|1|7.999||32|12.457|0.016|1|12.456|0.021|1|12.024|0.294|1|7.804||32|12.46|0.019|1|12.444|0.023|1|11.802|0.278|1|7.625||32|12.457|0.021|1|12.424|0.026|1|11.497|0.241|1|7.463||32|12.611|0.035|0.008|0.188|20|0|55275.02271543|55276.94144233|55276.05297571|12.627|0.039|0.009|0.319999993|20|0|55275.02271543|55276.94144233|55276.05297571|12.72|1.827|0.409|3.4460001|12|0|55275.02271543|55276.94144233|55276.02509357||||1.57000005|5|0|55275.02271543|55276.94144233|55276.02509357|37|-51|16|1|1|0||||||||||||||||||||||||||12018496|0.342|-19.3|1|12.961|0.026|12.673|0.029|12.576|0.03|2403089401241003981|1|-0.0003671921995755|-0.0016627907321743|-0.999998550147384|121000000|
+J150820.11-895408.7|227.083799|-89.9024197|0.1681|0.1739|0.0383|302.9935382|-27.0474595|269.8334383|-66.4891573|2106.701|600.666|2403089401241004176|2403m894_ab41-004176|2403m894_ab41|4176|15.009|0.035|31.5|0.884000003|14.932|0.067|16.3|0.863200009|13.015||-0.2|0.95660001|9.374||-0.2|0.933000028|0.906000018|1|0|0.0|0.0|0.0|0.001|0000|h000|0|00nn|AAUU|3|0000|22|22|13|22|0|21|0|21|22.915|22.502|22.883|22.606|0.0|0.0|0.0|0.0|8|h|0||0||0||157.25|4.99889994|9.595|2.595|0.0|67.1709976|4.11910009|21.763|3.241|0.0|-11.823|49.2980003|1096.608|25.363|0.0|-3.06489992|14.1009998|298.57|10.27|1.353|15.052|0.072|0|0.261|14.962|0.142|0|0.319|12.44||32|0.825|8.8||32|0.576|15.67|0.071|0|15.712|0.15|0|13.641||32|9.816||32|15.313|0.072|0|15.281|0.142|0|13.265||32|9.376||32|15.188|0.082|1|15.118|0.158|1|12.987||32|9.032||32|15.131|0.097|1|15.039|0.181|1|12.753||32|8.737||32|15.087|0.112|1|14.962|0.204|1|12.545||32|8.476||32|15.037|0.126|1|14.852|0.217|1|12.365||32|8.24||32|14.99|0.14|1|14.728|0.226|1|12.2||32|8.023||32|14.946|0.155|1|14.599|0.23|1|11.918||32|7.824||32|15.027|0.113|0.024|0.515|21|0|55274.89041135|55276.94144233|55275.99412384|14.931|0.319|0.068|1.26800001|21|0|55274.89041135|55276.94144233|55275.99412384|15.127|||3.98900008|11|0|55274.89041135|55276.94144233|55275.96476696|11.709|||2.97600007|9|0|55274.89041135|55276.94144233|55275.96476696|5|29|-41|0|0|0||||||||||||||||||||||||||858247980|0.296|42.5|1|15.996|0.101|15.501|0.114|15.135||2403089401241004176|1|-0.0011596861273705|-0.0012472634614196|-0.99999854972992|121000000|
+J144350.10-895408.6|220.9587586|-89.9024129|0.9702|0.9916|0.2484|302.9835215|-27.0420622|269.8152068|-66.49663|2132.902|593.0|2403089401241005883|2403m894_ab41-005883|2403m894_ab41|5883|17.396|0.154|7.0|1.01400006|17.495||-1.0|0.83890003|13.033||0.2|1.03600001|9.447||-0.4|0.943400025|0.954900026|1|0|0.0|0.0|0.0|0.002|0000|h000|0|nnnn|BUUU|1|0000|2|23|0|23|0|22|0|22|23.692|23.628|22.852|22.754|0.0|0.0|0.0|0.0|8|h|0||0||0||17.4489994|2.48189998|9.667|2.543|0.055|-3.08509994|3.16890001|21.776|3.126|0.037|9.31459999|43.8610001|1094.516|24.947|2.079|-5.39419985|13.184|298.524|10.113|0.711|19.505||32|0.261|16.126||32|0.319|12.282||32|0.825|8.794||32|0.576|17.17||32|16.798||32|13.721||32|9.815||32|19.766||32|16.445||32|13.107||32|9.37||32|16.766||32|16.171||32|12.623||32|9.153||32|16.538||32|15.942||32|12.839|0.414|1|8.86||32|16.334||32|15.737||32|12.377|0.326|1|8.6||32|16.155||32|15.557||32|12.048|0.284|1|8.363||32|15.989||32|15.391||32|11.814|0.267|1|8.148||32|15.839||32|15.241||32|11.591|0.249|1|7.948||32|17.381|0.812|0.169|2.553|18|0|55274.89041135|55276.94144233|55275.97778257||||2.40899992|10|0|55274.89041135|55276.94144233|55275.97778257|13.83|5.947|1.268|4.49399996|11|0|55274.89041135|55276.94144233|55275.9490173||||2.18300009|9|0|55274.89041135|55276.94144233|55275.9490173|17|-52|11|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005883|1|-0.0012862368900466|-0.0011164842420613|-0.999998549527748|121000000|
+J121335.86-895408.2|183.3994235|-89.9022918|0.501|0.4577|0.1073|302.9138872|-27.0317758|269.754855|-66.5547237|2034.063|607.448|1802089401241004664|1802m894_ab41-004664|1802m894_ab41|4664|16.557|0.081|13.4|1.08099997|16.408|0.218|5.0|0.927900016|12.849||0.1|0.966700017|9.428||-0.2|0.898100019|0.964600027|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|7|22|2|22|0|22|0|22|23.331|23.694|22.937|23.25|0.0|0.0|0.0|0.0|0||0||0||0||37.7849998|2.81960011|9.45|2.657|0.0|17.2530003|3.46560001|21.81|3.337|0.0|7.45830011|53.7099991|1096.287|26.669|0.0|-2.4776001|13.4160004|298.009|10.011|0.308|16.046|0.151|1|0.261|15.877|0.338|1|0.319|12.32||32|0.825|8.363||32|0.576|16.854|0.178|0|16.84|0.435|0|13.588||32|9.489||32|16.307|0.151|1|16.196|0.338|1|13.145||32|8.939||32|15.902|0.135|1|15.729|0.286|1|12.735||32|8.608||32|15.444|0.11|1|15.276|0.234|1|13.017|0.485|1|8.378||32|14.942|0.083|1|14.849|0.191|1|12.48|0.355|1|8.204||32|14.509|0.066|1|14.469|0.158|1|12.141|0.305|1|8.037||32|14.15|0.055|1|14.148|0.137|1|11.98|0.304|1|7.9||32|13.848|0.048|1|13.881|0.123|1|11.891|0.321|1|7.79||32|16.614|0.373|0.08|1.667|21|1|55274.89041135|55276.94144233|55275.92797183|16.335|1.207|0.257|2.91100001|15|1|55274.89041135|55276.94144233|55275.92797183|14.422|8.985|1.916|3.74099994|10|0|55274.89041135|55276.94144233|55275.92797183||||2.2579999|8|0|55274.89041135|55276.94144233|55275.92797183|21|13|-16|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004664|1|-0.001702329034696|-0.0001011197923054|-0.999998545924265|121000000|
+J165016.31-895408.2|252.5679648|-89.9022823|0.1432|0.1571|0.0274|303.0266804|-27.0788358|269.9266819|-66.4674619|1993.93|602.086|2403089401241004196|2403m894_ab41-004196|2403m894_ab41|4196|14.922|0.034|31.8|0.929499984|14.404|0.047|22.9|0.944599986|10.515|0.068|16.0|1.08800006|8.726|0.289|3.8|0.886300027|0.958999991|1|0|0.0|0.0|0.0|0.001|0000|0000|0|110n|AAAB|15|0000|21|21|21|21|9|20|1|20|21.825|21.868|21.02|21.09|0.0|0.0|0.0|0.0|0||0||0||0||170.320007|5.35720015|9.376|2.645|0.083|109.260002|4.77689981|21.757|3.436|0.096|986.719971|61.8100014|1096.968|26.065|1.413|51.2229996|13.6289997|298.695|10.009|0.513|14.925|0.079|1|0.261|14.214|0.047|1|0.319|10.575|0.107|1|0.825|8.604|0.449|1|0.576|15.552|0.08|0|15.054|0.055|0|11.956|0.13|0|9.654|0.466|1|15.186|0.079|1|14.533|0.047|1|11.4|0.107|1|9.18|0.449|1|15.042|0.089|1|14.242|0.046|1|11.142|0.109|1|8.881|0.468|1|14.903|0.096|1|14.009|0.045|1|11.034|0.122|1|8.642|0.49|1|14.715|0.098|1|13.787|0.044|1|10.995|0.142|1|8.413|0.503|17|14.528|0.097|1|13.591|0.043|1|10.986|0.166|1|8.251|0.537|17|14.343|0.096|1|13.412|0.042|1|10.992|0.194|1|7.356||32|14.026|0.082|1|13.187|0.039|1|11.005|0.225|1|7.217||32|14.919|0.134|0.029|0.547|20|0|55275.02271543|55276.94144233|55276.05297571|14.39|0.165|0.036|0.637000024|20|0|55275.02271543|55276.94144233|55276.05297571|10.537|0.215|0.048|1.26400006|19|0|55275.02271543|55276.94144233|55276.02509357|8.742|1.371|0.306|2.375|14|0|55275.02271543|55276.94144233|55276.02509357|41|-1|12|1|0|0||||||||||||||||||||||||||11990330|0.392|-129.1|1|17.057|0.22|16.033|0.212|15.549|0.215|2403089401241004196|1|-0.0005109224962662|-0.0016271668868522|-0.999998545642005|121000000|
+J174029.17-895407.9|265.1215718|-89.9022005|0.2141|0.2289|-0.039|303.0365526|-27.0983217|269.9791729|-66.4632623|1940.78|584.553|2403089401241004335|2403m894_ab41-004335|2403m894_ab41|4335|15.508|0.042|26.0|0.971400023|15.497|0.104|10.4|0.827700019|12.974||0.1|1.15499997|9.433||-0.9|0.918900013|0.964299977|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|22|22|5|22|0|21|0|21|22.768|22.81|22.018|21.945|0.0|0.0|0.0|0.0|0||0||0||0||99.2360001|3.82349992|9.372|2.581|0.0|39.9309998|3.83119988|21.77|3.388|0.028|4.50439978|48.9650002|1095.341|25.378|3.521|-12.5179996|13.3640003|299.027|9.974|1.863|15.763|0.19|0|0.261|15.441|0.179|0|0.319|12.291||32|0.825|8.472||32|0.576|16.263|0.17|0|16.183|0.19|0|13.476||32|9.48||32|16.024|0.19|0|15.76|0.179|0|13.116||32|9.048||32|16.076|0.26|1|15.55|0.192|1|12.825||32|8.702||32|16.119|0.335|1|15.297|0.189|1|12.592||32|8.408||32|15.828|0.308|1|14.92|0.161|1|12.392||32|8.148||32|15.366|0.238|1|14.52|0.131|1|12.212||32|7.913||32|15.049|0.207|1|14.207|0.114|1|12.046||32|7.697||32|14.931|0.213|1|13.989|0.108|1|11.894||32|7.498||32|15.506|0.161|0.034|0.624|21|0|55275.28732341|55277.20605032|55276.13846709|15.495|0.434|0.092|2.954|21|0|55275.28732341|55277.20605032|55276.13846709|14.645|||4.70100021|10|0|55275.28732341|55277.20605032|55276.11598369||||4.08599997|7|0|55275.28732341|55277.20605032|55276.11598369|39|19|-90|1|0|1||||||||||||||||||||||||||970399908|0.461|-113.8|1|16.626|0.162|15.975|0.234|15.23|0.195|2403089401241004335|1|-0.0001451598037974|-0.0017007395804563|-0.999998543205694|121000000|
+J001758.34-895407.2|4.4930908|-89.9020123|1.1238|1.0406|0.1834|302.9479498|-27.2251004|270.2456557|-66.568193|1835.614|208.124|2403089401241005801|2403m894_ab41-005801|2403m894_ab41|5801|18.785||-2.6|0.898299992|17.452||-4.2|1.03100002|12.091|0.202|5.4|1.08299994|8.967||1.4|0.966499984|0.994000018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|22|0|22|3|21|1|21|21.857|21.968|21.398|21.929|0.0|0.0|0.0|0.0|0||0||0||0||-6.42280006|2.42659998|9.332|2.703|0.344|-14.0080004|3.29640007|21.814|3.357|0.0|230.910004|43.0270004|1098.477|22.894|2.709|16.9769993|12.0229998|298.174|9.355|0.493|17.091||32|0.261|16.545||32|0.319|12.093||32|0.825|8.65||32|0.576|17.974||32|17.224||32|15.529||32|9.66||32|17.352||32|16.864||32|12.918||32|9.226||32|17.368|0.365|1|16.578||32|12.632||32|8.882||32|16.738|0.254|1|16.344||32|12.399||32|13.225||32|16.15|0.178|1|16.143||32|12.198||32|8.329||32|15.566|0.123|1|15.641||32|12.019||32|8.093||32|14.983|0.084|1|15.433|0.388|1|11.855||32|7.877||32|14.317|0.053|1|14.366|0.167|1|11.704||32|7.678||32||||2.54|5|0|55275.28745078|55277.33835439|55276.34599308||||2.14899993|4|0|55275.28745078|55277.33835439|55276.34599308|12.042|1.4|0.305|4.63000011|17|1|55275.28745078|55277.33835439|55276.33339187|10.379|2.959|0.646|4.69199991|14|0|55275.28745078|55277.33835439|55276.33339187||22|6||0|0|||||||||||||||||||||||||||||0|||||||2403089401241005801|1|0.0017049511347092|0.0001339756964333|-0.999998537595001|101000000|
+J142356.59-895406.2|215.9858001|-89.9017423|0.6115|0.6283|0.1735|302.9752431|-27.0377879|269.8005871|-66.5028472|2154.196|586.332|2403089401241005079|2403m894_ab41-005079|2403m894_ab41|5079|16.928|0.101|10.7|1.00800002|16.802||1.9|0.998399973|12.697|0.398|2.7|1.028|9.419||-0.2|1.005|1.00699997|1|0|0.0|0.0|0.0|0.0|0000|h0d0|0|1nnn|AUCU|5|0000|8|24|0|24|2|23|0|23|23.888|23.807|22.786|22.644|0.0|0.0|0.0|0.0|8|h|0||1|d|0||26.8320007|2.49699998|9.647|2.516|0.0|5.78410006|3.1078999|21.829|3.037|0.041|132.210007|48.4609985|1096.048|25.241|0.0|-2.80119991|13.5270004|298.211|10.118|0.431|16.765|0.436|1|0.261|16.088||32|0.319|12.362|0.362|1|0.825|8.918||32|0.576|17.428|0.452|0|16.769||32|13.929|0.514|0|9.928||32|17.026|0.436|1|16.407||32|13.187|0.362|1|9.494||32|16.246||32|16.122||32|12.76|0.318|1|10.098||32|16.213||32|15.89||32|12.521|0.316|1|8.743||32|16.169||32|15.688||32|12.378|0.333|1|8.445||32|16.012||32|15.505||32|12.27|0.357|1|8.222||32|15.71||32|15.34||32|12.131|0.366|1|8.005||32|16.01|0.526|1|15.189||32|11.95|0.355|1|7.83||32|16.919|0.655|0.134|2.581|22|1|55274.89041135|55276.94144233|55275.98210006|17.395|3.487|0.712|2.33699989|15|0|55274.89041135|55276.94144233|55275.98210006|12.391|1.705|0.356|2.56399989|13|0|55274.89041135|55276.94144233|55275.95477317||||2.18799996|10|0|55274.89041135|55276.94144233|55275.95477317|-15|32|62|0|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005079|1|-0.0013876492174087|-0.0010076608186461|-0.999998529523581|121000000|
+J233804.78-895405.8|354.5199314|-89.9016359|0.1009|0.1028|0.0115|302.9667209|-27.2215201|270.2460598|-66.5511223|2072.589|608.378|89401241004193|0000m894_ab41-004193|0000m894_ab41|4193|13.55|0.025|43.0|0.885399997|13.637|0.032|34.4|0.940900028|12.256|0.223|4.9|1.02199996|9.552||-0.2|1.07700002|0.978900015|2|1|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|AABU|7|0000|24|24|24|24|1|23|0|23|24.111|24.09|23.603|23.602|0.0|0.0|0.0|0.0|0||0||0||0||602.679993|14.0200005|9.271|2.749|0.081|221.429993|6.44570017|21.779|3.405|0.278|198.470001|40.8300018|1100.528|24.04|2.926|-2.90459991|11.9729996|298.496|9.539|0.8|13.522|0.02|1|0.261|13.602|0.035|1|0.319|11.938||32|0.825|8.906||32|0.576|14.164|0.02|1|14.381|0.039|1|13.243||32|9.921||32|13.783|0.02|1|13.921|0.035|1|12.763||32|9.482||32|13.611|0.021|1|13.705|0.037|1|12.448||32|9.135||32|13.49|0.023|1|13.573|0.04|1|12.218||32|8.841||32|13.408|0.026|1|13.489|0.045|1|12.044||32|8.58||32|13.374|0.029|1|13.446|0.05|1|11.898||32|8.342||32|13.367|0.034|1|13.428|0.058|1|11.731||32|8.064||32|13.366|0.039|1|13.425|0.066|1|11.526||32|8.051||32|13.547|0.055|0.011|0.187|23|0|55275.28745078|55277.33835439|55276.36252723|13.629|0.129|0.026|0.509000003|23|0|55275.28745078|55277.33835439|55276.36252723|12.034|1.062|0.222|4.03299999|16|0|55275.28745078|55277.33835439|55276.35174065|12.778|||3.69099998|7|0|55275.28745078|55277.33835439|55276.35174065|58|39|-50|3|1|0||||||||||||||||||||||||||1180999363|0.033|9.2|1|14.478|0.036|13.855|0.042|13.477|0.041|89401241004193|1|0.0017089295877267|-0.0001639512274347|-0.999998526338744|131000000|
+J034729.62-895405.7|56.8734343|-89.9016044|1.1924|1.286|0.4752|302.8550479|-27.1988987|270.1356316|-66.6430534|2263.063|210.211|1802089401241005430|1802m894_ab41-005430|1802m894_ab41|5430|18.827||-0.3|0.895600021|17.366||0.3|1.05400002|11.885|0.155|7.0|1.04400003|9.039||1.4|1.097|1.00999999|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|UUBU|4|0000|0|24|1|24|1|23|0|23|23.767|23.73|22.906|22.717|0.0|0.0|0.0|0.0|1161|DH|1161|DH|0||0||-0.713079989|2.33509994|9.296|2.745|0.084|0.848049998|3.14569998|21.81|3.338|0.047|279.339996|39.8450012|1098.364|21.713|3.244|15.6370001|11.3889999|298.694|9.24|1.28|15.797|0.063|1|0.261|15.634|0.171|1|0.319|12.281||32|0.825|8.726||32|0.576|17.035|0.109|1|16.87|0.283|1|13.51||32|9.738||32|16.058|0.063|1|15.953|0.171|1|13.106||32|9.302||32|15.273|0.04|1|15.203|0.111|1|12.807||32|8.959||32|14.595|0.027|1|14.562|0.077|1|12.508||32|8.664||32|14.049|0.02|1|14.047|0.058|1|12.204||32|8.405||32|13.642|0.017|1|13.647|0.048|1|11.895||32|8.17||32|13.316|0.015|1|13.32|0.041|1|12.223|0.453|1|7.955||32|12.988|0.013|1|12.998|0.036|1|11.752|0.338|1|7.681||32||||2.455|6|0|55275.28745078|55277.33835439|55276.29362153||||2.90199995|11|0|55275.28745078|55277.33835439|55276.29362153|11.862|0.617|0.129|3.44300008|22|0|55275.28745078|55277.33835439|55276.27983905|9.631|2.179|0.454|2.24900007|13|0|55275.28745078|55277.33835439|55276.27983905|11|-41|-38|0|1|1|||||||||||||||||||||||||||||0|||||||1802089401241005430|1|0.0009385021038759|0.0014382012537709|-0.99999852539439|101000000|
+J192321.24-895405.5|290.8385374|-89.9015459|0.6101|0.6284|-0.1806|303.0414825|-27.1417804|270.0877235|-66.4686704|2091.088|606.167|3004089401241005106|3004m894_ab41-005106|3004m894_ab41|5106|16.953|0.107|10.1|0.944800019|16.821|0.325|3.3|0.972299993|12.559|0.317|3.4|1.07599998|9.497||-0.6|1.02499998|1.00100005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|ABBU|7|0000|3|22|1|22|0|21|0|21|22.699|22.872|22.163|22.494|0.0|0.0|0.0|0.0|0||0||0||0||26.2220001|2.59200001|9.304|2.735|0.069|11.7930002|3.52749991|21.765|3.427|0.089|150.080002|43.8260002|1095.116|24.305|2.563|-7.07600021|12.6000004|298.99|9.665|1.259|17.1|0.345|0|0.261|16.05|0.242|0|0.319|12.367||32|0.825|8.776||32|0.576|17.539|0.293|0|16.912|0.289|0|13.628||32|9.867||32|17.361|0.345|0|16.369|0.242|0|13.192||32|9.352||32|17.493|0.503|1|16.047|0.23|1|12.893||32|8.933||32|16.823||32|15.789|0.222|1|12.73||32|8.582||32|16.881||32|15.552|0.213|1|12.652||32|8.347||32|16.815||32|15.313|0.2|1|14.117||32|8.153||32|16.658||32|15.06|0.182|1|12.513||32|7.991||32|16.622||32|14.828|0.167|1|12.36||32|7.819||32|16.951|0.452|0.096|1.711|21|0|55275.28732341|55277.20605032|55276.18959325|16.71|1.917|0.409|4.22200012|15|0|55275.28732341|55277.20605032|55276.18959325|12.216|1.422|0.31|2.47000003|15|0|55275.28732341|55277.20605032|55276.16954442||||3.29299998|9|0|55275.28732341|55277.20605032|55276.16954442|7|11|-70|0|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005106|1|0.0006112776662082|-0.0016059451089259|-0.999998523638871|131000000|
+J053245.64-895405.5|83.1901792|-89.9015397|0.4679|0.5318|-0.0278|302.8277094|-27.1612588|270.0294662|-66.6584719|1946.872|589.149|600089401241004612|0600m894_ab41-004612|0600m894_ab41|4612|16.537|0.087|12.5|0.92019999|16.669||1.5|1.04499996|12.077|0.194|5.6|1.15600002|9.198||0.8|1.14999998|1.06200004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|AUBU|5|0000|10|21|0|21|0|20|0|20|21.012|21.798|20.41|20.398|0.0|0.0|0.0|0.0|0||0||0||0||38.4840012|3.0783|9.417|2.901|0.026|5.90829992|3.82809997|21.738|3.569|0.288|233.990005|41.8380013|1097.305|21.973|3.2|9.72500038|11.7189999|298.512|9.29|1.413|16.648|0.265|1|0.261|15.98||32|0.319|11.885||32|0.825|8.787||32|0.576|17.104|0.229|0|16.606||32|13.249||32|9.866||32|16.909|0.265|1|16.299||32|12.71||32|9.363||32|16.983|0.366|1|16.085||32|12.295||32|9.03||32|16.961|0.443|1|15.851||32|12.68|0.51|1|8.812||32|16.739|0.437|1|15.645||32|12.311|0.438|1|8.626||32|16.537|0.428|1|15.534||32|12.071|0.414|1|8.397||32|16.522|0.49|1|15.538||32|11.979|0.442|1|8.186||32|15.814||32|15.605||32|11.992|0.514|1|7.991||32|16.514|0.366|0.08|1.541|20|0|55275.28745078|55277.20605032|55276.18847532|16.976|1.831|0.4|3.12199998|12|0|55275.28745078|55277.20605032|55276.18847532|11.955|0.815|0.182|6.07999992|16|0|55275.28745078|55277.20605032|55276.16736816|10.532|5.218|1.167|4.27299976|11|0|55275.28745078|55277.20605032|55276.16736816|9|29|27|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004612|1|0.0002037645367398|0.0017063330388062|-0.999998523452697|101000000|
+J195823.39-895404.8|299.5974814|-89.9013536|0.1327|0.1313|-0.0292|303.0380869|-27.1565262|270.1220636|-66.4748866|2051.893|610.268|3004089401241004139|3004m894_ab41-004139|3004m894_ab41|4139|14.499|0.03|36.5|1.75300002|14.203|0.042|26.0|0.956900001|12.847|0.449|2.4|1.17299998|9.249||0.4|0.944199979|1.20599997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AACU|7|0000|22|22|22|22|1|21|0|21|23.108|23.501|23.226|23.299|0.0|0.0|0.0|0.0|0||0||0||0||251.350006|6.89349985|9.323|2.855|0.172|131.509995|5.06419992|21.755|3.462|0.177|115.150002|47.5979996|1098.063|25.195|2.308|5.06050014|13.2939997|298.575|9.972|0.94|14.159|0.022|1|0.261|14.02|0.057|1|0.319|12.117||32|0.825|8.885||32|0.576|14.942|0.026|0|14.866|0.067|0|13.352||32|9.894||32|14.42|0.022|1|14.339|0.057|1|12.942||32|9.461||32|14.099|0.021|1|14.044|0.056|1|12.683||32|9.115||32|13.823|0.02|1|13.812|0.056|1|12.507||32|8.82||32|13.533|0.018|1|13.58|0.054|1|12.33||32|8.56||32|13.282|0.017|1|13.372|0.053|1|12.191||32|8.323||32|13.132|0.017|1|13.232|0.054|1|12.083||32|8.107||32|13.065|0.019|1|13.167|0.059|1|11.958||32|7.908||32|14.524|0.072|0.015|0.293|20|0|55275.28745078|55277.33835439|55276.28282193|14.228|0.165|0.035|0.856000006|21|0|55275.28745078|55277.33835439|55276.28282193|12.507|2.072|0.452|2.6099999|13|0|55275.28745078|55277.33835439|55276.26721256|9.941|3.468|0.757|2.852|9|0|55275.28745078|55277.33835439|55276.26721256|28|27|68|1|0|1||||||||||||||||||||||||||1126886791|0.839|34.3|1|16.225|0.13|15.631|0.2|14.771|0.14|3004089401241004139|1|0.0008503553261026|-0.0014970493043677|-0.999998517868501|131000000|
+J062752.65-895404.7|96.9693992|-89.9013173|0.252|0.2727|-0.0676|302.8216107|-27.1382402|269.9697783|-66.6586595|2149.852|589.472|1201089401241004488|1201m894_ab41-004488|1201m894_ab41|4488|15.78|0.049|22.2|0.877900004|15.73|0.122|8.9|0.906799972|12.132|0.205|5.3|1.14600003|9.479|0.491|2.2|1.04400003|0.990400016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|ABBC|15|0000|21|23|3|23|2|22|0|22|22.583|22.612|21.933|21.825|0.0|0.0|0.0|0.0|0||0||0||0||77.2860031|3.48769999|9.337|2.82|0.0|32.2120018|3.60940003|21.781|3.457|0.052|222.419998|41.9949989|1097.707|23.174|0.0|25.6170006|11.5909996|298.15|9.369|0.53|15.882|0.194|0|0.261|15.274||32|0.319|11.872||32|0.825|8.277||32|0.576|16.419|0.18|0|16.603|0.512|0|13.189||32|9.381||32|16.143|0.194|0|15.593||32|12.697||32|8.853||32|16.162|0.256|1|15.51||32|12.311||32|8.522||32|16.224|0.335|1|15.445||32|12.024||32|8.271||32|16.037|0.34|1|15.246||32|11.81||32|8.01||32|15.549|0.256|1|14.911||32|11.622||32|7.725||32|15.015|0.182|1|14.565||32|11.471||32|7.45||32|14.604|0.143|1|14.996|0.497|1|11.34||32|7.237||32|15.79|0.278|0.058|1.22|22|1|55275.02271543|55277.20605032|55276.08711043|15.702|0.665|0.139|3.64400005|20|0|55275.02271543|55277.20605032|55276.08711043|11.951|1.016|0.217|5.08799982|18|1|55275.02271543|55277.20605032|55276.06331461|9.341|2.437|0.52|1.86899996|13|0|55275.02271543|55277.20605032|55276.06331461|11|6|-12|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004488|1|-0.000208987026359|0.0017096107653272|-0.999998516776627|111000000|
+J224000.71-895404.6|340.0029998|-89.9012932|0.1546|0.1499|-0.0178|302.9921323|-27.2110604|270.2328679|-66.5267811|2136.371|594.873|89401241004368|0000m894_ab41-004368|0000m894_ab41|4368|14.799|0.032|34.0|1.10599995|14.915|0.061|17.8|0.910300016|12.671|0.338|3.2|0.989099979|9.612||-0.5|0.938499987|0.984099984|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AABU|7|0000|25|25|17|25|1|24|0|24|24.723|24.507|23.847|23.842|0.0|0.0|0.0|0.0|0||0||0||0||190.770004|5.6104002|9.208|2.764|0.0|68.2170029|3.83179998|21.739|3.339|0.113|135.339996|42.1759987|1099.697|24.002|0.0|-6.06860018|11.3269997|298.462|9.394|0.712|14.912|0.068|0|0.261|14.872|0.103|0|0.319|12.222||32|0.825|8.402||32|0.576|15.469|0.064|0|15.63|0.112|0|13.434||32|9.412||32|15.173|0.068|0|15.191|0.103|0|13.047||32|8.978||32|15.139|0.085|0|15.02|0.114|0|12.676||32|8.635||32|15.197|0.111|1|14.933|0.131|1|12.355||32|8.341||32|15.284|0.144|1|14.862|0.147|1|12.086||32|8.082||32|15.362|0.182|1|14.78|0.16|1|11.838||32|7.847||32|15.41|0.222|1|14.662|0.167|1|11.633||32|7.632||32|15.394|0.252|1|14.503|0.166|1|11.489||32|7.433||32|14.797|0.121|0.024|0.421|24|0|55275.28745078|55277.33835439|55276.36980225|14.917|0.374|0.075|1.98599994|24|1|55275.28745078|55277.33835439|55276.36980225|12.398|1.466|0.299|4.46600008|14|0|55275.28745078|55277.33835439|55276.35976824|11.773|||3.273|11|0|55275.28745078|55277.33835439|55276.35976824|-38|40|9|1|1|0||||||||||||||||||||||||||1201024996|0.189|165.7|1|15.43|0.065|14.946|0.09|14.895|0.157|89401241004368|1|0.0016188933983871|-0.0005891330230505|-0.999998516052122|131000000|
+J005451.21-895404.5|13.7133762|-89.9012738|0.5705|0.536|0.1413|302.9302615|-27.2268716|270.2413458|-66.5839281|1986.718|603.135|89401241005059|0000m894_ab41-005059|0000m894_ab41|5059|16.95|0.111|9.7|1.06200004|15.866|0.142|7.6|0.856999993|12.496|0.295|3.7|0.964399993|9.109||1.0|1.05700004|0.980499983|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0nnn|BBBU|7|0000|7|22|1|22|1|21|0|21|21.682|21.133|20.748|20.726|0.0|0.0|0.0|0.0|8|h|0||0||0||26.2910004|2.69970012|9.328|2.666|0.039|28.4069996|3.71600008|21.768|3.281|0.173|159.139999|43.2750015|1100.042|23.572|1.005|12.2690001|11.8780003|298.64|9.552|0.991|15.479|0.144|1|0.261|14.864|0.103|1|0.319|12.332||32|0.825|8.877||32|0.576|16.586|0.225|1|15.922|0.147|1|13.595||32|10.457||32|15.74|0.144|1|15.183|0.103|1|13.157||32|9.453||32|15.059|0.1|1|14.617|0.079|1|12.806||32|9.052||32|14.447|0.07|1|14.068|0.059|1|12.53||32|9.136||32|13.783|0.046|1|13.437|0.04|1|12.164||32|8.563||32|12.953|0.026|1|12.684|0.024|1|12.421|0.484|1|8.329||32|12.036|0.014|1|11.893|0.014|1|11.775|0.31|1|8.116||32|11.231|0.009|1|11.204|0.01|1|11.227|0.215|1|7.918||32|17.045|0.552|0.118|2.57|21|1|55275.28745078|55277.33835439|55276.34599308|15.903|0.49|0.104|1.99000001|21|0|55275.28745078|55277.33835439|55276.34599308|12.299|1.361|0.297|4.35500002|14|0|55275.28745078|55277.33835439|55276.33339187|9.814|3.03|0.661|2.17199993|11|0|55275.28745078|55277.33835439|55276.33339187|13|15|1|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005059|1|0.001673977179969|0.000408485702679|-0.999998515468814|101000000|
+J170925.86-895404.4|257.357758|-89.9012241|0.2264|0.4529|-0.1848|303.0320504|-27.0855941|269.9458621|-66.4643184|1972.428|599.348|2403089401241003982|2403m894_ab41-003982|2403m894_ab41|3982|13.995|0.106|10.3|0.92869997|14.024|0.114|9.5|0.994799972|12.242||1.0|1.05799997|8.569||0.3|0.958800018|0.98360002|2|1|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|ABUU|3|0000|1|21|1|21|0|20|0|20|22.181|22.655|21.219|21.593|0.0|0.0|0.0|0.0|0||0||0||0||399.980011|38.9480019|9.388|2.603|0.171|155.059998|16.2950001|21.778|3.341|0.118|66.9509964|67.0100021|1095.663|25.34|3.812|8.70750046|25.2509995|299.415|10.22|0.521|12.473|0.008|1|0.261|12.534|0.014|1|0.319|12.206|0.333|1|0.825|8.718||32|0.576|13.253|0.009|1|13.405|0.017|1|13.731|0.455|1|9.731||32|12.734|0.008|1|12.853|0.014|1|13.031|0.333|1|9.294||32|12.521|0.008|1|12.61|0.014|1|12.655|0.304|1|8.808||32|12.442|0.008|1|12.51|0.016|1|12.423|0.305|1|8.394||32|12.41|0.009|1|12.473|0.018|1|12.218|0.304|1|8.109||32|12.392|0.01|1|12.458|0.021|1|12.0|0.293|1|7.919||32|12.377|0.011|1|12.447|0.024|1|11.775|0.277|1|7.781||32|12.357|0.012|1|12.428|0.026|1|11.493|0.246|1|7.632||32|14.01|0.067|0.015|0.3|20|0|55275.02271543|55276.94144233|55276.05297571|14.085|0.256|0.056|0.787999988|20|0|55275.02271543|55276.94144233|55276.05297571|12.765|2.534|0.567|2.37400007|9|0|55275.02271543|55276.94144233|55276.02509357|10.76|||4.06500006|8|0|55275.02271543|55276.94144233|55276.02509357|-7|28|-34|0|0|0||||||||||||||||||||||||||12018490|1.317|-22.9|1|15.326|0.069|14.64|0.091|14.507|0.096|2403089401241003982|1|-0.0003773112040333|-0.0016821667896596|-0.999998513974469|121000000|
+J054252.29-895404.2|85.717891|-89.9011805|0.3452|0.3848|-0.0373|302.8257861|-27.157242|270.0186235|-66.6592515|1936.106|585.306|600089401241004502|0600m894_ab41-004502|0600m894_ab41|4502|16.306|0.07|15.5|0.876299977|16.423|0.249|4.4|0.914900005|11.292|0.102|10.6|1.08500004|9.103|0.35|3.1|1.00199997|0.963999987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0n2n|ABAB|15|0000|11|21|0|21|6|20|0|20|20.727|20.771|19.943|19.816|0.0|0.0|0.0|0.0|0||0||0||0||47.5820007|3.06809998|9.408|2.826|0.0|17.0189991|3.90490007|21.76|3.52|0.236|482.380005|45.4070015|1098.307|22.382|1.097|36.1920013|11.6549997|298.238|9.126|0.834|16.295|0.193|1|0.261|16.21|0.399|1|0.319|11.466||32|0.825|8.697||32|0.576|16.836|0.181|0|16.782|0.366|0|12.617||32|9.579||32|16.556|0.193|1|16.529|0.399|1|12.291||32|9.273||32|16.533|0.247|1|15.925||32|12.125||32|9.066||32|16.55|0.309|1|16.007||32|12.471||32|8.778||32|16.527|0.364|1|15.99||32|11.954||32|8.522||32|16.518|0.426|1|15.871||32|11.774||32|8.29||32|16.545|0.508|1|15.683||32|11.611||32|8.077||32|15.716||32|15.406||32|11.459||32|7.88||32|16.346|0.273|0.06|1.075|20|0|55275.28745078|55277.20605032|55276.18847532|16.274|0.693|0.151|2.6329999|17|0|55275.28745078|55277.20605032|55276.18847532|11.206|0.582|0.13|3.3900001|18|2|55275.28745078|55277.20605032|55276.16736816|9.125|1.63|0.365|3.58100009|14|0|55275.28745078|55277.20605032|55276.16736816|13|-71|-7|0|3|0|||||||||||||||||||||||||||||0|||||||600089401241004502|1|0.0001287806506367|0.0017199105870071|-0.999998512660452|101000000|
+J191058.04-895403.2|287.7418443|-89.9009119|0.6953|0.7314|-0.2014|303.0428568|-27.1365462|270.075622|-66.4663152|2105.12|605.088|3004089401241005149|3004m894_ab41-005149|3004m894_ab41|5149|17.073|0.12|9.1|0.860700011|16.87|0.362|3.0|0.860599995|12.627||1.2|0.968699992|9.468||-0.1|0.966499984|0.910300016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BCUU|3|0000|4|22|1|22|0|21|0|21|22.709|22.462|21.983|22.052|0.0|0.0|0.0|0.0|0||0||0||0||23.4920006|2.58739996|9.316|2.712|0.372|11.2690001|3.75510001|21.774|3.459|0.0|52.4939995|44.2789993|1096.456|24.711|1.755|-1.8793|12.9320002|299.391|9.923|1.117|16.518|0.188|0|0.261|15.881||32|0.319|12.679||32|0.825|8.836||32|0.576|17.272|0.213|0|16.414||32|13.87||32|9.97||32|16.779|0.188|0|16.2||32|13.504||32|9.412||32|16.552|0.196|1|16.108||32|13.225||32|9.067||32|16.429|0.216|1|15.88||32|12.893||32|8.776||32|16.308|0.233|1|15.677||32|12.59||32|8.516||32|16.179|0.244|1|15.496||32|12.331||32|9.364||32|16.129|0.272|1|15.332||32|12.093||32|8.066||32|16.192|0.33|1|15.182||32|11.879||32|7.868||32|17.064|0.656|0.14|1.927|18|0|55275.28732341|55277.20605032|55276.18959325|16.652|1.47|0.313|2.89299989|13|0|55275.28732341|55277.20605032|55276.18959325|13.097|2.369|0.517|2.41300011|10|0|55275.28732341|55277.20605032|55276.16954442|10.47|6.772|1.478|4.36100006|9|0|55275.28732341|55277.20605032|55276.16954442|-25|38|36|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005149|1|0.0005270017571998|-0.001647160498344|-0.999998504564602|131000000|
+J213633.87-895402.9|324.1411354|-89.9008324|0.2055|0.1964|-0.0495|303.0156988|-27.1935585|270.2015799|-66.5024877|1943.722|589.801|3004089401241004356|3004m894_ab41-004356|3004m894_ab41|4356|15.325|0.039|27.6|0.912800014|15.384|0.086|12.6|0.870400012|12.471|0.272|4.0|1.03999996|9.561||-0.4|1.02199996|0.956900001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABU|7|0000|24|25|8|25|1|23|0|24|26.135|26.444|25.241|24.89|0.0|0.0|0.0|0.0|0||0||0||0||117.519997|4.25409985|9.205|2.879|0.156|44.3139992|3.52920008|21.753|3.314|0.181|162.740005|40.8219986|1098.588|24.174|3.689|-4.86810017|11.8780003|297.743|9.605|1.411|15.32|0.093|1|0.261|15.328|0.17|1|0.319|11.625||32|0.825|9.046||32|0.576|15.927|0.091|1|16.061|0.178|1|12.882||32|10.052||32|15.581|0.093|1|15.647|0.17|1|12.45||32|9.622||32|15.446|0.106|1|15.496|0.192|1|12.138||32|9.199||32|15.358|0.122|1|15.421|0.223|1|11.89||32|8.8||32|15.281|0.136|1|15.349|0.251|1|11.692||32|8.495||32|15.185|0.147|1|15.238|0.267|1|11.554||32|8.257||32|15.046|0.151|1|15.081|0.27|1|11.447||32|8.058||32|14.921|0.155|1|14.951|0.276|1|11.376||32|7.862||32|15.315|0.159|0.032|0.606|24|0|55275.28745078|55277.33835439|55276.36980225|15.404|0.422|0.084|2.03999996|24|0|55275.28745078|55277.33835439|55276.36980225|12.359|1.324|0.276|4.19999981|17|0|55275.28745078|55277.33835439|55276.33159912||||2.52900004|8|0|55275.28745078|55277.33835439|55276.35976824|17|41|21|0|1|0||||||||||||||||||||||||||996577107|0.193|150.6|1|16.927|0.195|15.613|0.158|15.328|0.185|3004089401241004356|1|0.0014027491647514|-0.0010138870227733|-0.999998502162821|131000000|
+J164034.61-895402.9|250.144212|-89.9008168|0.2391|0.2801|0.0688|303.0256357|-27.0745203|269.9156263|-66.4673994|2003.902|607.929|2403089401241004482|2403m894_ab41-004482|2403m894_ab41|4482|15.706|0.048|22.5|1.14499998|15.355|0.092|11.8|0.848999977|12.894||-0.7|0.814199984|9.248||0.2|0.887700021|0.923600018|1|0|0.0|0.0|0.0|0.003|0000|h000|0|11nn|AAUU|3|0000|21|21|6|21|0|20|0|20|22.463|22.63|21.522|21.531|0.0|0.0|0.0|0.0|8|h|0||0||0||82.689003|3.66770005|9.377|2.558|0.09|45.5130005|3.86069989|21.801|3.404|0.074|-36.2169991|55.1399994|1097.889|26.515|2.451|3.02130008|14.3240004|299.107|10.152|1.294|15.589|0.153|1|0.261|14.936|0.095|1|0.319|12.473|0.476|1|0.825|8.214||32|0.576|16.242|0.159|0|15.849|0.119|0|13.233||32|9.262||32|15.85|0.153|1|15.255|0.095|1|13.298|0.476|1|8.79||32|15.71|0.173|1|14.857|0.085|1|12.586|0.318|1|8.47||32|15.512|0.178|1|14.487|0.075|1|11.988|0.227|1|8.292||32|15.207|0.162|1|14.135|0.065|1|11.493|0.173|1|8.1||32|14.956|0.152|1|13.856|0.06|1|11.116|0.145|1|7.865||32|14.817|0.156|1|13.657|0.058|1|10.872|0.135|1|7.65||32|14.77|0.171|1|13.516|0.058|1|10.727|0.135|1|7.451||32|15.706|0.204|0.045|0.684|20|0|55275.02271543|55276.94144233|55276.05297571|15.364|0.332|0.073|1.59399998|20|0|55275.02271543|55276.94144233|55276.05297571||||2.29200006|7|0|55275.02271543|55276.94144233|55276.02509357|10.691|4.866|1.088|3.23600006|9|0|55275.02271543|55276.94144233|55276.02509357|25|20|-68|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004482|1|-0.0005879652564901|-0.0016281604563687|-0.99999850169407|121000000|
+J060320.20-895402.8|90.8342077|-89.9007961|0.4332|0.4737|-0.1009|302.8228755|-27.1487827|269.9963544|-66.6599023|2175.315|578.418|1201089401241004651|1201m894_ab41-004651|1201m894_ab41|4651|16.341|0.076|14.3|1.00100005|17.049|0.472|2.3|0.972899973|12.605|0.339|3.2|1.23599994|8.8||1.7|0.873300016|1.01800001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACBU|7|0000|10|21|0|21|1|20|1|20|22.524|22.333|21.43|21.353|0.0|0.0|0.0|0.0|0||0||0||0||46.0810013|3.23149991|9.404|2.931|0.084|9.56210041|4.16099977|21.778|3.632|0.164|143.820007|44.8520012|1098.358|23.167|0.0|21.691|13.0900002|298.665|9.776|1.107|15.961|0.127|1|0.261|15.922|0.246|1|0.319|11.7||32|0.825|8.375||32|0.576|16.692|0.14|1|16.844|0.309|1|13.09||32|9.44||32|16.222|0.127|1|16.241|0.246|1|12.525||32|8.951||32|15.916|0.124|1|15.828|0.218|1|12.107||32|8.622||32|15.72|0.127|1|15.524|0.204|1|12.522|0.503|1|8.414||32|15.643|0.143|1|15.313|0.203|1|12.366|0.527|1|8.22||32|15.644|0.169|1|15.204|0.217|1|11.542||32|8.003||32|15.67|0.201|1|15.163|0.243|1|11.485||32|7.8||32|15.649|0.226|1|15.114|0.267|1|11.413||32|7.603||32|16.322|0.353|0.077|1.536|20|0|55275.28745078|55277.20605032|55276.18847532|17.195|1.471|0.321|3.06500006|14|0|55275.28745078|55277.20605032|55276.18847532|12.421|1.492|0.334|3.44499993|12|0|55275.28745078|55277.20605032|55276.16736816|9.399|2.391|0.535|4.91800022|12|0|55275.28745078|55277.20605032|55276.16736816|31|-70|-4|1|1|0||||||||||||||||||||||||||1329063183|0.297|136.6|1|16.93|0.185|16.248|0.22|15.899|0.306|1201089401241004651|1|-0.0000252082252573|0.0017312510050019|-0.999998501066128|111000000|
+J203628.12-895402.6|309.1171912|-89.9007227|0.446|0.4337|-0.141|303.0319939|-27.1720421|270.1569753|-66.4836052|2008.88|608.988|3004089401241004811|3004m894_ab41-004811|3004m894_ab41|4811|16.486|0.077|14.1|0.958500028|16.157|0.172|6.3|0.869899988|13.087||-0.8|0.932600021|9.559||-0.1|1.00300002|0.938300014|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|10|23|2|23|0|22|0|22|23.463|22.942|22.543|23.266|0.0|0.0|0.0|0.0|0||0||0||0||40.3339996|2.85700011|9.272|2.863|0.308|21.7329998|3.45129991|21.747|3.375|0.334|-36.6349983|46.1450005|1098.277|25.125|0.805|-1.31309998|11.8950005|298.747|9.881|0.531|16.187|0.197|0|0.261|15.851|0.338|0|0.319|12.139||32|0.825|8.653||32|0.576|16.881|0.21|0|16.702|0.396|0|13.328||32|9.663||32|16.448|0.197|0|16.17|0.338|0|12.964||32|9.229||32|16.214|0.204|0|15.905|0.34|0|12.693||32|8.885||32|16.079|0.222|0|15.726|0.355|0|12.464||32|8.594||32|16.02|0.254|1|15.566|0.37|1|12.26||32|8.333||32|15.963|0.285|1|15.39|0.371|1|12.079||32|8.099||32|15.701|0.26|1|15.143|0.343|1|11.917||32|7.884||32|15.167|0.183|1|14.802|0.287|1|11.767||32|7.686||32|16.472|0.415|0.087|1.302|21|0|55275.28745078|55277.33835439|55276.29420055|16.195|0.986|0.206|3.2750001|18|0|55275.28745078|55277.33835439|55276.29420055|14.679|||3.67400002|8|0|55275.28745078|55277.33835439|55276.27981791|10.996|9.436|2.012|2.75200009|8|0|55275.28745078|55277.33835439|55276.27981791|-3|-42|27|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004811|1|0.0010931847534165|-0.0013443392030542|-0.999998498848474|131000000|
+J211427.89-895402.3|318.6162122|-89.9006405|0.8712|0.837|-0.2753|303.0225606|-27.1861875|270.1869198|-66.4949108|1966.943|599.213|3004089401241005355|3004m894_ab41-005355|3004m894_ab41|5355|17.314|0.153|7.1|0.953199983|16.852|0.305|3.6|0.89139998|12.761|0.368|3.0|1.02699995|9.273||0.4|0.875400007|0.933399975|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBCU|7|0000|0|23|0|23|0|21|0|22|26.5|26.554|25.573|25.518|0.0|0.0|0.0|0.0|0||0||0||0||18.809|2.64429998|9.284|2.863|0.036|11.4560003|3.21939993|21.731|3.26|0.0|124.629997|42.2099991|1097.964|24.261|2.055|5.56459999|12.7010002|298.886|9.82|0.996|17.41|0.456|1|0.261|16.58|0.376|1|0.319|11.914||32|0.825|8.876||32|0.576|17.765|0.355|1|17.228|0.365|1|13.264||32|9.928||32|17.671|0.456|1|16.899|0.376|1|12.739||32|9.452||32|16.927||32|16.869|0.471|1|12.332||32|9.009||32|16.69||32|16.738|0.518|1|12.675|0.472|1|8.649||32|16.439||32|16.44|0.475|1|12.362|0.426|1|8.347||32|16.341||32|16.093|0.409|1|12.169|0.422|1|8.035||32|16.383||32|15.737|0.344|1|12.068|0.448|1|7.763||32|16.471||32|15.406|0.293|1|11.993|0.482|1|7.545||32|17.278|0.508|0.106|2.034|22|0|55275.28745078|55277.33835439|55276.29420055|16.878|1.477|0.308|2.72900009|15|0|55275.28745078|55277.33835439|55276.29420055|12.96|1.057|0.231|4.20800018|16|0|55275.28745078|55277.33835439|55276.31132604|12.041|||2.00699997|9|0|55275.28745078|55277.33835439|55276.27981791|-58|20|4|2|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005355|1|0.0013011285701928|-0.0011464449831275|-0.999998496363042|131000000|
+J095027.85-895401.6|147.616046|-89.9004474|0.5164|0.4672|-0.1279|302.8525348|-27.0580395|269.7881968|-66.6138857|2188.66|571.447|1802089401241004431|1802m894_ab41-004431|1802m894_ab41|4431|16.437|0.083|13.2|0.8477|17.088|0.413|2.6|0.919799984|12.604||1.2|1.01400006|9.494||-1.4|1.046|0.952000022|1|0|0.0|0.0|0.0|0.001|0000|0000|0|0nnn|ACUU|3|0000|10|22|0|22|0|21|0|21|22.086|21.676|21.139|21.603|0.0|0.0|0.0|0.0|0||0||0||0||42.2010002|3.20729995|9.364|2.89|0.14|9.22130013|3.51099992|21.737|3.371|0.189|53.5579987|45.2340012|1095.058|24.615|2.414|-18.25|12.6330004|298.09|9.8|0.955|15.401|0.064|1|0.261|15.32|0.187|1|0.319|11.95||32|0.825|8.747||32|0.576|16.446|0.095|1|16.571|0.317|1|13.135||32|9.813||32|15.662|0.064|1|15.639|0.187|1|12.775||32|9.323||32|14.768|0.037|1|14.694|0.101|1|12.495||32|9.044||32|13.776|0.019|1|13.749|0.053|1|12.261||32|15.025||32|12.94|0.012|1|12.981|0.032|1|12.058||32|8.598||32|12.397|0.009|1|12.462|0.024|1|11.877||32|8.362||32|12.117|0.009|1|12.171|0.021|1|11.714||32|8.148||32|11.994|0.009|1|12.03|0.021|1|11.563||32|7.949||32|16.381|0.348|0.074|2.549|21|0|55274.89041135|55276.94144233|55275.96707613|16.906|1.86|0.397|3.59500003|15|0|55274.89041135|55276.94144233|55275.96707613|12.966|2.464|0.538|5.08300018|12|0|55274.89041135|55276.94144233|55275.93643125||||1.71000004|7|0|55274.89041135|55276.94144233|55275.93643125|-6|47|-51|0|1|0|||||||||||||||||||||||||||||0|||||||1802089401241004431|1|-0.0014672966709287|0.0009305984652644|-0.999998490512349|111000000|
+J152956.61-895401.4|232.4859048|-89.9004068|0.3703|0.3908|0.1023|303.0032372|-27.0514298|269.8480164|-66.4816374|2083.754|610.309|2403089401241004664|2403m894_ab41-004664|2403m894_ab41|4664|16.281|0.068|15.9|0.882300019|15.913|0.144|7.5|0.985599995|12.373||1.6|1.01400006|9.396||-0.1|1.06299996|0.98210001|1|0|0.0|0.0|0.0|0.0|0000|h000|0|1nnn|ABUU|3|0000|14|21|3|21|0|20|0|20|21.765|21.706|21.121|21.917|0.0|0.0|0.0|0.0|8|h|0||0||0||48.7109985|3.05500007|9.5|2.562|0.031|27.2180004|3.61660004|21.756|3.279|0.061|78.7519989|49.7290001|1096.875|25.605|3.377|-1.38039994|13.823|298.277|9.974|1.373|16.404|0.253|1|0.261|15.4||32|0.319|12.625||32|0.825|8.696||32|0.576|16.987|0.243|0|16.084||32|13.169||32|9.82||32|16.665|0.253|1|15.719||32|13.45||32|9.272||32|16.596|0.307|1|15.51||32|12.632||32|8.863||32|16.586|0.377|1|15.355||32|12.399||32|8.548||32|16.409|0.386|1|15.188||32|12.195||32|8.277||32|15.805|0.261|1|14.884||32|12.017||32|8.0||32|15.038|0.15|1|15.176|0.503|1|11.852||32|7.7||32|14.447|0.101|1|14.623|0.348|1|11.7||32|7.466||32|16.275|0.369|0.08|1.644|20|1|55275.02271543|55276.94144233|55276.04668158|15.893|0.925|0.202|4.41400003|17|1|55275.02271543|55276.94144233|55276.04668158|12.796|1.339|0.299|2.52200007|10|0|55275.02271543|55276.94144233|55276.01848474|10.893|||2.88800001|10|0|55275.02271543|55276.94144233|55276.01848474|48|-60|44|1|1|0|||||||||||||||||||||||||||||0|||||||2403089401241004664|1|-0.0010585057882201|-0.0013787691643461|-0.999998489279403|121000000|
+J184300.39-895400.8|280.7516315|-89.9002389|0.0806|0.0783|-0.0083|303.0439291|-27.1244427|270.0466028|-66.4626921|2136.087|597.915|3004089401241003970|3004m894_ab41-003970|3004m894_ab41|3970|12.114|0.023|47.4|1.04700005|12.143|0.022|49.1|1.02100003|12.08|0.22|4.9|0.972800016|9.325||0.3|0.978999972|1.00199997|1|0|0.0|0.0|0.0|0.003|0000|0000|0|11nn|AABU|7|0000|22|22|22|22|2|21|0|21|22.43|22.658|21.229|21.584|0.0|0.0|0.0|0.0|0||0||0||0||2261.8999|47.7649994|9.367|2.719|0.0|876.609985|17.8570004|21.749|3.392|0.016|233.270004|47.2099991|1095.69|25.383|1.947|3.58879995|12.9569998|299.297|10.083|1.057|12.094|0.007|0|0.261|12.141|0.01|0|0.319|11.764||32|0.825|8.697||32|0.576|12.719|0.007|0|12.892|0.011|0|12.981||32|9.706||32|12.355|0.007|0|12.46|0.01|0|12.589||32|9.273||32|12.232|0.007|1|12.299|0.01|1|12.325||32|8.926||32|12.187|0.008|1|12.239|0.011|1|12.1||32|8.637||32|12.167|0.009|1|12.212|0.013|1|11.893||32|8.377||32|12.155|0.01|1|12.194|0.014|1|11.673||32|8.142||32|12.145|0.011|1|12.176|0.016|1|11.459||32|7.928||32|12.136|0.012|1|12.157|0.018|1|11.261||32|7.729||32|12.112|0.018|0.004|0.104|21|0|55275.28732341|55277.20605032|55276.13846709|12.143|0.048|0.01|0.169|21|0|55275.28732341|55277.20605032|55276.13846709|11.849|0.844|0.184|2.63700008|15|0|55275.28732341|55277.20605032|55276.11598369|10.623|6.091|1.329|1.301|10|0|55275.28732341|55277.20605032|55276.11598369|26|-2|-36|1|0|0||||||||||||||||||||||||||970609963|0.18|20.8|1|12.629|0.027|12.277|0.025|12.164|0.035|3004089401241003970|1|0.0003248167546541|-0.0017105933181209|-0.999998484181139|131000000|
+J035640.81-895400.7|59.1700726|-89.900195|0.1203|0.1262|0.0065|302.8507769|-27.1970732|270.1290326|-66.6463578|2052.209|613.299|600089401241004009|0600m894_ab41-004009|0600m894_ab41|4009|14.307|0.028|39.3|1.03299999|14.345|0.043|25.2|1.03900003|11.888|0.164|6.6|1.03799999|9.171||1.1|1.11699998|1.05299997|1|0|0.0|0.0|0.0|0.0|0000|dD00|0|0n1n|AABU|7|0000|24|24|23|24|4|23|0|23|23.831|23.717|22.911|22.721|0.0|0.0|0.0|0.0|9|dh|137|Dh|0||0||300.109985|7.64090014|9.349|2.713|0.15|115.32|4.56720018|21.714|3.264|0.209|278.51001|42.1920013|1099.932|22.578|3.774|12.375|10.8179998|298.329|9.121|0.951|14.017|0.026|1|0.261|14.048|0.076|1|0.319|12.497|0.445|1|0.825|8.788||32|0.576|14.767|0.03|0|14.929|0.092|0|13.305||32|9.8||32|14.278|0.026|1|14.367|0.076|1|13.322|0.445|1|9.364||32|13.955|0.025|1|14.008|0.071|1|12.642|0.309|1|8.94||32|13.625|0.023|1|13.663|0.064|1|12.126|0.239|1|8.514||32|13.264|0.02|1|13.296|0.055|1|11.708|0.196|1|8.164||32|12.903|0.017|1|12.931|0.047|1|11.344|0.165|1|7.822||32|12.557|0.015|1|12.579|0.039|1|11.029|0.144|1|7.524||32|12.198|0.013|1|12.201|0.032|1|10.745|0.127|1|7.338||32|14.295|0.075|0.015|0.339|23|0|55275.28745078|55277.33835439|55276.29362153|14.358|0.166|0.034|1.25100005|23|1|55275.28745078|55277.33835439|55276.29362153|11.741|0.767|0.16|4.67399979|19|0|55275.28745078|55277.33835439|55276.27983905|9.926|5.104|1.064|5.15399981|11|0|55275.28745078|55277.33835439|55276.27983905|-1|8|-46|0|0|1||||||||||||||||||||||||||728598395|0.185|-49.9|1|15.213|0.05|14.534|0.073|14.424|0.091|600089401241004009|1|0.0008927213887871|0.0014957771362189|-0.999998482848489|101000000|
+J040932.68-895400.6|62.3861807|-89.9001894|0.2803|0.3|0.0703|302.8465545|-27.192917|270.1167198|-66.649107|2037.543|613.138|600089401241004610|0600m894_ab41-004610|0600m894_ab41|4610|16.143|0.061|17.9|1.16700006|15.267|0.085|12.8|0.951499999|11.445|0.111|9.8|1.204|8.856|0.271|4.0|1.08599997|1.09899998|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nn0n|AABB|15|0000|14|24|11|24|5|23|1|23|23.653|23.622|22.851|22.67|0.0|0.0|0.0|0.0|137|Dh|137|Dh|0||0||55.3139992|3.0934999|9.305|2.724|0.224|49.3180008|3.84060001|21.795|3.299|0.039|418.799988|42.9300003|1098.866|22.29|2.227|45.4679985|11.349|298.468|9.158|1.198|14.466|0.029|0|0.261|14.173|0.057|0|0.319|11.42||32|0.825|8.505||32|0.576|15.488|0.042|0|15.216|0.079|0|12.717||32|9.487||32|14.727|0.029|0|14.492|0.057|0|12.245||32|9.081||32|14.221|0.024|0|14.023|0.048|0|12.67|0.533|0|8.741||32|13.821|0.021|1|13.652|0.042|1|12.422|0.527|1|8.408||32|13.454|0.018|1|13.308|0.037|1|12.192|0.512|1|8.129||32|13.089|0.015|1|12.975|0.032|1|11.947|0.482|1|7.872||32|12.74|0.013|1|12.654|0.028|1|11.685|0.44|1|7.629||32|12.41|0.012|1|12.332|0.024|1|11.399|0.389|1|7.414||32|16.16|0.469|0.096|1.96|23|4|55275.28745078|55277.33835439|55276.29362153|15.257|0.467|0.095|1.58200002|22|0|55275.28745078|55277.33835439|55276.29362153|11.355|0.575|0.12|2.48699999|21|1|55275.28745078|55277.33835439|55276.27983905|8.73|1.188|0.248|3.62899995|17|0|55275.28745078|55277.33835439|55276.27983905|36|7|-5|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241004610|1|0.0008074447976381|0.0015435925501333|-0.999998482676318|101000000|
+J104952.72-895400.1|162.4696956|-89.9000433|0.1034|0.0996|0.016|302.8751433|-27.041922|269.7600926|-66.5906338|2128.031|601.178|1802089401241003828|1802m894_ab41-003828|1802m894_ab41|3828|13.408|0.025|43.1|1.02999997|13.374|0.031|34.6|0.982500017|12.433||1.2|0.923500001|9.423||-1.5|0.952300012|0.969099998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|20|20|20|20|0|20|0|20|21.728|21.596|20.5|20.89|0.0|0.0|0.0|0.0|0||0||0||0||686.75|15.9460001|9.42|2.843|0.0|281.980011|8.15970039|21.785|3.445|0.0|64.0660019|52.2459984|1095.419|25.563|4.323|-20.3610001|13.4860001|297.876|10.035|2.021|13.357|0.014|1|0.261|13.362|0.034|1|0.319|11.868||32|0.825|8.646||32|0.576|14.006|0.015|0|14.138|0.038|0|13.166||32|9.755||32|13.618|0.014|1|13.681|0.034|1|12.693||32|9.222||32|13.461|0.015|1|13.484|0.037|1|12.343||32|8.809||32|13.366|0.017|1|13.366|0.04|1|12.116||32|8.419||32|13.279|0.018|1|13.26|0.044|1|11.956||32|8.09||32|13.18|0.02|1|13.141|0.047|1|11.837||32|7.827||32|13.025|0.02|1|12.962|0.046|1|11.728||32|7.59||32|12.739|0.018|1|12.672|0.04|1|11.564||32|7.38||32|13.408|0.016|0.003|0.141|19|0|55274.89041135|55276.94144233|55275.93579789|13.374|0.091|0.02|0.342000008|19|0|55274.89041135|55276.94144233|55275.93579789|12.828|2.323|0.519|1.29999995|10|0|55274.89041135|55276.94144233|55275.93579789||||2.33699989|6|0|55274.89041135|55276.94144233|55275.93579789|2|-15|-38|0|0|0||||||||||||||||||||||||||748825959|0.275|18.9|1|14.479|0.039|13.786|0.042|13.555|0.048|1802089401241003828|1|-0.0016635508017314|0.000525483057775|-0.999998478231985|111000000|
+J075110.34-895359.4|117.7930854|-89.8998407|0.0885|0.0867|0.012|302.8232023|-27.1023035|269.8821716|-66.6492695|2058.949|614.028|1201089401241004085|1201m894_ab41-004085|1201m894_ab41|4085|12.907|0.024|46.0|0.974099994|12.956|0.026|41.9|1.04799998|12.022|0.189|5.8|1.01900005|8.91||1.4|1.04200006|1.01699996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AABU|7|0000|22|22|22|22|1|21|1|21|21.446|21.726|21.523|20.982|0.0|0.0|0.0|0.0|0||0||0||0||1089.19995|23.6609993|9.382|2.746|0.0|414.649994|9.90340042|21.85|3.327|0.171|246.220001|42.8019981|1096.176|23.386|1.495|17.5709991|12.8380003|297.801|9.677|1.496|12.897|0.011|1|0.261|12.992|0.024|1|0.319|12.119||32|0.825|8.419||32|0.576|13.514|0.012|0|13.733|0.026|0|13.253||32|9.488||32|13.158|0.011|1|13.311|0.024|1|12.944||32|8.995||32|13.035|0.013|1|13.155|0.027|1|12.734||32|8.545||32|12.98|0.014|1|13.093|0.031|1|14.425||32|8.171||32|12.944|0.016|1|13.065|0.036|1|12.418||32|7.915||32|12.921|0.018|1|13.061|0.042|1|12.24||32|7.727||32|12.911|0.021|1|13.082|0.05|1|12.074||32|7.586||32|12.912|0.024|1|13.126|0.059|1|11.924||32|7.455||32|12.908|0.035|0.008|0.125|21|0|55275.02271543|55276.94144233|55275.97309574|12.96|0.074|0.016|0.421999991|21|0|55275.02271543|55276.94144233|55275.97309574|11.815|0.679|0.148|6.80900002|18|0|55275.02271543|55276.94144233|55275.94273751|10.991|9.912|2.163|3.57599998|11|1|55275.02271543|55276.94144233|55275.94273751|37|17|2|1|0|0||||||||||||||||||||||||||728316569|0.162|33.0|1|13.424|0.024|13.06|0.032|12.926|0.03|1201089401241004085|1|-0.0008151079104626|0.0015464420583137|-0.99999847205686|111000000|
+J233105.52-895359.3|352.7730208|-89.8998142|0.1901|0.1832|-0.0596|302.9706094|-27.2222431|270.2497353|-66.5479067|2080.993|612.241|89401241004194|0000m894_ab41-004194|0000m894_ab41|4194|14.825|0.038|28.9|0.885399997|14.967|0.068|16.1|0.940900028|12.93|0.415|2.6|1.02199996|8.951||1.5|1.07700002|0.978900015|2|1|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|AACU|7|0000|24|24|16|24|1|23|0|23|24.625|24.815|23.938|23.656|0.0|0.0|0.0|0.0|0||0||0||0||186.179993|6.44360018|9.271|2.749|0.037|65.0419998|4.05170012|21.779|3.405|0.044|106.629997|40.7560005|1100.528|24.04|0.705|17.7119999|11.9709997|298.496|9.539|0.352|14.501|0.031|1|0.261|14.609|0.109|1|0.319|12.505||32|0.825|9.01||32|0.576|15.312|0.038|1|15.53|0.139|1|13.673||32|10.019||32|14.762|0.031|1|14.928|0.109|1|13.33||32|9.586||32|14.28|0.026|1|14.456|0.091|1|13.045||32|9.243||32|13.845|0.022|1|14.056|0.079|1|12.812||32|8.951||32|13.565|0.02|1|13.795|0.074|1|12.609||32|8.691||32|13.44|0.021|1|13.677|0.079|1|12.426||32|8.456||32|13.398|0.024|1|13.646|0.089|1|12.264||32|8.242||32|13.378|0.026|1|13.651|0.103|1|13.327||32|8.044||32|14.822|0.112|0.023|0.465|23|0|55275.28745078|55277.33835439|55276.36252723|14.958|0.334|0.068|1.62300003|23|0|55275.28745078|55277.33835439|55276.36252723|12.968|1.865|0.389|3.24600005|13|1|55275.28745078|55277.33835439|55276.35174065|9.403|1.785|0.372|4.08599997|15|0|55275.28745078|55277.33835439|55276.35174065|1|-39|-6|0|1|0||||||||||||||||||||||||||1127913088|0.23|79.9|1|15.875|0.095|15.164|0.12|14.828|0.125|89401241004194|1|0.0017346802693104|-0.0002199709840802|-0.999998471247396|131000000|
+J092901.09-895359.2|142.2545488|-89.899801|0.1811|0.1703|-0.032|302.8449615|-27.0645369|269.8003227|-66.6219195|1949.435|595.139|1201089401241004285|1201m894_ab41-004285|1201m894_ab41|4285|14.902|0.036|30.3|1.05299997|15.084|0.072|15.1|1.03400004|12.405||1.9|1.03499997|9.46||-1.4|0.895099998|1.00300002|1|0|0.0|0.0|0.0|0.007|0000|0000|0|00nn|AAUU|3|0000|22|22|12|22|1|21|0|21|22.85|22.672|21.885|21.487|0.0|0.0|0.0|0.0|0||0||0||0||173.490005|5.72270012|9.412|2.895|0.102|58.4160004|3.88019991|21.789|3.287|0.12|84.439003|44.3009987|1095.446|24.756|1.361|-18.8600006|13.0299997|298.419|10.024|1.223|14.808|0.035|1|0.261|15.15|0.159|1|0.319|12.342||32|0.825|8.872||32|0.576|15.451|0.035|1|15.83|0.159|1|13.333||32|9.969||32|15.069|0.035|1|15.469|0.159|1|13.167||32|9.448||32|14.915|0.038|1|15.389|0.191|1|12.729||32|8.928||32|14.831|0.043|1|15.441|0.249|1|12.307||32|8.463||32|14.772|0.049|1|15.651|0.363|1|12.036||32|8.056||32|14.728|0.055|1|15.28||32|11.756||32|7.746||32|14.69|0.062|1|15.615||32|11.528||32|7.543||32|14.643|0.068|1|15.591||32|11.357||32|7.408||32|14.896|0.098|0.021|0.386|21|0|55274.89041135|55276.94144233|55275.96707613|15.104|0.397|0.085|1.95000005|21|1|55274.89041135|55276.94144233|55275.96707613|13.302|2.675|0.584|3.04200006|10|0|55274.89041135|55276.94144233|55275.93643125||||3.62199998|8|0|55274.89041135|55276.94144233|55275.93643125|-7|7|27|0|0|0||||||||||||||||||||||||||827834675|0.185|92.2|1|15.515|0.076|15.175|0.105|15.033|0.172|1201089401241004285|1|-0.0013828441303428|0.0010705367317829|-0.999998470845439|111000000|
+J071736.68-895359.1|109.4028443|-89.8997669|0.175|0.1804|-0.0453|302.8200383|-27.11669|269.9159694|-66.655227|2097.098|609.818|1201089401241004343|1201m894_ab41-004343|1201m894_ab41|4343|15.216|0.037|29.5|0.958199978|14.89|0.066|16.5|0.970799983|11.307|0.094|11.5|1.17799997|9.099|0.365|3.0|1.03799999|1.03199995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|001n|AAAC|15|0000|22|22|13|22|8|21|1|21|22.676|22.679|21.77|21.741|0.0|0.0|0.0|0.0|0||0||0||0||129.940002|4.40749979|9.408|2.76|0.0|69.8509979|4.22629976|21.812|3.403|0.414|475.51001|41.3639984|1095.499|22.405|4.075|36.3400002|12.2080002|297.259|9.429|0.32|14.999|0.074|1|0.261|14.458|0.057|1|0.319|11.886|0.373|1|0.825|8.273||32|0.576|15.717|0.081|1|15.375|0.071|1|13.296|0.456|0|9.409||32|15.26|0.074|1|14.777|0.057|1|12.711|0.373|1|8.849||32|15.014|0.076|1|14.419|0.053|1|12.414|0.366|1|8.434||32|14.78|0.075|1|14.139|0.05|1|12.184|0.366|1|8.1||32|14.489|0.069|1|13.868|0.047|1|11.925|0.347|1|7.771||32|14.159|0.061|1|13.6|0.044|1|11.667|0.324|1|7.484||32|13.857|0.053|1|13.363|0.041|1|11.47|0.314|1|7.277||32|13.621|0.05|1|13.176|0.039|1|11.364|0.328|1|7.128||32|15.233|0.1|0.021|0.53|21|0|55275.02271543|55276.94144233|55276.03624953|14.901|0.374|0.08|1.66900003|21|1|55275.02271543|55276.94144233|55276.03624953|11.304|0.636|0.139|2.39199996|19|2|55275.02271543|55276.94144233|55276.00889862|8.877|1.308|0.285|2.87400007|14|0|55275.02271543|55276.94144233|55276.00889862|8|-6|-30|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241004343|1|-0.0005811636361225|0.0016500421403968|-0.999998469803711|111000000|
+J200355.32-895358.9|300.9805222|-89.8997072|0.3006|0.3009|-0.0951|303.0390466|-27.1593093|270.1293368|-66.4746702|2051.655|89.496|1201089401241004555|1201m894_ab41-004555|1201m894_ab41|4555|15.921|0.055|19.8|0.916000009|15.669|0.119|9.1|0.856599987|12.766|0.392|2.8|1.12899995|9.027||0.9|0.946399987|0.958000004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|ABCU|7|0000|19|22|5|22|2|21|0|21|23.219|23.43|23.281|23.363|0.0|0.0|0.0|0.0|0||0||0||0||67.8779984|3.4217|9.29|2.877|0.156|34.0740013|3.73939991|21.74|3.493|0.147|124.019997|44.7770004|1096.26|24.224|2.069|11.8479996|13.4919996|298.819|9.979|0.928|15.062|0.051|1|0.261|14.77|0.088|1|0.319|12.232||32|0.825|8.874||32|0.576|16.046|0.071|1|15.871|0.129|1|13.451||32|10.496||32|15.323|0.051|1|15.089|0.088|1|13.057||32|9.45||32|14.76|0.04|1|14.515|0.067|1|12.803||32|9.104||32|14.359|0.034|1|14.126|0.058|1|12.572||32|8.808||32|14.082|0.032|1|13.864|0.055|1|12.279||32|8.547||32|13.86|0.031|1|13.668|0.054|1|12.006||32|8.311||32|13.625|0.029|1|13.491|0.054|1|11.781||32|8.096||32|13.384|0.026|1|13.317|0.053|1|11.607||32|7.896||32|15.949|0.173|0.037|0.725|21|0|55275.28745078|55277.33835439|55276.28282193|15.627|0.632|0.135|3.31500006|21|1|55275.28745078|55277.33835439|55276.28282193|12.474|2.025|0.442|4.87099981|13|1|55275.28745078|55277.33835439|55276.26721256|10.105|3.672|0.801|3.43400002|10|0|55275.28745078|55277.33835439|55276.26721256|29|10|5|1|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004555|1|0.0009010320361116|-0.0015007245117824|-0.999998467982431|131000000|
+J113939.57-895358.8|174.9148987|-89.8996886|0.1041|0.1011|0.0213|302.8972198|-27.0327204|269.7487242|-66.569399|2072.541|613.494|1802089401241003829|1802m894_ab41-003829|1802m894_ab41|3829|13.374|0.025|43.8|0.974600017|13.401|0.033|32.9|0.987299979|12.897||-1.0|0.924700022|9.476||-0.8|1.00899994|0.970499992|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|21|21|21|21|0|21|0|21|21.494|21.18|20.807|21.611|0.0|0.0|0.0|0.0|0||0||0||0||708.609985|16.184|9.445|2.772|0.122|275.049988|8.36979961|21.839|3.495|0.163|-55.1609993|54.993|1095.774|26.364|0.443|-10.4359999|12.8369999|297.667|9.842|1.695|13.364|0.014|1|0.261|13.435|0.039|1|0.319|12.518||32|0.825|8.856||32|0.576|13.994|0.015|0|14.186|0.043|0|13.819||32|11.223||32|13.625|0.014|1|13.754|0.039|1|13.343||32|9.432||32|13.475|0.016|1|13.576|0.043|1|13.009||32|9.014||32|13.377|0.017|1|13.474|0.048|1|12.801||32|8.668||32|13.277|0.019|1|13.386|0.053|1|12.648||32|8.37||32|13.187|0.02|1|13.31|0.059|1|12.566||32|8.052||32|13.119|0.022|1|13.254|0.065|1|12.49||32|7.758||32|13.069|0.024|1|13.216|0.072|1|12.34||32|7.543||32|13.375|0.049|0.011|0.2|20|0|55274.89041135|55276.94144233|55275.90177109|13.391|0.093|0.02|0.370000005|20|0|55274.89041135|55276.94144233|55275.90177109||||3.41499996|7|0|55274.89041135|55276.94144233|55275.90177109||||4.72200012|8|0|55274.89041135|55276.94144233|55275.90177109|4|-63|-24|0|1|0||||||||||||||||||||||||||863351291|0.028|-6.8|1|14.46|0.036|13.74|0.043|13.509|0.051|1802089401241003829|1|-0.001743871735945|0.0001551793426814|-0.999998467414196|111000000|
+J031636.13-895358.6|49.1505666|-89.8996261|0.927|0.9837|0.3316|302.865114|-27.209044|270.1655527|-66.6365478|2097.885|610.045|600089401241005048|0600m894_ab41-005048|0600m894_ab41|5048|18.849||-0.7|0.865999997|17.5||-0.6|1.00600004|11.775|0.145|7.5|1.13999999|8.776|0.257|4.2|1.19099998|1.023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBB|12|0000|0|24|1|24|3|23|0|23|23.86|24.292|22.963|23.258|0.0|0.0|0.0|0.0|0||0||0||0||-1.51069999|2.28839993|9.349|2.737|0.0|-1.9404|3.15569997|21.755|3.227|0.225|308.950012|41.3380013|1098.574|21.424|1.892|48.9550018|11.5869999|298.863|9.333|0.423|17.233|0.317|1|0.261|16.493||32|0.319|11.954||32|0.825|8.693|0.407|1|0.576|18.204|0.435|0|17.225||32|13.086||32|9.857|0.472|1|17.494|0.317|1|16.812||32|12.779||32|9.269|0.407|1|16.998|0.258|1|16.424||32|12.507||32|8.92|0.403|1|16.564|0.214|1|15.991||32|12.279||32|8.685|0.421|1|16.134|0.174|1|16.145|0.414|1|12.074||32|8.49|0.444|1|15.715|0.14|1|15.517|0.275|1|11.893||32|8.292|0.456|1|15.34|0.116|1|15.06|0.21|1|11.729||32|8.119|0.471|1|15.026|0.1|1|14.774|0.186|1|11.58||32|7.962|0.487|1||||3.016|11|0|55275.28745078|55277.33835439|55276.29362153||||4.45699978|10|1|55275.28745078|55277.33835439|55276.29362153|11.653|0.62|0.129|1.54299998|19|0|55275.28745078|55277.33835439|55276.27983905|8.809|0.881|0.184|4.29899979|18|0|55275.28745078|55277.33835439|55276.27983905|-11|17|-20|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005048|1|0.0011458414009779|0.0013251568946935|-0.999998465502167|101000000|
+J221328.47-895358.3|333.368638|-89.8995517|0.4706|0.4424|-0.0888|303.0037427|-27.2056567|270.2253241|-66.5155211|2165.881|587.113|89401241004985|0000m894_ab41-004985|0000m894_ab41|4985|16.521|0.077|14.2|0.863499999|17.126|0.376|2.9|0.985300004|12.761|0.355|3.1|0.984099984|9.59||-1.1|0.958899975|0.944599986|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACBU|7|0000|11|25|1|25|1|24|0|24|24.633|24.581|23.923|23.825|0.0|0.0|0.0|0.0|0||0||0||0||39.0449982|2.75570011|9.26|2.784|0.228|8.90240002|3.0854001|21.754|3.239|0.191|124.57|40.7739983|1100.239|24.085|1.992|-13.2049999|11.5559998|298.475|9.618|1.705|16.423|0.15|1|0.261|16.309|0.289|1|0.319|12.737|0.535|1|0.825|9.012||32|0.576|16.998|0.145|1|17.209|0.354|1|13.35||32|10.019||32|16.684|0.15|1|16.628|0.289|1|13.562|0.535|1|9.589||32|16.604|0.181|1|16.206|0.253|1|13.07|0.438|1|9.246||32|16.57|0.217|1|15.842|0.224|1|12.716|0.391|1|8.959||32|16.492|0.243|1|15.566|0.209|1|12.506|0.388|1|8.701||32|16.343|0.25|1|15.314|0.195|1|12.402|0.416|1|8.469||32|16.122|0.237|1|15.022|0.173|1|12.351|0.462|1|8.256||32|15.769|0.197|1|14.717|0.15|1|12.326|0.518|1|8.059||32|16.529|0.308|0.062|1.66|24|0|55275.28745078|55277.33835439|55276.36980225|17.083|2.451|0.49|3.96199989|14|0|55275.28745078|55277.33835439|55276.36980225|12.733|1.53|0.312|3.26999998|15|0|55275.28745078|55277.33835439|55276.35976824||||1.83599997|8|0|55275.28745078|55277.33835439|55276.35976824|29|19|31|1|0|0|||||||||||||||||||||||||||||0|||||||89401241004985|1|0.001567158230331|-0.0007858476031536|-0.999998463228132|131000000|
+J015651.24-895358.1|29.2135238|-89.8994839|0.416|0.4114|0.136|302.9000876|-27.224602|270.2209891|-66.6096121|1919.551|581.718|89401241004928|0000m894_ab41-004928|0000m894_ab41|4928|16.402|0.073|15.0|0.801100016|16.499|0.225|4.8|0.943700016|12.415|0.269|4.0|1.09899998|9.407||0.4|1.01499999|0.960200012|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|10|24|1|24|2|23|0|23|23.513|23.647|22.975|22.56|0.0|0.0|0.0|0.0|0||0||0||0||43.5820007|2.91059995|9.308|2.797|0.0|15.8570004|3.29049993|21.723|3.333|0.0|171.350006|42.4090004|1099.122|22.82|0.0|4.48519993|11.4350004|298.119|9.251|0.608|15.997|0.085|0|0.261|16.309|0.495|0|0.319|12.155||32|0.825|8.83||32|0.576|16.728|0.094|0|16.959|0.48|0|13.351||32|9.841||32|16.258|0.085|0|16.628|0.495|0|12.98||32|9.406||32|15.986|0.086|1|15.778||32|12.695||32|9.063||32|15.722|0.083|1|15.647||32|12.463||32|8.771||32|15.387|0.074|1|15.43||32|12.26||32|8.513||32|14.998|0.061|1|15.134||32|13.586||32|8.278||32|14.659|0.052|1|15.545|0.486|1|11.834||32|8.063||32|14.432|0.049|1|15.284|0.439|1|11.613||32|7.865||32|16.407|0.273|0.056|3.242|23|0|55275.28745078|55277.33835439|55276.3515125|16.552|1.271|0.26|2.57299995|18|0|55275.28745078|55277.33835439|55276.3515125|12.138|1.303|0.272|4.079|15|1|55275.28745078|55277.33835439|55276.34024702|10.904|8.918|1.86|2.40300012|12|0|55275.28745078|55277.33835439|55276.34024702|-45|-28|81|1|0|3|||||||||||||||||||||||||||||0|||||||89401241004928|1|0.0015311966030055|0.0008562312209173|-0.999998461151346|101000000|
+J234636.88-895357.9|356.653685|-89.8994219|0.7138|0.6425|0.089|302.9634833|-27.2247345|270.2523583|-66.5546352|2063.366|614.903|89401241004361|0000m894_ab41-004361|0000m894_ab41|4361|17.013|0.115|9.5|0.783299983|17.378|0.499|2.2|0.908800006|12.729|0.354|3.1|0.994199991|9.341||0.5|1.04700005|0.924000025|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BCBU|7|0000|5|24|1|23|0|22|0|23|23.666|23.819|23.063|23.203|0.0|0.0|0.0|0.0|0||0||0||0||24.8279991|2.61980009|9.146|2.711|0.185|7.05989981|3.24349999|21.717|3.376|0.195|128.410004|41.9059982|1101.224|24.474|2.319|6.22319984|11.434|298.015|9.171|0.878|16.246|0.245|1|0.261|15.938|0.215|1|0.319|12.446||32|0.825|8.886||32|0.576|17.218|0.338|0|16.993|0.305|0|13.752||32|9.895||32|16.507|0.245|1|16.257|0.215|1|13.271||32|9.462||32|15.716|0.154|1|15.532|0.145|1|12.837||32|9.119||32|14.865|0.088|1|14.8|0.091|1|12.425||32|8.824||32|14.189|0.057|1|14.202|0.064|1|12.676|0.431|1|8.562||32|13.776|0.046|1|13.794|0.052|1|12.289|0.356|1|8.246||32|13.551|0.043|1|13.53|0.047|1|12.02|0.322|1|7.917||32|13.416|0.044|1|13.35|0.046|1|11.798|0.302|1|7.63||32|16.994|0.558|0.114|2.323|22|0|55275.28745078|55277.33835439|55276.36252723|17.465|3.177|0.662|3.16700006|13|0|55275.28745078|55277.33835439|55276.3344836|12.451|1.511|0.322|3.29999995|13|0|55275.28745078|55277.33835439|55276.32193202|11.009|7.979|1.664|2.48399997|11|0|55275.28745078|55277.33835439|55276.35174065|-16|11|-26|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004361|1|0.0017524252477735|-0.0001024655523526|-0.999998459252094|131000000|
+J043626.34-895357.9|69.1097595|-89.8994177|1.1117|1.2309|0.3705|302.8379001|-27.1840052|270.0905072|-66.6546534|2006.728|612.113|600089401241005652|0600m894_ab41-005652|0600m894_ab41|5652|18.51||0.6|1.06900001|17.487||-1.7|0.98269999|11.723|0.147|7.4|1.01999998|9.11||1.0|0.997900009|1.01499999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn0n|UUBU|4|0000|0|23|0|23|5|22|0|22|23.181|23.811|22.794|22.403|0.0|0.0|0.0|0.0|0||0||0||0||1.53149998|2.36129999|9.355|2.693|0.057|-5.4066|3.19210005|21.792|3.333|0.159|324.209991|43.9840012|1100.52|23.326|0.0|11.6269999|12.1759996|298.899|9.546|0.684|17.225|0.232|0|0.261|15.963||32|0.319|11.566||32|0.825|8.675||32|0.576|18.156|0.304|0|16.641||32|12.883||32|9.685||32|17.486|0.232|0|16.282||32|12.391||32|9.251||32|17.027|0.203|0|15.998||32|12.706|0.472|0|8.907||32|16.721|0.196|0|15.764||32|12.385|0.436|0|8.612||32|16.509|0.2|0|15.561||32|12.117|0.409|0|8.352||32|16.323|0.206|0|15.379||32|11.845|0.376|0|8.032||32|16.117|0.206|0|15.213||32|11.578|0.342|0|7.734||32|15.875|0.196|0|15.057||32|11.332|0.314|0|7.517||32|20.445|||3.381|11|0|55275.28745078|55277.20605032|55276.24819836||||2.99499989|9|0|55275.28745078|55277.20605032|55276.24819836|11.584|0.783|0.167|2.83699989|19|2|55275.28745078|55277.20605032|55276.23172471|9.842|3.284|0.7|4.09700012|13|0|55275.28745078|55277.20605032|55276.23172471|5|-26|4|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005652|1|0.0006259710004488|0.0016400942264564|-0.99999845912443|101000000|
+J212320.58-895357.4|320.8357624|-89.8992789|0.3338|0.3168|-0.1049|303.0211745|-27.1901054|270.1958214|-66.4969765|1956.189|599.23|3004089401241004639|3004m894_ab41-004639|3004m894_ab41|4639|16.026|0.06|18.2|0.861999989|15.846|0.125|8.7|0.853699982|12.389||2.0|0.916499972|9.363||0.3|0.948000014|0.891200006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|17|23|3|23|0|21|0|22|26.54|26.683|25.666|25.287|0.0|0.0|0.0|0.0|0||0||0||0||61.5950012|3.38960004|9.249|2.928|0.0|28.9489994|3.33990002|21.741|3.316|0.0|87.2659988|44.1209984|1098.989|24.461|0.0|3.52670002|12.4860001|298.287|9.728|0.908|15.881|0.117|1|0.261|15.788|0.25|1|0.319|12.107||32|0.825|9.108||32|0.576|16.51|0.117|1|16.524|0.262|1|13.403||32|10.416||32|16.142|0.117|1|16.107|0.25|1|12.932||32|9.684||32|16.011|0.133|1|15.955|0.281|1|12.56||32|9.542||32|15.897|0.149|1|15.866|0.322|1|12.242||32|8.867||32|15.728|0.153|1|15.693|0.331|1|11.92||32|8.47||32|15.493|0.146|1|15.439|0.31|1|12.349|0.535|1|8.126||32|15.26|0.137|1|15.235|0.299|1|11.981|0.444|1|7.848||32|15.12|0.139|1|15.146|0.318|1|11.687|0.39|1|7.656||32|15.989|0.192|0.04|1.485|22|0|55275.28745078|55277.33835439|55276.35461406|15.853|0.608|0.127|1.90499997|20|0|55275.28745078|55277.33835439|55276.35461406|12.91|2.791|0.609|1.66900003|9|0|55275.28745078|55277.33835439|55276.31132604||||4.05900002|11|0|55275.28745078|55277.33835439|55276.34297749|-1|43|21|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004639|1|0.0013629787476115|-0.0011102024473467|-0.999998454868536|131000000|
+J121423.25-895357.1|183.5969072|-89.8991972|1.0102|0.9202|0.2172|302.9137016|-27.0286668|269.7471496|-66.5541812|2268.76|496.648|2403089401241005573|2403m894_ab41-005573|2403m894_ab41|5573|17.572|0.186|5.8|0.988600016|16.478|0.236|4.6|1.00999999|12.634||0.7|0.924099982|9.44||-0.7|0.965699971|0.969099998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|1|23|2|23|0|23|0|23|22.935|23.466|22.911|23.209|0.0|0.0|0.0|0.0|0||0||0||0||14.8299999|2.53839993|9.431|2.668|0.017|16.1800003|3.5151999|21.858|3.378|0.244|37.4510002|51.2869987|1095.138|26.063|1.893|-9.18080044|13.2720003|298.95|10.214|0.876|16.366|0.237|1|0.261|15.351|0.177|1|0.319|12.377|0.36|1|0.825|8.642||32|0.576|17.435|0.355|1|16.394|0.246|1|13.951|0.514|1|9.696||32|16.627|0.237|1|15.67|0.177|1|13.202|0.36|1|9.218||32|16.05|0.181|1|15.207|0.15|1|12.741|0.305|1|8.843||32|15.72|0.165|1|14.914|0.141|1|12.504|0.303|1|8.616||32|15.576|0.174|1|14.74|0.145|1|12.402|0.333|1|8.514||32|15.49|0.19|1|14.605|0.152|1|12.306|0.359|1|8.377||32|15.332|0.191|1|14.43|0.151|1|12.144|0.36|1|8.409||32|15.01|0.163|1|14.19|0.139|1|11.949|0.345|1|9.376||32|17.521|1.209|0.252|3.767|17|1|55274.89041135|55276.94144233|55275.89724414|16.353|1.107|0.231|2.60800004|17|0|55274.89041135|55276.94144233|55275.89724414|13.252|3.541|0.738|2.43400002|11|0|55274.89041135|55276.94144233|55275.89724414||||3.95099998|10|0|55274.89041135|55276.94144233|55275.89724414|0|-33|-96|0|0|2|||||||||||||||||||||||||||||0|||||||2403089401241005573|1|-0.001755874680705|-0.0001103751146121|-0.999998452359522|121000000|
+J154511.72-895357.0|236.298853|-89.8991713|0.322|0.3494|0.085|303.0097633|-27.054923|269.8598271|-66.4767624|2066.728|615.342|2403089401241004582|2403m894_ab41-004582|2403m894_ab41|4582|16.066|0.059|18.5|0.938899994|16.271|0.206|5.3|0.806200027|12.314|0.288|3.8|1.097|9.368||-1.0|1.14100003|0.988799989|1|0|0.0|0.0|0.0|0.003|0000|h000|0|0nnn|ABBU|7|0000|17|20|1|20|1|19|0|19|21.677|21.928|21.225|21.442|0.0|0.0|0.0|0.0|8|h|0||0||0||59.3709984|3.20910001|9.381|2.566|0.195|19.5650005|3.72119999|21.766|3.325|0.0|188.039993|49.9659996|1095.091|25.033|4.295|-13.9379997|14.1820002|298.49|9.891|1.004|16.184|0.317|1|0.261|16.025|0.475|1|0.319|12.39|0.47|1|0.825|8.849||32|0.576|16.793|0.311|1|16.118||32|13.081||32|9.957||32|16.445|0.317|1|16.344|0.475|1|13.215|0.47|1|9.425||32|16.341|0.372|1|16.025|0.457|1|12.732|0.389|1|8.881||32|16.303|0.445|1|15.771|0.448|1|12.354|0.34|1|8.456||32|16.309|0.54|1|15.553|0.442|1|12.022|0.303|1|8.155||32|15.5||32|15.379|0.444|1|11.732|0.273|1|7.907||32|15.444||32|15.239|0.455|1|11.495|0.255|1|7.667||32|15.374||32|15.119|0.467|1|11.287|0.242|1|7.465||32|16.078|0.242|0.054|1.141|19|0|55275.02271543|55276.94144233|55276.02178915|16.237|1.009|0.226|3.92199993|16|0|55275.02271543|55276.94144233|55276.02178915|12.157|1.138|0.261|2.42400002|15|0|55275.02271543|55276.94144233|55275.99079813||||1.63100004|6|0|55275.02271543|55276.94144233|55275.99079813|20|-3|63|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004582|1|-0.0009764401766045|-0.0014640467841449|-0.999998451564599|121000000|
+J103304.01-895356.9|158.26671|-89.899145|0.2898|0.2734|-0.0426|302.8676266|-27.0451171|269.7641227|-66.5978772|2146.959|596.823|1802089401241004202|1802m894_ab41-004202|1802m894_ab41|4202|15.73|0.053|20.6|1.14199996|15.637|0.12|9.0|0.849300027|13.005||0.0|1.01699996|9.37||-0.1|1.03100002|1.00600004|2|0|0.0|0.0|0.0|0.0|0000|0000|0|21nn|ABUU|3|0000|15|20|6|20|0|20|0|20|22.068|22.175|21.817|21.464|0.0|0.0|0.0|0.0|0||0||0||0||80.9150009|3.92079997|9.429|2.81|0.099|35.0929985|3.88649988|21.777|3.443|0.036|0.239879996|49.6389999|1096.048|25.514|4.749|-1.67999995|14.1569996|298.185|10.009|1.639|15.406|0.048|0|0.261|15.006|0.131|0|0.319|11.937||32|0.825|8.459||32|0.576|16.13|0.054|0|15.925|0.164|0|13.194||32|9.472||32|15.667|0.048|0|15.325|0.131|0|12.762||32|9.035||32|15.377|0.047|0|14.943|0.119|0|12.419||32|8.689||32|15.051|0.043|1|14.611|0.108|1|12.153||32|8.396||32|14.569|0.034|1|14.188|0.089|1|11.912||32|8.135||32|13.875|0.022|1|13.593|0.061|1|11.671||32|7.899||32|13.063|0.013|1|12.896|0.038|1|11.439||32|7.683||32|12.35|0.009|1|12.281|0.025|1|11.233||32|7.484||32|15.751|0.285|0.064|1.222|19|2|55274.89041135|55276.94144233|55275.93579789|15.626|0.632|0.141|3.52800012|19|1|55274.89041135|55276.94144233|55275.93579789|14.23|7.656|1.712|3.7190001|11|0|55274.89041135|55276.94144233|55275.93579789||||1.72099996|7|0|55274.89041135|55276.94144233|55275.93579789|27|-4|5|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004202|1|-0.0016351280996495|0.0006517972502815|-0.999998450757021|111000000|
+J194843.14-895356.6|297.17975|-89.8990742|0.1032|0.1025|-0.0191|303.0418182|-27.1530768|270.1154798|-66.4708849|2063.125|615.832|3004089401241004046|3004m894_ab41-004046|3004m894_ab41|4046|13.647|0.025|43.5|0.838699996|13.721|0.033|32.5|0.9005|12.435|0.291|3.7|0.963699996|9.429||-0.3|1.05900002|0.936200023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|22|22|22|22|2|21|0|21|23.15|23.32|23.518|23.347|0.0|0.0|0.0|0.0|0||0||0||0||551.140015|12.6660004|9.314|2.88|0.808|204.910004|6.296|21.762|3.44|0.0|168.300003|45.1479988|1097.478|25.06|2.14|-3.71210003|13.4060001|298.358|9.874|0.722|13.631|0.016|1|0.261|13.712|0.033|1|0.319|12.647|0.529|1|0.825|8.781||32|0.576|14.265|0.016|0|14.474|0.036|0|13.247||32|9.794||32|13.892|0.016|1|14.031|0.033|1|13.472|0.529|1|9.357||32|13.725|0.017|1|13.817|0.034|1|12.969|0.431|1|9.011||32|13.593|0.018|1|13.644|0.036|1|12.579|0.373|1|8.716||32|13.444|0.019|1|13.459|0.036|1|12.248|0.332|1|8.455||32|13.299|0.02|1|13.296|0.037|1|11.975|0.305|1|8.22||32|13.19|0.02|1|13.188|0.039|1|11.807|0.304|1|8.004||32|13.119|0.022|1|13.122|0.042|1|11.712|0.321|1|7.804||32|13.649|0.042|0.009|0.17|21|0|55275.28745078|55277.33835439|55276.28282193|13.719|0.065|0.014|0.238999993|21|0|55275.28745078|55277.33835439|55276.28282193|12.217|1.312|0.286|4.96700001|13|0|55275.28745078|55277.33835439|55276.26721256|9.986|3.581|0.781|4.04099989|9|0|55275.28745078|55277.33835439|55276.26721256|18|-9|-38|0|0|0||||||||||||||||||||||||||1126874206|0.076|-160.0|1|14.224|0.032|13.796|0.041|13.697|0.048|3004089401241004046|1|0.0008046182964873|-0.0015669798617019|-0.999998448580552|131000000|
+J003923.38-895356.4|9.8474364|-89.8990068|0.0687|0.075|-0.0083|302.9378842|-27.2290099|270.2503259|-66.5777818|2002.773|612.543|89401241004091|0000m894_ab41-004091|0000m894_ab41|4091|10.24|0.023|48.2|0.997500002|10.331|0.02|53.9|1.20799994|10.241|0.044|24.7|1.01600003|9.473||0.2|1.09800005|1.07599998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|000n|AAAU|7|0000|22|22|22|22|19|21|0|21|21.883|21.638|20.985|20.818|0.0|0.0|0.0|0.0|0||0||0||0||12703.0|263.640015|9.319|2.723|0.082|4652.7002|86.2809982|21.777|3.376|0.006|1269.0|51.4679985|1098.576|23.176|1.672|2.13540006|11.809|298.802|9.547|0.748|10.241|0.006|0|0.261|10.323|0.006|0|0.319|10.367|0.061|0|0.825|8.792||32|0.576|10.87|0.006|0|11.078|0.006|0|11.794|0.076|0|9.801||32|10.502|0.006|0|10.642|0.006|0|11.192|0.061|0|9.368||32|10.371|0.006|0|10.476|0.006|0|10.857|0.059|0|9.024||32|10.317|0.006|1|10.408|0.006|1|10.662|0.061|1|8.646||32|10.288|0.006|1|10.372|0.006|1|10.542|0.065|1|8.191||32|10.267|0.006|1|10.345|0.007|1|10.459|0.071|1|7.816||32|10.246|0.006|1|10.322|0.007|1|10.388|0.077|1|7.516||32|10.228|0.006|1|10.3|0.007|1|10.325|0.084|1|7.275||32|10.244|0.014|0.003|0.102|21|0|55275.28745078|55277.33835439|55276.34599308|10.336|0.03|0.006|0.0920000002|20|0|55275.28745078|55277.33835439|55276.34599308|10.225|0.174|0.038|0.59799999|20|0|55275.28745078|55277.33835439|55276.33339187|10.562|7.044|1.537|4.58900023|8|0|55275.28745078|55277.33835439|55276.33339187|20|24|-21|0|0|0||||||||||||||||||||||||||1085364212|0.223|-99.5|1|11.087|0.023|10.514|0.027|10.353|0.025|89401241004091|1|0.0017366930801409|0.0003014599388715|-0.999998446508319|101000000|
+J024536.46-895356.0|41.401936|-89.8989098|0.9103|0.9204|0.2946|302.8776004|-27.21695|270.1911398|-66.6274475|2132.818|602.741|600089401241005152|0600m894_ab41-005152|0600m894_ab41|5152|17.612|0.185|5.9|0.758300006|17.071|0.379|2.9|0.944899976|12.288|0.231|4.7|1.06599998|9.546|0.519|2.1|0.967599988|0.92900002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCBC|15|0000|1|24|1|24|1|22|0|23|24.6|24.558|23.899|23.789|0.0|0.0|0.0|0.0|0||0||0||0||14.3000002|2.43339992|9.311|2.729|0.034|9.36279964|3.2644999|21.732|3.266|0.146|192.679993|40.9910011|1099.128|21.863|3.796|24.0779991|11.5139999|298.682|9.268|1.324|16.594||32|0.261|15.818||32|0.319|12.448||32|0.825|8.829||32|0.576|17.145||32|16.514||32|13.816||32|9.735||32|16.855||32|16.137||32|13.273||32|9.405||32|16.765||32|15.957||32|12.774||32|9.151||32|18.578||32|15.852||32|12.98|0.465|1|8.854||32|16.624||32|15.685||32|12.422|0.336|1|8.592||32|16.443||32|15.393||32|11.998|0.268|1|8.355||32|16.126||32|15.061||32|11.676|0.232|1|8.138||32|15.829||32|15.547|0.542|1|11.444|0.216|1|7.938||32|17.64|1.083|0.221|2.711|18|0|55275.28745078|55277.33835439|55276.3515125|17.252|2.412|0.492|2.68300009|13|0|55275.28745078|55277.33835439|55276.3515125|12.076|0.962|0.205|2.58999991|16|0|55275.28745078|55277.33835439|55276.30991016|9.503|1.948|0.406|2.93600011|14|0|55275.28745078|55277.33835439|55276.34024702|25|-3|13|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005152|1|0.0013234237123445|0.0011668344268569|-0.999998443522338|101000000|
+J161359.16-895355.9|243.4965126|-89.8988801|0.2969|0.3253|0.0696|303.0197098|-27.0639957|269.8869689|-66.4701751|2033.547|616.376|2403089401241004558|2403m894_ab41-004558|2403m894_ab41|4558|15.975|0.054|20.1|0.997900009|16.169|0.184|5.9|0.937099993|12.616||0.7|0.968900025|9.535||-0.2|1.00899994|0.974900007|1|0|0.0|0.0|0.0|0.001|0000|h000|0|0nnn|ABUU|3|0000|18|21|1|21|1|20|0|20|21.727|22.242|21.707|21.697|0.0|0.0|0.0|0.0|8|h|0||0||0||64.5390015|3.21460009|9.371|2.539|0.207|21.507|3.64179993|21.86|3.327|0.056|37.3580017|52.5349998|1095.733|25.766|2.338|-2.0085001|12.1630001|298.419|9.683|0.563|16.086|0.255|1|0.261|15.859|0.4|1|0.319|12.252||32|0.825|8.912||32|0.576|16.69|0.251|0|16.787|0.503|0|13.451||32|9.923||32|16.347|0.255|1|16.178|0.4|1|13.077||32|9.488||32|16.169|0.28|1|15.818|0.372|1|14.023||32|9.143||32|15.915|0.274|1|15.543|0.357|1|12.663||32|8.849||32|15.622|0.253|1|15.315|0.349|1|12.458||32|8.589||32|15.434|0.251|1|15.185|0.366|1|12.277||32|8.353||32|15.382|0.277|1|15.138|0.407|1|12.114||32|8.138||32|15.399|0.324|1|15.131|0.466|1|11.961||32|7.939||32|15.971|0.209|0.046|0.744|20|0|55275.02271543|55276.94144233|55275.98681459|16.033|0.683|0.149|3.89899993|19|0|55275.02271543|55276.94144233|55275.98681459|13.408|2.712|0.607|4.04199982|10|0|55275.02271543|55276.94144233|55275.9556244||||2.82999992|9|0|55275.02271543|55276.94144233|55275.9556244|-11|-14|-33|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004558|1|-0.0007875793704008|-0.0015793990880758|-0.999998442607415|121000000|
+J151939.90-895355.5|229.9162846|-89.8987758|1.0616|1.1366|0.3455|303.0004049|-27.047359|269.8366518|-66.4831766|2096.073|612.645|2403089401241006011|2403m894_ab41-006011|2403m894_ab41|6011|17.684|0.205|5.3|0.870299995|16.908|0.352|3.1|0.942399979|12.468||1.7|1.18200004|8.784||1.9|1.00600004|0.994799972|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BBUU|3|0000|1|22|0|22|1|21|0|21|22.048|21.848|21.259|22.251|0.0|0.0|0.0|0.0|8|h|0||0||0||13.3739996|2.52519989|9.689|2.615|0.0|10.8800001|3.52640009|21.744|3.295|0.0|74.0199966|44.5800018|1096.235|25.201|0.0|23.5860004|12.4940004|297.602|9.701|0.364|16.976||32|0.261|16.102||32|0.319|11.877||32|0.825|8.683||32|0.576|17.535||32|16.676||32|13.205||32|9.658||32|17.237||32|16.421||32|12.702||32|9.259||32|17.001||32|16.159||32|12.32||32|8.986||32|16.635||32|15.813||32|12.06||32|8.81||32|16.726|0.446|1|15.382||32|11.876||32|8.661||32|15.812|0.227|1|14.911||32|11.712||32|8.43||32|15.131|0.141|1|15.037|0.357|1|11.57||32|8.218||32|14.686|0.108|1|14.608|0.276|1|11.452||32|8.021||32|17.491|0.691|0.147|2.644|17|0|55274.89041135|55276.94144233|55275.99412384|16.831|2.065|0.44|2.69199991|12|0|55274.89041135|55276.94144233|55275.99412384|12.53|1.692|0.369|2.14199996|11|0|55274.89041135|55276.94144233|55275.96476696|9.387|1.969|0.43|2.81699991|11|0|55274.89041135|55276.94144233|55275.96476696|-12|-21|38|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241006011|1|-0.0011375850799541|-0.0013517052656916|-0.999998439395313|121000000|
+J005940.39-895354.8|14.9183163|-89.8985658|0.7214|0.6965|0.1838|302.9278178|-27.2295251|270.2466656|-66.5866287|1979.625|608.642|89401241005141|0000m894_ab41-005141|0000m894_ab41|5141|17.041|0.117|9.3|0.815699995|16.635||1.9|0.809099972|12.515||1.6|1.10500002|9.516||-0.2|0.971199989|0.921500027|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|22|1|22|1|21|0|21|21.653|21.118|20.944|20.892|0.0|0.0|0.0|0.0|0||0||0||0||24.1940002|2.61120009|9.234|2.7|0.076|6.90220022|3.5480001|21.768|3.363|0.047|69.6740036|43.3510017|1099.551|23.16|0.404|-1.87909997|12.3760004|298.851|9.549|0.389|16.37|0.316|1|0.261|15.915|0.352|1|0.319|12.54||32|0.825|8.605||32|0.576|17.222|0.389|1|17.027|0.524|1|13.869||32|9.722||32|16.631|0.316|1|16.234|0.352|1|13.365||32|9.181||32|16.108|0.252|1|15.622|0.259|1|12.899||32|8.801||32|15.49|0.177|1|15.049|0.189|1|12.532||32|8.503||32|14.848|0.118|1|14.488|0.136|1|12.255||32|8.188||32|14.284|0.083|1|13.983|0.101|1|12.073||32|7.924||32|13.761|0.06|1|13.492|0.075|1|11.9||32|7.748||32|13.114|0.038|1|12.892|0.05|1|11.679||32|7.566||32|17.043|0.463|0.099|3.017|21|0|55275.28745078|55277.33835439|55276.34599308|17.193|2.398|0.511|3.55900002|13|0|55275.28745078|55277.33835439|55276.34599308|12.839|2.516|0.549|4.96600008|12|0|55275.28745078|55277.33835439|55276.33339187||||2.75200009|8|0|55275.28745078|55277.33835439|55276.33339187|-24|-36|44|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005141|1|0.0017106885517837|0.000455764667992|-0.999998432910395|101000000|
+J050540.66-895353.9|76.41943|-89.8983253|0.8571|0.9307|0.1375|302.8295817|-27.1733911|270.0602595|-66.6595293|1973.168|607.493|600089401241005030|0600m894_ab41-005030|0600m894_ab41|5030|17.497|0.178|6.1|0.91109997|17.206|0.489|2.2|0.805299997|11.999|0.188|5.8|1.26400006|9.31||0.5|1.13699996|1.00899994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn2n|BCBU|7|0000|1|22|1|22|4|20|0|21|22.738|22.711|21.861|21.796|0.0|0.0|0.0|0.0|0||0||0||0||15.8909998|2.60030007|9.386|2.85|0.224|8.27000046|3.72250009|21.745|3.567|0.0|251.509995|43.5050011|1098.208|22.324|2.677|6.37559986|11.7709999|298.122|9.112|1.499|17.206|0.411|1|0.261|16.055|0.32|1|0.319|12.125||32|0.825|8.791||32|0.576|17.798|0.402|0|16.986|0.405|0|13.328||32|9.8||32|17.467|0.411|1|16.374|0.32|1|12.95||32|9.367||32|17.471|0.538|1|16.01|0.298|1|12.609||32|9.06||32|16.679||32|15.771|0.296|1|12.334||32|8.537||32|16.65||32|15.616|0.309|1|12.111||32|8.183||32|16.602||32|15.527|0.336|1|11.918||32|7.899||32|16.493||32|15.476|0.373|1|11.721||32|7.644||32|16.321||32|15.439|0.415|1|11.499||32|7.419||32|17.535|0.978|0.208|2.926|17|0|55275.28745078|55277.20605032|55276.21969707|17.219|1.867|0.398|3.13199997|12|0|55275.28745078|55277.20605032|55276.21969707|11.93|1.344|0.3|3.3440001|15|3|55275.28745078|55277.20605032|55276.16736816|10.096|4.294|0.937|2.4289999|10|0|55275.28745078|55277.20605032|55276.20108177|14|17|-24|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005030|1|0.000416688071856|0.0017249412817006|-0.999998425473073|101000000|
+J060003.98-895353.9|90.0166079|-89.8983217|0.355|0.3897|-0.0619|302.820505|-27.1507133|269.9999256|-66.6623871|1915.202|582.75|600089401241004451|0600m894_ab41-004451|0600m894_ab41|4451|16.202|0.069|15.7|0.866100013|16.128|0.193|5.6|0.850000024|11.558|0.13|8.4|1.153|8.785||1.9|0.872099996|0.930199981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1n0n|ABBU|7|0000|12|21|1|21|4|20|0|20|22.189|22.403|21.133|20.994|0.0|0.0|0.0|0.0|0||0||0||0||52.4080009|3.33159995|9.409|2.908|0.0|22.3360004|3.9697001|21.698|3.597|0.076|377.269989|45.1220016|1099.084|23.245|2.208|23.5389996|12.4860001|298.414|9.51|0.382|15.691|0.084|1|0.261|15.439|0.163|1|0.319|11.481||32|0.825|8.568||32|0.576|16.483|0.098|1|16.367|0.202|1|12.758||32|9.583||32|15.952|0.084|1|15.758|0.163|1|12.306||32|9.144||32|15.653|0.082|1|15.432|0.155|1|12.044||32|8.799||32|15.489|0.087|1|15.275|0.167|1|11.891||32|8.505||32|15.39|0.096|1|15.199|0.188|1|11.803||32|8.245||32|15.236|0.098|1|15.082|0.199|1|11.716||32|8.01||32|14.935|0.087|1|14.827|0.184|1|11.581||32|7.795||32|14.541|0.069|1|14.475|0.153|1|11.415||32|7.596||32|16.209|0.322|0.07|1.529|20|0|55275.28745078|55277.20605032|55276.18847532|16.061|0.725|0.158|2.523|17|0|55275.28745078|55277.20605032|55276.18847532|11.573|0.61|0.136|3.64899993|18|2|55275.28745078|55277.20605032|55276.16736816|9.784|2.26|0.505|2.96399999|13|0|55275.28745078|55277.20605032|55276.16736816|-28|4|-29|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241004451|1|-0.0000005143961189|0.0017746192542547|-0.999998425361879|111000000|
+J155422.94-895353.7|238.595621|-89.8982583|0.6504|0.6978|0.1738|303.013731|-27.0571207|269.8671861|-66.4738149|2056.234|618.27|2403089401241005151|2403m894_ab41-005151|2403m894_ab41|5151|16.985|0.114|9.5|0.768100023|16.695|0.299|3.6|0.968100011|12.303||1.8|1.02699995|8.957||0.9|0.905799985|0.912299991|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BBUU|3|0000|3|20|1|20|1|19|0|19|21.372|21.592|21.544|21.42|0.0|0.0|0.0|0.0|8|h|0||0||0||25.4769993|2.68449998|9.366|2.585|0.0|13.2410002|3.64619994|21.784|3.335|0.0|89.5449982|50.2799988|1095.12|25.225|0.0|13.0150003|14.2069998|298.884|10.126|0.517|16.54|0.276|1|0.261|16.08|0.408|1|0.319|12.577|0.501|1|0.825|8.381||32|0.576|17.322|0.316|1|17.045|0.525|1|13.319||32|9.413||32|16.801|0.276|1|16.399|0.408|1|13.402|0.501|1|8.957||32|16.423|0.252|1|15.996|0.364|1|12.769|0.362|1|8.632||32|16.02|0.216|1|15.727|0.352|1|12.299|0.292|1|8.373||32|15.649|0.185|1|15.494|0.342|1|11.906|0.245|1|8.199||32|15.362|0.167|1|15.25|0.322|1|11.59|0.216|1|8.024||32|15.126|0.157|1|14.993|0.295|1|11.326|0.198|1|7.833||32|14.898|0.146|1|14.712|0.262|1|11.086|0.182|1|7.683||32|16.99|0.545|0.122|1.745|18|0|55275.02271543|55276.94144233|55276.02178915|17.113|2.117|0.473|3.31800008|13|1|55275.02271543|55276.94144233|55276.02178915|12.966|2.249|0.516|3.87599993|10|0|55275.02271543|55276.94144233|55275.99079813|9.801|3.639|0.835|2.1960001|9|0|55275.02271543|55276.94144233|55275.99079813|-29|-36|55|0|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005151|1|-0.0009252864846693|-0.0015156021166625|-0.99999842339633|121000000|
+J040213.78-895352.9|60.5574341|-89.8980325|1.082|1.154|0.4145|302.847126|-27.196759|270.1264578|-66.6494564|2048.871|85.086|2403089401241005911|2403m894_ab41-005911|2403m894_ab41|5911|18.309|0.373|2.9|1.02699995|16.656|0.266|4.1|0.861000001|12.054|0.191|5.7|1.05299997|9.271||0.8|1.13900006|1.01600003|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|CBBU|7|0000|0|24|1|24|2|23|0|23|23.675|23.55|22.921|22.692|0.0|0.0|0.0|0.0|1161|DH|1161|DH|0||0||7.52479982|2.58669996|9.337|2.672|0.044|13.7299995|3.36940002|21.739|3.223|0.052|239.089996|42.1409988|1100.104|22.569|1.474|8.78419971|11.1120005|298.507|9.137|0.689|13.947|0.025|1|0.261|13.89|0.039|1|0.319|11.975|0.302|1|0.825|8.406||32|0.576|15.174|0.042|1|15.158|0.067|1|13.656|0.475|1|9.632||32|14.208|0.025|1|14.209|0.039|1|12.8|0.302|1|8.982||32|13.507|0.017|1|13.51|0.027|1|12.178|0.221|1|9.111|0.477|1|12.963|0.013|1|12.955|0.02|1|11.682|0.173|1|8.473|0.341|1|12.5|0.011|1|12.464|0.016|1|11.249|0.14|1|7.982|0.272|1|11.982|0.009|1|11.905|0.012|1|10.804|0.11|1|7.642|0.243|1|11.27|0.007|1|11.143|0.008|1|10.293|0.08|1|7.434|0.242|1|10.352|0.006|1|10.238|0.006|1|9.751|0.056|1|7.301|0.254|1|18.495|3.229|0.659|2.266|14|0|55275.28745078|55277.33835439|55276.29362153|16.968|1.795|0.366|4.17299986|18|1|55275.28745078|55277.33835439|55276.29362153|11.987|0.96|0.2|5.74399996|18|0|55275.28745078|55277.33835439|55276.27983905|10.159|5.153|1.075|3.82200003|11|0|55275.28745078|55277.33835439|55276.27983905|10|-24|-44|0|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005911|1|0.0008747972902284|0.0015498217991291|-0.999998416389792|101000000|
+J025435.46-895352.8|43.6477715|-89.898009|0.8494|0.8678|0.29|302.873211|-27.2157611|270.1860588|-66.6309955|1971.164|96.313|2403089401241005957|2403m894_ab41-005957|2403m894_ab41|5957|18.859||-5.4|0.868200004|17.464||-2.1|0.999000013|11.863|0.152|7.1|0.987200022|8.929||1.9|1.00999999|0.962899983|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|0|24|2|23|0|23|24.664|24.749|23.993|23.789|0.0|0.0|0.0|0.0|0||0||0||0||-12.2589998|2.26659989|9.321|2.826|0.0|-6.82579994|3.26119995|21.765|3.375|0.0|284.869995|39.9700012|1099.486|22.352|0.0|20.9729996|10.7559996|298.244|9.089|0.743|17.265||32|0.261|16.489||32|0.319|11.968||32|0.825|8.638||32|0.576|17.891||32|17.286||32|13.22||32|9.765||32|17.526||32|16.808||32|12.793||32|9.214||32|17.177||32|16.279||32|12.478||32|8.843||32|16.432||32|16.426|0.518|1|12.208||32|8.618||32|16.486|0.403|1|15.696|0.318|1|11.97||32|8.44||32|15.98|0.299|1|15.198|0.237|1|11.802||32|8.288||32|15.618|0.25|1|14.837|0.198|1|11.693||32|8.117||32|15.322|0.219|1|14.529|0.172|1|11.576||32|7.893||32||||2.301|3|0|55275.28745078|55277.33835439|55276.29362153||||3.27900004|6|0|55275.28745078|55277.33835439|55276.29362153|11.796|0.629|0.131|2.01900005|19|0|55275.28745078|55277.33835439|55276.27983905|9.672|2.652|0.553|3.59200001|12|0|55275.28745078|55277.33835439|55276.27983905||37|13||0|0|||||||||||||||||||||||||||||0|||||||2403089401241005957|1|0.001288058731144|0.001228651231234|-0.999998415659173|101000000|
+J173736.20-895352.7|264.4008452|-89.8979967|0.5276|0.5766|-0.1082|303.0406|-27.0958183|269.9750821|-66.4591903|1782.34|379.365|1802089401241005742|1802m894_ab41-005742|1802m894_ab41|5742|16.75|0.092|11.8|0.951600015|17.159|0.421|2.6|1.24000001|12.917||-1.6|1.14400005|9.4||0.1|0.996699989|1.079|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACUU|3|0000|8|23|1|23|0|21|1|22|22.803|22.701|22.045|22.507|0.0|0.0|0.0|0.0|0||0||0||0||31.6350002|2.67059994|9.383|2.565|0.0|8.64019966|3.3506|21.777|3.358|0.0|-85.3150024|53.9609985|1096.329|25.999|1.416|1.48660004|13.0240002|298.72|9.822|1.182|16.26||32|0.261|16.335|0.435|1|0.319|12.673||32|0.825|8.433||32|0.576|16.837||32|17.251|0.538|0|13.864||32|9.448||32|16.521||32|16.654|0.435|1|13.498||32|9.009||32|16.336||32|16.237|0.381|1|13.224||32|8.663||32|16.064||32|15.809|0.319|1|12.99||32|8.37||32|16.49|0.542|1|15.451|0.277|1|12.786||32|8.109||32|16.276|0.525|1|15.2|0.26|1|12.605||32|7.874||32|15.525||32|15.015|0.255|1|12.441||32|7.658||32|15.579||32|14.805|0.241|1|12.29||32|7.458||32|16.762|0.524|0.109|2.816|22|1|55275.02271543|55277.20605032|55276.08995615|17.681|3.758|0.784|4.79099989|11|4|55275.02271543|55277.20605032|55276.08995615||||4.50299978|7|0|55275.28732341|55277.20605032|55276.11598369|11.193|||4.55200005|9|0|55275.02271543|55277.20605032|55276.06628968|-52|-93|-98|1|2|0|||||||||||||||||||||||||||||0|||||||1802089401241005742|1|-0.0001736999315424|-0.0017717980735959|-0.999998415278704|121000000|
+J121016.20-895350.8|182.5675178|-89.897468|0.4275|0.3882|0.0946|302.9113514|-27.0272726|269.7425453|-66.5559047|2037.269|620.243|1802089401241004533|1802m894_ab41-004533|1802m894_ab41|4533|16.39|0.073|15.0|0.992200017|15.956|0.158|6.9|0.947399974|12.629|0.418|2.6|1.00699997|9.377||0.2|1.028|0.99119997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABCU|7|0000|11|22|2|22|1|22|0|22|22.779|23.024|22.93|23.102|0.0|0.0|0.0|0.0|0||0||0||0||44.0359993|2.9440999|9.474|2.728|0.041|26.1490002|3.80599999|21.84|3.429|0.04|140.679993|54.1559982|1095.269|26.076|4.322|2.76329994|12.6829996|298.134|9.904|1.411|16.038|0.141|0|0.261|15.513|0.22|0|0.319|12.338|0.349|0|0.825|8.711||32|0.576|16.775|0.155|0|16.376|0.257|0|13.765|0.431|0|9.653||32|16.299|0.141|0|15.832|0.22|0|13.163|0.349|0|9.287||32|16.041|0.144|1|15.547|0.219|1|12.822|0.33|1|9.055||32|15.826|0.146|1|15.352|0.227|1|12.663|0.353|1|8.761||32|15.552|0.137|1|15.151|0.227|1|12.585|0.397|1|8.499||32|15.23|0.12|1|14.883|0.209|1|12.469|0.42|1|8.264||32|14.901|0.103|1|14.569|0.183|1|12.377|0.45|1|8.048||32|14.565|0.087|1|14.255|0.158|1|12.32|0.492|1|7.848||32|16.375|0.407|0.087|1.62|21|1|55274.89041135|55276.94144233|55275.90993036|15.896|0.62|0.132|2.829|19|0|55274.89041135|55276.94144233|55275.90993036|12.256|1.307|0.279|2.18600011|13|0|55274.89041135|55276.94144233|55275.90993036|10.809|6.924|1.476|3.94899988|11|0|55274.89041135|55276.94144233|55275.90993036|25|36|-65|1|1|1|||||||||||||||||||||||||||||0|||||||1802089401241004533|1|-0.001787724392908|-0.0000801645265976|-0.99999839880629|121000000|
+J013945.30-895350.6|24.9387632|-89.8974156|0.9292|0.8866|0.2792|302.9077735|-27.2284674|270.2342548|-66.6037891|1934.746|595.563|89401241005630|0000m894_ab41-005630|0000m894_ab41|5630|17.418|0.166|6.5|0.833700001|17.431||-0.1|0.881099999|12.372|0.263|4.1|1.11899996|9.442|0.462|2.4|0.967199981|0.946399987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBC|13|0000|2|23|0|23|0|22|0|22|23.813|23.67|22.946|22.761|0.0|0.0|0.0|0.0|0||0||0||0||17.0939999|2.61490011|9.282|2.8|0.0|-0.321260005|3.36209989|21.745|3.327|0.042|178.259995|43.2389984|1099.968|23.241|2.737|26.5039997|11.2720003|298.548|9.468|1.046|16.768|0.208|1|0.261|16.339||32|0.319|12.698|0.489|1|0.825|8.511||32|0.576|17.522|0.234|1|17.04||32|13.397||32|9.572||32|17.029|0.208|1|16.658||32|13.523|0.489|1|9.087||32|16.645|0.19|1|16.326||32|13.061|0.416|1|8.79||32|16.244|0.163|1|15.962||32|12.788|0.401|1|8.598||32|15.818|0.133|1|15.593||32|12.577|0.398|1|8.434||32|15.381|0.106|1|15.887|0.46|1|12.352|0.383|1|9.186||32|14.954|0.083|1|15.366|0.332|1|12.148|0.369|1|8.11||32|14.604|0.069|1|14.995|0.271|1|11.988|0.366|1|7.911||32|17.371|0.791|0.165|3.425|20|0|55275.28745078|55277.33835439|55276.36900877|20.208|||3.07999992|9|0|55275.28745078|55277.33835439|55276.36900877|12.378|0.955|0.204|3.37299991|18|0|55275.28745078|55277.33835439|55276.35802651|9.516|2.438|0.52|2.39499998|12|0|55275.28745078|55277.33835439|55276.35802651|-47|-12|-6|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005630|1|0.0016234931160983|0.0007549358634646|-0.999998397169688|101000000|
+J131229.85-895350.5|198.1244035|-89.8973738|0.0934|0.0942|-0.013|302.9424876|-27.0259628|269.7551178|-66.5285926|1965.648|607.773|1802089401241003817|1802m894_ab41-003817|1802m894_ab41|3817|12.986|0.025|43.9|0.911199987|13.023|0.027|40.1|1.00999999|12.621||1.0|1.04799998|9.465||-0.3|1.023|0.995199978|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|01nn|AAUU|3|0000|23|23|23|23|0|23|0|23|24.686|24.61|23.917|23.784|0.0|0.0|0.0|0.0|8|h|8|h|0||0||1013.20001|23.0960007|9.488|2.457|0.24|389.619995|9.71339989|21.811|3.147|0.141|48.3139992|46.7330017|1096.366|25.886|3.345|-3.83909988|12.9720001|298.142|10.128|1.53|12.932|0.01|0|0.261|12.955|0.015|0|0.319|12.174||32|0.825|8.851||32|0.576|13.585|0.011|0|13.745|0.017|0|13.307||32|10.799||32|13.193|0.01|0|13.274|0.015|0|12.999||32|9.427||32|13.026|0.011|0|13.053|0.015|0|12.942||32|9.078||32|12.921|0.012|0|12.915|0.016|0|12.711||32|8.785||32|12.824|0.013|0|12.797|0.017|0|12.508||32|8.523||32|12.709|0.014|0|12.671|0.018|0|12.326||32|8.287||32|12.56|0.014|0|12.515|0.018|0|12.16||32|8.071||32|12.355|0.013|1|12.307|0.017|1|12.009||32|7.872||32|12.984|0.038|0.008|0.171|22|0|55274.89041135|55276.94144233|55275.95477317|13.022|0.102|0.021|0.337000012|22|0|55274.89041135|55276.94144233|55275.95477317|12.96|2.116|0.441|2.86299992|12|0|55274.89041135|55276.94144233|55275.95477317|10.796|5.546|1.156|3.5|12|0|55274.89041135|55276.94144233|55275.95477317|10|-38|-49|0|1|1||||||||||||||||||||||||||857883907|0.136|-134.0|1|13.539|0.029|13.14|0.023|13.068|0.04|1802089401241003817|1|-0.001702292570159|-0.0005571975876894|-0.99999839586414|121000000|
+J231509.08-895349.8|348.7878494|-89.897189|0.9815|0.932|-0.102|302.9790736|-27.2220187|270.2533256|-66.5405135|2100.334|616.061|89401241005546|0000m894_ab41-005546|0000m894_ab41|5546|17.487|0.168|6.5|0.951099992|16.893||1.6|1.03699994|12.56||1.7|0.943300009|8.902||1.9|1.00800002|0.98150003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|3|25|1|25|1|24|0|24|24.595|24.805|23.844|23.82|0.0|0.0|0.0|0.0|0||0||0||0||16.0429993|2.47519994|9.279|2.776|0.05|4.91060019|3.06410003|21.763|3.328|0.0|68.9339981|40.4959984|1099.116|23.516|1.28|21.1730003|11.1960001|298.322|9.65|1.061|17.45|0.499|0|0.261|16.326||32|0.319|12.619||32|0.825|8.542||32|0.576|17.868|0.412|0|16.926||32|15.892||32|9.486||32|17.711|0.499|0|16.645||32|13.444||32|9.118||32|16.987||32|16.607||32|13.161||32|8.921||32|17.067||32|16.554||32|12.925||32|8.627||32|17.088||32|16.354||32|12.727||32|8.366||32|16.908||32|15.999||32|12.546||32|8.129||32|16.41||32|15.493||32|12.383||32|7.913||32|16.244|0.394|1|15.439|0.323|1|12.23||32|7.714||32|17.325|0.809|0.162|2.956|19|0|55275.28745078|55277.33835439|55276.36980225|17.834|4.496|0.899|3.41599989|13|0|55275.28745078|55277.33835439|55276.36980225|13.095|2.638|0.539|5.28999996|14|0|55275.28745078|55277.33835439|55276.35976824|9.752|3.293|0.672|3.579|15|0|55275.28745078|55277.33835439|55276.35976824|28|56|34|0|1|0|||||||||||||||||||||||||||||0|||||||89401241005546|1|0.0017601424173097|-0.000348905502978|-0.999998390080514|131000000|
+J104523.90-895349.6|161.3496024|-89.8971173|0.6483|0.586|-0.0493|302.8715456|-27.0404309|269.7546143|-66.5934185|2312.426|403.342|2403089401241004637|2403m894_ab41-004637|2403m894_ab41|4637|16.786|0.106|10.3|1.14999998|16.415|0.241|4.5|0.935800016|12.941||-1.2|0.975799978|9.446||-0.2|0.919700027|0.992200017|1|0|0.0|0.0|0.0|0.0|0000|0000|0|3nnn|ABUU|3|0000|6|21|1|21|0|20|0|21|21.766|21.672|21.148|21.34|0.0|0.0|0.0|0.0|0||0||0||0||30.5849991|2.98280001|9.408|2.836|0.142|17.1410007|3.80960011|21.845|3.502|0.195|-63.3440018|52.7949982|1095.602|25.869|3.783|-2.33850002|13.2010002|298.054|10.082|0.95|14.767|0.041|1|0.261|14.373|0.069|1|0.319|12.223||32|0.825|8.755||32|0.576|16.123|0.079|1|15.741|0.13|1|13.615||32|9.769||32|15.028|0.041|1|14.692|0.069|1|13.048||32|9.331||32|13.95|0.02|1|13.735|0.038|1|12.497||32|9.0||32|12.999|0.012|1|12.906|0.022|1|12.592|0.409|1|8.465||32|12.302|0.009|1|12.287|0.016|1|11.985|0.282|1|8.124||32|11.879|0.008|1|11.89|0.013|1|11.584|0.23|1|7.816||32|11.671|0.007|1|11.67|0.013|1|11.321|0.21|1|7.552||32|11.581|0.008|1|11.559|0.013|1|11.119|0.201|1|7.375||32|16.865|0.705|0.154|3.251|19|3|55274.89041135|55276.94144233|55275.90177109|16.475|1.012|0.221|4.16599989|16|1|55274.89041135|55276.94144233|55275.90177109||||1.403|6|0|55274.89041135|55276.94144233|55275.93579789||||3.78900003|8|0|55274.89041135|55276.94144233|55275.90177109|39|-12|10|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004637|1|-0.001701346768718|0.000574232942518|-0.999998387836551|111000000|
+J124124.15-895348.8|190.3506421|-89.896904|0.2062|0.1979|0.0456|302.92685|-27.0251592|269.7452289|-66.5419786|2000.784|617.772|1802089401241004148|1802m894_ab41-004148|1802m894_ab41|4148|15.385|0.038|28.2|0.897800028|15.517|0.095|11.4|1.04900002|13.105||-1.6|1.14999998|9.554||-1.5|1.05700004|1.03499997|1|0|0.0|0.0|0.0|0.001|0000|hh00|0|00nn|AAUU|3|0000|24|24|6|24|0|24|0|24|23.949|24.417|23.991|23.776|0.0|0.0|0.0|0.0|8|h|8|h|0||0||111.209999|3.93799996|9.579|2.63|0.422|39.1990013|3.4460001|21.845|3.242|0.751|-73.7669983|45.375|1094.945|25.498|2.042|-18.3299999|11.9460001|298.479|9.883|0.438|15.058|0.032|1|0.261|15.217|0.106|1|0.319|16.61||32|0.825|9.025||32|0.576|15.818|0.036|1|16.057|0.122|1|16.317||32|10.032||32|15.319|0.032|1|15.536|0.106|1|17.435||32|9.601||32|14.967|0.03|1|15.18|0.099|1|13.404||32|9.27||32|14.626|0.027|1|14.821|0.088|1|13.097||32|8.99||32|14.315|0.024|1|14.485|0.078|1|12.972||32|8.743||32|14.057|0.023|1|14.21|0.071|1|12.787||32|8.52||32|13.843|0.022|1|13.976|0.067|1|12.625||32|8.714||32|13.65|0.021|1|13.766|0.064|1|12.473||32|7.901||32|15.408|0.126|0.026|0.665|23|0|55274.89041135|55276.94144233|55275.92420909|15.515|0.451|0.092|2.38499999|23|0|55274.89041135|55276.94144233|55275.92420909||||4.1789999|7|0|55274.89041135|55276.94144233|55275.92420909||||2.26399994|6|0|55274.89041135|55276.94144233|55275.92420909|20|15|-82|0|0|1||||||||||||||||||||||||||857770253|0.276|-101.3|1|15.673|0.082|15.288|0.131|16.653||1802089401241004148|1|-0.0017700813044955|-0.0003232947446565|-0.999998381145031|121000000|
+J195703.25-895348.2|299.2635817|-89.8967258|0.5579|0.565|-0.1632|303.0432614|-27.1572781|270.1264548|-66.4705635|2053.651|622.354|3004089401241004882|3004m894_ab41-004882|3004m894_ab41|4882|16.75|0.097|11.2|0.91170001|16.644|0.279|3.9|0.993799984|12.969|0.481|2.3|1.19099998|9.08||0.5|0.888300002|0.993200004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|6|22|0|22|1|21|0|21|23.206|23.262|23.438|23.379|0.0|0.0|0.0|0.0|0||0||0||0||31.6170006|2.8282001|9.291|2.852|0.0|13.8780003|3.5638001|21.73|3.447|0.0|102.860001|45.5320015|1097.322|24.728|0.0|7.74900007|14.6169996|299.732|10.465|0.761|15.899|0.081|1|0.261|15.456|0.138|1|0.319|12.443||32|0.825|8.384||32|0.576|16.844|0.108|0|16.498|0.192|0|13.627||32|9.348||32|16.16|0.081|1|15.775|0.138|1|13.268||32|8.96||32|15.398|0.052|1|15.085|0.094|1|13.038||32|8.815||32|14.534|0.03|1|14.343|0.059|1|12.809||32|8.691||32|13.821|0.019|1|13.72|0.04|1|12.531||32|8.43||32|13.379|0.015|1|13.31|0.032|1|12.279||32|8.194||32|13.169|0.015|1|13.088|0.031|1|12.13||32|7.978||32|13.078|0.015|1|12.978|0.031|1|12.025||32|7.779||32|16.78|0.484|0.103|2.591|21|0|55275.28745078|55277.33835439|55276.28282193|16.766|1.628|0.347|3.96300006|15|0|55275.28745078|55277.33835439|55276.28282193|13.1|2.427|0.53|3.85899997|12|1|55275.28745078|55277.33835439|55276.26721256|9.832|2.909|0.635|3.727|10|0|55275.28745078|55277.33835439|55276.26721256|7|24|-23|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004882|1|0.0008810993672211|-0.0015724416951262|-0.999998375544191|131000000|
+J073106.91-895348.1|112.778808|-89.8967061|0.1669|0.1671|-0.036|302.8176073|-27.1103166|269.8990724|-66.6559142|2082.865|620.207|1201089401241004282|1201m894_ab41-004282|1201m894_ab41|4282|14.934|0.033|32.5|0.945200026|15.097|0.074|14.6|0.804499984|12.454||1.8|1.23199999|9.499||0.1|0.977999985|0.984600008|1|0|0.0|0.0|0.0|0.001|0000|0000|0|01nn|AAUU|3|0000|22|22|12|22|2|21|0|21|22.802|22.767|21.947|21.684|0.0|0.0|0.0|0.0|0||0||0||0||168.440002|5.18179989|9.426|2.804|0.0|57.6990013|3.9447|21.843|3.454|0.0|78.8560028|43.2669983|1096.474|23.325|1.249|1.67289996|11.7349997|297.679|9.435|0.424|14.517|0.03|1|0.261|14.481|0.083|1|0.319|11.624||32|0.825|8.861|0.525|1|0.576|15.337|0.037|1|15.484|0.112|1|13.045||32|9.387||32|14.778|0.03|1|14.8|0.083|1|12.449||32|9.437|0.525|1|14.368|0.027|1|14.317|0.07|1|11.935||32|8.888|0.435|1|14.058|0.025|1|13.982|0.063|1|12.244|0.46|1|8.49|0.396|1|13.859|0.025|1|13.766|0.062|1|12.028|0.454|1|8.225|0.395|1|13.718|0.026|1|13.613|0.064|1|11.934|0.492|1|8.09|0.433|1|13.581|0.026|1|13.479|0.066|1|11.139||32|7.997|0.486|1|13.427|0.026|1|13.343|0.067|1|11.058||32|7.183||32|14.932|0.095|0.02|0.348|21|0|55275.02271543|55276.94144233|55275.97309574|15.077|0.3|0.064|1.28499997|21|0|55275.02271543|55276.94144233|55275.97309574|12.896|3.328|0.726|3.09800005|10|2|55275.02271543|55276.94144233|55275.94273751|11.253|||2.09899998|9|0|55275.02271543|55276.94144233|55275.94273751|-16|61|-81|0|1|1||||||||||||||||||||||||||946727006|0.176|-18.9|1|15.468|0.073|15.143|0.125|14.998|0.167|1201089401241004282|1|-0.0006980050149879|0.0016622090375757|-0.999998374923737|111000000|
+J220927.08-895346.9|332.3628365|-89.896378|0.9827|0.8988|-0.2806|303.0075799|-27.2069348|270.2303333|-66.5124724|2173.844|592.369|89401241005548|0000m894_ab41-005548|0000m894_ab41|5548|17.561|0.186|5.8|0.831900001|17.0|0.333|3.3|1.00399995|12.554|0.29|3.7|1.00899994|9.533||-1.5|0.963800013|0.948800027|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|2|25|0|25|1|24|0|24|24.642|24.751|23.882|23.7|0.0|0.0|0.0|0.0|0||0||0||0||14.9849997|2.56389999|9.291|2.866|0.026|9.99779987|3.0697999|21.766|3.309|0.121|150.75|40.2509995|1099.026|23.824|3.779|-17.7919998|12.1809998|298.811|9.794|1.039|17.278|0.417|1|0.261|16.787|0.441|1|0.319|11.964||32|0.825|9.016||32|0.576|17.805|0.384|1|17.482|0.448|1|13.28||32|10.022||32|17.539|0.417|1|17.106|0.441|1|12.789||32|9.592||32|17.386|0.47|1|16.881|0.466|1|12.457||32|9.255||32|17.071|0.435|1|16.661|0.474|1|12.227||32|8.968||32|16.758|0.393|1|16.445|0.469|1|12.036||32|8.715||32|16.584|0.394|1|16.24|0.457|1|11.881||32|8.487||32|16.456|0.409|1|16.007|0.43|1|11.768||32|8.277||32|16.259|0.392|1|15.754|0.391|1|11.7||32|8.083||32|17.45|1.007|0.201|3.881|19|0|55275.28745078|55277.33835439|55276.36980225|17.017|2.19|0.438|3.26999998|15|0|55275.28745078|55277.33835439|55276.36980225|12.472|1.863|0.38|2.23300004|14|0|55275.28745078|55277.33835439|55276.35976824||||2.90899992|9|0|55275.28745078|55277.33835439|55276.35976824|-26|19|-30|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005548|1|0.0016021940748377|-0.0008389305189831|-0.999998364583528|131000000|
+J062249.39-895346.3|95.7058155|-89.8962056|0.1822|0.1941|-0.0344|302.8161862|-27.1410346|269.9739492|-66.6639869|2160.609|599.349|1201089401241004323|1201m894_ab41-004323|1201m894_ab41|4323|15.253|0.038|28.2|1.01499999|14.989|0.073|14.8|0.925000012|11.608|0.121|8.9|1.18700004|8.947|0.304|3.6|0.966499984|1.02100003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|010n|AABB|15|0000|23|23|11|23|5|22|1|22|22.646|21.941|21.91|21.786|0.0|0.0|0.0|0.0|0||0||0||0||125.559998|4.45200014|9.369|2.881|0.07|63.7220001|4.29330015|21.815|3.55|0.163|360.410004|40.3250008|1096.893|22.471|1.14|41.8059998|11.7200003|297.976|9.496|0.763|14.726|0.029|1|0.261|14.389|0.08|1|0.319|12.002|0.363|1|0.825|8.37||32|0.576|15.586|0.037|1|15.357|0.105|1|13.508|0.486|1|9.395||32|14.987|0.029|1|14.708|0.08|1|12.827|0.363|1|8.946||32|14.546|0.025|1|14.285|0.07|1|12.423|0.323|1|8.567||32|14.184|0.022|1|13.957|0.064|1|12.178|0.32|1|8.319||32|13.931|0.021|1|13.711|0.062|1|12.04|0.34|1|8.087||32|13.772|0.022|1|13.544|0.062|1|11.931|0.364|1|7.842||32|13.668|0.023|1|13.439|0.066|1|11.794|0.373|1|7.658||32|13.589|0.024|1|13.369|0.071|1|11.629|0.368|1|7.532||32|15.26|0.112|0.023|0.445|22|0|55275.02271543|55277.20605032|55276.08711043|14.996|0.44|0.092|1.40900004|21|1|55275.02271543|55277.20605032|55276.08711043|11.519|0.604|0.129|4.71000004|20|1|55275.02271543|55277.20605032|55276.06331461|8.952|1.488|0.317|3.2349999|15|0|55275.02271543|55277.20605032|55276.06331461|-21|-23|-4|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004323|1|-0.0001801060164696|0.0018025782671781|-0.999998359135361|111000000|
+J075627.59-895345.2|119.1149681|-89.8959116|0.3653|0.3727|-0.1178|302.8196662|-27.0989753|269.8722107|-66.6515933|2053.094|624.496|1201089401241004673|1201m894_ab41-004673|1201m894_ab41|4673|16.232|0.065|16.6|0.893599987|16.139|0.18|6.0|0.817300022|12.341|0.266|4.1|1.13999999|9.166||0.8|1.03999996|0.970099986|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|ABBU|7|0000|16|21|4|21|0|21|0|21|20.822|20.809|20.932|20.911|0.0|0.0|0.0|0.0|0||0||0||0||50.9690018|3.06430006|9.412|2.783|0.014|22.0990009|3.65619993|21.873|3.349|0.13|183.410004|44.9630013|1097.243|23.767|0.747|9.49940014|12.335|297.59|9.56|0.949|15.727|0.119|1|0.261|15.742|0.33|1|0.319|12.154||32|0.825|8.238||32|0.576|16.577|0.146|0|16.658|0.407|0|13.396||32|9.628||32|15.988|0.119|1|16.061|0.33|1|12.979||32|8.814||32|15.326|0.084|1|15.452|0.244|1|12.707||32|8.474||32|14.485|0.049|1|14.694|0.151|1|12.519||32|8.757||32|13.739|0.03|1|14.009|0.097|1|12.351||32|8.071||32|13.269|0.023|1|13.554|0.075|1|12.216||32|7.837||32|13.051|0.022|1|13.333|0.071|1|12.43||32|7.621||32|12.972|0.023|1|13.268|0.077|1|12.074||32|7.422||32|16.223|0.24|0.052|0.789|20|0|55275.02271543|55276.94144233|55276.01834588|16.124|1.184|0.258|4.27299976|16|1|55275.02271543|55276.94144233|55276.01834588|12.12|0.855|0.187|3.28399992|16|0|55275.02271543|55276.94144233|55275.94273751|11.254|||4.80000019|12|0|55275.02271543|55276.94144233|55275.94273751|-22|-10|18|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004673|1|-0.0008839321691695|0.0015871368056648|-0.999998349828979|111000000|
+J024622.53-895345.1|41.5938862|-89.8958852|0.875|0.8919|0.3105|302.8756298|-27.219439|270.196294|-66.6297028|1960.258|93.966|2403089401241005155|2403m894_ab41-005155|2403m894_ab41|5155|18.865||-2.2|0.904699981|17.519||-2.5|0.921500027|11.692|0.132|8.2|1.01900005|8.973|0.302|3.6|1.22500002|0.985700011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBB|12|0000|0|24|0|24|2|22|0|23|24.68|24.696|23.919|23.665|0.0|0.0|0.0|0.0|0||0||0||0||-4.93429995|2.25419998|9.314|2.731|0.0|-7.71460009|3.10030007|21.796|3.29|0.0|333.589996|40.7120018|1099.295|21.877|1.771|40.8129997|11.3500004|297.791|8.988|0.621|17.452|0.386|1|0.261|16.513||32|0.319|11.983||32|0.825|8.853||32|0.576|17.749||32|17.184||32|13.146||32|9.804||32|17.713|0.386|1|16.832||32|12.808||32|9.429||32|17.022|0.265|1|17.207||32|12.583||32|9.189||32|16.504|0.205|1|16.174||32|12.383||32|8.892||32|16.131|0.174|1|15.886||32|12.221||32|8.63||32|15.854|0.16|1|15.72||32|12.103||32|8.394||32|15.647|0.154|1|15.681||32|11.941||32|8.177||32|15.463|0.15|1|15.613||32|11.787||32|7.977||32||||2.488|6|0|55275.28745078|55277.33835439|55276.3515125||||1.31500006|8|0|55275.28745078|55277.33835439|55276.3515125|11.654|0.656|0.14|2.56999993|20|0|55275.28745078|55277.33835439|55276.30991016|8.923|1.202|0.251|4.27699995|17|0|55275.28745078|55277.33835439|55276.34024702||50|-42||1|1|||||||||||||||||||||||||||||0|||||||2403089401241005155|1|0.0013589867803102|0.0012063056271191|-0.99999834898947|101000000|
+J111322.84-895344.9|168.345198|-89.8958241|0.8106|0.7458|0.0585|302.8833895|-27.0333628|269.7432885|-66.5815442|2104.388|618.869|1802089401241005010|1802m894_ab41-005010|1802m894_ab41|5010|17.053|0.125|8.7|1.02600002|16.738||1.4|0.947399974|12.73||0.4|0.928300023|9.507||-0.2|0.962800026|0.962899983|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|21|1|21|0|21|0|21|20.807|21.348|20.952|20.852|0.0|0.0|0.0|0.0|0||0||0||0||23.9319992|2.75760007|9.443|2.806|0.178|5.21010017|3.7572|21.81|3.452|0.153|19.9120007|54.1580009|1095.037|26.101|2.141|-2.64960003|12.4829998|298.17|9.816|1.412|16.719|0.227|0|0.261|16.398|0.381|0|0.319|12.122||32|0.825|8.624||32|0.576|17.383|0.236|0|17.249|0.447|0|13.413||32|11.885||32|16.98|0.227|0|16.717|0.381|0|12.947||32|9.2||32|16.843|0.259|1|16.523|0.414|1|12.595||32|8.856||32|16.816|0.313|1|16.428|0.469|1|12.311||32|8.562||32|16.749|0.355|1|16.307|0.502|1|12.069||32|8.304||32|16.494|0.331|1|16.185|0.529|1|11.883||32|8.069||32|16.192|0.292|1|15.305||32|11.741||32|7.854||32|15.978|0.276|1|15.889|0.537|1|11.623||32|7.655||32|17.014|0.634|0.138|3.554|18|0|55274.89041135|55276.94144233|55275.90177109|19.257|||4.28700018|12|0|55274.89041135|55276.94144233|55275.90177109|13.499|3.185|0.695|5.36199999|11|0|55274.89041135|55276.94144233|55275.90177109||||4.80700016|10|0|55274.89041135|55276.94144233|55275.90177109|39|-15|42|1|0|0||||||||||||||||||||||||||748797775|0.165|115.7|1|16.635|0.165|16.448||15.036||1802089401241005010|1|-0.0017807243791643|0.0003673055538266|-0.999998347052292|111000000|
+J123439.64-895344.3|188.6651699|-89.8956489|0.4854|0.4483|0.1238|302.9233485|-27.0240845|269.7408244|-66.5447733|2008.142|622.297|1802089401241004600|1802m894_ab41-004600|1802m894_ab41|4600|16.562|0.079|13.7|0.837899983|16.619|0.248|4.4|0.972500026|13.027||-0.8|1.005|9.497||-1.7|0.98360002|0.946799994|1|0|0.0|0.0|0.0|0.002|0000|h000|0|0nnn|ABUU|3|0000|9|23|0|23|0|23|0|23|23.733|24.188|23.913|23.736|0.0|0.0|0.0|0.0|8|h|0||0||0||37.6119995|2.75410008|9.606|2.619|0.081|14.2049999|3.25099993|21.856|3.259|0.239|-41.2809982|48.7849998|1095.666|26.033|2.274|-21.2229996|12.5959997|298.401|10.058|1.041|15.71|0.057|1|0.261|15.688|0.164|1|0.319|12.855||32|0.825|8.816||32|0.576|16.633|0.076|1|16.658|0.215|1|14.034||32|9.825||32|15.971|0.057|1|16.007|0.164|1|13.68||32|9.392||32|15.473|0.047|1|15.548|0.14|1|13.402||32|9.046||32|15.082|0.041|1|15.197|0.126|1|13.171||32|8.752||32|14.823|0.039|1|14.955|0.121|1|12.979||32|8.492||32|14.653|0.039|1|14.787|0.122|1|12.805||32|8.256||32|14.493|0.04|1|14.629|0.123|1|12.648||32|8.04||32|14.292|0.038|1|14.433|0.118|1|12.439||32|7.841||32|16.62|0.369|0.077|1.414|22|1|55274.89041135|55276.94144233|55275.89724414|16.683|1.258|0.262|2.27900004|18|0|55274.89041135|55276.94144233|55275.89724414|14.558|||2.18000007|8|0|55274.89041135|55276.94144233|55275.89724414||||2.91000009|9|0|55274.89041135|55276.94144233|55275.89724414|5|-27|86|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004600|1|-0.0018004804601357|-0.0002743921901035|-0.999998341488144|121000000|
+J054613.68-895344.1|86.5570168|-89.8955846|1.0659|1.1894|-0.1881|302.8192815|-27.1574217|270.0158308|-66.6649351|1926.173|596.758|600089401241005269|0600m894_ab41-005269|0600m894_ab41|5269|17.699|0.215|5.1|1.03199995|17.357||-0.6|1.06900001|12.385|0.266|4.1|1.10800004|9.572||-1.3|1.02999997|1.05599999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|0|21|0|21|1|20|0|20|20.62|20.902|20.028|19.883|0.0|0.0|0.0|0.0|0||0||0||0||13.1899996|2.60640001|9.385|2.875|0.121|-2.04970002|3.60010004|21.736|3.565|0.16|176.149994|43.1240005|1097.302|22.518|0.464|-15.2449999|11.7530003|298.599|9.406|1.018|17.004|0.214|1|0.261|16.608||32|0.319|12.198||32|0.825|8.596||32|0.576|17.653|0.218|0|17.116||32|14.764||32|9.608||32|17.265|0.214|1|16.927||32|13.023||32|9.172||32|16.991|0.216|1|16.792||32|12.714||32|8.833||32|16.634|0.193|1|16.438||32|12.413||32|8.541||32|16.169|0.151|1|15.891||32|12.082||32|8.284||32|15.637|0.11|1|15.826|0.352|1|11.753||32|8.051||32|15.145|0.081|1|15.11|0.211|1|11.451||32|7.837||32|14.729|0.064|1|14.608|0.153|1|11.208||32|7.64||32|17.488|0.674|0.147|2.877|17|0|55275.28745078|55277.20605032|55276.18847532||||2.30999994|10|0|55275.28745078|55277.20605032|55276.18847532|12.327|1.248|0.279|4.20200014|15|0|55275.28745078|55277.20605032|55276.16736816||||2.19799995|7|0|55275.28745078|55277.20605032|55276.16736816|-22|58|-1|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241005269|1|0.0001094441973806|0.0018191030049903|-0.999998339441734|101000000|
+J072511.21-895343.1|111.2967331|-89.8953165|0.1209|0.1216|-0.0244|302.8155817|-27.1127487|269.9040399|-66.6582145|2090.352|622.811|1201089401241004209|1201m894_ab41-004209|1201m894_ab41|4209|14.382|0.029|37.6|1.50199997|14.041|0.04|27.3|0.889900029|10.736|0.061|17.7|1.13100004|9.035|0.352|3.1|0.964100003|1.11600006|1|0|0.0|0.0|0.0|0.001|0000|0000|0|110n|AAAB|15|0000|22|22|21|22|15|21|1|21|22.596|22.574|21.988|21.787|0.0|0.0|0.0|0.0|0||0||0||0||280.149994|7.45219994|9.4|2.795|0.017|152.600006|5.58699989|21.855|3.456|0.119|804.400024|45.5579987|1095.749|22.965|2.41|38.5419998|12.4840002|297.876|9.555|0.19|14.175|0.03|1|0.261|13.853|0.036|1|0.319|11.108|0.21|1|0.825|8.229||32|0.576|14.915|0.033|1|14.704|0.042|1|12.497|0.252|1|9.358||32|14.436|0.03|1|14.172|0.036|1|11.933|0.21|1|8.805||32|14.156|0.03|1|13.868|0.035|1|11.657|0.212|1|9.058|0.502|1|13.957|0.03|1|13.652|0.035|1|11.509|0.229|1|8.648|0.452|1|13.812|0.032|1|13.48|0.036|1|11.407|0.251|1|8.323|0.426|1|13.686|0.033|1|13.325|0.037|1|11.342|0.279|1|8.078|0.423|1|13.564|0.035|1|13.185|0.037|1|11.319|0.317|1|8.006|0.483|1|13.452|0.036|1|13.066|0.039|1|11.341|0.373|1|7.232||32|14.383|0.086|0.018|0.372|21|0|55275.02271543|55276.94144233|55275.97309574|14.046|0.183|0.039|0.661000013|21|0|55275.02271543|55276.94144233|55275.97309574|10.716|0.331|0.072|1.22599995|20|1|55275.02271543|55276.94144233|55275.94273751|8.912|1.461|0.319|2.31399989|15|0|55275.02271543|55276.94144233|55275.94273751|27|-3|2|1|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004209|1|-0.0006635886729485|0.0017023037190533|-0.999998330904668|111000000|
+J000302.46-895342.3|0.7602711|-89.8950921|1.0734|0.975|0.2042|302.9566461|-27.2307317|270.2637253|-66.5618794|2044.35|626.663|89401241005493|0000m894_ab41-005493|0000m894_ab41|5493|17.472|0.17|6.4|0.922100008|16.986||0.9|0.81400001|12.838|0.412|2.6|0.904699981|||||0.877900004|1|0|0.0|0.0|0.0||0000|0000|0|nnnn|BUCX|5|0000|0|21|0|21|0|20|||23.402|22.862|22.272|22.711|0.0|0.0|0.0||0||0||0||0||16.2679996|2.55259991|9.31|2.683|0.0|3.20040011|3.46269989|21.754|3.31|0.0|116.040001|44.0660019|1100.132|23.534|1.687|||298.441|9.459|0.953|16.636|0.136|1|0.261|16.297|0.305|1|0.319|12.398||32|0.825|||||17.409|0.157|1|17.34|0.424|1|13.664||32||||16.897|0.136|1|16.616|0.305|1|13.223||32||||16.611|0.135|1|16.123|0.248|1|12.812||32||||16.312|0.128|1|15.755|0.219|1|12.385||32||||15.968|0.113|1|15.47|0.203|1|12.658|0.423|1||||15.674|0.102|1|15.236|0.193|1|12.35|0.374|1||||15.461|0.098|1|15.065|0.192|1|12.158|0.362|1||||15.259|0.095|1|14.953|0.199|1|12.018|0.364|1||||17.476|0.583|0.127|2.888|19|0|55275.55205887|55277.33835439|55276.39639986|18.32|8.308|1.813|3.56599998|10|0|55275.55205887|55277.33835439|55276.39639986|12.599|1.519|0.34|2.40400004|12|0|55275.55205887|55277.33835439|55276.38568892|||||0|||||23|-35||0|0||||||||||||||||||||||||||||||0|||||||89401241005493|1|0.0018308258269603|0.0000242950809575|-0.999998323741865|101000000|
+J051155.80-895341.8|77.9825018|-89.8949699|0.9147|1.0017|0.1192|302.824811|-27.1722989|270.0552048|-66.6634275|1963.528|613.717|600089401241005405|0600m894_ab41-005405|0600m894_ab41|5405|17.335|0.159|6.8|0.859600008|16.767||1.4|0.978799999|13.106|0.521|2.1|1.17200005|9.453||0.3|1.14900005|1.03299999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|2|22|1|22|0|20|0|21|22.497|22.675|21.852|21.8|0.0|0.0|0.0|0.0|0||0||0||0||18.4449997|2.70449996|9.386|2.85|0.074|5.14239979|3.62330008|21.745|3.567|0.302|90.711998|43.5219994|1098.208|22.324|2.314|3.06389999|11.5810003|298.122|9.112|1.279|17.088|0.362|1|0.261|16.163|0.303|1|0.319|12.269||32|0.825|8.9||32|0.576|17.644|0.341|0|17.061|0.37|0|13.458||32|9.912||32|17.349|0.362|1|16.482|0.303|1|13.094||32|9.476||32|17.296|0.45|1|16.102|0.279|1|12.806||32|9.129||32|17.221|0.519|1|15.774|0.255|1|12.574||32|8.957||32|16.329||32|15.485|0.236|1|12.37||32|8.393||32|16.236||32|15.237|0.221|1|12.19||32|8.062||32|16.243||32|15.052|0.217|1|13.346||32|7.8||32|16.291||32|14.926|0.223|1|11.874||32|7.571||32|17.216|0.526|0.112|2.45|19|0|55275.28745078|55277.20605032|55276.21969707|17.375|3.546|0.756|4.09200001|12|0|55275.28745078|55277.20605032|55276.21969707|12.873|2.541|0.568|2.52699995|13|0|55275.28745078|55277.20605032|55276.16736816|10.667|6.056|1.321|4.02400017|9|0|55275.28745078|55277.20605032|55276.20108177|-43|9|24|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005405|1|0.0003816746808154|0.0017929455278263|-0.999998319833975|101000000|
+J005249.01-895341.7|13.2042448|-89.8949396|0.356|0.3425|0.0921|302.9312051|-27.2332149|270.2573832|-66.5844963|1985.163|619.815|89401241004682|0000m894_ab41-004682|0000m894_ab41|4682|16.178|0.064|16.9|0.940199971|15.927|0.149|7.3|0.968200028|11.958|0.177|6.1|1.15199995|9.057|0.314|3.5|0.999499977|1.01100004|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0nnn|ABBB|15|0000|17|22|3|22|2|21|2|21|21.615|21.667|20.942|20.802|0.0|0.0|0.0|0.0|8|h|0||0||0||53.5719986|3.1789|9.31|2.745|0.158|26.8729992|3.69320011|21.703|3.444|0.065|260.98999|42.5589981|1099.014|23.27|2.426|37.7779999|10.9350004|298.485|9.164|0.7|15.277|0.066|1|0.261|14.942|0.147|1|0.319|12.336|0.367|1|0.825|8.423||32|0.576|16.232|0.089|1|16.016|0.211|1|13.89|0.513|1|9.384||32|15.538|0.066|1|15.261|0.147|1|13.161|0.367|1|8.999||32|14.942|0.05|1|14.637|0.107|1|12.669|0.301|1|8.64||32|14.29|0.034|1|14.006|0.074|1|12.298|0.264|1|8.337||32|13.575|0.022|1|13.347|0.049|1|11.955|0.231|1|8.072||32|12.81|0.014|1|12.637|0.031|1|11.603|0.197|1|7.821||32|12.004|0.009|1|11.911|0.019|1|11.264|0.167|1|7.654||32|11.254|0.007|1|11.26|0.013|1|10.961|0.145|1|7.528||32|16.138|0.247|0.053|2.337|21|0|55275.28745078|55277.33835439|55276.34599308|15.904|0.911|0.194|3.0480001|19|1|55275.28745078|55277.33835439|55276.34599308|12.127|1.297|0.283|3.3210001|15|2|55275.28745078|55277.33835439|55276.33339187|9.066|2.17|0.474|3.125|12|0|55275.28745078|55277.33835439|55276.33339187|14|8|44|0|0|1|||||||||||||||||||||||||||||0|||||||89401241004682|1|0.0017851708093567|0.0004188475671609|-0.999998318864535|101000000|
+J214107.68-895341.2|325.2820012|-89.8947904|1.1919|1.1406|-0.3953|303.0192363|-27.199103|270.2168807|-66.5006379|1932.367|602.035|3004089401241005578|3004m894_ab41-005578|3004m894_ab41|5578|18.103|0.294|3.7|0.917599976|17.45|0.507|2.1|1.01499999|12.056|0.197|5.5|0.952499986|9.153||1.0|0.929700017|0.951699972|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCBU|7|0000|0|25|2|25|3|24|0|24|24.674|24.842|23.906|23.832|0.0|0.0|0.0|0.0|0||0||0||0||9.09420013|2.46070004|9.26|2.921|0.061|6.60650015|3.08529997|21.75|3.308|0.223|238.490005|43.3170013|1099.268|24.485|1.959|11.533|11.5299997|298.32|9.656|0.788|17.032|0.266|0|0.261|16.23||32|0.319|12.112|0.328|0|0.825|8.96||32|0.576|17.733|0.281|0|16.803||32|13.607|0.431|0|10.412||32|17.293|0.266|0|16.549||32|12.937|0.328|0|9.536||32|17.028|0.271|0|16.483||32|12.523|0.291|0|9.193||32|16.747|0.259|1|16.385||32|12.207|0.269|1|8.9||32|16.439|0.234|1|16.187||32|11.92|0.248|1|8.641||32|16.026|0.189|1|16.005||32|11.665|0.231|1|8.407||32|15.483|0.133|1|15.741||32|11.435|0.217|1|8.191||32|15.015|0.1|1|15.432||32|11.24|0.209|1|7.993||32|17.864|1.127|0.225|2.505|16|0|55275.28745078|55277.33835439|55276.36980225|17.22|2.583|0.517|2.95700002|13|1|55275.28745078|55277.33835439|55276.36980225|11.902|1.055|0.215|3.64700007|17|1|55275.28745078|55277.33835439|55276.35976824|10.029|2.73|0.557|4.48199987|13|0|55275.28745078|55277.33835439|55276.35976824|-45|-6|27|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005578|1|0.0015093353624234|-0.0010458149806177|-0.999998314087474|131000000|
+J235401.76-895341.1|358.5073514|-89.8947579|0.8593|0.7721|0.1431|302.961255|-27.2301108|270.2644549|-66.5577447|2055.172|627.469|89401241005395|0000m894_ab41-005395|0000m894_ab41|5395|17.261|0.143|7.6|0.883700013|17.107||0.7|0.831700027|12.468|0.28|3.9|0.983200014|8.893||1.7|1.11000001|0.94690001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|2|22|0|22|2|21|0|21|23.71|23.64|22.988|22.821|0.0|0.0|0.0|0.0|0||0||0||0||19.7560005|2.60610008|9.331|2.701|0.215|2.31960011|3.37280011|21.764|3.362|0.301|163.190002|42.1230011|1100.019|23.453|0.0|20.3840008|11.7729998|298.344|9.267|0.767|16.538||32|0.261|16.469|0.343|1|0.319|12.229||32|0.825|8.795||32|0.576|17.812|0.529|0|17.377|0.424|0|13.479||32|9.825||32|16.799||32|16.788|0.343|1|13.054||32|9.371||32|16.647||32|16.405|0.313|1|12.799||32|9.076||32|16.512||32|16.02|0.271|1|12.608||32|8.821||32|16.365||32|15.613|0.224|1|12.434||32|9.332||32|16.185||32|15.187|0.178|1|12.246||32|8.448||32|15.974||32|14.816|0.146|1|12.035||32|8.235||32|15.76||32|14.541|0.13|1|11.779||32|8.039||32|17.163|0.579|0.123|3.221|19|0|55275.55205887|55277.33835439|55276.382076|18.613|8.181|1.744|3.33500004|13|0|55275.55205887|55277.33835439|55276.382076|12.298|1.36|0.297|2.28500009|12|0|55275.55205887|55277.33835439|55276.37119303|9.562|2.114|0.461|5.09800005|15|0|55275.55205887|55277.33835439|55276.37119303|52|-48|-50|1|1|1|||||||||||||||||||||||||||||0|||||||89401241005395|1|0.0018361960764611|-0.0000478467292001|-0.999998313045907|131000000|
+J161158.04-895340.9|242.9918425|-89.8947218|0.1876|0.1951|0.0345|303.0226533|-27.0606423|269.8802627|-66.4668664|2035.378|627.368|2403089401241004278|2403m894_ab41-004278|2403m894_ab41|4278|15.23|0.038|28.4|1.63300002|14.962|0.068|16.0|1.10699999|12.377||1.5|1.01199996|9.446||-0.5|0.942200005|1.17400002|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|AAUU|3|0000|21|21|14|21|0|20|1|20|21.587|21.815|20.955|21.155|0.0|0.0|0.0|0.0|8|h|0||0||0||128.210007|4.51200008|9.377|2.484|1.03|65.3600006|4.08900023|21.844|3.253|2.642|76.4260025|50.5530014|1094.775|24.93|6.07|-7.06710005|13.1949997|298.584|9.698|0.456|15.078|0.075|1|0.261|14.875|0.153|1|0.319|12.257||32|0.825|8.835||32|0.576|15.779|0.081|0|15.688|0.173|0|13.576||32|9.847||32|15.339|0.075|1|15.194|0.153|1|13.082||32|9.411||32|15.199|0.085|1|14.99|0.164|1|12.749||32|9.067||32|15.141|0.099|1|14.893|0.186|1|12.518||32|8.777||32|15.083|0.113|1|14.832|0.212|1|12.381||32|8.518||32|15.041|0.129|1|14.802|0.243|1|12.367||32|8.283||32|15.057|0.152|1|14.814|0.286|1|13.393||32|8.069||32|15.131|0.187|1|14.868|0.345|1|12.31||32|7.871||32|15.208|0.117|0.026|0.7|20|0|55275.02271543|55276.94144233|55275.98681459|14.958|0.462|0.101|3.30200005|20|3|55275.02271543|55276.94144233|55275.98681459|12.949|2.652|0.593|2.1170001|9|0|55275.02271543|55276.94144233|55275.9556244||||3.53699994|8|0|55275.02271543|55276.94144233|55275.9556244|27|-9|-25|1|0|0||||||||||||||||||||||||||912471313|2.439|72.5|1|16.1|0.11|15.672|0.128|15.422||2403089401241004278|1|-0.0008344176370637|-0.0016370605805009|-0.999998311888507|121000000|
+J110134.33-895340.1|165.3930819|-89.8944825|0.7275|0.6694|0.0788|302.8772784|-27.0345222|269.7430322|-66.5871088|2118.959|619.005|1802089401241004841|1802m894_ab41-004841|1802m894_ab41|4841|16.928|0.112|9.7|0.965399981|16.692||1.9|0.952700019|12.852||0.2|1.06500006|9.309||-0.2|0.978399992|0.987500012|1|0|0.0|0.0|0.0|0.0|0000|0000|0|4nnn|BUUU|1|0000|6|21|0|21|0|21|0|21|21.111|21.413|20.826|20.942|0.0|0.0|0.0|0.0|0||0||0||0||26.8509998|2.7736001|9.407|2.746|0.0|6.40399981|3.43829989|21.835|3.393|0.0|9.18150043|52.7340012|1095.725|26.171|4.473|-2.32809997|14.9689999|298.515|10.325|1.955|16.664|0.305|1|0.261|15.809||32|0.319|12.036||32|0.825|8.433||32|0.576|17.368|0.333|1|16.526||32|13.364||32|9.447||32|16.925|0.305|1|16.128||32|12.861||32|9.009||32|16.54|0.275|1|16.571|0.531|1|12.484||32|8.666||32|16.079|0.223|1|16.103|0.429|1|12.843|0.484|1|8.375||32|15.562|0.167|1|15.505|0.299|1|12.469|0.413|1|8.115||32|14.986|0.116|1|14.86|0.194|1|12.127|0.355|1|7.878||32|14.322|0.074|1|14.204|0.124|1|11.874|0.328|1|7.665||32|13.647|0.046|1|13.584|0.08|1|11.717|0.325|1|7.465||32|16.929|0.87|0.19|2.67|16|1|55274.89041135|55276.94144233|55275.90177109|17.504|2.74|0.598|3.75500011|13|0|55274.89041135|55276.94144233|55275.90177109|13.08|3.431|0.749|4.20800018|10|0|55274.89041135|55276.94144233|55275.90177109|11.56|||3.84299994|10|0|55274.89041135|55276.94144233|55275.90177109|-22|-25|69|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004841|1|-0.0017821022512483|0.0004644326512842|-0.999998304205501|111000000|
+J025905.76-895339.8|44.7740065|-89.8944164|0.6782|0.6886|0.2166|302.8691491|-27.2177657|270.1889943|-66.6349593|2241.748|154.862|1802089401241004705|1802m894_ab41-004705|1802m894_ab41|4705|17.39|0.151|7.2|0.938799977|16.931|0.331|3.3|0.736500025|11.785|0.144|7.6|1.22399998|9.11|0.331|3.3|1.14600003|0.981700003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBB|15|0000|2|24|0|24|2|22|0|23|24.782|24.817|23.914|23.727|0.0|0.0|0.0|0.0|0||0||0||0||17.5310001|2.44219995|9.308|2.799|0.11|10.6590004|3.24519992|21.747|3.339|0.068|306.170013|40.5079994|1100.143|22.281|0.0|35.9580002|10.9770002|298.334|9.152|0.462|15.921|0.067|1|0.261|15.845|0.251|1|0.319|11.752||32|0.825|8.376||32|0.576|16.886|0.091|1|16.866|0.343|1|13.113||32|9.469||32|16.182|0.067|1|16.164|0.251|1|12.577||32|8.952||32|15.779|0.06|1|15.744|0.221|1|12.913|0.533|1|9.214|0.503|1|15.54|0.06|1|15.464|0.212|1|12.582|0.488|1|8.689|0.397|1|15.349|0.06|1|15.221|0.204|1|12.355|0.477|1|8.323|0.352|1|15.14|0.058|1|14.996|0.196|1|12.174|0.476|1|8.075|0.34|1|14.898|0.054|1|14.761|0.183|1|12.018|0.48|1|7.938|0.358|1|14.651|0.05|1|14.506|0.167|1|11.881|0.487|1|7.799|0.372|1|17.387|0.731|0.149|2.562|21|0|55275.28745078|55277.33835439|55276.3515125|16.604|1.077|0.22|2.4059999|16|0|55275.28745078|55277.33835439|55276.3515125|11.669|0.53|0.113|2.60599995|20|0|55275.28745078|55277.33835439|55276.30991016|9.064|1.501|0.313|3.11500001|16|0|55275.28745078|55277.33835439|55276.34024702|-35|17|-44|1|0|1|||||||||||||||||||||||||||||0|||||||1802089401241004705|1|0.0013081716847813|0.0012978924547838|-0.999998302079568|101000000|
+J114623.84-895339.5|176.5993677|-89.8943275|0.305|0.2816|0.0469|302.8987007|-27.0267069|269.734745|-66.5667531|2065.744|628.11|1802089401241004246|1802m894_ab41-004246|1802m894_ab41|4246|15.775|0.051|21.1|1.04700005|16.22|0.209|5.2|1.04799998|12.617||0.9|1.12800002|9.065||0.9|1.04100001|1.06299996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|18|21|2|20|1|21|1|21|21.346|19.986|21.366|22.091|0.0|0.0|0.0|0.0|0||0||0||0||77.5940018|3.67680001|9.573|2.799|0.11|20.5179996|3.94939995|21.813|3.426|0.195|43.1329994|49.5940018|1094.03|25.482|0.653|11.3260002|13.0790005|297.641|9.774|0.331|15.428|0.089|1|0.261|15.551|0.236|1|0.319|12.295||32|0.825|8.894||32|0.576|16.222|0.105|1|16.542|0.317|1|14.4||32|9.905||32|15.689|0.089|1|15.87|0.236|1|13.12||32|9.47||32|15.171|0.071|1|15.335|0.186|1|12.84||32|9.127||32|14.614|0.053|1|14.801|0.141|1|12.606||32|8.833||32|14.133|0.041|1|14.307|0.107|1|12.406||32|8.574||32|13.711|0.033|1|13.872|0.085|1|12.227||32|8.338||32|13.336|0.027|1|13.501|0.07|1|12.063||32|8.123||32|13.066|0.025|1|13.232|0.063|1|11.91||32|7.924||32|15.793|0.214|0.047|0.954|20|1|55274.89041135|55276.94144233|55275.90177109|16.063|1.025|0.229|2.77900004|14|1|55274.89041135|55276.94144233|55275.88286991|12.56|2.31|0.504|2.81100011|9|0|55274.89041135|55276.94144233|55275.90177109|10.344|6.987|1.525|2.13199997|9|0|55274.89041135|55276.94144233|55275.90177109|24|-44|24|0|0|0||||||||||||||||||||||||||863351278|0.345|-93.3|1|16.52|0.142|15.758|0.156|14.995||1802089401241004246|1|-0.0018410837189703|0.0001094009167907|-0.999998299219643|111000000|
+J150706.96-895339.2|226.7790237|-89.8942294|0.2997|0.3094|0.0838|302.9981829|-27.0403701|269.8184688|-66.4835267|2113.061|621.193|2403089401241004596|2403m894_ab41-004596|2403m894_ab41|4596|16.021|0.055|19.6|0.931299984|15.797|0.13|8.4|0.856899977|12.169|0.246|4.4|0.982800007|9.407||-1.7|0.873700023|0.908100009|1|0|0.0|0.0|0.0|0.0|0000|h000|0|1nnn|ABBU|7|0000|18|22|3|22|1|21|0|21|21.838|21.645|21.436|22.175|0.0|0.0|0.0|0.0|8|h|0||0||0||61.8779984|3.14949989|9.531|2.518|0.0|30.2859993|3.62400007|21.739|3.245|0.0|214.899994|48.6730003|1095.95|25.421|0.0|-22.9920006|13.6879997|298.449|10.163|0.512|16.182|0.173|0|0.261|15.991|0.285|0|0.319|11.972|0.403|0|0.825|8.875||32|0.576|16.759|0.168|0|16.723|0.302|0|13.436|0.526|0|9.886||32|16.443|0.173|0|16.31|0.285|0|12.797|0.403|0|9.451||32|16.367|0.207|0|16.088|0.298|0|12.438|0.373|0|9.107||32|16.301|0.241|1|15.912|0.312|1|12.222|0.378|0|8.813||32|16.074|0.236|1|15.692|0.307|1|12.042|0.386|1|8.696||32|15.593|0.179|1|15.304|0.253|1|11.848|0.381|1|8.175||32|14.952|0.116|1|14.767|0.179|1|11.66|0.372|1|7.87||32|14.367|0.078|1|14.243|0.127|1|11.511|0.373|1|7.658||32|16.014|0.318|0.068|1.694|21|1|55274.89041135|55276.94144233|55275.99412384|15.764|0.613|0.131|2.88599992|20|0|55274.89041135|55276.94144233|55275.99412384|11.915|0.869|0.19|2.13000011|15|0|55274.89041135|55276.94144233|55275.96476696||||2.26099992|6|0|55274.89041135|55276.94144233|55275.96476696|28|-11|37|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004596|1|-0.0012641969046959|-0.0013452456796824|-0.999998296058672|121000000|
+J015149.43-895338.7|27.9559644|-89.8940968|0.1574|0.1613|0.0444|302.9008963|-27.2304013|270.2356397|-66.6101791|1918.011|596.94|89401241004376|0000m894_ab41-004376|0000m894_ab41|4376|14.88|0.033|32.6|0.952799976|14.93|0.066|16.6|1.04799998|12.501|0.278|3.9|1.19500005|9.505|0.506|2.1|0.925100029|1.02600002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABC|15|0000|24|24|16|24|2|23|1|23|23.666|23.641|22.981|22.71|0.0|0.0|0.0|0.0|0||0||0||0||177.039993|5.43760014|9.275|2.825|0.114|67.3059998|4.06349993|21.748|3.364|0.174|158.279999|40.5029984|1099.15|23.028|3.563|24.9990005|11.6420002|298.69|9.683|1.42|14.822|0.029|0|0.261|14.934|0.101|0|0.319|11.944||32|0.825|8.75||32|0.576|15.461|0.031|0|15.658|0.107|0|13.291||32|9.756||32|15.083|0.029|0|15.253|0.101|0|12.769||32|9.326||32|14.92|0.033|0|15.125|0.116|0|12.316||32|8.999||32|14.807|0.036|1|15.069|0.135|1|11.975||32|8.692||32|14.686|0.039|1|15.0|0.153|1|12.374|0.477|1|8.325||32|14.526|0.039|1|14.908|0.165|1|12.032|0.41|1|7.969||32|14.337|0.038|1|14.791|0.173|1|11.756|0.371|1|7.682||32|14.165|0.038|1|14.651|0.174|1|11.55|0.352|1|7.468||32|14.873|0.09|0.018|0.345|23|0|55275.28745078|55277.33835439|55276.3515125|14.905|0.249|0.051|1.347|23|0|55275.28745078|55277.33835439|55276.3515125|12.192|1.377|0.287|2.72099996|14|0|55275.28745078|55277.33835439|55276.34024702|9.383|1.753|0.366|5.53800011|13|0|55275.28745078|55277.33835439|55276.34024702|19|13|29|0|0|0||||||||||||||||||||||||||1161261466|0.162|-30.7|1|15.335|0.064|15.056|0.099|14.597|0.115|89401241004376|1|0.0016326707361045|0.000866497514148|-0.999998291782704|101000000|
+J222750.18-895338.7|336.9591092|-89.8940888|0.1551|0.1496|-0.0237|303.0017503|-27.2139312|270.2446076|-66.5190657|2156.525|607.195|89401241004350|0000m894_ab41-004350|0000m894_ab41|4350|14.749|0.032|33.8|0.933399975|14.801|0.059|18.5|0.858900011|12.877||0.8|1.02400005|9.247||0.7|1.02100003|0.956099987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|25|25|17|25|1|24|0|24|24.665|24.074|23.779|23.761|0.0|0.0|0.0|0.0|0||0||0||0||199.729996|5.91379976|9.279|2.839|0.0|75.814003|4.09840012|21.762|3.349|0.117|32.9910011|39.526001|1099.318|24.044|0.0|8.57530022|11.5609999|298.523|9.74|0.894|14.715|0.044|0|0.261|14.633|0.085|0|0.319|12.653||32|0.825|8.973||32|0.576|15.349|0.045|0|15.46|0.097|0|13.838||32|9.982||32|14.976|0.044|0|14.952|0.085|0|13.478||32|9.549||32|14.827|0.049|0|14.701|0.088|0|13.187||32|9.203||32|14.761|0.057|0|14.587|0.097|0|12.954||32|8.909||32|14.762|0.068|0|14.562|0.114|0|12.755||32|8.649||32|14.813|0.084|0|14.575|0.136|0|12.575||32|8.413||32|14.888|0.105|1|14.571|0.158|1|12.409||32|8.198||32|14.937|0.126|1|14.532|0.175|1|12.258||32|7.999||32|14.759|0.083|0.017|0.638|24|0|55275.28745078|55277.33835439|55276.36980225|14.79|0.278|0.056|1.245|24|0|55275.28745078|55277.33835439|55276.36980225|13.735|4.944|1.009|3.15700006|9|0|55275.28745078|55277.33835439|55276.35976824|10.171|4.531|0.925|3.19700003|11|0|55275.28745078|55277.33835439|55276.35976824|24|6|-11|1|0|0||||||||||||||||||||||||||1201012256|0.224|12.2|1|15.358|0.066|15.008|0.113|14.78|0.13|89401241004350|1|0.0017010349942751|-0.0007234796807895|-0.99999829152709|131000000|
+J010419.88-895338.5|16.0828622|-89.8940481|0.2653|0.2542|0.0686|302.9252158|-27.2339405|270.2562365|-66.5898516|1971.147|618.565|89401241004617|0000m894_ab41-004617|0000m894_ab41|4617|15.679|0.048|22.8|0.924199998|15.923|0.147|7.4|0.932900012|12.697|0.353|3.1|1.00800002|9.32||0.6|1.07000005|0.979700029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|20|22|3|22|0|21|0|21|21.668|21.776|21.555|21.406|0.0|0.0|0.0|0.0|0||0||0||0||84.7809982|3.71790004|9.318|2.797|0.043|26.9529991|3.64039993|21.787|3.408|0.104|132.169998|42.9799995|1099.75|23.898|1.053|6.99170017|11.3310003|298.499|9.29|0.77|15.589|0.107|1|0.261|15.686|0.313|1|0.319|12.416||32|0.825|8.547||32|0.576|16.237|0.109|1|16.483|0.348|1|13.721||32|9.694||32|15.85|0.107|1|16.005|0.313|1|13.241||32|9.123||32|15.649|0.115|1|15.687|0.303|1|12.926||32|8.643||32|15.453|0.118|1|15.395|0.287|1|12.72||32|8.291||32|15.197|0.113|1|15.067|0.256|1|12.565||32|8.067||32|14.884|0.099|1|14.679|0.211|1|12.413||32|7.871||32|14.558|0.086|1|14.29|0.172|1|12.233||32|7.69||32|14.252|0.074|1|13.946|0.144|1|12.022||32|7.537||32|15.668|0.224|0.048|0.934|21|0|55275.28745078|55277.33835439|55276.34599308|15.898|0.559|0.119|1.85099995|20|0|55275.28745078|55277.33835439|55276.34599308|12.339|0.972|0.212|3.14700007|15|0|55275.28745078|55277.33835439|55276.33339187|10.982|9.947|2.171|1.98800004|9|0|55275.28745078|55277.33835439|55276.33339187|-8|49|-8|0|1|0||||||||||||||||||||||||||1161201054|0.163|37.1|1|16.557|0.162|15.457|0.147|15.756||89401241004617|1|0.0017768343832657|0.0005122811946693|-0.999998290212314|101000000|
+J025406.50-895338.4|43.5271211|-89.8940198|0.5618|0.5778|0.1751|302.8711287|-27.2193012|270.1937443|-66.633578|2127.113|617.985|600089401241004745|0600m894_ab41-004745|0600m894_ab41|4745|17.077|0.114|9.5|0.864899993|16.381|0.2|5.4|1.05200005|11.939|0.162|6.7|0.993399978|9.349|0.419|2.6|1.11199999|1.00199997|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|BBBC|15|0000|2|24|0|24|0|23|0|23|24.785|24.762|23.882|23.686|0.0|0.0|0.0|0.0|129|D|129|D|0||0||23.4069996|2.46679997|9.281|2.784|0.0|17.6809998|3.2499001|21.742|3.326|0.0|265.769989|39.7159996|1099.561|22.025|0.0|28.868|11.132|298.565|9.254|0.484|16.047|0.105|0|0.261|15.578||32|0.319|11.971||32|0.825|8.579||32|0.576|16.908|0.13|0|16.258||32|13.19||32|9.719||32|16.308|0.105|0|15.897||32|12.796||32|9.155||32|15.973|0.099|0|15.73||32|12.484||32|8.715||32|15.738|0.098|1|15.631||32|12.27||32|8.406||32|15.547|0.1|1|15.493||32|12.158||32|8.118||32|15.377|0.101|1|15.329||32|12.038||32|7.869||32|15.192|0.099|1|15.17||32|11.873||32|7.678||32|14.974|0.093|1|15.027||32|11.723||32|7.492||32|17.083|0.511|0.104|2.641|23|0|55275.28745078|55277.33835439|55276.3515125|16.436|1.296|0.265|4.03299999|18|0|55275.28745078|55277.33835439|55276.3515125|11.941|0.616|0.129|3.13599992|22|0|55275.28745078|55277.33835439|55276.34024702|9.225|1.464|0.305|2.7349999|14|0|55275.28745078|55277.33835439|55276.34024702|-26|10|17|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241004745|1|0.0013411243413131|0.0012738865285633|-0.999998289297844|101000000|
+J034439.82-895338.4|56.165941|-89.8940035|0.0956|0.0975|-0.0133|302.8501698|-27.2052659|270.1488965|-66.6486849|2067.006|628.892|600089401241003936|0600m894_ab41-003936|0600m894_ab41|3936|13.389|0.025|44.1|1.06400001|13.433|0.029|37.0|0.969500005|11.7|0.135|8.1|1.03699994|9.125||1.3|1.05400002|1.02699995|1|0|0.0|0.0|0.0|0.0|0000|dd00|0|00nn|AABU|7|0000|24|24|24|24|3|23|0|23|23.566|23.787|22.923|22.742|0.0|0.0|0.0|0.0|9|dh|9|dh|0||0||699.179993|15.8439999|9.322|2.628|0.279|267.160004|7.21320009|21.776|3.283|0.248|331.220001|41.0349998|1099.153|22.025|0.0|14.1440001|10.6689997|298.877|9.25|0.486|13.097|0.014|0|0.261|13.168|0.031|0|0.319|12.24|0.455|0|0.825|8.991||32|0.576|13.847|0.016|0|14.035|0.037|0|12.946||32|9.995||32|13.358|0.014|0|13.487|0.031|0|13.065|0.455|0|9.567||32|13.045|0.014|0|13.138|0.029|0|12.564|0.369|0|9.229||32|12.766|0.013|0|12.821|0.027|0|12.149|0.311|0|8.946||32|12.475|0.012|1|12.474|0.024|1|11.734|0.256|0|8.602||32|12.117|0.011|1|12.049|0.019|1|11.239|0.192|1|8.226||32|11.609|0.009|1|11.475|0.014|1|10.678|0.133|1|7.938||32|10.877|0.007|1|10.714|0.009|1|10.108|0.091|1|7.672||32|13.389|0.046|0.009|0.154|23|0|55275.28745078|55277.33835439|55276.29362153|13.439|0.074|0.015|0.356000006|23|0|55275.28745078|55277.33835439|55276.29362153|11.576|0.537|0.112|2.03999996|20|0|55275.28745078|55277.33835439|55276.27983905|10.051|4.025|0.839|2.78999996|12|0|55275.28745078|55277.33835439|55276.27983905|15|5|-22|0|0|0||||||||||||||||||||||||||1181103796|0.089|-29.8|1|14.008|0.027|13.6|0.034|13.448|0.039|600089401241003936|1|0.001030053381113|0.0015366985267545|-0.999998288772371|101000000|
+J115717.31-895338.1|179.3221623|-89.8939346|0.1566|0.1497|0.0304|302.9040452|-27.025035|269.7333616|-66.5617372|2052.625|629.669|1802089401241003978|1802m894_ab41-003978|1802m894_ab41|3978|14.695|0.032|34.3|0.936100006|14.679|0.06|18.2|1.04900002|12.595||0.8|1.01699996|9.503||-1.2|1.02600002|1.00300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|21|21|13|21|0|21|0|21|22.262|21.357|22.92|22.766|0.0|0.0|0.0|0.0|0||0||0||0||209.910004|6.12790012|9.417|2.722|0.0|84.8219986|4.66260004|21.835|3.474|0.067|42.0680008|51.5839996|1093.964|26.061|0.0|-14.7299995|12.5220003|297.81|9.855|0.924|14.529|0.039|1|0.261|14.521|0.093|1|0.319|12.329||32|0.825|8.797||32|0.576|15.241|0.043|1|15.354|0.107|1|13.527||32|9.943||32|14.79|0.039|1|14.84|0.093|1|13.154||32|9.373||32|14.486|0.038|1|14.511|0.088|1|12.951||32|8.908||32|14.179|0.036|1|14.228|0.084|1|12.878||32|8.503||32|13.915|0.034|1|14.001|0.082|1|12.657||32|8.098||32|13.739|0.034|1|13.844|0.084|1|12.475||32|8.479|0.506|1|13.633|0.036|1|13.732|0.088|1|12.31||32|8.145|0.444|17|13.56|0.038|1|13.641|0.092|1|12.158||32|7.867|0.406|17|14.708|0.105|0.023|0.51|20|0|55274.89041135|55276.94144233|55275.90177109|14.669|0.316|0.069|1.21000004|19|1|55274.89041135|55276.94144233|55275.90177109|13.534|3.264|0.712|3.35599995|11|0|55274.89041135|55276.94144233|55275.90177109||||2.99399996|7|0|55274.89041135|55276.94144233|55275.90177109|17|2|27|0|0|0||||||||||||||||||||||||||857646397|0.176|-83.4|1|15.153|0.057|14.883|0.09|14.496|0.125|1802089401241003978|1|-0.0018510591206595|0.0000218999747913|-0.999998286548794|111000000|
+J152645.55-895337.9|231.6897993|-89.8938635|0.3773|0.4046|0.1012|303.0066363|-27.0454557|269.8351438|-66.4773404|2089.924|626.722|2403089401241004764|2403m894_ab41-004764|2403m894_ab41|4764|16.377|0.07|15.5|0.946699977|15.76|0.129|8.4|0.943599999|12.354||1.8|1.15699995|9.477||0.0|0.971300006|1.00100005|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|ABUU|3|0000|14|21|5|21|0|20|0|20|22.318|22.331|21.934|22.396|0.0|0.0|0.0|0.0|8|h|0||0||0||44.5740013|2.87859988|9.345|2.475|0.002|31.3400002|3.71230006|21.784|3.276|0.194|84.862999|48.1790009|1096.856|25.274|1.53|-0.539629996|12.8240004|298.364|9.677|0.904|16.274|0.145|1|0.261|15.983|0.381|1|0.319|12.112||32|0.825|8.58||32|0.576|16.983|0.159|1|16.69|0.39|1|13.845||32|9.626||32|16.535|0.145|1|16.302|0.381|1|12.937||32|9.156||32|16.291|0.149|1|16.185|0.443|1|12.656||32|8.772||32|16.126|0.159|1|15.432||32|12.421||32|8.527||32|16.007|0.17|1|15.36||32|12.223||32|8.387||32|15.858|0.176|1|15.193||32|12.04||32|8.15||32|15.626|0.165|1|14.941||32|11.878||32|7.933||32|15.379|0.151|1|15.428|0.52|1|11.725||32|7.734||32|16.374|0.277|0.06|1.025|20|0|55274.89041135|55276.94144233|55275.96791402|15.622|0.583|0.127|2.57999992|18|1|55274.89041135|55276.94144233|55275.96791402|12.567|1.736|0.388|5.61999989|13|0|55274.89041135|55276.94144233|55275.93577879|11.705|||2.579|8|0|55274.89041135|55276.94144233|55275.93577879|43|-13|-63|1|0|1|||||||||||||||||||||||||||||0|||||||2403089401241004764|1|-0.0011483558219675|-0.001453538550121|-0.999998284250823|121000000|
+J173220.78-895337.7|263.0866223|-89.8938278|0.5518|0.6049|-0.076|303.0441425|-27.0921946|269.9680077|-66.4553054|1772.208|386.817|1802089401241005774|1802m894_ab41-005774|1802m894_ab41|5774|16.844|0.095|11.4|0.758599997|17.281|0.473|2.3|0.956099987|12.977||-1.0|1.09300005|8.909||1.5|0.968400002|0.938600004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACUU|3|0000|4|23|0|23|0|22|0|22|23.32|22.797|22.33|23.186|0.0|0.0|0.0|0.0|0||0||0||0||29.0049992|2.54320002|9.385|2.51|0.0|7.71689987|3.3598001|21.776|3.265|0.0|-50.8069992|51.0519981|1095.922|26.078|3.848|18.6189995|12.3389997|298.823|9.808|0.617|16.995|0.51|1|0.261|16.202|0.329|1|0.319|12.631||32|0.825|8.63||32|0.576|17.468|0.442|0|17.158|0.423|0|13.825||32|9.629||32|17.256|0.51|1|16.521|0.329|1|13.456||32|9.206||32|16.436||32|16.054|0.275|1|13.182||32|8.828||32|16.254||32|15.625|0.23|1|12.945||32|8.61||32|15.936||32|15.237|0.194|1|12.742||32|8.551||32|16.199|0.44|1|14.916|0.17|1|12.562||32|8.431||32|15.658|0.31|1|14.656|0.155|1|12.4||32|8.215||32|15.24|0.244|1|14.438|0.147|1|12.245||32|8.015||32|16.853|0.477|0.099|2.092|22|0|55275.02271543|55277.20605032|55276.08995615|17.368|2.773|0.578|3.52999997|12|0|55275.02271543|55277.20605032|55276.08995615|14.189|8.096|1.726|4.33599997|6|0|55275.02271543|55277.20605032|55276.06628968|9.561|1.538|0.328|4.49700022|15|0|55275.02271543|55277.20605032|55276.06628968|43|-29|-31|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005774|1|-0.000223049449229|-0.001839579941367|-0.999998283095817|121000000|
+J090530.53-895337.2|136.3772327|-89.8936696|0.1188|0.1153|-0.01|302.8323612|-27.0694061|269.8059211|-66.6339474|1970.372|619.37|1201089401241004159|1201m894_ab41-004159|1201m894_ab41|4159|13.97|0.028|38.6|0.851899981|13.908|0.035|30.6|1.01900005|12.502|0.296|3.7|1.25|9.371||-0.3|1.01999998|1.02999997|1|0|0.0|0.0|0.0|0.0|0000|dd00|0|00nn|AABU|7|0000|23|23|23|23|2|22|0|22|22.797|22.722|21.836|21.862|0.0|0.0|0.0|0.0|1|d|1|d|0||0||409.429993|10.6149998|9.37|2.929|0.184|172.460007|5.63049984|21.795|3.282|0.081|158.240005|43.1409988|1095.299|23.738|3.541|-4.58979988|14.1499996|297.966|10.01|1.206|13.894|0.017|1|0.261|13.889|0.047|1|0.319|12.107||32|0.825|8.978||32|0.576|14.552|0.019|1|14.664|0.052|1|13.426||32|9.981||32|14.155|0.017|1|14.208|0.047|1|12.932||32|9.554||32|13.965|0.019|1|14.0|0.05|1|12.507||32|9.221||32|13.835|0.02|1|13.868|0.054|1|12.126||32|8.941||32|13.742|0.022|1|13.777|0.06|1|12.516|0.497|1|8.693||32|13.687|0.024|1|13.726|0.067|1|12.227|0.45|1|8.468||32|13.651|0.027|1|13.713|0.077|1|12.025|0.435|1|8.263||32|13.62|0.03|1|13.725|0.09|1|11.842|0.422|1|8.168||32|13.969|0.043|0.009|0.161|22|0|55274.89041135|55276.94144233|55275.9260225|13.912|0.141|0.029|0.501999974|22|0|55274.89041135|55276.94144233|55275.9260225|12.644|1.798|0.383|3.25200009|11|0|55274.89041135|55276.94144233|55275.8949045|10.67|7.685|1.638|3.33200002|10|0|55274.89041135|55276.94144233|55275.8949045|-13|22|55|0|0|0||||||||||||||||||||||||||806891093|0.453|164.8|1|15.099|0.056|14.265|0.046|14.071|0.082|1201089401241004159|1|-0.0013434205184773|0.0012803403848256|-0.999998277973422|111000000|
+J031224.58-895337.1|48.1024476|-89.8936575|0.3659|0.3831|0.1208|302.8629128|-27.2149907|270.1791014|-66.639762|2105.842|624.375|600089401241004504|0600m894_ab41-004504|0600m894_ab41|4504|16.494|0.077|14.2|0.781899989|15.776|0.119|9.1|1.05700004|11.747|0.139|7.8|1.12399995|8.751|0.244|4.4|1.15900004|1.02600002|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nn0n|ABBB|15|0000|14|24|4|24|4|23|1|23|24.607|24.607|23.843|23.73|0.0|0.0|0.0|0.0|129|D|129|D|0||0||40.0359993|2.82380009|9.323|2.711|0.086|30.875|3.3829999|21.743|3.252|0.234|317.079987|40.6650009|1099.71|22.348|2.436|50.0859985|11.2720003|298.273|9.049|0.405|16.455|0.321|0|0.261|15.308|0.234|0|0.319|12.446|0.377|0|0.825|8.552||32|0.576|17.044|0.312|0|16.172|0.278|0|13.909|0.488|0|9.535||32|16.716|0.321|0|15.627|0.234|0|13.271|0.377|0|9.128||32|16.622|0.382|0|15.36|0.238|0|12.858|0.335|0|8.857||32|16.599|0.464|1|15.218|0.259|1|12.639|0.338|0|8.6||32|15.831||32|15.135|0.289|1|12.544|0.371|1|8.387||32|15.732||32|15.069|0.32|1|12.472|0.407|1|9.87||32|15.584||32|14.988|0.346|1|12.361|0.426|1|8.044||32|15.405||32|14.859|0.354|1|12.202|0.42|1|7.844||32|16.463|0.285|0.058|1.798|23|0|55275.28745078|55277.33835439|55276.29362153|15.776|0.61|0.125|2.02999997|21|0|55275.28745078|55277.33835439|55276.29362153|11.65|0.654|0.136|1.86899996|19|0|55275.28745078|55277.33835439|55276.27983905|8.793|0.95|0.198|3.82500005|17|0|55275.28745078|55277.33835439|55276.27983905|-1|25|24|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004504|1|0.0012394552769702|0.001381514203016|-0.999998277583078|101000000|
+J143950.28-895336.9|219.9595157|-89.8935902|0.6935|0.7187|0.2085|302.9863365|-27.0334185|269.7955163|-66.4922341|2145.146|613.131|2403089401241005316|2403m894_ab41-005316|2403m894_ab41|5316|17.071|0.12|9.0|1.79799998|16.775|0.297|3.7|0.973500013|13.052||-0.9|0.994899988|9.46||-1.6|0.940100014|1.17999995|1|0|0.0|0.0|0.0|0.0|0000|h000|0|1nnn|BBUU|3|0000|4|23|2|22|1|22|0|22|23.644|23.576|22.888|22.743|0.0|0.0|0.0|0.0|8|h|0||0||0||23.5259991|2.61019993|9.947|2.618|0.0|12.2989998|3.3599|21.795|3.201|0.032|-42.0660019|47.6660004|1096.577|25.385|4.246|-20.3729992|13.0340004|298.386|10.034|1.826|16.369|0.262|0|0.261|16.143||32|0.319|12.161||32|0.825|9.012||32|0.576|17.26|0.332|0|16.8||32|13.534||32|10.003||32|16.63|0.262|0|16.462||32|12.986||32|9.588||32|16.266|0.24|0|16.351||32|12.542||32|9.271||32|16.055|0.244|0|16.341||32|12.166||32|9.011||32|15.893|0.254|0|16.241||32|12.585|0.508|0|9.49||32|15.701|0.252|1|15.998||32|12.314|0.468|0|8.429||32|15.421|0.226|1|15.578||32|12.068|0.434|1|8.111||32|15.044|0.184|1|15.13||32|11.787|0.385|1|7.909||32|17.197|0.709|0.148|2.384|19|3|55274.89041135|55276.94144233|55275.97778257|16.807|1.94|0.414|2.62700009|15|0|55274.89041135|55276.94144233|55275.99412384||||5.375|7|0|55274.89041135|55276.94144233|55275.9490173||||2.02800012|5|0|55274.89041135|55276.94144233|55275.9490173|55|-26||1|0||||||||||||||||||||||||||||||0|||||||2403089401241005316|1|-0.001423541707892|-0.0011927802764348|-0.999998275400622|121000000|
+J023910.32-895336.8|39.7930127|-89.8935732|1.1472|1.1898|0.434|302.8777045|-27.223029|270.2061428|-66.6286888|1950.063|91.184|2403089401241005745|2403m894_ab41-005745|2403m894_ab41|5745|18.853||-2.1|0.863799989|17.534||-1.9|0.943799973|11.864|0.162|6.7|1.06299996|9.626||-0.5|1.15499997|0.994300008|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|0|24|2|22|0|23|24.214|24.715|23.774|23.178|0.0|0.0|0.0|0.0|0||0||0||0||-4.8368001|2.27830005|9.314|2.731|0.173|-5.88710022|3.05669999|21.796|3.29|0.201|284.609985|42.4399986|1099.295|21.877|1.411|-5.1408|11.184|297.791|8.988|1.08|19.196||32|0.261|19.907||32|0.319|11.886||32|0.825|8.909||32|0.576|17.837||32|17.461||32|13.071||32|9.92||32|19.457||32|20.226||32|12.711||32|9.485||32|17.322||32|16.95||32|12.435||32|9.141||32|17.093||32|16.721||32|12.198||32|8.848||32|16.886||32|16.515||32|11.998||32|8.587||32|16.704||32|16.334||32|11.881||32|8.351||32|16.254||32|16.029||32|11.79||32|8.135||32|16.24|0.474|1|15.522||32|11.638||32|7.936||32||||2.44|6|0|55275.28745078|55277.33835439|55276.3515125||||3.00600004|9|0|55275.28745078|55277.33835439|55276.3515125|11.767|0.682|0.145|2.85899997|19|0|55275.28745078|55277.33835439|55276.30991016|10.566|7.357|1.534|3.12400007|12|0|55275.28745078|55277.33835439|55276.34024702|46|-1|-18|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005745|1|0.0014272299815028|0.0011888283449339|-0.999998274849385|101000000|
+J022819.88-895336.3|37.0828352|-89.8934263|1.6697|1.5372|0.5666|302.8827416|-27.225338|270.2142932|-66.6248236|1937.686|95.753|2403089401241005916|2403m894_ab41-005916|2403m894_ab41|5916|18.541||0.5|0.872799993|17.495||-1.1|1.01699996|12.098|0.2|5.4|0.981899977|9.113||1.2|1.02900004|0.963800013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|0|24|1|23|0|23|23.439|24.157|23.33|22.867|0.0|0.0|0.0|0.0|0||0||0||0||1.25259995|2.41109991|9.284|2.723|0.0|-3.52859998|3.16980004|21.764|3.319|0.0|229.5|42.2509995|1100.119|22.744|2.954|13.6009998|11.132|298.474|9.301|1.25|17.563|0.305|1|0.261|16.85||32|0.319|12.614|0.475|1|0.825|8.97||32|0.576|18.306|0.344|1|17.385||32|13.329||32|10.453||32|17.824|0.305|1|17.169||32|13.439|0.475|1|9.546||32|17.687|0.346|1|17.011||32|12.869|0.363|1|9.21||32|17.813|0.479|1|16.777||32|12.399|0.292|1|9.338||32|17.118||32|16.575||32|11.989|0.242|1|8.601||32|16.978||32|16.396||32|11.641|0.207|1|8.204||32|17.291|0.487|1|16.23||32|11.345|0.183|1|7.915||32|16.341|0.233|1|16.077||32|11.099|0.168|1|7.63||32|20.086|5.606|1.144|2.674|12|0|55275.28745078|55277.33835439|55276.3515125||||3.50099993|8|0|55275.28745078|55277.33835439|55276.3515125|11.994|0.53|0.11|3.63700008|20|0|55275.28745078|55277.33835439|55276.34024702|10.093|3.439|0.717|2.329|15|0|55275.28745078|55277.33835439|55276.34024702|14|26|43|0|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005916|1|0.0014838910476764|0.0011215593221048|-0.999998270084526|101000000|
+J134849.80-895336.1|207.2075364|-89.8933874|1.4242|1.3447|0.4429|302.9615743|-27.0248662|269.7621019|-66.5117835|1896.448|117.653|600089401241005684|0600m894_ab41-005684|0600m894_ab41|5684|18.335||1.0|0.970399976|16.401|0.203|5.3|0.897599995|13.088||-1.2|0.979499996|9.542||-0.8|1.21300006|1.01199996|1|0|0.0|0.0|0.0|0.0|0000|H000|0|nnnn|UBUU|2|0000|0|23|1|23|0|23|1|23|24.426|24.562|23.913|23.536|0.0|0.0|0.0|0.0|1032|H|0||0||0||2.47909999|2.43300009|9.941|2.508|0.168|17.3630009|3.25309992|21.769|3.028|0.195|-57.0460014|46.1049995|1096.862|25.509|3.381|-9.70689964|12.0830002|297.771|9.772|1.081|16.315||32|0.261|15.569|0.222|1|0.319|12.407||32|0.825|9.02||32|0.576|17.208||32|16.771|0.359|0|13.705||32|10.023||32|16.576||32|15.888|0.222|1|13.232||32|9.596||32|16.156|0.312|1|15.038|0.131|1|12.846||32|9.267||32|14.895|0.122|1|14.214|0.077|1|12.577||32|9.846||32|14.017|0.066|1|13.554|0.051|1|12.378||32|9.521||32|13.477|0.047|1|13.094|0.039|1|12.207||32|10.732||32|13.116|0.04|1|12.754|0.034|1|12.043||32|9.75||32|12.754|0.033|1|12.422|0.029|1|11.861||32|8.06||32|19.487|5.476|1.142|2.498|11|0|55274.89041135|55276.94144233|55275.95477317|16.52|1.012|0.211|3.21300006|18|0|55274.89041135|55276.94144233|55275.95477317|16.969|||3.02800012|9|0|55274.89041135|55276.94144233|55275.95477317||||4.74599981|9|1|55274.89041135|55276.94144233|55275.95477317|34|-46|38|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241005684|1|-0.0016548598572415|-0.0008507576280721|-0.999998268823657|121000000|
+J183500.27-895336.1|278.7511436|-89.8933776|0.7869|0.8667|-0.2242|303.051402|-27.1204671|270.0406091|-66.4553225|2151.262|611.38|3004089401241005266|3004m894_ab41-005266|3004m894_ab41|5266|17.213|0.136|8.0|0.803200006|16.986||0.8|1.02900004|12.438||1.7|1.01400006|9.451||0.1|0.884800017|0.930299997|1|0|0.0|0.0|0.0|0.004|0000|0000|0|nnnn|BUUU|1|0000|1|22|0|22|0|21|0|21|22.606|22.921|21.581|22.494|0.0|0.0|0.0|0.0|0||0||0||0||20.6380005|2.58400011|9.338|2.648|0.0|2.76909995|3.68140006|21.805|3.415|0.049|77.0690002|45.3639984|1095.24|24.583|0.85|1.81470001|12.2270002|299.018|9.765|0.741|16.627|0.139|0|0.261|16.004||32|0.319|12.154||32|0.825|8.531||32|0.576|17.412|0.161|0|16.753||32|15.142||32|9.543||32|16.888|0.139|0|16.323||32|12.979||32|9.107||32|16.547|0.132|0|16.781|0.542|0|12.697||32|8.763||32|16.233|0.123|0|16.483|0.508|0|12.468||32|8.468||32|15.871|0.106|0|16.082|0.424|0|12.262||32|8.206||32|15.34|0.077|1|15.444|0.278|1|12.081||32|7.971||32|14.528|0.043|1|14.54|0.141|1|11.919||32|7.755||32|13.58|0.021|1|13.608|0.069|1|11.767||32|7.557||32|17.239|0.582|0.124|1.75|20|0|55275.28732341|55277.20605032|55276.13846709|17.572|3.027|0.645|2.20300007|11|0|55275.28732341|55277.20605032|55276.13846709|13.204|2.667|0.582|2.83500004|11|0|55275.28732341|55277.20605032|55276.11598369|11.545|||3.96700001|10|0|55275.28732341|55277.20605032|55276.11598369|-1|88|-73|0|2|1|||||||||||||||||||||||||||||0|||||||3004089401241005266|1|0.0002831247850581|-0.0018392471057037|-0.999998268503721|131000000|
+J091244.31-895336.1|138.1846322|-89.8933756|0.3162|0.2926|-0.0856|302.8342236|-27.0664707|269.7996498|-66.6316713|1961.74|617.52|1201089401241004518|1201m894_ab41-004518|1201m894_ab41|4518|15.83|0.057|19.2|0.761500001|15.756|0.126|8.6|0.970799983|12.329||2.0|1.15199995|8.915||1.0|1.08599997|0.986000001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|18|23|3|23|1|22|2|22|22.764|22.631|21.901|21.869|0.0|0.0|0.0|0.0|0||0||0||0||73.7639999|3.84640002|9.404|2.919|0.083|31.4440002|3.64630008|21.815|3.322|0.005|92.2900009|46.6329994|1096.853|24.306|4.294|14.2639999|14.3879995|298.478|10.137|0.974|14.977|0.046|1|0.261|14.829|0.092|1|0.319|11.826||32|0.825|8.713||32|0.576|15.976|0.064|1|15.922|0.134|1|13.141||32|9.658||32|15.238|0.046|1|15.148|0.092|1|12.651||32|9.289||32|14.613|0.034|1|14.565|0.07|1|12.311||32|9.104||32|14.142|0.027|1|14.133|0.059|1|12.045||32|9.77||32|13.878|0.026|1|13.871|0.055|1|11.82||32|9.366||32|13.766|0.027|1|13.742|0.058|1|11.599||32|14.464||32|13.714|0.03|1|13.68|0.064|1|11.391||32|9.575||32|13.679|0.033|1|13.645|0.071|1|11.214||32|8.016||32|15.815|0.208|0.043|0.983|22|0|55274.89041135|55276.94144233|55275.9260225|15.707|0.555|0.116|1.921|21|0|55274.89041135|55276.94144233|55275.9260225|12.98|1.888|0.402|3.74799991|13|3|55274.89041135|55276.94144233|55275.8949045|8.974|2.109|0.45|4.35300016|12|0|55274.89041135|55276.94144233|55275.8949045|-19|17|82|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241004518|1|-0.0013869579401973|0.0012407530805765|-0.999998268438233|111000000|
+J053318.99-895335.5|83.3291404|-89.893197|0.5146|0.5643|-0.0508|302.8187797|-27.1638159|270.0313242|-66.6667857|1937.68|608.973|600089401241004708|0600m894_ab41-004708|0600m894_ab41|4708|16.763|0.1|10.8|0.818799973|16.356|0.225|4.8|0.96509999|12.073|0.201|5.4|1.05599999|9.374|0.428|2.5|1.16600001|0.994799972|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBC|15|0000|7|21|1|21|2|20|1|20|21.352|21.768|20.183|20.6|0.0|0.0|0.0|0.0|0||0||0||0||31.2530003|2.88089991|9.37|2.868|0.075|18.0909996|3.75119996|21.791|3.521|0.284|234.899994|43.4830017|1098.407|22.567|0.84|28.2150002|11.1300001|298.421|9.194|0.727|16.875|0.344|1|0.261|15.934|0.239|1|0.319|12.143||32|0.825|8.635||32|0.576|17.337|0.296|0|16.667|0.251|0|13.761||32|9.641||32|17.136|0.344|1|16.253|0.239|1|12.968||32|9.211||32|17.195|0.472|1|16.12|0.275|1|12.683||32|8.868||32|16.412||32|16.093|0.333|1|12.451||32|8.575||32|16.308||32|16.197|0.44|1|12.254||32|8.317||32|16.271||32|15.637||32|12.613||32|8.084||32|16.257||32|15.815||32|11.72||32|7.869||32|16.149||32|15.927||32|11.441||32|7.671||32|16.73|0.432|0.094|2.642|20|0|55275.28745078|55277.20605032|55276.18847532|16.367|1.059|0.231|3.30800009|16|0|55275.28745078|55277.20605032|55276.18847532|11.961|1.113|0.249|3.55200005|15|0|55275.28745078|55277.20605032|55276.16736816|9.363|2.333|0.522|3.36800003|13|0|55275.28745078|55277.20605032|55276.16736816|7|44|8|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241004708|1|0.0002165398907215|0.001851442119475|-0.999998262634768|101000000|
+J104039.50-895335.1|160.1645839|-89.8931037|0.0811|0.0807|0.0187|302.8670891|-27.038182|269.7468413|-66.596777|2144.236|614.818|1802089401241003784|1802m894_ab41-003784|1802m894_ab41|3784|11.782|0.023|46.3|1.01400006|11.823|0.023|47.7|1.14600003|11.583|0.152|7.2|1.11199999|9.169||0.5|0.984600008|1.06099999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|21|21|21|21|2|21|0|21|21.34|21.758|21.791|21.621|0.0|0.0|0.0|0.0|0||0||0||0||3069.8999|66.2429962|9.408|2.843|0.038|1177.59998|24.6720009|21.798|3.465|0.047|368.869995|51.5239983|1094.3|25.546|1.612|7.3270998|13.3710003|298.513|10.13|1.068|11.792|0.006|0|0.261|11.808|0.009|0|0.319|11.637|0.212|0|0.825|8.49||32|0.576|12.423|0.007|0|12.567|0.01|0|13.08|0.266|0|9.46||32|12.053|0.006|0|12.127|0.009|0|12.462|0.212|0|9.066||32|11.922|0.006|0|11.957|0.01|0|12.079|0.192|0|8.733||32|11.868|0.007|0|11.881|0.011|0|11.806|0.186|0|8.374||32|11.837|0.007|1|11.836|0.012|1|11.584|0.183|1|8.081||32|11.813|0.007|1|11.798|0.013|1|11.39|0.181|1|7.855||32|11.786|0.008|1|11.754|0.014|1|11.204|0.177|1|7.662||32|11.742|0.008|1|11.696|0.016|1|11.016|0.172|1|7.502||32|11.782|0.019|0.004|0.074|20|0|55274.89041135|55276.94144233|55275.90177109|11.831|0.032|0.007|0.119000003|19|0|55274.89041135|55276.94144233|55275.90177109|11.569|0.525|0.115|4.12799978|17|2|55274.89041135|55276.94144233|55275.90177109|10.462|4.554|0.994|4.57999992|9|0|55274.89041135|55276.94144233|55275.90177109|23|20|-24|0|0|0||||||||||||||||||||||||||748811845|0.073|114.1|1|12.279|0.022|11.952|0.025|11.834|0.026|1802089401241003784|1|-0.0017550012851899|0.0006330650386336|-0.999998259598058|111000000|
+J021706.43-895335.0|34.2768194|-89.8930701|0.7983|0.8014|0.2585|302.8880041|-27.2276954|270.2226708|-66.6207734|1924.861|100.622|2403089401241005865|2403m894_ab41-005865|2403m894_ab41|5865|18.817||-6.3|1.01199996|17.454||-3.8|0.932099998|12.001|0.175|6.2|1.07200003|9.031||1.6|0.960099995|0.993799984|1|0|0.001|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|23|0|24|3|23|0|23|22.87|23.673|22.924|22.887|0.0|0.0|0.0|0.0|0||0||0||0||-14.7460003|2.35500002|9.294|2.708|0.225|-12.3719997|3.29270005|21.751|3.315|0.261|251.059998|40.5009995|1097.954|22.037|1.479|17.1130009|10.7950001|298.226|9.119|0.338|18.174||32|0.261|16.827||32|0.319|11.716||32|0.825|9.279||32|0.576|18.807||32|17.668||32|13.07||32|10.308||32|18.435||32|17.146||32|12.541||32|9.855||32|18.152||32|16.556||32|12.793|0.45|1|9.152||32|17.796||32|16.127||32|12.431|0.4|1|11.34||32|17.272||32|16.543|0.504|1|12.171|0.378|1|8.672||32|16.954||32|16.221|0.439|1|11.949|0.363|1|8.439||32|17.342|0.513|17|15.897|0.377|1|11.727|0.344|1|8.225||32|16.751|0.339|17|15.619|0.333|1|11.502|0.322|1|8.027||32||||2.656|2|0|55275.28745078|55277.33835439|55276.32586338||||1.36300004|3|0|55275.28745078|55277.33835439|55276.3515125|11.833|0.933|0.195|2.34500003|17|0|55275.28745078|55277.33835439|55276.34024702|9.585|1.962|0.409|3.41799998|17|0|55275.28745078|55277.33835439|55276.34024702|80|-15|10|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005865|1|0.0015421541675151|0.0010510722448449|-0.999998258502313|101000000|
+J004248.98-895334.9|10.704113|-89.8930547|0.1061|0.1087|0.0194|302.9364397|-27.2350259|270.2643889|-66.5803501|1995.988|627.15|89401241004211|0000m894_ab41-004211|0000m894_ab41|4211|13.786|0.025|42.6|1.03299999|13.778|0.035|30.9|1.03999996|12.098|0.207|5.2|1.03799999|9.555||0.1|1.11500001|1.05299997|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|AABU|7|0000|21|21|21|21|2|20|0|20|21.72|21.572|20.899|20.652|0.0|0.0|0.0|0.0|8|h|0||0||0||484.959991|11.382|9.334|2.713|0.18|194.419998|6.30210018|21.767|3.425|0.144|229.509995|43.8610001|1099.662|23.367|5.068|1.153|11.3579998|298.58|9.323|1.951|13.581|0.015|1|0.261|13.509|0.041|1|0.319|12.565|0.455|0|0.825|8.607||32|0.576|14.301|0.017|0|14.379|0.049|0|13.294||32|9.82||32|13.842|0.015|1|13.828|0.041|1|13.39|0.455|0|9.183||32|13.522|0.014|1|13.453|0.037|1|12.819|0.346|1|8.733||32|13.108|0.012|1|13.009|0.031|1|12.325|0.27|1|8.439||32|12.491|0.009|1|12.405|0.022|1|11.87|0.214|1|8.239||32|11.731|0.007|1|11.72|0.014|1|11.443|0.169|1|8.054||32|11.035|0.006|1|11.102|0.01|1|11.068|0.138|1|7.879||32|10.574|0.006|1|10.67|0.009|1|10.796|0.123|1|7.732||32|13.794|0.043|0.009|0.259|20|0|55275.55205887|55277.33835439|55276.39639986|13.798|0.133|0.029|0.646000028|20|0|55275.55205887|55277.33835439|55276.39639986|11.962|1.101|0.246|2.20900011|16|0|55275.55205887|55277.33835439|55276.38568892|12.187|||3.60800004|10|0|55275.55205887|55277.33835439|55276.38568892|41|-27|-24|1|1|0||||||||||||||||||||||||||1085364200|0.024|-129.2|1|14.545|0.035|14.072|0.046|13.862|0.057|89401241004211|1|0.0018340672301105|0.0003466869627056|-0.999998258001255|101000000|
+J062557.59-895334.9|96.4899764|-89.8930486|0.1236|0.126|-0.013|302.8124737|-27.1399711|269.9694789|-66.6669719|2160.535|608.435|1201089401241004202|1201m894_ab41-004202|1201m894_ab41|4202|14.429|0.029|38.0|1.27100003|14.201|0.041|26.2|0.968699992|12.001|0.174|6.2|1.10899997|8.82||1.9|1.028|1.09300005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|23|23|23|23|2|22|0|22|22.624|22.285|21.805|21.741|0.0|0.0|0.0|0.0|0||0||0||0||268.190002|7.05840015|9.326|2.833|0.032|131.740005|5.01879978|21.801|3.499|0.0|251.009995|40.3390007|1097.369|22.562|2.434|22.8649998|12.0710001|298.259|9.596|1.54|14.211|0.024|1|0.261|13.993|0.048|1|0.319|11.988||32|0.825|8.371||32|0.576|14.936|0.026|1|14.834|0.056|1|13.355||32|9.456||32|14.472|0.024|1|14.312|0.048|1|12.813||32|8.947||32|14.219|0.024|1|14.011|0.047|1|12.348||32|8.614||32|14.045|0.025|1|13.797|0.047|1|12.595|0.449|1|8.343||32|13.929|0.027|1|13.649|0.05|1|12.182|0.369|1|8.085||32|13.857|0.03|1|13.557|0.054|1|11.886|0.334|1|7.884||32|13.792|0.032|1|13.49|0.059|1|11.68|0.321|1|7.724||32|13.694|0.034|1|13.392|0.062|1|11.525|0.32|1|7.596||32|14.431|0.063|0.013|0.481|22|0|55275.02271543|55277.20605032|55276.08711043|14.209|0.216|0.045|0.700999975|22|1|55275.02271543|55277.20605032|55276.08711043|12.019|0.872|0.186|2.875|20|0|55275.02271543|55277.20605032|55276.06331461|9.588|2.658|0.567|3.46799994|13|0|55275.02271543|55277.20605032|55276.06331461|12|17|4|0|0|0||||||||||||||||||||||||||870486845|0.205|172.7|1|16.465|0.194|15.607|0.182|14.839|0.149|1201089401241004202|1|-0.000210986586153|0.0018546902341926|-0.99999825780288|111000000|
+J171944.13-895334.7|259.9338854|-89.8929979|0.2357|0.2607|-0.0308|303.0426067|-27.0864319|269.9531815|-66.4553469|1954.176|615.995|2403089401241005050|2403m894_ab41-005050|2403m894_ab41|5050|15.66|0.046|23.8|0.875699997|15.734|0.122|8.9|0.861199975|12.481||1.2|0.980000019|9.323||0.2|0.996699989|0.924199998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|20|22|3|22|0|21|0|21|23.245|22.914|22.093|23.029|0.0|0.0|0.0|0.0|0||0||0||0||86.3249969|3.62360001|9.375|2.462|0.0|32.0999985|3.60549998|21.796|3.257|0.0|61.1870003|50.0660019|1095.472|26.028|0.0|2.7507|13.4040003|298.76|9.838|0.721|15.527|0.086|0|0.261|16.008|0.447|0|0.319|11.997||32|0.825|8.996||32|0.576|16.201|0.092|0|16.613|0.418|0|13.349||32|10.002||32|15.788|0.086|0|16.327|0.447|0|12.822||32|9.572||32|15.606|0.093|0|15.616||32|13.004|0.426|0|9.238||32|15.496|0.104|1|15.732||32|12.557|0.349|1|8.955||32|15.371|0.112|1|15.829||32|12.321|0.339|1|8.703||32|15.163|0.109|1|15.65||32|12.228|0.368|1|8.477||32|14.899|0.099|1|15.487||32|12.178|0.408|1|8.27||32|14.622|0.089|1|15.338||32|12.07|0.424|1|8.079||32|15.668|0.25|0.053|1.12|21|1|55275.02271543|55276.94144233|55276.0392246|15.803|0.522|0.111|2.3440001|21|0|55275.02271543|55276.94144233|55276.0392246|13.06|2.395|0.523|4.24499989|13|0|55275.02271543|55276.94144233|55276.01201536|10.607|3.245|0.708|4.35500002|9|0|55275.02271543|55276.94144233|55276.01201536|8|20|-53|0|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005050|1|-0.0003264166329612|-0.0018387906571301|-0.99999825614903|121000000|
+J202931.98-895334.6|307.38325|-89.8929633|0.434|0.4232|-0.1478|303.0413776|-27.1725417|270.1628168|-66.4755737|2014.225|630.22|3004089401241004814|3004m894_ab41-004814|3004m894_ab41|4814|16.434|0.074|14.8|0.993700027|16.452|0.227|4.8|1.04700005|12.648||0.9|1.06599998|9.565||-1.7|1.22599995|1.07700002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|12|22|2|22|0|21|0|21|23.15|23.453|23.049|23.239|0.0|0.0|0.0|0.0|0||0||0||0||42.2919998|2.86450005|9.271|2.896|0.636|16.5709991|3.46519995|21.736|3.445|0.152|43.1660004|47.5870018|1097.303|24.813|1.386|-19.8630009|11.8249998|298.689|9.581|0.896|16.238|0.218|0|0.261|15.678||32|0.319|12.443||32|0.825|8.919||32|0.576|16.852|0.214|0|16.326||32|13.551||32|9.936||32|16.499|0.218|0|15.997||32|13.268||32|9.495||32|16.371|0.249|0|15.873||32|12.96||32|9.152||32|16.298|0.29|0|15.755||32|12.722||32|8.86||32|16.258|0.337|0|15.584||32|12.518||32|8.6||32|16.312|0.418|0|15.422||32|12.338||32|8.366||32|15.704||32|15.3||32|12.174||32|8.049||32|15.698||32|15.185||32|12.022||32|7.684||32|16.435|0.264|0.056|0.82|21|0|55275.28745078|55277.33835439|55276.28282193|16.466|1.288|0.275|3.0150001|16|0|55275.28745078|55277.33835439|55276.28282193|13.314|3.984|0.869|2.27800012|9|0|55275.28745078|55277.33835439|55276.26721256||||4.14499998|9|0|55275.28745078|55277.33835439|55276.26721256|-11|37|39|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004814|1|0.0011342299567561|-0.001484410374248|-0.999998255022601|131000000|
+J101853.96-895334.1|154.7248591|-89.8928093|0.1816|0.1687|-0.0224|302.8575987|-27.0438247|269.7558745|-66.6062862|2169.049|605.208|1802089401241004023|1802m894_ab41-004023|1802m894_ab41|4023|14.991|0.036|29.8|0.994899988|14.788|0.06|18.1|0.782500029|12.754||0.7|0.905399978|9.114|0.389|2.8|0.99089998|0.916299999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUC|11|0000|21|21|17|21|0|21|0|21|22.749|22.659|21.913|21.749|0.0|0.0|0.0|0.0|0||0||0||0||159.759995|5.35650015|9.423|2.851|0.112|76.7030029|4.24009991|21.81|3.31|0.158|31.8349991|46.8069992|1095.488|25.087|2.929|35.8470001|12.8409996|297.988|9.932|1.505|14.857|0.058|0|0.261|14.662|0.071|0|0.319|12.378||32|0.825|8.107||32|0.576|15.534|0.062|0|15.442|0.079|0|13.588||32|9.141||32|15.118|0.058|0|14.981|0.071|0|13.203||32|8.683||32|14.949|0.064|0|14.788|0.076|0|12.928||32|8.426||32|14.867|0.073|1|14.704|0.087|1|12.711||32|8.261||32|14.813|0.084|1|14.676|0.102|1|12.484||32|8.082||32|14.761|0.094|1|14.664|0.119|1|12.178||32|7.838||32|14.695|0.103|1|14.644|0.136|1|11.841||32|7.592||32|14.581|0.107|1|14.58|0.148|1|11.543||32|7.4||32|15.002|0.114|0.025|0.54|20|0|55274.89041135|55276.94144233|55275.93643125|14.8|0.237|0.052|0.786000013|20|0|55274.89041135|55276.94144233|55275.93643125|13.326|2.346|0.512|2.76699996|10|0|55274.89041135|55276.94144233|55275.93643125|9.145|1.93|0.421|2.94799995|15|0|55274.89041135|55276.94144233|55275.93643125|-12|-13|-14|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004023|1|-0.001691731200397|0.0007987798540188|-0.999998249996614|111000000|
+J165558.49-895334.0|253.9937145|-89.8927918|0.3787|0.4191|0.0295|303.0373607|-27.0763613|269.9259892|-66.4576394|1981.871|624.811|2403089401241005254|2403m894_ab41-005254|2403m894_ab41|5254|16.428|0.073|14.9|0.893999994|15.929|0.143|7.6|0.948800027|12.651|0.4|2.7|1.03900003|9.098||0.8|0.895500004|0.941200018|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0nnn|ABCU|7|0000|15|22|1|22|0|21|0|21|21.816|21.814|21.015|21.759|0.0|0.0|0.0|0.0|8|h|0||0||0||42.5390015|2.84719992|9.346|2.471|0.0|26.8080006|3.52889991|21.833|3.346|0.0|137.899994|50.7550011|1094.598|25.78|0.0|10.3249998|13.0299997|298.932|10.021|0.293|16.467|0.334|0|0.261|15.99|0.35|0|0.319|12.354|0.397|0|0.825|8.723||32|0.576|17.071|0.33|0|16.701|0.362|0|13.132||32|9.743||32|16.728|0.334|0|16.309|0.35|0|13.179|0.397|0|9.299||32|16.664|0.408|0|16.205|0.412|0|12.74|0.342|0|8.944||32|16.705|0.526|1|16.256|0.534|1|12.424|0.317|0|8.668||32|15.84||32|15.447||32|12.148|0.295|1|8.446||32|15.619||32|15.312||32|11.896|0.276|1|8.233||32|15.998|0.452|1|15.078||32|11.69|0.265|1|8.44||32|15.62|0.368|1|15.557|0.531|1|11.508|0.257|1|7.912||32|16.396|0.222|0.047|1.304|21|0|55275.02271543|55276.94144233|55276.0392246|15.927|0.719|0.153|3.5999999|19|0|55275.02271543|55276.94144233|55276.0392246|12.106|1.025|0.224|3.19000006|14|0|55275.02271543|55276.94144233|55276.01201536|9.776|1.513|0.33|3.14700007|12|0|55275.02271543|55276.94144233|55276.01201536|1|48|-22|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241005254|1|-0.0005159522315696|-0.0017985945596158|-0.99999824942392|121000000|
+J152037.00-895333.6|230.1541932|-89.8926828|0.7324|0.7885|0.2151|303.0049232|-27.0427635|269.8277094|-66.4782189|2097.819|628.542|2403089401241005536|2403m894_ab41-005536|2403m894_ab41|5536|17.099|0.124|8.7|1.02699995|16.637||2.0|0.915400028|12.374||1.7|1.046|9.441||0.0|1.051|1.00600004|1|0|0.0|0.0|0.0|0.0|0000|h000|0|1nnn|BUUU|1|0000|4|21|0|21|1|20|0|20|22.042|22.092|21.828|22.326|0.0|0.0|0.0|0.0|8|h|0||0||0||22.9309998|2.62140012|9.393|2.482|0.0|6.96619987|3.49880004|21.795|3.198|0.0|82.6520004|47.7010002|1096.036|24.995|1.765|-0.318879992|13.2580004|298.051|9.711|1.002|16.583|0.178|1|0.261|16.685|0.452|1|0.319|11.982||32|0.825|8.61||32|0.576|17.481|0.228|1|16.879||32|13.314||32|9.685||32|16.844|0.178|1|17.004|0.452|1|12.807||32|9.186||32|16.359|0.149|1|16.44|0.35|1|12.417||32|8.844||32|15.974|0.129|1|15.977|0.282|1|12.118||32|8.613||32|15.719|0.122|1|15.607|0.241|1|11.89||32|8.353||32|15.531|0.121|1|15.289|0.211|1|11.688||32|8.117||32|15.322|0.116|1|15.004|0.189|1|12.214|0.518|1|7.901||32|15.112|0.11|1|14.75|0.172|1|12.053|0.513|1|7.702||32|17.243|0.619|0.135|3.36|19|1|55274.89041135|55276.94144233|55275.96791402|17.162|1.974|0.431|2.16199994|13|0|55274.89041135|55276.94144233|55275.96791402|12.596|1.902|0.425|5.27299976|11|1|55274.89041135|55276.94144233|55275.93577879||||3.1170001|8|0|55274.89041135|55276.94144233|55275.93577879|39|-66|0|1|1|0|||||||||||||||||||||||||||||0|||||||2403089401241005536|1|-0.0012000999139607|-0.0014380652795643|-0.999998245862686|121000000|
+J032208.88-895331.7|50.5370311|-89.8921428|1.0216|1.1668|0.4063|302.8577865|-27.2135019|270.1729165|-66.6438835|1999.772|73.813|2403089401241005910|2403m894_ab41-005910|2403m894_ab41|5910|18.851||-4.4|0.831099987|17.506||-0.6|0.894200027|12.024|0.185|5.9|1.01699996|9.616||-0.9|1.01800001|0.932600021|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|0|24|2|23|0|23|24.454|24.597|23.441|23.617|0.0|0.0|0.0|0.0|0||0||0||0||-10.0240002|2.28279996|9.323|2.692|0.0|-1.95910001|3.13700008|21.744|3.246|0.0|245.740005|41.8209991|1099.184|21.942|0.0|-9.7177|11.29|298.689|9.123|0.695|17.133|0.382|1|0.261|16.281|0.543|1|0.319|12.458||32|0.825|9.031||32|0.576|17.472||32|16.412||32|14.695||32|10.032||32|17.394|0.382|1|16.6|0.543|1|13.283||32|9.607||32|16.806|0.29|1|16.011|0.408|1|13.008||32|9.283||32|16.316|0.234|1|15.489|0.315|1|12.77||32|9.008||32|15.842|0.186|1|15.023|0.248|1|12.567||32|8.768||32|15.403|0.149|1|14.64|0.207|1|12.387||32|8.552||32|15.022|0.125|1|14.346|0.184|1|12.224||32|8.353||32|14.708|0.11|1|14.118|0.172|1|12.07||32|8.17||32||||0.446|3|0|55275.28745078|55277.33835439|55276.29362153||||2.87199998|7|0|55275.28745078|55277.33835439|55276.29362153|11.947|0.938|0.196|3.65100002|19|0|55275.28745078|55277.33835439|55276.27983905||||2.37599993|6|0|55275.28745078|55277.33835439|55276.27983905|72|70|44|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241005910|1|0.0011964539137495|0.0014533274122466|-0.999998228167163|101000000|
+J021246.27-895331.1|33.1928144|-89.8919792|1.1921|1.2084|0.4034|302.8897029|-27.2294397|270.2277926|-66.6196809|2175.957|604.244|600089401241005540|0600m894_ab41-005540|0600m894_ab41|5540|17.979|0.275|3.9|0.882700026|17.131||0.8|0.968200028|12.153|0.207|5.2|1.15199995|9.252||0.6|0.962499976|0.989400029|1|0|0.001|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|0|24|1|24|3|23|0|23|22.735|23.575|22.872|22.841|0.0|0.0|0.0|0.0|0||0||0||0||10.198|2.58579993|9.269|2.748|0.104|2.42389989|3.22049999|21.725|3.303|0.138|218.130005|41.5859985|1100.129|22.989|2.262|7.12090015|12.2180004|298.315|9.224|0.366|17.168||32|0.261|16.849|0.501|1|0.319|11.757||32|0.825|8.703||32|0.576|17.502||32|16.947||32|13.057||32|9.713||32|17.429||32|17.168|0.501|1|12.582||32|9.279||32|17.574||32|16.799|0.462|1|12.244||32|8.932||32|17.338||32|16.504|0.437|1|11.948||32|8.639||32|17.141||32|16.28|0.426|1|11.676||32|8.379||32|16.958||32|16.192|0.465|1|11.439||32|8.144||32|16.795||32|16.154|0.521|1|11.973|0.525|1|7.929||32|16.643||32|15.34||32|11.754|0.493|1|7.73||32|17.975|1.076|0.22|2.363|16|0|55275.28745078|55277.33835439|55276.3515125|17.63|3.714|0.758|3.94799995|16|0|55275.28745078|55277.33835439|55276.3515125|11.993|1.146|0.239|6.94199991|18|1|55275.28745078|55277.33835439|55276.34024702|10.503|4.925|1.027|3.36400008|11|0|55275.28745078|55277.33835439|55276.34024702|-1|-39|6|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241005540|1|0.0015776953053026|0.0010321323118275|-0.999998222788628|101000000|
+J055105.11-895331.0|87.7713045|-89.8919514|0.5638|0.6345|-0.0835|302.8146675|-27.1562333|270.0106094|-66.6686754|1916.595|602.544|600089401241004680|0600m894_ab41-004680|0600m894_ab41|4680|16.744|0.104|10.5|0.7579|17.018||0.6|0.927200019|12.073|0.2|5.4|1.11800003|9.483||-0.2|1.04499996|0.956499994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|AUBU|5|0000|5|20|0|20|3|19|0|19|20.882|21.494|20.347|20.181|0.0|0.0|0.0|0.0|0||0||0||0||31.7889996|3.0388|9.376|2.908|0.0|2.34809995|3.7428|21.794|3.6|0.052|234.960007|43.3499985|1096.574|22.241|0.0|-1.95640004|12.7519999|298.724|9.49|0.869|16.064|0.127|1|0.261|15.776||32|0.319|12.161||32|0.825|8.838||32|0.576|16.854|0.148|0|16.532||32|13.429||32|9.846||32|16.325|0.127|1|16.095||32|12.986||32|9.414||32|15.917|0.113|1|16.537|0.529|1|12.649||32|9.071||32|15.423|0.089|1|16.063|0.424|1|12.386||32|8.783||32|14.892|0.066|1|15.448|0.29|1|12.154||32|8.526||32|14.472|0.053|1|14.968|0.221|1|11.891||32|8.206||32|14.215|0.048|1|14.706|0.202|1|11.586||32|7.827||32|14.05|0.048|1|14.569|0.205|1|11.942|0.47|1|7.54||32|16.755|0.417|0.093|2.097|19|0|55275.28745078|55277.20605032|55276.20045053|18.11|5.813|1.3|2.352|11|0|55275.28745078|55277.20605032|55276.20045053|11.888|0.753|0.173|2.97399998|15|0|55275.28745078|55277.20605032|55276.17886275|14.5|||3.01200008|8|0|55275.28745078|55277.20605032|55276.17886275|0|25|-28|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004680|1|0.0000733355865764|0.0018843759183357|-0.999998221873064|101000000|
+J020205.66-895330.9|30.5236039|-89.891929|1.2488|1.1463|0.4191|302.8950359|-27.2311272|270.234554|-66.6154225|2187.629|598.126|600089401241005481|0600m894_ab41-005481|0600m894_ab41|5481|18.133||1.5|0.903999984|17.46||-2.1|0.983399987|11.835|0.155|7.0|0.994700015|9.204||0.9|0.959500015|0.957199991|1|0|0.001|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|0|24|3|23|0|23|23.21|23.543|22.923|22.782|0.0|0.0|0.0|0.0|0||0||0||0||3.80920005|2.51990008|9.28|2.751|0.217|-7.01049995|3.27349997|21.748|3.327|0.243|292.359985|41.8699989|1100.323|23.01|1.655|9.95750046|11.5120001|298.515|9.262|0.107|17.048||32|0.261|16.808||32|0.319|11.819||32|0.825|8.994||32|0.576|17.627||32|17.489||32|13.09||32|9.997||32|17.309||32|17.127||32|12.644||32|9.57||32|17.017||32|16.758||32|12.316||32|9.105||32|17.136|0.445|1|16.037||32|12.041||32|8.678||32|16.124|0.211|1|15.902|0.342|1|11.833||32|8.332||32|15.352|0.122|1|15.209|0.213|1|11.653||32|7.969||32|14.889|0.093|17|14.79|0.169|1|11.45||32|7.623||32|14.64|0.085|17|14.555|0.156|1|11.981|0.533|1|7.386||32|19.25|3.282|0.67|2.898|13|0|55275.28745078|55277.33835439|55276.3515125||||1.97800004|8|0|55275.28745078|55277.33835439|55276.3515125|11.782|0.94|0.196|3.227|19|1|55275.28745078|55277.33835439|55276.34024702|10.53|3.28|0.684|2.66799998|12|0|55275.28745078|55277.33835439|55276.34024702|-61|-25|-12|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005481|1|0.0016248042214855|0.0009579846619718|-0.999998221136732|101000000|
+J162921.13-895330.5|247.3380429|-89.8918328|1.1299|1.2396|0.1864|303.0307798|-27.0652759|269.8956468|-66.4608581|2083.722|71.121|600089401241005774|0600m894_ab41-005774|0600m894_ab41|5774|17.738|0.208|5.2|0.954900026|17.153|0.419|2.6|0.934899986|12.693||0.5|1.12899995|9.498||-1.7|1.08500004|1.02100003|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BCUU|3|0000|1|22|1|22|1|21|0|21|22.275|22.665|21.726|21.854|0.0|0.0|0.0|0.0|8|h|0||0||0||12.7299995|2.44099998|9.477|2.483|0.015|8.68330002|3.35419989|21.811|3.144|0.023|28.5839996|52.0489998|1096.54|26.063|3.051|-21.3710003|12.585|299.01|9.76|1.065|16.897||32|0.261|15.741||32|0.319|12.377||32|0.825|8.863||32|0.576|17.447||32|16.418||32|13.559||32|9.871||32|17.158||32|16.06||32|13.202||32|9.439||32|17.084||32|15.777||32|12.919||32|9.096||32|21.401||32|15.545||32|12.686||32|8.802||32|16.91||32|15.345||32|12.485||32|8.543||32|16.729||32|15.165||32|12.305||32|8.308||32|16.563||32|15.0||32|12.14||32|7.939||32|16.41||32|14.848||32|11.989||32|7.619||32|17.744|1.058|0.226|3.387|17|0|55275.02271543|55276.94144233|55275.97607081|17.208|2.366|0.504|3.12899995|14|0|55275.02271543|55276.94144233|55275.97607081|13.293|3.959|0.864|3.60800004|12|0|55275.02271543|55276.94144233|55275.94585425||||3.57599998|6|0|55275.02271543|55276.94144233|55275.94585425|11|-4|-24|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005774|1|-0.0007273846517732|-0.0017421171752352|-0.99999821796807|121000000|
+J193216.66-895330.2|293.0694525|-89.8917233|0.2471|0.2491|-0.0686|303.0516708|-27.1472983|270.1062363|-66.461055|2084.471|633.154|3004089401241004490|3004m894_ab41-004490|3004m894_ab41|4490|15.678|0.044|24.4|1.02600002|16.383|0.219|4.9|0.927299976|12.508||1.6|1.02400005|8.958||1.2|1.01800001|0.995199978|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|22|23|1|23|0|22|0|22|23.808|23.666|22.992|22.855|0.0|0.0|0.0|0.0|0||0||0||0||84.8840027|3.47390008|9.325|2.817|0.014|17.6560001|3.56699991|21.731|3.468|0.138|70.2129974|43.5740013|1094.157|24.55|0.395|15.8940001|12.7360001|298.891|9.77|0.0|15.654|0.098|0|0.261|16.219|0.322|0|0.319|12.522||32|0.825|8.698||32|0.576|16.251|0.096|0|16.866|0.313|0|13.711||32|9.768||32|15.915|0.098|0|16.538|0.322|0|13.347||32|9.274||32|15.835|0.119|1|16.46|0.388|1|14.628||32|8.839||32|15.83|0.146|1|16.428|0.467|1|12.832||32|8.523||32|15.794|0.17|1|15.668||32|12.632||32|8.31||32|15.632|0.172|1|15.506||32|12.452||32|8.155||32|15.315|0.15|1|15.831|0.444|1|12.288||32|8.032||32|14.927|0.12|1|15.281|0.308|1|12.137||32|8.196||32|15.684|0.238|0.05|0.934|22|1|55275.28732341|55277.20605032|55276.17050011|16.248|0.939|0.196|2.96700001|16|0|55275.28732341|55277.20605032|55276.17050011|12.86|1.381|0.294|1.78699994|11|0|55275.28732341|55277.20605032|55276.15049473|9.01|1.119|0.239|4.83900023|13|0|55275.28732341|55277.20605032|55276.15049473|4|77|19|0|2|0||||||||||||||||||||||||||1149178801|0.266|43.8|1|15.845|0.069|15.646|0.163|15.338|0.192|3004089401241004490|1|0.0007405052415455|-0.0017386583088204|-0.999998214358042|131000000|
+J093217.46-895329.9|143.0727851|-89.8916637|0.6161|0.5801|-0.1624|302.8390173|-27.0581801|269.7817089|-66.625646|1937.687|613.333|1201089401241005068|1201m894_ab41-005068|1201m894_ab41|5068|16.816|0.101|10.8|0.955600023|17.341|0.483|2.2|0.951399982|13.125||-0.8|1.05999994|9.475||0.1|0.959699988|0.977999985|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|8|23|0|23|0|22|0|22|22.758|22.89|21.954|21.888|0.0|0.0|0.0|0.0|0||0||0||0||29.7679996|2.76810002|9.308|2.832|0.104|7.30340004|3.24600005|21.808|3.295|0.044|-37.1339989|44.5589981|1097.123|25.114|1.366|0.752839983|12.4779997|297.662|9.747|0.592|16.418|0.108|0|0.261|15.857||32|0.319|12.521||32|0.825|8.834||32|0.576|17.108|0.115|0|16.467||32|13.727||32|9.867||32|16.679|0.108|0|16.176||32|13.346||32|9.41||32|16.514|0.119|0|16.094||32|12.879||32|9.008||32|16.468|0.141|0|15.959||32|12.417||32|8.561||32|16.473|0.171|0|15.753||32|11.998||32|8.166||32|16.514|0.209|0|15.574||32|12.276|0.46|0|7.908||32|16.527|0.246|1|15.41||32|11.778|0.339|1|7.711||32|16.303|0.231|1|15.258||32|11.379|0.27|1|7.495||32|16.792|0.467|0.097|3.569|22|0|55274.89041135|55276.94144233|55275.9260225|17.581|2.957|0.617|3.64700007|12|0|55274.89041135|55276.94144233|55275.9260225|14.22|8.304|1.77|4.29899979|7|0|55274.89041135|55276.94144233|55275.8949045||||3.61199999|9|0|55274.89041135|55276.94144233|55275.8949045|-25|37|15|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005068|1|-0.0015115239874785|0.0011360074065527|-0.999998212389606|111000000|
+J041457.36-895329.8|63.7390354|-89.8916234|0.6638|0.7199|0.2088|302.8373842|-27.1965052|270.1210243|-66.6578533|1793.532|477.577|89401241005751|0000m894_ab41-005751|0000m894_ab41|5751|17.447|0.17|6.4|2.39299989|17.087|0.393|2.8|1.02199996|11.554|0.117|9.3|1.09099996|8.89||1.9|0.999499977|1.38100004|1|0|0.0|0.0|0.0|0.0|0000|HH00|0|nn0n|BCBU|7|0000|2|24|2|24|4|23|0|23|23.615|23.862|22.888|22.621|0.0|0.0|0.0|0.0|1032|H|1032|H|0||0||16.6369991|2.60829997|9.359|2.577|0.356|9.23309994|3.34050012|21.81|3.354|0.189|378.730011|40.6860008|1098.382|21.773|1.206|21.6389999|11.217|298.973|9.268|0.897|14.139|0.029|0|0.261|13.878|0.073|0|0.319|11.649|0.187|0|0.825|8.414||32|0.576|15.409|0.053|0|15.212|0.133|0|13.28|0.282|0|9.57||32|14.4|0.029|0|14.197|0.073|0|12.474|0.187|0|8.99||32|13.555|0.018|0|13.339|0.043|0|11.852|0.135|0|8.437||32|12.717|0.011|0|12.496|0.025|0|11.281|0.099|0|8.611|0.427|1|11.782|0.008|1|11.559|0.014|1|10.675|0.068|1|8.291|0.405|1|10.732|0.006|1|10.545|0.008|1|10.032|0.045|1|8.17|0.45|1|9.701|0.006|1|9.615|0.006|1|9.433|0.03|1|8.142|0.535|1|8.894|0.005|17|8.904|0.006|1|8.934|0.022|1|7.319||32|17.643|1.303|0.266|3.742|19|2|55275.28745078|55277.33835439|55276.29362153|17.086|2.646|0.54|3.68499994|13|1|55275.28745078|55277.33835439|55276.29362153|11.533|0.605|0.126|3.43899989|22|1|55275.28745078|55277.33835439|55276.27983905|9.712|3.382|0.705|1.85300004|14|0|55275.28745078|55277.33835439|55276.27983905|62|-8|-16|2|0|0|||||||||||||||||||||||||||||0|||||||89401241005751|1|0.0008369258697063|0.0016962993569569|-0.99999821106019|101000000|
+J233012.58-895329.7|352.5524403|-89.8916057|1.3558|1.1554|-0.1625|302.9742229|-27.2298073|270.2700469|-66.5464266|2084.78|633.422|89401241005392|0000m894_ab41-005392|0000m894_ab41|5392|18.05|0.279|3.9|1.00399995|17.374||0.1|0.973100007|12.074|0.201|5.4|1.03299999|9.566||-0.2|0.999599993|0.999300003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|1|23|0|23|2|22|0|23|24.386|24.635|23.961|23.379|0.0|0.0|0.0|0.0|0||0||0||0||9.55010033|2.4533999|9.209|2.802|0.167|0.353069991|3.3671|21.77|3.473|0.147|234.649994|43.4029999|1099.702|23.721|0.727|-2.1164|11.8219995|298.543|9.774|1.209|17.348|0.427|1|0.261|16.401||32|0.319|12.334|0.341|1|0.825|8.917||32|0.576|18.142|0.494|1|17.05||32|13.778|0.428|1|9.931||32|17.609|0.427|1|16.72||32|13.159|0.341|1|9.493||32|17.199|0.379|1|16.535||32|12.816|0.322|1|10.595||32|16.919|0.363|1|22.894||32|12.615|0.332|1|8.852||32|16.74|0.371|1|16.2||32|12.467|0.349|1|9.216||32|16.575|0.376|1|16.02||32|12.361|0.374|1|8.283||32|16.377|0.365|1|15.854||32|12.322|0.42|1|8.172||32|16.118|0.33|1|15.702||32|12.318|0.481|1|10.656||32|18.535|1.945|0.406|2.51|15|0|55275.55205887|55277.33835439|55276.40926968|20.971|||3.24799991|10|0|55275.55205887|55277.33835439|55276.40926968|11.838|0.692|0.148|2.76900005|17|0|55275.55205887|55277.33835439|55276.40011746||||4.76800013|11|0|55275.55205887|55277.33835439|55276.40639074|5|-23|11|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005392|1|0.0018758771888279|-0.0002452174616288|-0.999998210474983|131000000|
+J181119.94-895329.6|272.8331148|-89.8915696|1.1097|1.2265|-0.2361|303.0518685|-27.1092276|270.0134149|-66.4524105|2179.648|603.545|3004089401241005505|3004m894_ab41-005505|3004m894_ab41|5505|17.727|0.211|5.1|0.921400011|16.979|0.371|2.9|0.922800004|13.057||-1.1|1.02499998|9.47||-1.0|0.956900001|0.953000009|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|1|22|1|22|0|21|0|21|22.821|22.662|21.973|22.537|0.0|0.0|0.0|0.0|0||0||0||0||12.8540001|2.50209999|9.335|2.437|0.018|10.1940002|3.48399997|21.788|3.375|0.12|-49.9129982|47.4410019|1095.059|25.111|4.247|-12.2709999|12.9099998|299.325|9.89|0.749|16.957||32|0.261|16.025||32|0.319|11.789||32|0.825|8.591||32|0.576|17.578||32|16.607||32|12.974||32|9.605||32|17.218||32|16.344||32|12.614||32|9.167||32|16.938||32|16.28||32|12.334||32|8.823||32|16.704||32|16.294||32|12.1||32|8.529||32|16.5||32|16.222||32|11.896||32|8.269||32|16.319||32|16.042||32|11.716||32|8.034||32|16.155||32|15.879||32|11.552||32|7.819||32|16.003||32|15.727||32|11.4||32|7.62||32|17.538|0.837|0.178|2.252|17|0|55275.28732341|55277.20605032|55276.13846709|16.889|2.105|0.449|3.03600001|11|1|55275.28732341|55277.20605032|55276.13846709|15.699|||2.10100007|8|0|55275.28732341|55277.20605032|55276.11598369||||2.30699992|7|0|55275.28732341|55277.20605032|55276.11598369|-43|5|-19|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005505|1|0.0000935389581362|-0.0018901524174429|-0.999998209285548|131000000|
+J105502.92-895329.5|163.7621861|-89.8915344|0.3155|0.291|-0.0223|302.8727001|-27.0333673|269.7378795|-66.59082|2128.723|624.278|1802089401241004243|1802m894_ab41-004243|1802m894_ab41|4243|15.87|0.055|19.9|0.954599977|15.821|0.137|7.9|1.01699996|12.956||-1.6|0.965900004|9.434||-0.3|1.00899994|0.983200014|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|18|21|3|21|0|21|0|21|20.916|21.118|20.846|20.999|0.0|0.0|0.0|0.0|0||0||0||0||71.1200027|3.57660007|9.555|2.805|0.091|29.6299992|3.73230004|21.863|3.44|0.147|-85.5759964|52.0789986|1095.702|25.936|2.712|-4.11810017|13.3400002|298.169|9.949|0.875|15.331|0.058|1|0.261|15.174|0.134|1|0.319|12.43||32|0.825|8.537||32|0.576|16.159|0.07|0|16.15|0.175|0|13.811||32|9.711||32|15.592|0.058|1|15.493|0.134|1|13.255||32|9.113||32|15.042|0.045|1|14.916|0.102|1|12.666||32|8.578||32|14.385|0.031|1|14.31|0.073|1|12.218||32|8.187||32|13.775|0.022|1|13.743|0.052|1|12.539|0.458|1|7.939||32|13.258|0.016|1|13.223|0.038|1|12.12|0.367|1|7.721||32|12.727|0.012|1|12.699|0.028|1|11.732|0.299|1|8.196|0.524|1|12.208|0.01|1|12.215|0.021|1|11.421|0.258|1|7.922|0.485|1|15.878|0.289|0.063|1.359|20|1|55274.89041135|55276.94144233|55275.90177109|15.799|0.882|0.192|3.93199992|18|1|55274.89041135|55276.94144233|55275.90177109||||2.98900008|6|0|55274.89041135|55276.94144233|55275.90177109|10.458|5.761|1.257|3.15100002|9|0|55274.89041135|55276.94144233|55275.90177109|3|-53|-42|0|1|0||||||||||||||||||||||||||827834686|0.604|-86.8|1|16.908|0.235|15.912|0.221|15.43|0.247|1802089401241004243|1|-0.0018175649156531|0.000529352470361|-0.999998208120264|111000000|
+J115107.04-895329.3|177.7793543|-89.8914772|0.1344|0.1289|0.0265|302.9002214|-27.0233673|269.7273375|-66.5646772|2060.38|635.872|1802089401241003931|1802m894_ab41-003931|1802m894_ab41|3931|14.323|0.028|38.5|0.994300008|14.457|0.053|20.6|0.999000013|12.799||0.4|1.03199995|9.477||0.0|1.07799995|1.023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|21|21|19|21|1|21|1|21|21.879|20.895|22.256|22.53|0.0|0.0|0.0|0.0|0||0||0||0||295.709991|7.68970013|9.561|2.761|0.0|104.010002|5.05210018|21.813|3.47|0.0|21.882|49.2459984|1093.786|25.737|0.469|-0.0788170025|12.8310003|298.322|9.927|0.907|14.289|0.029|1|0.261|14.428|0.094|1|0.319|12.643||32|0.825|8.903||32|0.576|14.952|0.03|1|15.23|0.106|1|13.91||32|9.816||32|14.55|0.029|1|14.747|0.094|1|13.468||32|9.479||32|14.3|0.029|1|14.455|0.094|1|13.141||32|9.393||32|14.049|0.029|1|14.204|0.092|1|12.895||32|11.154||32|13.846|0.029|1|14.008|0.092|1|12.742||32|10.069||32|13.726|0.03|1|13.903|0.099|1|12.637||32|8.464||32|13.66|0.033|1|13.89|0.113|1|12.473||32|8.224||32|13.623|0.036|1|13.929|0.135|1|12.321||32|8.081||32|14.32|0.076|0.017|0.326|20|0|55274.89041135|55276.94144233|55275.90177109|14.461|0.205|0.045|1.14600003|20|0|55274.89041135|55276.94144233|55275.90177109|13.259|4.19|0.914|4.98099995|9|0|55274.89041135|55276.94144233|55275.90177109||||3.38899994|8|0|55274.89041135|55276.94144233|55275.90177109|-14|5|18|0|0|0||||||||||||||||||||||||||857646392|0.362|-82.5|1|15.303|0.068|14.616|0.077|14.294|0.1|1802089401241003931|1|-0.0018926559086293|0.0000733915115892|-0.99999820623204|111000000|
+J192010.08-895329.2|290.0420096|-89.891469|0.9339|0.9788|-0.3065|303.0529203|-27.1416743|270.0931238|-66.4587226|2099.388|631.491|3004089401241005471|3004m894_ab41-005471|3004m894_ab41|5471|17.388|0.155|7.0|0.845399976|17.284||0.2|0.937399983|13.045||0.0|0.985199988|9.111||0.9|0.956799984|0.927900016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|23|0|23|0|22|0|22|22.815|23.565|22.325|22.911|0.0|0.0|0.0|0.0|0||0||0||0||17.5760002|2.51460004|9.348|2.742|0.0|0.848580003|3.42569995|21.758|3.449|0.079|0.434590012|47.7360001|1097.03|25.755|0.648|11.5059996|12.2139997|298.86|9.437|0.188|16.772|0.213|0|0.261|16.548|0.42|0|0.319|12.749||32|0.825|10.356||32|0.576|17.543|0.243|0|16.804||32|13.94||32|11.04||32|17.033|0.213|0|16.867|0.42|0|13.574||32|10.932||32|16.703|0.201|1|16.332|0.329|1|13.305||32|9.138||32|16.429|0.193|1|15.877|0.269|1|13.069||32|8.741||32|16.132|0.176|1|15.498|0.229|1|12.868||32|8.41||32|15.766|0.148|1|15.208|0.207|1|12.688||32|8.162||32|15.434|0.127|1|14.999|0.199|1|13.196||32|7.996||32|15.212|0.119|1|14.842|0.198|1|12.109||32|7.9||32|17.431|0.832|0.174|2.369|19|0|55275.28732341|55277.20605032|55276.17050011|18.302|5.583|1.164|3.41100001|11|0|55275.28732341|55277.20605032|55276.17050011|14.05|5.94|1.266|2.8210001|10|0|55275.28732341|55277.20605032|55276.15049473|10.171|4.505|0.961|2.52399993|11|0|55275.28732341|55277.20605032|55276.15049473|-66|-31|-83|2|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005471|1|0.0006491672384919|-0.0017795115892451|-0.999998205958591|131000000|
+J060122.56-895329.2|90.3440029|-89.8914458|0.1523|0.1577|-0.0229|302.8128169|-27.1516302|269.9983543|-66.6692611|2189.428|598.555|1201089401241004225|1201m894_ab41-004225|1201m894_ab41|4225|14.641|0.032|33.8|0.926599979|14.636|0.062|17.6|0.893899977|12.154|0.227|4.8|1.20000005|9.53||-0.2|1.051|1.01199996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|20|20|14|20|1|19|0|19|22.336|22.31|21.408|20.977|0.0|0.0|0.0|0.0|0||0||0||0||220.529999|6.53369999|9.39|2.902|0.254|88.2639999|5.00890017|21.778|3.628|0.191|217.869995|45.4560013|1098.47|22.946|1.326|-2.57550001|12.2229996|298.97|9.711|0.849|14.511|0.033|1|0.261|14.475|0.077|1|0.319|12.176||32|0.825|8.76||32|0.576|15.192|0.035|1|15.279|0.087|1|13.438||32|9.775||32|14.772|0.033|1|14.794|0.077|1|13.001||32|9.336||32|14.512|0.033|1|14.519|0.077|1|12.636||32|8.989||32|14.239|0.032|1|14.251|0.074|1|12.24||32|8.698||32|13.936|0.029|1|13.959|0.069|1|11.845||32|8.437||32|13.666|0.027|1|13.7|0.064|1|12.166|0.455|1|8.202||32|13.477|0.026|1|13.523|0.063|1|11.834|0.39|1|7.988||32|13.361|0.027|1|13.426|0.067|1|11.605|0.363|1|8.401||32|14.642|0.091|0.02|0.384|19|0|55275.28745078|55277.20605032|55276.20045053|14.636|0.236|0.053|1.125|19|0|55275.28745078|55277.20605032|55276.20045053|12.26|1.056|0.242|4.08199978|14|1|55275.28745078|55277.20605032|55276.17886275||||3.54999995|8|0|55275.28745078|55277.20605032|55276.17886275|2|25|28|0|0|0||||||||||||||||||||||||||946674254|0.237|0.5|1|15.771|0.096|15.053|0.102|14.643|0.121|1201089401241004225|1|-0.0000113752423343|0.0018945932916039|-0.999998205191821|111000000|
+J045108.29-895328.7|72.7845722|-89.8913229|0.9745|1.0396|0.2799|302.8261936|-27.1825783|270.0812003|-66.6644962|1985.486|629.608|600089401241005167|0600m894_ab41-005167|0600m894_ab41|5167|18.127||1.6|0.854399979|17.076|0.441|2.5|1.18799996|11.696|0.143|7.6|1.046|9.139|0.376|2.9|1.29799998|1.06299996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UCBC|14|0000|0|21|1|21|3|20|1|20|22.851|23.282|22.109|21.973|0.0|0.0|0.0|0.0|0||0||0||0||3.97989988|2.46000004|9.398|2.763|0.111|9.32320023|3.79130006|21.782|3.531|0.181|332.230011|43.6139984|1097.407|21.974|2.139|35.0169983|12.1269999|298.844|9.48|0.896|17.169|0.402|1|0.261|16.096|0.371|1|0.319|12.371|0.367|1|0.825|8.666||32|0.576|18.078|0.522|1|16.993|0.45|1|13.271||32|9.571||32|17.43|0.402|1|16.415|0.371|1|13.196|0.367|1|9.242||32|16.922|0.323|1|16.008|0.328|1|12.666|0.287|1|9.03||32|16.533|0.282|1|15.673|0.3|1|12.327|0.26|1|8.738||32|16.259|0.264|1|15.373|0.275|1|12.069|0.245|1|8.478||32|16.028|0.253|1|15.079|0.248|1|11.83|0.23|1|8.242||32|15.714|0.22|1|14.771|0.217|1|11.604|0.214|1|8.027||32|15.328|0.177|1|14.475|0.19|1|11.396|0.201|1|7.827||32|19.029|3.446|0.752|3.18|12|0|55275.28745078|55277.20605032|55276.23258879|16.843|1.741|0.38|3.22900009|15|0|55275.28745078|55277.20605032|55276.23258879|11.545|0.548|0.123|3.19199991|16|0|55275.28745078|55277.20605032|55276.2136873|9.101|2.098|0.469|2.94899988|12|0|55275.28745078|55277.20605032|55276.2136873|8|-5|-2|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005167|1|0.0005613784813984|0.0018117936922484|-0.999998201127291|101000000|
+J133434.06-895328.6|203.641926|-89.8912959|0.5065|0.4873|0.143|302.9547445|-27.0213696|269.7500973|-66.5169172|1935.127|613.278|1802089401241004535|1802m894_ab41-004535|1802m894_ab41|4535|16.772|0.091|11.9|0.988399982|16.02|0.143|7.6|0.962400019|13.148||-0.3|1.05599999|9.222||0.6|1.03499997|1.00800002|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|11nn|ABUU|3|0000|8|24|4|24|0|24|0|24|24.095|24.667|23.796|23.867|0.0|0.0|0.0|0.0|8|h|8|h|0||0||30.9810009|2.602|10.048|2.516|0.193|24.6620007|3.25079989|21.828|3.027|0.132|-14.6040001|43.6329994|1095.871|25.164|0.0|7.94789982|12.2469997|298.044|9.802|0.473|16.147|0.477|1|0.261|15.272|0.194|1|0.319|12.488||32|0.825|8.905||32|0.576|16.295||32|16.41|0.296|1|13.67||32|9.916||32|16.408|0.477|1|15.591|0.194|1|13.313||32|9.481||32|15.53|0.276|1|14.845|0.127|1|13.03||32|9.135||32|14.641|0.151|1|14.13|0.082|1|12.798||32|8.84||32|13.934|0.095|1|13.541|0.058|1|12.599||32|8.579||32|13.496|0.075|1|13.136|0.047|1|12.419||32|8.342||32|13.257|0.07|1|12.879|0.044|1|12.254||32|8.126||32|13.078|0.069|1|12.681|0.042|1|12.102||32|7.926||32|16.77|0.556|0.113|2.947|22|1|55274.89041135|55276.94144233|55275.92420909|16.039|0.766|0.156|2.37599993|21|0|55274.89041135|55276.94144233|55275.92420909|14.296|8.564|1.748|4.64300013|11|0|55274.89041135|55276.94144233|55275.92420909|10.462|6.055|1.236|4.17600012|12|0|55274.89041135|55276.94144233|55275.92420909|-32|-23|61|1|0|1|||||||||||||||||||||||||||||0|||||||1802089401241004535|1|-0.0017380075110573|-0.0007608318264154|-0.999998200230792|121000000|
+J064903.18-895328.5|102.2632627|-89.8912583|0.4298|0.4645|-0.1312|302.8097383|-27.1292351|269.9416849|-66.6669585|2135.613|622.913|1201089401241004794|1201m894_ab41-004794|1201m894_ab41|4794|16.533|0.078|13.9|1.00899994|16.626|0.266|4.1|0.801800013|12.092|0.195|5.6|1.03900003|9.628||-0.3|1.01499999|0.962100029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|12|22|0|22|2|21|0|21|22.192|22.677|21.857|21.6|0.0|0.0|0.0|0.0|0||0||0||0||38.612999|2.78679991|9.39|2.776|0.114|14.1160002|3.46479988|21.816|3.409|0.287|230.690002|41.5110016|1096.319|22.322|2.438|-3.48399997|11.165|298.065|9.498|0.712|16.694|0.237|1|0.261|15.649||32|0.319|12.034||32|0.825|8.533||32|0.576|17.137|0.202|1|16.325||32|13.32||32|9.541||32|16.955|0.237|1|15.968||32|12.859||32|9.109||32|17.041|0.334|1|15.743||32|12.477||32|8.768||32|17.249|0.5|1|15.611||32|12.16||32|8.474||32|16.637||32|15.588||32|11.905||32|8.213||32|16.784||32|15.548||32|11.709||32|7.979||32|16.795||32|15.385||32|11.533||32|7.763||32|16.641||32|15.232||32|11.374||32|7.565||32|16.557|0.442|0.094|3.03|21|1|55275.02271543|55276.94144233|55276.03624953|16.472|1.075|0.229|2.92499995|18|0|55275.02271543|55276.94144233|55276.03624953|12.297|1.124|0.245|3.6789999|17|1|55275.02271543|55276.94144233|55276.00889862|13.771|||3.28800011|10|0|55275.02271543|55276.94144233|55276.00889862|-19|-2|-52|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241004794|1|-0.0004031212534014|0.0018545933863242|-0.999998198986691|111000000|
+J024237.77-895328.2|40.6573858|-89.8911671|1.0085|0.9902|0.314|302.8748384|-27.2244182|270.2081537|-66.6314796|1951.885|83.807|2403089401241005973|2403m894_ab41-005973|2403m894_ab41|5973|18.839||-4.7|0.930800021|17.504||-3.2|0.978399992|12.082|0.189|5.7|1.14499998|9.543||-0.1|1.05400002|1.02199996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|0|24|3|23|0|23|24.229|24.655|23.757|23.137|0.0|0.0|0.0|0.0|0||0||0||0||-10.816|2.30949998|9.276|2.722|0.0|-9.99790001|3.14439988|21.737|3.249|0.0|232.910004|40.5970001|1099.103|22.291|0.0|-1.26090002|12.0679998|298.65|9.181|0.815|17.281||32|0.261|17.022||32|0.319|11.793||32|0.825|8.977||32|0.576|17.906||32|17.703||32|13.014||32|9.988||32|17.542||32|17.341||32|12.618||32|9.553||32|17.258||32|17.058||32|12.32||32|9.208||32|16.836||32|16.821||32|12.09||32|8.915||32|16.728|0.497|1|16.62||32|11.937||32|8.654||32|15.742|0.237|1|16.377|0.512|1|11.829||32|8.418||32|15.034|0.144|1|15.238|0.209|1|11.716||32|8.202||32|14.387|0.091|1|14.471|0.118|1|11.816||32|8.003||32||||0.17|1|0|55275.28745078|55277.33835439|55276.3515125||||1.84399998|6|0|55275.28745078|55277.33835439|55276.3515125|12.124|1.52|0.317|4.91800022|18|1|55275.28745078|55277.33835439|55276.34024702||||3.93000007|11|0|55275.28745078|55277.33835439|55276.34024702||-65|-36||1|0|||||||||||||||||||||||||||||0|||||||2403089401241005973|1|0.0014409902948339|0.001237583714428|-0.999998195965133|101000000|
+J073449.42-895327.4|113.7059238|-89.8909488|0.5921|0.6117|-0.1769|302.8115962|-27.1075841|269.8893346|-66.6605196|2080.222|635.713|1201089401241004973|1201m894_ab41-004973|1201m894_ab41|4973|17.105|0.124|8.8|0.962100029|15.938|0.153|7.1|0.98180002|12.253|0.237|4.6|1.15100002|8.972||1.3|0.866699994|0.986999989|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|1|22|3|22|2|21|0|21|22.018|22.263|21.952|21.395|0.0|0.0|0.0|0.0|0||0||0||0||22.8059998|2.60640001|9.448|2.809|0.14|26.5849991|3.74309993|21.846|3.464|0.241|199.050003|43.5390015|1097.229|23.728|3.556|16.1100006|12.3780003|298.048|9.608|0.912|16.063|0.144|1|0.261|15.507|0.227|1|0.319|12.249||32|0.825|8.643||32|0.576|17.013|0.193|1|16.387|0.27|1|13.475||32|9.645||32|16.324|0.144|1|15.826|0.227|1|13.074||32|9.219||32|15.878|0.123|1|15.567|0.231|1|12.766||32|8.923||32|15.547|0.112|1|15.419|0.251|1|12.538||32|8.611||32|15.187|0.096|1|15.184|0.243|1|12.336||32|8.253||32|14.702|0.073|1|14.769|0.196|1|12.087||32|7.95||32|14.19|0.053|1|14.286|0.146|1|11.792||32|7.766||32|13.804|0.043|1|13.895|0.117|1|11.477||32|7.631||32|17.167|0.594|0.127|3.593|21|0|55275.02271543|55276.94144233|55275.97309574|15.85|0.769|0.164|3.88599992|18|0|55275.02271543|55276.94144233|55275.97309574|12.323|1.15|0.251|4.05700016|15|1|55275.02271543|55276.94144233|55275.94273751|10.059|2.669|0.582|4.34899998|12|0|55275.02271543|55276.94144233|55275.94273751|2|4|-19|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004973|1|-0.0007652080319843|0.0017427029784905|-0.999998188719858|111000000|
+J145619.90-895324.2|224.0829294|-89.8900597|0.1135|0.117|0.0163|302.9958975|-27.0341262|269.8020721|-66.4840984|2128.712|628.313|2403089401241004048|2403m894_ab41-004048|2403m894_ab41|4048|14.035|0.027|40.0|1.03499997|13.873|0.037|29.7|0.978600025|12.952||-1.2|0.931200027|9.1||1.0|1.13900006|1.01800001|1|0|0.0|0.0|0.0|0.0|0000|h000|0|22nn|AAUU|3|0000|22|22|22|22|0|21|0|21|22.168|22.086|21.533|22.069|0.0|0.0|0.0|0.0|8|h|0||0||0||385.380005|9.63879967|9.564|2.446|0.139|178.080002|5.98869991|21.802|3.257|0.124|-63.1160011|52.2480011|1098.074|25.967|4.121|12.467|11.915|297.543|9.552|0.831|14.07|0.034|0|0.261|13.962|0.055|0|0.319|12.095||32|0.825|8.806||32|0.576|14.696|0.034|0|14.694|0.058|0|13.292||32|9.82||32|14.331|0.034|0|14.281|0.055|0|12.92||32|9.382||32|14.205|0.039|0|14.139|0.062|0|14.854||32|9.039||32|14.163|0.046|0|14.098|0.074|0|12.265||32|8.748||32|14.155|0.055|1|14.096|0.089|1|11.911||32|8.488||32|14.157|0.065|1|14.114|0.106|1|11.624||32|8.254||32|14.145|0.074|1|14.123|0.124|1|11.386||32|8.039||32|14.106|0.083|1|14.111|0.141|1|11.194||32|7.841||32|14.024|0.049|0.011|0.346|21|0|55274.89041135|55276.94144233|55275.99412384|13.864|0.157|0.033|0.602999985|21|0|55274.89041135|55276.94144233|55275.99412384||||2.95900011|7|0|55274.89041135|55276.94144233|55275.96476696|10.186|4.388|0.957|5.04099989|10|0|55274.89041135|55276.94144233|55275.96476696|62|-38|-19|3|0|0||||||||||||||||||||||||||858247954|0.062|162.9|1|15.114|0.05|14.443|0.053|14.281|0.081|2403089401241004048|1|-0.0013783527552908|-0.0013349206602852|-0.999998159063562|121000000|
+J234046.34-895323.8|355.193091|-89.8899503|1.1017|0.9787|0.0839|302.9694768|-27.2330111|270.2755844|-66.551245|2072.139|639.136|89401241005672|0000m894_ab41-005672|0000m894_ab41|5672|17.682|0.208|5.2|0.864099979|16.85||1.5|0.886699975|12.303|0.232|4.7|1.01600003|8.996||1.5|1.02600002|0.943300009|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|1|23|0|23|1|22|1|22|23.597|23.926|23.502|22.938|0.0|0.0|0.0|0.0|0||0||0||0||13.4020004|2.56369996|9.265|2.731|0.063|4.88929987|3.29780006|21.713|3.386|0.133|190.089996|40.644001|1099.309|23.147|1.251|17.0370007|11.4659996|297.885|9.092|0.407|16.976||32|0.261|16.336||32|0.319|12.432||32|0.825|8.593||32|0.576|17.351||32|16.984||32|13.62||32|9.681||32|17.237||32|16.655||32|13.257||32|9.169||32|17.143||32|16.536||32|13.011||32|8.817||32|16.908||32|16.44||32|12.761||32|8.534||32|16.704||32|16.238||32|12.556||32|8.288||32|16.522||32|15.875||32|12.424||32|8.062||32|16.36||32|16.121|0.492|1|12.373||32|7.884||32|15.875||32|15.483|0.314|1|12.719||32|7.76||32|17.632|0.945|0.197|3.621|17|0|55275.55205887|55277.33835439|55276.40926968|17.845|4.961|1.034|1.59099996|12|0|55275.55205887|55277.33835439|55276.40926968|12.263|1.314|0.28|1.57599998|15|0|55275.55205887|55277.33835439|55276.40011746|10.464|5.247|1.119|3.2420001|11|0|55275.55205887|55277.33835439|55276.40011746|-28|-10|-6|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005672|1|0.0019139719976412|-0.0001609531445337|-0.999998155400938|131000000|
+J200622.10-895323.2|301.5921166|-89.8898014|0.5874|0.5862|-0.195|303.0492143|-27.1634982|270.144584|-66.466775|2042.305|640.485|3004089401241005076|3004m894_ab41-005076|3004m894_ab41|5076|16.794|0.096|11.3|0.895500004|16.704||1.8|0.976499975|12.972||0.3|1.03799999|9.508||-0.7|0.891200006|0.94749999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|AUUU|1|0000|7|23|0|23|0|22|0|22|23.675|23.647|23.016|22.822|0.0|0.0|0.0|0.0|0||0||0||0||30.3570004|2.68070006|9.29|2.781|0.034|6.25199986|3.43860006|21.745|3.375|0.056|13.2950001|44.6539993|1096.296|24.909|3.323|-9.2269001|12.4650002|298.83|9.732|0.979|16.373|0.128|0|0.261|16.461||32|0.319|12.52||32|0.825|11.967||32|0.576|17.038|0.134|0|16.99||32|13.705||32|9.674||32|16.634|0.128|0|16.78||32|13.345||32|12.543||32|16.545|0.153|0|16.886||32|13.055||32|8.808||32|16.627|0.204|0|16.547||32|12.823||32|8.483||32|16.774|0.281|0|16.345||32|12.622||32|8.196||32|16.888|0.368|1|16.165||32|12.442||32|7.98||32|16.712|0.364|1|16.0||32|12.277||32|7.893||32|16.189|0.259|1|15.849||32|12.126||32|7.695||32|16.794|0.562|0.117|2.7|22|1|55275.28732341|55277.33835439|55276.23953938|17.624|3.704|0.772|3.07500005|12|0|55275.28732341|55277.33835439|55276.23953938|13.714|5.113|1.09|2.03800011|8|0|55275.28732341|55277.33835439|55276.22267215||||2.8829999|7|0|55275.28732341|55277.33835439|55276.22267215|16|-49|60|0|0|0||||||||||||||||||||||||||1128788513|0.878|177.7|1|17.173|0.257|16.105|0.206|16.182|0.404|3004089401241005076|1|0.0010075708178389|-0.0016382880284861|-0.999998150404981|131000000|
+J134329.76-895323.1|205.874037|-89.8897745|0.0954|0.0968|-0.0092|302.9597803|-27.0207596|269.7511576|-66.5124096|1923.316|612.276|1802089401241003831|1802m894_ab41-003831|1802m894_ab41|3831|13.275|0.025|42.9|1.06200004|13.09|0.028|39.4|1.06799996|12.652||1.0|1.03400004|9.447||-2.1|1.04799998|1.04999995|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|AAUU|3|0000|24|24|24|24|0|23|0|24|23.758|24.636|23.949|23.782|0.0|0.0|0.0|0.0|8|h|0||0||0||775.960022|18.0669994|9.99|2.43|0.132|366.589996|9.29699993|21.915|3.032|0.061|47.1450005|45.3330002|1097.135|25.382|3.675|-27.5949993|13.1879997|298.325|10.015|1.5|13.218|0.017|1|0.261|13.028|0.019|1|0.319|11.968||32|0.825|9.011||32|0.576|13.87|0.017|0|13.825|0.021|0|13.272||32|10.024||32|13.479|0.017|1|13.347|0.019|1|12.793||32|9.587||32|13.259|0.017|1|13.075|0.019|1|12.465||32|9.245||32|12.978|0.017|1|12.801|0.018|1|12.254||32|8.955||32|12.61|0.015|1|12.489|0.017|1|12.119||32|8.696||32|12.297|0.013|1|12.221|0.016|1|12.021||32|8.464||32|12.112|0.013|1|12.042|0.016|1|11.946||32|8.251||32|12.02|0.014|1|11.933|0.016|1|11.885||32|8.054||32|13.274|0.033|0.007|0.388|23|0|55274.89041135|55276.94144233|55275.92420909|13.093|0.081|0.017|0.25999999|23|0|55274.89041135|55276.94144233|55275.92420909|12.997|2.405|0.501|2.27099991|13|0|55274.89041135|55276.94144233|55275.95477317||||4.20699978|5|0|55274.89041135|55276.94144233|55275.92420909|35|-48|-96|1|1|0||||||||||||||||||||||||||858000760|0.891|78.5|1|14.41|0.036|13.659|0.037|13.374|0.043|1802089401241003831|1|-0.0017309464365437|-0.0008395333424086|-0.999998149502388|121000000|
+J153747.78-895323.1|234.4491006|-89.889761|0.7583|0.805|0.1942|303.0140764|-27.0456827|269.8394449|-66.4709361|2077.759|639.105|2403089401241006001|2403m894_ab41-006001|2403m894_ab41|6001|17.15|0.131|8.3|0.81370002|16.879|0.353|3.1|0.937399983|12.537||0.9|0.976499975|9.157||0.7|1.01499999|0.930400014|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BBUU|3|0000|2|20|1|20|0|19|0|19|22.524|22.438|22.651|22.445|0.0|0.0|0.0|0.0|8|h|0||0||0||21.882|2.63050008|9.456|2.469|0.025|11.1759996|3.6342001|21.778|3.241|0.0|48.012001|52.5779991|1097.144|25.712|4.892|8.78559971|12.8319998|298.392|9.665|1.384|17.016||32|0.261|16.291|0.402|0|0.319|12.424||32|0.825|8.554||32|0.576|17.543||32|16.573||32|13.643||32|9.582||32|17.277||32|16.61|0.402|0|13.249||32|9.13||32|17.182||32|16.265|0.378|0|12.999||32|8.816||32|17.164||32|16.083|0.397|0|12.821||32|8.598||32|17.191||32|15.906|0.405|1|12.655||32|8.398||32|17.012||32|15.64|0.374|1|12.516||32|8.161||32|16.848||32|15.28|0.312|1|12.369||32|7.945||32|16.694||32|14.907|0.255|1|12.188||32|7.746||32|17.279|0.6|0.134|4.223|19|1|55275.02271543|55276.94144233|55276.02178915|16.911|2.495|0.558|2.57599998|11|0|55275.02271543|55276.94144233|55276.02178915|12.791|3.058|0.702|3.25600004|9|0|55275.02271543|55276.94144233|55275.99079813|10.216|4.374|1.003|3.727|11|0|55275.02271543|55276.94144233|55275.99079813|11|-27|8|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241006001|1|-0.0011186824697215|-0.001565391588956|-0.99999814904764|121000000|
+J040051.06-895322.9|60.2127869|-89.88972|0.0619|0.0608|-0.0081|302.8407125|-27.2028389|270.1382603|-66.6563576|2047.396|640.757|600089401241003876|0600m894_ab41-003876|0600m894_ab41|3876|7.893|0.023|47.1|0.991900027|7.995|0.019|56.0|1.10699999|7.866|0.016|66.9|1.21200001|7.689|0.094|11.5|0.974799991|1.06799996|1|0|0.014|0.0|0.0|0.0|8000|dd00|0|1110|AAAA|15|0000|24|24|24|24|23|23|6|23|23.334|23.649|22.935|22.833|0.0|0.0|0.0|0.0|1|d|1|d|0||0||110400.0|2341.80005|9.356|2.582|0.0|39979.0|713.98999|21.756|3.317|0.102|11318.0|169.160004|1098.974|22.131|0.979|133.169998|11.5690002|298.819|8.985|0.282|7.949|0.005|16|0.261|7.993|0.005|0|0.319|7.905|0.009|0|0.825|7.913|0.209|1|0.576|8.588|0.005|16|8.752|0.005|0|9.311|0.01|0|8.942|0.213|0|8.21|0.005|16|8.312|0.005|0|8.73|0.009|0|8.489|0.209|1|8.078|0.005|16|8.147|0.005|0|8.422|0.009|0|8.273|0.236|1|8.026|0.005|16|8.083|0.005|0|8.261|0.009|0|8.211|0.292|1|8.001|0.005|16|8.053|0.005|0|8.178|0.01|0|8.198|0.366|1|7.987|0.005|16|8.036|0.005|0|8.132|0.011|0|8.201|0.456|1|7.977|0.005|16|8.025|0.005|0|8.103|0.012|0|7.423||32|7.969|0.005|17|8.016|0.005|1|8.078|0.013|1|7.315||32|7.888|0.023|0.005|0.154|23|0|55275.28745078|55277.33835439|55276.29362153|7.996|0.026|0.005|0.0920000002|23|0|55275.28745078|55277.33835439|55276.29362153|7.864|0.029|0.006|0.114|22|0|55275.28745078|55277.33835439|55276.27983905|7.692|0.412|0.086|2.27900004|22|0|55275.28745078|55277.33835439|55276.27983905|37|-30|-1|1|1|0||||||||||||||||||||||||||728610939|0.105|133.4|1|8.893|0.032|8.219|0.059|8.042|0.038|600089401241003876|1|0.0009561767162081|0.0016704430032587|-0.999998147671415|101000000|
+J140622.16-895322.8|211.5923546|-89.8896827|0.0834|0.0843|-0.016|302.9716875|-27.0236774|269.7643167|-66.5027394|2187.033|605.182|2403089401241003931|2403m894_ab41-003931|2403m894_ab41|3931|11.86|0.024|45.6|2.02999997|11.887|0.023|46.6|1.36300004|11.686|0.156|7.0|1.15600002|9.526||-0.8|1.07599998|1.403|1|0|0.0|0.0|0.0|0.0|0000|ddd0|0|43nn|AABU|7|0000|23|23|23|23|1|23|1|23|24.494|24.721|23.695|23.219|0.0|0.0|0.0|0.0|9|dh|1|d|1|d|0||2857.8999|62.6100006|9.831|2.537|0.076|1110.09998|23.8269997|21.807|3.11|0.092|335.459991|48.2270012|1096.376|25.472|0.467|-9.88609982|12.257|298.274|9.929|0.469|11.835|0.01|0|0.261|11.859|0.011|0|0.319|11.448|0.222|0|0.825|8.365||32|0.576|12.492|0.01|0|12.652|0.013|0|12.905|0.286|0|9.564||32|12.096|0.01|0|12.178|0.011|0|12.273|0.222|0|8.941||32|11.925|0.01|0|11.963|0.012|0|11.894|0.202|0|9.254|0.541|1|11.829|0.011|0|11.84|0.013|0|11.63|0.196|0|8.923|0.514|1|11.762|0.012|1|11.751|0.014|1|11.422|0.196|1|8.675|0.513|17|11.71|0.013|1|11.68|0.015|1|11.244|0.197|1|8.417|0.495|17|11.667|0.015|1|11.62|0.016|1|11.081|0.197|1|8.238|0.506|17|11.627|0.016|1|11.565|0.018|1|10.943|0.199|1|8.094|0.526|17|11.861|0.048|0.01|0.177|22|0|55274.89041135|55276.94144233|55275.95477317|11.896|0.05|0.01|0.25999999|22|0|55274.89041135|55276.94144233|55275.95477317|11.666|0.72|0.15|3.17400002|21|0|55274.89041135|55276.94144233|55275.95477317||||2.43899989|10|0|55274.89041135|55276.94144233|55275.95477317|78|-30|-38|5|1|1||||||||||||||||||||||||||858076475|0.098|-10.6|1|12.496|0.026|12.125|0.027|12.051|0.026|2403089401241003931|1|-0.0016400490301254|-0.0010086632484504|-0.999998146417097|121000000|
+J121849.92-895322.1|184.708009|-89.8894952|1.2019|1.1102|0.269|302.9143279|-27.018767|269.7232343|-66.5513949|2025.645|640.466|1802089401241005504|1802m894_ab41-005504|1802m894_ab41|5504|17.634|0.2|5.4|0.916000009|16.828||1.5|0.887000024|12.919||-0.9|1.04799998|9.468||-1.8|1.02499998|0.965399981|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BUUU|1|0000|0|23|0|23|0|22|0|23|23.178|23.215|22.318|23.832|0.0|0.0|0.0|0.0|8|h|0||0||0||14.0039997|2.5783|9.698|2.71|0.128|4.92299986|3.39420009|21.866|3.354|0.26|-48.4869995|53.8610001|1093.738|25.62|3.811|-23.6620007|12.9350004|298.086|9.88|0.2|16.717||32|0.261|16.491|0.488|1|0.319|12.132||32|0.825|8.902||32|0.576|17.168||32|16.618||32|13.596||32|9.915||32|16.978||32|16.81|0.488|1|12.957||32|9.478||32|16.875||32|16.256|0.38|1|13.197|0.502|1|9.133||32|16.555||32|15.689|0.28|1|12.826|0.441|1|8.84||32|16.001||32|15.163|0.208|1|12.639|0.447|1|8.579||32|16.028|0.411|1|14.718|0.163|1|12.562|0.491|1|8.343||32|15.339|0.254|1|14.359|0.137|1|11.783||32|8.128||32|14.911|0.197|1|14.094|0.123|1|11.709||32|7.928||32|17.718|1.126|0.235|2.822|18|0|55274.89041135|55276.94144233|55275.89724414|17.386|3.455|0.72|2.54999995|12|0|55274.89041135|55276.94144233|55275.89724414|15.217|||4.13800001|9|0|55275.02271543|55276.94144233|55275.94300927||||5.204|8|0|55274.89041135|55276.94144233|55275.89724414|-8|-16|25|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005504|1|-0.0019221644637353|-0.0001583011902689|-0.999998140110524|121000000|
+J052713.31-895321.9|81.805476|-89.8894417|1.1723|1.3494|-0.0808|302.8159435|-27.1678266|270.0397914|-66.6701334|1940.914|620.949|600089401241005341|0600m894_ab41-005341|0600m894_ab41|5341|17.984|0.298|3.6|0.951300025|17.258||-1.0|0.868600011|12.084|0.213|5.1|1.10399997|8.937||1.3|1.06299996|0.991400003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|0|20|0|20|2|19|1|19|21.791|21.866|20.531|21.236|0.0|0.0|0.0|0.0|0||0||0||0||10.1479998|2.78710008|9.394|2.836|0.061|-3.76789999|3.94260001|21.811|3.583|0.142|232.570007|45.6399994|1098.68|22.774|2.153|16.9529991|12.6129999|298.617|9.373|0.927|17.337|0.527|1|0.261|16.628||32|0.319|12.013||32|0.825|8.611||32|0.576|17.235||32|17.184||32|13.252||32|9.643||32|17.598|0.527|1|16.947||32|12.838||32|9.187||32|16.621||32|18.32||32|12.551||32|8.912||32|17.097|0.53|1|16.735||32|12.369||32|8.719||32|16.729|0.455|1|16.151||32|12.165||32|8.554||32|16.402|0.398|1|15.752||32|11.92||32|8.318||32|16.178|0.378|1|15.41||32|11.697||32|8.104||32|16.045|0.383|1|15.84|0.51|1|11.505||32|7.905||32|17.641|0.999|0.223|3.067|13|0|55275.28745078|55277.20605032|55276.20045053||||1.92999995|7|0|55275.28745078|55277.20605032|55276.20045053|11.996|0.979|0.225|3.80699992|15|0|55275.28745078|55277.20605032|55276.17886275|10.448|5.503|1.262|4.04099989|10|0|55275.28745078|55277.20605032|55276.17886275|-9|-60|-9|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005341|1|0.0002750350084755|0.0019099037560149|-0.999998138309961|101000000|
+J195036.66-895321.8|297.6527531|-89.8894084|0.9866|0.9545|-0.3173|303.0520893|-27.1563429|270.1285273|-66.4626966|2062.186|641.223|3004089401241005373|3004m894_ab41-005373|3004m894_ab41|5373|17.433|0.161|6.7|0.817799985|16.69||1.9|1.148|12.348||2.0|0.906300008|9.091||0.9|0.853600025|0.931999981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|0|24|1|24|0|23|0|23|23.732|23.475|22.966|22.798|0.0|0.0|0.0|0.0|0||0||0||0||16.8619995|2.50320005|9.331|2.794|0.148|6.47650003|3.41470003|21.776|3.402|0.105|90.1989975|46.0839996|1095.097|24.676|0.626|11.1899996|12.7119999|298.909|9.751|1.527|17.071|0.3|1|0.261|16.342||32|0.319|12.561||32|0.825|8.403||32|0.576|17.674|0.292|1|16.905||32|13.721||32|9.525||32|17.332|0.3|1|16.661||32|13.386||32|8.979||32|17.155|0.327|1|16.613||32|13.151||32|8.506||32|16.903|0.322|1|16.596||32|12.852||32|8.802|0.479|1|16.634|0.302|1|16.496||32|12.546||32|8.419|0.427|1|16.422|0.292|1|16.318||32|12.242||32|8.094|0.392|1|16.234|0.285|1|16.157||32|11.972||32|7.825|0.372|1|15.972|0.258|1|16.004||32|11.758||32|7.649|0.38|1|17.335|0.6|0.123|2.755|21|0|55275.28732341|55277.33835439|55276.21916071|17.678|3.944|0.805|3.71499991|9|0|55275.28732341|55277.33835439|55276.21916071|12.695|1.477|0.308|2.34100008|13|0|55275.28732341|55277.33835439|55276.2021408|10.06|1.647|0.344|3.875|15|0|55275.28732341|55277.33835439|55276.2021408|-25|72|31|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241005373|1|0.0008958224658513|-0.0017097144409434|-0.999998137187585|131000000|
+J213311.85-895321.6|323.2993986|-89.8893557|0.8601|0.8108|-0.2431|303.0265959|-27.1998941|270.2224245|-66.4944262|1935.563|618.999|3004089401241005302|3004m894_ab41-005302|3004m894_ab41|5302|17.184|0.15|7.2|0.884199977|17.117|0.391|2.8|0.985899985|12.493||1.8|0.973200023|9.31|0.392|2.8|0.997799993|0.957700014|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUC|11|0000|3|24|0|24|0|23|1|23|24.62|24.795|23.81|23.923|0.0|0.0|0.0|0.0|0||0||0||0||21.2040005|2.93280005|9.249|2.983|0.112|8.98239994|3.23539996|21.739|3.331|0.061|75.663002|41.9480019|1099.065|24.351|2.026|29.9160004|10.7910004|298.073|9.321|1.228|16.899|0.414|1|0.261|16.533|0.487|1|0.319|12.034||32|0.825|8.912||32|0.576|17.478|0.39|1|16.605||32|13.393||32|9.785||32|17.16|0.414|1|16.852|0.487|1|12.859||32|9.488||32|17.065|0.492|1|16.65|0.523|1|12.471||32|9.184||32|16.904|0.526|1|15.749||32|12.168||32|8.923||32|16.712|0.53|1|15.621||32|11.934||32|9.221||32|15.839||32|15.546||32|11.719||32|11.246||32|15.776||32|15.486||32|12.245|0.517|1|9.236||32|15.757||32|15.426||32|12.058|0.501|1|8.075||32|17.088|0.622|0.127|3.47|21|0|55275.28745078|55277.33835439|55276.38181891|17.098|1.733|0.354|2.94400001|17|0|55275.28745078|55277.33835439|55276.38181891|13.023|2.083|0.434|3.81299996|14|0|55275.28745078|55277.33835439|55276.3718711|9.215|1.835|0.383|5.28100014|15|0|55275.28745078|55277.33835439|55276.3718711|35|-15|29|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005302|1|0.0015483021433622|-0.0011540941318171|-0.999998135411866|131000000|
+J083732.45-895321.5|129.3852215|-89.8893171|0.7142|0.7114|-0.2394|302.8206922|-27.0786816|269.8228296|-66.6461558|2001.671|638.08|1201089401241005010|1201m894_ab41-005010|1201m894_ab41|5010|17.289|0.144|7.6|0.935699999|16.988|0.377|2.9|1.005|11.972|0.18|6.0|1.33700001|9.06|0.364|3.0|1.00699997|1.06700003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCBC|15|0000|1|23|1|23|1|22|2|22|22.742|22.611|21.825|21.586|0.0|0.0|0.0|0.0|0||0||0||0||19.2439995|2.54570007|9.39|2.796|0.113|10.1099997|3.50900006|21.824|3.324|0.023|257.820007|42.8209991|1096.039|23.837|1.157|37.6590004|12.6309996|298.305|9.889|0.37|15.796|0.112|1|0.261|15.901|0.209|1|0.319|12.081|0.391|1|0.825|8.058||32|0.576|16.938|0.18|0|17.036|0.319|0|12.91||32|9.116||32|16.057|0.112|1|16.22|0.209|1|12.906|0.391|1|8.634||32|15.141|0.063|1|15.284|0.115|1|12.356|0.306|1|8.335||32|14.26|0.035|1|14.4|0.064|1|11.978|0.269|1|8.093||32|13.598|0.023|1|13.742|0.042|1|11.729|0.257|1|7.87||32|13.227|0.02|1|13.353|0.035|1|11.576|0.263|1|7.705||32|13.064|0.02|1|13.158|0.034|1|11.491|0.283|1|7.569||32|13.001|0.021|1|13.07|0.036|1|11.451|0.314|1|7.413||32|17.344|0.506|0.106|2.046|21|0|55274.89041135|55276.94144233|55275.9260225|17.06|1.588|0.331|3.24600005|17|0|55274.89041135|55276.94144233|55275.9260225|12.327|1.21|0.258|2.70099998|16|0|55274.89041135|55276.94144233|55275.8949045|9.37|1.38|0.294|4.55700016|14|2|55274.89041135|55276.94144233|55275.8949045|-34|14|31|1|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005010|1|-0.0012257748431453|0.0014930677309357|-0.999998134110652|111000000|
+J061030.33-895321.4|92.6264016|-89.8892967|0.1223|0.1248|-0.016|302.8094859|-27.1477701|269.9871901|-66.6712954|2182.101|608.979|1201089401241004182|1201m894_ab41-004182|1201m894_ab41|4182|14.288|0.028|38.2|1.17299998|14.134|0.042|26.0|0.98269999|11.225|0.097|11.2|1.09899998|9.12||0.9|0.976400018|1.05499995|1|0|0.0|0.0|0.0|0.002|0000|0000|0|001n|AAAU|7|0000|21|21|21|21|8|19|0|20|22.557|21.82|22.323|21.601|0.0|0.0|0.0|0.0|0||0||0||0||305.369995|8.00269985|9.362|2.878|0.0|140.039993|5.37729979|21.795|3.546|0.173|512.72998|45.9580002|1097.99|22.64|1.692|10.8669996|12.3920002|299.059|9.667|0.905|14.137|0.026|1|0.261|13.948|0.045|1|0.319|11.789|0.317|0|0.825|8.595||32|0.576|14.827|0.028|0|14.757|0.051|0|13.164|0.378|0|9.664||32|14.398|0.026|1|14.267|0.045|1|12.614|0.317|0|9.171||32|14.21|0.028|1|14.038|0.046|1|12.322|0.311|1|8.834||32|14.071|0.03|1|13.877|0.049|1|12.169|0.334|1|8.499||32|13.904|0.031|1|13.706|0.05|1|12.161|0.401|1|8.224||32|13.721|0.031|1|13.533|0.05|1|12.272|0.524|1|8.035||32|13.566|0.031|1|13.391|0.051|1|11.558||32|7.829||32|13.435|0.032|1|13.273|0.053|1|11.602||32|7.624||32|14.276|0.066|0.014|0.36|20|0|55275.02271543|55277.20605032|55276.14436791|14.137|0.166|0.036|0.699000001|19|0|55275.02271543|55277.20605032|55276.14436791|11.191|0.337|0.077|1.93299997|18|0|55275.28745078|55277.20605032|55276.17886275|10.488|6.479|1.449|2.83100009|9|0|55275.02271543|55277.20605032|55276.12105538|17|5|-41|0|0|1||||||||||||||||||||||||||870474336|0.166|-35.3|1|16.218|0.144|15.312|0.154|14.889|0.194|1201089401241004182|1|-0.0000885368585129|0.0019301064686523|-0.99999813342338|111000000|
+J003150.55-895321.1|7.9606408|-89.8892217|0.4789|0.4457|0.1251|302.9425561|-27.2385296|270.2759782|-66.5758085|2007.827|639.262|89401241004858|0000m894_ab41-004858|0000m894_ab41|4858|16.553|0.082|13.3|0.964399993|16.158|0.178|6.1|0.912400007|12.715|0.366|3.0|1.06700003|9.209||0.7|1.03900003|0.99150002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|11|21|0|21|1|20|1|20|21.279|21.71|20.867|20.315|0.0|0.0|0.0|0.0|0||0||0||0||37.9249992|2.85560012|9.307|2.661|0.037|21.7089996|3.55270004|21.754|3.367|0.231|130.059998|43.8019981|1099.621|23.55|0.0|8.16160011|12.3450003|298.301|9.672|0.379|15.972|0.121|1|0.261|15.626|0.327|1|0.319|12.477||32|0.825|9.125||32|0.576|16.777|0.143|0|16.561|0.412|0|13.67||32|9.899||32|16.233|0.121|1|15.945|0.327|1|13.302||32|9.701||32|15.923|0.118|1|15.522|0.287|1|13.019||32|9.028||32|15.701|0.119|1|15.217|0.269|1|12.782||32|8.831||32|15.431|0.112|1|14.94|0.251|1|12.58||32|8.574||32|14.967|0.086|1|14.556|0.208|1|12.4||32|8.34||32|14.351|0.057|1|14.076|0.156|1|12.236||32|8.126||32|13.795|0.04|1|13.616|0.117|1|12.083||32|7.928||32|16.528|0.439|0.096|2.009|20|1|55275.55205887|55277.33835439|55276.39639986|16.219|0.869|0.19|2.45000005|18|0|55275.55205887|55277.33835439|55276.39639986|12.614|1.913|0.428|3.63899994|12|0|55275.55205887|55277.33835439|55276.38568892|11.38|||4.11399984|10|0|55275.55205887|55277.33835439|55276.38568892|13|-7|15|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004858|1|0.0019148124830879|0.0002677681185393|-0.999998130894948|101000000|
+J151944.72-895321.1|229.9363397|-89.8892024|0.5685|0.6072|0.1733|303.0069121|-27.0397391|269.8213299|-66.4758102|2100.52|637.312|2403089401241005320|2403m894_ab41-005320|2403m894_ab41|5320|16.853|0.1|10.9|0.940699995|16.542|0.25|4.3|0.859600008|13.013||-1.5|0.937300026|9.529||-0.2|1.04200006|0.940599978|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|ABUU|3|0000|3|21|0|21|0|20|0|20|22.334|22.613|22.124|22.456|0.0|0.0|0.0|0.0|8|h|0||0||0||28.7709999|2.65089989|9.391|2.429|0.151|15.2510004|3.50889993|21.746|3.212|0.0|-74.9670029|49.3849983|1096.682|25.406|11.957|-2.60360003|12.2279997|298.197|9.771|0.849|16.865|0.234|1|0.261|16.428|0.427|1|0.319|12.407||32|0.825|8.734||32|0.576|17.528|0.244|1|17.287|0.502|1|13.591||32|9.746||32|17.126|0.234|1|16.747|0.427|1|13.232||32|9.31||32|16.79|0.224|1|16.412|0.408|1|12.943||32|8.963||32|16.416|0.197|1|16.231|0.428|1|12.71||32|8.668||32|16.07|0.172|1|16.181|0.493|1|12.507||32|8.408||32|15.765|0.154|1|15.362||32|12.326||32|8.171||32|15.495|0.14|1|15.199||32|12.161||32|7.955||32|15.254|0.129|1|15.734|0.515|1|12.01||32|7.756||32|16.928|0.36|0.079|1.887|20|0|55274.89041135|55276.94144233|55275.96791402|16.446|1.208|0.264|3.05599999|15|0|55274.89041135|55276.94144233|55275.96791402||||1.65900004|4|0|55274.89041135|55276.94144233|55275.93577879||||2.26300001|11|0|55274.89041135|55276.94144233|55275.93577879|-22|-16|-3|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005320|1|-0.001244656629786|-0.0014799813979866|-0.99999813024072|121000000|
+J233013.64-895320.8|352.5568444|-89.8891317|0.7549|0.6764|-0.0299|302.9751804|-27.2321302|270.2762097|-66.5461036|2085.597|639.847|89401241005376|0000m894_ab41-005376|0000m894_ab41|5376|17.167|0.134|8.1|0.806699991|17.188||0.6|0.819700003|11.989|0.184|5.9|0.967599988|9.306|0.44|2.5|1.00800002|0.895699978|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBC|13|0000|3|23|0|23|2|22|1|22|24.21|24.471|23.83|23.19|0.0|0.0|0.0|0.0|0||0||0||0||21.5300007|2.65140009|9.263|2.733|0.098|1.91589999|3.24530005|21.727|3.423|0.066|253.649994|43.0830002|1100.31|23.969|1.703|30.0330009|12.1630001|298.438|9.476|1.097|16.396||32|0.261|16.539|0.417|1|0.319|12.42|0.37|1|0.825|8.534||32|0.576|17.009||32|16.765||32|13.979|0.52|1|9.472||32|16.657||32|16.858|0.417|1|13.245|0.37|1|9.11||32|16.49||32|16.487|0.386|1|12.744|0.303|1|9.169||32|16.44||32|16.364|0.428|1|12.436|0.283|1|9.922||32|16.491||32|15.677||32|12.295|0.298|1|8.323||32|16.446||32|15.666||32|12.219|0.328|1|8.075||32|16.281||32|15.616||32|12.167|0.364|1|7.896||32|16.13||32|15.46||32|12.124|0.402|1|8.617||32|17.078|0.535|0.111|2.818|20|0|55275.55205887|55277.33835439|55276.40926968|18.692|9.721|2.027|2.57299995|11|0|55275.55205887|55277.33835439|55276.40926968|11.957|0.813|0.173|3.22199988|17|1|55275.55205887|55277.33835439|55276.40011746|9.165|1.796|0.383|3.88100004|15|0|55275.55205887|55277.33835439|55276.40011746|-44|18|-20|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005376|1|0.0019187115619211|-0.0002506668304068|-0.999998127854289|131000000|
+J230508.31-895320.7|346.2846368|-89.8890921|1.358|1.1609|-0.291|302.9877152|-27.2273359|270.2705807|-66.5341794|2116.843|634.117|89401241005936|0000m894_ab41-005936|0000m894_ab41|5936|18.151|0.3|3.6|0.827400029|17.464||-0.7|0.916999996|12.158|0.206|5.3|1.10699999|8.934||1.5|0.925400019|0.942399979|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|0|24|0|24|0|23|0|23|24.645|24.869|23.842|23.481|0.0|0.0|0.0|0.0|0||0||0||0||8.70440006|2.4059|9.226|2.791|0.065|-2.19709992|3.26220012|21.763|3.411|0.023|217.190002|41.2599983|1099.793|24.108|0.0|17.9640007|12.1689997|298.653|9.605|0.697|17.023||32|0.261|16.407||32|0.319|12.405|0.518|1|0.825|8.545||32|0.576|17.615||32|17.063||32|12.984||32|9.576||32|17.284||32|16.726||32|13.23|0.518|1|9.121||32|17.049||32|16.454||32|12.905|0.498|1|8.706||32|16.847||32|16.194||32|12.716|0.518|1|8.275||32|16.668||32|15.97||32|11.818||32|7.938||32|16.485||32|15.769||32|11.65||32|7.694||32|16.285||32|15.574||32|11.467||32|7.497||32|16.11||32|15.414||32|11.969|0.496|1|7.333||32|18.02|1.233|0.252|1.837|15|0|55275.55205887|55277.33835439|55276.41490023||||2.54299998|9|0|55275.55205887|55277.33835439|55276.41490023|12.017|0.713|0.149|2.72600007|19|0|55275.55205887|55277.33835439|55276.40639074|9.578|1.919|0.4|3.21300006|14|0|55275.55205887|55277.33835439|55276.40639074|-46|-24|47|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005936|1|0.0018805114990247|-0.0004589535244815|-0.999998126517327|131000000|
+J022901.46-895320.6|37.2561172|-89.8890659|0.9203|0.8613|0.3115|302.8803841|-27.2291756|270.222576|-66.6277087|1933.98|84.921|2403089401241005077|2403m894_ab41-005077|2403m894_ab41|5077|18.866||-3.2|0.877099991|17.507||-4.7|0.934300005|11.787|0.143|7.6|1.023|8.963||1.8|0.998199999|0.953100026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn1n|UUBU|4|0000|0|24|0|24|4|23|0|23|23.722|23.846|23.004|22.781|0.0|0.0|0.0|0.0|0||0||0||0||-7.20419979|2.25139999|9.31|2.839|0.234|-14.6639996|3.13490009|21.74|3.375|0.093|305.589996|40.2249985|1100.154|22.851|2.084|19.6040001|10.7849998|298.163|9.11|0.992|17.432||32|0.261|16.887||32|0.319|12.073|0.337|1|0.825|11.494||32|0.576|18.042||32|17.557||32|13.694|0.509|1|10.005||32|17.693||32|17.206||32|12.898|0.337|1|12.07||32|17.204||32|16.928||32|12.346|0.261|1|9.153||32|16.762|0.368|1|17.854||32|11.903|0.215|1|8.814||32|15.752|0.176|1|15.79||32|11.547|0.187|1|8.466||32|15.242|0.13|1|15.767|0.328|1|11.258|0.169|1|8.108||32|15.027|0.124|1|15.375|0.267|1|11.003|0.156|1|7.798||32|14.962|0.134|1|15.144|0.248|1|10.779|0.145|1|7.505||32||||2.461|3|0|55275.28745078|55277.33835439|55276.3515125||||0.398999989|2|0|55275.28745078|55277.33835439|55276.3515125|11.809|0.906|0.189|4.18100023|19|1|55275.28745078|55277.33835439|55276.34024702|9.767|3.794|0.791|3.73600006|14|0|55275.28745078|55277.33835439|55276.34024702||98|38||0|1|||||||||||||||||||||||||||||0|||||||2403089401241005077|1|0.0015410657789005|0.0011721133403293|-0.999998125631535|101000000|
+J082837.22-895319.6|127.1550896|-89.888801|0.0882|0.0864|0.011|302.8180841|-27.0823583|269.830554|-66.6492438|2012.674|641.008|1201089401241004089|1201m894_ab41-004089|1201m894_ab41|4089|12.964|0.024|46.0|1.09000003|13.008|0.026|41.8|0.986199975|11.632|0.134|8.1|1.34399998|8.883||1.8|1.06400001|1.11600006|1|0|0.0|0.0|0.0|0.002|0000|0000|0|012n|AABU|7|0000|23|23|23|23|5|22|1|22|22.811|22.665|21.866|21.65|0.0|0.0|0.0|0.0|0||0||0||0||1033.59998|22.4899998|9.428|2.803|0.132|395.299988|9.46100044|21.856|3.343|0.158|352.660004|43.5470009|1095.812|23.839|2.161|21.1289997|11.6090002|297.938|9.395|0.7|12.927|0.008|1|0.261|13.016|0.026|1|0.319|11.553||32|0.825|8.097||32|0.576|13.565|0.008|0|13.772|0.028|0|12.839||32|9.257||32|13.188|0.008|1|13.335|0.026|1|12.378||32|8.673||32|13.05|0.008|1|13.174|0.028|1|12.101||32|8.233||32|12.991|0.008|1|13.113|0.033|1|11.897||32|7.922||32|12.957|0.009|1|13.087|0.038|1|11.724||32|7.713||32|12.929|0.01|1|13.081|0.045|1|11.592||32|7.557||32|12.904|0.011|1|13.089|0.052|1|11.499||32|7.405||32|12.876|0.012|1|13.102|0.06|1|11.439||32|7.24||32|12.964|0.033|0.007|0.1|22|0|55274.89041135|55276.94144233|55275.9260225|13.01|0.057|0.012|0.204999998|22|0|55274.89041135|55276.94144233|55275.9260225|11.873|1.104|0.235|3.83999991|17|1|55274.89041135|55276.94144233|55275.8949045|9.788|2.322|0.495|2.57599998|11|0|55274.89041135|55276.94144233|55275.8949045|20|-46|36|0|1|1||||||||||||||||||||||||||1258763139|0.221|-83.5|1|13.749|0.029|13.176|0.029|13.184|0.041|1201089401241004089|1|-0.0011721865775586|0.0015468149255269|-0.999998116669333|111000000|
+J170550.50-895319.1|256.460422|-89.8886579|0.2811|0.3118|0.0067|303.0439255|-27.078607|269.9347524|-66.4524475|1967.192|632.111|2403089401241005190|2403m894_ab41-005190|2403m894_ab41|5190|15.957|0.054|20.2|0.803799987|15.942|0.143|7.6|1.02900004|12.885|0.512|2.1|1.12399995|9.441||-0.3|0.952099979|0.97359997|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|0nnn|ABCU|7|0000|19|22|3|22|1|21|0|21|22.812|22.549|21.93|22.501|0.0|0.0|0.0|0.0|8|h|8|h|0||0||65.6600037|3.25230002|9.391|2.455|0.017|26.5|3.49119997|21.765|3.209|0.053|111.150002|52.4300003|1094.847|25.669|1.636|-4.00600004|13.2609997|298.742|9.861|0.202|15.989|0.27|0|0.261|15.493|0.182|0|0.319|12.169|0.325|0|0.825|8.69||32|0.576|16.603|0.268|0|16.366|0.216|0|13.698|0.445|0|9.699||32|16.25|0.27|0|15.812|0.182|0|12.994|0.325|0|9.266||32|16.172|0.326|1|15.493|0.176|1|12.592|0.291|1|8.923||32|16.165|0.401|1|15.231|0.171|1|12.297|0.275|1|8.63||32|15.983|0.408|1|14.967|0.162|1|11.989|0.249|1|8.371||32|15.567|0.329|1|14.677|0.146|1|11.693|0.223|1|8.135||32|15.16|0.263|1|14.385|0.13|1|11.425|0.203|1|7.92||32|14.86|0.229|1|14.125|0.117|1|11.182|0.186|1|7.721||32|15.95|0.19|0.04|0.86|21|0|55275.02271543|55276.94144233|55276.0392246|15.82|0.544|0.116|2.49099994|20|0|55275.02271543|55276.94144233|55276.0392246|12.429|1.981|0.432|5.34800005|12|0|55275.02271543|55276.94144233|55276.01201536||||2.08299994|9|0|55275.02271543|55276.94144233|55276.01201536|-8|9|4|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005190|1|-0.0004549560730819|-0.001889278239964|-0.999998111819569|121000000|
+J055712.18-895318.9|89.3007713|-89.8885986|0.4609|0.5256|-0.1028|302.8102045|-27.1542211|270.0034331|-66.672102|1905.672|606.61|600089401241004508|0600m894_ab41-004508|0600m894_ab41|4508|16.427|0.083|13.0|1.04700005|16.977|0.424|2.6|0.835500002|12.364|0.27|4.0|1.13199997|9.442||0.2|1.04700005|1.00999999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACBU|7|0000|9|20|0|20|1|19|0|19|21.696|22.349|21.356|20.873|0.0|0.0|0.0|0.0|0||0||0||0||42.5740013|3.26869988|9.377|2.904|0.175|10.2089996|3.98839998|21.735|3.584|0.107|179.570007|44.7290001|1097.935|22.809|3.088|2.31929994|12.0880003|298.861|9.504|1.003|15.577|0.088|1|0.261|15.812|0.237|1|0.319|12.066||32|0.825|8.942||32|0.576|16.569|0.123|1|16.774|0.306|1|13.486||32|9.953||32|15.838|0.088|1|16.131|0.237|1|12.891||32|9.518||32|15.194|0.063|1|15.536|0.178|1|13.106|0.48|1|9.175||32|14.647|0.047|1|14.991|0.134|1|12.579|0.366|1|8.884||32|14.258|0.04|1|14.566|0.109|1|12.158|0.3|1|8.627||32|13.983|0.037|1|14.23|0.095|1|11.794|0.254|1|8.394||32|13.75|0.034|1|13.947|0.085|1|11.473|0.22|1|8.181||32|13.549|0.033|1|13.712|0.079|1|11.192|0.195|1|7.857||32|16.518|0.339|0.076|1.341|18|0|55275.28745078|55277.20605032|55276.20045053|17.045|1.984|0.444|2.50900006|13|0|55275.28745078|55277.20605032|55276.20045053|12.348|0.904|0.207|2.47099996|14|0|55275.28745078|55277.20605032|55276.17886275|12.071|||2.53600001|7|0|55275.28745078|55277.20605032|55276.17886275|-13|-72|-27|0|2|0|||||||||||||||||||||||||||||0|||||||600089401241004508|1|0.0000237275932751|0.0019441757206417|-0.999998109807098|101000000|
+J225149.66-895318.5|342.9569579|-89.8884959|0.6702|0.5952|-0.1159|302.994429|-27.2248026|270.2676541|-66.5277997|2133.559|631.137|89401241005262|0000m894_ab41-005262|0000m894_ab41|5262|16.923|0.107|10.1|0.836300015|17.372||0.2|0.914200008|12.583|0.298|3.6|1.09000003|8.987||1.3|0.981400013|0.950399995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|AUBU|5|0000|6|24|0|24|1|23|1|23|24.826|24.758|23.826|23.422|0.0|0.0|0.0|0.0|0||0||0||0||26.9549999|2.6558001|9.27|2.83|0.145|0.602479994|3.2493|21.692|3.344|0.166|146.820007|40.2739983|1099.993|24.128|0.0|16.059|12.118|298.383|9.736|0.906|16.632|0.17|0|0.261|16.113||32|0.319|13.38||32|0.825|8.646||32|0.576|17.247|0.171|0|16.793||32|13.175||32|9.682||32|16.893|0.17|0|16.432||32|14.205||32|9.222||32|16.785|0.2|0|16.151||32|12.609||32|8.867||32|16.734|0.236|1|15.919||32|12.376||32|8.79||32|16.655|0.264|1|15.718||32|12.175||32|8.49||32|16.49|0.267|1|15.538||32|11.995||32|8.256||32|16.221|0.243|1|15.373||32|11.831||32|8.04||32|15.927|0.213|1|15.221||32|11.679||32|7.841||32|16.875|0.504|0.103|1.988|22|0|55275.55205887|55277.33835439|55276.41490023|18.859|||3.66199994|11|0|55275.55205887|55277.33835439|55276.41490023|12.504|1.616|0.337|3.28200006|16|0|55275.55205887|55277.33835439|55276.40639074|9.584|2.888|0.602|4.09000015|13|0|55275.55205887|55277.33835439|55276.40639074|40|-63|-6|1|1|0|||||||||||||||||||||||||||||0|||||||89401241005262|1|0.0018606487271733|-0.0005703861754251|-0.999998106321169|131000000|
+J014339.80-895318.3|25.9158507|-89.888434|0.9904|0.9516|0.3259|302.9035692|-27.2368354|270.2527632|-66.6092658|1920.332|614.746|89401241005736|0000m894_ab41-005736|0000m894_ab41|5736|17.5|0.167|6.5|0.934700012|17.476||-0.5|0.933899999|12.589|0.307|3.5|1.13600004|9.569||-0.1|1.00300002|0.998000026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|BUBU|5|0000|4|24|0|24|3|23|0|23|23.702|23.937|22.931|22.823|0.0|0.0|0.0|0.0|0||0||0||0||15.8540001|2.43540001|9.289|2.856|0.016|-1.51269996|3.22539997|21.716|3.371|0.128|146.029999|41.3540001|1098.63|22.749|1.694|-1.34449995|11.7819996|298.692|9.597|0.609|16.503||32|0.261|16.517||32|0.319|12.318||32|0.825|8.712||32|0.576|17.082||32|17.086||32|14.053||32|9.824||32|16.764||32|16.836||32|13.143||32|9.288||32|16.608||32|16.555||32|12.863||32|8.831||32|16.532||32|16.321||32|12.63||32|8.429||32|16.453||32|16.117||32|12.426||32|8.105||32|16.23||32|15.935||32|12.245||32|7.861||32|15.8||32|15.768||32|12.08||32|7.713||32|16.044|0.515|1|15.529||32|11.928||32|7.568||32|17.534|1.144|0.234|2.639|20|1|55275.28745078|55277.33835439|55276.3515125|18.936|||3.69099998|9|0|55275.28745078|55277.33835439|55276.3515125|12.281|1.636|0.341|3.58200002|15|1|55275.28745078|55277.33835439|55276.34024702||||2.5079999|10|0|55275.28745078|55277.33835439|55276.34024702|-29|-21|-32|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005736|1|0.001751377111781|0.0008510218671057|-0.9999981042182|101000000|
+J001525.14-895317.5|3.8547783|-89.8882047|0.5996|0.5511|0.1376|302.9515961|-27.2385725|270.2804972|-66.5679741|2028.317|644.057|89401241005063|0000m894_ab41-005063|0000m894_ab41|5063|16.793|0.098|11.1|0.907100022|16.894|0.345|3.1|0.909500003|12.58|0.31|3.5|1.20599997|9.086||1.0|1.03900003|1.00800002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|5|21|0|21|2|20|0|20|21.25|21.993|21.19|21.364|0.0|0.0|0.0|0.0|0||0||0||0||30.3829994|2.73909998|9.253|2.683|0.0|11.0279999|3.50309992|21.742|3.428|0.0|147.289993|42.1220016|1098.741|23.382|2.591|12.2390003|12.2709999|298.543|9.534|1.325|16.284|0.145|1|0.261|16.024|0.24|1|0.319|12.05||32|0.825|8.66||32|0.576|17.07|0.168|1|16.916|0.29|1|13.474||32|9.67||32|16.545|0.145|1|16.343|0.24|1|12.875||32|9.236||32|16.156|0.131|1|15.923|0.211|1|13.038|0.42|1|8.892||32|15.741|0.111|1|15.468|0.173|1|12.546|0.332|1|8.599||32|15.332|0.092|1|15.012|0.137|1|12.142|0.274|1|8.339||32|15.01|0.081|1|14.632|0.114|1|11.824|0.241|1|8.103||32|14.775|0.076|1|14.337|0.102|1|11.602|0.228|1|7.888||32|14.582|0.073|1|14.097|0.094|1|11.427|0.223|1|7.689||32|16.838|0.424|0.093|2.355|20|1|55275.55205887|55277.33835439|55276.39639986|16.814|2.002|0.437|4.05999994|14|0|55275.55205887|55277.33835439|55276.39639986|12.482|1.711|0.383|2.65799999|12|0|55275.55205887|55277.33835439|55276.38568892|10.961|9.541|2.133|2.21499991|11|0|55275.55205887|55277.33835439|55276.38568892|-54|-21|52|1|0|1|||||||||||||||||||||||||||||0|||||||89401241005063|1|0.0019467804036668|0.0001311745857072|-0.999998096417832|101000000|
+J232212.13-895317.5|350.5505551|-89.8882028|0.7694|0.6972|-0.0745|302.9796443|-27.2315776|270.2770347|-66.5421097|2096.05|640.753|89401241005745|0000m894_ab41-005745|0000m894_ab41|5745|17.142|0.124|8.8|0.842000008|16.986||1.0|0.880400002|12.677|0.336|3.2|0.961799979|9.504|0.502|2.2|1.08399999|0.93779999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBC|13|0000|1|24|0|24|0|23|0|23|24.22|24.34|23.85|23.318|0.0|0.0|0.0|0.0|0||0||0||0||22.0370007|2.50830007|9.2|2.798|0.0|3.41009998|3.3599999|21.748|3.457|0.027|134.639999|41.6360016|1099.795|23.684|1.812|25.0249996|11.5740004|298.543|9.774|0.594|16.779|0.28|1|0.261|16.303||32|0.319|12.23||32|0.825|8.569||32|0.576|17.462|0.297|0|16.906||32|13.557||32|9.492||32|17.04|0.28|1|16.622||32|13.055||32|9.145||32|16.882|0.313|1|16.456||32|12.637||32|8.917||32|16.794|0.359|1|16.299||32|12.33||32|8.623||32|16.734|0.408|1|16.086||32|12.125||32|8.363||32|16.763|0.496|1|15.85||32|11.976||32|8.126||32|16.065||32|15.705||32|11.853||32|7.91||32|16.085||32|15.625||32|11.702||32|8.178||32|17.1|0.394|0.08|2.126|22|0|55275.55205887|55277.33835439|55276.41490023|17.742|3.732|0.762|3.02999997|12|0|55275.55205887|55277.33835439|55276.41490023|12.459|1.253|0.261|4.69799995|15|0|55275.55205887|55277.33835439|55276.40639074|9.734|3.049|0.636|2.8900001|14|0|55275.55205887|55277.33835439|55276.40639074|-56|-22|-65|1|0|1|||||||||||||||||||||||||||||0|||||||89401241005745|1|0.0019247513602474|-0.000320347303535|-0.999998096353091|131000000|
+J115854.42-895316.7|179.7267607|-89.8879979|0.5288|0.4887|0.1248|302.9033506|-27.0190807|269.7184292|-66.5609905|2050.814|645.237|1802089401241004655|1802m894_ab41-004655|1802m894_ab41|4655|16.619|0.09|12.1|0.931200027|16.093|0.173|6.3|1.01699996|12.904||-0.8|0.982900023|9.226||0.5|1.00800002|0.981000006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|9|21|2|21|0|21|0|21|23.094|23.249|23.195|23.186|0.0|0.0|0.0|0.0|0||0||0||0||35.6889992|2.9532001|9.744|2.797|0.193|23.0650005|3.67869997|21.825|3.451|0.087|-43.4560013|54.637001|1095.734|26.683|4.234|6.76000023|12.7810001|297.764|9.749|1.973|16.196|0.141|0|0.261|16.223|0.461|0|0.319|12.793||32|0.825|8.629||32|0.576|16.95|0.158|0|16.89|0.451|0|13.923||32|9.747||32|16.457|0.141|0|16.542|0.461|0|13.618||32|9.205||32|16.071|0.128|1|16.362|0.504|1|13.405||32|8.801||32|15.504|0.095|1|15.867|0.398|1|13.026||32|8.465||32|14.748|0.057|1|15.093|0.236|1|12.776||32|8.173||32|14.073|0.037|1|14.4|0.147|1|12.594||32|7.929||32|13.63|0.029|1|13.944|0.113|1|12.454||32|7.713||32|13.394|0.026|1|13.696|0.103|1|12.381||32|7.563||32|16.559|0.401|0.087|1.614|19|0|55274.89041135|55276.94144233|55275.90177109|16.04|0.916|0.2|2.07500005|15|0|55274.89041135|55276.94144233|55275.90177109||||1.53100002|8|0|55274.89041135|55276.94144233|55275.90177109|10.426|4.255|0.928|4.08500004|11|0|55274.89041135|55276.94144233|55275.90177109|-8|19|17|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004655|1|-0.0019547811988257|0.0000093222756842|-0.999998089369955|111000000|
+J024201.46-895316.7|40.5061057|-89.8879884|0.9528|0.9593|0.348|302.8734642|-27.2273671|270.2147343|-66.6333172|1948.349|76.235|2403089401241005924|2403m894_ab41-005924|2403m894_ab41|5924|18.833||-1.1|1.35899997|17.509||-3.9|0.984700024|11.738|0.136|8.0|1.11899996|9.01||1.6|0.98089999|1.12199998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|0|24|3|23|0|23|23.765|23.97|23.267|22.918|0.0|0.0|0.0|0.0|0||0||0||0||-2.49699998|2.32150006|9.276|2.722|0.0|-12.2110004|3.12770009|21.737|3.249|0.0|319.829987|40.1469994|1099.103|22.291|1.03|17.3719997|11.0349998|298.65|9.181|0.667|16.049|0.08|1|0.261|17.021||32|0.319|11.793||32|0.825|8.958||32|0.576|17.46|0.166|1|17.709||32|13.014||32|12.323||32|16.31|0.08|1|17.34||32|12.618||32|9.534||32|15.506|0.05|1|17.009|0.521|1|12.341||32|9.187||32|14.864|0.034|1|15.723|0.198|1|12.134||32|8.894||32|14.25|0.024|1|14.84|0.106|1|11.966||32|8.633||32|13.714|0.018|1|14.202|0.07|1|11.814||32|8.296||32|13.344|0.015|1|13.784|0.055|1|11.659||32|7.951||32|13.142|0.014|1|13.547|0.051|1|11.546||32|7.681||32||||2.589|6|0|55275.28745078|55277.33835439|55276.3515125||||2.02800012|7|0|55275.28745078|55277.33835439|55276.3515125|11.876|1.041|0.217|3.27800012|17|2|55275.28745078|55277.33835439|55276.34024702|9.692|2.477|0.516|2.86599994|12|0|55275.28745078|55277.33835439|55276.34024702|82|-16|-14|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005924|1|0.0014864352862301|0.0012698096405131|-0.999998089044982|101000000|
+J022212.99-895316.0|35.5541282|-89.887798|1.0726|0.9843|0.3677|302.8832302|-27.2316626|270.230088|-66.625783|1924.703|85.413|2403089401241005897|2403m894_ab41-005897|2403m894_ab41|5897|18.807||-3.1|0.851100028|17.459||-0.4|1.01999998|11.759|0.138|7.9|1.08700001|9.073||1.5|1.64699996|1.005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|1|24|1|23|0|23|23.247|23.713|22.981|22.757|0.0|0.0|0.0|0.0|0||0||0||0||-7.329|2.37879992|9.31|2.839|0.085|-1.27100003|3.27579999|21.74|3.375|0.098|313.51001|39.8470001|1100.154|22.851|1.674|15.698|10.7580004|298.163|9.11|1.0|17.411||32|0.261|16.507||32|0.319|12.123|0.342|1|0.825|9.596||32|0.576|18.237||32|17.201||32|13.667|0.476|1|9.794||32|17.672||32|16.826||32|12.948|0.342|1|10.172||32|17.1||32|16.548||32|12.44|0.278|1|11.296||32|17.24|0.413|1|16.188||32|11.987|0.226|1|8.723||32|16.695|0.302|1|16.447|0.47|1|11.585|0.189|1|8.463||32|16.101|0.206|1|15.899|0.334|1|11.244|0.162|1|8.228||32|15.458|0.133|17|15.388|0.243|1|10.96|0.145|1|8.012||32|14.899|0.091|17|14.922|0.182|1|10.726|0.135|1|7.814||32||||2.395|6|0|55275.28745078|55277.33835439|55276.3515125||||3.43099999|11|0|55275.28745078|55277.33835439|55276.3515125|11.754|0.696|0.145|2.63499999|19|0|55275.28745078|55277.33835439|55276.34024702|9.57|2.684|0.56|1.72800004|12|0|55275.28745078|55277.33835439|55276.34024702|-68|2|-28|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005897|1|0.0015932010844196|0.0011386917295861|-0.999998082543886|101000000|
+J105914.67-895315.9|164.8111563|-89.8877687|0.1067|0.103|0.0162|302.8726723|-27.0290941|269.7273888|-66.5898772|2126.355|635.212|1802089401241003845|1802m894_ab41-003845|1802m894_ab41|3845|13.645|0.025|42.7|1.03699994|13.655|0.034|32.2|0.861999989|12.476||1.2|0.920300007|9.424||-0.4|1.11000001|0.978999972|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|21|21|21|21|0|21|0|21|20.848|21.113|20.755|21.05|0.0|0.0|0.0|0.0|0||0||0||0||551.98999|12.934|9.578|2.823|0.202|217.869995|6.76599979|21.818|3.441|0.019|60.2220001|50.9269981|1095.088|25.603|0.38|-5.70559978|13.4720001|298.161|10.05|0.526|13.624|0.013|1|0.261|13.651|0.033|1|0.319|12.376|0.398|1|0.825|8.553||32|0.576|14.255|0.014|0|14.409|0.036|0|13.175||32|9.652||32|13.885|0.013|1|13.97|0.033|1|13.201|0.398|1|9.129||32|13.739|0.014|1|13.794|0.036|1|12.735|0.336|1|8.627||32|13.643|0.016|1|13.689|0.041|1|12.377|0.299|1|8.853|0.481|1|13.542|0.017|1|13.579|0.044|1|12.087|0.275|1|8.346|0.371|1|13.433|0.018|1|13.46|0.047|1|11.838|0.258|1|7.952|0.311|1|13.325|0.019|1|13.336|0.048|1|11.581|0.237|1|7.674|0.285|1|13.224|0.02|1|13.211|0.049|1|11.313|0.212|1|7.489|0.282|1|13.646|0.028|0.006|0.123|20|0|55274.89041135|55276.94144233|55275.90177109|13.657|0.122|0.027|0.472000003|20|0|55274.89041135|55276.94144233|55275.90177109|12.664|1.771|0.386|2.5999999|12|0|55274.89041135|55276.94144233|55275.90177109||||3.05999994|7|0|55274.89041135|55276.94144233|55275.90177109|15|-41|5|0|1|0||||||||||||||||||||||||||748854779|0.243|13.4|1|14.151|0.029|13.765|0.039|13.808|0.068|1802089401241003845|1|-0.0018903793151711|0.0005132094581341|-0.999998081539208|111000000|
+J182207.87-895315.7|275.5328102|-89.8877132|0.9714|1.0605|-0.249|303.0570364|-27.1137814|270.0270949|-66.4489429|2171.91|618.622|3004089401241005561|3004m894_ab41-005561|3004m894_ab41|5561|17.477|0.162|6.7|1.13699996|17.432||-0.6|0.8398|13.039||0.0|1.01800001|9.083||1.1|0.99150002|0.994099975|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|22|0|22|0|21|0|22|23.599|23.422|22.747|22.942|0.0|0.0|0.0|0.0|0||0||0||0||16.1900005|2.41820002|9.372|2.591|0.429|-1.85169995|3.35809994|21.749|3.345|0.0|-2.01130009|48.2330017|1097.043|25.678|3.253|12.7069998|12.0950003|299.0|9.706|0.68|17.858|0.471|0|0.261|16.818||32|0.319|11.832||32|0.825|8.676||32|0.576|18.123|0.338|0|17.556||32|13.017||32|9.625||32|18.119|0.471|0|17.137||32|12.657||32|9.252||32|17.554||32|16.849||32|12.369||32|9.031||32|17.745||32|16.617||32|12.136||32|8.804||32|17.544||32|16.417||32|11.936||32|8.542||32|17.363||32|16.237||32|11.757||32|8.307||32|17.197||32|16.073||32|11.594||32|8.091||32|17.042||32|15.92||32|11.441||32|7.892||32|17.65|0.824|0.176|3.896|17|4|55275.28732341|55277.20605032|55276.13846709||||2.51099992|10|0|55275.28732341|55277.20605032|55276.13846709|14.205|7.567|1.651|4.01800013|11|0|55275.28732341|55277.20605032|55276.11598369|10.152|4.38|0.934|4.454|12|0|55275.28732341|55277.20605032|55276.12041984|10|52|-21|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005561|1|0.0001889529448907|-0.0019506423812701|-0.999998079643699|131000000|
+J021203.62-895315.5|33.0150982|-89.887663|1.0467|1.0397|0.3481|302.8883822|-27.2336071|270.2373938|-66.6217377|2181.883|613.907|600089401241005452|0600m894_ab41-005452|0600m894_ab41|5452|18.191|0.335|3.2|0.907700002|16.814||1.6|0.903599977|11.888|0.162|6.7|1.046|8.921||2.0|0.99849999|0.956799984|1|0|0.001|0.0|0.0|0.0|0000|0000|0|nn1n|BUBU|5|0000|0|24|0|24|4|23|0|23|22.813|23.743|22.863|22.82|0.0|0.0|0.0|0.0|0||0||0||0||8.38949966|2.5862999|9.28|2.751|0.15|5.2723999|3.29699993|21.748|3.327|0.18|278.559998|41.5130005|1100.323|23.01|2.622|21.1669998|10.8170004|298.515|9.262|0.818|17.057|0.265|1|0.261|16.366|0.308|1|0.319|11.702||32|0.825|8.624||32|0.576|17.936|0.338|0|17.37|0.418|0|13.032||32|9.632||32|17.318|0.265|1|16.685|0.308|1|12.527||32|9.2||32|16.76|0.206|1|16.152|0.243|1|12.111||32|8.854||32|16.186|0.15|1|15.634|0.186|1|12.386|0.433|1|8.563||32|15.662|0.112|17|15.165|0.144|1|11.958|0.352|1|8.302||32|15.143|0.082|17|14.729|0.114|1|11.577|0.293|1|8.067||32|14.496|0.053|17|14.246|0.085|1|11.254|0.253|1|7.851||32|13.779|0.032|17|13.722|0.06|1|10.994|0.229|1|7.653||32|18.186|1.28|0.261|3.392|17|0|55275.28745078|55277.33835439|55276.3515125|17.36|2.517|0.514|2.80100012|10|0|55275.28745078|55277.33835439|55276.3515125|11.81|0.846|0.176|4.11600018|18|0|55275.28745078|55277.33835439|55276.34024702|9.344|1.581|0.33|2.63100004|14|0|55275.28745078|55277.33835439|55276.34024702|39|-19|47|1|0|1|||||||||||||||||||||||||||||0|||||||600089401241005452|1|0.0016440568163468|0.0010682790225109|-0.99999807792671|101000000|
+J172543.34-895315.5|261.4305929|-89.8876615|0.5637|0.6422|-0.099|303.0493719|-27.0870651|269.9581053|-66.4496189|1942.292|626.493|2403089401241005955|2403m894_ab41-005955|2403m894_ab41|5955|16.846|0.1|10.9|0.935800016|17.187|0.436|2.5|1.06200004|12.733||0.4|1.05299997|9.456||-0.2|0.988699973|1.00699997|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|ACUU|3|0000|3|22|0|22|0|21|0|21|24.386|24.097|23.444|23.746|0.0|0.0|0.0|0.0|8|h|0||0||0||28.9529991|2.6638|9.375|2.531|0.075|8.41699982|3.37910008|21.797|3.227|0.338|19.9689999|53.9669991|1096.22|25.88|1.203|-2.45409989|13.0769997|298.682|9.75|1.406|16.616|0.5|0|0.261|15.828|0.186|0|0.319|12.248||32|0.825|8.991||32|0.576|16.585||32|16.789|0.242|0|13.45||32|10.003||32|16.877|0.5|0|16.147|0.186|0|13.073||32|9.567||32|16.581|0.496|0|15.755|0.168|0|12.833||32|9.219||32|16.324|0.484|1|15.435|0.154|1|12.678||32|8.922||32|15.978|0.424|1|15.117|0.138|1|12.578||32|8.659||32|15.515|0.327|1|14.78|0.118|1|12.481||32|8.421||32|15.053|0.249|1|14.426|0.099|1|12.315||32|8.203||32|14.672|0.201|1|14.077|0.082|1|12.164||32|8.003||32|16.977|0.464|0.099|2.596|21|1|55275.02271543|55276.94144233|55276.0392246|17.335|3.243|0.691|2.20499992|12|0|55275.02271543|55276.94144233|55276.0392246|13.961|3.638|0.794|5.42999983|11|0|55275.02271543|55276.94144233|55276.01201536|11.814|||3.00200009|8|0|55275.02271543|55276.94144233|55276.01201536|-11|-47|59|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005955|1|-0.000292155203501|-0.0019387872689343|-0.999998077872784|121000000|
+J010316.28-895314.9|15.8178674|-89.8874966|0.6865|0.6533|0.1956|302.9253854|-27.2405097|270.272455|-66.591139|1967.705|635.42|89401241005140|0000m894_ab41-005140|0000m894_ab41|5140|17.012|0.115|9.4|0.943499982|16.677|0.274|4.0|0.94569999|12.956|0.481|2.3|1.028|8.951||1.6|1.16700006|1.01499999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBCU|7|0000|3|21|1|21|1|20|0|20|21.558|21.901|21.795|21.347|0.0|0.0|0.0|0.0|0||0||0||0||24.8530006|2.63170004|9.19|2.684|0.0|13.4610004|3.39910007|21.766|3.364|0.156|104.089996|46.0950012|1100.103|23.978|1.501|18.2029991|11.7250004|298.174|9.397|0.946|16.111|0.123|1|0.261|15.698|0.234|1|0.319|12.375||32|0.825|8.442||32|0.576|17.079|0.169|1|16.748|0.33|1|13.708||32|9.476||32|16.372|0.123|1|16.017|0.234|1|13.2||32|9.018||32|15.737|0.089|1|15.465|0.183|1|12.831||32|8.79||32|15.185|0.066|1|15.017|0.15|1|12.573||32|8.653||32|14.789|0.056|1|14.699|0.135|1|12.369||32|8.475||32|14.524|0.052|1|14.485|0.131|1|12.192||32|8.24||32|14.321|0.05|1|14.318|0.131|1|12.029||32|8.024||32|14.15|0.049|1|14.174|0.132|1|11.814||32|7.825||32|17.027|0.649|0.142|2.517|19|1|55275.55205887|55277.33835439|55276.39639986|16.924|1.511|0.33|2.6400001|16|0|55275.55205887|55277.33835439|55276.39639986|12.361|1.446|0.323|3.85100007|13|0|55275.55205887|55277.33835439|55276.38568892|9.809|2.51|0.561|2.97099996|13|0|55275.55205887|55277.33835439|55276.38568892|-28|-11|-21|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005140|1|0.001889199965863|0.0005352260743456|-0.999998072226411|101000000|
+J012424.66-895314.6|21.1027742|-89.8873993|0.743|0.7126|0.2249|302.9137581|-27.2395925|270.2645208|-66.6010273|1941.851|627.058|89401241005391|0000m894_ab41-005391|0000m894_ab41|5391|17.078|0.123|8.8|0.851499975|16.903||1.1|0.891799986|12.37|0.267|4.1|1.12600005|9.233||0.7|0.957899988|0.950900018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BUBU|5|0000|5|21|0|21|2|20|0|20|23.703|23.659|22.936|22.698|0.0|0.0|0.0|0.0|0||0||0||0||23.3740005|2.6572001|9.23|2.735|0.094|3.88849998|3.52150011|21.763|3.414|0.181|178.699997|43.9059982|1100.486|23.885|0.81|8.51490021|11.7989998|298.505|9.335|0.335|16.862|0.261|0|0.261|15.802||32|0.319|12.142||32|0.825|8.993||32|0.576|17.493|0.263|0|16.51||32|13.349||32|9.997||32|17.123|0.261|0|16.121||32|12.967||32|9.569||32|16.984|0.297|1|15.857||32|12.688||32|9.233||32|16.908|0.343|1|15.629||32|12.458||32|8.846||32|16.774|0.366|1|15.405||32|12.253||32|8.407||32|16.469|0.326|1|15.169||32|12.073||32|8.016||32|16.066|0.262|1|15.68|0.536|1|11.907||32|7.72||32|15.703|0.216|1|15.436|0.492|1|11.757||32|7.486||32|17.078|0.728|0.159|3.254|17|0|55275.55205887|55277.33835439|55276.39639986|17.554|3.286|0.717|2.63899994|11|0|55275.55205887|55277.33835439|55276.39639986|12.383|1.376|0.308|4.11800003|14|0|55275.55205887|55277.33835439|55276.38568892|10.254|3.623|0.81|3.08699989|9|0|55275.55205887|55277.33835439|55276.38568892|1|11|44|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005391|1|0.0018334534653401|0.0007075728069436|-0.999998068892692|101000000|
+J071634.81-895314.5|109.1450749|-89.8873835|0.116|0.1145|-0.0157|302.8061537|-27.1157706|269.90675|-66.6670691|2104.466|641.415|1201089401241004165|1201m894_ab41-004165|1201m894_ab41|4165|13.971|0.027|40.1|1.41100001|14.081|0.041|26.6|1.10300004|11.963|0.173|6.3|1.04100001|9.207||0.9|1.005|1.14199996|1|0|0.0|0.0|0.0|0.002|0000|0000|0|01nn|AABU|7|0000|23|23|21|23|1|21|0|22|22.668|22.144|21.913|21.788|0.0|0.0|0.0|0.0|0||0||0||0||408.850006|10.1879997|9.401|2.772|0.138|147.130005|5.53520012|21.806|3.411|0.178|259.859985|41.3880005|1096.724|22.473|3.983|10.4820004|11.2119999|298.163|9.344|1.725|13.856|0.014|1|0.261|13.998|0.064|1|0.319|12.76||32|0.825|8.972||32|0.576|14.555|0.016|1|14.819|0.073|1|13.328||32|9.983||32|14.117|0.014|1|14.317|0.064|1|13.585||32|9.548||32|13.868|0.014|1|14.051|0.064|1|12.768||32|9.206||32|13.7|0.015|1|13.888|0.068|1|12.532||32|8.919||32|13.591|0.016|1|13.779|0.074|1|12.329||32|8.661||32|13.51|0.017|1|13.698|0.081|1|12.146||32|8.43||32|13.439|0.018|1|13.629|0.088|1|11.982||32|8.218||32|13.367|0.019|1|13.554|0.094|1|11.831||32|8.021||32|13.971|0.059|0.012|0.224|22|0|55275.02271543|55276.94144233|55276.00656647|14.087|0.19|0.04|0.722000003|22|0|55275.02271543|55276.94144233|55276.00656647|11.933|0.746|0.163|3.18000007|19|0|55275.02271543|55276.94144233|55276.00889862|10.193|3.414|0.728|2.14599991|12|0|55275.02271543|55276.94144233|55275.97910956|10|-31|-14|0|1|0||||||||||||||||||||||||||946687474|0.253|-149.5|1|14.655|0.03|14.219|0.057|14.005|0.077|1201089401241004165|1|-0.0006446167898636|0.0018568166528106|-0.99999806834869|111000000|
+J130427.78-895313.8|196.1157574|-89.8871807|0.0675|0.0696|-0.0071|302.9391094|-27.0155191|269.7278661|-66.5291565|1967.379|636.176|1802089401241003767|1802m894_ab41-003767|1802m894_ab41|3767|8.424|0.023|47.7|0.875899971|8.541|0.021|51.8|0.880800009|8.42|0.021|52.4|1.07500005|8.656|0.253|4.3|1.04400003|0.966400027|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|000n|AAAB|15|0000|24|24|24|24|24|24|2|24|23.874|23.783|24.009|23.943|0.0|0.0|0.0|0.0|8|h|8|h|0||0||67648.0|1419.0|9.862|2.502|0.0|24196.0|467.410004|21.799|3.11|0.086|6791.1001|129.550003|1096.074|26.467|6.254|54.6409988|12.724|297.778|9.92|1.595|8.426|0.005|0|0.261|8.535|0.005|0|0.319|8.414|0.011|0|0.825|8.289|0.27|1|0.576|9.056|0.005|0|9.294|0.006|0|9.829|0.013|0|9.462|0.32|0|8.687|0.005|0|8.854|0.005|0|9.239|0.011|0|8.865|0.27|1|8.558|0.005|0|8.689|0.005|0|8.927|0.01|0|8.526|0.264|1|8.508|0.005|0|8.625|0.005|0|8.764|0.011|0|8.281|0.267|1|8.484|0.005|0|8.595|0.006|0|8.676|0.012|0|8.029|0.261|1|8.47|0.005|0|8.578|0.006|0|8.627|0.013|0|7.862|0.27|1|8.459|0.005|0|8.565|0.006|0|8.597|0.014|0|7.775|0.296|1|8.451|0.005|1|8.556|0.006|1|8.577|0.016|0|7.667|0.314|1|8.424|0.015|0.003|0.063|23|0|55274.89041135|55276.94144233|55275.92420909|8.541|0.022|0.005|0.0930000022|23|0|55274.89041135|55276.94144233|55275.92420909|8.414|0.047|0.01|0.187000006|23|0|55274.89041135|55276.94144233|55275.92420909|8.531|1.108|0.226|5.07700014|18|0|55274.89041135|55276.94144233|55275.92420909|15|-1|-1|0|0|0||||||||||||||||||||||||||857854979|0.068|-164.1|1|9.26|0.023|8.651|0.071|8.56|0.021|1802089401241003767|1|-0.0018916874455035|-0.0005465711592214|-0.999998061387409|121000000|
+J045132.16-895313.8|72.8840367|-89.88717|0.9676|1.0929|0.2467|302.8220416|-27.1844867|270.0838444|-66.6685194|1982.597|640.102|600089401241005250|0600m894_ab41-005250|0600m894_ab41|5250|17.972|0.272|4.0|1.08399999|16.777||1.1|0.850399971|11.843|0.161|6.7|1.11899996|9.121||1.2|1.12800002|1.02699995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|1|21|0|21|3|21|0|21|22.314|22.639|21.613|21.928|0.0|0.0|0.0|0.0|0||0||0||0||10.257|2.57310009|9.355|2.738|0.0|4.4689002|3.90400004|21.828|3.563|0.0|290.140015|43.1419983|1100.705|23.533|0.0|13.1619997|11.2299995|298.452|9.142|0.404|16.923|0.32|1|0.261|16.263|0.483|1|0.319|12.488||32|0.825|8.442||32|0.576|17.733|0.381|1|16.412||32|13.7||32|9.529||32|17.184|0.32|1|16.582|0.483|1|13.313||32|9.018||32|16.78|0.286|1|16.094|0.399|1|12.964||32|8.649||32|16.346|0.238|1|15.633|0.324|1|12.665||32|8.343||32|15.819|0.176|1|15.218|0.266|1|12.472||32|8.066||32|15.328|0.132|1|14.885|0.231|1|12.387||32|7.817||32|15.009|0.115|1|14.638|0.214|1|12.318||32|7.614||32|14.839|0.113|1|14.468|0.21|1|12.268||32|7.432||32|18.06|1.615|0.352|3.892|14|1|55275.28745078|55277.20605032|55276.23258879|17.764|4.395|0.959|4.1079998|11|0|55275.28745078|55277.20605032|55276.23258879|11.742|0.742|0.162|2.03800011|17|0|55275.28745078|55277.20605032|55276.20108177|9.623|2.144|0.468|2.41000009|13|0|55275.28745078|55277.20605032|55276.20108177|28|43|37|0|1|1|||||||||||||||||||||||||||||0|||||||600089401241005250|1|0.0005795642326532|0.0018820370544435|-0.999998061019033|101000000|
+J011121.03-895313.5|17.8376332|-89.8871006|0.3908|0.3803|0.1037|302.920897|-27.2406294|270.2705567|-66.5950595|1957.449|633.401|89401241004849|0000m894_ab41-004849|0000m894_ab41|4849|16.244|0.067|16.3|1.051|16.656|0.27|4.0|0.922999978|13.069|0.542|2.0|1.01999998|9.52||-1.3|1.079|1.01400006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|16|21|1|21|0|20|0|20|22.266|22.754|22.337|22.213|0.0|0.0|0.0|0.0|0||0||0||0||50.3800011|3.08929992|9.285|2.753|0.089|13.7299995|3.41589999|21.735|3.319|0.045|93.8050003|46.7879982|1101.478|24.59|2.282|-16.5219994|12.3269997|299.569|9.852|1.294|16.02|0.099|1|0.261|16.034|0.295|1|0.319|12.304||32|0.825|8.343||32|0.576|16.708|0.106|1|16.891|0.348|1|13.49||32|9.358||32|16.281|0.099|1|16.353|0.295|1|13.129||32|8.919||32|15.989|0.097|1|15.954|0.264|1|12.851||32|8.571||32|15.625|0.087|1|15.563|0.229|1|12.614||32|8.277||32|15.224|0.073|1|15.211|0.2|1|12.412||32|8.016||32|14.906|0.064|1|14.955|0.188|1|12.228||32|7.78||32|14.684|0.061|1|14.781|0.186|1|12.064||32|7.564||32|14.499|0.059|1|14.643|0.189|1|11.91||32|7.365||32|16.245|0.301|0.066|1.702|20|0|55275.55205887|55277.33835439|55276.39639986|16.708|1.722|0.376|3.75699997|13|0|55275.55205887|55277.33835439|55276.39639986|12.353|1.127|0.252|2.18899989|12|0|55275.55205887|55277.33835439|55276.38568892||||2.95000005|9|0|55275.55205887|55277.33835439|55276.38568892|-10|38|44|0|1|0|||||||||||||||||||||||||||||0|||||||89401241004849|1|0.0018757408024276|0.0006035938056188|-0.999998058633595|101000000|
+J184348.28-895313.4|280.951198|-89.8870754|0.1153|0.1174|-0.0146|303.0587246|-27.1243391|270.0536916|-66.4498315|2146.74|630.705|3004089401241004068|3004m894_ab41-004068|3004m894_ab41|4068|14.035|0.027|40.3|1.02199996|14.11|0.04|27.1|1.00300002|13.008|0.491|2.2|1.00800002|9.325||0.4|0.966400027|0.997600019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AACU|7|0000|22|22|22|22|0|21|0|21|24.487|24.117|23.561|23.639|0.0|0.0|0.0|0.0|0||0||0||0||385.359985|9.5717001|9.343|2.655|0.068|143.240005|5.28270006|21.713|3.391|0.267|99.2779999|44.9199982|1095.695|25.203|2.071|5.41470003|12.0430002|298.923|9.583|2.1|14.012|0.014|0|0.261|14.161|0.053|0|0.319|11.883||32|0.825|8.347||32|0.576|14.646|0.014|0|14.882|0.055|0|13.137||32|9.363||32|14.273|0.014|0|14.48|0.053|0|12.708||32|8.923||32|14.135|0.015|0|14.359|0.061|0|12.407||32|8.579||32|14.076|0.017|0|14.34|0.074|0|12.225||32|8.284||32|14.046|0.019|0|14.341|0.089|0|13.055||32|8.023||32|14.03|0.022|1|14.341|0.105|1|12.01||32|7.787||32|14.014|0.025|1|14.333|0.121|1|11.844||32|7.571||32|13.979|0.028|1|14.31|0.136|1|11.691||32|7.371||32|14.043|0.068|0.014|0.403|21|0|55275.28732341|55277.20605032|55276.13846709|14.127|0.181|0.039|0.703000009|21|0|55275.28732341|55277.20605032|55276.13846709|12.845|1.502|0.328|2.56500006|12|0|55275.28732341|55277.20605032|55276.11598369|10.168|3.449|0.753|3.90300012|11|0|55275.28732341|55277.20605032|55276.11598369|14|9|-23|0|0|0||||||||||||||||||||||||||1137711571|0.081|-94.2|1|14.552|0.023|14.23|0.043|14.127|0.066|3004089401241004068|1|0.000374418432114|-0.0019350138081832|-0.999998057764314|131000000|
+J043019.46-895313.2|67.5810947|-89.8870074|0.361|0.3918|0.0673|302.8282114|-27.1933772|270.108791|-66.665124|2009.446|645.336|600089401241004374|0600m894_ab41-004374|0600m894_ab41|4374|16.384|0.068|15.9|0.971700013|16.666|0.267|4.1|0.911300004|11.636|0.126|8.6|1.17400002|9.271|0.389|2.8|0.931299984|0.994000018|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|0n1n|ABBC|15|0000|14|22|2|23|4|22|0|22|23.687|23.558|22.864|22.714|0.0|0.0|0.0|0.0|8|h|8|h|0||0||44.2799988|2.77780008|9.388|2.685|0.0|13.6059999|3.34780002|21.8|3.39|0.056|351.230011|40.6730003|1097.325|21.587|0.0|31.0179996|11.1099997|298.856|9.011|0.422|15.489|0.073|1|0.261|15.262|0.14|1|0.319|12.15||32|0.825|8.519||32|0.576|16.419|0.096|1|16.324|0.199|1|13.43||32|9.58||32|15.75|0.073|1|15.581|0.14|1|12.975||32|9.095||32|15.253|0.061|1|15.052|0.112|1|12.697||32|8.795||32|14.844|0.053|1|14.617|0.094|1|12.478||32|8.539||32|14.505|0.048|1|14.251|0.082|1|12.257||32|8.279||32|14.221|0.045|1|13.947|0.073|1|12.01||32|8.012||32|13.982|0.043|1|13.691|0.068|1|11.748||32|7.774||32|13.765|0.042|1|13.466|0.064|1|12.254|0.538|1|7.525||32|16.394|0.23|0.049|0.855|21|0|55275.28745078|55277.20605032|55276.21969707|16.557|1.336|0.279|3.18799996|16|0|55275.28745078|55277.33835439|55276.26833435|11.586|0.724|0.154|1.523|18|0|55275.28745078|55277.33835439|55276.25277598|9.284|1.956|0.417|2.68700004|14|0|55275.28745078|55277.33835439|55276.25277598|-12|-35|0|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241004374|1|0.0007521075564712|0.00182304212368|-0.999998055423929|101000000|
+J221957.26-895313.1|334.9886045|-89.8869883|0.5489|0.499|-0.1396|303.00993|-27.2173458|270.2569698|-66.512717|2173.095|620.159|89401241005065|0000m894_ab41-005065|0000m894_ab41|5065|16.698|0.09|12.1|0.936800003|16.831|0.294|3.7|1.02600002|13.241|0.53|2.1|0.953000009|8.964||1.6|1.08299994|0.995800018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABCU|7|0000|8|25|0|25|0|24|0|24|24.48|24.63|23.948|23.66|0.0|0.0|0.0|0.0|0||0||0||0||33.1879997|2.73650002|9.245|2.819|0.17|11.6809998|3.15790009|21.726|3.277|0.188|80.0970001|39.0690002|1098.793|24.019|0.208|18.5499992|11.3070002|298.699|9.687|0.685|16.565|0.192|0|0.261|16.444|0.43|0|0.319|12.327||32|0.825|8.399||32|0.576|17.139|0.185|0|17.166|0.448|0|13.514||32|9.36||32|16.826|0.192|0|16.763|0.43|0|13.152||32|8.975||32|16.778|0.237|0|16.694|0.522|0|12.872||32|8.719||32|16.798|0.299|1|15.84||32|12.641||32|8.426||32|16.735|0.34|1|15.697||32|12.439||32|8.164||32|16.531|0.334|1|15.532||32|12.256||32|7.929||32|16.19|0.283|1|15.314||32|12.093||32|7.713||32|15.712|0.21|1|15.755|0.52|1|11.941||32|7.513||32|16.617|0.295|0.059|3.037|23|0|55275.28745078|55277.33835439|55276.36980225|16.723|1.173|0.235|3.26699996|17|0|55275.28745078|55277.33835439|55276.36980225|13.054|2.516|0.514|3.58699989|15|0|55275.28745078|55277.33835439|55276.35976824|9.988|3.53|0.721|2.83500004|12|0|55275.28745078|55277.33835439|55276.35976824|36|-55|19|1|1|0|||||||||||||||||||||||||||||0|||||||89401241005065|1|0.0017874585011406|-0.0008339384344029|-0.999998054767505|131000000|
+J050201.96-895312.7|75.5081883|-89.8868889|0.1957|0.2081|-0.0173|302.818979|-27.1800795|270.0714734|-66.670205|1969.281|637.515|600089401241004172|0600m894_ab41-004172|0600m894_ab41|4172|15.24|0.039|28.0|0.931200027|15.441|0.103|10.5|0.844799995|11.98|0.189|5.7|1.16999996|8.975||1.4|1.08000004|0.99970001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|110n|AABU|7|0000|21|21|6|21|4|20|0|20|22.01|21.783|21.008|21.616|0.0|0.0|0.0|0.0|0||0||0||0||127.019997|4.53529978|9.387|2.788|0.059|42.0419998|3.98600006|21.767|3.497|0.082|255.830002|44.5390015|1098.649|22.689|0.95|17.1110001|11.816|298.531|9.371|0.906|15.29|0.099|1|0.261|15.253|0.19|1|0.319|12.626||32|0.825|8.962||32|0.576|15.887|0.096|1|16.028|0.208|1|13.818||32|9.971||32|15.551|0.099|1|15.572|0.19|1|13.451||32|9.538||32|15.433|0.115|1|15.336|0.199|1|13.169||32|9.195||32|15.375|0.135|1|15.173|0.211|1|12.939||32|8.903||32|15.337|0.157|1|15.062|0.23|1|12.737||32|8.646||32|15.286|0.176|1|14.944|0.243|1|12.56||32|8.412||32|15.196|0.189|1|14.775|0.242|1|12.396||32|8.198||32|15.074|0.194|1|14.583|0.233|1|12.247||32|8.001||32|15.242|0.108|0.024|0.424|20|0|55275.28745078|55277.20605032|55276.23258879|15.417|0.515|0.112|1.97399998|19|0|55275.28745078|55277.20605032|55276.23258879|11.935|1.001|0.224|2.66199994|14|1|55275.28745078|55277.20605032|55276.2136873|9.819|2.894|0.647|3.30200005|11|0|55275.28745078|55277.20605032|55276.2136873|-45|3|-35|1|0|0||||||||||||||||||||||||||727851969|0.117|128.4|1|15.974|0.104|15.304|0.119|15.052|0.164|600089401241004172|1|0.0004940171589605|0.0019113494330925|-0.999998051343297|101000000|
+J154959.23-895312.1|237.4968058|-89.8867056|0.851|0.9135|0.245|303.0212938|-27.0475114|269.8475402|-66.4650865|2062.854|648.271|2403089401241005670|2403m894_ab41-005670|2403m894_ab41|5670|17.567|0.179|6.1|0.984099984|16.283|0.191|5.7|0.912199974|12.998||-0.9|1.03400004|9.456||-0.8|0.941299975|0.964699984|1|0|0.0|0.0|0.0|0.001|0000|h000|0|nnnn|BBUU|3|0000|3|22|1|22|0|21|0|21|22.656|22.767|21.872|21.689|0.0|0.0|0.0|0.0|8|h|0||0||0||14.9040003|2.45880008|9.397|2.459|0.0|19.3500004|3.41170001|21.795|3.289|0.0|-44.4459991|50.0830002|1094.386|25.095|5.262|-10.9510002|13.0769997|298.557|9.867|2.071|17.064||32|0.261|15.91|0.313|0|0.319|12.438||32|0.825|8.409||32|0.576|17.561||32|16.842|0.395|0|13.62||32|9.653||32|17.325||32|16.229|0.313|0|13.263||32|8.985||32|17.205||32|15.869|0.292|1|12.979||32|8.512||32|16.879||32|15.533|0.266|1|12.746||32|8.871|0.509|1|16.301||32|15.132|0.221|1|12.545||32|8.496|0.452|1|16.404|0.418|1|14.748|0.183|1|12.366||32|8.202|0.424|1|15.946|0.319|1|14.442|0.161|1|12.202||32|8.057|0.447|1|15.666|0.284|1|14.178|0.146|1|12.049||32|7.987|0.5|1|17.775|1.304|0.278|4.041|19|1|55275.02271543|55276.94144233|55275.97607081|16.254|0.933|0.199|3.6789999|18|0|55275.02271543|55276.94144233|55275.97607081|14.792|||2.79200006|7|0|55275.02271543|55276.94144233|55275.94585425||||2.79099989|7|0|55275.02271543|55276.94144233|55275.94585425|-9|68|97|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241005670|1|-0.0010625267337287|-0.0016676277211882|-0.999998045025451|121000000|
+J054000.69-895311.7|85.0029105|-89.886599|0.8181|0.8932|0.1024|302.8105981|-27.162877|270.024946|-66.6736768|2171.748|82.172|2403089401241005511|2403m894_ab41-005511|2403m894_ab41|5511|18.611||-3.6|0.835600019|17.299||-5.0|0.998700023|11.753|0.152|7.2|0.986199975|9.204|0.423|2.6|1.04799998|0.953999996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBC|12|0000|0|20|0|20|1|19|0|19|20.552|20.686|20.519|20.542|0.0|0.0|0.0|0.0|0||0||0||0||-10.2110004|2.84890008|9.382|2.912|0.596|-18.8500004|3.796|21.771|3.552|0.291|315.329987|44.0270004|1097.855|22.347|1.965|32.987999|12.8549995|298.865|9.483|0.978|17.19||32|0.261|16.531||32|0.319|11.837||32|0.825|8.33||32|0.576|17.818||32|17.214||32|13.168||32|9.383||32|17.451||32|16.85||32|12.662||32|8.906||32|17.168||32|16.571||32|12.973|0.517|1|8.59||32|16.784||32|16.338||32|12.57|0.443|1|8.393||32|16.297||32|16.137||32|12.282|0.409|1|8.267||32|15.914||32|15.959||32|12.035|0.385|1|8.247||32|16.225|0.467|1|15.798||32|11.764|0.348|1|8.222||32|15.633|0.312|1|15.646||32|11.457|0.302|1|8.031||32||||2.05|4|0|55275.28745078|55277.20605032|55276.20045053||||0.514999986|1|0|55275.28745078|55277.20605032|55276.20045053|11.75|0.754|0.173|5.8119998|17|1|55275.28745078|55277.20605032|55276.17886275|9.08|1.389|0.319|3.47099996|14|0|55275.28745078|55277.20605032|55276.17886275||85|12||0|0|||||||||||||||||||||||||||||0|||||||2403089401241005511|1|0.0001724001228905|0.0019716960026453|-0.999998041344617|101000000|
+J023606.97-895311.5|39.0290446|-89.8865421|0.189|0.1961|0.0448|302.8756413|-27.2299728|270.2222125|-66.6319981|2154.763|629.231|600089401241004191|0600m894_ab41-004191|0600m894_ab41|4191|15.275|0.038|28.5|2.88499999|15.287|0.081|13.4|1.13999999|11.737|0.139|7.8|1.11899996|9.631||-0.1|1.06200004|1.55999994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABU|7|0000|24|24|11|24|3|23|0|23|23.65|23.616|22.967|22.814|0.0|0.0|0.0|0.0|0||0||0||0||122.989998|4.32149982|9.272|2.774|0.0|48.4220009|3.60400009|21.753|3.309|0.0|320.0|40.8779984|1099.682|22.403|0.106|-0.911220014|11.1339998|298.871|9.246|0.663|14.804|0.051|1|0.261|14.98|0.092|1|0.319|11.601||32|0.825|8.741||32|0.576|15.595|0.06|1|15.804|0.104|1|12.976||32|9.756||32|15.065|0.051|1|15.299|0.092|1|12.426||32|9.317||32|14.835|0.053|1|15.135|0.102|1|12.009||32|8.973||32|14.719|0.059|1|15.146|0.127|1|12.41|0.51|1|8.679||32|14.633|0.066|1|15.218|0.164|1|12.092|0.46|1|8.418||32|14.538|0.071|1|15.218|0.194|1|11.847|0.433|1|8.183||32|14.344|0.069|1|14.958|0.177|1|11.691|0.436|1|7.968||32|13.988|0.058|1|14.47|0.13|1|11.592|0.458|1|7.769||32|15.275|0.126|0.026|0.495|23|0|55275.28745078|55277.33835439|55276.3515125|15.248|0.397|0.081|1.47599995|22|0|55275.28745078|55277.33835439|55276.3515125|11.79|0.903|0.188|4.24900007|17|0|55275.28745078|55277.33835439|55276.34024702||||3.24799991|11|0|55275.28745078|55277.33835439|55276.34024702|4|30|-8|0|1|0||||||||||||||||||||||||||1101447102|2.433|142.4|1|16.377|0.103|15.724|0.124|15.418||600089401241004191|1|0.0015382822909022|0.0012469681104981|-0.99999803937714|101000000|
+J071109.15-895310.6|107.7881329|-89.8862961|0.1629|0.1635|-0.0372|302.8046409|-27.1183301|269.9122916|-66.6689525|2111.914|642.777|1201089401241004257|1201m894_ab41-004257|1201m894_ab41|4257|14.837|0.034|32.4|0.994599998|14.978|0.068|16.0|1.03799999|12.372|0.256|4.2|1.21399999|9.518|0.508|2.1|1.02699995|1.06400001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABC|15|0000|21|21|14|21|3|20|0|20|22.63|21.911|22.054|21.795|0.0|0.0|0.0|0.0|0||0||0||0||184.130005|5.68849993|9.394|2.79|0.0|64.3720016|4.03399992|21.798|3.408|0.091|178.279999|42.0079994|1096.207|22.693|6.742|24.7019997|11.5579996|297.874|9.159|0.395|14.303|0.021|1|0.261|14.433|0.099|1|0.319|11.961||32|0.825|8.917||32|0.576|15.177|0.026|1|15.393|0.126|1|13.159||32|9.813||32|14.564|0.021|1|14.752|0.099|1|12.786||32|9.493||32|14.107|0.017|1|14.343|0.088|1|12.506||32|9.213||32|13.798|0.016|1|14.09|0.086|1|12.275||32|8.925||32|13.632|0.016|1|13.969|0.092|1|12.074||32|8.672||32|13.547|0.018|1|13.93|0.105|1|11.892||32|8.443||32|13.488|0.019|1|13.922|0.121|1|11.728||32|8.232||32|13.44|0.021|1|13.923|0.139|1|11.575||32|8.038||32|14.837|0.069|0.015|0.496|20|0|55275.02271543|55276.94144233|55276.04040565|15.03|0.31|0.068|1.329|20|1|55275.02271543|55276.94144233|55276.04040565|12.264|1.769|0.396|1.87399995|13|1|55275.02271543|55276.94144233|55276.011895|9.261|1.24|0.277|3.5940001|15|0|55275.02271543|55276.94144233|55276.011895|-16|20|-5|0|0|0||||||||||||||||||||||||||843731971|0.08|-24.3|1|15.374|0.068|15.02|0.098|14.96|0.185|1201089401241004257|1|-0.0006062625728112|0.0018896313971084|-0.999998030867499|111000000|
+J180201.45-895310.6|270.5060525|-89.8862901|0.3078|0.3359|-0.071|303.0566962|-27.103774|270.0025133|-66.4470034|2196.654|609.969|3004089401241005450|3004m894_ab41-005450|3004m894_ab41|5450|16.056|0.057|19.1|0.888300002|16.382|0.212|5.1|1.00699997|13.074||-1.1|1.005|9.526||-1.4|0.902700007|0.947700024|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|21|23|2|23|0|22|0|22|23.765|23.758|22.876|22.827|0.0|0.0|0.0|0.0|0||0||0||0||59.9370003|3.13140011|9.361|2.502|0.087|17.6679993|3.45129991|21.765|3.314|0.167|-53.1829987|46.7130013|1096.016|25.23|0.0|-17.4150009|12.2580004|299.34|9.71|0.874|15.956|0.119|0|0.261|16.375|0.485|0|0.319|12.052||32|0.825|8.638||32|0.576|16.618|0.123|0|16.95|0.437|0|13.247||32|9.644||32|16.217|0.119|0|16.694|0.485|0|12.877||32|9.214||32|16.031|0.131|0|15.929||32|12.592||32|8.869||32|15.897|0.143|0|15.902||32|12.359||32|8.575||32|15.773|0.153|1|15.853||32|12.162||32|8.315||32|15.656|0.162|1|15.779||32|11.98||32|8.081||32|15.506|0.164|1|15.655||32|11.816||32|7.865||32|15.289|0.155|1|15.435||32|11.664||32|7.666||32|16.091|0.175|0.036|1.059|22|0|55275.28732341|55277.20605032|55276.14173283|16.274|1.059|0.221|3.85500002|17|0|55275.28732341|55277.20605032|55276.14173283||||3.8440001|7|0|55275.28732341|55277.20605032|55276.12041984||||3.56100011|9|0|55275.28732341|55277.20605032|55276.12041984|21|-67|8|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241005450|1|0.000017528418921|-0.0019845340029648|-0.999998030656834|131000000|
+J031449.22-895310.5|48.7050938|-89.8862638|0.4906|0.5237|0.135|302.8570171|-27.2203308|270.1893457|-66.6460477|2106.796|643.945|600089401241004655|0600m894_ab41-004655|0600m894_ab41|4655|16.746|0.087|12.5|1.03299999|16.888|0.313|3.5|0.934199989|12.365|0.245|4.4|1.08000004|9.695||0.0|1.16700006|1.04799998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|5|25|1|25|2|23|1|24|24.589|24.709|23.915|23.791|0.0|0.0|0.0|0.0|0||0||0||0||31.7439995|2.54290009|9.283|2.679|0.0|11.0860004|3.19560003|21.783|3.363|0.0|179.529999|40.4720001|1098.926|21.806|0.65|0.237729996|10.3739996|298.281|8.732|0.0|16.828|0.287|0|0.261|15.748||32|0.319|12.411||32|0.825|8.965||32|0.576|17.293|0.249|0|16.342||32|13.591||32|9.979||32|17.089|0.287|0|16.067||32|13.236||32|9.541||32|17.189|0.404|0|16.026||32|12.96||32|9.195||32|16.553||32|15.934||32|12.728||32|8.899||32|16.429||32|15.73||32|12.523||32|8.637||32|16.209||32|15.548||32|12.341||32|8.4||32|16.525|0.448|1|15.385||32|12.177||32|8.183||32|15.872|0.283|1|15.232||32|12.024||32|7.983||32|16.789|0.391|0.078|1.654|24|0|55275.28745078|55277.33835439|55276.32218298|16.884|1.21|0.242|3.60299993|18|0|55275.28745078|55277.33835439|55276.32218298|12.264|1.295|0.27|5.1079998|18|0|55275.28745078|55277.33835439|55276.27983905|11.453|||4.59700012|13|0|55275.28745078|55277.33835439|55276.31016484|25|19|-29|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241004655|1|0.001310016835181|0.0014914282663361|-0.999998029746868|101000000|
+J104737.05-895310.0|161.9043782|-89.8861238|0.3151|0.2899|-0.0131|302.8661591|-27.0304842|269.7274919|-66.5958431|2141.973|634.961|1802089401241004276|1802m894_ab41-004276|1802m894_ab41|4276|15.911|0.055|19.8|1.26600003|15.735|0.12|9.0|0.951900005|12.798||0.3|1.07500005|8.852||1.4|0.965499997|1.06099999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|41nn|ABUU|3|0000|17|21|5|21|0|21|0|21|20.89|21.128|21.603|21.576|0.0|0.0|0.0|0.0|0||0||0||0||68.461998|3.45350003|9.62|2.833|0.0|32.0709991|3.55299997|21.799|3.425|0.0|13.4090004|53.4939995|1096.356|26.018|5.022|18.7859993|13.415|298.116|9.865|1.354|15.409|0.081|1|0.261|15.233|0.238|1|0.319|11.949||32|0.825|8.841|0.481|1|0.576|16.195|0.096|0|16.154|0.303|0|13.202||32|9.264||32|15.67|0.081|1|15.552|0.238|1|12.774||32|9.417|0.481|1|15.372|0.079|1|15.219|0.226|1|12.497||32|8.945|0.419|1|15.064|0.074|1|14.952|0.219|1|12.264||32|8.689|0.424|1|14.624|0.06|1|14.57|0.187|1|12.049||32|8.618|0.494|1|14.023|0.041|1|14.012|0.131|1|11.877||32|7.793||32|13.364|0.026|1|13.378|0.086|1|11.742||32|7.681||32|12.735|0.017|1|12.777|0.057|1|11.631||32|7.547||32|15.926|0.368|0.08|2.085|20|2|55274.89041135|55276.94144233|55275.90177109|15.737|0.632|0.138|2.92199993|19|0|55274.89041135|55276.94144233|55275.90177109|14.224|6.796|1.483|3.95700002|10|0|55274.89041135|55276.94144233|55275.90177109|9.829|2.785|0.608|4.81400013|15|0|55274.89041135|55276.94144233|55275.90177109|49|2|-50|2|0|1||||||||||||||||||||||||||748825930|1.879|-43.1|1|16.484|0.154|16.419||16.834||1802089401241004276|1|-0.0018892096695863|0.0006173291223495|-0.999998024893839|111000000|
+J133305.35-895309.7|203.272292|-89.8860391|0.3506|0.3411|0.0981|302.9550361|-27.0160705|269.7372933|-66.5154626|1931.438|626.67|1802089401241004410|1802m894_ab41-004410|1802m894_ab41|4410|16.219|0.062|17.6|1.03299999|15.977|0.139|7.8|0.977400005|12.905|0.433|2.5|0.908299983|9.524||-1.8|1.02600002|0.98360002|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|32nn|ABCU|7|0000|16|24|6|24|1|24|0|24|23.4|23.904|23.895|23.844|0.0|0.0|0.0|0.0|8|h|8|h|0||0||51.5849991|2.93720007|10.171|2.466|0.07|25.6490002|3.28040004|21.839|2.943|0.143|109.110001|43.5569992|1095.681|25.209|1.833|-22.4009991|12.2819996|298.473|9.869|0.177|16.296|0.475|0|0.261|15.514|0.16|0|0.319|12.095||32|0.825|8.885||32|0.576|16.881|0.461|0|16.459|0.205|0|13.288||32|9.899||32|16.557|0.475|0|15.833|0.16|0|12.92||32|9.461||32|16.401|0.535|1|15.342|0.132|1|12.643||32|9.117||32|16.025|0.47|1|14.841|0.104|1|12.382||32|8.823||32|15.253|0.279|1|14.252|0.074|1|12.139||32|8.563||32|14.29|0.136|1|13.58|0.047|1|11.905||32|8.327||32|13.384|0.069|1|12.923|0.031|1|11.689||32|8.111||32|12.67|0.041|1|12.378|0.022|1|11.517||32|7.912||32|16.231|0.431|0.088|2.084|23|2|55274.89041135|55276.94144233|55275.92420909|15.953|1.11|0.227|3.78500009|18|2|55274.89041135|55276.94144233|55275.92420909|12.634|2.022|0.413|5.16200018|14|0|55274.89041135|55276.94144233|55275.92420909||||2.26300001|7|0|55274.89041135|55276.94144233|55275.92420909|24|12|-5|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004410|1|-0.0018271617021744|-0.0007858528708991|-0.999998021955733|121000000|
+J120839.25-895309.5|182.1635729|-89.885988|0.1377|0.1333|0.0253|302.908164|-27.0161232|269.713633|-66.5561434|2038.17|650.351|1802089401241003940|1802m894_ab41-003940|1802m894_ab41|3940|14.4|0.029|37.1|0.86619997|14.479|0.052|20.9|0.907100022|12.888||-1.2|0.897499979|9.475||-0.5|0.960399985|0.905099988|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|AAUU|3|0000|22|22|17|22|0|22|0|22|23.593|23.596|23.062|23.801|0.0|0.0|0.0|0.0|8|h|0||0||0||275.549988|7.43120003|9.745|2.76|0.055|101.989998|4.87069988|21.832|3.383|0.09|-64.2890015|55.4589996|1095.062|26.278|1.657|-6.32060003|12.8570004|298.181|10.089|0.348|14.349|0.033|1|0.261|14.471|0.071|1|0.319|12.742||32|0.825|8.562||32|0.576|14.999|0.034|1|15.22|0.076|1|13.926||32|9.701||32|14.61|0.033|1|14.79|0.071|1|13.567||32|9.138||32|14.433|0.036|1|14.587|0.076|1|13.284||32|8.734||32|14.297|0.039|1|14.422|0.081|1|13.049||32|8.401||32|14.174|0.042|1|14.251|0.083|1|12.851||32|8.115||32|14.08|0.045|1|14.101|0.085|1|12.673||32|7.912||32|14.016|0.049|1|13.984|0.089|1|12.508||32|7.752||32|13.968|0.054|1|13.889|0.094|1|12.357||32|7.583||32|14.406|0.085|0.018|0.516|21|0|55274.89041135|55276.94144233|55275.90993036|14.471|0.239|0.051|0.921000004|21|0|55274.89041135|55276.94144233|55275.90993036||||4.61499977|7|0|55274.89041135|55276.94144233|55275.90993036||||2.55699992|10|0|55274.89041135|55276.94144233|55275.90993036|31|25|99|1|0|0||||||||||||||||||||||||||857672916|0.09|147.6|1|14.91|0.052|14.543|0.069|14.302|0.114|1802089401241003940|1|-0.0019884657758512|-0.0000751231005519|-0.999998020178229|121000000|
+J152257.21-895309.2|230.7383848|-89.8858905|0.7784|0.8229|0.227|303.0105758|-27.0380667|269.8190959|-66.4722534|1999.445|57.275|600089401241005335|0600m894_ab41-005335|0600m894_ab41|5335|17.172|0.131|8.3|0.905300021|16.646||2.0|0.828100026|12.955||-1.8|0.976599991|9.501||-0.5|1.07599998|0.941900015|1|0|0.0|0.0|0.0|0.0|0000|hD00|0|3nnn|BUUU|1|0000|5|21|0|21|0|20|0|20|22.222|22.627|22.764|22.476|0.0|0.0|0.0|0.0|8|h|129|D|0||0||21.4440002|2.57870007|9.351|2.389|0.037|6.8434|3.50489998|21.757|3.211|0.198|-93.5299988|52.1170006|1097.438|25.883|4.366|-6.48449993|12.5430002|298.445|9.733|1.03|16.918||32|0.261|16.166||32|0.319|12.343||32|0.825|8.838||32|0.576|17.352||32|16.921||32|13.533||32|9.851||32|17.179||32|16.485||32|13.168||32|9.414||32|16.99||32|16.191||32|12.881||32|9.067||32|16.756||32|16.023||32|12.647||32|8.774||32|16.554||32|15.984||32|12.444||32|8.513||32|16.373||32|16.003||32|12.262||32|8.277||32|16.207||32|15.837||32|12.096||32|8.06||32|16.057||32|15.687||32|11.946||32|7.861||32|17.204|0.988|0.216|2.678|16|1|55274.89041135|55276.94144233|55275.96791402|16.991|1.593|0.348|2.34899998|13|0|55274.89041135|55276.94144233|55275.96791402||||2.74499989|6|0|55274.89041135|55276.94144233|55275.93577879||||4.34200001|9|0|55274.89041135|55276.94144233|55275.93577879|-2|31|-41|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005335|1|-0.0012603988641852|-0.001542013038741|-0.999998016793279|121000000|
+J023457.47-895308.9|38.7394927|-89.8858163|0.1962|0.2019|0.0449|302.8758641|-27.2308775|270.2245473|-66.6320027|1937.797|74.152|2403089401241004205|2403m894_ab41-004205|2403m894_ab41|4205|15.321|0.039|28.1|3.07500005|15.367|0.086|12.6|1.11399996|11.751|0.138|7.9|1.148|9.328||0.7|1.08700001|1.60899997|1|0|0.0|0.0|0.0|0.0|0000|0000|1|000n|AABU|7|0000|24|24|9|24|4|23|2|23|23.66|23.609|22.917|22.81|0.0|0.0|0.0|0.0|0||0||0||0||117.889999|4.20060015|9.281|2.797|0.124|44.9869995|3.56349993|21.74|3.325|0.183|315.829987|40.0369987|1099.323|22.115|0.557|7.82840014|10.802|298.859|9.251|0.66|14.797|0.051|1|0.261|14.855|0.076|1|0.319|12.311|0.503|1|0.825|8.463||32|0.576|15.591|0.059|1|15.731|0.09|1|13.017||32|9.472||32|15.058|0.051|1|15.174|0.076|1|13.136|0.503|1|9.039||32|14.833|0.053|1|14.969|0.081|1|12.562|0.384|1|8.695||32|14.736|0.06|1|14.925|0.096|1|12.153|0.326|1|8.399||32|14.672|0.068|1|14.925|0.116|1|11.827|0.291|1|8.14||32|14.603|0.075|1|14.889|0.132|1|11.554|0.268|1|7.904||32|14.476|0.078|1|14.729|0.133|1|11.338|0.254|1|7.688||32|14.198|0.069|1|14.386|0.111|1|11.167|0.25|1|7.489||32|15.307|0.082|0.017|0.498|23|0|55275.28745078|55277.33835439|55276.3515125|15.334|0.523|0.107|3.70300007|23|2|55275.28745078|55277.33835439|55276.3515125|11.857|0.906|0.189|6.77400017|20|1|55275.28745078|55277.33835439|55276.34024702||||4.33900023|11|1|55275.28745078|55277.33835439|55276.34024702|-13|18|-1|0|0|0||||||||||||||||||||||||||1181051094|2.447|-44.4|1|16.079|0.108|15.496|0.121|15.41||2403089401241004205|1|0.0015544450567661|0.0012471054366148|-0.999998014212326|101000000|
+J005519.23-895307.8|13.8301567|-89.8855166|0.6868|0.6604|0.1682|302.9297347|-27.2426233|270.2797702|-66.5878265|1976.344|643.067|89401241005086|0000m894_ab41-005086|0000m894_ab41|5086|17.021|0.118|9.2|0.869599998|17.393|0.536|2.0|0.979200006|12.357|0.259|4.2|1.04499996|9.099||1.0|1.02600002|0.967599988|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BCBU|7|0000|5|21|0|21|1|20|0|20|21.058|21.617|20.679|20.354|0.0|0.0|0.0|0.0|0||0||0||0||24.6350002|2.68610001|9.27|2.712|0.048|6.96570015|3.4375999|21.749|3.419|0.178|180.770004|43.105999|1098.176|22.915|0.973|12.1529999|12.0970001|298.167|9.412|1.418|16.64|0.265|1|0.261|15.849||32|0.319|12.5||32|0.825|8.81||32|0.576|17.361|0.288|1|16.539||32|13.647||32|9.814||32|16.901|0.265|1|16.168||32|13.325||32|9.386||32|16.508|0.24|1|15.837||32|13.073||32|9.068||32|16.04|0.194|1|15.418||32|12.78||32|8.823||32|15.572|0.152|1|15.628|0.432|1|12.455||32|8.611||32|15.223|0.13|1|15.206|0.346|1|12.155||32|8.485||32|15.011|0.124|1|14.984|0.328|1|11.919||32|8.287||32|14.867|0.126|1|14.862|0.338|1|11.726||32|8.105||32|17.015|0.58|0.127|1.913|19|0|55275.55205887|55277.33835439|55276.39639986|17.454|2.792|0.609|2.15400004|12|0|55275.55205887|55277.33835439|55276.39639986|12.528|1.009|0.226|4.13600016|15|1|55275.55205887|55277.33835439|55276.38568892|10.29|4.059|0.908|2.41700006|9|0|55275.55205887|55277.33835439|55276.38568892|60|42|-23|1|1|0|||||||||||||||||||||||||||||0|||||||89401241005086|1|0.0019401825510093|0.0004776374744044|-0.999998003775063|101000000|
+J134722.31-895307.7|206.8429927|-89.8854846|0.0838|0.0856|-0.0108|302.9629776|-27.0170312|269.7436673|-66.5087901|1913.909|620.176|1802089401241003805|1802m894_ab41-003805|1802m894_ab41|3805|12.341|0.023|46.4|0.953299999|12.399|0.024|45.1|1.00300002|12.637|0.35|3.1|1.03100002|9.507||-0.8|0.966600001|0.985700011|1|0|0.0|0.0|0.0|0.0|0000|h000|0|00nn|AABU|7|0000|24|24|24|24|1|24|0|24|23.915|24.003|23.953|23.797|0.0|0.0|0.0|0.0|8|h|0||0||0||1834.19995|39.4959984|10.043|2.387|0.114|692.640015|15.3660002|21.887|2.979|0.063|139.649994|45.0229988|1096.346|25.302|2.38|-9.8046999|12.4770002|298.293|9.941|1.066|12.348|0.008|1|0.261|12.416|0.014|1|0.319|11.709||32|0.825|8.901||32|0.576|12.984|0.009|0|13.183|0.016|0|12.953||32|9.91||32|12.609|0.008|1|12.735|0.014|1|12.534||32|9.477||32|12.457|0.009|1|12.54|0.015|1|12.264||32|9.132||32|12.346|0.009|1|12.404|0.016|1|12.076||32|8.838||32|12.219|0.01|1|12.26|0.017|1|11.923||32|8.577||32|12.102|0.01|1|12.126|0.018|1|11.77||32|8.341||32|12.026|0.011|1|12.036|0.019|1|11.596||32|8.125||32|11.983|0.012|1|11.983|0.02|1|11.412||32|7.926||32|12.341|0.028|0.006|0.107|23|0|55274.89041135|55276.94144233|55275.92420909|12.391|0.042|0.009|0.300000012|23|0|55274.89041135|55276.94144233|55275.92420909|12.221|1.266|0.259|2.23600006|14|0|55274.89041135|55276.94144233|55275.92420909||||2.7809999|7|0|55274.89041135|55276.94144233|55275.92420909|-9|-7|12|0|0|0||||||||||||||||||||||||||858015836|0.076|-105.0|1|13.071|0.024|12.595|0.027|12.425|0.029|1802089401241003805|1|-0.0017833078743877|-0.0009024938341734|-0.999998002656957|121000000|
+J034223.47-895307.2|55.5977948|-89.8853523|0.238|0.2564|0.0543|302.8444269|-27.2123335|270.1634667|-66.655219|2071.525|651.269|600089401241004206|0600m894_ab41-004206|0600m894_ab41|4206|15.745|0.046|23.4|1.01900005|15.537|0.1|10.9|0.987999976|12.049|0.185|5.9|1.17200005|9.289|0.388|2.8|1.01800001|1.046|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|AABC|15|0000|23|24|6|24|3|23|0|23|23.885|24.059|22.887|23.319|0.0|0.0|0.0|0.0|137|Dh|137|Dh|0||0||79.8339996|3.4072001|9.311|2.595|0.095|38.4620018|3.54360008|21.785|3.265|0.22|240.059998|40.8730011|1099.351|22.349|4.026|30.5049992|10.8970003|298.453|8.966|0.871|14.806|0.043|0|0.261|14.603|0.098|0|0.319|12.02||32|0.825|9.015||32|0.576|15.74|0.057|0|15.63|0.135|0|13.312||32|10.018||32|15.067|0.043|0|14.922|0.098|0|12.845||32|9.591||32|14.563|0.035|0|14.416|0.08|0|12.482||32|9.252||32|14.116|0.029|1|13.982|0.066|1|12.182||32|8.968||32|13.68|0.024|1|13.562|0.054|1|11.889||32|8.717||32|13.218|0.019|1|13.122|0.043|1|11.59||32|9.793||32|12.701|0.014|1|12.639|0.032|1|11.879|0.44|1|8.117||32|12.099|0.01|1|12.078|0.023|1|11.291|0.294|1|7.928||32|15.719|0.143|0.029|1.248|23|0|55275.28745078|55277.33835439|55276.29362153|15.532|0.582|0.119|2.6329999|23|1|55275.28745078|55277.33835439|55276.29362153|11.955|1.151|0.24|2.23399997|16|1|55275.28745078|55277.33835439|55276.27983905|9.238|1.963|0.409|3.852|15|0|55275.28745078|55277.33835439|55276.27983905|-15|-39|-6|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241004206|1|0.0011305504233702|0.0016509909329221|-0.999997998040336|101000000|
+J000829.36-895306.7|2.1223546|-89.885218|0.2982|0.2778|0.0709|302.9559679|-27.2409268|270.288408|-66.5646948|2036.865|652.332|89401241004647|0000m894_ab41-004647|0000m894_ab41|4647|15.987|0.055|19.7|0.7773|15.501|0.103|10.5|0.885699987|11.643|0.137|7.9|1.00100005|9.501||-0.4|0.992799997|0.908599973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|19|21|5|21|3|20|0|20|21.859|22.075|20.978|21.629|0.0|0.0|0.0|0.0|0||0||0||0||63.8660011|3.2434001|9.293|2.75|0.172|39.7630005|3.77810001|21.687|3.458|0.135|348.869995|44.0040016|1098.98|23.834|0.68|-5.29260015|12.5480003|298.507|9.572|0.4|15.696|0.098|1|0.261|15.129|0.11|1|0.319|12.121|0.305|1|0.825|8.757||32|0.576|16.421|0.109|1|16.019|0.136|1|13.49|0.364|0|9.768||32|15.957|0.098|1|15.448|0.11|1|12.946|0.305|1|9.333||32|15.7|0.101|1|15.098|0.102|1|12.658|0.304|1|8.989||32|15.473|0.101|1|14.822|0.098|1|12.393|0.295|1|8.694||32|15.192|0.094|1|14.57|0.094|1|12.141|0.281|1|8.434||32|14.82|0.079|1|14.29|0.085|1|11.93|0.272|1|8.199||32|14.324|0.058|1|13.913|0.07|1|11.715|0.26|1|7.984||32|13.654|0.037|1|13.399|0.051|1|11.521|0.249|1|7.785||32|15.975|0.205|0.045|0.977|20|0|55275.55205887|55277.33835439|55276.39639986|15.531|0.581|0.127|2.12299991|19|1|55275.55205887|55277.33835439|55276.39639986|11.604|0.614|0.137|4.68599987|19|0|55275.55205887|55277.33835439|55276.38568892|11.405|||1.94400001|5|0|55275.55205887|55277.33835439|55276.38568892|-8|-15|-66|0|0|1|||||||||||||||||||||||||||||0|||||||89401241004647|1|0.0020019490322496|0.0000741902847377|-0.999997993345924|101000000|
+J121626.19-895306.5|184.1091425|-89.8851431|0.2538|0.2332|0.0583|302.912303|-27.014635|269.7120928|-66.5522146|2027.9|652.052|1802089401241004221|1802m894_ab41-004221|1802m894_ab41|4221|15.659|0.046|23.8|0.926900029|15.497|0.099|10.9|1.00899994|12.891||0.2|1.03199995|9.513||-1.1|0.842800021|0.949500024|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|AAUU|3|0000|21|23|6|23|0|23|0|23|23.867|23.675|23.503|24.206|0.0|0.0|0.0|0.0|8|h|0||0||0||86.4160004|3.63039994|9.768|2.746|0.0|39.9379997|3.65229988|21.828|3.327|0.0|11.0539999|49.7319984|1094.581|25.834|1.465|-13.9610004|12.4090004|298.06|9.874|1.078|15.702|0.206|1|0.261|15.315|0.232|1|0.319|12.493||32|0.825|9.005||32|0.576|16.332|0.209|1|16.152|0.27|1|13.658||32|12.665||32|15.963|0.206|1|15.634|0.232|1|13.318||32|9.581||32|15.604|0.191|1|15.272|0.214|1|14.485||32|9.233||32|15.112|0.15|1|14.894|0.186|1|12.911||32|8.94||32|14.714|0.125|1|14.572|0.167|1|12.706||32|8.678||32|14.523|0.124|1|14.393|0.167|1|12.527||32|8.441||32|14.489|0.14|1|14.347|0.186|1|12.361||32|8.225||32|14.534|0.167|1|14.379|0.22|1|12.212||32|8.026||32|15.656|0.19|0.04|0.829|22|0|55274.89041135|55276.94144233|55275.89724414|15.48|0.553|0.115|2.21199989|21|1|55274.89041135|55276.94144233|55275.89724414|13.239|3.872|0.807|6.34399986|11|0|55274.89041135|55276.94144233|55275.89724414||||1.278|6|0|55274.89041135|55276.94144233|55275.89724414|27|-22|42|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004221|1|-0.0019994771827058|-0.0001436449987683|-0.999997990726537|121000000|
+J112800.69-895305.4|172.002915|-89.8848413|0.4088|0.3743|0.0644|302.8858924|-27.020536|269.7131267|-66.5764681|2091.387|650.377|1802089401241004517|1802m894_ab41-004517|1802m894_ab41|4517|16.289|0.067|16.2|0.932500005|16.558|0.263|4.1|0.861299992|12.976||-1.2|1.07200003|9.417||-2.2|1.10300004|0.988799989|1|0|0.0|0.0|0.0|0.001|0000|0000|0|0nnn|ABUU|3|0000|12|21|1|21|0|21|0|21|21.763|21.731|21.767|21.345|0.0|0.0|0.0|0.0|0||0||0||0||48.3650017|2.97869992|9.516|2.683|0.217|15.0299997|3.64170003|21.818|3.468|0.699|-62.6030006|51.1310005|1095.388|26.133|3.665|-29.4099998|13.5570002|298.44|10.183|0.878|16.696|0.357|0|0.261|15.875||32|0.319|12.379||32|0.825|8.909||32|0.576|17.083|0.288|0|16.437||32|13.702||32|9.922||32|16.957|0.357|0|16.194||32|13.204||32|9.485||32|16.448||32|16.126||32|12.888||32|9.14||32|16.585||32|16.071||32|12.722||32|8.849||32|16.692||32|15.992||32|12.573||32|8.59||32|16.509||32|15.811||32|12.374||32|8.355||32|16.344||32|15.647||32|12.185||32|8.141||32|16.191||32|15.494||32|12.032||32|7.943||32|16.299|0.295|0.064|3.078|20|2|55274.89041135|55276.94144233|55275.90177109|16.601|1.627|0.355|4.1500001|16|0|55274.89041135|55276.94144233|55275.90177109|14.576|7.986|1.743|3.63199997|8|0|55274.89041135|55276.94144233|55275.90177109||||2.52099991|4|0|55274.89041135|55276.94144233|55275.90177109|-9|77|90|0|2|0|||||||||||||||||||||||||||||0|||||||1802089401241004517|1|-0.0019903517682095|0.0002796224384351|-0.999997980153525|111000000|
+J161322.56-895304.6|243.3440171|-89.8846138|0.1972|0.2105|0.0345|303.0318686|-27.0547023|269.8703998|-66.4575326|2032.312|653.713|2403089401241004853|2403m894_ab41-004853|2403m894_ab41|4853|15.373|0.04|27.4|1.01800001|15.238|0.081|13.4|0.998099983|12.963||-1.0|1.06700003|9.534||-0.6|1.08800006|1.03900003|1|0|0.0|0.0|0.0|0.0|0000|h000|0|01nn|AAUU|3|0000|22|22|10|22|0|21|0|21|21.724|21.578|20.967|21.571|0.0|0.0|0.0|0.0|8|h|0||0||0||112.379997|4.09560013|9.437|2.4|0.748|50.6980019|3.78480005|21.763|3.204|0.139|-53.8170013|51.7509995|1096.727|25.917|5.188|-7.14020014|12.177|298.621|9.608|0.57|15.336|0.097|0|0.261|15.693|0.464|0|0.319|12.472||32|0.825|8.592||32|0.576|15.979|0.099|0|16.31|0.434|0|13.669||32|9.681||32|15.597|0.097|0|16.012|0.464|0|13.297||32|9.168||32|15.414|0.106|0|15.256||32|13.018||32|8.753||32|15.252|0.113|0|15.292||32|12.786||32|8.401||32|15.06|0.115|1|15.347||32|12.581||32|8.129||32|14.817|0.108|1|15.285||32|12.402||32|7.924||32|14.528|0.096|1|15.121||32|12.239||32|7.786||32|14.188|0.081|1|14.899||32|12.088||32|7.983||32|15.351|0.111|0.024|0.844|21|0|55275.02271543|55276.94144233|55275.97607081|15.224|0.476|0.101|2.73399997|21|1|55275.02271543|55276.94144233|55275.97607081|13.149|2.681|0.585|4.53999996|8|0|55275.02271543|55276.94144233|55275.94585425||||2.78699994|10|0|55275.02271543|55276.94144233|55275.94585425|21|46|-18|0|1|0||||||||||||||||||||||||||912485818|0.046|47.2|1|15.758|0.087|15.394|0.13|15.405|0.246|2403089401241004853|1|-0.0009034868579334|-0.0017998269644791|-0.999997972165142|121000000|
+J193335.14-895304.6|293.3964275|-89.8846117|0.1489|0.1494|-0.035|303.0594052|-27.1491998|270.1147001|-66.4547658|2085.156|651.835|3004089401241004195|3004m894_ab41-004195|3004m894_ab41|4195|14.821|0.031|34.6|0.973100007|14.803|0.06|18.0|0.948199987|12.702||1.0|1.04499996|8.89||1.6|1.02100003|0.993300021|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|24|24|17|24|0|23|1|23|24.439|24.135|23.545|24.144|0.0|0.0|0.0|0.0|0||0||0||0||186.929993|5.39779997|9.322|2.77|0.123|75.6729965|4.19280005|21.733|3.436|0.064|44.6819992|43.4729996|1095.745|24.821|1.195|19.4130001|12.3199997|299.247|9.913|1.164|14.734|0.036|1|0.261|14.874|0.102|1|0.319|12.464||32|0.825|8.275||32|0.576|15.391|0.037|1|15.579|0.104|1|13.696||32|9.385||32|14.995|0.036|1|15.193|0.102|1|13.289||32|8.851||32|14.791|0.038|1|15.062|0.116|1|13.047||32|8.508||32|14.618|0.04|1|14.951|0.13|1|12.834||32|8.244||32|14.458|0.042|1|14.811|0.138|1|12.527||32|8.05||32|14.32|0.043|1|14.672|0.144|1|12.151||32|7.887||32|14.174|0.044|1|14.532|0.147|1|12.509|0.472|1|7.703||32|13.995|0.043|1|14.37|0.145|1|12.175|0.395|1|7.518||32|14.826|0.072|0.015|0.462|23|0|55275.28732341|55277.33835439|55276.21916071|14.756|0.285|0.058|1.29100001|23|0|55275.28732341|55277.33835439|55276.21916071|13.439|3.883|0.81|4.74399996|14|0|55275.28732341|55277.33835439|55276.2021408|10.713|6.103|1.273|3.75300002|12|0|55275.28732341|55277.33835439|55276.2021408|0|-48|-7|0|1|0||||||||||||||||||||||||||1149178787|0.295|24.2|1|15.682|0.066|15.117|0.091|14.997|0.148|3004089401241004195|1|0.0007997024482132|-0.0018483195068128|-0.999997972093441|131000000|
+J025011.74-895304.3|42.5489556|-89.8845378|0.0995|0.1044|-0.0064|302.867601|-27.2284464|270.2145144|-66.6386406|2139.125|640.265|600089401241003960|0600m894_ab41-003960|0600m894_ab41|3960|13.546|0.025|43.2|1.50800002|13.685|0.033|32.6|0.998199999|12.16|0.204|5.3|0.93720001|9.398|0.441|2.5|1.03999996|1.12199998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABC|15|0000|24|24|24|24|1|23|2|23|23.761|24.072|23.126|22.847|0.0|0.0|0.0|0.0|0||0||0||0||604.73999|13.9829998|9.291|2.771|0.0|211.740005|6.50180006|21.725|3.355|0.234|216.820007|40.723999|1099.584|22.207|0.0|27.6000004|11.2089996|298.905|9.316|0.871|13.461|0.016|0|0.261|13.636|0.043|0|0.319|12.336||32|0.825|8.485||32|0.576|14.131|0.018|0|14.413|0.047|0|13.519||32|9.551||32|13.722|0.016|0|13.955|0.043|0|13.161||32|9.061||32|13.556|0.018|1|13.77|0.046|1|12.879||32|8.658||32|13.467|0.02|1|13.678|0.052|1|12.645||32|8.345||32|13.378|0.022|1|13.582|0.058|1|12.444||32|8.109||32|13.212|0.022|1|13.383|0.057|1|12.266||32|7.859||32|12.888|0.019|1|13.022|0.047|1|12.102||32|7.629||32|12.441|0.015|1|12.579|0.036|1|11.949||32|7.444||32|13.546|0.048|0.01|0.215|23|0|55275.28745078|55277.33835439|55276.3515125|13.682|0.078|0.016|0.331999987|23|0|55275.28745078|55277.33835439|55276.3515125|12.057|0.856|0.179|4.37300014|20|0|55275.28745078|55277.33835439|55276.34024702|9.212|2.075|0.433|5.19399977|14|0|55275.28745078|55277.33835439|55276.34024702|-18|-41|-8|0|1|0||||||||||||||||||||||||||1181077430|0.029|140.5|1|14.448|0.035|13.92||13.77|0.057|600089401241003960|1|0.0014845935631139|0.0013627147887965|-0.999997969493117|101000000|
+J164826.94-895303.9|252.1122726|-89.8844184|0.5936|0.6663|0.0706|303.0434703|-27.0690211|269.9111444|-66.4506892|1986.401|648.298|2403089401241005682|2403m894_ab41-005682|2403m894_ab41|5682|16.902|0.107|10.2|0.891499996|16.54|0.244|4.4|1.19299996|12.801||0.5|1.05200005|8.969||0.9|1.00300002|1.03199995|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|1nnn|ABUU|3|0000|6|21|0|21|1|20|0|20|23.927|23.932|23.001|23.378|0.0|0.0|0.0|0.0|8|h|8|h|0||0||27.4850006|2.70670009|9.5|2.521|0.0|15.2749996|3.43460011|21.802|3.165|0.0|23.8110008|48.1629982|1095.229|25.207|3.472|12.8809996|14.0419998|298.647|9.894|0.901|16.324|0.336|1|0.261|15.785|0.258|1|0.319|12.15||32|0.825|8.253||32|0.576|17.137|0.402|1|16.799|0.351|1|13.335||32|9.403||32|16.585|0.336|1|16.104|0.258|1|12.975||32|8.829||32|16.259|0.323|1|15.631|0.217|1|12.692||32|8.408||32|15.985|0.31|17|15.258|0.19|1|12.461||32|8.807|0.522|1|15.695|0.287|17|14.945|0.173|1|12.256||32|8.512|0.506|1|15.389|0.255|17|14.672|0.159|1|12.075||32|8.312|0.524|1|15.078|0.223|17|14.428|0.148|1|11.911||32|7.417||32|14.771|0.193|17|14.193|0.137|1|11.758||32|7.302||32|16.95|0.686|0.15|3.827|18|1|55275.02271543|55276.94144233|55276.00571517|16.55|1.27|0.277|3.40499997|17|0|55275.02271543|55276.94144233|55276.00571517|13.075|3.381|0.756|3.21199989|8|0|55275.02271543|55276.94144233|55275.97547|9.974|3.624|0.81|2.93199992|11|0|55275.02271543|55276.94144233|55275.97547|-27|-70|-86|1|1|2|||||||||||||||||||||||||||||0|||||||2403089401241005682|1|-0.000619612847474|-0.0019197641424549|-0.999997965290708|121000000|
+J020806.16-895303.8|32.0257076|-89.8843889|0.5474|0.4779|0.2328|302.8892263|-27.2373527|270.2470185|-66.6218235|1904.289|85.65|2403089401241005671|2403m894_ab41-005671|2403m894_ab41|5671|16.374|0.079|13.8|0.975600004|16.803|0.341|3.2|0.822399974|12.287|0.24|4.5|1.046|9.468||0.3|1.03699994|0.963999987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|11|24|0|24|1|23|0|23|23.631|23.786|22.95|22.839|0.0|0.0|0.0|0.0|0||0||0||0||44.7169991|3.23699999|9.31|2.834|0.0|11.9910002|3.77099991|21.757|3.402|0.0|192.789993|42.625|1100.216|23.054|0.64|2.99300003|11.4379997|298.232|9.162|0.441|14.801|0.028|1|0.261|14.81|0.096|1|0.319|11.606||32|0.825|8.497||32|0.576|16.08|0.05|1|16.221|0.187|1|12.974||32|9.638||32|15.062|0.028|1|15.129|0.096|1|12.431||32|9.073||32|14.083|0.016|1|14.211|0.054|1|12.031||32|8.744||32|13.357|0.011|1|13.538|0.036|1|12.445|0.527|1|8.523||32|12.943|0.009|1|13.126|0.03|1|12.17|0.495|1|8.327||32|12.748|0.009|1|12.915|0.029|1|12.002|0.5|1|8.142||32|12.659|0.01|1|12.819|0.031|1|11.852|0.507|1|7.945||32|12.611|0.01|1|12.772|0.034|1|11.652|0.485|1|7.767||32|16.386|0.331|0.068|1.673|23|0|55275.28745078|55277.33835439|55276.3515125|16.657|1.404|0.287|3.74300003|16|0|55275.28745078|55277.33835439|55276.3515125|12.324|1.261|0.263|4.46999979|19|0|55275.28745078|55277.33835439|55276.34024702|10.302|3.73|0.778|2.9690001|13|0|55275.28745078|55277.33835439|55276.34024702|-8|41|49|0|1|1||||||||||||||||||||||||||1181037934|0.274|-97.6|1|16.75|0.146|16.289||16.643||2403089401241005671|1|0.0017107055287843|0.0010700350207409|-0.999997964253752|101000000|
+J022049.26-895303.6|35.2052785|-89.8843397|0.791|0.7818|0.2544|302.8824596|-27.2351226|270.2382213|-66.6272076|2175.438|626.725|600089401241005117|0600m894_ab41-005117|0600m894_ab41|5117|17.418|0.161|6.7|0.787299991|17.246|0.442|2.5|0.935000002|12.03|0.179|6.1|1.11600006|9.499|0.466|2.3|1.125|0.985099971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCBC|15|0000|2|24|0|24|3|23|0|23|23.477|23.603|23.005|22.768|0.0|0.0|0.0|0.0|0||0||0||0||17.0919991|2.53769994|9.311|2.834|0.079|7.97389984|3.24710011|21.707|3.343|0.016|244.380005|40.3930016|1099.333|22.518|0.536|25.1359997|10.7980003|298.304|9.232|0.094|16.57|0.225|0|0.261|16.235|0.296|0|0.319|12.063||32|0.825|8.429||32|0.576|17.412|0.275|0|17.193|0.382|0|13.401||32|9.548||32|16.831|0.225|0|16.554|0.296|0|12.888||32|9.005||32|16.51|0.217|1|16.198|0.277|1|12.451||32|8.637||32|16.316|0.224|1|15.971|0.278|1|12.742|0.481|1|8.33||32|16.135|0.229|1|15.75|0.274|1|12.228|0.361|1|8.055||32|15.85|0.208|1|15.46|0.248|1|11.794|0.286|1|7.823||32|15.355|0.154|1|15.051|0.198|1|11.46|0.245|1|7.618||32|14.69|0.096|1|14.507|0.138|1|11.193|0.22|1|7.433||32|17.343|0.69|0.141|2.7|21|0|55275.28745078|55277.33835439|55276.3515125|17.399|1.83|0.373|3.33100009|14|0|55275.28745078|55277.33835439|55276.3515125|11.979|1.198|0.25|3.76300001|18|0|55275.28745078|55277.33835439|55276.34024702|9.555|2.316|0.483|4.12400007|17|0|55275.28745078|55277.33835439|55276.34024702|-27|-13|9|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005117|1|0.0016494233137353|0.0011637677419979|-0.999997962521612|101000000|
+J194610.54-895303.5|296.5439515|-89.8843073|0.9349|0.9521|-0.3248|303.0582503|-27.1554698|270.1294361|-66.4571576|2068.692|654.218|3004089401241005462|3004m894_ab41-005462|3004m894_ab41|5462|17.367|0.157|6.9|0.907299995|16.68||1.9|0.958800018|12.909||0.4|1.08000004|9.475||-0.1|0.938499987|0.967800021|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|24|0|24|1|23|0|23|23.797|23.671|23.094|23.706|0.0|0.0|0.0|0.0|0||0||0||0||17.9139996|2.58450007|9.331|2.794|0.0|6.56339979|3.43280005|21.776|3.402|0.047|17.3770008|45.6860008|1095.097|24.676|0.0|-1.8154|12.8479996|298.909|9.751|0.791|16.589||32|0.261|16.064||32|0.319|12.647||32|0.825|8.443||32|0.576|17.879|0.536|0|16.687||32|13.919||32|9.645||32|16.85||32|16.383||32|13.472||32|9.019||32|16.71||32|16.253||32|13.139||32|8.607||32|16.557||32|16.132||32|12.953||32|8.345||32|16.293||32|15.946||32|12.907||32|8.148||32|16.631|0.542|1|15.622||32|12.728||32|7.962||32|15.837|0.303|1|15.242||32|12.564||32|7.774||32|15.269|0.207|1|15.641|0.496|1|12.412||32|7.587||32|17.436|0.788|0.161|3.664|22|0|55275.28732341|55277.33835439|55276.21916071|16.995|1.919|0.392|2.66199994|14|0|55275.28732341|55277.33835439|55276.21916071|13.865|8.467|1.765|3.02900004|9|1|55275.28732341|55277.33835439|55276.2021408|12.248|||3.16700006|10|0|55275.28732341|55277.33835439|55276.2021408|22|6|-5|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005462|1|0.0009023563307661|-0.0018063753919343|-0.99999796137842|131000000|
+J053258.38-895303.3|83.2432824|-89.8842705|0.7287|0.8272|0.036|302.8093856|-27.1669557|270.0343894|-66.6756309|1928.876|630.626|600089401241004973|0600m894_ab41-004973|0600m894_ab41|4973|17.268|0.166|6.5|0.865999997|17.244||-0.4|1.11500001|11.816|0.161|6.7|1.07299995|8.984|0.337|3.2|1.03299999|1.01800001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBB|13|0000|2|20|0|20|2|19|0|19|20.878|21.268|20.448|21.149|0.0|0.0|0.0|0.0|0||0||0||0||19.618|3.00020003|9.417|2.912|0.091|-1.62829995|3.99489999|21.828|3.602|0.251|297.670013|44.1349983|1096.686|21.983|1.114|40.3880005|12.5469999|299.109|9.674|0.717|16.98|0.476|0|0.261|16.297||32|0.319|12.146||32|0.825|8.81|0.474|1|0.576|17.552|0.455|0|16.808||32|13.391||32|9.277||32|17.241|0.476|0|16.616||32|12.971||32|9.386|0.474|1|16.41||32|16.579||32|12.622||32|9.011|0.456|1|16.291||32|16.344||32|12.296||32|8.843|0.507|1|16.132||32|16.146||32|12.01||32|7.998||32|15.926||32|15.969||32|11.776||32|7.873||32|15.714||32|15.806||32|11.586||32|7.719||32|15.548||32|15.655||32|11.44||32|7.569||32|17.192|0.611|0.137|3.934|18|0|55275.28745078|55277.20605032|55276.20045053|21.188|||2.73099995|8|0|55275.28745078|55277.20605032|55276.20045053|11.702|0.749|0.172|3.27800012|17|1|55275.28745078|55277.20605032|55276.17886275|8.743|1.115|0.256|3.21799994|14|0|55275.28745078|55277.20605032|55276.17886275|-28|9|-17|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004973|1|0.000237644297048|0.0020058317088659|-0.999997960080091|101000000|
+J010429.74-895302.6|16.1239367|-89.884061|0.2457|0.2367|0.0704|302.9244902|-27.2439071|270.2803634|-66.592657|1963.694|643.628|89401241004585|0000m894_ab41-004585|0000m894_ab41|4585|15.638|0.046|23.5|0.8477|15.489|0.097|11.2|1.12|11.804|0.155|7.0|1.09899998|9.498|0.515|2.1|1.03799999|1.023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABC|15|0000|20|21|9|21|3|20|1|20|20.986|22.2|21.678|21.313|0.0|0.0|0.0|0.0|0||0||0||0||88.0370026|3.74710011|9.262|2.705|0.077|40.230999|3.58949995|21.747|3.33|0.28|300.980011|43.0769997|1098.272|23.323|1.762|25.1679993|11.948|298.405|9.295|1.333|15.42|0.066|1|0.261|15.41|0.199|1|0.319|12.238||32|0.825|9.452||32|0.576|16.134|0.073|1|16.154|0.209|1|13.313||32|9.809||32|15.681|0.066|1|15.729|0.199|1|13.063||32|10.028||32|15.426|0.067|1|15.53|0.213|1|12.788||32|9.163||32|15.196|0.067|1|15.329|0.22|1|12.555||32|8.869||32|14.97|0.066|1|15.102|0.216|1|12.35||32|8.608||32|14.795|0.066|1|14.952|0.222|1|12.17||32|8.373||32|14.706|0.071|1|14.949|0.258|1|12.005||32|8.157||32|14.681|0.079|1|15.119|0.347|1|11.854||32|7.958||32|15.635|0.186|0.04|0.634|20|0|55275.55205887|55277.33835439|55276.39639986|15.507|0.727|0.159|2.80800009|18|2|55275.55205887|55277.33835439|55276.39639986|11.737|0.716|0.16|4.88100004|17|0|55275.55205887|55277.33835439|55276.38568892|9.44|2.657|0.594|3.5150001|11|0|55275.55205887|55277.33835439|55276.38568892|-12|-25|9|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004585|1|0.0019439174143142|0.0005619628143772|-0.999997952689345|101000000|
+J171039.30-895301.5|257.6637697|-89.883774|0.1821|0.1973|-0.0297|303.0500318|-27.0786282|269.9378584|-66.4471541|1957.526|642.561|2403089401241004766|2403m894_ab41-004766|2403m894_ab41|4766|15.267|0.038|28.9|0.91140002|15.165|0.075|14.5|0.966099977|12.734||0.6|1.03299999|9.511||-2.4|1.15100002|1.01100004|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|00nn|AAUU|3|0000|23|23|10|23|1|22|0|22|23.728|23.86|22.911|22.978|0.0|0.0|0.0|0.0|8|h|8|h|0||0||123.949997|4.29169989|9.484|2.425|0.02|54.2029991|3.73110008|21.773|3.178|0.066|30.2240009|48.7980003|1095.172|25.464|3.118|-29.6140003|12.4359999|299.229|9.786|0.457|15.056|0.053|0|0.261|14.993|0.148|0|0.319|12.069||32|0.825|9.0||32|0.576|15.749|0.057|0|15.818|0.169|0|13.476||32|10.008||32|15.317|0.053|0|15.312|0.148|0|12.894||32|9.576||32|15.081|0.055|1|15.038|0.147|1|13.106|0.46|1|9.233||32|14.871|0.056|1|14.838|0.152|1|12.575|0.351|1|8.949||32|14.643|0.055|1|14.651|0.154|1|12.182|0.294|1|8.692||32|14.402|0.053|1|14.464|0.154|1|11.911|0.272|1|8.462||32|14.173|0.05|1|14.264|0.149|1|11.691|0.258|1|8.251||32|13.968|0.048|1|14.044|0.14|1|11.476|0.244|1|8.056||32|15.277|0.157|0.033|0.646|22|0|55275.02271543|55276.94144233|55276.04680523|15.186|0.376|0.078|1.64999998|22|0|55275.02271543|55276.94144233|55276.04680523|13.133|2.686|0.573|4.31799984|10|0|55275.02271543|55276.94144233|55276.02117735||||1.08099997|4|0|55275.02271543|55276.94144233|55276.02117735|7|23|-5|0|0|0||||||||||||||||||||||||||970347325|0.084|-50.2|1|16.149|0.126|15.412|0.157|16.753||2403089401241004766|1|-0.0004333908035725|-0.0019816884423674|-0.999997942539548|121000000|
+J223102.19-895301.0|337.7591547|-89.8836249|0.7464|0.6797|-0.1511|303.0071686|-27.2233482|270.2703163|-66.5164277|2163.321|634.042|89401241005254|0000m894_ab41-005254|0000m894_ab41|5254|17.015|0.118|9.2|0.91900003|17.462|0.539|2.0|0.921199977|13.07|0.444|2.4|0.976999998|9.5||-0.4|0.911499977|0.9296|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BCCU|7|0000|4|24|0|24|1|23|0|23|24.495|24.741|23.959|23.269|0.0|0.0|0.0|0.0|0||0||0||0||24.7639999|2.68770003|9.246|2.772|0.151|6.53620005|3.2421999|21.697|3.343|0.067|93.7969971|38.3499985|1098.493|23.541|1.406|-5.33690023|12.5570002|298.706|9.862|1.418|16.524|0.192|1|0.261|15.93||32|0.319|12.243||32|0.825|8.572||32|0.576|17.256|0.212|1|16.636||32|13.439||32|9.579||32|16.785|0.192|1|16.249||32|13.068||32|9.148||32|16.506|0.192|1|16.03||32|12.783||32|8.804||32|16.297|0.196|1|15.888||32|12.55||32|8.51||32|16.127|0.201|1|15.787||32|12.351||32|8.25||32|15.942|0.2|1|15.611||32|12.169||32|8.015||32|15.628|0.174|1|15.294||32|12.005||32|7.799||32|15.115|0.125|1|15.61|0.541|1|11.853||32|7.599||32|16.983|0.488|0.1|1.979|22|0|55275.55205887|55277.33835439|55276.41490023|17.061|1.711|0.349|2.94400001|14|0|55275.55205887|55277.33835439|55276.41490023|13.319|2.456|0.512|2.88199997|14|0|55275.55205887|55277.33835439|55276.40639074||||3.34599996|9|0|55275.55205887|55277.33835439|55276.40639074|-8|-39|25|0|1|0|||||||||||||||||||||||||||||0|||||||89401241005254|1|0.0018800141152093|-0.0007687834397474|-0.999997937257347|131000000|
+J051421.97-895301.0|78.5915479|-89.8836238|0.3063|0.3297|-0.0286|302.8126586|-27.1759371|270.0581372|-66.674775|1951.326|640.974|600089401241004331|0600m894_ab41-004331|0600m894_ab41|4331|15.915|0.056|19.4|0.906000018|16.604|0.286|3.8|0.842899978|12.113|0.206|5.3|1.05599999|9.559||-0.3|1.06099999|0.960500002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|17|21|0|21|3|20|0|20|21.22|21.405|21.455|21.579|0.0|0.0|0.0|0.0|0||0||0||0||68.2040024|3.5236001|9.375|2.856|0.256|14.3970003|3.79870009|21.768|3.544|0.078|226.369995|42.9700012|1096.604|21.593|2.354|-3.48180008|11.8920002|298.981|9.647|0.904|15.784|0.156|1|0.261|15.511||32|0.319|12.205||32|0.825|8.902||32|0.576|16.46|0.164|0|16.165||32|13.394||32|9.908||32|16.045|0.156|1|15.83||32|13.03||32|9.478||32|15.824|0.165|1|15.681||32|12.745||32|9.133||32|15.673|0.177|1|15.653||32|12.512||32|8.839||32|15.559|0.192|1|15.598||32|12.314||32|8.579||32|15.448|0.204|1|15.417||32|12.133||32|8.399||32|15.304|0.208|1|15.254||32|11.969||32|7.941||32|15.108|0.2|1|15.102||32|11.816||32|7.621||32|15.934|0.194|0.042|1.001|20|0|55275.28745078|55277.20605032|55276.23258879|16.397|0.948|0.207|2.37899995|16|0|55275.28745078|55277.20605032|55276.23258879|12.075|1.012|0.226|2.93199992|15|0|55275.28745078|55277.20605032|55276.2136873||||1.50899994|7|0|55275.28745078|55277.20605032|55276.2136873|-14|35|79|0|1|1||||||||||||||||||||||||||1181170549|0.439|16.6|1|16.617|0.133|16.009|0.192|16.146||600089401241004331|1|0.0004017647888566|0.0019910154138436|-0.999997937219211|101000000|
+J042615.72-895259.9|66.5655288|-89.8833132|0.8621|1.2521|0.4721|302.826177|-27.197187|270.1171692|-66.6677273|2013.56|655.583|600089401241004623|0600m894_ab41-004623|0600m894_ab41|4623|17.193|0.202|5.4|0.999499977|16.366|0.29|3.7|0.931100011|11.891|0.256|4.2|1.12300003|8.945||1.6|0.912400007|0.996200025|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|nnnn|BBBU|7|0000|0|21|2|21|1|20|1|20|23.541|22.969|22.331|22.742|0.0|0.0|0.0|0.0|8|h|8|h|0||0||21.0200005|3.91989994|9.462|2.699|0.058|17.9330006|4.79659986|21.795|3.44|0.242|277.670013|65.5770035|1097.107|21.526|1.338|18.7670002|11.5649996|298.479|9.053|1.299|15.387|0.046|1|0.261|15.284|0.172|1|0.319|12.476||32|0.825|8.77||32|0.576|16.443|0.068|1|16.338|0.244|1|13.656||32|9.85||32|15.648|0.046|1|15.603|0.172|1|13.301||32|9.346||32|15.062|0.035|1|15.072|0.136|1|13.023||32|9.03||32|14.598|0.029|1|14.646|0.115|1|15.496||32|8.82||32|14.228|0.026|1|14.279|0.099|1|12.87||32|8.565||32|13.925|0.024|1|13.963|0.088|1|12.307||32|8.271||32|13.662|0.023|1|13.695|0.08|1|12.075||32|7.961||32|13.395|0.021|1|13.434|0.073|1|11.874||32|7.622||32|17.102|0.727|0.159|1.952|17|0|55275.28745078|55277.20605032|55276.23258879|16.788|1.911|0.417|2.76600003|13|0|55275.28745078|55277.20605032|55276.23258879|11.76|0.762|0.17|3.16000009|17|0|55275.28745078|55277.20605032|55276.2136873|10.249|3.567|0.798|3.59100008|10|0|55275.28745078|55277.20605032|55276.2136873|-12|-1|0|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004623|1|0.0008099429602411|0.0018685825723888|-0.999997926193635|101000000|
+J073456.96-895259.6|113.7373738|-89.8832363|0.6918|0.708|-0.2234|302.8031021|-27.1060624|269.8813261|-66.6675497|2082.333|655.795|1201089401241005122|1201m894_ab41-005122|1201m894_ab41|5122|17.099|0.126|8.6|1.03600001|17.17||0.4|1.00399995|12.06|0.189|5.7|1.10300004|9.581||0.0|0.964100003|1.02400005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|3|22|0|22|1|21|0|21|21.009|21.518|21.553|21.103|0.0|0.0|0.0|0.0|0||0||0||0||22.9319992|2.65770006|9.406|2.724|0.098|1.44029999|3.55380011|21.828|3.356|0.18|237.729996|41.4339981|1095.944|22.79|0.491|0.277779996|11.5200005|297.99|9.448|0.276|16.621|0.22|1|0.261|16.366||32|0.319|12.506||32|0.825|8.972||32|0.576|17.328|0.238|1|17.049||32|13.805||32|9.969||32|16.882|0.22|1|16.685||32|13.331||32|9.548||32|16.576|0.215|1|16.398||32|13.045||32|9.216||32|16.289|0.204|1|16.165||32|12.813||32|8.939||32|15.984|0.186|1|15.963||32|12.611||32|8.694||32|15.647|0.161|1|15.795||32|12.429||32|8.472||32|15.305|0.137|1|15.317||32|12.264||32|8.269||32|14.971|0.116|1|14.922||32|12.113||32|8.081||32|17.112|0.598|0.127|2.995|20|0|55275.02271543|55276.94144233|55275.97309574|18.714|8.913|1.9|3.39100003|11|0|55275.02271543|55276.94144233|55275.97309574|11.983|0.87|0.19|2.01600003|16|0|55275.02271543|55276.94144233|55275.94273751|12.111|||3.29200006|10|0|55275.02271543|55276.94144233|55275.94273751|14|15|-14|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005122|1|-0.000820350382603|0.0018655031388607|-0.999997923459488|111000000|
+J105338.40-895259.5|163.4100207|-89.883219|0.5912|0.5271|0.0291|302.8674614|-27.02645|269.7182608|-66.5937998|2136.712|644.61|1802089401241004653|1802m894_ab41-004653|1802m894_ab41|4653|16.732|0.092|11.8|0.998300016|17.115|0.414|2.6|0.831900001|13.009||-1.8|0.971199989|9.499||-0.2|0.967299998|0.93900001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|5|21|0|21|0|21|0|21|21.388|21.724|21.731|21.742|0.0|0.0|0.0|0.0|0||0||0||0||32.1500015|2.72280002|9.554|2.762|0.132|8.99269962|3.42799997|21.825|3.427|0.159|-86.7949982|49.5750008|1095.449|25.67|2.738|-2.18849993|12.5760002|297.817|9.8|1.252|16.725|0.389|1|0.261|15.964|0.288|1|0.319|12.387||32|0.825|8.269||32|0.576|17.273|0.363|0|16.932|0.375|0|13.573||32|9.474||32|16.986|0.389|1|16.283|0.288|1|13.212||32|8.845||32|16.665|0.375|1|15.779|0.236|1|12.931||32|9.017|0.434|1|15.911|0.232|1|15.179|0.168|1|12.7||32|8.631|0.387|1|14.997|0.121|1|14.526|0.112|1|12.496||32|8.337|0.363|1|14.245|0.072|1|13.948|0.078|1|12.316||32|8.085|0.347|1|13.756|0.053|1|13.514|0.061|1|12.153||32|7.88|0.34|1|13.463|0.047|1|13.212|0.053|1|12.0||32|7.701|0.338|1|16.747|0.452|0.099|2.815|20|0|55274.89041135|55276.94144233|55275.90177109|17.066|2.417|0.527|2.49699998|13|0|55274.89041135|55276.94144233|55275.90177109||||2.71300006|6|0|55274.89041135|55276.94144233|55275.90177109||||3.329|9|0|55274.89041135|55276.94144233|55275.90177109|24|-9|-25|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004653|1|-0.0019533662550834|0.0005819517966896|-0.999997922844033|111000000|
+J023941.25-895258.9|39.9219063|-89.883051|0.6545|0.6629|0.2246|302.8720761|-27.2322881|270.2261617|-66.6355976|2153.583|639.44|600089401241004856|0600m894_ab41-004856|0600m894_ab41|4856|17.076|0.117|9.3|0.922299981|17.068||0.8|0.867299974|12.05|0.183|5.9|1.12699997|9.208||0.9|1.03299999|0.9824|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|2|24|0|24|1|23|0|23|23.734|23.693|22.92|22.758|0.0|0.0|0.0|0.0|0||0||0||0||23.4200001|2.52780008|9.257|2.752|0.176|2.73939991|3.32669997|21.773|3.366|0.081|239.899994|40.3310013|1099.454|22.066|0.0|9.98219967|11.4379997|299.01|9.425|0.337|16.644|0.357|1|0.261|16.255|0.374|1|0.319|11.914||32|0.825|8.528||32|0.576|17.464|0.432|1|17.307|0.529|1|13.239||32|9.542||32|16.905|0.357|1|16.574|0.374|1|12.739||32|9.104||32|16.184|0.238|1|15.907|0.261|1|12.367||32|8.758||32|15.357|0.138|1|15.184|0.168|1|12.1||32|8.466||32|14.62|0.085|1|14.537|0.112|1|11.886||32|8.205||32|14.023|0.058|1|14.023|0.082|1|11.672||32|7.969||32|13.627|0.047|1|13.673|0.07|1|11.451||32|7.755||32|13.418|0.045|1|13.468|0.066|1|11.248||32|7.556||32|16.964|0.366|0.075|1.991|21|0|55275.28745078|55277.33835439|55276.3515125|18.272|4.77|0.974|2.79299998|12|0|55275.28745078|55277.33835439|55276.3515125|11.941|0.638|0.133|3.41300011|21|0|55275.28745078|55277.33835439|55276.34024702|9.902|3.782|0.789|4.83699989|12|0|55275.28745078|55277.33835439|55276.34024702|-18|43|28|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241004856|1|0.0015653936704511|0.0013098895257767|-0.999997916863874|101000000|
+J204112.59-895258.9|310.3024638|-89.8830415|0.6188|0.6013|-0.2038|303.0485998|-27.1820103|270.1895045|-66.4713968|1995.66|653.733|3004089401241004953|3004m894_ab41-004953|3004m894_ab41|4953|16.795|0.111|9.7|0.944800019|16.266|0.203|5.4|0.918900013|12.825||0.6|1.03999996|9.011||1.2|0.957199991|0.962100029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BBUU|3|0000|5|21|2|21|0|20|0|20|23.826|24.152|24.531|24.116|0.0|0.0|0.0|0.0|0||0||0||0||30.3279991|3.11159992|9.308|2.946|0.084|19.6529999|3.66729999|21.73|3.481|0.222|27.2730007|45.0979996|1099.411|24.986|0.513|14.8850002|12.2609997|298.677|9.403|0.962|16.622|0.314|1|0.261|15.612|0.159|1|0.319|12.253||32|0.825|8.696||32|0.576|17.191|0.298|1|16.48|0.189|1|13.448||32|10.845||32|16.883|0.314|1|15.931|0.159|1|13.078||32|9.272||32|16.718|0.348|1|15.555|0.144|1|12.8||32|8.926||32|16.492|0.35|1|15.194|0.128|1|12.566||32|8.631||32|16.203|0.324|1|14.844|0.112|1|12.359||32|8.369||32|15.832|0.272|1|14.485|0.095|1|12.178||32|8.134||32|15.234|0.183|1|14.058|0.075|1|12.013||32|7.917||32|14.302|0.089|1|13.482|0.051|1|11.862||32|7.718||32|16.871|0.391|0.085|2.162|20|0|55275.28745078|55277.33835439|55276.3144731|16.351|1.2|0.262|3.4289999|16|0|55275.28745078|55277.33835439|55276.3144731|13.541|3.253|0.727|2.51799989|9|0|55275.28745078|55277.33835439|55276.29966583|9.676|2.909|0.65|3.11299992|11|0|55275.28745078|55277.33835439|55276.29966583|-4|54|-40|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004953|1|0.0013203652550088|-0.0015567855516372|-0.999997916524999|131000000|
+J055128.83-895258.6|87.8701442|-89.8829552|0.3902|0.44|-0.0645|302.8048439|-27.1583716|270.0109873|-66.6776724|1905.186|623.156|600089401241004498|0600m894_ab41-004498|0600m894_ab41|4498|16.464|0.083|13.0|0.795899987|16.086|0.188|5.8|0.904100001|11.347|0.106|10.2|1.21700001|9.325|0.446|2.4|0.890699983|0.9472|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0n0n|ABAC|15|0000|12|20|3|20|6|19|0|19|20.204|21.038|20.325|20.727|0.0|0.0|0.0|0.0|0||0||0||0||41.1389999|3.16269994|9.395|2.871|0.032|23.2110004|4.02320004|21.766|3.536|0.417|458.350006|44.9259987|1098.339|22.871|1.488|29.5189991|12.1280003|298.819|9.286|0.251|15.861|0.142|1|0.261|15.59|0.228|1|0.319|11.829|0.375|1|0.825|8.741||32|0.576|16.735|0.179|1|16.429|0.264|1|13.31|0.49|1|9.751||32|16.122|0.142|1|15.909|0.228|1|12.654|0.375|1|9.317||32|15.53|0.107|1|15.495|0.201|1|12.27|0.339|1|8.962||32|14.958|0.078|1|15.09|0.171|1|12.058|0.346|1|8.672||32|14.576|0.066|1|14.823|0.16|1|11.96|0.38|1|8.441||32|14.381|0.065|1|14.722|0.172|1|11.957|0.447|1|8.237||32|14.283|0.069|1|14.741|0.203|1|11.268||32|8.102||32|14.223|0.075|1|14.782|0.242|1|11.228||32|7.918||32|16.419|0.365|0.082|1.688|19|0|55275.28745078|55277.20605032|55276.20045053|16.013|0.786|0.176|2.08599997|16|0|55275.28745078|55277.20605032|55276.20045053|11.344|0.49|0.112|1.84800005|18|0|55275.28745078|55277.20605032|55276.17886275|9.404|1.301|0.298|2.65499997|15|0|55275.28745078|55277.20605032|55276.17886275|21|-25|2|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004498|1|0.0000759200841183|0.0020414042128616|-0.999997913450313|101000000|
+J174604.01-895258.4|266.5167208|-89.8829165|0.5588|0.6253|-0.0785|303.0581195|-27.0951547|269.9822002|-66.4438407|1912.9|627.194|2403089401241005810|2403m894_ab41-005810|2403m894_ab41|5810|16.937|0.102|10.6|0.810500026|16.557|0.238|4.6|0.903400004|13.042||-1.1|0.939800024|9.454||-1.0|0.934400022|0.89289999|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0nnn|ABUU|3|0000|5|24|1|23|0|22|1|23|24.791|24.49|23.96|23.749|0.0|0.0|0.0|0.0|8|h|0||0||0||26.6140003|2.51220012|9.378|2.503|0.0|15.0430002|3.30130005|21.789|3.247|0.116|-51.2260017|48.0929985|1095.818|25.373|3.934|-13.3079996|13.1029997|299.609|10.153|1.401|15.948|0.086|0|0.261|15.853|0.247|0|0.319|12.63||32|0.825|8.591||32|0.576|16.914|0.118|0|16.819|0.32|0|13.82||32|9.601||32|16.209|0.086|0|16.172|0.247|0|13.455||32|9.167||32|15.728|0.071|1|15.799|0.226|1|13.178||32|8.821||32|15.346|0.062|1|15.544|0.221|1|12.945||32|8.526||32|14.994|0.054|1|15.303|0.213|1|12.743||32|11.092||32|14.658|0.047|1|15.064|0.202|1|12.56||32|8.37||32|14.368|0.042|1|14.87|0.197|1|12.395||32|7.742||32|14.135|0.039|1|14.7|0.194|1|12.241||32|7.487||32|16.941|0.475|0.097|3.634|22|1|55275.28732341|55277.20605032|55276.16402342|16.577|1.556|0.324|3.89599991|16|0|55275.28732341|55277.20605032|55276.14173283||||3.77099991|9|0|55275.28732341|55277.20605032|55276.12041984|11.804|||3.76999998|10|0|55275.28732341|55277.20605032|55276.14460624|21|-9|-2|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005810|1|-0.000124156857973|-0.0020397153006177|-0.999997912071104|121000000|
+J062927.01-895258.2|97.362551|-89.882848|0.5567|0.6045|-0.1326|302.8008752|-27.1393179|269.9620811|-66.6768904|2166.976|634.734|1201089401241004843|1201m894_ab41-004843|1201m894_ab41|4843|16.886|0.108|10.0|0.847899973|16.867|0.343|3.2|0.898500025|11.928|0.166|6.5|1.07799995|9.29||0.7|0.952799976|0.940400004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|7|22|1|22|3|21|0|21|22.143|22.395|22.21|22.41|0.0|0.0|0.0|0.0|0||0||0||0||27.8920002|2.77620006|9.357|2.836|0.148|11.3050003|3.56649995|21.842|3.482|0.105|268.429993|41.0890007|1097.323|21.966|0.696|7.7020998|11.382|298.01|9.216|0.353|16.232|0.225|1|0.261|15.918|0.282|1|0.319|14.36||32|0.825|8.917||32|0.576|17.082|0.279|1|16.809|0.344|1|13.524||32|9.926||32|16.493|0.225|1|16.237|0.282|1|15.185||32|9.493||32|16.067|0.197|1|15.93|0.275|1|13.053||32|9.147||32|15.712|0.176|1|15.702|0.276|1|12.821||32|8.852||32|15.314|0.146|1|15.318|0.233|1|12.622||32|8.591||32|14.685|0.097|1|14.607|0.143|1|12.438||32|8.355||32|13.822|0.051|1|13.741|0.075|1|13.177||32|8.138||32|12.99|0.028|1|12.977|0.043|1|12.034||32|7.939||32|16.844|0.652|0.139|2.969|20|1|55275.02271543|55277.20605032|55276.0933895|16.805|1.555|0.331|4.18300009|16|0|55275.02271543|55277.20605032|55276.0933895|11.888|1.144|0.25|4.10099983|15|2|55275.02271543|55277.20605032|55276.06875954|10.429|5.421|1.183|3.44300008|10|0|55275.02271543|55277.20605032|55276.06875954|1|11|-52|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241004843|1|-0.0002620212996539|0.0020278285781425|-0.999997909625863|111000000|
+J234130.41-895257.9|355.3767402|-89.8827554|0.1624|0.1577|0.0277|302.971532|-27.2399796|270.2936764|-66.5509838|2072.738|657.987|89401241004374|0000m894_ab41-004374|0000m894_ab41|4374|14.892|0.033|33.2|0.856599987|14.953|0.065|16.7|0.824100018|12.765||0.9|1.01400006|9.146|0.362|3.0|0.958899975|0.909099996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUC|11|0000|23|23|17|23|0|22|0|22|23.271|22.996|22.597|22.622|0.0|0.0|0.0|0.0|0||0||0||0||174.990005|5.27099991|9.186|2.716|0.0|65.8740005|3.94860005|21.729|3.368|0.023|38.9119987|42.6360016|1100.234|23.933|3.499|34.7900009|11.6140003|298.357|9.462|0.823|14.859|0.046|0|0.261|14.888|0.084|0|0.319|12.4||32|0.825|8.904|0.497|1|0.576|15.496|0.047|0|15.643|0.091|0|13.583||32|9.311||32|15.12|0.046|0|15.207|0.084|0|13.225||32|9.48|0.497|1|14.983|0.052|0|15.061|0.094|0|12.944||32|9.012|0.436|1|14.935|0.062|0|15.051|0.115|0|12.71||32|8.594|0.384|1|14.928|0.073|1|15.124|0.148|1|12.51||32|8.267|0.355|1|14.932|0.087|1|15.223|0.191|1|12.328||32|8.022|0.347|1|14.902|0.098|1|15.281|0.233|1|12.166||32|7.884|0.368|1|14.789|0.102|1|15.24|0.258|1|12.013||32|7.802|0.406|1|14.889|0.101|0.021|0.393|22|0|55275.55205887|55277.33835439|55276.40926968|14.962|0.28|0.058|1.171|22|0|55275.55205887|55277.33835439|55276.40926968|13.313|2.988|0.637|3.41100001|12|0|55275.55205887|55277.33835439|55276.40011746|9.03|1.558|0.332|4.0999999|15|0|55275.55205887|55277.33835439|55276.40011746|-8|-32|-12|0|1|0||||||||||||||||||||||||||1180999326|0.355|165.8|1|15.57|0.066|15.128|0.095|15.013|0.157|89401241004374|1|0.0020396438275535|-0.0001649392485508|-0.999997906321859|131000000|
+J200845.62-895256.8|302.1901019|-89.8824693|0.236|0.229|-0.0712|303.0565731|-27.1670062|270.1567771|-66.4611658|2038.715|659.597|3004089401241004468|3004m894_ab41-004468|3004m894_ab41|4468|15.66|0.044|24.8|0.995400012|15.558|0.103|10.5|0.94660002|12.893|0.42|2.6|1.08200002|9.198||0.6|1.01100004|1.005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|AACU|7|0000|24|24|2|24|1|23|0|23|23.698|23.708|22.901|22.923|0.0|0.0|0.0|0.0|0||0||0||0||86.2789993|3.48180008|9.322|2.753|0.0|37.7410011|3.59260011|21.788|3.456|0.0|110.370003|42.6990013|1094.797|24.698|1.376|7.78669977|12.6949997|299.129|9.848|0.232|15.7|0.103|0|0.261|15.723|0.334|0|0.319|12.263||32|0.825|8.468||32|0.576|16.265|0.098|0|16.327|0.311|0|13.504||32|9.479||32|15.961|0.103|0|16.042|0.334|0|13.088||32|9.044||32|15.937|0.13|1|16.138|0.472|1|12.799||32|8.701||32|16.003|0.171|1|15.516||32|12.597||32|8.408||32|16.034|0.213|1|15.612||32|12.486||32|8.148||32|15.971|0.237|1|15.673||32|12.508||32|7.914||32|15.843|0.244|1|15.509||32|12.366||32|7.699||32|15.754|0.259|1|15.357||32|12.215||32|7.501||32|15.661|0.179|0.036|0.58|23|0|55275.28732341|55277.33835439|55276.21916071|15.593|0.432|0.088|3.76099992|23|0|55275.28732341|55277.33835439|55276.21916071|12.639|1.786|0.372|3.07299995|13|0|55275.28732341|55277.33835439|55276.2021408|10.948|6.888|1.436|3.61899996|11|0|55275.28732341|55277.33835439|55276.2021408|-19|24|-20|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004468|1|0.001092787170283|-0.0017359815944938|-0.999997896089839|131000000|
+J110759.23-895256.4|166.9968109|-89.8823339|0.6468|0.5856|-0.0375|302.8742982|-27.0222638|269.7114707|-66.5869195|2118.765|651.842|1802089401241004813|1802m894_ab41-004813|1802m894_ab41|4813|16.834|0.102|10.6|0.931299984|17.246|0.483|2.2|1.24899995|12.273||1.8|0.971000016|9.367||-1.1|0.888899982|1.00600004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|ACUU|3|0000|6|21|2|21|1|21|0|21|21.552|21.527|21.863|21.661|0.0|0.0|0.0|0.0|0||0||0||0||29.2619991|2.75149989|9.613|2.782|0.075|7.97349977|3.54649997|21.815|3.435|0.134|93.6200027|50.8580017|1095.63|26.087|3.197|-15.1009998|14.1929998|298.657|10.282|0.729|16.546|0.174|0|0.261|15.822||32|0.319|12.659|0.541|0|0.825|8.817||32|0.576|17.177|0.175|0|16.498||32|13.157||32|9.868||32|16.807|0.174|0|16.141||32|13.484|0.541|0|9.393||32|16.687|0.202|1|15.956||32|12.523||32|9.05||32|16.526|0.216|1|15.812||32|12.378||32|8.756||32|16.158|0.186|1|15.633||32|12.227||32|8.498||32|15.584|0.13|1|15.305||32|12.079||32|8.262||32|14.882|0.079|1|15.452|0.453|1|11.906||32|8.047||32|14.225|0.05|1|14.665|0.253|1|11.707||32|7.849||32|16.859|0.658|0.144|3.113|19|1|55274.89041135|55276.94144233|55275.90177109|18.028|6.132|1.338|3.14299989|9|2|55274.89041135|55276.94144233|55275.90177109|12.892|2.308|0.504|6.45300007|13|0|55274.89041135|55276.94144233|55275.90177109||||4.21500015|8|0|55274.89041135|55276.94144233|55275.90177109|-16|25|-44|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004813|1|-0.0020009981786049|0.0004620841433479|-0.999997891240043|111000000|
+J032558.63-895256.3|51.4943269|-89.8823104|0.5311|0.5718|0.152|302.8492852|-27.2200644|270.1848904|-66.652698|2094.069|656.694|600089401241004628|0600m894_ab41-004628|0600m894_ab41|4628|16.806|0.094|11.6|0.849699974|17.39|0.486|2.2|0.979300022|12.209|0.208|5.2|1.01100004|9.363||0.6|0.99180001|0.954100013|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|ACBU|7|0000|6|24|1|24|0|23|0|23|24.698|24.71|23.895|23.682|0.0|0.0|0.0|0.0|129|D|129|D|0||0||30.0370007|2.59120011|9.33|2.615|0.016|6.9822998|3.12759995|21.756|3.224|0.173|207.160004|39.7050018|1098.408|21.602|0.302|6.38040018|11.0629997|298.6|8.865|1.422|16.348|0.152|1|0.261|15.785||32|0.319|12.527||32|0.825|9.039||32|0.576|17.147|0.176|1|16.565||32|13.723||32|10.033||32|16.609|0.152|1|16.104||32|13.352||32|9.615||32|16.162|0.133|1|15.748||32|13.071||32|9.293||32|15.745|0.115|1|16.163|0.512|1|12.834||32|9.019||32|15.434|0.106|1|15.869|0.472|1|12.634||32|8.781||32|15.222|0.106|1|15.63|0.449|1|12.453||32|8.565||32|15.036|0.107|1|15.42|0.432|1|12.289||32|8.367||32|14.828|0.104|1|15.205|0.41|1|12.136||32|8.185||32|16.821|0.52|0.106|2.824|22|0|55275.28745078|55277.33835439|55276.29362153|18.19|5.78|1.18|4.05499983|14|1|55275.28745078|55277.33835439|55276.29362153|12.175|0.883|0.184|1.71500003|17|0|55275.28745078|55277.33835439|55276.27983905|11.003|8.089|1.687|3.51900005|12|0|55275.28745078|55277.33835439|55276.27983905|0|9|-17|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004628|1|0.0012788479621493|0.0016074055235946|-0.999997890395461|101000000|
+J192750.26-895255.5|291.959428|-89.8820879|0.2533|0.2577|-0.0696|303.0627575|-27.1467444|270.1103632|-66.4513125|2093.639|657.344|3004089401241004472|3004m894_ab41-004472|3004m894_ab41|4472|15.684|0.046|23.6|0.955299973|16.011|0.165|6.6|0.749300003|12.789||0.7|0.986100018|9.031||1.0|0.966600001|0.91140002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|ABUU|3|0000|21|23|3|23|0|22|0|22|25.153|24.294|24.241|24.57|0.0|0.0|0.0|0.0|0||0||0||0||84.3789978|3.56900001|9.321|2.807|0.038|24.8670006|3.77649999|21.756|3.452|0.06|30.5979996|45.4140015|1095.326|24.589|3.114|12.5559998|13.066|298.959|10.028|1.369|15.392|0.072|1|0.261|15.616|0.188|1|0.319|12.776||32|0.825|8.667||32|0.576|16.169|0.082|1|16.497|0.226|1|14.045||32|9.802||32|15.653|0.072|1|15.935|0.188|1|13.601||32|9.243||32|15.18|0.06|1|15.429|0.152|1|13.142||32|8.912||32|14.682|0.047|1|14.93|0.119|1|12.78||32|8.698||32|14.288|0.04|1|14.542|0.1|1|12.483||32|8.486||32|14.045|0.037|1|14.298|0.095|1|12.249||32|8.289||32|13.896|0.038|1|14.154|0.096|1|12.072||32|8.054||32|13.757|0.038|1|14.036|0.099|1|11.898||32|7.815||32|15.707|0.279|0.058|1.273|22|1|55275.28732341|55277.20605032|55276.17050011|15.97|0.703|0.147|1.85800004|19|0|55275.28732341|55277.20605032|55276.17050011|13.081|3.091|0.659|3.53600001|11|0|55275.28732341|55277.20605032|55276.15049473|9.977|4.082|0.87|4.85200024|13|0|55275.28732341|55277.20605032|55276.15049473|16|42|-2|0|1|0||||||||||||||||||||||||||1128801862|0.308|-36.3|1|16.477|0.131|16.067|0.214|15.71|0.277|3004089401241004472|1|0.0007695710876589|-0.0019086454092514|-0.999997882414279|131000000|
+J122134.65-895254.8|185.3943896|-89.8819127|0.7898|0.7178|0.1836|302.9146955|-27.0110689|269.704581|-66.5493293|2020.42|659.95|1802089401241005020|1802m894_ab41-005020|1802m894_ab41|5020|17.096|0.126|8.6|0.958999991|17.266|0.465|2.3|1.04100001|12.913||-0.2|0.817099988|9.385||-1.2|0.826300025|0.907800019|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BCUU|3|0000|3|23|1|23|0|23|0|23|24.429|23.73|24.326|24.508|0.0|0.0|0.0|0.0|8|h|0||0||0||22.9860001|2.65980005|9.998|2.754|0.219|7.82870007|3.35560012|21.845|3.285|0.163|-10.0509996|54.1920013|1095.912|26.352|0.0|-17.1259995|13.9639997|298.528|10.287|0.204|16.532||32|0.261|15.866||32|0.319|12.378||32|0.825|9.036||32|0.576|16.913||32|16.532||32|15.543||32|10.033||32|16.793||32|16.185||32|13.203||32|9.612||32|16.653||32|15.828||32|12.916||32|9.281||32|16.421||32|15.47||32|12.684||32|8.996||32|16.223||32|15.222||32|12.485||32|8.686||32|16.044||32|15.126||32|12.307||32|8.292||32|15.88||32|15.117||32|12.143||32|8.007||32|16.104||32|14.996||32|11.989||32|7.81||32|17.072|0.619|0.129|2.284|20|0|55274.89041135|55276.94144233|55275.89724414|17.072|2.486|0.518|1.99199998|11|0|55274.89041135|55276.94144233|55275.89724414|14.555|7.01|1.462|2.3829999|9|0|55274.89041135|55276.94144233|55275.89724414||||3.00300002|6|0|55274.89041135|55276.94144233|55275.89724414|68|-82|-32|2|1|0|||||||||||||||||||||||||||||0|||||||1802089401241005020|1|-0.0020518833125554|-0.000193757367312|-0.999997876114222|121000000|
+J144028.12-895254.7|220.1171823|-89.8818845|0.8586|0.8797|0.2356|302.992642|-27.0231439|269.7736169|-66.4844371|1942.36|61.418|600089401241005340|0600m894_ab41-005340|0600m894_ab41|5340|17.341|0.152|7.1|0.899500012|16.68|0.285|3.8|0.912100017|13.073||-0.2|1.04100001|9.34||0.3|1.03900003|0.968900025|1|0|0.0|0.0|0.0|0.0|0000|h0H0|0|nnnn|BBUU|3|0000|1|22|1|22|0|21|0|21|22.18|22.16|21.724|22.46|0.0|0.0|0.0|0.0|8|h|0||1032|H|0||18.3460007|2.56620002|9.656|2.445|0.0|13.4259996|3.51869988|21.828|3.224|0.055|-7.02419996|46.7659988|1097.056|25.407|4.122|3.98099995|12.5579996|297.919|9.698|1.109|16.915||32|0.261|16.23||32|0.319|11.949||32|0.825|8.824||32|0.576|17.554||32|16.857||32|13.134||32|9.837||32|17.176||32|16.549||32|12.774||32|9.4||32|17.521|0.489|1|16.348||32|12.494||32|9.057||32|16.931|0.352|1|16.036||32|12.259||32|8.765||32|16.287|0.234|1|16.362|0.521|1|12.057||32|8.507||32|15.729|0.166|1|15.748|0.35|1|11.876||32|8.271||32|15.296|0.129|1|15.238|0.254|1|11.714||32|8.057||32|14.927|0.106|1|14.793|0.194|1|11.561||32|7.858||32|17.367|0.973|0.207|3.625|17|0|55274.89041135|55276.94144233|55275.99412385|16.824|1.896|0.404|1.89600003|13|0|55274.89041135|55276.94144233|55275.99412385|13.228|2.954|0.645|3.83699989|10|0|55274.89041135|55276.94144233|55275.96476696|11.557|||3.74499989|10|0|55274.89041135|55276.94144233|55275.96476696|30|2|-10|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005340|1|-0.0015764893292477|-0.0013283354948185|-0.999997875100846|121000000|
+J155353.43-895254.1|238.4726252|-89.8817117|0.3163|0.325|0.0587|303.0268277|-27.0453819|269.8451305|-66.4598044|2058.24|661.548|2403089401241004409|2403m894_ab41-004409|2403m894_ab41|4409|15.476|0.08|13.6|1.53999996|15.05|0.08|13.5|1.05200005|12.762||0.6|1.028|9.419||-0.3|0.874499977|1.12699997|1|0|0.0|0.0|0.0|0.0|0000|Dd00|0|n0nn|AAUU|3|0000|8|22|10|22|0|21|0|21|22.766|22.497|21.952|21.941|0.0|0.0|0.0|0.0|137|Dh|1|d|0||0||102.230003|7.51849985|9.411|2.376|0.415|60.2319984|4.46479988|21.802|3.262|0.206|27.5109997|48.5009995|1094.5|25.14|3.701|-4.03299999|13.5369997|299.014|10.115|0.977|15.214|0.052|1|0.261|14.814|0.145|1|0.319|12.465||32|0.825|8.369||32|0.576|16.009|0.061|1|15.745|0.182|1|13.741||32|9.529||32|15.475|0.052|1|15.133|0.145|1|13.29||32|8.945||32|15.17|0.051|1|14.77|0.135|1|12.899||32|8.486||32|14.891|0.049|1|14.477|0.127|1|12.532||32|8.151||32|14.571|0.044|1|14.184|0.117|1|12.154||32|7.907||32|14.241|0.038|1|13.903|0.107|1|12.373|0.396|1|7.678||32|13.938|0.034|1|13.645|0.098|1|11.903|0.299|1|7.488||32|13.646|0.03|1|13.387|0.089|1|11.49|0.235|1|7.366||32|15.471|0.154|0.033|0.634|21|0|55275.02271543|55276.94144233|55275.97607081|15.08|0.436|0.093|1.949|21|1|55275.02271543|55276.94144233|55275.97607081|13.523|3.717|0.811|3.27699995|11|0|55275.02271543|55276.94144233|55275.94585425|10.9|8.608|1.878|3.13199997|7|0|55275.02271543|55276.94144233|55275.94585425|0|-27|-86|0|0|1|||||||||||||||||||||||||||||0|||||||2403089401241004409|1|-0.0010795490226497|-0.0017597760646653|-0.999997868878784|121000000|
+J201930.96-895253.7|304.8790189|-89.8816099|0.416|0.406|-0.1421|303.055286|-27.1724896|270.1695349|-66.4634943|2024.122|661.066|3004089401241004793|3004m894_ab41-004793|3004m894_ab41|4793|16.468|0.072|15.1|0.994300008|16.243|0.187|5.8|0.873899996|12.914||0.3|0.969600022|8.835||1.8|1.04700005|0.967499971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|12|24|1|24|2|23|0|23|23.589|23.904|22.938|22.864|0.0|0.0|0.0|0.0|0||0||0||0||41.0050011|2.71329999|9.304|2.811|0.0|20.0849991|3.46580005|21.761|3.423|0.0|14.6809998|46.7890015|1097.174|25.443|0.0|21.7040005|12.3290005|298.809|9.645|0.094|16.267|0.149|1|0.261|16.136|0.455|1|0.319|12.642||32|0.825|8.592||32|0.576|16.87|0.147|1|16.894|0.49|1|13.828||32|9.524||32|16.528|0.149|1|16.455|0.455|1|13.467||32|9.168||32|16.492|0.186|1|16.287|0.502|1|13.19||32|8.823||32|16.515|0.234|1|15.396||32|12.962||32|8.534||32|16.368|0.247|1|15.226||32|12.761||32|8.274||32|16.043|0.217|1|15.072||32|12.58||32|8.039||32|15.724|0.188|1|14.948||32|12.416||32|7.825||32|15.536|0.182|1|14.865||32|12.267||32|7.626||32|16.492|0.399|0.081|1.966|23|1|55275.28732341|55277.33835439|55276.21916071|16.064|0.754|0.154|3.9519999|20|0|55275.28732341|55277.33835439|55276.21916071|14.39|||4.11399984|10|0|55275.28732341|55277.33835439|55276.2021408|9.522|2.249|0.469|2.22799993|12|0|55275.28732341|55277.33835439|55276.2021408|34|30|-44|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004793|1|0.001181602173525|-0.0016951094840843|-0.999997865207792|131000000|
+J191827.84-895253.2|289.6160161|-89.881467|0.6068|0.635|-0.1849|303.0641924|-27.1420399|270.0995916|-66.4490234|2106.391|656.82|3004089401241005159|3004m894_ab41-005159|3004m894_ab41|5159|16.951|0.106|10.2|1.03299999|17.314|0.535|2.0|0.765600026|12.423|0.278|3.9|1.08000004|8.92||1.4|0.972500026|0.961700022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACBU|7|0000|4|23|0|23|0|22|0|23|25.269|25.178|24.576|24.505|0.0|0.0|0.0|0.0|0||0||0||0||26.2859993|2.57119989|9.305|2.78|0.043|7.49109983|3.69070005|21.761|3.467|0.227|170.210007|43.5130005|1095.672|24.703|2.227|17.4319992|12.71|299.105|9.844|0.709|16.643|0.277|0|0.261|16.07||32|0.319|12.538|0.431|0|0.825|8.901||32|0.576|17.355|0.299|0|16.751||32|13.269||32|9.814||32|16.904|0.277|0|16.389||32|13.363|0.431|0|9.477||32|16.682|0.293|1|16.122||32|12.941|0.38|1|9.151||32|16.442|0.291|1|15.813||32|12.744|0.393|1|8.809||32|16.036|0.242|1|16.229|0.529|1|12.734|0.47|1|8.521||32|15.56|0.184|1|15.823|0.429|1|12.048||32|8.278||32|15.142|0.146|1|15.45|0.355|1|12.095||32|8.003||32|14.815|0.124|1|15.111|0.299|1|12.147||32|7.749||32|16.962|0.575|0.12|2.637|20|0|55275.28732341|55277.20605032|55276.17050011|16.576|0.977|0.204|2.44400001|15|0|55275.28732341|55277.20605032|55276.17050011|12.315|1.365|0.291|4.78299999|16|0|55275.28732341|55277.20605032|55276.15049473|9.668|1.606|0.335|4.4829998|13|0|55275.28732341|55277.20605032|55276.15323753|53|-1|11|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005159|1|0.0006945236427259|-0.0019487250539443|-0.999997860051497|131000000|
+J132843.63-895253.2|202.1817924|-89.881459|0.6533|0.6252|0.1912|302.9534694|-27.0111794|269.7245449|-66.5157121|2239.867|595.965|2403089401241005000|2403m894_ab41-005000|2403m894_ab41|5000|17.106|0.122|8.9|0.98360002|16.136|0.156|6.9|0.987299979|12.555||1.3|0.972199976|9.479||-1.0|0.920400023|0.96329999|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|2nnn|BBUU|3|0000|5|24|3|24|0|24|0|24|23.74|23.773|23.991|23.895|0.0|0.0|0.0|0.0|8|h|8|h|0||0||22.7889996|2.56800008|9.888|2.303|0.065|22.1669998|3.19390011|21.842|2.948|0.288|59.5289993|45.5349998|1095.869|25.687|2.471|-12.573|12.8059998|298.468|10.104|0.55|15.501|0.189|1|0.261|15.167|0.199|1|0.319|11.804||32|0.825|8.799||32|0.576|16.544|0.279|1|16.234|0.284|1|13.089||32|9.807||32|15.762|0.189|1|15.486|0.199|1|12.629||32|9.375||32|15.099|0.133|1|14.88|0.147|1|12.273||32|9.031||32|14.375|0.084|1|14.214|0.099|1|11.94||32|8.739||32|13.536|0.047|1|13.411|0.057|1|12.312|0.517|1|8.479||32|12.611|0.024|1|12.502|0.03|1|11.793|0.379|1|8.244||32|11.652|0.013|1|11.58|0.016|1|11.304|0.28|1|8.029||32|10.795|0.008|1|10.788|0.01|1|10.854|0.213|1|7.83||32|17.128|0.816|0.166|2.505|22|1|55274.89041135|55276.94144233|55275.92420909|16.043|0.752|0.153|1.71899998|18|0|55274.89041135|55276.94144233|55275.92420909|13.263|1.861|0.38|4.75299978|14|0|55274.89041135|55276.94144233|55275.92420909||||3.04399991|8|0|55274.89041135|55276.94144233|55275.92420909|18|-12|-13|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005000|1|-0.001915808957449|-0.0007811170453757|-0.99999785976381|121000000|
+J235927.53-895253.1|359.8647296|-89.881439|0.5812|0.5407|0.1286|302.9619023|-27.2436779|270.2980524|-66.560146|2048.728|662.431|89401241005057|0000m894_ab41-005057|0000m894_ab41|5057|16.679|0.091|11.9|0.884500027|17.078||0.7|1.35899997|12.628||1.2|0.787599981|9.538||0.0|1.06099999|1.02199996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|AUUU|1|0000|6|22|0|22|0|21|0|21|22.68|22.549|21.654|21.89|0.0|0.0|0.0|0.0|0||0||0||0||33.7470016|2.83089995|9.27|2.728|0.082|2.37540007|3.46499991|21.753|3.478|0.111|53.9199982|43.4869995|1100.126|24.138|0.0|0.0379730016|12.1120005|298.695|9.567|0.304|16.283|0.154|0|0.261|16.678|0.489|0|0.319|12.445||32|0.825|8.572||32|0.576|16.977|0.165|0|16.773||32|13.63||32|9.583||32|16.544|0.154|0|16.997|0.489|0|13.27||32|9.148||32|16.352|0.167|0|16.67|0.471|0|12.981||32|8.802||32|16.175|0.176|1|16.355|0.435|1|12.75||32|8.509||32|15.874|0.161|1|15.864|0.334|1|12.546||32|8.248||32|15.384|0.121|1|15.225|0.22|1|12.365||32|8.013||32|14.723|0.077|1|14.51|0.133|1|12.103||32|7.797||32|13.895|0.042|1|13.732|0.075|1|11.812||32|7.598||32|16.705|0.378|0.081|1.517|21|0|55275.55205887|55277.33835439|55276.382076|17.926|3.742|0.798|2.60700011|10|0|55275.55205887|55277.33835439|55276.382076|13.525|2.705|0.59|2.67799997|11|0|55275.55205887|55277.33835439|55276.37119303||||2.38199997|11|0|55275.55205887|55277.33835439|55276.37119303|2|-21|-66|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005057|1|0.0020692728241997|-0.0000048853840921|-0.999997859040764|131000000|
+J173645.89-895252.7|264.1912438|-89.881329|0.244|0.2657|-0.0225|303.0581977|-27.0901148|269.9699488|-66.4426444|1922.498|636.25|2403089401241005189|2403m894_ab41-005189|2403m894_ab41|5189|15.751|0.047|23.2|0.917699993|15.995|0.142|7.7|1.00399995|13.059||-2.5|1.00199997|9.426||0.2|1.00100005|0.978299975|1|0|0.0|0.0|0.0|0.001|0000|hh00|0|1nnn|ABUU|3|0000|25|25|3|24|0|24|0|24|24.689|24.611|23.959|23.886|0.0|0.0|0.0|0.0|8|h|8|h|0||0||79.3679962|3.42569995|9.316|2.467|0.023|25.2350006|3.29259992|21.773|3.207|0.038|-116.639999|47.368|1095.613|25.522|3.107|2.12910008|12.3789997|298.867|9.86|0.502|15.347|0.059|0|0.261|15.447|0.206|0|0.319|12.854||32|0.825|8.659||32|0.576|16.113|0.067|0|16.377|0.259|0|14.047||32|10.229||32|15.608|0.059|0|15.766|0.206|0|13.679||32|9.235||32|15.257|0.055|1|15.294|0.174|1|13.394||32|8.886||32|14.917|0.05|1|14.855|0.144|1|13.159||32|8.59||32|14.59|0.044|1|14.464|0.121|1|12.963||32|8.329||32|14.298|0.04|1|14.141|0.106|1|12.783||32|8.092||32|14.038|0.037|1|13.865|0.096|1|12.616||32|7.875||32|13.793|0.034|1|13.62|0.088|1|12.466||32|7.675||32|15.781|0.162|0.032|0.84|24|0|55275.02271543|55277.20605032|55276.1183711|16.006|0.877|0.179|4.0710001|19|0|55275.02271543|55277.20605032|55276.09510711||||2.648|7|0|55275.02271543|55277.20605032|55276.09786079|10.923|9.573|1.954|4.81799984|13|0|55275.02271543|55277.20605032|55276.09786079|52|6|41|2|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005189|1|-0.0002096225062161|-0.0020605629000003|-0.99999785506717|121000000|
+J094833.69-895252.7|147.1403788|-89.8813062|0.3225|0.2959|-0.0717|302.836507|-27.0452549|269.7486991|-66.6249094|1907.137|629.021|1201089401241004593|1201m894_ab41-004593|1201m894_ab41|4593|15.951|0.055|19.6|0.9199|16.138|0.178|6.1|0.995100021|12.787||0.6|0.947600007|9.568||-0.7|0.975099981|0.956700027|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|19|23|3|23|0|23|0|23|23.395|23.709|22.849|22.676|0.0|0.0|0.0|0.0|0||0||0||0||66.0159988|3.37470007|9.334|2.82|0.054|22.1200008|3.62879992|21.87|3.344|0.131|27.2549992|47.2249985|1097.371|25.778|4.419|-8.21370029|11.7989998|297.774|9.786|1.162|15.856|0.084|0|0.261|15.972|0.266|0|0.319|11.973||32|0.825|8.735||32|0.576|16.47|0.084|0|16.653|0.268|0|13.257||32|9.747||32|16.117|0.084|0|16.291|0.266|0|12.798||32|9.311||32|16.003|0.097|1|16.143|0.299|1|12.418||32|8.967||32|15.975|0.116|1|15.977|0.317|1|12.115||32|8.674||32|15.952|0.138|1|15.823|0.333|1|11.865||32|8.412||32|15.895|0.155|1|15.78|0.378|1|11.674||32|8.177||32|15.823|0.168|1|15.883|0.483|1|11.563||32|7.961||32|15.766|0.183|1|15.217||32|11.494||32|7.761||32|15.982|0.241|0.05|1.169|22|1|55274.89041135|55276.94144233|55275.86561452|16.127|1.019|0.213|3.55299997|18|0|55274.89041135|55276.94144233|55275.86561452|13.697|4.976|1.037|5.44199991|10|0|55274.89041135|55276.94144233|55275.86561452||||2.7579999|10|0|55274.89041135|55276.94144233|55275.86561452|27|-27|-28|1|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004593|1|-0.0017401458873803|0.001124012048399|-0.999997854242301|111000000|
+J135056.96-895252.5|207.7373623|-89.8812591|0.2945|0.2908|0.0846|302.9661375|-27.0133921|269.7363787|-66.5052228|1737.405|365.312|1201089401241004612|1201m894_ab41-004612|1201m894_ab41|4612|15.99|0.053|20.3|1.41299999|15.725|0.111|9.8|1.00399995|13.033||-0.8|0.935299993|9.562||-0.7|0.957400024|1.074|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|ABUU|3|0000|19|24|7|24|1|24|0|24|23.799|23.79|23.851|23.817|0.0|0.0|0.0|0.0|8|h|0||0||0||63.6650009|3.13120008|10.141|2.405|0.057|32.3660011|3.31739998|21.888|2.96|0.044|-40.4749985|48.5209999|1097.208|26.008|1.857|-8.43089962|11.8620005|297.894|9.659|0.374|15.458|0.192|1|0.261|15.273|0.185|1|0.319|12.1||32|0.825|8.73||32|0.576|16.453|0.27|1|16.373|0.272|1|13.372||32|9.866||32|15.719|0.192|1|15.592|0.185|1|12.925||32|9.306||32|14.903|0.117|1|14.812|0.117|1|12.573||32|8.831||32|14.004|0.064|1|13.996|0.069|1|12.271||32|8.401||32|13.253|0.039|1|13.319|0.045|1|11.995||32|8.77|0.524|17|12.789|0.03|1|12.882|0.035|1|11.755||32|8.491|0.49|17|12.572|0.029|1|12.651|0.033|1|11.529||32|8.268|0.475|17|12.492|0.031|1|12.543|0.035|1|11.3||32|8.016|0.442|17|15.987|0.305|0.062|1.234|23|1|55274.89041135|55276.94144233|55275.92420909|15.723|0.881|0.18|2.96000004|20|2|55274.89041135|55276.94144233|55275.92420909||||4.1079998|8|0|55274.89041135|55276.94144233|55275.92420909||||3.24099994|10|0|55274.89041135|55276.94144233|55275.92420909|-17|-22|95|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004612|1|-0.0018342773696943|-0.0009645434901829|-0.999997852538888|121000000|
+J104007.14-895252.3|160.0297739|-89.8812052|0.2692|0.2488|-0.0281|302.8596157|-27.0283163|269.7188535|-66.6010297|2155.635|643.817|1802089401241004213|1802m894_ab41-004213|1802m894_ab41|4213|15.716|0.047|23.1|1.57099998|15.679|0.113|9.6|0.966499984|12.74|0.426|2.6|0.986299992|9.425||0.1|1.028|1.13399994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|3nnn|ABCU|7|0000|19|21|3|21|1|21|0|21|22.447|22.615|22.395|22.242|0.0|0.0|0.0|0.0|0||0||0||0||81.9509964|3.54979992|9.46|2.76|0.173|33.75|3.52559996|21.852|3.434|0.112|127.080002|49.8250008|1095.442|25.679|0.158|1.42569995|12.7449999|298.188|9.923|0.653|15.21|0.117|1|0.261|15.188|0.21|1|0.319|11.815||32|0.825|8.52||32|0.576|16.055|0.144|1|16.13|0.269|1|13.104||32|9.599||32|15.471|0.117|1|15.507|0.21|1|12.64||32|9.096||32|15.108|0.109|1|15.124|0.192|1|12.392||32|8.696||32|14.842|0.106|1|14.847|0.185|1|12.252||32|8.371||32|14.673|0.109|1|14.674|0.19|1|12.143||32|8.087||32|14.585|0.118|1|14.576|0.205|1|12.028||32|7.846||32|14.514|0.129|1|14.491|0.221|1|11.958||32|7.632||32|14.428|0.137|1|14.366|0.226|1|11.943||32|7.435||32|15.733|0.302|0.066|1.312|20|2|55274.89041135|55276.94144233|55275.90177109|15.691|0.636|0.139|3.81900001|20|1|55274.89041135|55276.94144233|55275.90177109|12.257|1.222|0.267|3.99699998|14|0|55274.89041135|55276.94144233|55275.90177109||||4.11299992|9|0|55274.89041135|55276.94144233|55275.90177109|48|13|-5|2|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004213|1|-0.0019486890854546|0.000708118248488|-0.999997850587387|111000000|
+J063957.61-895251.9|99.9900535|-89.8810933|1.0076|1.1112|-0.2312|302.7984719|-27.1340458|269.9478971|-66.6778041|1848.317|590.869|600089401241005006|0600m894_ab41-005006|0600m894_ab41|5006|17.746|0.222|4.9|0.911300004|16.982||0.8|1.074|12.066|0.195|5.6|1.13999999|9.369||0.5|1.03900003|1.03699994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|1|21|0|21|1|20|0|20|22.256|22.607|22.003|22.427|0.0|0.0|0.0|0.0|0||0||0||0||12.6400003|2.58170009|9.415|2.792|0.041|2.78590012|3.69059992|21.84|3.52|0.107|236.479996|42.4889984|1095.91|21.705|2.345|5.24900007|11.54|298.052|9.268|0.885|16.128|0.111|0|0.261|15.929||32|0.319|12.133||32|0.825|8.603||32|0.576|17.17|0.165|0|16.584||32|13.315||32|9.615||32|16.389|0.111|0|16.248||32|12.958||32|9.179||32|15.597|0.07|1|15.633||32|12.65||32|8.836||32|14.606|0.035|1|15.02|0.254|1|12.372||32|8.542||32|13.569|0.017|1|13.76|0.096|1|12.083||32|8.282||32|12.763|0.011|1|12.926|0.053|1|11.767||32|8.046||32|12.261|0.009|1|12.424|0.039|1|11.484||32|7.831||32|12.008|0.008|1|12.164|0.035|1|11.244||32|7.632||32|17.961|1.129|0.246|2.567|15|0|55275.02271543|55276.94144233|55276.04040565|17.865|5.485|1.197|2.99099994|10|0|55275.02271543|55276.94144233|55276.04040565|12.077|1.107|0.248|2.54399991|17|0|55275.02271543|55276.94144233|55276.011895|11.162|7.324|1.638|4.64599991|10|0|55275.02271543|55276.94144233|55276.011895|-2|27|9|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005006|1|-0.0003600192355222|0.002043845271776|-0.999997846539009|111000000|
+J020515.76-895251.9|31.3157077|-89.8810909|0.0834|0.0876|-0.0072|302.8895759|-27.2409431|270.2560197|-66.622304|2197.874|624.904|600089401241003920|0600m894_ab41-003920|0600m894_ab41|3920|12.664|0.024|45.8|0.938399971|12.757|0.025|43.7|0.94569999|11.698|0.131|8.3|1.03100002|9.225|0.374|2.9|0.957499981|0.964999974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABC|15|0000|24|24|24|24|2|23|0|23|23.665|23.795|22.96|22.754|0.0|0.0|0.0|0.0|0||0||0||0||1362.19995|29.7229996|9.246|2.832|0.138|498.089996|11.3979998|21.723|3.341|0.241|331.609985|39.8909988|1098.551|22.307|0.88|32.3540001|11.1520004|298.242|9.247|0.601|12.648|0.008|0|0.261|12.757|0.014|0|0.319|12.031|0.37|0|0.825|8.633||32|0.576|13.276|0.008|0|13.51|0.016|0|13.628|0.538|0|9.616||32|12.909|0.008|0|13.076|0.014|0|12.856|0.37|0|9.209||32|12.773|0.008|1|12.907|0.015|1|12.37|0.305|0|8.866||32|12.708|0.008|1|12.833|0.017|1|12.002|0.269|1|8.55||32|12.669|0.009|1|12.794|0.019|1|11.705|0.247|1|8.304||32|12.643|0.01|1|12.771|0.022|1|11.467|0.235|1|8.07||32|12.624|0.011|1|12.754|0.025|1|11.261|0.226|1|7.859||32|12.609|0.012|1|12.731|0.028|1|11.088|0.221|1|7.665||32|12.664|0.038|0.008|0.158|23|0|55275.28745078|55277.33835439|55276.3515125|12.753|0.055|0.011|0.187000006|23|0|55275.28745078|55277.33835439|55276.3515125|11.682|0.534|0.111|2.90499997|22|0|55275.28745078|55277.33835439|55276.34024702|9.138|1.483|0.309|3.06999993|17|0|55275.28745078|55277.33835439|55276.34024702|0|16|19|0|0|0||||||||||||||||||||||||||1161273384|0.119|0.0|1|13.61|0.028|12.857|0.03|12.717|0.033|600089401241003920|1|0.0017730080661815|0.0010786716721843|-0.999997846452592|101000000|
+J183601.26-895250.9|279.0052723|-89.8808218|1.1213|1.2205|-0.2532|303.0655134|-27.1200823|270.0466755|-66.4429927|2162.135|642.429|3004089401241005711|3004m894_ab41-005711|3004m894_ab41|5711|17.678|0.192|5.6|0.962899983|17.471||-0.1|1.15499997|13.075||-1.5|1.08200002|9.01||1.3|0.883000016|1.01900005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|24|0|24|0|23|0|23|24.469|24.666|23.945|23.469|0.0|0.0|0.0|0.0|0||0||0||0||13.4510002|2.38150001|9.342|2.607|0.0|-0.452280015|3.23920012|21.62|3.346|0.087|-69.5110016|46.6689987|1097.598|25.409|2.469|15.6859999|11.8809996|299.24|9.579|1.322|17.412|0.374|0|0.261|16.761||32|0.319|12.031||32|0.825|8.488||32|0.576|18.078|0.391|0|17.303||32|13.22||32|9.464||32|17.673|0.374|0|17.08||32|12.856||32|9.064||32|17.491|0.41|0|16.937||32|12.573||32|9.535||32|17.329|0.437|1|16.703||32|12.34||32|8.72||32|16.973|0.379|1|16.417||32|12.138||32|8.099||32|16.347|0.252|1|15.953||32|11.96||32|7.792||32|15.605|0.148|1|15.424||32|11.794||32|7.56||32|14.895|0.089|1|15.332|0.294|1|11.642||32|7.419||32|17.889|1.195|0.244|3.939|20|1|55275.28732341|55277.20605032|55276.16402342||||3.25300002|9|0|55275.28732341|55277.20605032|55276.16402342||||1.65199995|8|0|55275.28732341|55277.20605032|55276.14460624|9.538|2.559|0.534|3.95799994|12|0|55275.28732341|55277.20605032|55276.14460624|26|-72|-63|0|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005711|1|0.0003255806527221|-0.0020544117911302|-0.999997836692376|131000000|
+J194212.71-895250.2|295.5529924|-89.8806348|1.1472|1.1598|-0.3782|303.0627886|-27.1543245|270.1288797|-66.4529661|2074.738|663.395|3004089401241005603|3004m894_ab41-005603|3004m894_ab41|5603|17.632|0.188|5.8|1.04700005|17.408||-0.5|0.929899991|13.114||-0.4|1.03499997|8.941||1.6|0.948099971|0.987699986|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|24|0|24|0|23|0|23|24.678|24.519|23.939|24.43|0.0|0.0|0.0|0.0|0||0||0||0||14.0299997|2.42600012|9.324|2.745|0.0|-1.61090004|3.43519998|21.762|3.427|0.043|-19.0529995|45.0089989|1097.576|25.346|6.057|18.6599998|11.691|298.789|9.644|0.145|16.997|0.363|1|0.261|16.301||32|0.319|12.704||32|0.825|9.061||32|0.576|17.781|0.421|1|17.019||32|13.89||32|10.204||32|17.258|0.363|1|16.62||32|13.529||32|9.637||32|16.871|0.329|1|16.303||32|13.246||32|9.249||32|16.492|0.287|1|15.978||32|13.014||32|8.875||32|16.06|0.233|1|15.633||32|12.808||32|9.027||32|15.513|0.166|1|15.966|0.512|1|12.627||32|8.423||32|14.914|0.111|1|15.324|0.329|1|12.463||32|8.206||32|14.391|0.079|1|14.768|0.227|1|12.312||32|8.007||32|17.642|1.103|0.225|2.92|19|0|55275.28732341|55277.33835439|55276.21916071|19.577|||3.15199995|9|0|55275.28732341|55277.33835439|55276.21916071|13.948|6.175|1.288|0.995000005|9|0|55275.28732341|55277.33835439|55276.2021408|9.457|1.577|0.329|2.35599995|15|0|55275.28732341|55277.33835439|55276.2021408|55|-31|65|1|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005603|1|0.0008986286660641|-0.0018795384744635|-0.999997829898467|131000000|
+J082409.96-895250.2|126.0415198|-89.8806221|0.5645|0.5496|-0.16|302.8086639|-27.0811091|269.8227339|-66.657137|2016.112|662.941|1201089401241005003|1201m894_ab41-005003|1201m894_ab41|5003|16.772|0.092|11.8|0.958199978|16.848||1.4|0.952000022|12.553|0.307|3.5|1.18299997|9.55||0.0|1.14300001|1.05299997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|AUBU|5|0000|7|23|0|23|1|22|1|22|22.741|22.321|21.737|21.411|0.0|0.0|0.0|0.0|0||0||0||0||30.9899998|2.63529992|9.353|2.687|0.097|4.65329981|3.42429996|21.811|3.285|0.085|151.0|42.6529999|1096.344|23.47|3.694|-0.403129995|11.9949999|298.201|9.76|1.614|17.003|0.374|0|0.261|15.978||32|0.319|12.434||32|0.825|8.255||32|0.576|17.375|0.298|0|16.657||32|13.693||32|9.536||32|17.264|0.374|0|16.297||32|13.259||32|8.831||32|16.749||32|16.026||32|12.934||32|8.925|0.405|17|16.892||32|15.798||32|12.613||32|8.41|0.321|17|18.275||32|15.594||32|12.311||32|8.063|0.289|17|17.319||32|15.414||32|12.071||32|7.837|0.285|17|16.125||32|15.248||32|11.851||32|7.661|0.289|17|15.536|0.229|1|15.099||32|11.629||32|7.537|0.303|17|16.77|0.466|0.097|1.957|22|0|55274.89041135|55276.94144233|55275.9260225|17.447|2.553|0.532|3.66000009|13|0|55274.89041135|55276.94144233|55275.9260225|12.616|1.563|0.333|4.26599979|13|0|55274.89041135|55276.94144233|55275.8949045||||1.88100004|7|0|55274.89041135|55276.94144233|55275.8949045|-17|24|-55|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005003|1|-0.0012258926060625|0.0016847277100164|-0.999997829437575|111000000|
+J181217.22-895249.9|273.0717567|-89.880553|0.8148|0.8763|-0.1821|303.0641502|-27.1077887|270.0160144|-66.4414327|2191.868|629.701|3004089401241005276|3004m894_ab41-005276|3004m894_ab41|5276|17.263|0.135|8.0|0.787999988|17.485||-0.1|0.870400012|12.832||0.6|1.01199996|9.302||0.2|0.968900025|0.905799985|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|24|0|24|0|23|0|23|23.801|23.833|22.941|22.885|0.0|0.0|0.0|0.0|0||0||0||0||19.7220001|2.46079993|9.419|2.561|0.0|-0.421959996|3.19729996|21.738|3.292|0.0|28.4389992|44.144001|1096.568|25.367|0.0|3.13649988|13.5089998|299.829|10.081|0.976|16.89|0.38|1|0.261|16.38||32|0.319|11.838||32|0.825|8.66||32|0.576|17.708|0.456|1|17.056||32|13.193||32|9.488||32|17.151|0.38|1|16.699||32|12.663||32|9.236||32|16.747|0.339|1|16.416||32|12.244||32|8.868||32|16.42|0.312|1|16.182||32|12.625|0.511|1|8.574||32|16.175|0.299|1|15.982||32|12.282|0.448|1|8.208||32|15.967|0.291|1|15.801||32|12.026|0.417|1|7.857||32|15.734|0.273|1|15.637||32|11.828|0.405|1|7.567||32|15.47|0.246|1|15.484||32|11.66|0.399|1|7.33||32|17.304|0.732|0.149|3.256|22|0|55275.28732341|55277.20605032|55276.16402342|19.294|||2.30299997|10|0|55275.28732341|55277.20605032|55276.16402342|13.893|4.934|1.029|5.23699999|11|0|55275.28732341|55277.20605032|55276.14460624|10.19|4.914|1.025|3.29299998|11|0|55275.28732341|55277.20605032|55276.14460624|-1|-10|43|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005276|1|0.0001117141636197|-0.0020817457621302|-0.999997826924903|131000000|
+J160304.52-895249.7|240.7688487|-89.88048|0.1779|0.1891|0.03|303.0315022|-27.0480064|269.853884|-66.4563407|2045.807|664.935|2403089401241004607|2403m894_ab41-004607|2403m894_ab41|4607|15.22|0.037|29.3|0.921500027|14.876|0.064|17.0|0.986299992|12.119|0.225|4.8|1.08200002|9.499||0.0|0.959800005|0.984099984|1|0|0.0|0.0|0.0|0.0|0000|Dd00|0|n1nn|AABU|7|0000|22|22|19|22|2|21|0|21|22.546|22.682|21.534|22.222|0.0|0.0|0.0|0.0|137|Dh|1|d|0||0||129.449997|4.41909981|9.435|2.35|0.095|70.7529984|4.1638999|21.791|3.169|0.079|225.210007|46.6990013|1092.868|24.274|0.884|-0.310250014|12.5679998|298.687|9.824|0.276|14.833|0.045|1|0.261|14.647|0.11|1|0.319|12.383|0.505|1|0.825|8.529||32|0.576|15.604|0.052|1|15.528|0.133|1|12.98||32|9.708||32|15.094|0.045|1|14.966|0.11|1|13.208|0.505|1|9.105||32|14.79|0.044|1|14.642|0.105|1|12.799|0.446|1|8.6||32|14.527|0.042|1|14.371|0.101|1|12.521|0.427|1|8.25||32|14.233|0.039|1|14.078|0.093|1|12.252|0.402|1|8.052||32|13.878|0.033|1|13.742|0.081|1|11.982|0.37|1|7.911||32|13.447|0.026|1|13.332|0.064|1|11.713|0.335|1|7.774||32|12.901|0.019|1|12.8|0.046|1|11.421|0.295|1|7.652||32|15.227|0.143|0.031|0.649|21|0|55275.02271543|55276.94144233|55275.97607081|14.85|0.265|0.057|1.153|21|0|55275.02271543|55276.94144233|55275.97607081|11.927|1.107|0.242|3.43899989|15|0|55275.02271543|55276.94144233|55275.94585425|10.973|||3.5079999|9|0|55275.02271543|55276.94144233|55275.94585425|-20|-32|70|0|1|1|||||||||||||||||||||||||||||0|||||||2403089401241004607|1|-0.0010186727122339|-0.0018203754518648|-0.999997824267193|121000000|
+J231353.71-895248.2|348.4738142|-89.880065|0.2227|0.2063|0.0158|302.9876098|-27.2373806|270.2951455|-66.5364663|2110.739|659.697|89401241004516|0000m894_ab41-004516|0000m894_ab41|4516|15.391|0.041|26.2|0.874100029|15.493|0.104|10.4|0.827499986|12.709|0.33|3.3|1.11000001|9.056||1.3|0.991400003|0.948599994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AABU|7|0000|21|24|6|24|0|23|1|23|23.52|22.888|22.967|22.814|0.0|0.0|0.0|0.0|0||0||0||0||110.57|4.21460009|9.251|2.829|0.013|40.0620003|3.83500004|21.748|3.482|0.0|130.690002|39.7270012|1098.449|23.779|0.736|14.941|11.4280005|298.352|9.406|0.753|15.267|0.053|1|0.261|15.256|0.138|1|0.319|12.046||32|0.825|8.605||32|0.576|15.938|0.056|1|16.045|0.152|1|13.41||32|9.771||32|15.528|0.053|1|15.575|0.138|1|12.871||32|9.181||32|15.321|0.056|1|15.376|0.149|1|12.404||32|8.714||32|15.16|0.06|1|15.243|0.162|1|12.019||32|8.397||32|14.98|0.061|1|15.053|0.164|1|12.403|0.489|1|8.102||32|14.784|0.06|1|14.818|0.155|1|12.08|0.429|1|7.826||32|14.618|0.06|1|14.624|0.151|1|11.819|0.393|1|7.586||32|14.469|0.06|1|14.487|0.153|1|11.617|0.375|1|7.381||32|15.376|0.176|0.036|0.853|23|0|55275.55205887|55277.33835439|55276.41490023|15.479|0.482|0.098|1.60399997|21|0|55275.55205887|55277.33835439|55276.41490023|12.694|1.824|0.38|6.14599991|15|0|55275.55205887|55277.33835439|55276.40639074|10.281|4.804|1.002|3.20900011|11|0|55275.55205887|55277.33835439|55276.40639074|-45|-32|39|1|1|1||||||||||||||||||||||||||1201681030|0.203|-57.8|1|16.406|0.14|15.608|0.175|14.928|0.178|89401241004516|1|0.002051044555932|-0.0004182660088629|-0.999997809132488|131000000|
+J002713.27-895247.5|6.8053097|-89.8798665|1.14|1.0601|0.2831|302.9461678|-27.2476191|270.3000539|-66.5746576|2010.724|664.333|89401241005580|0000m894_ab41-005580|0000m894_ab41|5580|17.555|0.187|5.8|0.889500022|17.397||-0.1|0.979900002|12.836|0.436|2.5|0.801900029|8.933||1.4|1.02600002|0.921299994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|3|21|0|21|1|20|0|20|20.795|20.702|19.968|19.932|0.0|0.0|0.0|0.0|0||0||0||0||15.0719995|2.59240007|9.268|2.648|0.171|-0.370299995|3.4684|21.749|3.446|0.067|116.290001|46.7029991|1100.938|24.381|3.377|17.7919998|12.2799997|298.263|9.305|1.837|16.788|0.161|0|0.261|15.998||32|0.319|12.263||32|0.825|8.893||32|0.576|17.559|0.184|0|16.764||32|13.527||32|9.904||32|17.049|0.161|0|16.317||32|13.088||32|9.469||32|16.704|0.151|1|15.999||32|12.761||32|9.127||32|16.319|0.13|1|15.695||32|12.52||32|8.837||32|15.84|0.101|1|15.345||32|12.32||32|8.578||32|15.242|0.068|1|15.409|0.34|1|12.108||32|8.346||32|14.479|0.04|1|14.567|0.183|1|11.82||32|8.131||32|13.621|0.021|1|13.696|0.094|1|11.516||32|7.933||32|17.54|0.964|0.21|2.495|17|0|55275.55205887|55277.33835439|55276.39639986|19.661|||3.39100003|11|0|55275.55205887|55277.33835439|55276.39639986|12.965|1.776|0.397|5.42600012|12|1|55275.55205887|55277.33835439|55276.38568892|9.676|2.89|0.646|2.43300009|10|0|55275.55205887|55277.33835439|55276.38568892|1|17|-25|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005580|1|0.0020819511754557|0.0002484533315467|-0.999997801872707|101000000|
+J211456.13-895247.3|318.7339145|-89.8798068|1.0568|0.9799|-0.3088|303.0414167|-27.1985484|270.2263981|-66.4812709|1949.332|650.84|3004089401241005312|3004m894_ab41-005312|3004m894_ab41|5312|17.392|0.164|6.6|0.868099988|16.674||1.9|0.909300029|13.044||0.1|0.984399974|9.115||0.9|0.962300003|0.925100029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|22|0|22|0|21|0|21|22.635|22.772|22.698|22.685|0.0|0.0|0.0|0.0|0||0||0||0||17.5039997|2.65109992|9.17|2.935|0.0|6.61229992|3.44659996|21.746|3.536|0.164|5.05870008|45.4700012|1098.488|25.085|0.971|11.0640001|12.3690004|298.574|9.659|1.441|16.31|0.134|1|0.261|16.123|0.306|1|0.319|11.818||32|0.825|8.552||32|0.576|17.185|0.17|1|17.168|0.43|1|13.325||32|9.547||32|16.571|0.134|1|16.442|0.306|1|12.643||32|9.128||32|16.072|0.11|1|15.848|0.23|1|12.336||32|8.797||32|15.563|0.086|1|15.302|0.173|1|12.121||32|8.507||32|15.058|0.065|1|14.813|0.132|1|11.96||32|8.234||32|14.64|0.052|1|14.415|0.108|1|13.043||32|7.923||32|14.349|0.046|1|14.128|0.096|1|11.678||32|7.651||32|14.152|0.045|1|13.925|0.092|1|11.527||32|7.444||32|17.335|0.748|0.16|2.36|19|0|55275.28745078|55277.33835439|55276.34597572|17.53|3.798|0.81|2.94400001|14|0|55275.28745078|55277.33835439|55276.34597572|14.658|8.381|1.829|2.7750001|10|0|55275.28745078|55277.33835439|55276.33337368|9.746|3.13|0.683|3.7190001|9|0|55275.28745078|55277.33835439|55276.33337368|-23|-39|-17|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005312|1|0.0015767946385253|-0.0013835951135548|-0.999997799689194|131000000|
+J065248.09-895247.1|103.2004094|-89.8797641|1.0587|1.1752|-0.2939|302.7968211|-27.1273763|269.9306475|-66.6777526|2139.961|653.09|1201089401241005375|1201m894_ab41-005375|1201m894_ab41|5375|17.939|0.259|4.2|0.899800003|17.237|0.476|2.3|0.841199994|12.085|0.202|5.4|1.09000003|9.529||-0.3|0.935000002|0.936399996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCBU|7|0000|1|21|0|21|3|20|0|20|21.687|22.619|21.195|22.226|0.0|0.0|0.0|0.0|0||0||0||0||10.5819998|2.52659988|9.406|2.761|0.066|8.03649998|3.5223999|21.833|3.415|0.138|232.190002|43.2029991|1097.353|22.812|3.083|-3.91930008|12.2340002|298.472|9.735|0.713|17.302|0.457|1|0.261|15.867||32|0.319|12.112||32|0.825|8.456||32|0.576|18.027|0.508|0|16.501||32|13.396||32|9.466||32|17.563|0.457|1|16.186||32|12.937||32|9.032||32|17.261|0.446|1|16.165||32|12.587||32|8.687||32|16.984|0.426|1|16.104||32|12.297||32|8.395||32|16.652|0.379|1|15.9||32|12.039||32|8.136||32|16.31|0.326|1|15.721||32|11.836||32|7.9||32|15.906|0.262|1|15.555||32|11.699||32|7.685||32|15.328|0.177|1|15.222||32|11.608||32|7.485||32|18.196|1.218|0.266|2.751|14|0|55275.02271543|55276.94144233|55276.04040565|17.037|1.923|0.42|1.96200001|12|0|55275.02271543|55276.94144233|55276.04040565|12.001|1.25|0.28|3.82200003|14|2|55275.02271543|55276.94144233|55276.011895||||2.00699997|7|0|55275.02271543|55276.94144233|55276.011895|27|-25|-50|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005375|1|-0.0004792115641037|0.002043063260092|-0.999997798121972|111000000|
+J213241.69-895247.0|323.1737146|-89.8797396|0.2971|0.2822|-0.0651|303.0350223|-27.2059247|270.2413016|-66.4884399|1926.428|642.468|3004089401241004543|3004m894_ab41-004543|3004m894_ab41|4543|15.795|0.052|20.7|0.925999999|15.971|0.146|7.4|0.942600012|13.118||-1.4|0.986999989|9.522||-0.8|1.02600002|0.967199981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|17|23|3|23|0|22|0|22|23.619|23.868|23.528|23.594|0.0|0.0|0.0|0.0|0||0||0||0||76.2269974|3.6782999|9.26|2.909|0.116|25.7940006|3.4691|21.727|3.367|0.05|-63.0429993|44.8370018|1099.307|24.818|1.645|-10.1960001|12.309|298.72|9.469|0.986|15.705|0.112|1|0.261|15.598|0.166|1|0.319|11.782||32|0.825|8.854||32|0.576|16.326|0.113|0|16.384|0.183|0|12.968||32|9.868||32|15.966|0.112|1|15.917|0.166|1|12.607||32|9.43||32|15.754|0.119|1|15.612|0.16|1|12.335||32|9.08||32|15.485|0.115|1|15.298|0.148|1|12.099||32|8.789||32|15.175|0.104|1|14.983|0.133|1|11.899||32|8.527||32|14.932|0.099|1|14.731|0.125|1|11.713||32|8.291||32|14.82|0.103|1|14.54|0.122|1|11.55||32|8.076||32|14.797|0.116|1|14.376|0.12|1|11.399||32|7.877||32|15.806|0.188|0.039|0.923|22|0|55275.28745078|55277.33835439|55276.35460852|15.964|0.825|0.172|2.48200011|20|1|55275.28745078|55277.33835439|55276.35460852||||5.39799976|4|0|55275.28745078|55277.33835439|55276.3429717||||3.14599991|8|0|55275.28745078|55277.33835439|55276.3429717|19|-87|11|0|1|0||||||||||||||||||||||||||996577069|0.711|151.4|1|16.253|0.109|15.545|0.137|15.486||3004089401241004543|1|0.0016801091943981|-0.0012580848146532|-0.999997797225421|131000000|
+J074627.19-895247.0|116.6133092|-89.8797297|0.3859|0.3863|-0.1285|302.8006877|-27.099501|269.8639657|-66.6681779|2067.621|666.297|1201089401241004721|1201m894_ab41-004721|1201m894_ab41|4721|16.259|0.065|16.6|0.992799997|16.683|0.298|3.6|0.872799993|12.554||1.5|1.06099999|9.614||-0.3|1.04200006|0.990199983|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|15|22|1|21|1|21|0|21|21.803|21.693|21.01|21.338|0.0|0.0|0.0|0.0|0||0||0||0||49.6930008|2.98679996|9.432|2.741|0.097|13.3879995|3.67490005|21.859|3.337|0.015|65.2990036|42.7630005|1096.525|23.146|3.76|-3.62210011|11.3100004|297.931|9.493|2.174|16.212|0.173|1|0.261|16.281|0.347|1|0.319|12.578||32|0.825|8.535||32|0.576|16.782|0.165|0|17.045|0.374|0|13.769||32|9.547||32|16.473|0.173|1|16.6|0.347|1|13.403||32|9.111||32|16.394|0.208|1|16.516|0.413|1|13.131||32|8.766||32|16.368|0.252|1|15.841||32|12.899||32|8.472||32|16.31|0.289|1|15.731||32|12.696||32|8.212||32|16.143|0.293|1|15.497||32|12.516||32|7.978||32|15.854|0.262|1|15.825|0.453|1|12.353||32|7.762||32|15.486|0.216|1|15.303|0.323|1|12.202||32|7.563||32|16.267|0.274|0.058|1.242|21|0|55275.02271543|55276.94144233|55275.97309574|16.67|1.662|0.363|2.10100007|13|0|55275.02271543|55276.94144233|55275.97424453|13.472|3.972|0.867|4.30000019|10|0|55275.02271543|55276.94144233|55275.94273751||||3.95499992|7|0|55275.02271543|55276.94144233|55275.94273751|-17|-33|6|0|0|0||||||||||||||||||||||||||728289841|0.314|-16.5|1|16.616|0.151|16.334||16.677||1201089401241004721|1|-0.0009403324402236|0.0018767115103303|-0.999997796861978|111000000|
+J033044.19-895246.9|52.6841296|-89.8797215|0.284|0.2995|0.0709|302.8452915|-27.2205046|270.1840115|-66.6562596|2088.606|664.306|600089401241004336|0600m894_ab41-004336|0600m894_ab41|4336|16.004|0.053|20.4|0.954299986|16.027|0.147|7.4|0.934599996|12.089|0.188|5.8|0.997500002|9.427|0.44|2.5|1.00399995|0.969099998|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|ABBC|15|0000|21|24|1|24|2|23|0|23|24.716|24.644|23.915|23.748|0.0|0.0|0.0|0.0|137|Dh|137|Dh|0||0||62.8530006|3.08170009|9.343|2.634|0.222|24.4950008|3.3197|21.903|3.358|0.225|231.440002|40.0369987|1099.496|22.205|0.25|26.8570004|10.875|298.59|8.972|0.456|15.833|0.068|1|0.261|15.485|0.149|1|0.319|12.185||32|0.825|9.022||32|0.576|16.525|0.07|1|16.332|0.171|1|13.378||32|10.032||32|16.094|0.068|1|15.804|0.149|1|13.01||32|9.598||32|15.839|0.071|1|15.472|0.142|1|12.736||32|9.259||32|15.584|0.073|1|15.204|0.138|1|12.502||32|8.969||32|15.324|0.073|1|14.98|0.137|1|12.297||32|8.714||32|15.097|0.074|1|14.785|0.137|1|12.116||32|8.483||32|14.898|0.075|1|14.618|0.138|1|11.951||32|8.272||32|14.704|0.075|1|14.447|0.138|1|11.799||32|8.076||32|16.023|0.263|0.054|0.951|23|0|55275.28745078|55277.33835439|55276.29362153|16.15|0.81|0.165|3.78900003|20|0|55275.28745078|55277.33835439|55276.29362153|12.063|0.829|0.173|2.93899989|20|0|55275.28745078|55277.33835439|55276.27983905|9.406|1.832|0.382|2.546|15|0|55275.28745078|55277.33835439|55276.27983905|-9|31|17|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241004336|1|0.0012725858051986|0.0016695481047169|-0.99999779656482|101000000|
+J145532.39-895246.8|223.8849965|-89.8796729|0.3038|0.3151|0.089|303.001537|-27.0250264|269.7827097|-66.4771458|2137.382|654.108|2403089401241004780|2403m894_ab41-004780|2403m894_ab41|4780|15.965|0.054|20.0|0.992299974|16.156|0.181|6.0|0.965699971|12.74|0.441|2.5|1.03400004|9.465||-0.2|0.921700001|0.975300014|1|0|0.0|0.0|0.0|0.0|0000|d000|0|1nnn|ABCU|7|0000|18|21|0|21|1|20|0|20|22.343|22.397|21.933|22.147|0.0|0.0|0.0|0.0|9|dh|0||0||0||65.1740036|3.25230002|9.384|2.424|0.486|21.7490005|3.63450003|21.854|3.297|0.003|127.050003|51.5519981|1095.738|25.129|3.441|-2.09879994|12.9650002|298.314|9.828|2.223|16.22|0.227|0|0.261|16.206|0.298|0|0.319|11.881||32|0.825|8.687||32|0.576|16.798|0.219|0|16.901|0.303|0|13.069||32|9.698||32|16.481|0.227|0|16.525|0.298|0|12.706||32|9.263||32|16.431|0.281|1|16.317|0.321|1|12.505||32|8.92||32|16.413|0.344|1|15.943|0.283|1|12.4||32|8.627||32|16.212|0.343|1|15.412|0.209|1|12.201||32|8.368||32|15.726|0.259|1|14.865|0.149|1|12.022||32|8.134||32|15.082|0.167|1|14.373|0.11|1|11.859||32|7.919||32|14.481|0.11|1|13.955|0.086|1|11.706||32|7.721||32|15.969|0.287|0.063|1.297|20|1|55274.89041135|55276.94144233|55275.96791402|15.922|0.46|0.1|3.12299991|18|0|55274.89041135|55276.94144233|55275.96791402|12.555|1.859|0.416|5.57399988|15|0|55274.89041135|55276.94144233|55275.93577879|10.547|3.429|0.767|1.66400003|9|0|55274.89041135|55276.94144233|55275.93577879|24|4|-9|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004780|1|-0.0015136119113971|-0.0014558180766346|-0.999997794783923|121000000|
+J231949.46-895246.1|349.9561237|-89.8794967|0.8813|0.7852|0.0393|302.9846627|-27.2391497|270.2980446|-66.5394097|2103.019|662.682|89401241005265|0000m894_ab41-005265|0000m894_ab41|5265|17.271|0.15|7.2|0.868399978|17.249|0.468|2.3|0.945500016|12.396|0.248|4.4|1.01699996|9.366||0.5|1.08899999|0.976000011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCBU|7|0000|3|24|0|24|1|23|1|23|23.404|23.532|23.016|22.846|0.0|0.0|0.0|0.0|0||0||0||0||19.5750008|2.70210004|9.248|2.785|0.265|7.95079994|3.43059993|21.736|3.461|0.188|174.429993|39.9000015|1098.188|23.531|1.02|5.83799982|11.2840004|298.34|9.381|1.257|16.374|0.172|1|0.261|16.404|0.399|1|0.319|11.995||32|0.825|8.592||32|0.576|17.337|0.235|1|17.322|0.495|1|13.191||32|9.687||32|16.635|0.172|1|16.723|0.399|1|12.82||32|9.168||32|16.003|0.125|1|16.174|0.314|1|12.509||32|8.721||32|15.473|0.095|1|15.625|0.235|1|12.197||32|8.325||32|15.069|0.078|1|15.161|0.184|1|11.937||32|8.029||32|14.766|0.07|1|14.846|0.163|1|11.717||32|7.811||32|14.56|0.067|1|14.669|0.161|1|11.514||32|7.63||32|14.425|0.068|1|14.573|0.169|1|11.335||32|7.464||32|17.209|0.733|0.15|3.961|23|0|55275.55205887|55277.33835439|55276.41490023|17.205|1.806|0.369|2.81599998|16|0|55275.55205887|55277.33835439|55276.41490023|12.318|1.104|0.23|5.46799994|18|0|55275.55205887|55277.33835439|55276.40639074||||4.8579998|10|1|55275.55205887|55277.33835439|55276.40639074|11|4|23|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005265|1|0.0020709456846677|-0.0003667990299812|-0.999997788318776|131000000|
+J221845.13-895246.1|334.688083|-89.8794736|1.0105|0.9085|-0.2385|303.0156817|-27.2228852|270.2733412|-66.5089399|2182.911|637.284|89401241005974|0000m894_ab41-005974|0000m894_ab41|5974|17.378|0.154|7.1|0.950100005|16.988||1.2|0.92839998|13.131||0.3|1.046|9.188||0.7|1.01400006|0.981400013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|24|0|24|0|23|0|23|24.371|24.81|23.837|23.176|0.0|0.0|0.0|0.0|0||0||0||0||17.7269993|2.50900006|9.225|2.865|0.0|3.76209998|3.17670012|21.736|3.391|0.193|11.1269999|38.7519989|1098.907|23.944|0.533|8.4343996|12.5209999|298.116|9.586|0.299|16.832|0.275|0|0.261|16.219|0.346|0|0.319|12.956||32|0.825|8.549||32|0.576|17.489|0.284|0|17.234|0.47|0|14.03||32|9.725||32|17.093|0.275|0|16.538|0.346|0|13.781||32|9.125||32|16.943|0.311|0|16.107|0.304|0|13.156||32|8.576||32|16.785|0.333|0|15.783|0.279|0|12.717||32|8.704|0.405|1|16.358|0.27|1|15.429|0.242|1|12.251||32|8.167|0.306|1|15.717|0.177|1|14.981|0.19|1|12.351|0.372|1|7.751|0.253|1|15.001|0.107|1|14.455|0.136|1|11.771|0.254|1|7.465|0.232|1|14.27|0.063|1|13.894|0.094|1|11.346|0.198|1|7.267|0.227|1|17.527|0.848|0.173|2.493|20|0|55275.55205887|55277.33835439|55276.41490023|17.704|3.043|0.621|1.62600005|11|0|55275.55205887|55277.33835439|55276.41490023|14.945|||2.16300011|10|0|55275.55205887|55277.33835439|55276.40639074|10.306|5.773|1.204|2.48600006|13|0|55275.55205887|55277.33835439|55276.40639074|-37|-32|-8|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005974|1|0.0019016241443768|-0.000899377560899|-0.999997787470361|131000000|
+J055250.50-895245.4|88.210424|-89.8792955|0.1462|0.15|-0.0159|302.8006643|-27.1586213|270.0095226|-66.6813542|1899.063|630.754|600089401241004042|0600m894_ab41-004042|0600m894_ab41|4042|14.495|0.031|34.6|0.804799974|14.611|0.058|18.8|0.903400004|11.697|0.146|7.4|0.958599985|8.916||1.5|0.901300013|0.888400018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AABU|7|0000|20|20|17|20|2|19|0|19|20.975|21.664|20.799|20.955|0.0|0.0|0.0|0.0|0||0||0||0||252.350006|7.30229998|9.407|2.878|0.082|90.2539978|4.79090023|21.781|3.544|0.232|332.070007|44.7120018|1098.036|22.911|2.902|18.4039993|12.3129997|299.053|9.56|0.882|14.512|0.049|1|0.261|14.581|0.093|1|0.319|12.489|0.5|1|0.825|8.669||32|0.576|15.125|0.049|1|15.311|0.098|1|13.112||32|9.724||32|14.773|0.049|1|14.9|0.093|1|13.314|0.5|1|9.245||32|14.645|0.056|1|14.753|0.105|1|12.805|0.405|1|8.955||32|14.589|0.066|1|14.688|0.123|1|12.34|0.327|1|8.714||32|14.58|0.078|1|14.652|0.143|1|12.004|0.288|1|8.483||32|14.615|0.095|1|14.661|0.17|1|11.762|0.272|1|8.263||32|14.674|0.117|1|14.703|0.205|1|11.564|0.263|1|7.985||32|14.742|0.143|1|14.777|0.252|1|11.394|0.258|1|7.737||32|14.494|0.07|0.016|0.249|19|0|55275.28745078|55277.20605032|55276.20045053|14.601|0.265|0.059|1.28900003|19|0|55275.28745078|55277.20605032|55276.20045053|11.618|0.413|0.095|1.972|16|0|55275.28745078|55277.20605032|55276.17886275|9.435|2.143|0.492|3.19499993|12|0|55275.28745078|55277.20605032|55276.17886275|47|-23|-44|1|0|1||||||||||||||||||||||||||946635457|0.331|-5.6|1|14.987|0.053|14.5|0.073|14.524|0.127|600089401241004042|1|0.0000657896213792|0.0021056618005567|-0.999997780927592|101000000|
+J051337.49-895245.2|78.4062356|-89.8792383|1.195|1.3937|0.2868|302.8083432|-27.1780917|270.0613052|-66.6789948|1948.653|652.186|600089401241005391|0600m894_ab41-005391|0600m894_ab41|5391|18.266|0.363|3.0|0.946099997|17.313||-0.9|0.903100014|12.038|0.195|5.6|0.985499978|9.093||0.9|1.07700002|0.96329999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|CUBU|5|0000|0|21|0|21|2|20|0|20|21.333|21.686|20.948|21.648|0.0|0.0|0.0|0.0|0||0||0||0||7.82859993|2.61439991|9.406|2.777|0.039|-3.32459998|3.74690008|21.781|3.495|0.014|242.520004|43.6599998|1098.245|22.271|1.087|11.6359997|12.4530001|299.59|9.748|0.357|16.949||32|0.261|16.135||32|0.319|12.6||32|0.825|10.046||32|0.576|17.427||32|16.812||32|13.785||32|9.874||32|17.21||32|16.454||32|13.425||32|10.622||32|16.978||32|16.174||32|13.144||32|9.203||32|16.442||32|15.94||32|12.91||32|8.918||32|16.45|0.389|1|15.74||32|12.711||32|8.666||32|15.916|0.281|1|15.56||32|12.532||32|8.242||32|15.616|0.248|1|15.395||32|12.368||32|7.831||32|15.37|0.227|1|15.245||32|12.219||32|7.52||32|18.222|1.742|0.38|3.718|14|0|55275.28745078|55277.20605032|55276.23258879||||2.28399992|4|0|55275.28745078|55277.20605032|55276.23258879|11.912|0.805|0.18|3.8829999|17|0|55275.28745078|55277.20605032|55276.2136873|9.579|1.589|0.355|3.85599995|13|0|55275.28745078|55277.20605032|55276.2136873|-30|20|-30|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005391|1|0.000423584813408|0.0020646850738793|-0.999997778823259|101000000|
+J212422.16-895244.9|321.092337|-89.8791467|0.1797|0.1715|-0.041|303.0386523|-27.2029072|270.2357004|-66.4846275|1936.51|648.144|3004089401241004282|3004m894_ab41-004282|3004m894_ab41|4282|15.038|0.036|30.5|0.909399986|15.124|0.073|15.0|0.961399972|13.035|0.474|2.3|0.877799988|9.536||-0.4|1.08200002|0.95480001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AACU|7|0000|23|23|12|23|1|22|1|22|22.883|23.313|22.913|23.006|0.0|0.0|0.0|0.0|0||0||0||0||153.029999|5.01879978|9.233|2.937|0.162|56.3110008|3.76419997|21.72|3.404|0.147|96.8130035|42.262001|1098.324|24.338|0.48|-4.57469988|12.1459999|298.752|9.64|0.622|15.009|0.066|1|0.261|14.927|0.092|1|0.319|11.926||32|0.825|8.832||32|0.576|15.632|0.066|0|15.73|0.103|0|13.056||32|9.841||32|15.27|0.066|1|15.246|0.092|1|12.751||32|9.408||32|15.118|0.074|1|14.999|0.095|1|12.465||32|9.068||32|14.99|0.082|1|14.795|0.097|1|12.232||32|8.773||32|14.833|0.085|1|14.577|0.096|1|12.031||32|8.514||32|14.673|0.087|1|14.362|0.092|1|11.853||32|8.28||32|14.543|0.089|1|14.166|0.089|1|11.69||32|8.065||32|14.44|0.093|1|13.991|0.087|1|11.538||32|7.867||32|15.047|0.096|0.02|0.454|22|0|55275.28745078|55277.33835439|55276.35460852|15.134|0.369|0.077|1.81400001|22|0|55275.28745078|55277.33835439|55276.35460852|12.934|2.717|0.579|2.99499989|12|1|55275.28745078|55277.33835439|55276.3429717|13.495|||4.20800018|10|0|55275.28745078|55277.33835439|55276.3429717|22|-31|-1|1|1|0||||||||||||||||||||||||||996551418|0.442|164.6|1|15.739|0.074|15.312|0.1|15.186|0.175|3004089401241004282|1|0.0016413604294987|-0.0013247733980942|-0.999997775453218|131000000|
+J031326.89-895244.7|48.3620505|-89.8790975|1.371|1.3754|0.5344|302.8529547|-27.2265597|270.2026845|-66.650936|2112.358|661.957|600089401241005533|0600m894_ab41-005533|0600m894_ab41|5533|18.832||-0.9|0.889199972|17.492||-1.5|0.885999978|12.037|0.181|6.0|1.11899996|9.017||1.5|0.897800028|0.949899971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|0|24|3|23|0|23|24.462|24.626|23.953|23.453|0.0|0.0|0.0|0.0|0||0||0||0||-2.17820001|2.32419991|9.302|2.653|0.0|-4.79390001|3.17680001|21.724|3.278|0.064|242.830002|40.4700012|1099.178|21.828|0.866|17.0410004|11.0670004|298.73|9.147|0.468|17.202|0.308|1|0.261|16.836||32|0.319|12.441||32|0.825|8.424||32|0.576|18.258|0.456|1|17.528||32|13.636||32|9.593||32|17.463|0.308|1|17.155||32|13.266||32|9.0||32|16.868|0.232|1|16.772||32|12.98||32|8.663||32|16.376|0.183|1|16.389||32|12.747||32|8.381||32|15.921|0.145|1|16.05||32|12.548||32|8.107||32|15.331|0.1|1|15.539||32|12.366||32|7.884||32|14.474|0.053|1|14.975|0.196|1|12.203||32|7.691||32|13.512|0.026|1|13.809|0.078|1|12.049||32|7.522||32||||2.895|13|0|55275.28745078|55277.33835439|55276.3515125||||3.47000003|8|0|55275.28745078|55277.33835439|55276.3515125|11.98|1.109|0.231|4.59299994|18|1|55275.28745078|55277.33835439|55276.34024702|9.934|3.047|0.635|3.80599999|12|0|55275.28745078|55277.33835439|55276.34024702|22|-39|-38|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241005533|1|0.0014020254631355|0.0015770341667544|-0.99999777364144|101000000|
+J162834.13-895244.5|247.1422171|-89.8790453|0.144|0.1525|-0.0133|303.0421895|-27.0575017|269.8824105|-66.4492083|2010.642|666.488|2403089401241004458|2403m894_ab41-004458|2403m894_ab41|4458|14.671|0.031|34.5|1.046|14.661|0.054|20.1|0.923099995|12.687||0.9|1.03199995|9.083||0.9|1.08000004|1.01699996|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|01nn|AAUU|3|0000|22|22|22|22|0|21|0|21|23.472|23.354|22.562|22.965|0.0|0.0|0.0|0.0|8|h|8|h|0||0||214.570007|6.21740007|9.435|2.382|0.0|86.1869965|4.29390001|21.791|3.096|0.0|42.6920013|45.3810005|1094.754|25.014|1.615|11.5469999|12.6630001|298.609|9.646|0.0|14.12|0.036|1|0.261|14.435|0.191|1|0.319|12.375||32|0.825|8.653||32|0.576|15.038|0.046|1|15.413|0.251|1|14.293||32|9.582||32|14.381|0.036|1|14.754|0.191|1|13.2||32|9.229||32|13.762|0.026|1|14.131|0.14|1|12.917||32|8.96||32|13.169|0.019|1|13.532|0.1|1|12.684||32|8.666||32|12.729|0.016|1|13.087|0.08|1|12.479||32|8.405||32|12.46|0.015|1|12.82|0.074|1|12.299||32|8.168||32|12.28|0.015|1|12.658|0.074|1|12.135||32|7.953||32|12.143|0.015|1|12.556|0.078|1|11.982||32|7.753||32|14.666|0.102|0.022|0.443|21|0|55275.02271543|55276.94144233|55275.97607081|14.666|0.241|0.051|0.787|21|0|55275.02271543|55276.94144233|55275.97607081|13.039|3.692|0.806|2.06299996|11|0|55275.02271543|55276.94144233|55275.94585425|10.521|6.698|1.462|2.77900004|9|0|55275.02271543|55276.94144233|55275.94585425|16|35|2|0|1|0||||||||||||||||||||||||||912543046|0.914|32.1|1|16.059|0.093|15.406|0.117|15.181|0.184|2403089401241004458|1|-0.0008200295784747|-0.001945279292006|-0.999997771717501|121000000|
+J025851.99-895243.9|44.7166541|-89.878882|0.0763|0.079|-0.015|302.8600215|-27.2310116|270.217111|-66.645778|2132.083|657.783|600089401241003900|0600m894_ab41-003900|0600m894_ab41|3900|11.935|0.023|47.3|1.22500002|12.027|0.022|49.4|0.975300014|11.067|0.077|14.1|1.079|8.603|0.228|4.8|0.995800018|1.06599998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|000n|AAAB|15|0000|24|24|24|24|10|23|2|23|23.876|24.09|23.055|22.749|0.0|0.0|0.0|0.0|0||0||0||0||2666.69995|56.4029999|9.294|2.677|0.06|975.25|19.7530003|21.764|3.33|0.159|593.190002|42.1100006|1099.689|22.085|1.163|57.4099998|12.0539999|298.551|9.516|1.07|11.932|0.007|0|0.261|12.024|0.009|0|0.319|11.448|0.155|0|0.825|8.499|0.341|1|0.576|12.571|0.007|0|12.791|0.01|0|12.938|0.204|0|9.845|0.469|1|12.193|0.007|0|12.343|0.009|0|12.273|0.155|0|9.075|0.341|1|12.055|0.007|0|12.168|0.009|0|11.871|0.138|0|8.538|0.282|1|11.999|0.007|1|12.093|0.01|1|11.61|0.134|1|8.227|0.275|1|11.968|0.008|1|12.049|0.011|1|11.438|0.138|1|8.083|0.302|1|11.94|0.009|1|12.011|0.012|1|11.309|0.145|1|7.983|0.338|1|11.902|0.009|1|11.967|0.013|1|11.198|0.152|1|7.882|0.373|1|11.844|0.01|1|11.91|0.014|1|11.088|0.158|1|7.807|0.414|17|11.935|0.022|0.004|0.07|23|0|55275.28745078|55277.33835439|55276.3515125|12.023|0.033|0.007|0.201000005|23|0|55275.28745078|55277.33835439|55276.3515125|11.035|0.487|0.102|3.78999996|22|2|55275.28745078|55277.33835439|55276.34024702|8.482|1.239|0.258|4.79099989|16|1|55275.28745078|55277.33835439|55276.34024702|-5|1|9|0|0|0||||||||||||||||||||||||||707101873|0.028|97.1|1|12.77|0.023|12.21|0.027|12.021|0.024|600089401241003900|1|0.0015021306282269|0.0014873465917361|-0.99999776569935|101000000|
+J124227.30-895243.1|190.6137871|-89.8786609|0.1315|0.129|0.0302|302.9265795|-27.0069104|269.7004479|-66.5380737|1990.994|664.539|1802089401241003945|1802m894_ab41-003945|1802m894_ab41|3945|14.475|0.029|37.2|0.859499991|14.293|0.042|25.9|1.14600003|13.02||-0.9|0.963500023|9.073||1.0|0.980099976|0.983500004|1|0|0.0|0.0|0.0|0.0|0000|dd00|0|11nn|AAUU|3|0000|23|24|25|25|0|24|1|24|24.772|24.588|24.85|24.846|0.0|0.0|0.0|0.0|9|dh|9|dh|0||0||257.040009|6.91590023|10.075|2.742|0.29|120.980003|4.67549992|21.856|3.216|0.16|-42.6020012|49.0680008|1096.684|26.147|2.003|12.4919996|12.3610001|297.75|9.961|1.392|14.309|0.06|1|0.261|14.141|0.073|1|0.319|12.706||32|0.825|8.889|0.449|1|0.576|15.011|0.063|0|14.976|0.082|0|13.872||32|9.412||32|14.57|0.06|1|14.46|0.073|1|13.531||32|9.465|0.449|1|14.348|0.064|1|14.202|0.074|1|13.243||32|8.929|0.359|1|14.189|0.068|1|14.035|0.079|1|12.955||32|8.525|0.309|1|14.041|0.071|1|13.9|0.084|1|12.712||32|8.185|0.272|1|13.894|0.073|1|13.797|0.09|1|12.465||32|7.878|0.24|1|13.756|0.075|1|13.721|0.098|1|12.2||32|7.563|0.208|1|13.617|0.077|1|13.652|0.106|1|11.964||32|7.266|0.181|1|14.471|0.061|0.012|0.45|23|0|55274.89041135|55276.94144233|55275.92420909|14.318|0.168|0.034|0.943000019|24|1|55274.75810734|55276.94144233|55275.87756502||||2.90899992|10|0|55274.89041135|55276.94144233|55275.92420909|9.364|2.634|0.538|2.74900007|12|0|55274.89041135|55276.94144233|55275.92420909|26|-2|-60|1|0|1||||||||||||||||||||||||||857784232|0.079|-6.0|1|15.429|0.076|15.02|0.093|14.775|0.149|1802089401241003945|1|-0.0020815317932323|-0.0003900665308933|-0.999997757534233|121000000|
+J210445.25-895243.1|316.1885794|-89.8786467|1.1098|1.0574|-0.3391|303.0459115|-27.1947876|270.2194087|-66.4765438|1961.876|657.85|3004089401241005383|3004m894_ab41-005383|3004m894_ab41|5383|17.545|0.189|5.8|0.87559998|16.904|0.347|3.1|0.885599971|13.107||-0.3|1.07799995|9.305||0.4|1.03699994|0.964900017|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|0|22|0|22|1|21|0|21|22.882|23.063|22.981|22.97|0.0|0.0|0.0|0.0|0||0||0||0||15.2089996|2.64100003|9.17|2.935|0.019|10.9289999|3.49349999|21.746|3.536|0.47|-11.8549995|45.3240013|1098.488|25.085|1.729|4.9980998|12.533|298.574|9.659|1.158|16.575|0.269|0|0.261|15.995|0.316|0|0.319|11.966||32|0.825|8.489||32|0.576|17.376|0.318|0|16.875|0.381|0|13.152||32|9.585||32|16.836|0.269|0|16.314|0.316|0|12.791||32|9.065||32|16.465|0.248|1|15.969|0.297|1|12.512||32|8.704||32|16.052|0.209|1|15.599|0.261|1|12.282||32|8.491||32|15.547|0.159|1|15.102|0.199|1|12.077||32|8.329||32|14.983|0.112|1|14.529|0.139|1|11.896||32|8.095||32|14.384|0.075|1|13.945|0.094|1|11.733||32|7.88||32|13.698|0.046|1|13.336|0.062|1|11.582||32|7.682||32|17.585|1.082|0.231|3.178|16|0|55275.28745078|55277.33835439|55276.34597572|16.865|1.8|0.384|2.023|13|0|55275.28745078|55277.33835439|55276.34597572||||4.41200018|11|0|55275.28745078|55277.33835439|55276.33337368|11.161|||2.5999999|9|0|55275.28745078|55277.33835439|55276.33337368|56|-3|-23|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005383|1|0.0015284054856777|-0.0014662730941626|-0.999997757007427|131000000|
+J104502.62-895243.0|161.2609291|-89.878633|0.1912|0.1773|0.014|302.8605295|-27.0247652|269.7106084|-66.5994328|2151.534|652.429|1802089401241004067|1802m894_ab41-004067|1802m894_ab41|4067|15.135|0.036|30.4|1.176|15.258|0.083|13.1|0.842100024|13.068||-0.2|1.01100004|9.406||0.0|0.930000007|0.987500012|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|21|21|9|21|0|21|0|21|22.548|22.617|22.881|22.507|0.0|0.0|0.0|0.0|0||0||0||0||139.940002|4.60760021|9.489|2.693|0.348|49.743|3.79430008|21.818|3.395|0.067|-8.50520039|46.9790001|1094.317|25.089|2.121|-0.39568001|13.6899996|298.203|10.063|0.738|15.04|0.095|1|0.261|15.111|0.168|1|0.319|12.46||32|0.825|8.548||32|0.576|15.732|0.101|1|15.955|0.195|1|13.646||32|9.626||32|15.301|0.095|1|15.43|0.168|1|13.285||32|9.124||32|15.009|0.093|1|15.084|0.157|1|13.012||32|8.715||32|14.754|0.091|1|14.769|0.146|1|12.776||32|8.315||32|14.572|0.093|1|14.49|0.136|1|12.574||32|8.671|0.504|1|14.478|0.101|1|14.296|0.135|1|12.388||32|8.298|0.435|1|14.437|0.113|1|14.179|0.14|1|12.224||32|7.956|0.379|1|14.399|0.125|1|14.094|0.149|1|12.072||32|7.665|0.342|1|15.163|0.144|0.032|0.897|20|1|55274.89041135|55276.94144233|55275.90177109|15.259|0.394|0.086|1.90400004|20|0|55274.89041135|55276.94144233|55275.90177109|15.162|||3.23699999|7|0|55274.89041135|55276.94144233|55275.90177109|10.336|5.145|1.123|2.82500005|9|0|55274.89041135|55276.94144233|55275.90177109|17|-52|-88|0|1|1||||||||||||||||||||||||||748811821|0.188|71.0|1|15.733|0.074|15.163|0.108|14.874|0.126|1802089401241004067|1|-0.002005966231261|0.0006805070826671|-0.999997756502278|111000000|
+J232909.08-895242.4|352.2878695|-89.8784604|0.1866|0.1759|0.0258|302.9799503|-27.2419377|270.3025823|-66.544107|2090.698|667.353|89401241004432|0000m894_ab41-004432|0000m894_ab41|4432|15.124|0.036|30.1|0.840900004|15.166|0.077|14.0|1.06799996|12.76|0.367|3.0|0.954100013|9.357||0.5|0.961600006|0.952199996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AACU|7|0000|23|24|11|23|1|23|0|23|23.566|23.676|22.869|22.839|0.0|0.0|0.0|0.0|0||0||0||0||141.339996|4.7033|9.243|2.744|0.0|54.137001|3.85579991|21.757|3.417|0.038|124.709999|42.1539993|1099.379|23.79|1.135|5.59210014|11.5360003|298.717|9.597|1.446|15.143|0.054|0|0.261|15.175|0.146|0|0.319|12.09||32|0.825|8.323||32|0.576|15.74|0.053|0|15.88|0.149|0|13.349||32|9.481||32|15.404|0.054|0|15.494|0.146|0|12.915||32|8.899||32|15.312|0.063|1|15.407|0.173|1|12.604||32|8.482||32|15.273|0.075|1|15.413|0.215|1|12.304||32|8.137||32|15.202|0.085|1|15.439|0.266|1|12.005||32|8.586|0.537|1|15.093|0.091|1|15.476|0.325|1|11.773||32|8.244|0.486|1|14.954|0.093|1|15.487|0.382|1|11.611||32|7.981|0.466|1|14.773|0.09|1|15.382|0.399|1|11.473||32|7.812|0.479|1|15.114|0.141|0.029|0.522|23|0|55275.55205887|55277.33835439|55276.41490023|15.1|0.377|0.079|4.05299997|21|1|55275.55205887|55277.33835439|55276.40926968|12.63|1.423|0.297|4.58199978|15|0|55275.55205887|55277.33835439|55276.40639074|12.067|||2.62100005|10|0|55275.55205887|55277.33835439|55276.40639074|22|-31|32|0|1|0||||||||||||||||||||||||||1127913055|0.296|133.6|1|16.151|0.11|15.61|0.189|15.234|0.177|89401241004432|1|0.0021020780857006|-0.0002846653015759|-0.999997750114163|131000000|
+J153143.44-895242.1|232.9310284|-89.8783762|0.1583|0.1622|0.0309|303.0198155|-27.0350575|269.8164136|-66.4635563|2089.213|667.771|2403089401241004303|2403m894_ab41-004303|2403m894_ab41|4303|14.94|0.033|32.7|0.894299984|14.824|0.06|18.2|0.939599991|12.911||-1.3|1.13900006|9.481||-1.6|1.05400002|1.00199997|1|0|0.0|0.0|0.0|0.0|0000|dd00|0|01nn|AAUU|3|0000|23|23|18|23|0|22|0|22|22.802|22.619|21.93|21.836|0.0|0.0|0.0|0.0|9|dh|1|d|0||0||167.440002|5.125|9.38|2.386|0.047|74.1800003|4.079|21.79|3.161|0.018|-70.2789993|54.2589989|1096.131|26.29|2.366|-21.0030003|12.7770004|298.586|9.81|0.955|15.021|0.067|0|0.261|15.078|0.179|0|0.319|12.246||32|0.825|8.707||32|0.576|15.642|0.066|0|15.786|0.182|0|13.445||32|9.724||32|15.282|0.067|0|15.397|0.179|0|13.071||32|9.283||32|15.128|0.074|0|15.282|0.207|0|12.795||32|8.941||32|15.005|0.082|0|15.223|0.244|0|12.556||32|8.648||32|14.871|0.088|1|15.16|0.278|1|12.352||32|8.389||32|14.722|0.09|1|15.092|0.308|1|12.173||32|8.154||32|14.541|0.089|1|14.996|0.328|1|12.009||32|7.849||32|14.334|0.085|1|14.878|0.339|1|11.856||32|7.613||32|14.942|0.091|0.019|0.391|22|0|55274.89041135|55276.94144233|55275.92886822|14.889|0.353|0.074|2.71199989|22|2|55274.89041135|55276.94144233|55275.92886822|13.772|5.177|1.104|5.17999983|9|0|55274.89041135|55276.94144233|55275.89787957||||1.66400003|5|0|55274.89041135|55276.94144233|55275.89787957|-6|-62|-69|0|1|0||||||||||||||||||||||||||912354228|0.06|47.9|1|15.969|0.101|15.301|0.123|15.086|0.185|2403089401241004303|1|-0.001279533075713|-0.0016937517404694|-0.999997746997537|121000000|
+J021419.07-895241.1|33.5794757|-89.8781079|1.416|1.373|0.4947|302.8834103|-27.2421562|270.2559888|-66.6279184|2190.464|637.599|600089401241005801|0600m894_ab41-005801|0600m894_ab41|5801|18.697|0.494|2.2|0.886799991|17.436||-2.1|1.03299999|12.161|0.208|5.2|1.05900002|9.095||1.1|0.988799989|0.988399982|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|CUBU|5|0000|0|24|0|24|3|23|0|23|23.649|23.563|22.962|22.785|0.0|0.0|0.0|0.0|0||0||0||0||5.26300001|2.39400005|9.228|2.796|0.0|-7.07560015|3.34780002|21.717|3.4|0.052|216.649994|41.5419998|1100.203|23.03|2.012|12.9689999|11.7510004|298.577|9.395|1.748|16.64||32|0.261|16.723||32|0.319|12.226||32|0.825|8.598||32|0.576|17.362||32|17.507||32|13.415||32|9.756||32|16.901||32|17.042||32|13.051||32|9.174||32|17.007|0.47|0|16.347||32|12.774||32|8.767||32|15.881|0.207|1|15.786|0.226|1|12.54||32|8.539||32|14.745|0.088|1|14.663|0.098|1|12.338||32|8.375||32|13.819|0.045|1|13.828|0.054|1|12.155||32|8.226||32|13.209|0.03|1|13.258|0.037|1|11.991||32|8.142||32|12.898|0.026|1|12.926|0.032|1|11.839||32|8.018||32|18.561|1.943|0.397|2.067|15|0|55275.28745078|55277.33835439|55276.3515125||||2.96099997|7|0|55275.28745078|55277.33835439|55276.3515125|11.954|1.121|0.234|3.12400007|16|1|55275.28745078|55277.33835439|55276.34024702|9.777|3.236|0.675|1.57000005|12|0|55275.28745078|55277.33835439|55276.34024702|21|-32|57|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241005801|1|0.0017723917860824|0.00117665934321|-0.999997737047513|101000000|
+J040541.56-895241.1|61.4231989|-89.8780948|0.1076|0.1097|-0.019|302.8291537|-27.2087942|270.1472283|-66.6676945|2040.59|671.107|600089401241003965|0600m894_ab41-003965|0600m894_ab41|3965|13.87|0.026|42.4|1.23500001|13.934|0.036|30.5|1.17400002|11.766|0.148|7.3|1.09300005|9.542|0.504|2.2|1.09000003|1.14600003|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|00nn|AABC|15|0000|23|23|23|23|3|22|0|22|23.705|23.31|22.439|22.785|0.0|0.0|0.0|0.0|8|h|8|h|0||0||448.540009|10.5830002|9.398|2.658|0.009|168.419998|5.52449989|21.764|3.359|0.082|311.529999|42.4300003|1099.04|22.484|1.993|24.1580009|11.217|298.468|9.058|0.824|13.285|0.011|1|0.261|13.297|0.039|1|0.319|12.29|0.497|1|0.825|8.261||32|0.576|14.222|0.014|1|14.364|0.055|1|12.952||32|9.333||32|13.546|0.011|1|13.616|0.039|1|13.115|0.497|1|8.837||32|12.88|0.009|1|12.973|0.028|1|12.552|0.383|1|8.558||32|12.298|0.007|1|12.435|0.022|1|12.075|0.307|1|8.327||32|11.928|0.007|1|12.067|0.019|1|11.724|0.267|1|8.087||32|11.731|0.007|1|11.849|0.018|1|11.509|0.258|1|7.815||32|11.61|0.007|1|11.709|0.018|1|11.353|0.26|1|7.555||32|11.507|0.007|1|11.59|0.019|1|11.202|0.26|1|7.377||32|13.869|0.047|0.01|0.169|22|0|55275.28745078|55277.33835439|55276.26833435|13.931|0.154|0.032|0.603999972|22|0|55275.28745078|55277.33835439|55276.26833435|11.621|0.631|0.135|2.0999999|18|0|55275.28745078|55277.33835439|55276.25277598|9.476|2.165|0.462|4.03299999|14|0|55275.28745078|55277.33835439|55276.25277598|-13|-9|-12|0|0|0||||||||||||||||||||||||||728610906|0.051|-136.0|1|14.653|0.038|14.083|0.053|14.052|0.08|600089401241003965|1|0.0010177302356268|0.0018684489512695|-0.99999773655928|101000000|
+J165506.80-895240.9|253.7783604|-89.8780494|0.2766|0.3034|0.0308|303.0516031|-27.0688319|269.9147574|-66.4435902|1973.946|662.602|2403089401241005017|2403m894_ab41-005017|2403m894_ab41|5017|15.98|0.053|20.6|0.899699986|15.829|0.125|8.7|0.968500018|13.038||-2.3|0.993399978|9.147||0.7|0.976700008|0.955299973|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|0nnn|ABUU|3|0000|22|24|3|23|0|22|0|23|24.537|24.644|23.47|23.332|0.0|0.0|0.0|0.0|8|h|8|h|0||0||64.2460022|3.12170005|9.557|2.411|0.133|29.3910007|3.3908999|21.962|3.257|0.325|-110.150002|48.2639999|1096.362|25.602|10.606|9.05840015|12.8479996|299.243|9.999|1.024|15.126|0.034|0|0.261|14.852|0.077|0|0.319|12.678||32|0.825|8.305||32|0.576|16.031|0.044|0|15.888|0.106|0|13.873||32|9.311||32|15.387|0.034|0|15.171|0.077|0|13.503||32|8.881||32|14.951|0.03|0|14.684|0.065|0|13.216||32|8.537||32|14.583|0.027|0|14.298|0.057|0|12.984||32|8.242||32|14.242|0.025|1|13.958|0.051|1|12.785||32|7.982||32|13.913|0.022|1|13.641|0.046|1|12.604||32|7.747||32|13.596|0.02|1|13.334|0.041|1|12.44||32|7.531||32|13.294|0.018|1|13.036|0.036|1|12.286||32|7.332||32|15.989|0.256|0.052|1.231|23|0|55275.02271543|55276.94144233|55276.07305113|15.698|0.496|0.104|2.18300009|20|0|55275.02271543|55276.94144233|55276.04680523||||1.14900005|4|0|55275.02271543|55276.94144233|55276.02117735|10.827|7.871|1.641|4.87799978|12|0|55275.02271543|55276.94144233|55276.04967863|-10|-33|-26|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005017|1|-0.0005945869460534|-0.0020437003298289|-0.999997734875097|121000000|
+J181607.14-895240.9|274.0297803|-89.8780488|0.6563|0.7263|-0.1267|303.067295|-27.1093722|270.02144|-66.4390578|2190.124|637.938|3004089401241005070|3004m894_ab41-005070|3004m894_ab41|5070|17.076|0.118|9.2|1.08899999|17.177|0.418|2.6|0.999599993|12.83|0.379|2.9|1.09800005|8.859||1.7|0.982200027|1.03900003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCCU|7|0000|3|24|1|24|1|23|0|23|23.717|23.786|22.993|22.87|0.0|0.0|0.0|0.0|0||0||0||0||23.4200001|2.55599999|9.464|2.606|0.037|8.49450016|3.27110004|21.789|3.306|0.12|116.959999|40.8110008|1094.711|24.628|3.334|20.5990009|12.3719997|299.311|9.659|1.252|16.256|0.154|1|0.261|15.78||32|0.319|11.689||32|0.825|8.245||32|0.576|17.182|0.203|1|16.521||32|13.085||32|9.279||32|16.517|0.154|1|16.099||32|12.514||32|8.821||32|16.054|0.129|1|15.88||32|12.726|0.473|1|8.545||32|15.678|0.113|1|15.725||32|12.235|0.371|1|8.255||32|15.368|0.102|1|15.614||32|11.867|0.319|1|7.943||32|15.119|0.096|1|15.565||32|11.578|0.288|1|7.685||32|14.892|0.091|1|15.482||32|11.332|0.268|1|7.479||32|14.644|0.083|1|15.244||32|11.114|0.251|1|7.338||32|17.113|0.741|0.151|3.637|22|1|55275.28732341|55277.20605032|55276.16402342|17.042|2.376|0.485|3.22000003|13|0|55275.28732341|55277.20605032|55276.16402342|12.632|1.616|0.337|4.55700016|16|0|55275.28732341|55277.20605032|55276.14460624|9.548|2.525|0.527|3.33599997|12|0|55275.28732341|55277.20605032|55276.14460624|19|-45|-44|0|1|1|||||||||||||||||||||||||||||0|||||||3004089401241005070|1|0.000149576582658|-0.0021231854355969|-0.999997734852661|131000000|
+J192805.41-895240.8|292.0225475|-89.8780193|0.1974|0.2008|-0.0465|303.0672492|-27.1475163|270.1144661|-66.4475865|2094.866|667.931|3004089401241004326|3004m894_ab41-004326|3004m894_ab41|4326|15.3|0.038|28.7|1.01900005|15.676|0.121|9.0|1.03600001|12.511||1.7|1.11800003|9.522||-2.0|0.947000027|1.02699995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABUU|3|0000|24|24|5|24|0|23|0|23|25.674|24.932|24.862|24.764|0.0|0.0|0.0|0.0|0||0||0||0||120.260002|4.18400002|9.31|2.761|0.0|33.8450012|3.76189995|21.772|3.456|0.0|71.4980011|42.6940002|1096.107|24.118|0.0|-24.6389999|12.302|299.647|10.081|0.504|15.225|0.093|1|0.261|15.577|0.225|1|0.319|12.747||32|0.825|9.033||32|0.576|15.91|0.099|1|16.328|0.24|1|13.934||32|10.039||32|15.486|0.093|1|15.896|0.225|1|13.572||32|9.609||32|15.117|0.085|1|15.545|0.21|1|13.294||32|9.267||32|14.672|0.07|1|15.117|0.174|1|13.064||32|8.979||32|14.309|0.061|1|14.754|0.151|1|12.859||32|8.938||32|14.097|0.059|1|14.544|0.147|1|12.677||32|8.427||32|13.953|0.06|1|14.41|0.15|1|12.512||32|9.161||32|13.803|0.06|1|14.249|0.149|1|12.36||32|9.056||32|15.297|0.147|0.03|0.619|23|0|55275.28732341|55277.20605032|55276.17229507|15.571|0.47|0.096|1.96700001|20|0|55275.28732341|55277.20605032|55276.17229507|12.799|2.106|0.439|1.71000004|13|0|55275.28732341|55277.20605032|55276.15323753||||1.60800004|5|0|55275.28732341|55277.20605032|55276.15323753|22|-31|-71|0|0|0||||||||||||||||||||||||||1128801849|0.05|67.3|1|15.995|0.092|15.45|0.114|15.253|0.176|3004089401241004326|1|0.0007983001100942|-0.0019736256113386|-0.999997733756872|131000000|
+J073320.38-895240.6|113.3349381|-89.8779652|0.5518|0.591|-0.1659|302.7971088|-27.1059044|269.8779274|-66.6727146|2086.112|669.248|1201089401241004982|1201m894_ab41-004982|1201m894_ab41|4982|17.526|0.18|6.0|7.43900013|15.575|0.111|9.7|0.999899983|11.761|0.149|7.3|1.01100004|9.164||0.8|0.832700014|2.58899999|1|0|0.0|0.0|0.0|0.0|0000|0000|1|n01n|BBBU|7|0000|2|21|6|20|5|20|0|20|21.2|21.016|21.217|21.166|0.0|0.0|0.0|0.0|0||0||0||0||15.4689999|2.56750011|9.401|2.735|0.0|37.137001|3.8118999|21.882|3.355|0.0|313.059998|42.8839989|1096.792|22.77|0.0|10.0860004|12.0690002|298.44|9.381|0.438|16.707|0.226|0|0.261|15.419|0.144|0|0.319|11.689||32|0.825|8.764||32|0.576|17.496|0.261|0|16.178|0.154|0|12.898||32|9.773||32|16.968|0.226|0|15.738|0.144|0|12.514||32|9.34||32|16.616|0.214|1|15.531|0.155|1|12.316||32|8.999||32|16.313|0.203|1|15.388|0.168|1|12.201||32|8.707||32|15.955|0.178|1|15.24|0.176|1|12.113||32|8.448||32|15.535|0.144|1|15.037|0.172|1|13.716||32|8.213||32|15.135|0.117|1|14.786|0.159|1|11.918||32|7.998||32|14.775|0.098|1|14.503|0.141|1|11.765||32|7.799||32|17.619|1.134|0.247|3.226|14|1|55275.02271543|55276.94144233|55275.97424453|15.621|0.666|0.149|3.47000003|18|1|55275.02271543|55276.94144233|55276.02181462|11.894|1.035|0.231|2.69799995|15|2|55275.02271543|55276.94144233|55275.94242583|10.388|4.379|0.979|2.08299994|11|0|55275.02271543|55276.94144233|55275.94242583|4|-6|-70|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241004982|1|-0.00084366800856|0.001955691671853|-0.999997731744615|111000000|
+J194212.54-895240.6|295.5522889|-89.8779502|1.0362|1.0579|-0.345|303.0657331|-27.1549102|270.1317621|-66.450541|2075.343|670.397|3004089401241005492|3004m894_ab41-005492|3004m894_ab41|5492|17.538|0.172|6.3|1.01600003|17.055||0.8|0.846800029|12.595||1.4|1.11199999|9.268||0.7|0.932900012|0.973800004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|24|0|24|0|23|0|23|25.311|24.858|24.444|24.63|0.0|0.0|0.0|0.0|0||0||0||0||15.3050003|2.42869997|9.327|2.73|0.006|2.68379998|3.40899992|21.734|3.434|0.109|60.8089981|42.1759987|1094.943|24.306|2.986|8.25909996|11.4209995|298.95|9.635|1.159|16.951|0.295|1|0.261|16.633|0.541|1|0.319|13.323||32|0.825|9.026||32|0.576|17.768|0.352|1|16.688||32|13.907||32|10.04||32|17.212|0.295|1|16.952|0.541|1|14.148||32|9.602||32|16.689|0.235|1|16.516|0.468|1|13.353||32|9.259||32|16.142|0.177|1|16.114|0.401|1|13.118||32|8.966||32|15.617|0.132|1|15.703|0.332|1|12.913||32|8.707||32|15.142|0.101|1|15.277|0.265|1|12.731||32|8.472||32|14.68|0.077|1|14.815|0.201|1|12.565||32|8.258||32|14.233|0.059|1|14.368|0.154|1|12.412||32|8.06||32|17.547|0.691|0.141|2.444|20|0|55275.28732341|55277.33835439|55276.21916071|17.648|3.127|0.638|3.06500006|13|0|55275.28732341|55277.33835439|55276.21916071|13.097|2.801|0.584|5.11100006|13|0|55275.28732341|55277.33835439|55276.2021408|10.945|9.671|2.017|2.46499991|12|0|55275.28732341|55277.33835439|55276.2021408|-7|-15|51|0|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005492|1|0.0009188157739175|-0.0019218217197819|-0.999997731186852|131000000|
+J135026.35-895240.1|207.609817|-89.8778229|0.7585|0.7413|0.2293|302.9668316|-27.0100014|269.7284479|-66.5038508|1901.121|636.177|1802089401241005219|1802m894_ab41-005219|1802m894_ab41|5219|17.205|0.132|8.2|1.00199997|16.812|0.287|3.8|0.950200021|13.014||-1.5|0.941299975|9.458||-1.8|0.829299986|0.9278|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0nnn|BBUU|3|0000|6|24|0|24|0|24|0|24|23.844|23.741|23.903|23.81|0.0|0.0|0.0|0.0|8|h|0||0||0||20.8050003|2.53690004|10.456|2.407|0.0|11.8920002|3.14219999|22.042|2.957|0.114|-72.4680023|49.382|1096.241|25.453|0.633|-23.9829998|13.0530005|298.27|10.029|0.292|16.737||32|0.261|16.481||32|0.319|12.676||32|0.825|8.73||32|0.576|17.251||32|17.105||32|13.866||32|9.922||32|16.998||32|16.8||32|13.501||32|9.306||32|16.636||32|16.514||32|13.053||32|8.995||32|16.149||32|16.281||32|12.617||32|8.758||32|16.266|0.426|1|16.08||32|12.232||32|8.495||32|15.506|0.25|1|15.897||32|11.911||32|8.233||32|14.769|0.148|1|15.732||32|12.376|0.51|1|8.023||32|13.978|0.082|1|15.159|0.369|1|12.137|0.471|1|7.871||32|17.066|0.708|0.144|3.181|20|1|55274.89041135|55276.94144233|55275.92420909|16.866|1.861|0.38|3.26200008|17|0|55274.89041135|55276.94144233|55275.92420909||||2.52600002|6|0|55274.89041135|55276.94144233|55275.92420909||||4.24800014|5|0|55274.89041135|55276.94144233|55275.92420909|-26|-45|57|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005219|1|-0.001889563418684|-0.0009882521616923|-0.999997726451291|121000000|
+J130200.96-895240.0|195.5040102|-89.8777955|0.3077|0.2936|0.0777|302.9382446|-27.006082|269.7043517|-66.5277642|1963.964|660.729|1802089401241004242|1802m894_ab41-004242|1802m894_ab41|4242|16.033|0.055|19.7|1.14699996|15.713|0.114|9.5|1.005|13.032||-3.2|0.983500004|9.583||-0.6|0.951099992|1.01800001|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|02nn|ABUU|3|0000|20|24|6|24|0|24|0|24|24.753|24.629|24.873|24.782|0.0|0.0|0.0|0.0|8|h|8|h|0||0||61.1889992|3.10800004|9.889|2.402|0.093|32.7270012|3.42740011|21.836|3.108|0.0|-155.080002|48.5670013|1096.775|26.463|3.473|-7.19150019|11.6309996|298.186|9.832|1.374|14.94|0.041|1|0.261|14.81|0.145|1|0.319|12.536||32|0.825|8.601||32|0.576|15.944|0.059|1|15.874|0.209|1|13.711||32|9.678||32|15.201|0.041|1|15.129|0.145|1|13.361||32|9.177||32|14.593|0.031|1|14.515|0.107|1|13.082||32|8.746||32|14.026|0.023|1|13.937|0.078|1|12.845||32|8.31||32|13.458|0.017|1|13.352|0.055|1|12.646||32|8.562|0.439|1|12.837|0.012|1|12.701|0.036|1|12.037||32|8.207|0.386|1|12.103|0.008|1|11.939|0.021|1|11.935|0.388|1|7.959|0.369|1|11.217|0.006|1|11.09|0.012|1|10.993|0.188|1|7.785|0.371|1|15.989|0.204|0.042|2.181|23|1|55274.89041135|55276.94144233|55275.92420909|15.687|0.929|0.19|3.01600003|20|3|55274.89041135|55276.94144233|55275.92420909||||3.72399998|7|0|55274.89041135|55276.94144233|55275.92420909|12.506|||3.6960001|11|0|55274.89041135|55276.94144233|55275.92420909|-8|-3|51|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004242|1|-0.00205525730114|-0.0005701282092286|-0.999997725433039|121000000|
+J143406.23-895239.4|218.5259657|-89.877616|0.782|0.8039|0.2529|302.9914182|-27.0178354|269.7600394|-66.4842957|1930.222|54.071|600089401241005128|0600m894_ab41-005128|0600m894_ab41|5128|17.14|0.132|8.2|0.976899981|16.891|0.352|3.1|0.972199976|13.004||-1.4|0.905499995|9.331||0.1|0.91869998|0.939999998|1|0|0.0|0.0|0.0|0.0|0000|hHH0|0|1nnn|BBUU|3|0000|4|21|1|21|0|21|0|21|22.969|22.9|22.563|22.988|0.0|0.0|0.0|0.0|8|h|1032|H|1032|H|0||22.0739994|2.67759991|9.684|2.373|0.0|11.0530005|3.58030009|21.769|3.206|0.0|-69.3310013|49.8199997|1097.067|25.495|0.0|1.51349998|13.9169998|298.301|10.095|1.212|17.171|0.502|1|0.261|16.606|0.497|1|0.319|12.554||32|0.825|8.989||32|0.576|17.199||32|16.738||32|13.746||32|9.926||32|17.432|0.502|1|16.925|0.497|1|13.379||32|9.565||32|16.874|0.387|1|16.431|0.406|1|13.103||32|9.225||32|16.368|0.301|1|15.976|0.331|1|12.87||32|8.934||32|15.972|0.252|1|15.57|0.274|1|12.667||32|8.678||32|15.607|0.213|1|15.188|0.228|1|12.486||32|8.446||32|15.208|0.172|1|14.774|0.181|1|12.324||32|8.234||32|14.736|0.128|1|14.316|0.137|1|12.172||32|8.037||32|17.152|0.669|0.146|3.905|19|0|55274.89041135|55276.94144233|55275.96476696|16.83|2.1|0.458|2.73600006|13|0|55274.89041135|55276.94144233|55275.96476696||||3.38000011|6|0|55274.89041135|55276.94144233|55275.96476696||||2.56100011|12|0|55274.89041135|55276.94144233|55275.96476696|36|48|11|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005128|1|-0.0016710500028581|-0.0013304500904367|-0.99999771874462|121000000|
+J131703.60-895239.3|199.2650373|-89.8775943|0.0753|0.0775|-0.0124|302.9472437|-27.0065141|269.7099811|-66.5200543|1943.723|655.05|1802089401241003769|1802m894_ab41-003769|1802m894_ab41|3769|9.669|0.024|45.9|1.03600001|9.68|0.022|50.0|1.10399997|9.7|0.036|30.5|1.06400001|9.494||-0.3|0.950500011|1.03600001|1|0|0.0|0.0|0.0|0.0|0000|dd00|0|000n|AAAU|7|0000|24|24|24|24|23|24|0|24|24.562|24.541|24.756|24.32|0.0|0.0|0.0|0.0|9|dh|9|dh|0||0||21496.0|468.279999|10.614|2.557|0.101|8469.2002|169.429993|21.798|2.981|0.0|2088.3999|68.3700027|1096.116|25.635|5.434|-4.3677001|12.6289997|298.192|9.99|1.643|9.669|0.005|0|0.261|9.669|0.006|0|0.319|9.691|0.034|0|0.825|8.925||32|0.576|10.301|0.006|0|10.429|0.006|0|11.1|0.041|0|10.264||32|9.93|0.005|0|9.988|0.006|0|10.516|0.034|0|9.501||32|9.796|0.005|0|9.82|0.006|0|10.21|0.033|0|9.031||32|9.741|0.005|0|9.753|0.006|0|10.06|0.036|0|8.635||32|9.713|0.005|1|9.72|0.006|1|9.993|0.04|1|8.278||32|9.694|0.006|1|9.699|0.006|1|9.96|0.046|1|7.967||32|9.677|0.006|1|9.68|0.006|1|9.93|0.052|1|7.725||32|9.659|0.006|1|9.661|0.006|1|9.879|0.057|1|7.513||32|9.667|0.02|0.004|0.17|23|0|55274.89041135|55276.94144233|55275.92420909|9.681|0.03|0.006|0.115999997|23|0|55274.89041135|55276.94144233|55275.92420909|9.688|0.158|0.032|0.579999983|23|0|55274.89041135|55276.94144233|55275.92420909||||3.227|6|0|55274.89041135|55276.94144233|55275.92420909|11|-12|-9|0|0|0||||||||||||||||||||||||||857898394|0.291|-73.3|1|9.945|0.023|9.774|0.023|9.721|0.023|1802089401241003769|1|-0.0020167483542135|-0.0007048739534136|-0.999997717936789|121000000|
+J135852.55-895239.3|209.7189965|-89.877587|0.6483|0.6297|0.1834|302.9717659|-27.0109992|269.7333884|-66.4997961|1890.459|631.117|1802089401241005100|1802m894_ab41-005100|1802m894_ab41|5100|17.005|0.108|10.1|0.888800025|16.685|0.259|4.2|0.977500021|13.022||-0.9|0.924899995|9.468||-0.7|1.02400005|0.943199992|1|0|0.0|0.0|0.0|0.0|0000|h0d0|0|1nnn|ABUU|3|0000|6|24|1|24|0|24|0|24|23.808|23.807|23.868|23.7|0.0|0.0|0.0|0.0|8|h|0||1|d|0||25.0090008|2.48300004|10.456|2.407|0.065|13.3610001|3.19109988|22.042|2.957|0.131|-43.7330017|49.0130005|1096.241|25.453|1.699|-8.68239975|12.9359999|298.27|10.029|0.377|16.677||32|0.261|16.148||32|0.319|12.403||32|0.825|8.637||32|0.576|17.166||32|16.829||32|13.755||32|9.717||32|16.938||32|16.467||32|13.228||32|9.213||32|16.657||32|16.187||32|12.714||32|8.884||32|16.423||32|15.953||32|12.798|0.385|1|8.597||32|16.218||32|15.749||32|12.265|0.283|1|8.325||32|16.04||32|15.571||32|11.854|0.227|1|8.074||32|15.877||32|15.407||32|11.495|0.188|1|7.91||32|15.139||32|15.324||32|11.18|0.161|1|7.821||32|17.043|0.715|0.146|2.667|21|1|55274.89041135|55276.94144233|55275.92420909|16.692|1.631|0.333|2.51699996|14|0|55274.89041135|55276.94144233|55275.92420909|17.331|||3.76900005|7|0|55274.89041135|55276.94144233|55275.92420909||||3.24499989|7|0|55274.89041135|55276.94144233|55275.92420909|-32|-23||1|0||||||||||||||||||||||||||||||0|||||||1802089401241005100|1|-0.0018554877935918|-0.0010591670446073|-0.999997717662505|121000000|
+J001258.80-895239.0|3.245001|-89.8775268|0.0757|0.0818|0.0085|302.9549246|-27.2489074|270.3074837|-66.5673405|2029.844|672.161|89401241004117|0000m894_ab41-004117|0000m894_ab41|4117|11.946|0.023|48.1|0.80400002|12.042|0.022|48.8|0.921400011|11.712|0.149|7.3|1.09399998|9.116||1.0|1.13999999|0.98299998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABU|7|0000|21|21|21|21|3|20|0|20|21.137|21.088|20.604|21.218|0.0|0.0|0.0|0.0|0||0||0||0||2640.69995|54.9339981|9.282|2.731|0.113|962.27002|19.7280006|21.768|3.463|0.152|327.390015|44.8530006|1098.975|23.928|1.347|11.9870005|11.8970003|298.641|9.488|1.303|11.945|0.006|0|0.261|12.029|0.009|0|0.319|11.745|0.256|0|0.825|8.223||32|0.576|12.577|0.007|0|12.795|0.01|0|13.351|0.374|0|9.234||32|12.206|0.006|0|12.348|0.009|0|12.57|0.256|0|8.799||32|12.073|0.006|1|12.175|0.009|1|12.073|0.209|0|8.451||32|12.018|0.007|1|12.104|0.01|1|11.767|0.195|1|8.158||32|11.992|0.007|1|12.071|0.011|1|11.592|0.2|1|7.897||32|11.975|0.007|1|12.051|0.012|1|11.493|0.216|1|7.662||32|11.961|0.008|1|12.032|0.014|1|11.424|0.236|1|7.446||32|11.945|0.008|1|12.008|0.015|1|11.345|0.252|1|7.247||32|11.946|0.023|0.005|0.1|20|0|55275.55205887|55277.33835439|55276.39639986|12.042|0.044|0.01|0.155000001|20|0|55275.55205887|55277.33835439|55276.39639986|11.62|0.597|0.133|5.27899981|17|0|55275.55205887|55277.33835439|55276.38568892|10.291|5.079|1.136|1.26900005|8|0|55275.55205887|55277.33835439|55276.38568892|-4|27|-24|0|1|0||||||||||||||||||||||||||1229086934|0.162|78.7|1|12.87|0.021|12.167|0.022|12.014|0.023|89401241004117|1|0.002134131806335|0.0001209979872995|-0.99999771541785|101000000|
+J041216.70-895238.3|63.0696117|-89.8773254|0.0762|0.0758|-0.0204|302.8259271|-27.2066252|270.1402945|-66.670018|2031.32|672.774|600089401241003893|0600m894_ab41-003893|0600m894_ab41|3893|11.853|0.022|50.1|1.07799995|11.944|0.022|49.6|1.20500004|11.208|0.095|11.5|1.04400003|9.166|0.36|3.0|1.08700001|1.10099995|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|001n|AAAC|15|0000|22|22|22|22|7|21|0|21|23.175|22.785|22.086|22.774|0.0|0.0|0.0|0.0|8|h|8|h|0||0||2876.30005|57.4640007|9.394|2.676|0.0|1052.80005|21.2390003|21.777|3.352|0.0|520.900024|45.3530006|1099.648|22.678|2.335|34.1570015|11.3129997|298.56|8.982|0.232|11.852|0.007|1|0.261|11.926|0.011|1|0.319|11.588|0.201|1|0.825|8.505||32|0.576|12.492|0.007|1|12.692|0.012|1|13.067|0.263|1|9.517||32|12.113|0.007|1|12.245|0.011|1|12.413|0.201|1|9.081||32|11.954|0.007|1|12.054|0.012|1|12.012|0.18|1|8.737||32|11.856|0.007|1|11.949|0.013|1|11.753|0.175|1|8.444||32|11.788|0.007|1|11.878|0.014|1|11.594|0.183|1|8.183||32|11.744|0.008|1|11.831|0.015|1|11.474|0.193|1|7.948||32|11.712|0.008|1|11.793|0.017|1|11.372|0.204|1|7.733||32|11.678|0.009|1|11.751|0.019|1|11.266|0.213|1|11.267||32|11.847|0.028|0.006|0.156|21|0|55275.28745078|55277.33835439|55276.28285086|11.94|0.026|0.006|0.118000001|21|0|55275.28745078|55277.33835439|55276.28285086|11.159|0.455|0.099|4.27699995|19|1|55275.28745078|55277.33835439|55276.26724288|9.123|1.641|0.358|4.50500011|14|0|55275.28745078|55277.33835439|55276.26724288|21|7|49|0|0|1||||||||||||||||||||||||||922153033|0.029|101.7|1|12.802|0.023|12.071|0.025|11.993|0.029|600089401241003893|1|0.0009697091385209|0.0019088912080981|-0.999997707896644|101000000|
+J102459.72-895238.0|156.2488351|-89.8772379|0.499|0.456|-0.0573|302.8497266|-27.0295906|269.7169574|-66.6098985|2178.872|645.572|1802089401241004529|1802m894_ab41-004529|1802m894_ab41|4529|16.486|0.079|13.7|1.01300001|17.006|0.373|2.9|1.03400004|12.99||-1.5|0.974699974|9.61||-1.2|0.9199|0.982800007|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACUU|3|0000|10|22|1|22|0|22|0|22|22.62|22.643|22.463|22.649|0.0|0.0|0.0|0.0|0||0||0||0||40.3240013|2.93899989|9.693|2.86|0.0|9.94089985|3.41799998|21.827|3.333|0.099|-75.1200027|50.4410019|1096.072|26.093|1.112|-13.5959997|11.3529997|298.262|9.637|1.048|16.446|0.435|0|0.261|15.667||32|0.319|12.529||32|0.825|9.003||32|0.576|16.999|0.407|0|16.346||32|13.719||32|9.996||32|16.707|0.435|0|15.986||32|13.354||32|9.579||32|16.016||32|15.874||32|13.07||32|9.254||32|16.108||32|15.868||32|12.752||32|8.979||32|16.233||32|15.859||32|12.442||32|8.739||32|16.054||32|15.681||32|12.228||32|8.523||32|15.889||32|15.515||32|12.103||32|8.323||32|15.737||32|15.364||32|12.016||32|8.138||32|16.476|0.423|0.09|4.116|21|1|55274.89041135|55276.94144233|55275.90392233|16.959|1.975|0.421|4.25699997|13|0|55274.89041135|55276.94144233|55275.90392233||||3.80599999|8|0|55274.89041135|55276.94144233|55275.90392233||||2.39599991|8|0|55274.89041135|55276.94144233|55275.90392233|-7|17|65|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004529|1|-0.0019611291530049|0.0008629650727335|-0.99999770462923|111000000|
+J093023.09-895237.6|142.5962339|-89.8771364|0.5538|0.5149|-0.144|302.825831|-27.0495746|269.7538989|-66.6351473|1925.363|649.403|1201089401241004880|1201m894_ab41-004880|1201m894_ab41|4880|16.601|0.089|12.3|0.899200022|17.254|0.456|2.4|0.921999991|12.439||1.7|0.926199973|9.558||-1.2|1.10099995|0.958700001|1|0|0.0|0.0|0.0|0.001|0000|0000|0|1nnn|ACUU|3|0000|7|23|0|23|0|23|0|23|23.801|23.743|22.893|22.581|0.0|0.0|0.0|0.0|0||0||0||0||36.2830009|2.96000004|9.409|2.851|0.292|7.91230011|3.3210001|21.836|3.327|0.173|77.0780029|45.3149986|1096.048|25.238|5.274|-14.3120003|11.9099998|298.324|9.843|1.09|16.183|0.113|1|0.261|16.5|0.453|1|0.319|11.987||32|0.825|8.665||32|0.576|16.896|0.124|0|17.307|0.511|0|13.161||32|9.679||32|16.444|0.113|1|16.819|0.453|1|12.812||32|9.241||32|16.182|0.115|1|16.608|0.482|1|12.541||32|8.897||32|15.968|0.117|1|16.495|0.538|1|12.471||32|8.603||32|15.721|0.112|1|15.625||32|12.989||32|8.343||32|15.461|0.104|1|15.52||32|11.981||32|8.107||32|15.26|0.1|1|15.366||32|11.817||32|7.892||32|15.1|0.1|1|15.119||32|11.664||32|7.693||32|16.658|0.307|0.064|1.467|22|0|55274.89041135|55276.94144233|55275.86561452|17.161|1.621|0.338|3.44199991|14|0|55274.89041135|55276.94144233|55275.86561452|12.8|2.19|0.457|2.91199994|13|0|55274.89041135|55276.94144233|55275.86561452||||3.7420001|8|0|55274.89041135|55276.94144233|55275.86561452|37|-54|83|1|1|1|||||||||||||||||||||||||||||0|||||||1201089401241004880|1|-0.0017034355895898|0.0013025522760029|-0.999997700829737|111000000|
+J032434.04-895237.1|51.1418585|-89.8769907|1.1366|1.1861|0.3918|302.846213|-27.2246886|270.1947672|-66.6563761|2098.109|670.162|600089401241005206|0600m894_ab41-005206|0600m894_ab41|5206|18.127|0.283|3.8|0.903999984|17.504||-2.5|0.959500015|12.204|0.21|5.2|1.12899995|9.153||1.1|1.12800002|1.02499998|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|BUBU|5|0000|1|24|0|24|2|23|0|23|24.658|24.737|23.985|23.746|0.0|0.0|0.0|0.0|129|D|129|D|0||0||8.89840031|2.32279992|9.299|2.578|0.01|-7.82469988|3.14190006|21.845|3.292|0.156|208.149994|40.2290001|1099.638|21.767|0.532|12.2749996|11.1549997|299.033|9.176|0.623|17.144|0.325|1|0.261|16.452||32|0.319|12.344||32|0.825|8.486||32|0.576|17.973|0.397|0|17.22||32|13.521||32|9.594||32|17.405|0.325|1|16.771||32|13.169||32|9.062||32|16.902|0.267|1|16.302||32|12.886||32|8.778||32|16.322|0.194|1|15.801||32|12.656||32|8.561||32|15.792|0.144|1|16.016|0.429|1|12.452||32|8.317||32|15.43|0.122|1|15.699|0.379|1|12.269||32|8.048||32|15.209|0.116|1|15.554|0.386|1|12.107||32|7.741||32|15.063|0.117|1|15.526|0.434|1|11.954||32|8.176|0.528|1|18.372|1.815|0.37|2.918|15|0|55275.28745078|55277.33835439|55276.3515125||||2.09599996|6|0|55275.28745078|55277.33835439|55276.3515125|12.037|0.957|0.199|2.57999992|18|0|55275.28745078|55277.33835439|55276.34024702|9.416|2.246|0.468|3.19099998|15|0|55275.28745078|55277.33835439|55276.34024702|-24|5|25|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005206|1|0.001346963078001|0.0016718073523036|-0.999997695372666|101000000|
+J143930.96-895237.1|219.8790204|-89.8769798|0.4927|0.4911|0.1383|302.9946503|-27.0185497|269.763419|-66.4816534|2160.736|653.731|2403089401241005375|2403m894_ab41-005375|2403m894_ab41|5375|16.532|0.08|13.6|0.96450001|16.632||1.8|0.996800005|12.99||-1.5|1.02900004|9.427||-0.4|0.948300004|0.981700003|1|0|0.0|0.0|0.0|0.0|0000|hH00|0|0nnn|AUUU|1|0000|8|21|0|21|0|21|0|21|22.476|22.611|21.986|22.686|0.0|0.0|0.0|0.0|8|h|1032|H|0||0||38.6629982|2.84780002|9.685|2.367|0.073|6.69210005|3.66869998|21.803|3.217|0.05|-73.8580017|50.4550018|1098.2|25.782|5.337|-4.79379988|13.4329996|298.178|10.011|0.542|16.246||32|0.261|16.115||32|0.319|12.05||32|0.825|8.98||32|0.576|17.59|0.538|0|16.906||32|13.248||32|9.992||32|16.507||32|16.434||32|12.875||32|9.556||32|16.322||32|16.737|0.472|1|12.596||32|9.214||32|16.123||32|16.165|0.346|1|12.362||32|8.922||32|15.775||32|15.481|0.222|1|12.158||32|8.662||32|15.673|0.297|1|14.802|0.14|1|11.98||32|8.429||32|14.833|0.16|1|14.227|0.096|1|11.816||32|8.215||32|14.258|0.108|1|13.802|0.075|1|11.664||32|8.016||32|16.538|0.42|0.092|2.287|20|1|55274.89041135|55276.94144233|55275.96476696|17.353|3.901|0.851|2.55500007|10|0|55274.89041135|55276.94144233|55275.96476696|16.294|||2.90300012|6|0|55274.89041135|55276.94144233|55275.96476696|13.036|||2.28200006|8|0|55274.89041135|55276.94144233|55275.96476696|-10|55|39|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005375|1|-0.0016476896413538|-0.0013766575806603|-0.999997694963719|121000000|
+J150256.43-895236.7|225.7351569|-89.8768705|0.8296|0.8723|0.2564|303.0069454|-27.0247261|269.7847106|-66.4723851|1968.065|39.757|600089401241005749|0600m894_ab41-005749|0600m894_ab41|5749|17.306|0.148|7.3|0.909500003|16.664|0.283|3.8|1.02400005|12.952||-0.1|0.902199984|9.076||0.8|1.005|0.956399977|1|0|0.0|0.0|0.0|0.0|0000|hHH0|0|nnnn|BBUU|3|0000|2|21|0|21|0|20|0|20|22.202|22.471|22.794|22.269|0.0|0.0|0.0|0.0|8|h|1032|H|1032|H|0||18.9529991|2.59220004|9.383|2.356|0.0|13.6210003|3.55139995|21.739|3.267|0.0|-4.39219999|52.2509995|1096.418|25.499|5.689|10.6230001|13.2539997|298.232|9.797|1.369|16.786||32|0.261|15.892||32|0.319|12.415||32|0.825|8.563||32|0.576|17.38||32|16.609||32|13.606||32|9.579||32|17.047||32|16.211||32|13.24||32|9.139||32|16.72||32|15.933||32|12.956||32|8.759||32|16.377||32|15.769||32|12.718||32|8.54||32|16.047||32|15.689||32|12.516||32|8.346||32|15.768||32|15.613||32|12.327||32|8.105||32|15.533||32|15.448||32|12.162||32|7.884||32|15.154||32|15.291||32|12.005||32|7.681||32|17.335|0.692|0.151|2.001|17|0|55274.89041135|55276.94144233|55275.96791402|16.612|1.271|0.277|2.4000001|17|0|55274.89041135|55276.94144233|55275.96791402|14.562|8.757|1.958|3.69700003|10|0|55274.89041135|55276.94144233|55275.93577879|9.96|3.626|0.811|3.88000011|9|0|55274.89041135|55276.94144233|55275.93577879|2|-26|22|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005749|1|-0.0014999603215338|-0.0015389544981201|-0.999997690866377|121000000|
+J230605.78-895236.5|346.5241165|-89.8768215|0.2328|0.2155|-0.0305|302.9933765|-27.2385372|270.3007915|-66.5317154|2123.15|665.643|89401241004540|0000m894_ab41-004540|0000m894_ab41|4540|15.471|0.042|25.8|0.892499983|15.76|0.124|8.7|0.925800025|12.459||2.0|1.06299996|8.926||1.8|1.01400006|0.970399976|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|23|24|2|24|0|23|0|23|23.815|22.601|23.001|22.617|0.0|0.0|0.0|0.0|0||0||0||0||102.690002|3.98099995|9.232|2.728|0.048|31.3220005|3.58430004|21.73|3.381|0.144|81.5660019|41.480999|1099.743|24.226|2.565|20.007|11.3000002|298.283|9.44|1.431|15.391|0.052|0|0.261|15.988|0.322|0|0.319|12.119||32|0.825|8.72||32|0.576|16.028|0.054|0|16.556|0.292|0|13.454||32|9.658||32|15.652|0.052|0|16.307|0.322|0|12.944||32|9.296||32|15.479|0.057|1|16.466|0.484|1|12.579||32|8.959||32|15.332|0.062|1|15.789||32|12.252||32|8.613||32|15.133|0.062|1|15.667||32|12.611|0.46|1|8.267||32|14.867|0.057|1|15.409||32|12.218|0.377|1|7.941||32|14.62|0.053|1|15.14||32|11.851|0.314|1|7.656||32|14.451|0.053|1|14.938||32|11.533|0.269|1|7.403||32|15.482|0.139|0.028|0.61|23|0|55275.55205887|55277.33835439|55276.41490023|15.806|0.652|0.133|1.074|19|0|55275.55205887|55277.33835439|55276.41490023|12.696|0.878|0.183|3.96000004|17|0|55275.55205887|55277.33835439|55276.40639074|9.562|2.243|0.468|3.27399993|14|0|55275.55205887|55277.33835439|55276.40639074|-19|-19|13|0|0|0||||||||||||||||||||||||||1095003132|0.108|92.9|1|16.204|0.109|15.624|0.152|15.188|0.141|89401241004540|1|0.0020906788832966|-0.0005009969717067|-0.99999768902925|131000000|
+J162250.93-895236.0|245.7122156|-89.8766894|0.0866|0.0869|-0.015|303.0422813|-27.0536502|269.8730655|-66.4482609|2017.927|673.464|2403089401241004035|2403m894_ab41-004035|2403m894_ab41|4035|12.561|0.024|45.3|0.996299982|12.615|0.024|44.4|1.01300001|12.611|0.359|3.0|1.08299994|9.557||-1.3|1.02400005|1.02499998|1|0|0.0|0.0|0.0|0.001|0000|dd00|0|11nn|AACU|7|0000|23|23|22|22|4|21|0|22|23.732|23.334|22.673|22.742|0.0|0.0|0.0|0.0|9|dh|1|d|0||0||1498.59998|33.1090012|9.951|2.493|0.0|567.609985|12.7729998|21.839|3.109|0.0|143.100006|47.2729988|1094.567|25.213|0.0|-15.1730003|11.9219999|298.741|9.637|0.947|12.544|0.008|1|0.261|12.667|0.038|1|0.319|12.393|0.374|1|0.825|8.995||32|0.576|13.185|0.009|1|13.415|0.04|1|13.882|0.489|1|9.997||32|12.805|0.008|1|12.986|0.038|1|13.218|0.374|1|9.571||32|12.645|0.009|1|12.822|0.042|1|12.776|0.323|1|9.243||32|12.54|0.009|1|12.741|0.048|1|12.425|0.29|1|8.962||32|12.448|0.01|1|12.68|0.055|1|12.109|0.262|1|8.716||32|12.351|0.011|1|12.614|0.06|1|11.833|0.239|1|8.494||32|12.223|0.011|1|12.522|0.064|1|11.592|0.223|1|8.289||32|12.077|0.011|1|12.413|0.067|1|11.378|0.21|1|8.1||32|12.557|0.029|0.006|0.152|22|0|55275.02271543|55276.94144233|55275.98639725|12.614|0.061|0.013|0.244000003|21|0|55275.02271543|55276.94144233|55275.97607081|12.186|1.499|0.327|4.98600006|14|1|55275.02271543|55276.94144233|55275.94585425||||1.42799997|6|0|55275.02271543|55276.94144233|55275.95802356|50|-9|-50|2|0|0||||||||||||||||||||||||||912528784|0.415|92.3|1|13.311|0.024|12.755|0.022|12.642|0.03|2403089401241004035|1|-0.000885232436|-0.0019616875461095|-0.999997684070071|121000000|
+J052031.82-895236.0|80.1325903|-89.8766833|0.6202|0.6788|-0.0995|302.8040601|-27.1757405|270.053388|-66.6821923|1937.363|655.341|600089401241004743|0600m894_ab41-004743|0600m894_ab41|4743|16.901|0.113|9.6|1.005|16.939||1.0|0.871399999|12.18|0.221|4.9|1.07599998|9.267||0.5|0.989499986|0.979499996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|3nnn|BUBU|5|0000|6|21|0|21|2|19|0|20|21.82|21.982|21.544|21.738|0.0|0.0|0.0|0.0|0||0||0||0||27.5130005|2.86590004|9.367|2.783|0.0|3.44309998|3.56890011|21.737|3.437|0.035|212.880005|43.2910004|1097.026|22.072|3.71|6.67070007|12.2340002|298.832|9.291|1.765|16.908|0.413|1|0.261|15.993||32|0.319|12.223||32|0.825|8.889||32|0.576|17.399|0.365|0|16.627||32|13.415||32|9.903||32|17.169|0.413|1|16.312||32|13.048||32|9.465||32|16.465||32|16.166||32|12.774||32|9.121||32|16.35||32|16.053||32|12.54||32|8.83||32|16.024||32|15.835||32|12.336||32|10.263||32|15.974|0.313|1|15.371||32|12.155||32|8.268||32|15.109|0.164|1|15.476|0.489|1|11.991||32|7.998||32|14.387|0.097|1|14.688|0.272|1|11.84||32|7.742||32|16.889|0.762|0.166|4.303|18|1|55275.28745078|55277.20605032|55276.23258879|18.097|5.787|1.263|2.8670001|8|0|55275.28745078|55277.20605032|55276.23258879|12.134|1.312|0.301|3.41199994|11|1|55275.28745078|55277.20605032|55276.17886275|10.196|3.707|0.829|4.49300003|12|0|55275.28745078|55277.20605032|55276.2136873|13|73|31|0|0|0||||||||||||||||||||||||||1329076633|0.793|-44.5|1|16.696|0.146|16.274||15.809||600089401241004743|1|0.0003688335179587|0.0021204413423606|-0.999997683842493|101000000|
+J030932.93-895235.3|47.3872196|-89.8764805|1.0797|1.1195|0.381|302.8531788|-27.2298962|270.2110091|-66.6514713|1975.345|36.927|2403089401241005764|2403m894_ab41-005764|2403m894_ab41|5764|18.841||-2.0|0.870599985|17.45||-3.8|0.996800005|12.103|0.196|5.5|1.12399995|9.333|0.405|2.7|0.965600014|0.987200022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn1n|UUBC|12|0000|0|24|0|24|4|23|0|23|23.911|24.465|23.518|23.054|0.0|0.0|0.0|0.0|0||0||0||0||-4.4934001|2.30380011|9.325|2.653|0.019|-12.5640001|3.30489993|21.74|3.286|0.169|228.440002|41.2630005|1098.838|21.808|1.206|29.2929993|10.915|298.128|9.044|0.414|16.947||32|0.261|17.0||32|0.319|12.129||32|0.825|8.829|0.459|1|0.576|17.786||32|17.681||32|13.405||32|9.349||32|17.208||32|17.319||32|12.954||32|9.405|0.459|1|17.117|0.364|1|17.033||32|12.549||32|8.827|0.365|1|16.045|0.169|1|16.327||32|12.189||32|8.442|0.331|1|14.868|0.069|1|15.135|0.142|1|11.903||32|8.222|0.339|1|13.733|0.03|1|13.864|0.053|1|11.694||32|8.052|0.355|1|12.865|0.016|1|13.024|0.029|1|11.543||32|7.902|0.373|17|12.348|0.012|1|12.521|0.021|1|11.449||32|7.759|0.389|17||||1.967|10|0|55275.28745078|55277.33835439|55276.3515125||||0.588|1|0|55275.28745078|55277.33835439|55276.3515125|11.934|1.377|0.287|2.45700002|15|1|55275.28745078|55277.33835439|55276.34024702|9.45|2.31|0.482|2.3900001|15|0|55275.28745078|55277.33835439|55276.34024702||-99|-23||0|0|||||||||||||||||||||||||||||0|||||||2403089401241005764|1|0.0014595771284364|0.0015865677673383|-0.999997676215963|101000000|
+J154359.60-895235.1|235.9983668|-89.8764277|0.187|0.1977|0.0384|303.026779|-27.037954|269.8269891|-66.4581691|2072.647|674.611|2403089401241004434|2403m894_ab41-004434|2403m894_ab41|4434|15.259|0.038|28.8|1.10000002|15.191|0.078|13.9|0.904699981|12.982||0.1|1.20200002|9.188||0.5|0.984600008|1.04499996|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|AAUU|3|0000|23|23|10|23|1|22|0|22|22.886|22.205|21.859|22.323|0.0|0.0|0.0|0.0|8|h|0||0||0||124.870003|4.33010006|9.397|2.369|0.0|52.9129982|3.80130005|21.817|3.164|0.0|3.5539|49.0439987|1094.559|25.209|5.242|6.9204998|13.2740002|298.527|9.817|1.541|14.967|0.043|0|0.261|15.015|0.142|0|0.319|12.087||32|0.825|8.428||32|0.576|15.756|0.05|0|15.899|0.172|0|13.515||32|10.975||32|15.228|0.043|0|15.334|0.142|0|12.912||32|9.004||32|14.92|0.042|0|15.058|0.142|0|12.475||32|8.66||32|14.701|0.042|0|14.904|0.153|0|12.174||32|8.367||32|14.508|0.042|1|14.754|0.16|1|12.693|0.533|1|8.108||32|14.285|0.041|1|14.522|0.152|1|12.531|0.542|1|7.872||32|13.968|0.036|1|14.15|0.126|1|11.632||32|7.657||32|13.531|0.028|1|13.628|0.09|1|12.217|0.542|1|7.458||32|15.261|0.135|0.028|0.614|22|0|55274.89041135|55276.94144233|55275.92886822|15.29|0.324|0.067|2.16199994|22|1|55274.89041135|55276.94144233|55275.92886822|17.641|||4.64499998|8|5|55274.89041135|55276.94144233|55275.89787957|10.496|5.353|1.141|3.80800009|13|0|55274.89041135|55276.94144233|55275.89787957|28|29|-39|1|0|0||||||||||||||||||||||||||912383624|0.588|8.3|1|16.445|0.149|15.609|0.144|15.963||2403089401241004434|1|-0.0012060859935082|-0.0017879860793737|-0.999997674228474|121000000|
+J132915.17-895234.9|202.3132303|-89.8763613|0.1363|0.1343|0.0264|302.9547093|-27.0061951|269.7129942|-66.5135042|1926.544|652.069|1802089401241003950|1802m894_ab41-003950|1802m894_ab41|3950|14.493|0.029|36.9|1.11399996|14.525|0.049|22.3|1.10899997|13.132||-0.7|0.938199997|9.49||-1.0|1.01699996|1.04100001|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|01nn|AAUU|3|0000|24|24|22|24|0|24|0|24|24.443|24.591|24.589|24.273|0.0|0.0|0.0|0.0|8|h|8|h|0||0||252.809998|6.85540009|10.301|2.383|0.066|97.7519989|4.37739992|21.856|3.029|0.0|-28.948|44.2610016|1095.853|25.531|3.866|-12.2919998|12.6730003|298.348|10.16|1.46|14.255|0.017|0|0.261|14.231|0.048|0|0.319|12.448||32|0.825|9.029||32|0.576|14.992|0.019|0|15.133|0.058|0|13.643||32|10.03||32|14.516|0.017|0|14.55|0.048|0|13.273||32|9.605||32|14.151|0.016|1|14.071|0.04|1|12.988||32|9.276||32|13.617|0.013|1|13.45|0.028|1|12.756||32|8.993||32|12.805|0.009|1|12.626|0.017|1|12.132||32|8.662||32|11.854|0.007|1|11.729|0.01|1|12.102|0.422|1|8.33||32|10.967|0.006|1|10.923|0.007|1|11.263|0.226|1|7.974||32|10.309|0.006|1|10.326|0.006|1|10.698|0.155|1|7.644||32|14.49|0.09|0.018|0.359|23|0|55274.89041135|55276.94144233|55275.92420909|14.523|0.3|0.061|1.50199997|23|1|55274.89041135|55276.94144233|55275.92420909|14.232|7.857|1.604|4.31400013|9|0|55274.89041135|55276.94144233|55275.92420909||||2.34299994|7|0|55274.89041135|55276.94144233|55275.92420909|-4|-33|-72|0|0|0||||||||||||||||||||||||||857956163|0.125|84.5|1|15.49|0.067|14.757|0.078|14.436|0.107|1802089401241003950|1|-0.0019963213679456|-0.0008192896290542|-0.999997671730039|121000000|
+J125509.37-895234.7|193.7890648|-89.876315|0.7892|0.7426|0.2288|302.9341682|-27.0044877|269.6983812|-66.5309387|1972.335|666.874|1802089401241004761|1802m894_ab41-004761|1802m894_ab41|4761|17.211|0.131|8.3|1.18200004|16.894|0.304|3.6|1.03499997|13.066||-0.2|0.932099998|9.515||-1.6|0.930199981|1.01699996|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|nnnn|BBUU|3|0000|3|25|1|25|0|25|0|25|24.483|24.679|24.881|24.822|0.0|0.0|0.0|0.0|8|h|8|h|0||0||20.677|2.50180006|10.092|2.565|0.077|11.0229998|3.08360004|21.854|3.122|0.105|-8.93459988|47.0489998|1095.637|25.734|1.402|-20.2180004|12.3850002|298.282|9.959|0.988|15.787|0.148|1|0.261|15.87|0.37|1|0.319|13.621||32|0.825|8.682||32|0.576|16.894|0.232|1|16.237||32|13.678||32|10.148||32|16.048|0.148|1|16.189|0.37|1|14.446||32|9.258||32|15.349|0.101|1|15.48|0.25|1|13.119||32|8.734||32|14.763|0.074|1|14.853|0.175|1|12.884||32|8.355||32|14.288|0.057|1|14.337|0.131|1|12.683||32|8.717|0.534|1|13.883|0.047|1|13.901|0.103|1|12.504||32|8.335|0.464|1|13.49|0.038|1|13.492|0.082|1|12.34||32|8.072|0.442|1|13.079|0.03|1|13.068|0.064|1|12.187||32|7.842|0.428|1|17.488|0.992|0.198|4.17|20|1|55274.75810734|55276.94144233|55275.87756502|16.958|2.196|0.439|3.73000002|16|0|55274.75810734|55276.94144233|55275.87756502||||4.23500013|10|0|55274.75810734|55276.94144233|55275.87756502||||0.916999996|4|0|55274.75810734|55276.94144233|55275.87756502|61|-19|18|2|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004761|1|-0.0020964943904311|-0.0005145241663844|-0.999997669985362|121000000|
+J063515.70-895234.4|98.815454|-89.8762285|0.0804|0.0758|0.0092|302.7931808|-27.136817|269.9520783|-66.683011|2166.084|653.798|1201089401241004055|1201m894_ab41-004055|1201m894_ab41|4055|11.855|0.023|46.9|0.841099977|11.873|0.022|50.2|1.03699994|11.174|0.088|12.4|1.07799995|9.269|0.425|2.6|1.278|1.05200005|1|0|0.0|0.0|0.0|0.002|0000|0000|0|011n|AAAC|15|0000|21|21|21|21|8|20|1|20|22.856|22.85|22.661|22.586|0.0|0.0|0.0|0.0|0||0||0||0||2870.0|61.2439995|9.427|2.877|0.064|1123.69995|22.3980007|21.82|3.487|0.181|537.77002|43.4099998|1095.454|22.131|0.066|31.0779991|12.1590004|297.668|9.146|0.388|11.854|0.006|1|0.261|11.875|0.008|1|0.319|11.895|0.382|0|0.825|8.569||32|0.576|12.484|0.007|0|12.628|0.009|0|13.32|0.473|0|9.735||32|12.115|0.006|1|12.194|0.008|1|12.72|0.382|0|9.145||32|11.982|0.006|1|12.029|0.009|1|12.335|0.346|1|8.669||32|11.921|0.007|1|11.954|0.009|1|12.046|0.329|1|8.281||32|11.876|0.007|1|11.9|0.01|1|11.846|0.329|1|8.708|0.512|1|11.833|0.007|1|11.853|0.011|1|11.724|0.348|1|8.441|0.485|1|11.796|0.007|1|11.812|0.011|1|11.627|0.37|1|8.16|0.447|1|11.764|0.008|1|11.776|0.012|1|11.518|0.385|1|7.897|0.413|1|11.852|0.017|0.004|0.096|20|0|55275.02271543|55276.94144233|55276.04040565|11.878|0.032|0.007|0.150999993|20|0|55275.02271543|55276.94144233|55276.04040565|11.179|0.472|0.106|2.48300004|19|1|55275.02271543|55276.94144233|55276.011895|9.974|2.694|0.602|3.79200006|14|1|55275.02271543|55276.94144233|55276.011895|15|26|-46|0|1|1||||||||||||||||||||||||||870499677|0.056|88.0|1|12.323|0.027|12.045|0.022|11.932|0.024|1201089401241004055|1|-0.000331058529312|0.0021346993976716|-0.999997666726644|111000000|
+J184247.81-895234.3|280.6992308|-89.8761985|0.3523|0.3787|-0.089|303.0709159|-27.1234213|270.0575|-66.439049|2157.593|657.067|3004089401241004699|3004m894_ab41-004699|3004m894_ab41|4699|16.271|0.062|17.5|1.13300002|16.751|0.303|3.6|0.966499984|13.097||-0.7|1.12|9.576||-1.5|0.98299998|1.04799998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|16|24|0|24|1|23|0|23|24.759|24.634|24.002|23.729|0.0|0.0|0.0|0.0|0||0||0||0||49.1679993|2.80769992|9.307|2.623|0.422|12.5790005|3.51489997|21.641|3.415|0.187|-30.2800007|45.737999|1096.904|24.94|3.244|-17.7019997|11.7110004|299.25|9.68|0.475|15.875|0.097|0|0.261|15.796|0.196|0|0.319|12.312||32|0.825|8.73||32|0.576|16.622|0.109|0|16.77|0.258|0|13.505||32|9.738||32|16.136|0.097|0|16.115|0.196|0|13.137||32|9.306||32|15.934|0.105|0|15.729|0.179|0|12.849||32|8.963||32|15.829|0.118|1|15.492|0.178|1|12.615||32|8.668||32|15.73|0.129|1|15.371|0.191|1|12.416||32|8.407||32|15.61|0.136|1|15.306|0.212|1|12.237||32|8.171||32|15.469|0.139|1|15.206|0.225|1|12.073||32|7.955||32|15.334|0.141|1|15.035|0.222|1|11.92||32|7.756||32|16.34|0.274|0.056|1.561|23|2|55275.28732341|55277.20605032|55276.16402342|16.532|1.371|0.28|2.49600005|14|0|55275.28732341|55277.20605032|55276.16402342|15.681|||5.38000011|10|0|55275.28732341|55277.20605032|55276.14460624||||3.08299994|8|0|55275.28732341|55277.20605032|55276.14460624|47|42|-31|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004699|1|0.0004011492501535|-0.002123178656486|-0.999997665593111|131000000|
+J124927.22-895233.6|192.363455|-89.8760206|0.2913|0.2788|0.0664|302.9307114|-27.0041816|269.6958749|-66.5338685|1980.03|669.413|1802089401241004325|1802m894_ab41-004325|1802m894_ab41|4325|15.923|0.05|21.7|0.883400023|16.149|0.163|6.6|0.978799999|13.089||-0.9|1.03299999|9.436||0.3|0.83920002|0.930599988|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|0nnn|ABUU|3|0000|24|25|1|25|1|25|0|25|24.627|24.424|24.911|24.826|0.0|0.0|0.0|0.0|8|h|8|h|0||0||67.737999|3.125|9.923|2.566|0.124|21.8889999|3.29460001|22.072|3.26|0.141|-40.1990013|46.0489998|1095.845|25.678|2.05|3.6013999|11.526|298.18|9.891|0.72|15.57|0.159|1|0.261|15.507|0.247|1|0.319|12.239||32|0.825|8.578||32|0.576|16.373|0.185|1|16.487|0.322|1|13.589||32|9.657||32|15.831|0.159|1|15.826|0.247|1|13.064||32|9.154||32|15.401|0.139|1|15.377|0.213|1|12.673||32|8.647||32|14.916|0.111|1|14.921|0.173|1|12.405||32|8.291||32|14.412|0.084|1|14.433|0.133|1|12.248||32|8.051||32|13.976|0.066|1|13.991|0.105|1|12.194||32|8.524|0.542|1|13.614|0.056|1|13.616|0.086|1|12.206||32|8.154|0.467|1|13.292|0.048|1|13.295|0.074|1|12.23||32|7.885|0.435|1|15.959|0.188|0.038|1.074|24|0|55274.75810734|55276.94144233|55275.87756502|16.234|0.838|0.168|3.11299992|21|1|55274.75810734|55276.94144233|55275.87756502||||3.30599999|7|1|55274.75810734|55276.94144233|55275.87756502|13.297|||2.71099997|12|0|55274.75810734|55276.94144233|55275.87756502|12|21|-12|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004325|1|-0.002113665858649|-0.0004633064459471|-0.999997658879147|121000000|
+J053451.27-895233.5|83.7136502|-89.8759782|0.9363|1.0596|-0.1079|302.8002242|-27.1687708|270.0343102|-66.6839812|1917.894|649.53|600089401241004957|0600m894_ab41-004957|0600m894_ab41|4957|17.369|0.175|6.2|0.961600006|17.265||-1.3|0.89139998|12.543|0.314|3.5|1.12100005|9.537||-0.3|0.97390002|0.98180002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BUBU|5|0000|4|20|0|20|0|19|0|19|21.811|22.142|20.982|21.325|0.0|0.0|0.0|0.0|0||0||0||0||17.8840008|2.88800001|9.377|2.837|0.083|-4.98979998|3.91540003|21.746|3.562|0.358|152.300003|44.0859985|1096.614|21.776|2.865|-3.06340003|12.1379995|298.266|9.383|0.968|16.983|0.458|1|0.261|16.067||32|0.319|12.474||32|0.825|8.385||32|0.576|17.634|0.467|1|16.846||32|13.669||32|9.646||32|17.244|0.458|1|16.386||32|13.299||32|8.961||32|16.953|0.453|1|16.051||32|13.019||32|9.191|0.537|1|16.699|0.445|1|15.744||32|12.61||32|8.666|0.429|1|16.573|0.477|1|16.159|0.482|1|12.202||32|8.317|0.391|1|15.8||32|15.904|0.448|1|11.868||32|7.999|0.358|1|15.714||32|15.655|0.414|1|11.607||32|7.684|0.324|1|15.557||32|15.33|0.352|1|11.388||32|7.454|0.312|1|17.277|0.908|0.203|3.107|17|0|55275.28745078|55277.20605032|55276.20045053||||2.89899993|7|0|55275.28745078|55277.20605032|55276.20045053|12.455|1.7|0.39|5.03700018|13|0|55275.28745078|55277.20605032|55276.17886275||||4.82999992|8|0|55275.28745078|55277.20605032|55276.17886275|-34|-6|55|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241004957|1|0.0002370168133721|0.0021515709126639|-0.999997657280075|101000000|
+J203229.86-895233.5|308.1244554|-89.8759748|0.148|0.1424|-0.0288|303.0580013|-27.1810347|270.1917403|-66.4630243|2004.697|673.84|3004089401241004181|3004m894_ab41-004181|3004m894_ab41|4181|14.698|0.031|35.2|1.01699996|14.801|0.058|18.8|0.994899988|12.743||0.9|1.12100005|9.002||1.4|1.005|1.03100002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|23|23|17|23|0|22|0|22|24.682|24.702|23.775|23.652|0.0|0.0|0.0|0.0|0||0||0||0||209.330002|5.94960022|9.319|2.9|0.0|75.7740021|4.0394001|21.752|3.413|0.105|39.5369987|43.5760002|1096.007|24.473|1.523|16.3349991|11.6999998|299.191|9.63|1.322|14.64|0.034|0|0.261|14.872|0.13|0|0.319|12.639||32|0.825|8.542||32|0.576|15.27|0.034|0|15.586|0.134|0|13.859||32|12.032||32|14.901|0.034|0|15.191|0.13|0|13.464||32|9.118||32|14.754|0.038|1|15.054|0.148|1|13.188||32|8.773||32|14.661|0.043|1|14.966|0.169|1|12.985||32|8.479||32|14.566|0.047|1|14.845|0.182|1|12.746||32|8.219||32|14.456|0.05|1|14.692|0.186|1|12.45||32|7.983||32|14.308|0.051|1|14.492|0.18|1|12.145||32|7.768||32|14.037|0.046|1|14.149|0.151|1|11.807||32|7.569||32|14.696|0.1|0.021|0.363|22|0|55275.28732341|55277.33835439|55276.24529173|14.845|0.281|0.059|1.20099998|22|1|55275.28732341|55277.33835439|55276.24529173|13.237|2.162|0.461|4.46299982|11|0|55275.28732341|55277.33835439|55276.22868597|9.857|2.953|0.63|3.91400003|12|0|55275.28732341|55277.33835439|55276.22868597|-10|56|27|0|1|0||||||||||||||||||||||||||996409743|0.146|126.7|1|15.251|0.053|14.812|0.081|14.723|0.109|3004089401241004181|1|0.0013363912585089|-0.0017028655815722|-0.999997657150863|131000000|
+J211318.60-895233.3|318.3275398|-89.8759324|0.4082|0.3892|-0.1134|303.045525|-27.2001008|270.2322059|-66.4780476|1948.341|661.186|3004089401241004655|3004m894_ab41-004655|3004m894_ab41|4655|16.244|0.075|14.4|0.795799971|15.703|0.117|9.3|0.827400029|12.518||1.5|1.03600001|9.369||0.4|0.948800027|0.896499991|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|11|22|2|22|0|21|0|21|22.578|22.823|22.443|22.798|0.0|0.0|0.0|0.0|0||0||0||0||50.4169998|3.50029993|9.228|2.952|0.077|33.0200005|3.56680012|21.714|3.466|0.253|67.2009964|44.3510017|1098.417|24.73|2.603|4.45590019|11.9440002|298.671|9.65|0.665|15.661|0.113|1|0.261|15.178|0.172|1|0.319|11.826||32|0.825|10.54||32|0.576|16.487|0.137|1|16.109|0.217|1|13.011||32|9.818||32|15.922|0.113|1|15.497|0.172|1|12.651||32|11.116||32|15.557|0.105|1|15.151|0.162|1|12.369||32|9.078||32|15.297|0.102|1|14.907|0.16|1|12.136||32|8.643||32|15.085|0.101|1|14.692|0.158|1|11.934||32|8.367||32|14.867|0.097|1|14.478|0.153|1|11.754||32|9.012||32|14.626|0.091|1|14.262|0.146|1|11.589||32|8.039||32|14.399|0.084|1|14.061|0.139|1|11.439||32|7.84||32|16.214|0.224|0.048|2.147|21|0|55275.28745078|55277.33835439|55276.34597572|15.788|0.435|0.093|2.33500004|21|0|55275.28745078|55277.33835439|55276.34597572|13.547|4.382|0.956|6.41400003|13|0|55275.28745078|55277.33835439|55276.33337368|12.924|||3.74799991|11|0|55275.28745078|55277.33835439|55276.33337368|19|-24|-29|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004655|1|0.0016174529738052|-0.0014397040283352|-0.999997655546346|131000000|
+J105135.96-895233.2|162.8998699|-89.8759159|0.8642|0.7824|-0.1072|302.862357|-27.0206356|269.7014102|-66.5969113|2145.024|662.056|1802089401241004962|1802m894_ab41-004962|1802m894_ab41|4962|17.44|0.167|6.5|0.925999999|16.266|0.193|5.6|0.871299982|12.918||-1.7|0.923399985|9.443||-1.6|0.890699983|0.900099993|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|2|22|0|22|0|21|0|22|21.917|22.136|22.854|22.525|0.0|0.0|0.0|0.0|0||0||0||0||16.7460003|2.5704999|9.67|2.737|0.125|19.6550007|3.49399996|21.842|3.407|0.124|-90.6159973|53.9420013|1096.419|26.1|1.618|-20.8279991|13.2410002|298.643|10.123|0.678|16.448||32|0.261|15.589|0.171|1|0.319|12.647||32|0.825|8.618||32|0.576|17.04||32|16.497|0.216|1|13.816||32|9.631||32|16.709||32|15.908|0.171|1|13.472||32|9.194||32|17.137|0.526|1|15.523|0.156|1|13.192||32|8.848||32|16.452|0.348|1|15.17|0.139|1|12.958||32|8.555||32|15.79|0.228|1|14.811|0.121|1|12.753||32|8.294||32|15.38|0.184|1|14.488|0.106|1|12.573||32|8.057||32|15.144|0.173|1|14.22|0.097|1|12.405||32|7.842||32|14.89|0.157|1|13.977|0.089|1|12.255||32|7.642||32|17.66|0.971|0.207|2.762|18|1|55274.75810734|55276.94144233|55275.84978638|16.219|0.87|0.186|3.02099991|17|0|55274.75810734|55276.94144233|55275.84978638||||5.15399981|6|0|55274.89041135|55276.94144233|55275.90177109||||2.61400008|7|0|55274.75810734|55276.94144233|55275.84978638|7|69|23|0|1|0|||||||||||||||||||||||||||||0|||||||1802089401241004962|1|-0.0020699351669679|0.000636800350303|-0.99999765492411|111000000|
+J064850.69-895233.0|102.2112393|-89.875842|0.7652|0.838|-0.2397|302.7924182|-27.1294922|269.9336553|-66.6820438|2148.314|661.225|1201089401241005622|1201m894_ab41-005622|1201m894_ab41|5622|17.157|0.143|7.6|0.923600018|17.009|0.4|2.7|0.806200027|12.532|0.29|3.7|0.965699971|8.971||1.2|0.947899997|0.907700002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCBU|7|0000|3|21|0|21|1|20|0|20|21.948|22.887|21.814|22.334|0.0|0.0|0.0|0.0|0||0||0||0||21.7299995|2.87190008|9.383|2.821|0.0|9.92029953|3.65190005|21.781|3.403|0.0|153.820007|41.1090012|1098.002|23.198|0.0|15.1149998|12.8940001|298.128|9.66|0.907|16.836|0.313|1|0.261|15.78||32|0.319|11.848||32|0.825|8.423||32|0.576|17.46|0.314|0|16.467||32|13.126||32|10.303||32|17.097|0.313|1|16.099||32|12.673||32|8.999||32|16.78|0.304|1|15.787||32|12.313||32|8.655||32|16.191|0.219|1|15.408||32|12.034||32|8.361||32|15.419|0.13|1|15.639|0.477|1|11.793||32|8.101||32|14.635|0.075|1|14.79|0.258|1|11.565||32|7.865||32|13.8|0.041|1|13.876|0.129|1|11.333||32|7.65||32|12.962|0.022|1|13.052|0.07|1|11.096||32|7.451||32|17.18|0.84|0.183|3.448|18|1|55275.02271543|55276.94144233|55276.04040565|17.034|1.679|0.366|3.88800001|13|0|55275.02271543|55276.94144233|55276.04040565|12.287|1.243|0.278|3.68300009|15|1|55275.02271543|55276.94144233|55276.011895|10.714|6.423|1.436|1.778|10|0|55275.02271543|55276.94144233|55276.011895|23|7|31|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005622|1|-0.0004583487625002|0.0021179355037187|-0.999997652130051|111000000|
+J044934.26-895232.8|72.3927654|-89.875801|1.3039|1.4957|0.4339|302.8115659|-27.1910786|270.0948996|-66.6790609|1978.728|669.734|600089401241005062|0600m894_ab41-005062|0600m894_ab41|5062|18.377||0.8|0.827000022|17.332||-0.3|0.855099976|11.912|0.171|6.3|1.04200006|9.256||0.6|1.12399995|0.933099985|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|21|0|21|2|20|0|20|22.279|22.584|21.932|22.527|0.0|0.0|0.0|0.0|0||0||0||0||2.04550004|2.51119995|9.358|2.69|0.127|-1.24989998|3.68169999|21.792|3.415|0.122|272.269989|42.9669991|1097.52|22.238|0.758|7.1711998|12.1420002|298.581|9.297|0.096|16.949||32|0.261|15.954||32|0.319|12.346||32|0.825|8.625||32|0.576|17.715||32|16.734||32|13.585||32|9.887||32|17.21||32|16.273||32|13.171||32|9.201||32|17.351|0.437|1|15.952||32|12.797||32|8.684||32|16.667|0.289|1|15.684||32|12.486||32|8.348||32|16.021|0.193|1|15.406||32|12.239||32|8.062||32|15.473|0.138|1|15.133||32|12.04||32|7.77||32|15.072|0.111|1|15.583|0.493|1|11.872||32|8.228|0.513|1|14.797|0.099|1|15.332|0.45|1|11.72||32|7.977|0.484|1|19.78|5.043|1.101|2.728|10|0|55275.28745078|55277.20605032|55276.23258879|20.926|||3.76600003|9|0|55275.28745078|55277.20605032|55276.23258879|11.878|0.989|0.221|1.81099999|14|0|55275.28745078|55277.20605032|55276.2136873|10.825|6.27|1.402|3.52900004|7|0|55275.28745078|55277.20605032|55276.2136873|41|-9|3|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005062|1|0.0006557017653431|0.0020661286609638|-0.999997650581016|101000000|
+J050241.91-895232.7|75.6746627|-89.875772|0.9742|1.0846|0.1798|302.807688|-27.1848568|270.0776493|-66.6810551|1960.633|665.32|600089401241004891|0600m894_ab41-004891|0600m894_ab41|4891|17.778|0.227|4.8|0.918099999|17.079|0.436|2.5|0.951300025|12.068|0.201|5.4|1.05599999|9.388||0.3|1.03199995|0.984700024|1|0|0.0|0.0|0.0|0.0|0000|D000|0|nnnn|BCBU|7|0000|1|21|1|21|2|20|0|20|21.694|22.077|21.257|21.931|0.0|0.0|0.0|0.0|129|D|0||0||0||12.2720003|2.56559992|9.413|2.716|0.011|9.29930019|3.73639989|21.748|3.446|0.183|235.970001|43.5779991|1097.741|22.247|0.0|3.94899988|11.9449997|299.016|9.482|0.091|16.848|0.299|1|0.261|16.025||32|0.319|12.61||32|0.825|8.702||32|0.576|17.56|0.324|0|16.491||32|13.799||32|9.717||32|17.109|0.299|1|16.344||32|13.435||32|9.278||32|16.755|0.278|1|16.072||32|13.162||32|8.935||32|16.355|0.239|1|15.838||32|12.93||32|8.642||32|15.984|0.205|1|15.635||32|12.728||32|8.382||32|15.69|0.185|1|15.455||32|12.55||32|8.148||32|15.469|0.175|1|15.292||32|12.387||32|7.933||32|15.247|0.164|1|15.14||32|12.236||32|7.734||32|17.819|0.97|0.212|2.88|17|0|55275.28745078|55277.20605032|55276.23258879|17.389|3.071|0.67|3.26799989|12|1|55275.28745078|55277.20605032|55276.23258879|11.982|0.806|0.18|3.96300006|17|1|55275.28745078|55277.20605032|55276.2136873|10.336|5.83|1.304|1.67900002|7|0|55275.28745078|55277.20605032|55276.2136873|5|-3|-24|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004891|1|0.0005364690134191|0.00210076994035|-0.999997649480565|101000000|
+J223053.70-895232.6|337.7237711|-89.8757232|0.1725|0.1983|-0.0864|303.0123534|-27.229766|270.2885616|-66.5133333|2171.337|653.115|89401241004173|0000m894_ab41-004173|0000m894_ab41|4173|14.319|0.042|25.8|1.62600005|14.471|0.06|18.0|1.10099995|12.601||1.1|1.04700005|8.909||0.6|1.02100003|1.20200002|2|1|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|AAUU|3|0000|24|24|16|24|0|23|0|23|23.77|23.695|22.686|22.835|0.0|0.0|0.0|0.0|0||0||0||0||296.809998|11.4860001|9.265|2.858|0.029|102.730003|5.7052002|21.777|3.434|0.237|51.1100006|46.6609993|1098.513|24.107|2.113|9.39550018|16.9440002|298.409|9.643|1.023|13.284|0.012|1|0.261|13.303|0.028|1|0.319|11.993|0.266|1|0.825|9.358||32|0.576|14.153|0.014|1|14.263|0.037|1|13.668|0.418|1|9.469||32|13.545|0.012|1|13.622|0.028|1|12.818|0.266|1|9.934||32|13.234|0.011|1|13.278|0.027|1|12.257|0.206|1|8.829||32|13.089|0.012|1|13.096|0.028|1|11.879|0.18|1|8.535||32|13.018|0.013|1|12.993|0.03|1|11.594|0.166|1|8.276||32|12.973|0.014|1|12.923|0.033|1|11.36|0.158|1|8.041||32|12.929|0.015|1|12.864|0.036|1|11.164|0.153|1|7.826||32|12.87|0.017|1|12.803|0.039|1|11.02|0.154|1|7.627||32|14.312|0.073|0.015|0.254|23|0|55275.55205887|55277.33835439|55276.41490023|14.446|0.237|0.048|0.999000013|23|0|55275.55205887|55277.33835439|55276.41490023|13.721|5.144|1.073|5.64400005|13|0|55275.55205887|55277.33835439|55276.40639074|10.548|9.082|1.894|3.30599999|11|0|55275.55205887|55277.33835439|55276.40639074|-8|5|-55|0|0|1||||||||||||||||||||||||||1201012207|0.267|96.9|1|15.396|0.07|14.573|0.073|14.337|0.097|89401241004173|1|0.0020071567233331|-0.0008222223199961|-0.999997647633405|131000000|
+J204934.13-895232.2|312.3922486|-89.8756232|0.0757|0.0732|0.0175|303.0535765|-27.189412|270.2100322|-66.4687098|1980.677|670.626|3004089401241003954|3004m894_ab41-003954|3004m894_ab41|3954|11.31|0.023|47.7|1.08899999|11.349|0.02|54.0|0.912199974|11.392|0.119|9.1|1.13499999|9.566||0.0|0.994199991|1.02900004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|111n|AABU|7|0000|23|23|23|23|9|22|0|22|23.541|23.833|23.049|23.367|0.0|0.0|0.0|0.0|0||0||0||0||4744.3999|99.4769974|9.274|2.906|0.283|1820.90002|33.7039986|21.748|3.455|0.129|439.820007|48.1839981|1098.924|25.4|4.684|0.525789976|11.5609999|298.374|9.338|0.892|11.294|0.006|0|0.261|11.344|0.007|0|0.319|11.689|0.302|0|0.825|8.752||32|0.576|11.921|0.006|0|12.102|0.008|0|13.024|0.344|0|9.767||32|11.555|0.006|0|11.663|0.007|0|12.514|0.302|0|9.328||32|11.425|0.006|0|11.493|0.008|0|12.353|0.334|0|8.984||32|11.374|0.006|0|11.424|0.008|0|12.515|0.482|0|8.69||32|11.351|0.006|1|11.388|0.009|1|11.964||32|8.429||32|11.337|0.006|1|11.362|0.01|1|12.153||32|8.195||32|11.323|0.007|1|11.338|0.011|1|12.098||32|7.979||32|11.301|0.007|1|11.308|0.011|1|11.947||32|7.78||32|11.31|0.024|0.005|0.109|22|0|55275.28732341|55277.33835439|55276.29994736|11.354|0.028|0.006|0.141000003|22|0|55275.28732341|55277.33835439|55276.29994736|11.19|0.511|0.109|4.38800001|20|1|55275.28732341|55277.33835439|55276.28582594|13.232|||4.28399992|9|0|55275.28732341|55277.33835439|55276.28582594|40|38|-43|1|1|1||||||||||||||||||||||||||996448721|0.087|-33.3|1|11.92|0.022|11.47|0.024|11.374|0.025|3004089401241003954|1|0.0014635478422207|-0.001603224931998|-0.99999764384599|131000000|
+J150729.87-895231.1|226.874482|-89.8753058|0.3156|0.3301|0.0859|303.0102214|-27.0247768|269.78649|-66.4695542|2124.174|669.477|2403089401241004940|2403m894_ab41-004940|2403m894_ab41|4940|16.148|0.06|18.1|0.841400027|15.566|0.107|10.2|1.12800002|12.829|0.472|2.3|1.15600002|9.464||-0.6|1.03199995|1.03600001|1|0|0.0|0.0|0.0|0.001|0000|h000|0|01nn|AACU|7|0000|18|22|5|22|2|21|0|21|22.628|22.586|22.515|22.108|0.0|0.0|0.0|0.0|8|h|0||0||0||55.0649986|3.04369998|9.451|2.336|0.029|37.4630013|3.68600011|21.772|3.26|0.103|117.080002|50.8510017|1095.016|25.496|1.454|-8.22609997|12.9860001|298.575|9.743|0.35|16.779|0.467|1|0.261|15.584||32|0.319|12.188||32|0.825|8.48||32|0.576|17.238|0.4|0|16.861|0.495|0|13.367||32|9.598||32|17.04|0.467|1|15.903||32|13.013||32|9.056||32|16.312||32|15.9||32|12.878||32|8.693||32|16.316||32|15.997||32|12.759||32|8.44||32|16.213||32|15.878||32|12.559||32|8.358||32|15.951||32|15.699||32|12.379||32|8.187||32|15.614||32|15.535||32|12.214||32|7.973||32|15.268||32|15.383||32|12.062||32|7.774||32|16.143|0.195|0.041|0.708|21|0|55274.89041135|55276.94144233|55275.93697808|15.587|0.772|0.165|2.671|17|1|55274.89041135|55276.94144233|55275.93697808|12.229|1.557|0.34|5.39099979|13|1|55274.89041135|55276.94144233|55275.90489997||||3.36899996|8|0|55274.89041135|55276.94144233|55275.90489997|12|-8|36|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004940|1|-0.0014877318229424|-0.0015884063175795|-0.999997631806892|121000000|
+J042603.85-895230.8|66.5160489|-89.8752404|1.2331|1.3099|0.4507|302.8189284|-27.2020467|270.1255623|-66.6750849|2011.458|676.615|600089401241005125|0600m894_ab41-005125|0600m894_ab41|5125|18.486||0.6|0.86680001|17.427||-1.2|1.02499998|11.825|0.154|7.1|1.07500005|9.585||-0.5|1.05900002|0.999599993|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|22|1|22|2|21|0|21|22.187|22.12|22.438|22.598|0.0|0.0|0.0|0.0|0||0||0||0||1.46959996|2.4598999|9.382|2.667|0.0|-4.1269002|3.37540007|21.778|3.32|0.076|295.149994|41.7719994|1099.649|22.879|2.384|-5.24139977|11.6160002|298.512|9.058|1.016|17.146|0.243|0|0.261|16.448||32|0.319|12.541||32|0.825|8.675||32|0.576|18.046|0.305|0|16.988||32|13.619||32|9.687||32|17.407|0.243|0|16.767||32|13.366||32|9.251||32|16.943|0.211|1|16.484||32|13.083||32|8.907||32|16.479|0.174|1|16.25||32|12.851||32|8.613||32|15.932|0.13|1|16.044||32|12.647||32|8.354||32|15.23|0.083|1|15.349||32|12.465||32|8.118||32|14.361|0.045|1|14.8|0.238|1|12.219||32|7.903||32|13.426|0.023|1|13.632|0.094|1|11.854||32|7.704||32||||2.876|9|0|55275.28745078|55277.33835439|55276.28285086||||2.68199992|8|0|55275.28745078|55277.33835439|55276.28285086|11.781|0.781|0.17|1.95700002|16|0|55275.28745078|55277.33835439|55276.26724288|12.577|||2.84299994|8|0|55275.28745078|55277.33835439|55276.26724288|-18|64|-12|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241005125|1|0.0008677025406125|0.0019971088038792|-0.999997629321553|101000000|
+J043844.11-895230.8|69.6838165|-89.8752343|0.379|0.4219|0.0847|302.8145075|-27.1963803|270.1094174|-66.6776751|1993.574|674.116|600089401241004494|0600m894_ab41-004494|0600m894_ab41|4494|16.447|0.072|15.0|0.931999981|16.964|0.368|2.9|0.993900001|11.502|0.116|9.4|1.15900004|8.89||1.8|1.01999998|1.02199996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1n1n|ACBU|7|0000|12|22|0|22|6|21|0|21|21.849|22.393|22.191|22.648|0.0|0.0|0.0|0.0|0||0||0||0||41.8040009|2.79069996|9.388|2.669|0.127|10.3369999|3.50519991|21.786|3.437|0.054|397.420013|42.4519997|1097.58|21.849|2.862|20.9230003|11.5719995|299.177|9.325|0.822|16.256|0.182|0|0.261|15.918||32|0.319|11.859||32|0.825|8.677||32|0.576|16.901|0.186|0|16.459||32|13.014||32|9.734||32|16.517|0.182|0|16.237||32|12.684||32|9.253||32|16.43|0.217|0|16.426||32|12.546||32|8.997||32|16.442|0.272|1|16.125||32|12.42||32|8.831||32|16.381|0.31|1|15.923||32|12.217||32|8.572||32|16.155|0.296|1|15.745||32|12.039||32|8.336||32|15.8|0.249|1|15.582||32|11.875||32|8.12||32|15.364|0.192|1|15.356||32|11.723||32|7.921||32|16.538|0.323|0.069|1.824|21|2|55275.28745078|55277.33835439|55276.28285086|17.018|1.798|0.383|3.21700001|13|0|55275.28745078|55277.33835439|55276.28285086|11.487|0.796|0.174|2.95799994|18|2|55275.28745078|55277.33835439|55276.26724288|9.409|1.847|0.403|3.33899999|15|0|55275.28745078|55277.33835439|55276.26724288|-39|2|-25|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241004494|1|0.0007560536404331|0.002042105715904|-0.999997629090758|101000000|
+J023232.86-895230.6|38.1369437|-89.8751705|0.7635|0.7418|0.2536|302.8719643|-27.2410208|270.2475964|-66.6376018|1924.335|49.527|2403089401241005689|2403m894_ab41-005689|2403m894_ab41|5689|18.853||-5.3|0.799399972|17.486||-4.0|0.980799973|11.672|0.133|8.1|1.10300004|9.242|0.369|2.9|1.08000004|0.979900002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn0n|UUBC|12|0000|0|24|0|24|5|23|0|23|23.828|23.643|22.965|22.788|0.0|0.0|0.0|0.0|0||0||0||0||-12.1149998|2.2802|9.27|2.789|0.045|-12.6929998|3.1954999|21.762|3.398|0.087|339.809998|41.7459984|1100.751|22.669|0.815|31.868|10.8369999|298.689|9.365|0.967|17.082||32|0.261|16.311||32|0.319|12.025||32|0.825|8.323||32|0.576|17.706||32|16.996||32|13.204||32|9.39||32|17.343||32|16.63||32|12.85||32|8.899||32|17.057||32|16.344||32|12.597||32|8.567||32|16.826||32|16.113||32|12.395||32|8.314||32|16.62||32|15.908||32|12.224||32|8.061||32|16.439||32|15.727||32|12.125||32|7.793||32|16.274||32|15.563||32|13.01||32|7.545||32|16.121||32|15.41||32|11.96||32|7.321||32||||1.659|3|0|55275.28745078|55277.33835439|55276.3515125||||2.44300008|4|0|55275.28745078|55277.33835439|55276.3515125|11.583|0.763|0.159|3.50500011|19|1|55275.28745078|55277.33835439|55276.34024702|9.206|1.547|0.323|2.44499993|17|0|55275.28745078|55277.33835439|55276.34024702||84|24||0|0|||||||||||||||||||||||||||||0|||||||2403089401241005689|1|0.0017136152214691|0.0013454311080568|-0.999997626666187|101000000|
+J062004.61-895230.1|95.0192342|-89.8750453|0.6784|0.7512|-0.1178|302.7928071|-27.1451331|269.972378|-66.685182|2187.123|648.123|1201089401241004992|1201m894_ab41-004992|1201m894_ab41|4992|17.274|0.154|7.1|0.957499981|16.543|0.255|4.3|0.922900021|11.813|0.159|6.8|0.998099983|8.943||1.5|0.979900002|0.959999979|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|2|21|0|22|2|21|0|20|23.22|23.633|22.947|22.64|0.0|0.0|0.0|0.0|0||0||0||0||19.5100002|2.76460004|9.42|2.86|0.246|15.2349997|3.57220006|21.855|3.458|0.08|298.5|43.8359985|1096.299|21.806|0.0|17.7910004|12.0760002|299.185|9.362|0.706|16.46|0.161|1|0.261|15.942|0.262|1|0.319|12.289||32|0.825|9.615||32|0.576|17.26|0.19|1|16.697|0.282|1|13.475||32|9.742||32|16.721|0.161|1|16.261|0.262|1|13.114||32|10.191||32|16.262|0.136|1|15.929|0.249|1|12.841||32|9.073||32|15.683|0.099|1|15.462|0.201|1|12.61||32|8.78||32|15.042|0.066|1|14.948|0.151|1|12.405||32|9.847||32|14.491|0.047|1|14.494|0.118|1|12.224||32|8.281||32|14.044|0.037|1|14.073|0.093|1|12.059||32|8.064||32|13.559|0.027|1|13.562|0.067|1|11.908||32|7.863||32|17.273|0.773|0.169|3.614|19|0|55275.02284279|55277.20605032|55276.14437398|16.487|1.245|0.265|3.05800009|16|0|55275.02284279|55277.20605032|55276.17158652|11.799|0.621|0.136|2.41700006|17|1|55275.02284279|55277.20605032|55276.15068023|9.411|2.063|0.461|4.45900011|13|0|55275.28745078|55277.20605032|55276.2070721|3|39|58|0|1|1|||||||||||||||||||||||||||||0|||||||1201089401241004992|1|-0.0001908046076067|0.0021725065217497|-0.99999762190168|111000000|
+J002359.41-895229.8|5.99755|-89.8749607|1.0927|1.0063|0.2646|302.9487208|-27.252299|270.3127865|-66.5734623|2013.789|677.601|89401241005516|0000m894_ab41-005516|0000m894_ab41|5516|17.591|0.195|5.6|0.904399991|17.382||-2.1|0.846099973|12.364|0.279|3.9|1.01699996|9.239||0.5|1.046|0.948099971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|1|21|0|21|0|20|0|20|20.84|20.655|19.913|20.152|0.0|0.0|0.0|0.0|0||0||0||0||14.5799999|2.61759996|9.301|2.683|0.0|-7.52330017|3.51729989|21.724|3.488|0.061|179.580002|46.1310005|1100.244|24.188|2.498|6.21330023|12.868|299.104|9.933|0.603|16.773|0.199|0|0.261|16.416||32|0.319|12.203||32|0.825|8.501||32|0.576|17.572|0.232|0|17.106||32|13.443||32|9.62||32|17.034|0.199|0|16.735||32|13.028||32|9.077||32|16.537|0.164|1|16.329||32|12.69||32|8.67||32|15.854|0.108|1|15.633||32|12.348||32|8.319||32|14.929|0.056|1|15.127|0.24|1|12.737|0.517|1|7.976||32|13.899|0.026|1|13.986|0.099|1|12.292|0.404|1|7.698||32|13.019|0.015|1|13.139|0.053|1|11.908|0.33|1|7.477||32|12.427|0.011|1|12.576|0.037|1|11.608|0.288|1|7.283||32|17.598|0.993|0.217|1.983|17|0|55275.55205887|55277.33835439|55276.39639986||||2.69400001|5|0|55275.55205887|55277.33835439|55276.39639986|12.152|1.076|0.241|4.36199999|14|0|55275.55205887|55277.33835439|55276.38568892|10.309|2.873|0.642|2.6400001|10|0|55275.55205887|55277.33835439|55276.38568892|31|22|60|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005516|1|0.0021704008144118|0.0002280244844382|-0.999997618679734|101000000|
+J080136.10-895229.8|120.4004379|-89.8749456|0.2894|0.2949|-0.0839|302.7979825|-27.090403|269.8402158|-66.6684886|2046.773|679.432|1201089401241004634|1201m894_ab41-004634|1201m894_ab41|4634|16.009|0.053|20.5|1.01800001|16.039|0.162|6.7|0.86559999|11.927|0.179|6.1|1.449|8.985||1.5|1.09599996|1.10300004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|18|22|1|22|2|22|1|22|22.498|22.707|21.68|21.704|0.0|0.0|0.0|0.0|0||0||0||0||62.5810013|3.05080009|9.384|2.702|0.0|24.2380009|3.60949993|21.824|3.29|0.0|268.660004|44.2960014|1097.786|23.928|1.696|17.3659992|11.507|297.614|9.045|0.652|15.879|0.129|1|0.261|15.877|0.256|1|0.319|12.453|0.396|1|0.825|8.575||32|0.576|16.534|0.133|0|16.666|0.282|0|13.946|0.524|0|9.585||32|16.14|0.129|1|16.196|0.256|1|13.278|0.396|1|9.151||32|15.959|0.142|1|15.967|0.27|1|12.891|0.359|1|8.806||32|15.834|0.156|1|15.778|0.28|1|12.548|0.322|1|8.512||32|15.674|0.163|1|15.534|0.27|1|12.233|0.29|1|8.251||32|15.465|0.159|1|15.212|0.237|1|11.967|0.266|1|8.015||32|15.256|0.153|1|14.832|0.195|1|11.723|0.247|1|7.799||32|15.035|0.144|1|14.455|0.158|1|11.557|0.242|1|7.599||32|16.042|0.31|0.066|1.196|21|1|55274.89041135|55276.94144233|55275.92497939|16.045|0.738|0.157|2.86299992|17|0|55274.89041135|55276.94144233|55275.92497939|11.905|1.191|0.254|5.35599995|15|7|55274.89041135|55276.94144233|55275.8949045|10.055|4.112|0.877|2.773|11|0|55274.89041135|55276.94144233|55275.8949045|-25|74|79|0|2|1|||||||||||||||||||||||||||||0|||||||1201089401241004634|1|-0.0011044885530865|0.0018825221941942|-0.999997618104775|111000000|
+J133823.99-895229.6|204.5999917|-89.8749088|0.328|0.3218|0.0843|302.9604846|-27.0056793|269.7146674|-66.508376|1913.102|650.449|1802089401241004472|1802m894_ab41-004472|1802m894_ab41|4472|16.059|0.056|19.3|0.984200001|16.447|0.209|5.2|1.11600006|13.064||-0.5|1.02900004|9.459||-0.9|0.844500005|0.990999997|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|0nnn|ABUU|3|0000|20|24|0|24|0|24|0|24|24.316|24.6|24.504|24.173|0.0|0.0|0.0|0.0|8|h|8|h|0||0||59.7739983|3.09629989|10.325|2.342|0.207|16.6340008|3.20630002|21.836|2.978|0.0|-23.8040009|47.118|1097.029|26.037|3.076|-11.6750002|13.0439997|298.249|10.144|1.379|16.318|0.185|0|0.261|16.849||32|0.319|12.501||32|0.825|8.885||32|0.576|16.867|0.172|0|17.21||32|13.696||32|10.265||32|16.579|0.185|0|17.168||32|13.326||32|9.461||32|16.467|0.217|1|16.889||32|13.044||32|9.068||32|16.152|0.201|1|16.653||32|12.809||32|8.742||32|15.539|0.138|1|16.07||32|12.607||32|8.435||32|14.848|0.087|1|15.69|0.318|1|12.43||32|8.123||32|14.269|0.059|1|14.746|0.156|1|12.266||32|7.838||32|13.822|0.045|1|14.115|0.1|1|12.114||32|7.571||32|16.051|0.265|0.054|1.562|22|1|55274.89041135|55276.94144233|55275.92420909|16.468|1.364|0.278|2.99099994|19|0|55274.89041135|55276.94144233|55275.92420909|13.911|6.808|1.39|5.90600014|9|0|55274.89041135|55276.94144233|55275.92420909||||2.94199991|7|0|55274.89041135|55276.94144233|55275.92420909|-14|-47|16|0|1|0|||||||||||||||||||||||||||||0|||||||1802089401241004472|1|-0.0019850915118049|-0.0009088455066241|-0.999997616702927|121000000|
+J181521.47-895229.5|273.8394882|-89.8748832|0.9764|1.0996|-0.2433|303.0707356|-27.1084725|270.0209568|-66.4358715|1867.329|625.276|2403089401241005418|2403m894_ab41-005418|2403m894_ab41|5418|17.485|0.166|6.5|0.82099998|17.468||-0.2|1.01100004|12.618||1.2|1.07299995|9.574||-0.7|1.13|1.00300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|3|24|0|24|1|23|0|23|23.717|23.665|23.03|22.849|0.0|0.0|0.0|0.0|0||0||0||0||16.0720005|2.45619988|9.553|2.634|0.0|-0.581439972|3.25029993|21.748|3.301|0.0|52.6310005|44.769001|1095.313|25.035|0.0|-7.88759995|11.7279997|299.261|9.597|0.524|16.464|0.248|1|0.261|15.877||32|0.319|12.209|0.306|1|0.825|8.221||32|0.576|17.469|0.352|1|16.707||32|13.943|0.505|1|9.517||32|16.725|0.248|1|16.196||32|13.034|0.306|1|8.797||32|16.136|0.187|1|15.749||32|12.382|0.217|1|8.905|0.511|1|15.604|0.142|1|16.042|0.509|1|11.835|0.163|1|8.393|0.417|1|15.134|0.111|1|15.5|0.373|1|11.37|0.128|1|8.167|0.431|1|14.718|0.09|1|15.012|0.281|1|10.961|0.103|1|8.071|0.49|1|14.364|0.075|1|14.594|0.223|1|10.591|0.085|1|7.235||32|14.108|0.068|1|14.309|0.197|1|10.293|0.074|1|7.13||32|17.72|1.116|0.228|3.331|21|1|55275.28732341|55277.20605032|55276.16402342|19.253|||3.20000005|9|0|55275.28732341|55277.20605032|55276.16402342|13.192|2.319|0.484|2.829|12|0|55275.28732341|55277.20605032|55276.14460624||||2.44099998|10|0|55275.28732341|55277.20605032|55276.14460624|30|-26|58|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005418|1|0.00014622384406|-0.0021787968351602|-0.999997615728627|131000000|
+J052841.86-895228.9|82.1744242|-89.8747206|0.3773|0.4123|-0.0502|302.8001731|-27.1723475|270.0430981|-66.6848157|1924.695|655.968|600089401241004459|0600m894_ab41-004459|0600m894_ab41|4459|16.281|0.072|15.1|0.92839998|16.535|0.286|3.8|0.845899999|11.673|0.139|7.8|1.05900002|9.064|0.353|3.1|0.979700029|0.948400021|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBB|15|0000|13|20|0|20|2|19|0|19|22.254|22.412|21.678|21.663|0.0|0.0|0.0|0.0|0||0||0||0||48.7290001|3.23160005|9.367|2.827|0.183|15.3439999|4.04470015|21.805|3.53|0.0|339.420013|43.4119987|1096.223|21.348|0.0|37.5229988|12.2139997|298.589|9.469|0.591|16.091|0.203|1|0.261|15.624|0.166|1|0.319|12.113||32|0.825|8.558||32|0.576|16.756|0.211|1|16.566|0.212|1|13.413||32|9.601||32|16.352|0.203|1|15.943|0.166|1|12.938||32|9.134||32|16.108|0.21|1|15.517|0.145|1|12.597||32|8.758||32|15.864|0.209|1|15.172|0.131|1|12.308||32|8.439||32|15.628|0.201|1|14.894|0.121|1|12.07||32|8.125||32|15.453|0.202|1|14.689|0.118|1|11.864||32|7.805||32|15.314|0.207|1|14.524|0.117|1|11.691||32|7.53||32|15.09|0.194|1|14.318|0.111|1|11.555||32|7.334||32|16.27|0.303|0.068|1.127|19|0|55275.28745078|55277.20605032|55276.20045053|16.523|1.043|0.233|1.96599996|14|0|55275.28745078|55277.20605032|55276.20045053|11.663|0.68|0.156|3.37599993|17|0|55275.28745078|55277.20605032|55276.17886275|9.041|1.312|0.301|4.77400017|14|0|55275.28745078|55277.20605032|55276.17886275|-12|28|-26|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004459|1|0.0002977140363945|0.0021661737384307|-0.999997609525987|101000000|
+J193147.14-895228.8|292.9464212|-89.874681|0.1366|0.1343|-0.0285|303.0705763|-27.150037|270.1222599|-66.4452586|2090.909|677.31|3004089401241004147|3004m894_ab41-004147|3004m894_ab41|4147|14.493|0.029|37.2|0.863699973|14.706|0.057|19.1|1.05599999|13.185||0.0|1.05700004|9.48||-1.4|0.968200028|0.982900023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|25|25|19|25|1|24|0|24|25.755|25.396|24.915|24.776|0.0|0.0|0.0|0.0|0||0||0||0||252.699997|6.78900003|9.318|2.723|0.022|82.7190018|4.32060003|21.783|3.482|0.11|-1.18379998|42.1609993|1095.829|24.01|0.549|-18.0|12.7930002|299.846|9.938|0.414|14.488|0.04|1|0.261|14.814|0.125|1|0.319|12.806||32|0.825|8.989||32|0.576|15.124|0.041|1|15.51|0.128|1|13.992||32|10.0||32|14.749|0.04|1|15.133|0.125|1|13.631||32|9.565||32|14.56|0.044|1|15.024|0.147|1|13.344||32|9.22||32|14.376|0.046|1|14.972|0.173|1|13.11||32|8.925||32|14.185|0.046|1|14.882|0.192|1|12.907||32|8.662||32|14.029|0.047|1|14.784|0.207|1|12.726||32|8.425||32|13.928|0.05|1|14.732|0.229|1|12.562||32|8.208||32|13.865|0.054|1|14.729|0.263|1|12.408||32|8.007||32|14.496|0.073|0.015|0.292|24|0|55275.28732341|55277.33835439|55276.21893744|14.68|0.22|0.044|1.528|24|0|55275.28732341|55277.33835439|55276.21893744|15.455|||4.73999977|8|0|55275.28732341|55277.33835439|55276.2026174||||1.22000003|6|0|55275.28732341|55277.33835439|55276.2026174|10|49|11|0|1|0||||||||||||||||||||||||||1149178761|0.092|87.7|1|14.974|0.038|14.748|0.073|14.613|0.102|3004089401241004147|1|0.0008527345007781|-0.0020141512258261|-0.999997608016495|131000000|
+J143108.80-895228.8|217.7866863|-89.8746683|0.7338|0.7385|0.2442|302.9912085|-27.0144876|269.7517614|-66.4837184|2174.0|655.001|2403089401241005896|2403m894_ab41-005896|2403m894_ab41|5896|17.128|0.129|8.4|1.01100004|16.484|0.242|4.5|1.00300002|13.044||-1.1|1.06599998|9.414||-1.1|1.00199997|1.01800001|1|0|0.0|0.0|0.0|0.0|0000|hH00|0|4nnn|BBUU|3|0000|5|21|3|21|0|21|0|21|22.556|22.762|22.469|23.135|0.0|0.0|0.0|0.0|8|h|1032|H|0||0||22.3220005|2.66070008|9.797|2.391|0.0|16.0830002|3.58260012|21.778|3.2|0.0|-53.9529991|48.0159988|1097.092|25.489|0.0|-14.7209997|13.5900002|298.493|10.147|0.568|16.87|0.317|1|0.261|16.014|0.232|1|0.319|11.973||32|0.825|8.807||32|0.576|17.799|0.432|1|16.982|0.312|1|13.131||32|9.833||32|17.131|0.317|1|16.333|0.232|1|12.798||32|9.383||32|16.539|0.237|1|15.874|0.195|1|12.52||32|9.041||32|16.024|0.186|1|15.489|0.172|1|12.269||32|8.748||32|15.595|0.151|1|15.179|0.154|1|12.071||32|8.487||32|15.209|0.124|1|14.896|0.139|1|11.897||32|8.25||32|14.793|0.099|1|14.538|0.116|1|11.73||32|8.036||32|14.293|0.072|1|14.049|0.084|1|11.581||32|7.836||32|17.179|1.038|0.227|3.982|16|2|55274.89041135|55276.94144233|55275.96476696|16.404|1.53|0.334|2.83100009|15|0|55274.89041135|55276.94144233|55275.96476696|13.503|2.557|0.558|2.55599999|10|0|55274.89041135|55276.94144233|55275.96476696||||3.0150001|5|0|55274.89041135|55276.94144233|55275.96476696|6|-59|7|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241005896|1|-0.0017287359674878|-0.0013403017858524|-0.999997607528677|121000000|
+J004241.02-895228.6|10.6709466|-89.8746281|0.3173|0.2993|0.0834|302.9373016|-27.2534367|270.3100179|-66.583618|1987.214|674.587|89401241004705|0000m894_ab41-004705|0000m894_ab41|4705|16.042|0.057|19.1|0.78490001|15.589|0.112|9.7|0.935800016|12.37|0.271|4.0|1.09399998|9.303||0.4|1.10500002|0.9727|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|19|21|3|21|2|20|0|20|20.825|20.72|19.818|19.763|0.0|0.0|0.0|0.0|0||0||0||0||60.7210007|3.17989993|9.305|2.606|0.147|36.6629982|3.77950001|21.765|3.35|0.017|178.690002|44.6559982|1098.514|23.811|2.908|4.90959978|12.6099997|298.425|9.72|0.615|15.868|0.107|1|0.261|15.277|0.185|1|0.319|12.268||32|0.825|8.953||32|0.576|16.542|0.112|0|16.112|0.211|0|15.477||32|9.942||32|16.129|0.107|1|15.596|0.185|1|13.093||32|9.529||32|15.934|0.116|1|15.303|0.184|1|12.808||32|9.212||32|15.771|0.124|1|15.099|0.188|1|12.575||32|8.95||32|15.599|0.128|1|14.952|0.198|1|12.373||32|8.721||32|15.45|0.132|1|14.848|0.212|1|12.193||32|8.518||32|15.338|0.138|1|14.783|0.232|1|12.028||32|8.25||32|15.23|0.144|1|14.744|0.257|1|11.878||32|7.909||32|16.03|0.203|0.044|0.978|20|0|55275.55205887|55277.33835439|55276.39639986|15.59|0.418|0.091|1.62899995|19|0|55275.55205887|55277.33835439|55276.39639986|12.268|0.894|0.2|3.79399991|16|1|55275.55205887|55277.33835439|55276.38568892|10.173|4.171|0.933|4.52400017|10|0|55275.55205887|55277.33835439|55276.38568892|-45|-1|-35|1|0|0|||||||||||||||||||||||||||||0|||||||89401241004705|1|0.002150310243018|0.0004051761425336|-0.999997605996211|101000000|
+J081839.21-895228.3|124.6634028|-89.8745356|0.3369|0.3294|-0.0943|302.8010828|-27.0814944|269.819859|-66.6638014|2022.354|679.504|1201089401241004685|1201m894_ab41-004685|1201m894_ab41|4685|16.127|0.059|18.4|0.934099972|16.073|0.164|6.6|0.957199991|12.799|0.388|2.8|1.14900005|9.337||0.4|0.933700025|0.989700019|1|0|0.0|0.0|0.0|0.004|0000|0000|0|0nnn|ABCU|7|0000|18|23|2|23|2|22|0|22|22.806|22.459|21.959|21.519|0.0|0.0|0.0|0.0|0||0||0||0||56.1199989|3.0466001|9.398|2.765|0.0|23.4799995|3.53979993|21.876|3.336|0.045|120.339996|43.0099983|1096.8|23.928|0.905|4.77019978|12.2130003|298.603|9.787|0.439|15.814||32|0.261|15.788|0.291|0|0.319|12.496||32|0.825|8.724||32|0.576|16.964|0.459|0|16.554|0.315|0|13.792||32|9.798||32|16.075||32|16.107|0.291|0|13.321||32|9.3||32|16.073||32|15.92|0.318|1|12.906||32|8.856||32|16.127||32|15.735|0.332|1|12.575||32|8.453||32|15.956||32|15.405|0.296|1|12.296||32|8.118||32|15.404||32|14.917|0.223|1|12.046||32|7.82||32|15.307|0.372|1|14.405|0.162|1|11.784||32|7.55||32|14.62|0.228|1|13.997|0.128|1|12.195|0.474|1|7.322||32|16.107|0.23|0.048|1.179|22|0|55274.89041135|55276.94144233|55275.9260225|16.011|0.946|0.197|3.99799991|19|1|55274.89041135|55276.94144233|55275.9260225|13.156|3.112|0.664|4.11800003|11|6|55274.89041135|55276.94144233|55275.8949045|10.631|4.331|0.923|3.98099995|12|0|55274.89041135|55276.94144233|55275.8949045|-8|34|8|0|1|0||||||||||||||||||||||||||863310646|0.13|144.8|1|16.444|0.144|15.531||15.537||1201089401241004685|1|-0.0012454383981361|0.0018010984249938|-0.999997602460956|111000000|
+J145602.07-895227.8|224.0086447|-89.8744019|0.3516|0.3628|0.1002|303.0048446|-27.0206477|269.7736973|-66.4732838|2140.617|667.542|2403089401241005545|2403m894_ab41-005545|2403m894_ab41|5545|16.194|0.062|17.5|0.925400019|15.947|0.15|7.2|0.993700027|13.01||-0.4|1.07700002|9.097||0.5|0.995899975|0.993600011|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|1nnn|ABUU|3|0000|15|21|2|21|0|20|0|20|22.374|23.172|22.669|22.591|0.0|0.0|0.0|0.0|8|h|8|h|0||0||52.7770004|3.0144999|9.457|2.352|0.0|26.3789997|3.648|21.758|3.217|0.0|-18.6930008|49.5480003|1095.762|25.225|2.069|7.66890001|14.3640003|297.934|10.024|0.595|15.936|0.225|1|0.261|15.94|0.426|1|0.319|12.179||32|0.825|8.536||32|0.576|16.924|0.315|1|16.156||32|13.365||32|9.577||32|16.197|0.225|1|16.259|0.426|1|13.004||32|9.112||32|15.398|0.14|1|15.583|0.296|1|12.722||32|8.741||32|14.67|0.089|1|14.949|0.205|1|12.49||32|8.387||32|14.218|0.071|1|14.534|0.169|1|12.287||32|8.753|0.54|1|14.013|0.069|1|14.347|0.168|1|12.105||32|8.279|0.424|1|13.935|0.075|1|14.311|0.188|1|11.942||32|7.963|0.378|1|13.907|0.084|1|14.371|0.229|1|11.789||32|7.763|0.371|1|16.206|0.315|0.069|1.176|20|1|55274.89041135|55276.94144233|55275.96791402|15.932|0.9|0.196|3.83999991|17|1|55274.89041135|55276.94144233|55275.96791402|13.584|5.272|1.179|2.04900002|9|0|55274.89041135|55276.94144233|55275.93577879|10.416|3.31|0.74|3.16400003|11|0|55274.89041135|55276.94144233|55275.93577879|-35|-21|-56|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005545|1|-0.0015766346232463|-0.0015229981391242|-0.99999759734708|121000000|
+J173302.46-895227.3|263.2602682|-89.8742538|0.3986|0.4355|0.034|303.0649695|-27.0859136|269.9630856|-66.4358273|1919.927|655.316|2403089401241005278|2403m894_ab41-005278|2403m894_ab41|5278|16.478|0.073|14.9|0.886799991|16.211|0.167|6.5|1.02499998|12.664||1.1|0.956799984|9.538||0.0|0.906199992|0.940699995|1|0|0.0|0.0|0.001|0.0|0000|hh00|0|1nnn|ABUU|3|0000|10|24|3|24|0|23|0|23|24.8|24.585|23.605|23.82|0.0|0.0|0.0|0.0|8|h|8|h|0||0||40.632|2.72989988|9.742|2.517|0.096|20.6790009|3.1875999|21.843|3.206|0.068|47.8120003|44.2589989|1095.516|24.806|2.252|-0.293639988|12.1239996|298.914|9.617|0.552|15.516|0.078|1|0.261|14.954|0.082|1|0.319|11.995||32|0.825|8.492||32|0.576|16.445|0.102|1|16.028|0.117|1|13.243||32|14.668||32|15.777|0.078|1|15.273|0.082|1|12.82||32|9.068||32|15.285|0.065|1|14.727|0.064|1|12.59||32|8.724||32|14.872|0.057|1|14.267|0.052|1|12.427||32|8.429||32|14.51|0.05|1|13.864|0.042|1|12.248||32|8.168||32|14.159|0.044|1|13.489|0.035|1|12.099||32|7.932||32|13.803|0.038|1|13.131|0.029|1|12.025||32|7.715||32|13.451|0.032|1|12.804|0.025|1|11.953||32|7.516||32|16.486|0.285|0.058|1.058|23|0|55275.02271543|55276.94144233|55276.07305113|16.285|1.181|0.241|4.52699995|19|0|55275.02271543|55276.94144233|55276.07305113|13.36|3.744|0.781|6.43599987|13|0|55275.02271543|55276.94144233|55276.04967863|11.982|||2.09599996|8|0|55275.02271543|55276.94144233|55276.04967863|30|-9|-56|1|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005278|1|-0.000257566863422|-0.002179517755813|-0.999997591677931|121000000|
+J025229.29-895227.2|43.1220471|-89.8742484|0.5228|0.5374|0.1549|302.8606389|-27.2367532|270.2315477|-66.6464968|2144.1|666.928|600089401241004789|0600m894_ab41-004789|0600m894_ab41|4789|16.786|0.095|11.5|0.874899983|16.551|0.242|4.5|0.922699988|12.143|0.202|5.4|1.11099994|8.99||1.5|0.972899973|0.966899991|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|5|24|0|24|2|23|0|23|23.759|23.659|22.927|22.717|0.0|0.0|0.0|0.0|0||0||0||0||30.5879993|2.66729999|9.263|2.701|0.058|15.1199999|3.37109995|21.76|3.392|0.243|220.289993|40.9249992|1100.319|22.508|0.922|17.0209999|11.5799999|298.152|9.338|0.668|16.221|0.216|1|0.261|15.503|0.221|1|0.319|11.921||32|0.825|8.162||32|0.576|17.07|0.267|1|16.564|0.315|1|13.232||32|9.359||32|16.482|0.216|1|15.822|0.221|1|12.746||32|8.738||32|15.833|0.153|1|15.218|0.163|1|12.353||32|8.266||32|14.99|0.087|1|14.553|0.109|1|12.713|0.535|1|8.659|0.535|1|14.05|0.045|1|13.809|0.067|1|12.2|0.403|1|8.324|0.499|1|13.176|0.024|1|13.097|0.041|1|11.769|0.32|1|8.072|0.491|17|12.536|0.016|1|12.558|0.029|1|11.456|0.279|1|7.229||32|12.179|0.014|1|12.235|0.025|1|11.26|0.267|1|7.171||32|16.872|0.498|0.102|3.357|23|1|55275.28745078|55277.33835439|55276.3515125|16.538|1.052|0.215|3.125|19|0|55275.28745078|55277.33835439|55276.3515125|12.007|0.842|0.176|4.27600002|19|1|55275.28745078|55277.33835439|55276.34024702|9.919|4.026|0.84|2.88400006|11|0|55275.28745078|55277.33835439|55276.34024702|-8|33|-24|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241004789|1|0.0016019671508735|0.0015002509922243|-0.999997591471203|101000000|
+J070225.32-895227.2|105.605501|-89.874225|0.1596|0.1631|-0.0364|302.7907641|-27.1220601|269.9145229|-66.6818242|2130.897|670.718|1201089401241004286|1201m894_ab41-004286|1201m894_ab41|4286|14.93|0.034|32.2|0.96329999|14.825|0.06|18.0|0.940599978|12.078|0.202|5.4|0.998000026|9.293||0.6|1.02400005|0.977699995|1|0|0.0|0.0|0.0|0.002|0000|0000|0|11nn|AABU|7|0000|21|21|15|21|0|20|0|20|22.818|22.824|22.341|22.705|0.0|0.0|0.0|0.0|0||0||0||0||169.100006|5.25449991|9.394|2.692|0.0|74.1429977|4.12879992|21.85|3.339|0.0|233.820007|43.4710007|1096.779|22.551|0.0|6.96610022|11.7069998|298.073|9.104|0.973|14.869|0.077|1|0.261|14.789|0.119|1|0.319|12.082||32|0.825|11.313||32|0.576|15.522|0.08|0|15.556|0.13|0|13.437||32|9.954||32|15.13|0.077|1|15.108|0.119|1|12.907||32|11.889||32|14.943|0.084|1|14.919|0.13|1|12.468||32|9.017||32|14.795|0.091|1|14.791|0.143|1|12.124||32|8.672||32|14.624|0.093|1|14.65|0.151|1|11.857||32|8.41||32|14.44|0.093|1|14.497|0.155|1|11.665||32|8.161||32|14.304|0.095|1|14.369|0.16|1|11.547||32|7.931||32|14.208|0.1|1|14.258|0.167|1|11.477||32|7.682||32|14.907|0.095|0.021|0.712|20|0|55275.02271543|55276.94144233|55276.04040565|14.823|0.288|0.063|1.19500005|20|0|55275.02271543|55276.94144233|55276.04040565|11.87|0.611|0.137|2.26200008|16|0|55275.02271543|55276.94144233|55276.011895|10.926|||2.93499994|12|0|55275.02271543|55276.94144233|55276.011895|-43|17|-59|1|0|1||||||||||||||||||||||||||843705437|0.384|-16.7|1|16.159|0.134|15.433|0.15|14.909||1201089401241004286|1|-0.0005905318334332|0.0021142636285899|-0.999997590577829|111000000|
+J232310.47-895227.1|350.7936346|-89.8742039|1.0326|0.9275|-0.0527|302.9850712|-27.2447282|270.3119186|-66.5402726|2100.689|677.132|89401241005511|0000m894_ab41-005511|0000m894_ab41|5511|17.443|0.164|6.6|0.8847|16.905||1.3|1.01199996|12.86|0.402|2.7|1.03999996|9.495||0.2|1.00199997|0.980799973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|1|24|1|24|1|23|0|23|23.513|23.599|23.017|22.746|0.0|0.0|0.0|0.0|0||0||0||0||16.6989994|2.52460003|9.249|2.718|0.04|4.33659983|3.28660011|21.757|3.428|0.194|113.75|42.0800018|1100.255|23.916|2.072|1.99010003|11.6169996|298.491|9.517|1.019|16.87|0.174|0|0.261|16.028||32|0.319|11.954||32|0.825|8.338||32|0.576|17.554|0.185|0|16.711||32|13.263||32|9.35||32|17.131|0.174|0|16.347||32|12.779||32|8.914||32|16.827|0.171|1|16.082||32|12.411||32|8.57||32|16.461|0.151|1|15.793||32|12.099||32|8.277||32|15.984|0.118|1|15.426||32|11.832||32|8.016||32|15.447|0.085|1|15.598|0.381|1|11.598||32|7.78||32|15.017|0.067|1|15.157|0.296|1|11.403||32|7.565||32|14.728|0.059|1|14.897|0.268|1|11.256||32|7.365||32|17.398|0.851|0.174|3.59|20|0|55275.55205887|55277.33835439|55276.41490023|19.504|||4.05900002|12|2|55275.55205887|55277.33835439|55276.41490023|12.478|1.523|0.318|2.72300005|15|0|55275.55205887|55277.33835439|55276.40639074|10.954|8.726|1.819|2.97799993|9|0|55275.55205887|55277.33835439|55276.40639074|-28|-48|-50|0|1|1|||||||||||||||||||||||||||||0|||||||89401241005511|1|0.0021672720784393|-0.0003512685778879|-0.999997589768157|131000000|
+J161226.51-895226.9|243.1104613|-89.8741502|0.1407|0.1464|0.0179|303.0405584|-27.047643|269.8575527|-66.448401|2032.231|681.137|2403089401241004478|2403m894_ab41-004478|2403m894_ab41|4478|14.628|0.031|35.1|1.17900002|14.597|0.051|21.2|0.915000021|12.771|0.441|2.5|1.03499997|9.521||-0.3|0.987800002|1.028|1|0|0.0|0.0|0.0|0.0|0000|dd00|0|11nn|AACU|7|0000|23|23|20|22|1|21|0|22|23.963|23.875|22.649|23.129|0.0|0.0|0.0|0.0|9|dh|1|d|0||0||223.229996|6.35200024|9.501|2.332|0.048|91.4120026|4.31290007|21.791|3.102|0.029|123.519997|50.1619987|1094.586|25.289|2.77|-4.2349|12.316|298.549|9.768|1.109|14.273|0.035|0|0.261|14.3|0.072|0|0.319|12.307|0.52|0|0.825|8.997||32|0.576|15.079|0.042|0|15.21|0.089|0|12.946||32|10.004||32|14.534|0.035|0|14.619|0.072|0|13.132|0.52|0|9.573||32|14.17|0.032|1|14.237|0.066|1|12.577|0.405|1|9.239||32|13.857|0.03|1|13.906|0.06|1|12.145|0.337|1|8.953||32|13.501|0.026|1|13.518|0.051|1|11.783|0.292|1|8.7||32|12.99|0.02|1|12.994|0.037|1|11.464|0.256|1|8.471||32|12.351|0.013|1|12.369|0.025|1|11.158|0.225|1|8.262||32|11.707|0.01|1|11.742|0.017|1|10.854|0.196|1|8.069||32|14.639|0.065|0.014|0.327|22|0|55275.02271543|55276.94144233|55275.98639725|14.595|0.266|0.057|1.08599997|21|1|55275.02271543|55276.94144233|55275.97607081|12.391|1.692|0.369|3.66100001|12|0|55275.02271543|55276.94144233|55275.94585425|11.807|||3.16599989|10|0|55275.02271543|55276.94144233|55275.95802356|36|-23|33|1|0|0||||||||||||||||||||||||||912485796|0.177|65.8|1|15.346|0.063|14.887|0.082|14.773|0.128|2403089401241004478|1|-0.0009934117358351|-0.0019590079183468|-0.99999758770764|121000000|
+J222937.15-895226.8|337.4048238|-89.8741369|0.1065|0.1194|-0.0455|303.0140238|-27.2306574|270.2915591|-66.5120789|2174.607|656.258|89401241004172|0000m894_ab41-004172|0000m894_ab41|4172|13.474|0.029|37.7|1.62600005|13.371|0.032|33.8|1.10099995|11.595|0.14|7.8|1.04700005|8.825||0.8|1.02100003|1.20200002|2|1|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|AABU|7|0000|24|24|24|24|3|23|0|23|23.702|23.581|22.802|22.804|0.0|0.0|0.0|0.0|0||0||0||0||646.309998|17.1560001|9.265|2.858|0.177|282.940002|8.3718996|21.777|3.434|0.035|364.600006|46.8889999|1098.513|24.107|0.807|13.276|16.7469997|298.409|9.643|0.321|13.114|0.011|1|0.261|13.053|0.023|1|0.319|11.504|0.185|1|0.825|8.397||32|0.576|13.867|0.013|1|13.912|0.027|1|13.016|0.25|1|9.421||32|13.375|0.011|1|13.372|0.023|1|12.329|0.185|1|8.973||32|13.142|0.011|1|13.111|0.023|1|11.915|0.163|1|8.709||32|13.03|0.012|1|12.98|0.025|1|11.64|0.157|1|8.483||32|12.972|0.014|1|12.908|0.028|1|11.439|0.157|1|8.359||32|12.925|0.015|1|12.851|0.031|1|11.291|0.162|1|8.208||32|12.873|0.016|1|12.793|0.034|1|11.195|0.172|1|7.993||32|12.818|0.018|1|12.739|0.037|1|11.121|0.184|1|7.794||32|13.469|0.037|0.007|0.207|23|0|55275.55205887|55277.33835439|55276.41490023|13.369|0.079|0.016|0.326999992|23|0|55275.55205887|55277.33835439|55276.41490023|11.498|0.68|0.142|3.11400008|19|0|55275.55205887|55277.33835439|55276.40639074|10.227|8.577|1.789|3.09599996|11|0|55275.55205887|55277.33835439|55276.40639074|18|25|6|0|1|0||||||||||||||||||||||||||1201012204|0.301|44.2|1|14.706|0.064|13.916|0.062|13.605|0.064|89401241004172|1|0.0020281080975573|-0.0008440195915161|-0.999997587201326|131000000|
+J091500.34-895226.7|138.7514275|-89.8740859|0.6788|0.6418|-0.1729|302.8173767|-27.0542917|269.761207|-66.6435465|1943.037|664.527|1201089401241005158|1201m894_ab41-005158|1201m894_ab41|5158|16.877|0.112|9.7|0.980199993|16.773|0.302|3.6|0.857200027|12.537||1.3|1.11699998|9.49||-0.7|1.00300002|0.986500025|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BBUU|3|0000|4|22|0|22|0|22|1|22|23.743|23.724|22.948|22.743|0.0|0.0|0.0|0.0|0||0||0||0||28.1369991|2.89490008|9.338|2.799|0.258|12.3219995|3.42759991|21.829|3.267|0.173|61.6899986|45.7099991|1095.85|24.834|4.338|-9.21819973|12.677|298.054|9.632|1.118|16.161||32|0.261|16.451|0.454|0|0.319|11.871||32|0.825|8.815||32|0.576|16.691||32|17.133|0.448|0|13.072||32|9.825||32|16.422||32|16.77|0.454|0|12.696||32|9.391||32|16.414||32|16.67|0.535|1|12.415||32|10.588||32|18.543||32|15.81||32|12.186||32|8.578||32|16.344||32|15.683||32|11.983||32|8.201||32|16.167||32|15.554||32|11.806||32|7.818||32|16.005||32|15.429||32|11.643||32|7.486||32|15.849||32|15.241||32|11.488||32|7.26||32|16.938|0.458|0.098|1.709|21|0|55274.89041135|55276.94144233|55275.8949045|16.843|1.4|0.299|3.29500008|17|0|55274.89041135|55276.94144233|55275.8949045|13.852|5.871|1.252|3.91799998|12|0|55274.89041135|55276.94144233|55275.8949045||||3.45499992|8|0|55274.89041135|55276.94144233|55275.8949045|17|47|-26|0|1|0|||||||||||||||||||||||||||||0|||||||1201089401241005158|1|-0.0016522902787835|0.0014489468611313|-0.999997585241999|111000000|
+J035146.11-895226.2|57.9421303|-89.8739468|1.2155|1.2875|0.44|302.831541|-27.2171251|270.1689259|-66.6674501|2060.385|681.82|600089401241005849|0600m894_ab41-005849|0600m894_ab41|5849|18.6||0.4|0.994799972|16.842|0.317|3.4|0.916599989|12.019|0.183|5.9|1.08899999|9.132||1.2|1.00899994|0.998899996|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nn1n|UBBU|6|0000|0|23|1|23|4|22|0|22|24.466|24.186|22.67|23.438|0.0|0.0|0.0|0.0|1161|DH|137|Dh|0||0||0.92839998|2.41170001|9.341|2.554|0.102|11.5690002|3.37380004|21.745|3.38|0.104|246.740005|41.644001|1099.083|22.52|3.174|13.2229996|11.0190001|298.623|9.0|1.141|15.938|0.073|1|0.261|15.286|0.176|1|0.319|12.761|0.52|0|0.825|8.509||32|0.576|16.983|0.106|0|16.272|0.233|0|13.354||32|9.709||32|16.199|0.073|1|15.605|0.176|1|13.586|0.52|0|9.085||32|15.642|0.06|1|15.187|0.156|1|13.199|0.471|1|8.575||32|15.187|0.051|1|14.837|0.141|1|12.928|0.452|1|8.944|0.541|1|14.802|0.046|1|14.504|0.126|1|12.605|0.402|1|8.641|0.519|1|14.475|0.042|1|14.201|0.113|1|12.242|0.336|1|8.407|0.519|1|14.193|0.039|1|13.936|0.104|1|11.91|0.287|1|8.135|0.491|1|13.922|0.037|1|13.69|0.096|1|11.633|0.254|1|7.842|0.45|1||||2.758|11|0|55275.28745078|55277.33835439|55276.26833435|17.175|1.781|0.371|3.61500001|16|0|55275.28745078|55277.33835439|55276.26833435|11.914|1.098|0.234|3.0769999|16|2|55275.28745078|55277.33835439|55276.25277598|10.038|3.306|0.705|4.29099989|11|0|55275.28745078|55277.33835439|55276.25277598|-4|4|-51|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241005849|1|0.0011677286830854|0.0018645632937606|-0.999997579903795|101000000|
+J092353.10-895225.9|140.9712913|-89.8738726|0.3935|0.3642|-0.113|302.8204888|-27.0502668|269.7528931|-66.6399387|1930.813|660.749|1201089401241004701|1201m894_ab41-004701|1201m894_ab41|4701|16.199|0.066|16.4|0.948800027|16.585|0.24|4.5|0.96390003|13.109||-1.5|0.894500017|9.598||-0.4|1.01400006|0.952499986|1|0|0.0|0.0|0.0|0.001|0000|0000|0|0nnn|ABUU|3|0000|15|23|0|23|0|23|0|23|23.677|23.686|22.929|22.626|0.0|0.0|0.0|0.0|0||0||0||0||52.5219994|3.1947999|9.414|2.806|0.432|14.6610003|3.24070001|21.848|3.266|0.443|-69.8239975|45.2169991|1096.481|25.107|2.092|-4.98250008|11.4799995|298.092|9.807|1.358|16.43|0.321|1|0.261|16.712|0.466|1|0.319|12.005||32|0.825|8.534||32|0.576|16.899|0.278|0|17.252|0.407|0|13.197||32|9.548||32|16.691|0.321|1|17.031|0.466|1|12.83||32|9.11||32|16.711|0.424|1|16.221||32|12.55||32|8.766||32|16.67|0.507|1|16.033||32|12.315||32|8.471||32|16.377|0.466|1|16.467|0.538|1|12.112||32|8.21||32|15.986|0.384|1|15.941|0.392|1|11.932||32|7.975||32|15.67|0.334|1|15.47|0.296|1|11.768||32|7.759||32|15.352|0.287|1|15.011|0.224|1|11.615||32|7.56||32|16.171|0.294|0.061|1.034|22|0|55274.89041135|55276.94144233|55275.86561452|16.649|1.535|0.32|3.2420001|17|0|55274.89041135|55276.94144233|55275.86561452||||3.67700005|6|0|55274.89041135|55276.94144233|55275.86561452||||3.08500004|10|0|55274.89041135|55276.94144233|55275.86561452|-4|41|-20|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004701|1|-0.0017100660895126|0.0013862035191513|-0.999997577053951|111000000|
+J144926.71-895225.1|222.3613122|-89.87364|0.1114|0.1122|0.0134|303.0017654|-27.018163|269.7660764|-66.4753922|2150.266|666.646|2403089401241004069|2403m894_ab41-004069|2403m894_ab41|4069|13.796|0.026|41.6|0.964999974|13.837|0.037|29.3|0.9278|12.543||1.1|1.00899994|9.341||-1.6|0.874499977|0.941399992|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|11nn|AAUU|3|0000|20|20|20|20|0|20|0|20|23.179|23.61|22.812|22.88|0.0|0.0|0.0|0.0|8|h|8|h|0||0||480.5|11.5430002|9.37|2.343|0.043|184.130005|6.29050016|21.813|3.212|0.13|54.848999|48.7779999|1096.558|25.273|2.862|-23.7730007|14.54|298.174|10.075|0.459|13.804|0.015|1|0.261|13.976|0.085|1|0.319|12.058||32|0.825|8.712||32|0.576|14.442|0.016|1|14.71|0.088|1|13.253||32|9.725||32|14.065|0.015|1|14.295|0.085|1|12.883||32|9.288||32|13.912|0.016|1|14.166|0.097|1|12.606||32|8.942||32|13.831|0.018|1|14.151|0.118|1|12.373||32|8.648||32|13.776|0.021|1|14.197|0.149|1|12.168||32|8.386||32|13.724|0.023|1|14.294|0.192|1|11.987||32|8.152||32|13.659|0.025|1|14.414|0.249|1|11.822||32|7.936||32|13.58|0.027|1|14.561|0.328|1|11.671||32|7.737||32|13.794|0.056|0.012|0.222|19|0|55274.89041135|55276.94144233|55275.93577879|13.845|0.133|0.03|0.47299999|19|0|55274.89041135|55276.94144233|55275.93577879|12.929|2.399|0.536|3.78999996|9|0|55274.89041135|55276.94144233|55275.93577879||||2.57500005|3|0|55274.89041135|55276.94144233|55275.93577879|-31|-13||1|0|||||||||||||||||||||||||||858232120|0.194|-100.7|1|14.945|0.045|14.076|0.044|13.899|0.059|2403089401241004069|1|-0.0016295907772496|-0.0014860042896226|-0.999997568109618|121000000|
+J194057.09-895224.7|295.2379037|-89.8735527|0.1953|0.1954|-0.0548|303.0707242|-27.1551943|270.1349178|-66.4462734|2078.138|681.707|3004089401241004351|3004m894_ab41-004351|3004m894_ab41|4351|15.348|0.038|28.6|1.10300004|15.43|0.092|11.8|1.04499996|12.567||1.5|1.051|9.614||0.0|0.921000004|1.02900004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|25|25|8|25|0|24|0|24|25.756|25.597|24.887|24.729|0.0|0.0|0.0|0.0|0||0||0||0||115.029999|4.02589989|9.322|2.707|0.24|42.4700012|3.60050011|21.764|3.387|0.314|64.2929993|42.3849983|1095.804|24.28|1.142|0.436749995|11.0939999|299.273|9.527|0.676|15.32|0.082|1|0.261|15.22|0.132|1|0.319|12.295||32|0.825|8.941||32|0.576|15.947|0.084|0|16.027|0.15|0|13.585||32|9.951||32|15.581|0.082|1|15.539|0.132|1|13.12||32|9.517||32|15.41|0.091|1|15.269|0.133|1|12.747||32|9.171||32|15.217|0.094|1|15.051|0.135|1|12.475||32|8.876||32|14.9|0.085|1|14.807|0.13|1|12.286||32|8.615||32|14.53|0.071|1|14.544|0.121|1|12.154||32|8.378||32|14.256|0.064|1|14.337|0.116|1|12.092||32|8.162||32|14.101|0.064|1|14.21|0.119|1|12.091||32|7.962||32|15.379|0.145|0.029|0.735|24|0|55275.28732341|55277.33835439|55276.21893744|15.377|0.468|0.094|1.954|23|1|55275.28732341|55277.33835439|55276.21893744|13.256|3.202|0.654|3.05299997|14|0|55275.28732341|55277.33835439|55276.2026174||||3.40700006|9|0|55275.28732341|55277.33835439|55276.2026174|33|29|44|1|1|0||||||||||||||||||||||||||1149191928|0.263|14.6|1|15.956|0.08|15.608|0.136|14.895|0.144|3004089401241004351|1|0.0009409816027454|-0.0019962587424774|-0.999997564749363|131000000|
+J014551.77-895224.7|26.4657323|-89.873543|0.2379|0.2372|0.0715|302.8984532|-27.2510604|270.2852378|-66.6168075|1900.442|648.409|89401241004577|0000m894_ab41-004577|0000m894_ab41|4577|15.595|0.044|24.5|0.909300029|15.641|0.117|9.3|1.005|12.519|0.296|3.7|1.20000005|9.061||1.2|1.01600003|1.028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|ABBU|7|0000|23|23|4|23|1|22|0|22|22.82|23.427|22.239|22.033|0.0|0.0|0.0|0.0|0||0||0||0||91.6269989|3.74580002|9.172|2.739|0.175|34.9700012|3.7730999|21.743|3.41|0.064|155.710007|42.4570007|1100.225|23.014|0.222|13.9750004|11.8389997|298.286|9.645|0.884|15.648|0.072|0|0.261|15.606|0.197|0|0.319|11.806||32|0.825|8.93||32|0.576|16.215|0.07|0|16.302|0.2|0|15.626||32|9.942||32|15.909|0.072|0|15.925|0.197|0|12.631||32|9.506||32|15.853|0.088|0|15.814|0.229|0|12.351||32|9.161||32|15.863|0.11|0|15.71|0.258|0|12.117||32|8.869||32|15.817|0.127|1|15.491|0.254|1|11.914||32|8.609||32|15.541|0.116|1|15.126|0.215|1|11.732||32|8.374||32|15.008|0.083|1|14.696|0.168|1|11.569||32|8.05||32|14.494|0.06|1|14.321|0.137|1|11.415||32|7.719||32|15.63|0.138|0.029|0.829|22|0|55275.55205887|55277.33835439|55276.39777605|15.611|0.564|0.118|2.523|20|0|55275.55205887|55277.33835439|55276.39777605|12.283|1.444|0.308|2.19499993|13|0|55275.55205887|55277.33835439|55276.3881014|10.289|4.935|1.052|2.54399991|11|0|55275.55205887|55277.33835439|55276.3881014|-18|-25|-17|0|0|0||||||||||||||||||||||||||1110834314|0.127|-101.4|1|16.55|0.157|15.934|0.241|15.444|0.234|89401241004577|1|0.001975788402972|0.0009836167632448|-0.999997564376159|101000000|
+J022256.48-895224.7|35.7353717|-89.8735329|1.2635|1.2069|0.445|302.8766191|-27.2446659|270.2588431|-66.6343582|2184.561|653.667|600089401241005742|0600m894_ab41-005742|0600m894_ab41|5742|18.123||1.8|0.825399995|16.949|0.358|3.0|0.886399984|12.068|0.181|6.0|1.09099996|9.189||1.0|0.995000005|0.945200026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UCBU|6|0000|0|24|0|24|0|23|0|23|23.831|23.568|22.947|22.754|0.0|0.0|0.0|0.0|0||0||0||0||4.1796999|2.37310004|9.32|2.819|0.028|10.4849997|3.45560002|21.737|3.391|0.0|236.039993|39.3790016|1098.924|22.0|2.191|10.927|11.2620001|298.622|9.343|2.096|16.908||32|0.261|16.507|0.389|0|0.319|12.441||32|0.825|8.509||32|0.576|17.457||32|17.249|0.412|0|16.387||32|9.641||32|17.169||32|16.826|0.389|0|13.266||32|9.085||32|17.099||32|16.652|0.428|0|12.986||32|8.604||32|17.029||32|16.593|0.503|1|12.751||32|8.228||32|16.825||32|15.79||32|12.546||32|7.946||32|16.644||32|15.688||32|12.365||32|8.391|0.51|1|16.48||32|15.485||32|12.202||32|8.124|0.484|1|16.328||32|15.234||32|12.049||32|7.936|0.488|1|18.72|1.608|0.328|3.146|15|0|55275.28745078|55277.33835439|55276.3515125|16.94|1.591|0.325|2.59100008|16|0|55275.28745078|55277.33835439|55276.3515125|12.079|0.921|0.192|4.28700018|19|0|55275.28745078|55277.33835439|55276.34024702|10.214|3.731|0.778|3.54299998|11|0|55275.28745078|55277.33835439|55276.34024702|-16|-33|-55|0|1|1|||||||||||||||||||||||||||||0|||||||600089401241005742|1|0.0017916880874933|0.001289136476979|-0.999997563987503|101000000|
+J211220.36-895224.6|318.0848616|-89.8735006|0.5514|0.5187|-0.1725|303.0481013|-27.2010727|270.2358435|-66.4760259|1947.724|667.674|3004089401241004747|3004m894_ab41-004747|3004m894_ab41|4747|16.603|0.098|11.0|0.80400002|16.101|0.166|6.5|0.925899982|13.029|0.486|2.2|1.11099994|9.212||0.7|0.993799984|0.954200029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABCU|7|0000|8|22|3|22|1|21|0|21|22.793|23.281|22.881|23.007|0.0|0.0|0.0|0.0|0||0||0||0||36.2039986|3.27979994|9.278|2.965|0.035|22.8829994|3.49390006|21.761|3.503|0.017|97.3219986|43.5519981|1097.28|24.416|5.21|8.6257|12.0679998|298.812|9.673|1.879|15.783|0.114|1|0.261|15.179|0.158|1|0.319|11.923||32|0.825|8.82||32|0.576|16.658|0.143|1|16.156|0.206|1|13.115||32|11.472||32|16.044|0.114|1|15.498|0.158|1|12.748||32|9.396||32|15.651|0.103|1|15.117|0.144|1|12.468||32|8.922||32|15.418|0.103|1|14.874|0.142|1|12.236||32|8.592||32|15.274|0.108|1|14.709|0.148|1|12.031||32|8.352||32|15.07|0.106|1|14.539|0.149|1|11.851||32|8.155||32|14.717|0.089|1|14.291|0.138|1|11.687||32|7.975||32|14.316|0.071|1|13.99|0.12|1|11.535||32|8.726||32|16.53|0.482|0.103|3.112|21|1|55275.28745078|55277.33835439|55276.34597572|16.107|0.912|0.194|3.6170001|18|1|55275.28745078|55277.33835439|55276.34597572|12.635|2.015|0.44|3.38400006|12|0|55275.28745078|55277.33835439|55276.33337368|11.144|7.08|1.545|2.84200001|12|0|55275.28745078|55277.33835439|55276.33337368|14|42|-50|0|1|1|||||||||||||||||||||||||||||0|||||||3004089401241004747|1|0.0016429237035379|-0.0014748948645541|-0.999997562740451|131000000|
+J062818.89-895224.3|97.0787292|-89.8734417|0.1556|0.1593|-0.0342|302.7904211|-27.1408327|269.9605924|-66.6862976|2178.039|656.792|1201089401241004243|1201m894_ab41-004243|1201m894_ab41|4243|14.797|0.033|33.1|1.22399998|14.868|0.062|17.6|0.860400021|12.018|0.186|5.8|1.10000002|9.228||0.8|1.13199997|1.074|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|22|22|15|22|1|21|0|21|23.483|23.714|23.045|22.616|0.0|0.0|0.0|0.0|0||0||0||0||191.020004|5.76910019|9.422|2.899|0.263|71.2529984|4.04110003|21.679|3.407|0.058|247.020004|42.3380013|1097.056|21.896|2.436|9.57400036|11.3540001|298.005|9.22|1.138|14.285|0.022|1|0.261|14.245|0.055|1|0.319|11.908||32|0.825|8.527||32|0.576|15.145|0.027|1|15.26|0.076|1|13.404||32|9.744||32|14.546|0.022|1|14.564|0.055|1|12.733||32|9.103||32|13.977|0.017|1|13.948|0.041|1|12.727|0.371|1|8.663||32|13.289|0.012|1|13.278|0.028|1|12.129|0.266|1|8.325||32|12.621|0.009|1|12.655|0.019|1|11.691|0.214|1|8.048||32|12.152|0.008|1|12.204|0.016|1|11.373|0.189|1|7.813||32|11.903|0.007|1|11.946|0.014|1|11.16|0.181|1|7.589||32|11.791|0.007|1|11.821|0.015|1|11.025|0.184|1|7.413||32|14.797|0.091|0.019|0.398|21|0|55275.02284279|55277.20605032|55276.17158652|14.854|0.364|0.078|1.37|21|1|55275.02284279|55277.20605032|55276.17158652|12.088|0.817|0.178|2.66700006|18|0|55275.02284279|55277.20605032|55276.15068023|10.85|7.094|1.548|4.3499999|10|0|55275.02284279|55277.20605032|55276.15068023|7|10|25|0|0|0||||||||||||||||||||||||||870486806|0.18|119.0|1|16.128|0.115|15.013|0.098|14.895|0.156|1201089401241004243|1|-0.0002722042393204|0.0021920206307995|-0.999997560472227|111000000|
+J163330.62-895224.3|248.3776118|-89.8734217|0.1004|0.1012|-0.0169|303.0490775|-27.0564461|269.8832948|-66.442994|2001.819|680.189|2403089401241004160|2403m894_ab41-004160|2403m894_ab41|4160|13.482|0.025|42.7|0.934099972|13.482|0.03|36.1|1.02600002|12.891||0.4|0.971199989|9.512||-1.2|0.9921|0.977500021|1|0|0.0|0.0|0.0|0.001|0000|dd00|0|00nn|AAUU|3|0000|24|24|23|23|1|22|0|23|23.809|23.937|23.001|22.954|0.0|0.0|0.0|0.0|9|dh|9|dh|0||0||641.609985|15.033|9.938|2.521|0.023|255.399994|7.0795002|21.885|3.027|0.12|20.052|45.2700005|1095.825|24.917|2.587|-15.4169998|12.4219999|298.91|9.902|0.41|13.36|0.009|1|0.261|13.407|0.077|1|0.319|11.93||32|0.825|8.865||32|0.576|14.039|0.01|0|14.208|0.086|0|19.251||32|9.876||32|13.621|0.009|1|13.726|0.077|1|12.755||32|9.441||32|13.414|0.009|1|13.499|0.08|1|12.477||32|9.1||32|13.258|0.009|1|13.367|0.088|1|12.245||32|8.805||32|13.089|0.01|1|13.241|0.095|1|12.042||32|8.544||32|12.853|0.009|1|13.047|0.093|1|11.863||32|8.309||32|12.523|0.008|1|12.764|0.084|1|11.7||32|8.093||32|12.183|0.007|1|12.464|0.073|1|11.546||32|7.893||32|13.483|0.049|0.01|0.208|23|0|55275.02271543|55276.94144233|55276.01516015|13.489|0.085|0.018|0.361000001|22|0|55275.02271543|55276.94144233|55275.98639725|13.951|5.752|1.226|4.0630002|9|1|55275.02271543|55276.94144233|55275.95802356||||2.93799996|6|0|55275.02271543|55276.94144233|55275.98927066|-15|29|53|0|0|0||||||||||||||||||||||||||912571336|0.486|66.1|1|14.379|0.035|13.744|0.029|13.423|0.046|2403089401241004160|1|-0.0008140653572908|-0.0020537494188236|-0.999997559702482|121000000|
+J061509.17-895224.0|93.7882482|-89.8733522|1.2319|1.4213|-0.1077|302.7913682|-27.148054|269.9788567|-66.6870785|2195.422|649.037|1201089401241005032|1201m894_ab41-005032|1201m894_ab41|5032|18.067||1.6|0.868099988|17.387||-0.4|0.920099974|11.907|0.166|6.5|1.06700003|9.543||0.1|1.00899994|0.954400003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn1n|UUBU|4|0000|1|22|0|22|7|21|0|20|23.588|23.627|22.935|22.624|0.0|0.0|0.0|0.0|0||0||0||0||4.24639988|2.57789993|9.394|2.841|0.0|-1.4497|3.4999001|21.855|3.458|0.0|273.720001|41.855999|1096.299|21.806|0.0|0.734759986|11.7030001|299.185|9.362|2.133|16.521||32|0.261|16.43|0.436|1|0.319|12.423||32|0.825|8.663||32|0.576|17.22||32|16.678||32|13.842||32|9.67||32|16.782||32|16.749|0.436|1|13.248||32|9.239||32|16.414||32|16.201|0.343|1|12.961||32|8.896||32|16.167||32|15.887|0.318|1|12.728||32|8.599||32|16.067||32|15.79|0.349|1|12.529||32|8.339||32|16.02||32|15.717|0.385|1|12.35||32|8.103||32|15.833||32|15.447|0.349|1|12.186||32|7.886||32|15.433||32|15.006|0.268|1|12.032||32|7.686||32|18.859|3.009|0.642|2.966|13|0|55275.02284279|55277.20605032|55276.17158652|18.293|3.672|0.783|3.08299994|13|0|55275.02284279|55277.20605032|55276.17158652|11.829|1.165|0.254|4.49700022|16|1|55275.02284279|55277.20605032|55276.15068023|12.76|||1.72000003|7|0|55275.28745078|55277.20605032|55276.2070721|9|-22|-4|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005032|1|-0.0001460406796165|0.0022055888746402|-0.999997557021934|111000000|
+J221403.89-895224.0|333.5162246|-89.8733431|1.2826|1.2269|-0.4486|303.0222167|-27.2260791|270.2843495|-66.5039689|2195.875|648.832|89401241005450|0000m894_ab41-005450|0000m894_ab41|5450|18.421|0.398|2.7|0.861299992|17.167||0.6|0.827300012|12.021|0.178|6.1|1.17200005|9.512||-0.2|1.097|0.979399979|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|CUBU|5|0000|0|24|0|24|2|23|0|23|23.654|24.203|23.261|22.892|0.0|0.0|0.0|0.0|0||0||0||0||6.78299999|2.48629999|9.225|2.865|0.155|1.91999996|3.32680011|21.736|3.391|0.066|246.470001|40.3470001|1098.907|23.944|0.0|-2.86409998|12.4259996|298.116|9.586|0.894|16.554|0.214|0|0.261|16.399|0.419|0|0.319|12.169|0.297|0|0.825|8.643||32|0.576|17.575|0.31|0|16.633||32|13.578|0.363|0|9.81||32|16.815|0.214|0|16.718|0.419|0|12.994|0.297|0|9.219||32|16.216|0.16|0|16.16|0.325|0|12.623|0.273|0|8.727||32|15.601|0.112|0|15.533|0.226|0|12.255|0.241|0|8.29||32|14.815|0.066|1|14.691|0.126|1|11.867|0.203|1|7.955||32|13.834|0.032|1|13.706|0.06|1|11.481|0.168|1|8.401|0.516|1|12.864|0.016|1|12.795|0.031|1|11.115|0.14|1|8.098|0.474|1|12.086|0.01|1|12.078|0.019|1|10.797|0.12|1|7.895|0.471|1|18.513|2.741|0.56|3.139|16|0|55275.55205887|55277.33835439|55276.41490023|18.57|6.84|1.396|3.80900002|11|0|55275.55205887|55277.33835439|55276.41490023|11.976|1.123|0.234|5.55000019|19|0|55275.55205887|55277.33835439|55276.40639074|13.96|||2.46399999|10|0|55275.55205887|55277.33835439|55276.40639074|-11|27|19|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005450|1|0.0019786023205325|-0.000985795261451|-0.999997556667295|131000000|
+J130112.99-895223.7|195.3041482|-89.8732605|0.3766|0.3567|0.0841|302.9379835|-27.0015322|269.6930952|-66.5269565|1961.962|672.487|1802089401241004315|1802m894_ab41-004315|1802m894_ab41|4315|16.385|0.069|15.7|1.01800001|15.704|0.107|10.1|0.993799984|13.12||-2.1|1.03699994|9.524||-1.1|0.993600011|1.00800002|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|20nn|AAUU|3|0000|16|25|5|25|0|25|0|25|24.723|24.63|24.804|24.857|0.0|0.0|0.0|0.0|8|h|8|h|0||0||44.25|2.81699991|10.263|2.515|0.0|32.9770012|3.25|21.833|3.153|0.069|-95.3089981|44.7649994|1095.114|25.374|5.05|-13.552|12.2880001|297.987|9.968|1.501|15.264|0.038|1|0.261|14.92|0.144|1|0.319|12.594||32|0.825|8.638||32|0.576|16.212|0.051|1|15.959|0.197|1|13.92||32|9.844||32|15.525|0.038|1|15.239|0.144|1|13.419||32|9.214||32|14.991|0.031|1|14.671|0.111|1|12.839||32|8.684||32|14.517|0.025|1|14.178|0.087|1|12.389||32|8.97|0.537|1|14.101|0.021|1|13.778|0.073|1|12.8|0.527|1|8.477|0.431|1|13.741|0.018|1|13.458|0.064|1|12.5|0.47|1|8.142|0.391|1|13.381|0.015|1|13.143|0.056|1|12.264|0.44|1|7.864|0.369|1|12.946|0.012|1|12.738|0.045|1|12.006|0.4|1|7.624|0.354|1|16.36|0.446|0.089|2.041|24|2|55274.75810734|55276.94144233|55275.87756502|15.64|0.499|0.1|2.85599995|23|0|55274.75810734|55276.94144233|55275.87756502||||1.39300001|6|0|55274.75810734|55276.94144233|55275.87756502||||3.9920001|8|0|55274.75810734|55276.94144233|55275.87756502|16|19|-3|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004315|1|-0.0021335773013041|-0.0005838467344681|-0.999997553482452|121000000|
+J195229.31-895223.3|298.1221317|-89.8731431|0.8076|0.8191|-0.2637|303.0694674|-27.1614837|270.1496471|-66.4487564|2061.554|683.878|3004089401241005368|3004m894_ab41-005368|3004m894_ab41|5368|17.272|0.132|8.2|0.986899972|16.858||1.6|0.840699971|13.252||-1.0|1.00300002|9.661||-0.3|1.05400002|0.968100011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|25|0|24|0|24|0|24|25.477|25.499|24.775|24.752|0.0|0.0|0.0|0.0|0||0||0||0||19.5529995|2.38529992|9.339|2.684|0.176|5.01919985|3.19109988|21.68|3.357|0.06|-39.8619995|39.6349983|1095.311|24.08|3.263|-3.67389989|10.8240004|298.95|9.438|0.645|17.011||32|0.261|16.176||32|0.319|12.836||32|0.825|9.055||32|0.576|17.284||32|16.725||32|14.026||32|10.052||32|17.272||32|16.495||32|13.661||32|9.631||32|17.306||32|16.286||32|13.271||32|9.306||32|17.07||32|16.052||32|12.853||32|9.032||32|16.867||32|15.85||32|12.472||32|8.793||32|16.686||32|15.564||32|12.171||32|8.578||32|16.029|0.346|1|14.88||32|11.964||32|8.38||32|14.748|0.123|1|14.722|0.304|1|11.817||32|8.198||32|17.291|0.747|0.149|2.726|21|0|55275.28732341|55277.33835439|55276.21893744|17.32|2.359|0.482|2.3210001|13|0|55275.28732341|55277.33835439|55276.21916071|14.205|6.315|1.289|4.20499992|12|0|55275.28732341|55277.33835439|55276.2026174||||3.57999992|11|0|55275.28732341|55277.33835439|55276.2026174|-47|10|-52|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005368|1|0.0010436073432484|-0.0019526871435886|-0.999997548945312|131000000|
+J083013.94-895223.2|127.5581195|-89.8731192|0.1121|0.1097|-0.0147|302.802455|-27.0750805|269.8047739|-66.6611709|2005.373|681.469|1201089401241004173|1201m894_ab41-004173|1201m894_ab41|4173|14.004|0.026|41.3|1.01999998|14.011|0.037|29.2|0.93779999|12.277|0.24|4.5|1.21399999|8.865||1.9|0.995599985|1.03699994|1|0|0.0|0.0|0.0|0.005|0000|0000|0|20nn|AABU|7|0000|23|23|23|23|3|22|0|22|22.769|22.721|21.98|21.482|0.0|0.0|0.0|0.0|0||0||0||0||396.660004|9.59549999|9.392|2.671|0.171|156.830002|5.36499977|21.846|3.298|0.185|194.639999|42.9729996|1096.326|23.961|0.0|22.1800003|11.441|298.01|9.25|0.189|13.967|0.017|0|0.261|14.159|0.088|0|0.319|12.025||32|0.825|8.662||32|0.576|14.601|0.017|0|14.857|0.09|0|13.3||32|9.678||32|14.228|0.017|0|14.478|0.088|0|12.85||32|9.238||32|14.08|0.018|0|14.376|0.103|0|12.561||32|8.894||32|13.999|0.02|1|14.372|0.127|1|12.316||32|8.602||32|13.927|0.023|1|14.393|0.156|1|12.097||32|8.342||32|13.82|0.024|1|14.386|0.183|1|11.892||32|8.107||32|13.655|0.024|1|14.313|0.199|1|11.67||32|7.892||32|13.468|0.023|1|14.2|0.206|1|11.464||32|7.693||32|14.005|0.084|0.018|0.338|22|0|55274.89041135|55276.94144233|55275.9260225|14.012|0.186|0.039|0.880999982|22|0|55274.89041135|55276.94144233|55275.9260225|12.045|1.012|0.216|4.68100023|16|2|55274.89041135|55276.94144233|55275.8949045|9.374|2.31|0.493|4.58199978|12|0|55274.89041135|55276.94144233|55275.8949045|-8|13|-15|0|0|0||||||||||||||||||||||||||1258763114|0.271|-56.0|1|14.532|0.043|14.16|0.063|14.117|0.082|1201089401241004173|1|-0.0013498755210314|0.0017555020428988|-0.999997548021321|111000000|
+J003444.62-895223.2|8.6859202|-89.8731152|0.3865|0.3657|0.1055|302.9423037|-27.2547044|270.3155671|-66.5795538|1997.825|680.415|89401241004804|0000m894_ab41-004804|0000m894_ab41|4804|16.253|0.066|16.5|0.826600015|16.087|0.175|6.2|0.993399978|12.511|0.312|3.5|1.03299999|9.211||0.6|1.051|0.970300019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|13|21|1|21|1|20|0|20|20.846|20.665|19.859|19.779|0.0|0.0|0.0|0.0|0||0||0||0||49.9580002|3.02530003|9.324|2.676|0.186|23.177|3.73049998|21.711|3.405|0.313|156.949997|45.1570015|1100.14|24.23|1.791|7.21360016|12.776|297.892|9.651|1.23|15.798|0.083|1|0.261|15.801|0.314|1|0.319|11.943||32|0.825|8.752||32|0.576|16.582|0.096|0|16.62|0.355|0|13.301||32|9.923||32|16.059|0.083|1|16.12|0.314|1|12.768||32|9.328||32|15.751|0.081|1|15.901|0.333|1|12.45||32|8.867||32|15.495|0.079|1|15.761|0.361|1|12.276||32|8.655||32|15.235|0.074|1|15.57|0.364|1|12.136||32|8.662||32|14.989|0.07|1|15.338|0.346|1|12.031||32|8.395||32|14.768|0.066|1|15.128|0.332|1|11.928||32|8.185||32|14.574|0.064|1|14.959|0.326|1|11.809||32|7.881||32|16.254|0.312|0.068|1.203|20|0|55275.55205887|55277.33835439|55276.39639986|16.113|0.972|0.212|2.18099999|15|0|55275.55205887|55277.33835439|55276.39639986|12.481|1.134|0.254|4.34800005|14|1|55275.55205887|55277.33835439|55276.38568892|10.322|7.192|1.608|4.20200014|11|0|55275.55205887|55277.33835439|55276.38568892|5|35|32|0|1|0|||||||||||||||||||||||||||||0|||||||89401241004804|1|0.002189157748042|0.0003344376719157|-0.999997547866892|101000000|
+J012244.80-895223.1|20.6866719|-89.873103|0.1015|0.1045|0.0164|302.9124765|-27.2538697|270.2989844|-66.6052519|1930.629|662.837|89401241004186|0000m894_ab41-004186|0000m894_ab41|4186|13.521|0.026|41.6|0.995100021|13.567|0.031|34.6|1.07099998|12.665|0.328|3.3|1.03100002|8.712||2.0|0.984300017|1.01800001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABU|7|0000|23|23|23|23|0|22|0|22|22.802|22.822|21.841|21.481|0.0|0.0|0.0|0.0|0||0||0||0||618.710022|14.8870001|9.26|2.793|0.0|236.149994|6.83360004|21.689|3.348|0.069|136.149994|41.1930008|1099.826|23.499|2.841|25.6410007|13.1289997|298.394|9.886|0.467|13.537|0.016|0|0.261|13.621|0.041|0|0.319|12.385||32|0.825|8.276||32|0.576|14.154|0.016|0|14.351|0.043|0|13.577||32|9.424||32|13.798|0.016|0|13.94|0.041|0|13.21||32|8.852||32|13.687|0.018|1|13.806|0.047|1|12.926||32|9.214|0.529|1|13.658|0.021|1|13.78|0.056|1|12.692||32|8.275||32|13.654|0.025|1|13.795|0.068|1|12.491||32|8.076||32|13.658|0.029|1|13.831|0.083|1|12.314||32|7.81||32|13.664|0.034|1|13.881|0.101|1|12.148||32|8.248|0.496|1|13.669|0.039|1|13.944|0.123|1|11.998||32|7.95|0.444|1|13.521|0.049|0.01|0.175|22|0|55275.55205887|55277.33835439|55276.39777605|13.566|0.119|0.025|0.446999997|22|0|55275.55205887|55277.33835439|55276.39777605|12.509|1.057|0.225|3.1500001|14|0|55275.55205887|55277.33835439|55276.3881014|9.901|3.054|0.651|2.70499992|13|0|55275.55205887|55277.33835439|55276.3881014|-22|28|25|0|1|0||||||||||||||||||||||||||1107635919|0.186|-59.7|1|14.653|0.043|13.791|0.043|13.589|0.06|89401241004186|1|0.0020719735892034|0.0007823828232414|-0.999997547398274|101000000|
+J045644.06-895222.8|74.1836012|-89.8730114|0.3389|0.3715|0.043|302.8066629|-27.1890368|270.0874424|-66.6828655|1967.055|674.498|600089401241004393|0600m894_ab41-004393|0600m894_ab41|4393|16.159|0.062|17.4|1.02499998|16.611|0.278|3.9|0.930999994|11.796|0.153|7.1|1.01400006|8.896||1.7|1.12100005|1.01800001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1n0n|ABBU|7|0000|15|21|1|21|4|20|0|20|22.2|23.0|22.399|22.303|0.0|0.0|0.0|0.0|0||0||0||0||54.4760017|3.13339996|9.39|2.701|0.0|14.3129997|3.66479993|21.764|3.409|0.0|303.089996|42.7159996|1096.494|21.963|0.0|19.8250008|11.9860001|298.861|9.445|0.197|15.726|0.109|1|0.261|15.904|0.33|1|0.319|12.62||32|0.825|8.519||32|0.576|16.522|0.127|1|16.826|0.408|1|14.543||32|9.53||32|15.987|0.109|1|16.223|0.33|1|13.445||32|9.095||32|15.636|0.102|1|15.811|0.293|1|13.163||32|8.756||32|15.346|0.097|1|15.477|0.266|1|12.934||32|8.46||32|15.117|0.095|1|15.203|0.25|1|12.624||32|8.201||32|14.955|0.096|1|14.985|0.24|1|12.3||32|7.967||32|14.824|0.098|1|14.828|0.242|1|12.024||32|7.751||32|14.669|0.098|1|14.689|0.245|1|11.77||32|7.553||32|16.149|0.325|0.071|1.146|20|1|55275.28745078|55277.20605032|55276.23258879|16.63|1.409|0.308|3.81699991|15|0|55275.28745078|55277.20605032|55276.23258879|11.762|0.908|0.203|3.69700003|16|1|55275.28745078|55277.20605032|55276.2136873|9.379|2.317|0.518|3.33899999|11|0|55275.28745078|55277.20605032|55276.2136873|-31|25|-13|1|0|0||||||||||||||||||||||||||1181157087|0.999|0.2|1|16.989|0.201|16.243|0.23|15.795|0.285|600089401241004393|1|0.0006040834284326|0.0021324558038753|-0.999997543854712|101000000|
+J102036.28-895222.4|155.151202|-89.8729025|0.6486|0.5842|-0.1015|302.8446472|-27.0275781|269.709439|-66.6138501|2189.292|653.287|1802089401241004826|1802m894_ab41-004826|1802m894_ab41|4826|16.756|0.1|10.8|0.979300022|16.768||1.7|0.907700002|13.07||-0.5|0.992200017|9.52||-0.4|0.927100003|0.949100018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|AUUU|1|0000|8|22|0|22|0|22|0|22|22.914|22.769|23.105|23.288|0.0|0.0|0.0|0.0|0||0||0||0||31.4379997|2.90070009|9.421|2.782|0.0|5.7118001|3.33699989|21.813|3.333|0.051|-22.1070004|46.8650017|1095.457|25.632|0.941|-5.32420015|12.3339996|297.85|9.891|0.622|16.233|0.117|1|0.261|15.918||32|0.319|12.699||32|0.825|8.73||32|0.576|17.012|0.134|1|16.522||32|13.897||32|9.746||32|16.494|0.117|1|16.237||32|13.524||32|9.306||32|16.134|0.108|1|16.069||32|13.244||32|8.96||32|15.782|0.097|1|15.894||32|13.013||32|8.665||32|15.435|0.085|1|15.665||32|12.806||32|8.403||32|15.147|0.077|1|15.404||32|12.627||32|8.167||32|14.961|0.076|1|15.229||32|12.462||32|7.951||32|14.85|0.079|1|15.185||32|12.309||32|7.752||32|16.712|0.462|0.098|2.968|21|0|55274.89041135|55276.94144233|55275.90392233|17.436|1.917|0.409|3.15700006|13|0|55274.89041135|55276.94144233|55275.90392233||||4.93400002|8|0|55274.89041135|55276.94144233|55275.90392233||||3.0999999|10|0|55274.89041135|55276.94144233|55275.90392233|45|44|-18|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004826|1|-0.0020129008872973|0.0009321719887141|-0.999997539639674|111000000|
+J121705.90-895222.3|184.2746031|-89.872877|0.3132|0.2978|0.0735|302.9106181|-27.0024561|269.6814297|-66.5509102|2024.794|684.028|1802089401241004340|1802m894_ab41-004340|1802m894_ab41|4340|15.979|0.057|19.2|1.352|15.682|0.113|9.6|1.19599998|12.859||0.3|1.05900002|8.9||1.7|1.02199996|1.15499997|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|ABUU|3|0000|19|24|6|24|0|24|2|24|24.207|23.763|24.053|24.5|0.0|0.0|0.0|0.0|8|h|0||0||0||64.3399963|3.35459995|10.242|2.857|0.0|33.6590004|3.50410008|21.823|3.302|0.0|13.0790005|50.3849983|1095.487|26.0|1.596|19.8589993|11.8940001|297.313|9.611|0.193|15.551|0.203|1|0.261|15.194|0.184|1|0.319|12.014||32|0.825|8.99||32|0.576|16.413|0.255|1|16.13|0.234|1|13.221||32|9.886||32|15.812|0.203|1|15.513|0.184|1|12.839||32|9.566||32|15.507|0.197|1|15.179|0.174|1|12.625||32|9.217||32|15.402|0.222|1|14.994|0.182|1|12.453||32|8.922||32|15.44|0.277|1|14.891|0.199|1|12.309||32|8.66||32|15.587|0.375|1|14.81|0.219|1|12.233||32|8.424||32|15.801|0.531|1|14.707|0.231|1|12.129||32|8.206||32|15.09||32|14.58|0.236|1|11.978||32|8.006||32|15.942|0.253|0.052|2.134|23|0|55274.75810734|55276.94144233|55275.84978011|15.657|0.778|0.159|3.97399998|22|2|55274.75810734|55276.94144233|55275.84978011|14.106|7.702|1.572|2.45900011|12|0|55274.75810734|55276.94144233|55275.84978011|9.304|3.485|0.711|5.21099997|11|1|55274.75810734|55276.94144233|55275.84978011|24|-31|60|1|1|0|||||||||||||||||||||||||||||0|||||||1802089401241004340|1|-0.0022125418322349|-0.000165375613965|-0.999997538651744|121000000|
+J112731.64-895222.1|171.8818676|-89.8728199|0.2536|0.2347|0.0488|302.8808113|-27.0093965|269.6832506|-66.5783493|2096.612|681.42|1802089401241004228|1802m894_ab41-004228|1802m894_ab41|4228|15.609|0.044|24.4|0.946099997|15.752|0.129|8.4|0.85619998|12.801||0.4|0.985800028|9.454||-0.8|1.00999999|0.947099984|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|21|22|3|22|0|22|0|22|21.927|21.584|21.855|21.827|0.0|0.0|0.0|0.0|0||0||0||0||90.4609985|3.70479989|9.621|2.74|0.451|31.5599995|3.76149988|21.851|3.473|0.346|21.5849991|49.2709999|1095.499|25.984|5.244|-10.4569998|13.0970001|298.154|9.872|0.387|15.677|0.137|0|0.261|16.125|0.517|0|0.319|12.315||32|0.825|8.892||32|0.576|16.256|0.132|0|16.584|0.422|0|13.514||32|9.904||32|15.938|0.137|0|16.444|0.517|0|13.14||32|9.468||32|15.864|0.165|0|15.796||32|12.956||32|9.123||32|15.849|0.202|0|15.984||32|12.888||32|8.83||32|15.821|0.237|0|15.783||32|12.943||32|8.57||32|15.715|0.254|1|15.602||32|13.012||32|8.334||32|15.44|0.229|1|15.439||32|12.428||32|8.12||32|14.966|0.171|1|15.287||32|12.186||32|7.92||32|15.652|0.204|0.043|1.031|21|1|55274.75810734|55276.94144233|55275.84978638|15.711|0.536|0.114|3.52099991|21|0|55274.75810734|55276.94144233|55275.84978638|13.438|2.682|0.572|3.87400007|10|0|55274.75810734|55276.94144233|55275.84978638||||4.4920001|10|0|55274.75810734|55276.94144233|55275.84978638|-7|8|27|0|0|0||||||||||||||||||||||||||748912860|0.401|69.1|1|16.581|0.145|16.027|0.183|15.694|0.269|1802089401241004228|1|-0.0021974665716899|0.0003134553564639|-0.999997536440168|111000000|
+J075521.97-895221.6|118.8415808|-89.8726849|1.313|1.3594|-0.432|302.794436|-27.0930349|269.8449071|-66.6721552|2055.819|685.261|1201089401241005461|1201m894_ab41-005461|1201m894_ab41|5461|18.432|0.388|2.8|0.923600018|17.112||0.6|0.851000011|12.155|0.213|5.1|1.20000005|9.611|0.535|2.0|1.16600001|1.02499998|1|0|0.0|0.0|0.0|0.001|0000|0000|0|nnnn|CUBC|13|0000|1|22|1|22|2|20|0|21|22.393|22.652|21.43|21.682|0.0|0.0|0.0|0.0|0||0||0||0||6.71820021|2.39910007|9.418|2.775|0.102|2.12339997|3.44770002|21.829|3.387|0.038|217.690002|42.7929993|1096.158|23.135|4.144|22.6669998|11.1730003|297.66|9.018|1.324|16.363|0.114|1|0.261|15.76|0.19|1|0.319|12.109||32|0.825|8.865||32|0.576|17.42|0.166|1|17.019|0.322|1|13.465||32|9.65||32|16.624|0.114|1|16.079|0.19|1|12.934||32|9.441||32|15.889|0.076|1|15.312|0.122|1|13.143|0.47|1|10.219||32|15.196|0.051|1|14.679|0.085|1|12.548|0.337|1|8.384||32|14.642|0.038|1|14.178|0.065|1|12.098|0.269|1|8.124||32|14.258|0.033|1|13.804|0.054|1|11.825|0.247|1|7.888||32|14.003|0.031|1|13.549|0.05|1|11.709|0.258|1|7.672||32|13.82|0.031|1|13.373|0.049|1|11.67|0.287|1|7.472||32|18.724|2.453|0.523|3.699|11|0|55274.89041135|55276.94144233|55275.92497939||||2.54399991|9|1|55274.89041135|55276.94144233|55275.92497939|12.416|1.637|0.366|5.64300013|12|1|55275.02271543|55276.94144233|55275.94242583|9.591|2.802|0.612|3.77699995|10|0|55274.89041135|55276.94144233|55275.8923299|-16|-29|-56|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241005461|1|-0.0010719016471091|0.0019464344957013|-0.999997531206759|111000000|
+J235741.08-895221.0|359.4211889|-89.8725244|0.1641|0.1598|0.0363|302.9652401|-27.2521379|270.3204342|-66.5590941|2051.366|685.755|89401241004373|0000m894_ab41-004373|0000m894_ab41|4373|14.871|0.033|33.4|1.01400006|14.946|0.07|15.5|0.929700017|12.53|0.312|3.5|1.07099998|9.032||1.1|0.946099997|0.986999989|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABU|7|0000|22|22|15|22|0|21|0|21|22.773|22.507|21.838|21.825|0.0|0.0|0.0|0.0|0||0||0||0||178.509995|5.34380007|9.286|2.719|0.1|66.302002|4.2810998|21.76|3.479|0.086|154.190002|44.3300018|1100.66|24.265|0.0|13.3610001|12.6529999|298.756|9.787|1.182|14.737|0.031|1|0.261|14.821|0.098|1|0.319|11.818||32|0.825|8.475||32|0.576|15.421|0.033|0|15.616|0.109|0|13.19||32|9.551||32|14.998|0.031|1|15.14|0.098|1|12.643||32|9.051||32|14.773|0.032|1|14.909|0.102|1|12.92|0.471|1|8.675||32|14.593|0.033|1|14.736|0.108|1|12.593|0.431|1|8.406||32|14.419|0.034|1|14.554|0.11|1|12.362|0.421|1|8.256||32|14.241|0.034|1|14.372|0.11|1|12.197|0.427|1|8.156||32|14.072|0.034|1|14.216|0.111|1|12.062|0.44|1|7.939||32|13.911|0.033|1|14.077|0.112|1|11.928|0.446|1|7.74||32|14.868|0.113|0.024|0.46|21|0|55275.55205887|55277.33835439|55276.382076|14.915|0.261|0.056|1.37|21|0|55275.55205887|55277.33835439|55276.382076|12.305|1.407|0.307|4.2670002|13|0|55275.55205887|55277.33835439|55276.37119303|9.811|2.791|0.609|3.93199992|13|0|55275.55205887|55277.33835439|55276.37119303|9|-51|-30|0|1|0||||||||||||||||||||||||||1229037099|0.323|36.2|1|15.526|0.064|14.908|0.078|15.04|0.171|89401241004373|1|0.0022247540634923|-0.0000224755855237|-0.99999752497904|131000000|
+J074539.43-895221.0|116.4143136|-89.8725173|0.2187|0.2183|-0.0508|302.7927023|-27.0982089|269.8567699|-66.6748175|2069.954|685.069|1201089401241004411|1201m894_ab41-004411|1201m894_ab41|4411|15.451|0.041|26.4|0.903800011|15.545|0.107|10.2|0.962800026|12.55|0.304|3.6|1.12300003|9.469||0.2|1.06099999|1.00600004|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|02nn|AABU|7|0000|21|21|7|21|1|20|1|20|22.186|21.986|21.275|21.602|0.0|0.0|0.0|0.0|8|h|8|h|0||0||104.660004|3.97140002|9.447|2.857|0.013|38.2120018|3.74860001|21.848|3.374|0.086|151.300003|42.3289986|1095.606|22.902|0.0|2.86980009|11.4919996|297.886|9.201|0.831|15.185|0.041|1|0.261|14.939|0.103|1|0.319|12.142||32|0.825|8.48||32|0.576|15.883|0.046|0|15.846|0.129|0|13.63||32|9.679||32|15.446|0.041|1|15.258|0.103|1|12.967||32|9.056||32|15.182|0.041|1|14.904|0.096|1|12.995|0.404|1|8.507||32|14.931|0.041|1|14.603|0.09|1|12.41|0.291|1|8.092||32|14.648|0.038|1|14.296|0.082|1|11.989|0.239|1|7.72||32|14.327|0.033|1|13.969|0.072|1|11.681|0.212|1|7.414||32|14.001|0.029|1|13.652|0.063|1|11.464|0.203|1|7.175||32|13.694|0.025|1|13.363|0.056|1|11.288|0.198|1|6.97||32|15.451|0.125|0.027|0.496|20|0|55275.02271543|55276.94144233|55275.97424453|15.586|0.848|0.185|3.05599999|16|2|55275.02271543|55276.94144233|55275.97424453|12.48|1.879|0.42|5.95499992|15|0|55275.02271543|55276.94144233|55275.94242583|12.066|||4.81799984|9|0|55275.02271543|55276.94144233|55275.94242583|7|18|54|0|0|1||||||||||||||||||||||||||728276825|0.152|172.1|1|16.035|0.109|15.525|0.167|15.461|0.255|1201089401241004411|1|-0.0009898074179353|0.0019927040000702|-0.999997524702958|111000000|
+J202548.43-895220.8|306.4517972|-89.872455|0.5898|0.5828|-0.2118|303.0633083|-27.1791421|270.1897256|-66.4580021|2013.147|684.132|3004089401241005004|3004m894_ab41-005004|3004m894_ab41|5004|16.868|0.101|10.8|0.81309998|17.331|0.49|2.2|0.959200025|12.63|0.339|3.2|0.933200002|8.903||1.7|0.925400019|0.904600024|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACBU|7|0000|4|23|1|23|0|22|0|22|24.701|24.757|24.101|24.403|0.0|0.0|0.0|0.0|0||0||0||0||28.3610001|2.6328001|9.317|2.894|0.0|7.36899996|3.32259989|21.761|3.401|0.0|140.630005|43.8979988|1096.44|24.804|0.0|20.1620007|11.6899996|299.087|9.577|0.4|16.162|0.122|1|0.261|16.225||32|0.319|11.837||32|0.825|8.813||32|0.576|16.955|0.143|0|16.744||32|13.173||32|9.83||32|16.423|0.122|1|16.544||32|12.662||32|9.389||32|16.055|0.112|1|16.414||32|13.008|0.509|1|9.028||32|15.635|0.095|1|15.97||32|12.643|0.45|1|8.778||32|15.11|0.071|1|16.052|0.531|1|12.414|0.441|1|9.725||32|14.62|0.054|1|15.188|0.283|1|12.31|0.474|1|8.381||32|14.259|0.045|1|14.631|0.197|1|12.266|0.528|1|12.157||32|13.991|0.04|1|14.229|0.157|1|11.424||32|7.873||32|16.914|0.518|0.108|1.423|21|0|55275.28732341|55277.33835439|55276.24529173|17.715|4.419|0.921|3.72099996|12|0|55275.28732341|55277.33835439|55276.24529173|12.415|1.311|0.279|3.88199997|14|0|55275.28732341|55277.33835439|55276.22868597|9.695|2.225|0.474|4.37799978|13|0|55275.28732341|55277.33835439|55276.22868597|19|-20|-6|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005004|1|0.0013226157662499|-0.0017905611100711|-0.999997522286153|131000000|
+J061037.28-895220.6|92.6553399|-89.8724034|0.714|0.7687|-0.1585|302.7907865|-27.1506903|269.9850626|-66.6881678|2202.414|648.267|1201089401241005731|1201m894_ab41-005731|1201m894_ab41|5731|17.021|0.121|8.9|0.864600003|17.154||0.4|0.837199986|12.767|0.366|3.0|0.936200023|9.219||0.7|1.09599996|0.926900029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|BUCU|5|0000|5|22|0|22|0|21|0|20|23.707|23.537|22.895|22.581|0.0|0.0|0.0|0.0|0||0||0||0||24.6350002|2.75259995|9.394|2.841|0.058|1.51830006|3.57789993|21.855|3.458|0.0|123.989998|41.8409996|1096.299|21.806|1.295|8.82299995|11.8629999|299.185|9.362|1.448|16.34||32|0.261|15.907||32|0.319|12.497||32|0.825|8.649||32|0.576|16.835||32|16.639||32|13.682||32|9.661||32|16.601||32|16.226||32|13.322||32|9.225||32|16.594||32|16.001||32|13.039||32|8.878||32|16.702||32|15.823||32|12.808||32|8.583||32|16.497||32|15.653||32|12.603||32|8.322||32|16.314||32|15.495||32|12.42||32|8.085||32|16.15||32|15.306||32|12.255||32|7.869||32|15.999||32|15.124||32|12.104||32|7.669||32|17.032|0.563|0.12|3.033|20|0|55275.02284279|55277.20605032|55276.17158652|18.793|||2.36899996|8|0|55275.02284279|55277.20605032|55276.17158652|12.609|1.602|0.35|3.98799992|13|0|55275.02284279|55277.20605032|55276.15068023|10.31|5.467|1.222|4.09399986|12|0|55275.28745078|55277.20605032|55276.2070721|-22|34|43|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241005731|1|-0.0001031711264562|0.0022245880171967|-0.999997520278862|111000000|
+J064201.74-895220.5|100.5072726|-89.872376|1.0281|1.2351|-0.2843|302.7886307|-27.1333217|269.9411938|-66.6861819|2160.52|666.65|1201089401241005069|1201m894_ab41-005069|1201m894_ab41|5069|18.629||-1.5|1.12|16.678||1.6|0.795400023|11.752|0.153|7.1|1.10099995|8.768||1.8|1.01499999|1.00199997|1|0|0.0|0.0|0.0|0.001|0000|0000|0|nn1n|UUBU|4|0000|0|20|0|21|4|20|1|20|23.114|23.504|22.472|22.534|0.0|0.0|0.0|0.0|0||0||0||0||-4.1170001|2.80019999|9.388|2.829|0.155|5.95819998|3.74810004|21.781|3.403|0.166|315.540009|44.5320015|1098.002|23.198|1.502|23.0890007|13.092|298.128|9.66|0.506|16.594|0.161|0|0.261|15.587|0.178|0|0.319|11.78||32|0.825|8.358||32|0.576|17.846|0.287|0|16.79|0.286|0|13.075||32|9.437||32|16.855|0.161|0|15.906|0.178|0|12.605||32|8.934||32|15.783|0.079|1|15.094|0.11|1|12.207||32|8.601||32|14.636|0.035|1|14.204|0.061|1|11.843||32|8.34||32|13.531|0.016|1|13.331|0.033|1|12.217|0.529|1|8.206||32|12.688|0.01|1|12.639|0.021|1|11.75|0.406|1|8.139||32|12.175|0.008|1|12.18|0.017|1|11.393|0.34|1|7.924||32|11.914|0.008|1|11.915|0.015|1|11.139|0.31|1|7.724||32||||2.822|2|1|55275.02284279|55276.94144233|55276.09129016|17.531|2.521|0.55|2.03900003|9|0|55275.02271543|55276.94144233|55276.04040565|11.769|0.937|0.21|2.24499989|15|1|55275.02271543|55276.94144233|55276.011895|9.501|2.551|0.571|3.49399996|12|0|55275.02271543|55276.94144233|55276.011895||57|37||1|1|||||||||||||||||||||||||||||0|||||||1201089401241005069|1|-0.0004061999305122|0.0021901072400789|-0.99999751921287|111000000|
+J025755.50-895220.4|44.4812811|-89.8723521|0.5642|0.5848|0.1844|302.8566429|-27.236832|270.2297843|-66.6499812|2137.939|673.9|600089401241004625|0600m894_ab41-004625|0600m894_ab41|4625|17.359|0.153|7.1|0.895399988|16.248|0.186|5.8|0.960699975|11.493|0.112|9.7|1.15799999|9.008|0.308|3.5|0.989799976|0.998300016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn0n|BBBB|15|0000|1|24|2|24|4|23|0|23|23.749|23.599|22.943|22.726|0.0|0.0|0.0|0.0|0||0||0||0||18.0540009|2.54380012|9.263|2.701|0.0|19.993|3.42149997|21.76|3.392|0.079|400.690002|41.5180016|1100.319|22.508|0.0|39.5079994|11.1929998|298.152|9.338|0.487|16.68|0.395|1|0.261|15.711|0.29|1|0.319|12.082|0.32|1|0.825|8.113||32|0.576|17.504|0.479|1|16.63|0.363|1|13.616|0.444|1|9.252||32|16.941|0.395|1|16.03|0.29|1|12.907|0.32|1|8.689||32|16.445|0.322|1|15.604|0.252|1|12.441|0.268|1|8.264||32|15.803|0.22|1|15.135|0.202|1|12.087|0.239|1|8.649|0.516|17|14.96|0.123|1|14.505|0.137|1|11.775|0.216|1|8.363|0.504|17|14.015|0.061|1|13.777|0.083|1|11.47|0.193|1|8.171|0.524|17|13.162|0.033|1|13.11|0.052|1|11.178|0.172|1|7.98|0.536|17|12.559|0.022|1|12.619|0.038|1|10.919|0.155|1|7.055||32|17.451|0.696|0.142|3.793|21|0|55275.28745078|55277.33835439|55276.3515125|16.219|1.039|0.212|3.57500005|18|0|55275.28745078|55277.33835439|55276.3515125|11.394|0.567|0.118|1.53999996|19|0|55275.28745078|55277.33835439|55276.34024702|9.038|1.284|0.268|3.05200005|18|0|55275.28745078|55277.33835439|55276.34024702|-23|-1|1|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004625|1|0.0015895430320119|0.001561019100501|-0.999997518283079|101000000|
+J135019.36-895220.2|207.5806832|-89.8722876|0.2169|0.2166|0.0515|302.9683412|-27.0046316|269.7160984|-66.5013211|1894.618|649.129|1802089401241004227|1802m894_ab41-004227|1802m894_ab41|4227|15.453|0.041|26.7|0.988399982|15.634|0.107|10.2|0.972100019|12.07|0.207|5.2|0.933000028|9.499||0.0|1.02999997|0.977999985|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|AABU|7|0000|23|24|6|24|1|24|0|24|24.157|24.416|24.343|24.175|0.0|0.0|0.0|0.0|8|h|0||0||0||104.470001|3.91280007|10.604|2.388|0.041|35.1829987|3.45709991|21.976|2.943|0.022|235.570007|44.9329987|1096.698|25.568|0.172|-0.537549973|12.5740004|298.206|10.13|0.403|15.813|0.192|0|0.261|15.917||32|0.319|12.139|0.315|0|0.825|8.408||32|0.576|16.298|0.169|0|16.285||32|13.516|0.376|0|9.564||32|16.074|0.192|0|16.236||32|12.964|0.315|0|8.984||32|16.245|0.292|1|16.161||32|12.662|0.31|0|8.604||32|16.598|0.501|1|15.927||32|12.519|0.337|1|8.363||32|15.792||32|15.726||32|12.521|0.406|1|8.204||32|16.002|0.411|1|15.546||32|11.914||32|8.056||32|15.445|0.287|1|15.38||32|11.987||32|7.902||32|15.222|0.269|1|15.227||32|12.084||32|7.774||32|15.438|0.177|0.036|0.804|23|0|55274.89041135|55276.94144233|55275.92420909|15.618|0.71|0.145|3.68099999|22|2|55274.89041135|55276.94144233|55275.92420909|11.838|0.718|0.147|2.26399994|18|0|55274.89041135|55276.94144233|55275.92420909||||3.31500006|14|0|55274.89041135|55276.94144233|55275.92420909|-47|-2|-21|2|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004227|1|-0.0019756960071234|-0.0010320209267906|-0.999997515775961|121000000|
+J085002.49-895220.1|132.510401|-89.8722597|0.4972|0.4846|-0.1559|302.8072508|-27.0649064|269.7821762|-66.6547227|1976.612|678.757|1201089401241004921|1201m894_ab41-004921|1201m894_ab41|4921|16.627|0.083|13.1|0.930100024|17.124|0.407|2.7|0.880200028|12.696||1.1|1.04799998|9.01||1.3|1.14900005|0.996599972|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|10|23|0|23|0|22|1|22|22.96|22.823|21.913|21.851|0.0|0.0|0.0|0.0|0||0||0||0||35.4300003|2.71230006|9.324|2.699|0.173|8.91759968|3.34680009|21.83|3.333|0.106|46.1360016|43.1100006|1098.014|24.49|1.172|15.5699997|11.9390001|297.694|9.58|0.95|16.333|0.287|1|0.261|16.33|0.307|1|0.319|11.654||32|0.825|8.376||32|0.576|17.129|0.336|1|17.25|0.382|1|12.846||32|9.438||32|16.594|0.287|1|16.649|0.307|1|12.479||32|8.952||32|16.188|0.257|1|16.133|0.247|1|12.197||32|8.622||32|15.822|0.226|1|15.591|0.186|1|11.967||32|8.262||32|15.467|0.198|1|15.108|0.144|1|11.761||32|7.915||32|15.11|0.168|1|14.701|0.117|1|11.581||32|7.624||32|14.84|0.152|1|14.4|0.104|1|11.417||32|7.354||32|14.697|0.153|1|14.191|0.098|1|11.266||32|7.129||32|16.561|0.439|0.091|1.676|21|1|55274.89041135|55276.94144233|55275.9260225|16.89|1.991|0.415|3.27099991|15|0|55274.89041135|55276.94144233|55275.9260225|13.114|2.534|0.54|4.39699984|10|0|55274.89041135|55276.94144233|55275.8949045|9.645|3.447|0.735|4.51399994|11|0|55274.89041135|55276.94144233|55275.8949045|0|36|-22|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004921|1|-0.0015065175730722|0.0016434763704557|-0.999997514692022|111000000|
+J174903.61-895219.5|267.2650688|-89.8721024|0.2356|0.259|-0.0334|303.0702904|-27.0937064|269.9847365|-66.4329562|1896.51|650.655|2403089401241005003|2403m894_ab41-005003|2403m894_ab41|5003|15.732|0.047|23.0|1.11199999|15.519|0.097|11.2|1.06299996|13.054|0.509|2.1|1.00800002|9.526||-0.3|0.878499985|1.01499999|2|0|0.0|0.0|0.0|0.0|0000|hh00|0|11nn|AACU|7|0000|23|24|6|24|1|23|0|23|24.534|24.61|23.797|23.309|0.0|0.0|0.0|0.0|8|h|8|h|0||0||80.7350006|3.51600003|9.577|2.424|0.081|39.1240005|3.49180007|21.777|3.262|0.067|95.1500015|44.5859985|1095.261|25.154|1.088|-3.5467999|12.2609997|299.146|9.828|0.221|15.367|0.154|1|0.261|15.088|0.171|1|0.319|12.526|0.402|1|0.825|8.402||32|0.576|16.181|0.184|1|16.033|0.218|1|14.017|0.532|1|10.048||32|15.628|0.154|1|15.407|0.171|1|13.351|0.402|1|8.978||32|15.228|0.138|1|14.997|0.153|1|12.955|0.362|1|8.548||32|14.922|0.129|1|14.707|0.144|1|12.677|0.347|1|8.198||32|14.721|0.13|1|14.494|0.143|1|12.463|0.344|1|7.835||32|14.573|0.134|1|14.317|0.144|1|12.266|0.339|1|7.535||32|14.431|0.136|1|14.156|0.144|1|12.031|0.317|1|7.341||32|14.248|0.133|1|13.99|0.143|1|11.734|0.277|1|7.222||32|15.723|0.23|0.047|0.995|23|0|55275.28732341|55277.20605032|55276.16402342|15.544|0.595|0.121|2.59800005|22|1|55275.28732341|55277.20605032|55276.16402342|12.697|2.066|0.431|3.18799996|13|0|55275.28732341|55277.20605032|55276.14460624||||2.60400009|8|0|55275.28732341|55277.20605032|55276.14460624|32|-7|29|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005003|1|-0.0001065119437824|-0.0022296901916045|-0.999997508565324|121000000|
+J155903.84-895219.1|239.7660237|-89.8719859|0.079|0.0765|-0.0196|303.0368703|-27.0406594|269.8386698|-66.4500245|2051.518|687.162|2403089401241003945|2403m894_ab41-003945|2403m894_ab41|3945|10.71|0.023|46.3|0.904500008|10.753|0.021|51.0|0.946200013|10.766|0.08|13.6|1.00899994|9.412||0.2|0.81129998|0.914799988|1|0|0.0|0.0|0.0|0.0|0000|h000|0|000n|AAAU|7|0000|22|22|21|21|10|21|0|21|24.275|23.231|23.306|23.661|0.0|0.0|0.0|0.0|8|h|0||0||0||8239.7998|178.029999|9.411|2.327|0.0|3153.5|61.862999|21.795|3.112|0.0|782.450012|57.4020004|1095.162|25.46|0.0|1.97000003|12.6389999|298.675|9.772|1.157|10.718|0.006|0|0.261|10.775|0.006|0|0.319|10.748|0.096|0|0.825|8.85||32|0.576|11.343|0.006|0|11.529|0.006|0|12.171|0.119|0|10.134||32|10.979|0.006|0|11.094|0.006|0|11.573|0.096|0|9.426||32|10.851|0.007|0|10.928|0.006|0|11.234|0.091|0|9.082||32|10.801|0.007|0|10.86|0.006|0|11.019|0.093|0|8.785||32|10.777|0.007|1|10.825|0.006|1|10.865|0.097|1|8.523||32|10.762|0.008|1|10.802|0.007|1|10.744|0.103|1|8.286||32|10.749|0.008|1|10.781|0.007|1|10.63|0.107|1|8.069||32|10.733|0.009|1|10.756|0.007|1|10.511|0.111|1|7.869||32|10.71|0.015|0.003|0.067|21|0|55275.02271543|55276.94144233|55275.97607081|10.754|0.03|0.007|0.105999999|20|0|55275.02271543|55276.94144233|55276.0088683|10.767|0.325|0.071|1.73800004|20|0|55275.02271543|55276.94144233|55275.94585425||||4.47100019|9|0|55275.02271543|55276.94144233|55275.94585425|-5|-11|18|0|0|0||||||||||||||||||||||||||912442029|0.122|27.8|1|11.235|0.024|10.857|0.021|10.802|0.021|2403089401241003945|1|-0.0011250253415118|-0.0019303531516573|-0.99999750402423|121000000|
+J153135.63-895219.1|232.8984841|-89.8719786|0.3408|0.3654|0.1027|303.0243726|-27.0301121|269.8066507|-66.4584836|2091.57|684.355|2403089401241005153|2403m894_ab41-005153|2403m894_ab41|5153|16.242|0.062|17.4|0.908699989|16.021|0.152|7.1|1.02100003|12.529||1.1|0.971800029|9.524||-0.6|0.932799995|0.955500007|1|0|0.0|0.0|0.0|0.0|0000|h000|0|00nn|ABUU|3|0000|16|23|5|23|0|22|0|22|22.828|22.725|21.951|22.41|0.0|0.0|0.0|0.0|8|h|0||0||0||50.5029984|2.89549994|9.723|2.423|0.054|24.6399994|3.45469999|21.792|3.191|0.0|55.6380005|49.3069992|1095.526|26.149|2.116|-7.2828002|12.2860003|298.484|9.758|1.036|16.636|0.415|0|0.261|15.695|0.173|0|0.319|12.112||32|0.825|8.899||32|0.576|17.14|0.372|0|16.641|0.223|0|13.351||32|9.912||32|16.897|0.415|0|16.014|0.173|0|12.937||32|9.475||32|16.851|0.515|1|15.606|0.153|1|12.627||32|9.131||32|16.655|0.534|1|15.265|0.139|1|12.395||32|8.838||32|16.18|0.415|1|14.919|0.122|1|12.216||32|8.58||32|15.567|0.279|1|14.549|0.102|1|12.081||32|8.345||32|15.001|0.193|1|14.183|0.085|1|11.981||32|8.131||32|14.579|0.151|1|13.868|0.073|1|11.882||32|7.933||32|16.255|0.3|0.062|1.142|22|0|55274.89041135|55276.94144233|55275.92886822|15.961|0.901|0.188|2.28200006|18|1|55274.89041135|55276.94144233|55275.92886822|12.373|1.033|0.22|1.954|12|0|55274.89041135|55276.94144233|55275.89787957||||2.81699991|7|0|55274.89041135|55276.94144233|55275.89787957|-18|-7|-47|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005153|1|-0.0013478508550089|-0.0017820802872353|-0.999997503740846|121000000|
+J021417.97-895218.6|33.5748875|-89.8718435|0.9528|0.9166|0.2942|302.8809255|-27.2480182|270.2691965|-66.6313526|1896.738|52.546|2403089401241005684|2403m894_ab41-005684|2403m894_ab41|5684|18.809||-4.5|0.847100019|17.413||-2.9|0.91049999|12.001|0.181|6.0|1.028|9.165|0.354|3.1|1.13100004|0.957099974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBB|12|0000|0|23|0|23|1|22|0|22|23.73|23.633|23.001|22.619|0.0|0.0|0.0|0.0|0||0||0||0||-10.7749996|2.37319994|9.265|2.784|0.0|-10.0489998|3.41750002|21.72|3.388|0.038|251.020004|41.9609985|1098.818|21.975|2.988|34.2070007|11.1379995|298.519|9.38|0.677|17.475||32|0.261|16.69||32|0.319|12.215||32|0.825|8.824||32|0.576|18.283||32|17.47||32|13.355||32|9.678||32|17.736||32|17.009||32|13.04||32|9.4||32|17.071||32|16.468||32|14.049||32|9.053||32|17.309|0.5|1|16.02||32|12.589||32|8.759||32|16.872|0.402|1|15.679||32|12.386||32|8.499||32|16.563|0.357|1|16.072|0.482|1|12.206||32|8.263||32|16.364|0.347|1|15.763|0.423|1|12.04||32|8.047||32|16.254|0.36|1|15.609|0.422|1|11.889||32|7.848||32||||1.463|2|0|55275.55205887|55277.33835439|55276.39777605||||2.13499999|5|0|55275.55205887|55277.33835439|55276.39777605|11.893|0.896|0.191|4.27099991|17|0|55275.55205887|55277.33835439|55276.3881014|9.34|1.831|0.39|4.73600006|16|0|55275.55205887|55277.33835439|55276.3881014||41|55||0|1|||||||||||||||||||||||||||||0|||||||2403089401241005684|1|0.0018635792682218|0.0012369820924942|-0.999997498470678|101000000|
+J180506.50-895218.2|271.277103|-89.8717223|0.1709|0.1849|-0.0305|303.0730826|-27.1023307|270.0071506|-66.4324629|2211.767|645.244|3004089401241004508|3004m894_ab41-004508|3004m894_ab41|4508|15.45|0.041|26.7|0.95599997|14.82|0.059|18.3|0.891900003|10.697|0.065|16.7|1.03600001|7.778|0.115|9.4|1.08299994|0.987100005|2|0|0.0|0.0|0.0|0.0|0000|0000|0|1111|AAAB|15|0000|24|24|20|24|14|23|4|23|23.823|23.775|22.908|22.879|0.0|0.0|0.0|0.0|0||0||0||0||104.690002|3.92000008|9.632|2.568|0.008|74.5070038|4.06470013|21.635|3.242|0.089|834.210022|49.8050003|1094.774|24.971|1.629|122.690002|13.0369997|299.157|9.66|0.919|15.059|0.037|1|0.261|14.673|0.112|1|0.319|10.825|0.146|1|0.825|7.866|0.308|1|0.576|15.867|0.045|1|15.483|0.125|1|12.217|0.174|0|8.879|0.308|1|15.32|0.037|1|14.992|0.112|1|11.65|0.146|1|8.442|0.308|1|14.895|0.033|1|14.69|0.11|1|11.352|0.143|1|8.241|0.351|1|14.475|0.028|1|14.374|0.102|1|11.184|0.152|1|8.15|0.423|1|14.099|0.024|1|14.043|0.091|1|11.065|0.165|1|8.101|0.514|1|13.806|0.021|1|13.76|0.082|1|10.975|0.179|1|7.246||32|13.573|0.02|1|13.537|0.078|1|10.916|0.197|1|7.12||32|13.387|0.02|1|13.369|0.077|1|10.882|0.22|1|7.022||32|15.449|0.205|0.042|0.76|23|0|55275.28732341|55277.20605032|55276.16402342|14.872|0.222|0.045|1.12199998|23|0|55275.28732341|55277.20605032|55276.16402342|10.664|0.2|0.042|1.44500005|22|0|55275.28732341|55277.20605032|55276.14460624|7.717|0.45|0.094|2.36999989|21|0|55275.28732341|55277.20605032|55276.14460624|41|-21|47|1|0|2|||||||||||||||||||||||||||||0|||||||3004089401241004508|1|0.0000498994359701|-0.0022383108803626|-0.999997493734084|131000000|
+J183443.11-895218.1|278.6796568|-89.8717145|1.0512|1.1666|-0.2689|303.0756634|-27.1187329|270.0484222|-66.4338851|2172.631|663.918|3004089401241005371|3004m894_ab41-005371|3004m894_ab41|5371|17.629|0.185|5.9|0.817799985|16.805||1.6|0.984799981|13.19||-0.3|1.08099997|8.974||1.4|0.966899991|0.958999991|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|24|1|24|0|23|0|23|24.536|24.556|23.87|23.689|0.0|0.0|0.0|0.0|0||0||0||0||14.0799999|2.40229988|9.523|2.663|0.0|5.37410021|3.29879999|21.781|3.388|0.113|-13.2030001|41.9539986|1095.837|24.801|0.985|17.1229992|11.8179998|299.339|9.716|0.995|16.545|0.156|1|0.261|15.956||32|0.319|12.479||32|0.825|8.417||32|0.576|17.454|0.203|1|16.661||32|13.664||32|9.458||32|16.806|0.156|1|16.275||32|13.304||32|8.993||32|16.379|0.138|1|16.113||32|13.016||32|8.689||32|16.075|0.129|1|16.048||32|12.783||32|8.444||32|15.803|0.121|1|15.936||32|12.583||32|8.237||32|15.456|0.103|1|15.622||32|12.323||32|8.113||32|15.026|0.081|1|15.881|0.508|1|12.038||32|9.115||32|14.617|0.064|1|15.194|0.311|1|11.738||32|8.451||32|17.683|1.099|0.224|2.267|18|0|55275.28732341|55277.20605032|55276.16402342|17.345|3.247|0.663|3.86100006|13|0|55275.28732341|55277.20605032|55276.16402342|15.419|||2.19499993|12|0|55275.28732341|55277.20605032|55276.14460624|10.079|4.314|0.9|3.07599998|13|0|55275.28732341|55277.20605032|55276.14460624|19|81|-29|0|2|0|||||||||||||||||||||||||||||0|||||||3004089401241005371|1|0.0003378875183052|-0.0022133604527387|-0.999997493430624|131000000|
+J185815.59-895218.0|284.5649615|-89.8716783|0.5932|0.6315|-0.1763|303.0760405|-27.1319019|270.0807224|-66.4364902|2140.019|675.143|3004089401241005085|3004m894_ab41-005085|3004m894_ab41|5085|17.018|0.106|10.2|0.933000028|16.635|0.257|4.2|0.851499975|13.025|0.454|2.4|1.01300001|9.486||-0.3|0.976800025|0.940599978|1|0|0.0|0.0|0.0|0.003|0000|0000|0|nnnn|ABCU|7|0000|3|25|1|25|1|24|0|24|24.693|24.687|23.922|23.821|0.0|0.0|0.0|0.0|0||0||0||0||24.6989994|2.4203999|9.322|2.611|0.179|13.9899998|3.3118999|21.786|3.382|0.046|97.7330017|40.8359985|1095.417|24.145|1.142|-3.58260012|12.7270002|299.429|9.976|0.941|16.866|0.197|0|0.261|16.247|0.39|0|0.319|12.287||32|0.825|9.007||32|0.576|17.494|0.199|0|16.969|0.407|0|13.489||32|10.012||32|17.127|0.197|0|16.566|0.39|0|13.112||32|9.583||32|17.098|0.247|1|16.548|0.495|1|12.88||32|9.248||32|17.274|0.36|1|15.806||32|14.126||32|10.996||32|16.787||32|15.805||32|12.539||32|8.648||32|16.842||32|15.842||32|12.359||32|8.402||32|16.873||32|17.057||32|12.197||32|8.145||32|16.758||32|15.715||32|12.046||32|7.868||32|17.178|0.491|0.098|2.323|23|0|55275.28732341|55277.20605032|55276.19247154|16.529|1.097|0.219|2.62400007|19|0|55275.28732341|55277.20605032|55276.19247154|13.488|3.484|0.711|3.94199991|15|0|55275.28732341|55277.20605032|55276.17504875|10.876|8.992|1.835|4.96400023|11|0|55275.28732341|55277.20605032|55276.17504875|-24|-18|-21|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005085|1|0.0005632175323517|-0.0021676589051898|-0.999997492017296|131000000|
+J050659.41-895216.9|76.7475628|-89.8713747|0.9059|1.0064|0.2424|302.8020765|-27.184708|270.0745032|-66.6858912|1951.482|674.659|600089401241005694|0600m894_ab41-005694|0600m894_ab41|5694|18.808||-1.1|0.914300025|16.94|0.371|2.9|0.822000027|11.702|0.135|8.1|1.27699995|9.263|0.409|2.7|0.993300021|0.996599972|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UCBC|14|0000|0|22|0|22|3|21|0|21|22.577|22.651|21.943|21.922|0.0|0.0|0.0|0.0|0||0||0||0||-2.52690005|2.37599993|9.31|2.698|0.0|10.5679998|3.60809994|21.801|3.424|0.0|330.549988|41.0470009|1095.973|21.312|1.473|31.2479992|11.7650003|298.948|9.472|0.355|17.389|0.329|1|0.261|15.61||32|0.319|12.162||32|0.825|8.702||32|0.576|18.399|0.471|0|16.297||32|13.438||32|9.619||32|17.65|0.329|1|15.929||32|12.987||32|9.278||32|16.948|0.224|1|15.684||32|12.643||32|8.957||32|16.003|0.116|1|15.306||32|12.358||32|8.576||32|14.976|0.055|1|15.35|0.422|1|12.091||32|8.226||32|14.201|0.032|1|14.565|0.242|1|11.864||32|8.015||32|13.751|0.025|1|14.106|0.184|1|12.43|0.536|1|7.901||32|13.527|0.024|1|13.909|0.177|1|11.54||32|9.724||32||||1.993|7|0|55275.28745078|55277.20605032|55276.25579157|17.045|1.663|0.355|3.48799992|14|0|55275.28745078|55277.20605032|55276.25579157|11.718|0.894|0.195|3.14899993|18|0|55275.28745078|55277.20605032|55276.23889505|9.058|1.617|0.353|3.86599994|13|0|55275.28745078|55277.20605032|55276.23889505|-69|-23|-1|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005694|1|0.0005146323718776|0.0021851489141411|-0.999997480135698|101000000|
+J155650.43-895216.8|239.2101307|-89.8713549|0.5677|0.4852|-0.2488|303.036424|-27.0393214|269.8351828|-66.4501094|1759.493|525.825|1802089401241003910|1802m894_ab41-003910|1802m894_ab41|3910|15.385|0.155|7.0|10.54|15.136|0.161|6.7|4.38999987|12.884||-1.2|1.00399995|8.947||1.5|0.918799996|4.3119998|1|0|0.0|0.0|0.0|0.0|0000|h000|1|nnnn|BBUU|3|0000|1|23|2|22|0|22|0|22|24.288|22.998|23.239|23.75|0.0|0.0|0.0|0.0|8|h|0||0||0||111.18|15.8870001|9.745|2.464|0.083|55.6899986|8.28009987|21.83|3.072|0.08|-65.2789993|55.6479988|1095.656|25.775|1.083|17.8409996|11.9860001|298.207|9.596|0.537|10.983|0.007|1|0.261|11.04|0.007|1|0.319|10.988|0.114|1|0.825|8.757||32|0.576|11.902|0.008|1|12.013|0.007|1|12.566|0.164|1|10.124||32|11.244|0.007|1|11.359|0.007|1|11.813|0.114|1|9.333||32|10.953|0.007|1|11.045|0.006|1|11.387|0.1|1|8.987||32|10.837|0.007|1|10.907|0.006|1|11.124|0.098|1|8.69||32|10.793|0.007|1|10.85|0.007|1|10.953|0.1|1|8.429||32|10.773|0.008|1|10.822|0.007|1|10.826|0.105|1|8.192||32|10.762|0.008|1|10.803|0.007|1|10.717|0.111|1|7.976||32|10.749|0.009|1|10.782|0.007|1|10.61|0.116|1|7.776||32|19.118|||3.707|12|0|55274.89041135|55276.94144233|55275.92886822|16.329|2.966|0.632|2.76799989|11|0|55274.89041135|55276.94144233|55275.95802935||||2.125|7|0|55274.89041135|55276.94144233|55275.89787957|10.241|2.368|0.505|2.8599999|12|0|55274.89041135|55276.94144233|55275.89787957|79|-56|-35|2|0|0|||||||||||||||||||||||||||||0|||||||1802089401241003910|1|-0.0011493375612731|-0.0019288070156283|-0.999997479360157|121000000|
+J182306.01-895216.7|275.7750433|-89.8713224|0.2013|0.2148|-0.0403|303.0753752|-27.1122135|270.0323838|-66.432681|2188.705|658.134|3004089401241004329|3004m894_ab41-004329|3004m894_ab41|4329|15.467|0.041|26.5|0.92839998|15.205|0.079|13.7|0.889199972|12.454||1.9|0.874800026|9.302||0.6|1.02600002|0.926199973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|24|24|13|24|0|23|0|23|23.887|23.831|23.006|22.991|0.0|0.0|0.0|0.0|0||0||0||0||103.080002|3.89310002|9.519|2.613|0.101|52.2330017|3.82270002|21.751|3.342|0.069|80.0690002|42.6349983|1095.47|24.793|0.0|6.98509979|11.5830002|299.386|9.743|0.466|15.584|0.138|0|0.261|15.165|0.168|0|0.319|12.126||32|0.825|8.243||32|0.576|16.153|0.133|0|15.9|0.178|0|13.445||32|9.331||32|15.845|0.138|0|15.484|0.168|0|12.951||32|8.819||32|15.787|0.17|0|15.367|0.195|0|12.512||32|8.432||32|15.765|0.206|1|15.372|0.243|1|12.707|0.405|1|8.077||32|15.654|0.223|1|15.376|0.293|1|12.229|0.313|1|7.712||32|15.393|0.207|1|15.244|0.307|1|11.815|0.252|1|7.362||32|15.063|0.178|1|14.964|0.276|1|11.464|0.212|1|7.113||32|14.79|0.159|1|14.675|0.243|1|11.169|0.186|1|6.963||32|15.466|0.176|0.036|0.744|23|0|55275.28732341|55277.20605032|55276.16402342|15.127|0.354|0.072|1.92400002|22|0|55275.28732341|55277.20605032|55276.16402342|12.93|2.37|0.494|3.4519999|13|0|55275.28732341|55277.20605032|55276.14460624|10.355|4.854|1.012|3.9920001|13|0|55275.28732341|55277.20605032|55276.14460624|-27|-13|13|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004329|1|0.0002259835809347|-0.0022344470089289|-0.999997478085813|131000000|
+J143122.23-895216.5|217.8426566|-89.8712544|0.4032|0.4101|0.1188|302.9929499|-27.0114441|269.7452154|-66.4815167|2177.129|663.38|2403089401241005162|2403m894_ab41-005162|2403m894_ab41|5162|16.366|0.069|15.7|0.914399981|16.207|0.184|5.9|0.985800028|12.626||0.8|1.06200004|9.461||-0.3|1.06700003|1.00399995|1|0|0.0|0.0|0.0|0.0|0000|hhd0|0|0nnn|ABUU|3|0000|12|22|3|22|0|22|1|22|21.695|22.231|22.248|23.032|0.0|0.0|0.0|0.0|8|h|8|h|1|d|0||45.0559998|2.87030005|9.766|2.328|0.234|20.7509995|3.52200007|21.79|3.129|0.256|40.4519997|50.3190002|1096.688|25.642|3.767|-3.48670006|13.0150003|298.492|10.032|0.522|16.037|0.135|1|0.261|15.772||32|0.319|11.951||32|0.825|8.683||32|0.576|16.915|0.171|1|16.461||32|13.185||32|9.691||32|16.298|0.135|1|16.091||32|12.776||32|9.259||32|15.86|0.117|1|15.799||32|12.45||32|8.915||32|15.501|0.104|1|15.517||32|12.156||32|8.62||32|15.157|0.091|1|15.227||32|11.896||32|8.362||32|14.755|0.074|1|15.507|0.433|1|11.676||32|8.127||32|14.26|0.055|1|14.834|0.271|1|11.479||32|7.911||32|13.723|0.039|1|14.155|0.167|1|11.275||32|7.712||32|16.42|0.292|0.062|1.381|21|1|55274.89041135|55276.94144233|55275.93097005|16.21|1.191|0.254|3.65199995|18|0|55274.89041135|55276.94144233|55275.93097005|12.973|2.755|0.587|5.8920002|12|0|55274.89041135|55276.94144233|55275.93097005|9.937|3.915|0.835|3.58599997|12|0|55274.89041135|55276.94144233|55275.93097005|14|23|21|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005162|1|-0.0017744789289243|-0.0013785441419506|-0.999997475417103|121000000|
+J101512.04-895216.1|153.8001976|-89.8711624|1.1679|1.0817|-0.1648|302.8407788|-27.0280853|269.708718|-66.6173214|2198.387|653.951|1802089401241005285|1802m894_ab41-005285|1802m894_ab41|5285|17.479|0.188|5.8|1.07000005|17.059||0.8|1.01900005|13.045||-1.1|1.10599995|9.394||-1.6|0.961000025|1.03600001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|22|0|22|0|22|0|22|23.591|23.322|23.82|23.487|0.0|0.0|0.0|0.0|0||0||0||0||16.1599998|2.79399991|9.564|2.842|0.052|2.7816999|3.34489989|21.784|3.313|0.13|-54.7509995|47.9790001|1095.618|25.694|2.35|-22.2810001|13.8479996|297.981|10.232|0.898|16.842|0.239|1|0.261|15.961||32|0.319|12.844||32|0.825|9.007||32|0.576|17.57|0.26|1|16.647||32|14.045||32|10.01||32|17.103|0.239|1|16.28||32|13.669||32|9.583||32|16.716|0.218|1|15.991||32|13.384||32|9.241||32|16.361|0.194|1|15.735||32|13.155||32|8.95||32|16.125|0.187|1|15.565||32|12.89||32|9.105||32|15.949|0.188|1|15.513||32|12.57||32|8.263||32|15.715|0.177|1|15.425||32|12.294||32|7.924||32|15.335|0.144|1|15.272||32|12.054||32|7.644||32|17.576|0.961|0.205|2.379|16|0|55274.89041135|55276.94144233|55275.90392233|18.971|||1.69400001|12|0|55274.89041135|55276.94144233|55275.90392233|15.141|||2.56200004|9|0|55274.89041135|55276.94144233|55275.90392233||||4.6079998|6|0|55274.89041135|55276.94144233|55275.90392233|55|-23||1|0||||||||||||||||||||||||||||||0|||||||1802089401241005285|1|-0.0020176127555858|0.0009927799105879|-0.999997471810213|111000000|
+J065102.96-895216.1|102.7623469|-89.8711524|0.2695|0.2752|-0.0495|302.7871417|-27.1283006|269.9280799|-66.6863569|2149.011|673.89|1201089401241004482|1201m894_ab41-004482|1201m894_ab41|4482|15.774|0.05|21.6|1.14499998|15.791|0.133|8.2|0.931999981|11.883|0.165|6.6|1.03999996|9.036||1.3|1.12699997|1.05599999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|10nn|ABBU|7|0000|21|21|4|21|2|20|0|20|22.855|23.628|21.876|22.436|0.0|0.0|0.0|0.0|0||0||0||0||77.6829987|3.59599996|9.39|2.829|0.0|30.4400005|3.73149991|21.795|3.405|0.0|279.649994|42.5629997|1095.764|22.494|3.742|14.9359999|11.7930002|298.537|9.367|1.568|15.483|0.127|1|0.261|15.378|0.243|1|0.319|11.759||32|0.825|8.473||32|0.576|16.228|0.142|0|16.26|0.292|0|13.028||32|9.431||32|15.744|0.127|1|15.697|0.243|1|12.584||32|9.049||32|15.468|0.126|1|15.396|0.236|1|12.204||32|8.704||32|15.271|0.13|1|15.196|0.243|1|11.871||32|13.638||32|15.048|0.128|1|14.943|0.232|1|11.571||32|8.152||32|14.712|0.111|1|14.554|0.192|1|11.991|0.52|1|7.917||32|14.232|0.083|1|14.084|0.145|1|11.585|0.416|1|7.702||32|13.713|0.059|1|13.626|0.109|1|11.286|0.362|1|7.503||32|15.766|0.251|0.055|0.976|20|1|55275.02284279|55276.94144233|55276.12232634|15.751|0.742|0.162|3.5769999|18|1|55275.02284279|55276.94144233|55276.12232634|11.894|0.685|0.153|2.37199998|19|0|55275.02284279|55276.94144233|55276.09791173|9.972|2.531|0.566|3.46600008|11|0|55275.02284279|55276.94144233|55276.09791173|-10|5|-32|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004482|1|-0.0004967800144218|0.002193255975162|-0.999997471415725|111000000|
+J122022.61-895216.1|185.0942152|-89.8711439|0.4097|0.3755|0.0998|302.9123759|-27.0004806|269.6774905|-66.5489359|2019.666|688.184|1802089401241004442|1802m894_ab41-004442|1802m894_ab41|4442|16.267|0.067|16.2|0.859200001|16.594|0.258|4.2|1.09500003|13.087||-0.6|0.986400008|9.465||0.1|1.051|0.994099975|1|0|0.0|0.0|0.0|0.0|0000|d000|0|0nnn|ABUU|3|0000|15|23|2|23|1|23|0|23|24.553|24.07|24.442|24.655|0.0|0.0|0.0|0.0|9|dh|0||0||0||49.3349991|3.03660011|10.109|2.714|0.067|14.5310001|3.45059991|21.958|3.345|0.037|-29.7290001|46.1590004|1095.076|25.487|0.6|0.63914001|12.6549997|297.958|9.853|0.211|15.881|0.255|1|0.261|15.633|0.275|1|0.319|12.024||32|0.825|8.909||32|0.576|16.684|0.302|1|16.62|0.365|1|13.434||32|9.862||32|16.142|0.255|1|15.952|0.275|1|12.849||32|9.485||32|15.838|0.25|1|15.521|0.239|1|12.438||32|11.019||32|15.653|0.261|1|15.187|0.218|1|12.828|0.493|1|8.973||32|15.502|0.273|1|14.936|0.208|1|12.541|0.456|1|8.715||32|15.392|0.292|1|14.773|0.211|1|12.366|0.459|1|8.483||32|15.378|0.336|1|14.672|0.224|1|12.225|0.47|1|8.27||32|15.473|0.421|1|14.615|0.244|1|12.115|0.488|1|7.993||32|16.261|0.287|0.06|1.213|22|0|55274.75810734|55276.80913826|55275.80231653|16.695|2.048|0.427|3.56900001|16|1|55274.75810734|55276.80913826|55275.80231653|14.631|||4.94199991|11|0|55274.75810734|55276.80913826|55275.80231653|11.543|||3.87599993|10|0|55274.75810734|55276.80913826|55275.80231653|20|-10|-48|0|0|1|||||||||||||||||||||||||||||0|||||||1802089401241004442|1|-0.0022400784788554|-0.0001996937132041|-0.999997471082217|121000000|
+J095412.57-895216.0|148.552394|-89.8711278|0.943|0.876|-0.2229|302.8308546|-27.0358985|269.7228578|-66.6276999|1887.692|648.913|1201089401241005270|1201m894_ab41-005270|1201m894_ab41|5270|17.297|0.16|6.8|0.871100008|16.795|0.311|3.5|0.831900001|13.095||0.0|1.04100001|9.451||-0.4|1.08200002|0.954599977|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|2|23|2|23|1|23|0|23|22.988|23.413|23.072|23.054|0.0|0.0|0.0|0.0|0||0||0||0||19.1110001|2.80800009|9.414|2.858|0.117|12.0790005|3.45639992|21.875|3.427|0.037|0.991429985|45.3209991|1095.383|25.319|0.567|-5.0644002|13.1420002|297.815|9.897|1.56|16.547||32|0.261|16.213|0.457|1|0.319|12.755||32|0.825|8.525||32|0.576|17.03||32|17.007|0.508|1|13.939||32|9.536||32|16.808||32|16.532|0.457|1|13.58||32|9.101||32|16.766||32|16.366|0.51|1|13.296||32|8.757||32|16.66||32|15.541||32|13.062||32|8.464||32|16.46||32|15.452||32|12.863||32|8.203||32|16.279||32|15.284||32|12.681||32|7.968||32|16.116||32|15.024||32|12.519||32|7.752||32|15.963||32|15.445|0.516|1|12.367||32|7.553||32|17.359|0.853|0.178|2.639|19|1|55274.89041135|55276.94144233|55275.86561452|16.874|1.443|0.301|3.36199999|16|0|55274.89041135|55276.94144233|55275.86561452|14.362|4.81|1.003|4.53200006|11|0|55274.89041135|55276.94144233|55275.86561452|11.731|||2.36599994|8|0|55274.89041135|55276.94144233|55275.86561452|40|-53|38|1|1|0|||||||||||||||||||||||||||||0|||||||1201089401241005270|1|-0.00191886764222|0.0011734713165143|-0.999997470452821|111000000|
+J133042.72-895215.6|202.6780252|-89.8710263|0.2273|0.2221|0.0538|302.9566004|-27.0010697|269.7014318|-66.5106984|1919.313|664.203|1802089401241004223|1802m894_ab41-004223|1802m894_ab41|4223|15.5|0.042|25.6|1.13300002|15.643|0.106|10.3|0.924799979|13.156||-0.2|1.10000002|9.442||-1.3|0.950900018|1.02400005|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|11nn|AAUU|3|0000|23|24|5|24|3|24|0|24|24.825|24.68|24.891|24.683|0.0|0.0|0.0|0.0|8|h|8|h|0||0||100.019997|3.91050005|10.2|2.301|0.749|34.9049988|3.40470004|21.811|2.976|0.65|-7.00990009|43.3240013|1095.123|25.116|2.965|-17.6819992|13.2539997|298.29|10.132|0.242|15.359|0.088|0|0.261|15.275|0.16|0|0.319|12.557||32|0.825|9.025||32|0.576|16.097|0.098|0|16.251|0.21|0|13.669||32|10.037||32|15.62|0.088|0|15.594|0.16|0|13.382||32|9.601||32|15.325|0.087|1|15.137|0.136|1|13.051||32|9.254||32|14.979|0.079|1|14.701|0.113|1|12.691||32|8.887||32|14.5|0.061|1|14.216|0.087|1|12.34||32|8.499||32|13.978|0.045|1|13.739|0.066|1|12.008||32|8.157||32|13.526|0.035|1|13.325|0.053|1|11.744||32|7.934||32|13.126|0.028|1|12.938|0.043|1|11.532||32|7.784||32|15.49|0.15|0.031|0.602|23|0|55274.89041135|55276.94144233|55275.92420909|15.715|0.555|0.113|4.59100008|23|1|55274.89041135|55276.94144233|55275.92420909|13.882|7.73|1.578|5.65999985|10|2|55274.89041135|55276.94144233|55275.92420909||||4.77299976|6|0|55274.89041135|55276.94144233|55275.92420909|-27|-23|83|1|0|1||||||||||||||||||||||||||857956153|0.67|148.5|1|16.457|0.146|15.706|0.156|16.063||1802089401241004223|1|-0.0020769785962789|-0.0008678831380563|-0.999997466466175|121000000|
+J045255.03-895215.6|73.2293179|-89.8710238|0.7364|0.8472|0.1109|302.8058757|-27.1918659|270.094025|-66.6841713|1971.254|680.869|600089401241005028|0600m894_ab41-005028|0600m894_ab41|5028|17.203|0.141|7.7|0.886099994|17.277|0.521|2.1|0.893299997|12.957|0.443|2.5|1.07299995|9.292|0.428|2.5|1.11300004|0.980199993|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCCC|15|0000|1|21|0|21|0|20|1|20|22.987|23.175|22.82|22.534|0.0|0.0|0.0|0.0|0||0||0||0||20.8419991|2.69970012|9.358|2.69|0.122|7.7480998|3.71690011|21.792|3.415|0.113|104.040001|42.4570007|1097.52|22.238|3.422|30.4360008|12.0109997|298.581|9.297|1.439|15.934|0.107|1|0.261|15.856|0.284|1|0.319|12.123||32|0.825|8.51||32|0.576|16.933|0.151|1|16.982|0.427|1|13.557||32|9.522||32|16.195|0.107|1|16.175|0.284|1|12.948||32|9.086||32|15.625|0.082|1|15.583|0.213|1|13.037|0.404|1|8.745||32|15.137|0.065|1|15.117|0.172|1|12.507|0.306|1|8.45||32|14.647|0.05|1|14.644|0.135|1|12.072|0.245|1|8.191||32|14.029|0.034|1|14.002|0.088|1|11.695|0.202|1|7.955||32|13.223|0.019|1|13.19|0.049|1|11.362|0.172|1|7.74||32|12.364|0.011|1|12.389|0.027|1|11.037|0.145|1|7.541||32|17.186|0.534|0.117|3.057|20|0|55275.28745078|55277.20605032|55276.23258879|17.175|2.797|0.61|2.60599995|10|0|55275.28745078|55277.20605032|55276.23258879|12.719|1.946|0.435|2.85100007|12|0|55275.28745078|55277.20605032|55276.2136873|9.504|1.793|0.401|3.18799996|14|0|55275.28745078|55277.20605032|55276.2136873|38|-58|10|1|1|0|||||||||||||||||||||||||||||0|||||||600089401241005028|1|0.0006495242963292|0.0021553134692278|-0.999997466367809|101000000|
+J130610.35-895215.4|196.5431541|-89.8709661|0.1928|0.1863|0.0408|302.9412203|-26.9993888|269.6895021|-66.5236606|1953.37|676.318|1802089401241004145|1802m894_ab41-004145|1802m894_ab41|4145|15.743|0.046|23.7|1.03100002|14.365|0.044|24.9|0.899800003|12.112|0.211|5.1|0.996599972|9.483|0.54|2.0|0.961700022|0.969799995|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|20nn|AABC|15|0000|21|25|25|25|3|25|0|25|24.814|24.642|24.832|24.847|0.0|0.0|0.0|0.0|8|h|8|h|0||0||79.9209976|3.37269998|10.57|2.586|0.064|113.25|4.54160023|21.818|3.061|0.25|226.669998|44.0139999|1095.426|25.316|3.269|25.5209999|12.6969995|298.218|9.871|1.075|15.162|0.035|1|0.261|14.308|0.071|1|0.319|11.862|0.216|1|0.825|8.409||32|0.576|16.016|0.043|1|15.124|0.081|1|13.23|0.253|1|9.47||32|15.423|0.035|1|14.627|0.071|1|12.687|0.216|1|8.985||32|14.968|0.029|1|14.33|0.07|1|12.426|0.218|1|8.587||32|14.552|0.025|1|14.08|0.069|1|12.324|0.246|1|8.28||32|14.167|0.021|1|13.832|0.066|1|12.322|0.297|1|7.981||32|13.779|0.018|1|13.541|0.06|1|12.279|0.337|1|8.432|0.533|1|13.294|0.014|1|13.119|0.048|1|12.111|0.335|1|8.123|0.49|1|12.627|0.01|1|12.463|0.03|1|11.824|0.296|1|7.871|0.467|1|15.708|0.267|0.053|1.969|24|2|55274.75810734|55276.94144233|55275.87756502|14.342|0.153|0.031|0.888000011|24|0|55274.75810734|55276.94144233|55275.87756502|11.98|0.936|0.187|2.75900006|21|0|55274.75810734|55276.94144233|55275.87756502|9.244|1.663|0.333|2.87199998|14|0|55274.75810734|55276.94144233|55275.87756502|3|-17|27|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004145|1|-0.0021588422212626|-0.0006412472640686|-0.99999746409789|121000000|
+J181235.10-895215.4|273.1462762|-89.870948|0.267|0.2778|-0.0497|303.0748135|-27.1063109|270.0177147|-66.4318505|2203.046|652.23|3004089401241004922|3004m894_ab41-004922|3004m894_ab41|4922|15.823|0.049|22.2|0.825200021|15.899|0.136|8.0|0.951499999|12.503||1.7|1.12300003|9.602||-1.6|1.125|0.996800005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|ABUU|3|0000|23|24|4|24|0|23|0|23|23.782|23.731|22.984|22.844|0.0|0.0|0.0|0.0|0||0||0||0||74.2900009|3.33949995|9.432|2.495|0.074|27.5599995|3.44650006|21.818|3.318|0.177|73.060997|42.5169983|1094.318|24.355|0.937|-18.25|11.434|299.264|9.886|0.553|15.633|0.105|1|0.261|15.606|0.276|1|0.319|12.343|0.438|1|0.825|7.819||32|0.576|16.346|0.116|0|16.434|0.319|0|13.17||32|9.075||32|15.894|0.105|1|15.925|0.276|1|13.168|0.438|1|8.395||32|15.549|0.099|1|15.547|0.251|1|12.426|0.286|1|8.645|0.487|1|15.119|0.083|1|15.074|0.203|1|11.85|0.209|1|8.356|0.489|1|14.648|0.065|1|14.57|0.153|1|11.409|0.167|1|8.138|0.508|1|14.225|0.052|1|14.143|0.122|1|11.092|0.148|1|7.248||32|13.875|0.044|1|13.818|0.105|1|10.87|0.14|1|7.146||32|13.605|0.039|1|13.587|0.098|1|10.704|0.138|1|7.076||32|15.83|0.22|0.045|0.868|23|0|55275.28732341|55277.20605032|55276.16402342|15.834|0.698|0.142|2.51399994|21|0|55275.28732341|55277.20605032|55276.16402342|12.936|2.55|0.532|2.829|11|0|55275.28732341|55277.20605032|55276.14460624||||2.40700006|9|0|55275.28732341|55277.20605032|55276.14460624|27|11|-27|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004922|1|0.000123622495809|-0.002248984508914|-0.999997463389861|131000000|
+J125356.55-895215.3|193.4856413|-89.8709433|0.5147|0.4916|0.1206|302.933499|-26.9991074|269.6848852|-66.530296|1724.363|449.124|1201089401241004723|1201m894_ab41-004723|1201m894_ab41|4723|16.683|0.085|12.8|1.11899996|16.704|0.253|4.3|0.916999996|13.125||-1.7|0.883899987|9.388||0.3|0.942200005|0.962800026|1|0|0.0|0.0|0.0|0.0|0000|h000|0|4nnn|ABUU|3|0000|10|25|3|25|0|25|0|25|24.561|24.655|24.905|24.749|0.0|0.0|0.0|0.0|8|h|0||0||0||33.632|2.61809993|10.228|2.565|0.0|13.1379995|3.06550002|21.833|3.175|0.0|-74.4499969|44.5760002|1095.391|25.597|1.6|3.57570004|12.1400003|298.329|10.106|0.218|15.427|0.046|1|0.261|15.654|0.31|1|0.319|12.504||32|0.825|8.394||32|0.576|16.513|0.069|1|16.823|0.485|1|13.689||32|9.533||32|15.688|0.046|1|15.973|0.31|1|13.329||32|8.97||32|15.007|0.033|1|15.286|0.215|1|13.043||32|9.021|0.423|1|14.492|0.026|1|14.762|0.165|1|12.809||32|8.371|0.301|1|14.117|0.023|1|14.378|0.14|1|12.609||32|7.947|0.255|1|13.835|0.022|1|14.07|0.124|1|12.431||32|7.66|0.24|1|13.624|0.021|1|13.806|0.114|1|12.266||32|7.459|0.241|1|13.457|0.022|1|13.582|0.107|1|11.923||32|7.278|0.243|1|16.698|0.673|0.135|3.543|22|1|55274.75810734|55276.94144233|55275.87756502|16.695|1.909|0.382|3.15499997|17|0|55274.75810734|55276.94144233|55275.87756502||||3.99000001|8|0|55274.75810734|55276.94144233|55275.87756502||||3.71099997|13|0|55274.75810734|55276.94144233|55275.87756502|33|12|53|1|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004723|1|-0.0021903580325086|-0.0005252779147318|-0.999997463204183|121000000|
+J175409.71-895215.0|268.5404614|-89.8708569|0.2299|0.2494|-0.0335|303.0724743|-27.0961467|269.9917733|-66.4316075|1888.361|650.084|2403089401241004969|2403m894_ab41-004969|2403m894_ab41|4969|15.638|0.045|24.1|0.969500005|15.658|0.11|9.9|0.921400011|12.982||0.3|0.974799991|9.456||-0.1|0.964399993|0.953199983|2|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|ABUU|3|0000|22|24|4|24|0|23|0|23|24.009|24.455|23.231|23.024|0.0|0.0|0.0|0.0|8|h|0||0||0||88.0500031|3.65879989|9.577|2.424|0.022|34.4230003|3.49309993|21.777|3.262|0.0|11.7410002|44.9659996|1095.261|25.154|2.074|-1.75619996|13.0839996|299.146|9.828|1.627|15.338|0.112|1|0.261|15.209|0.196|1|0.319|12.568|0.423|1|0.825|8.083||32|0.576|16.126|0.131|1|16.155|0.251|1|13.452||32|9.256||32|15.599|0.112|1|15.528|0.196|1|13.393|0.423|1|8.659||32|15.184|0.1|1|15.08|0.169|1|12.694|0.289|1|8.152||32|14.776|0.085|1|14.712|0.149|1|12.174|0.222|1|7.782||32|14.387|0.071|1|14.389|0.133|1|11.726|0.176|1|7.555||32|14.066|0.063|1|14.108|0.121|1|11.334|0.144|1|7.415||32|13.823|0.058|1|13.866|0.113|1|10.99|0.121|1|7.32||32|13.646|0.057|1|13.674|0.109|1|10.708|0.107|1|7.224||32|15.675|0.218|0.045|1.173|23|1|55275.28732341|55277.20605032|55276.16402342|15.687|0.458|0.094|2.17000008|23|0|55275.28732341|55277.20605032|55276.16402342|14.206|7.522|1.568|3.70600009|11|0|55275.28732341|55277.20605032|55276.14460624|10.723|7.117|1.484|3.70799994|10|0|55275.28732341|55277.20605032|55276.14460624|32|26|5|1|0|0||||||||||||||||||||||||||970452617|0.051|-124.6|1|16.264|0.122|15.782|0.192|15.368|0.226|2403089401241004969|1|-0.0000574108581771|-0.0022532383384059|-0.999997459807266|121000000|
+J035913.49-895215.0|59.8062484|-89.8708376|0.999|1.0822|0.3145|302.8257844|-27.2162927|270.1640423|-66.6722624|2049.691|690.188|600089401241005240|0600m894_ab41-005240|0600m894_ab41|5240|18.773||-0.9|0.847500026|17.45||-3.9|1.11500001|11.912|0.17|6.4|1.01900005|9.224|0.385|2.8|0.844500005|0.96420002|1|0|0.0|0.0|0.0|0.0|0000|D000|0|nnnn|UUBC|12|0000|0|22|0|22|3|21|0|22|23.036|23.345|22.189|22.954|0.0|0.0|0.0|0.0|129|D|0||0||0||-2.16939998|2.4532001|9.342|2.568|0.0|-13.0030003|3.30439997|21.744|3.392|0.064|272.299988|42.5649986|1098.978|22.59|2.508|32.3969994|11.4989996|298.623|9.0|0.538|16.925||32|0.261|16.434||32|0.319|12.427||32|0.825|8.995||32|0.576|17.744||32|17.118||32|13.649||32|9.915||32|17.186||32|16.753||32|13.252||32|9.571||32|17.344|0.523|1|16.465||32|12.992||32|9.228||32|16.52|0.308|1|15.848||32|12.741||32|8.938||32|15.787|0.191|1|15.768|0.43|1|12.437||32|8.68||32|15.161|0.129|1|15.012|0.254|1|12.13||32|8.447||32|14.644|0.095|1|14.51|0.187|1|11.852||32|8.234||32|14.167|0.071|1|14.111|0.15|1|12.235|0.45|1|8.037||32||||2.265|9|0|55275.28745078|55277.33835439|55276.28285086||||1.403|3|0|55275.28745078|55277.33835439|55276.28285086|11.797|0.89|0.194|3.81599998|15|0|55275.28745078|55277.33835439|55276.26724288|9.163|1.405|0.3|3.17400002|16|0|55275.28745078|55277.33835439|55276.25277598|29|-23|-1|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005240|1|0.001133748854854|0.0019484643032702|-0.999997459046968|101000000|
+J084517.96-895214.3|131.3248386|-89.8706571|1.2232|1.2431|-0.2317|302.8042253|-27.0664503|269.7844429|-66.6576951|1982.576|684.281|1201089401241005762|1201m894_ab41-005762|1201m894_ab41|5762|17.666|0.203|5.4|0.93779999|16.838||1.4|0.912599981|12.942|0.466|2.3|1.171|9.553||-0.3|1.05999994|1.01499999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|0|23|0|23|1|22|0|22|22.842|22.714|21.913|21.896|0.0|0.0|0.0|0.0|0||0||0||0||13.6049995|2.53760004|9.288|2.678|0.0|4.86320019|3.37050009|21.862|3.332|0.13|105.510002|45.3330002|1097.104|24.201|3.512|-4.09950018|11.9630003|298.158|9.58|0.841|15.863|0.231|1|0.261|15.517|0.144|1|0.319|11.762||32|0.825|8.453||32|0.576|17.15|0.427|1|16.715|0.233|1|12.947||32|9.464||32|16.124|0.231|1|15.836|0.144|1|12.587||32|9.029||32|15.432|0.158|1|15.221|0.106|1|12.305||32|8.684||32|15.066|0.14|1|14.82|0.09|1|12.074||32|8.391||32|14.907|0.146|1|14.539|0.084|1|11.869||32|8.131||32|14.772|0.152|1|14.258|0.076|1|11.689||32|7.896||32|14.556|0.145|1|13.943|0.066|1|11.524||32|7.681||32|14.294|0.131|1|13.645|0.058|1|11.374||32|7.482||32|17.661|0.92|0.192|1.653|17|0|55274.89041135|55276.94144233|55275.9260225|17.811|4.089|0.853|3.42499995|13|0|55274.89041135|55276.94144233|55275.9260225|12.546|1.85|0.394|3.96199989|11|0|55274.89041135|55276.94144233|55275.8949045||||2.70799994|9|0|55274.89041135|55276.94144233|55275.8949045|-11|22|64|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241005762|1|-0.0014906610129031|0.0016953010336624|-0.999997451938829|111000000|
+J052728.21-895214.0|81.8675431|-89.8705591|0.5253|0.5867|0.0682|302.7960715|-27.1744615|270.046272|-66.6888413|1922.282|666.742|600089401241004742|0600m894_ab41-004742|0600m894_ab41|4742|16.982|0.125|8.7|0.8222|16.645|0.286|3.8|0.880400002|11.474|0.113|9.6|1.02400005|8.979|0.32|3.4|0.978200018|0.92110002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn0n|BBBB|15|0000|2|21|0|21|5|20|0|20|22.63|22.73|21.877|21.812|0.0|0.0|0.0|0.0|0||0||0||0||25.5450001|2.94869995|9.331|2.829|0.0|13.8640003|3.65700006|21.774|3.44|0.0|407.709991|42.4620018|1095.99|20.62|3.406|40.5750008|11.9429998|298.634|9.391|1.019|16.995|0.537|1|0.261|15.607|0.189|1|0.319|12.313|0.374|1|0.825|8.358||32|0.576|17.486|0.472|0|16.548|0.238|0|13.731|0.458|0|9.375||32|17.256|0.537|1|15.926|0.189|1|13.138|0.374|1|8.934||32|16.356||32|15.529|0.17|1|12.759|0.341|1|8.633||32|16.082||32|15.184|0.153|1|12.473|0.326|1|8.338||32|16.225|0.401|1|14.823|0.133|1|12.283|0.33|1|8.065||32|15.443|0.23|1|14.421|0.108|1|12.166|0.349|1|7.822||32|14.691|0.134|1|13.991|0.085|1|12.064|0.37|1|7.607||32|14.116|0.091|1|13.615|0.069|1|11.948|0.383|1|7.457||32|17.002|0.359|0.078|1.892|20|0|55275.28745078|55277.20605032|55276.2262886|16.575|1.072|0.234|2.81500006|16|0|55275.28745078|55277.20605032|55276.2262886|11.482|0.468|0.105|1.84099996|19|0|55275.28745078|55277.20605032|55276.2070721|8.896|1.146|0.256|3.8599999|14|0|55275.28745078|55277.20605032|55276.2070721|-3|12|-13|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004742|1|0.0003195865295336|0.0022364492324261|-0.999997448076384|101000000|
+J063154.73-895213.7|97.9780467|-89.8704802|0.3538|0.3841|-0.081|302.7869|-27.1391033|269.9545729|-66.6889686|2176.17|665.974|1201089401241004596|1201m894_ab41-004596|1201m894_ab41|4596|16.287|0.071|15.3|1.18400002|16.53|0.268|4.0|0.864700019|11.231|0.094|11.6|1.17799997|8.861||1.8|1.03299999|1.06099999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1n1n|ABAU|7|0000|15|21|1|21|6|20|0|20|23.734|23.805|22.991|22.757|0.0|0.0|0.0|0.0|0||0||0||0||48.4550018|3.16400003|9.351|2.84|0.074|15.4130001|3.80579996|21.868|3.499|0.176|509.980011|44.0029984|1095.778|21.826|1.694|21.5249996|11.8649998|298.187|9.504|0.747|15.22|0.062|1|0.261|14.989|0.09|1|0.319|11.434|0.17|1|0.825|8.453||32|0.576|16.241|0.09|1|16.127|0.139|1|12.97|0.236|1|9.62||32|15.481|0.062|1|15.308|0.09|1|12.259|0.17|1|9.029||32|14.826|0.044|1|14.649|0.063|1|11.812|0.146|1|8.569||32|14.214|0.032|1|14.047|0.045|1|11.515|0.137|1|8.981|0.538|1|13.607|0.022|1|13.453|0.032|1|11.301|0.136|1|8.689|0.513|1|12.965|0.015|1|12.87|0.023|1|11.105|0.134|1|8.434|0.495|1|12.403|0.011|1|12.374|0.017|1|10.916|0.131|1|8.276|0.514|1|12.035|0.01|1|12.035|0.015|1|10.754|0.13|1|7.425||32|16.278|0.365|0.08|1.616|20|1|55275.02284279|55276.94144233|55276.12232634|16.342|1.173|0.256|2.87800002|15|0|55275.02284279|55276.94144233|55276.12232634|11.197|0.645|0.144|5.64300013|19|4|55275.02284279|55276.94144233|55276.09791173|10.057|4.979|1.113|3.36100006|12|0|55275.02284279|55276.94144233|55276.09791173|-29|14|-39|1|0|1|||||||||||||||||||||||||||||0|||||||1201089401241004596|1|-0.0003137493921595|0.0022386664324882|-0.999997444963697|111000000|
+J150830.96-895213.7|227.1290235|-89.8704728|0.2449|0.257|0.0701|303.0137883|-27.0210917|269.7793035|-66.4656243|2125.661|682.129|2403089401241004714|2403m894_ab41-004714|2403m894_ab41|4714|15.687|0.045|24.0|0.897099972|15.923|0.143|7.6|1.10599995|12.999||0.1|0.968900025|9.197||0.5|1.102|1.01400006|1|0|0.0|0.0|0.0|0.001|0000|hh00|0|0nnn|ABUU|3|0000|22|22|3|23|0|22|0|22|22.769|22.359|21.936|21.947|0.0|0.0|0.0|0.0|8|h|8|h|0||0||84.1610031|3.50909996|9.386|2.304|0.0|26.9740009|3.55920005|21.888|3.31|0.072|5.40460014|47.3310013|1093.797|25.137|1.702|6.66480017|13.2679996|298.262|10.109|1.598|15.541|0.148|1|0.261|15.432|0.187|1|0.319|12.308||32|0.825|8.541||32|0.576|16.354|0.177|1|16.413|0.247|1|13.493||32|9.551||32|15.802|0.148|1|15.751|0.187|1|13.133||32|9.117||32|15.435|0.137|1|15.304|0.16|1|12.849||32|8.751||32|15.207|0.138|1|14.989|0.148|1|12.615||32|8.39||32|15.12|0.153|1|14.805|0.15|1|12.415||32|8.084||32|15.137|0.184|1|14.733|0.165|1|12.237||32|7.828||32|15.226|0.232|1|14.727|0.191|1|12.073||32|7.647||32|15.319|0.29|1|14.728|0.22|1|11.921||32|7.556||32|15.717|0.171|0.037|0.926|21|0|55274.89041135|55276.94144233|55275.93697808|15.86|0.662|0.138|3.24799991|22|0|55274.89041135|55276.94144233|55275.92886822|13.001|2.486|0.53|3.28699994|10|0|55274.89041135|55276.94144233|55275.89787957|9.999|3.335|0.711|3.46000004|12|0|55274.89041135|55276.94144233|55275.89787957|9|-81|-8|0|3|0||||||||||||||||||||||||||912310402|0.452|-27.1|1|16.27|0.13|15.898|0.187|16.036||2403089401241004714|1|-0.001538048935637|-0.0016568200453151|-0.99999744467314|121000000|
+J152216.15-895213.0|230.567318|-89.8702833|0.239|0.2501|0.0608|303.0209808|-27.0255043|269.7937007|-66.4603834|2105.808|686.681|2403089401241004779|2403m894_ab41-004779|2403m894_ab41|4779|15.664|0.045|24.1|0.924799979|15.645|0.11|9.9|0.854499996|12.825||0.3|0.992200017|9.127||0.7|0.824100018|0.895699978|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|0nnn|ABUU|3|0000|22|23|3|23|0|22|0|22|22.649|22.758|21.749|22.078|0.0|0.0|0.0|0.0|8|h|8|h|0||0||86.0049973|3.5632|9.38|2.288|0.056|34.8339996|3.52870011|21.82|3.246|0.038|15.1440001|51.1720009|1094.341|25.535|1.813|9.21800041|13.1020002|298.609|9.964|0.526|16.357|0.478|1|0.261|15.616||32|0.319|12.554||32|0.825|8.709||32|0.576|16.743|0.382|0|16.151||32|13.746||32|9.69||32|16.618|0.478|1|15.935||32|13.379||32|9.285||32|15.946||32|16.022||32|13.098||32|9.028||32|16.027||32|15.979||32|12.865||32|8.811||32|18.563||32|15.779||32|12.666||32|8.553||32|15.86||32|15.597||32|12.485||32|8.319||32|15.696||32|15.432||32|12.321||32|8.105||32|15.701||32|15.136||32|12.171||32|7.907||32|15.674|0.209|0.044|1.025|22|0|55274.89041135|55276.94144233|55275.92886822|15.64|0.526|0.11|1.77699995|21|0|55274.89041135|55276.94144233|55275.92886822|13.588|3.829|0.816|3.102|11|0|55274.89041135|55276.94144233|55275.89787957|9.996|2.791|0.595|3.50500011|12|0|55274.89041135|55276.94144233|55275.89787957|22|-34|-59|0|1|1|||||||||||||||||||||||||||||0|||||||2403089401241004779|1|-0.0014380160437968|-0.0017486348268144|-0.999997437189766|121000000|
+J051554.60-895212.9|78.9775247|-89.8702708|0.1032|0.1034|-0.0186|302.7985687|-27.1806148|270.0626765|-66.6880325|1938.066|673.394|600089401241003961|0600m894_ab41-003961|0600m894_ab41|3961|13.68|0.025|42.9|0.933200002|13.714|0.033|32.6|1.09899998|11.937|0.173|6.3|1.11699998|9.251|0.407|2.7|1.08000004|1.05299997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|110n|AABC|15|0000|22|22|22|22|4|21|0|21|22.806|22.661|21.926|21.836|0.0|0.0|0.0|0.0|0||0||0||0||534.440002|12.4469995|9.367|2.787|0.0|206.190002|6.32789993|21.778|3.435|0.0|266.309998|42.3129997|1097.828|22.287|0.0|31.5830002|11.8380003|298.635|9.264|0.802|13.681|0.019|0|0.261|13.67|0.033|0|0.319|12.236||32|0.825|8.253||32|0.576|14.308|0.019|0|14.444|0.036|0|13.56||32|9.488||32|13.942|0.019|0|13.989|0.033|0|13.061||32|8.829||32|13.816|0.021|1|13.806|0.036|1|12.632||32|8.968|0.431|1|13.771|0.025|1|13.72|0.041|1|12.265||32|8.573|0.388|1|13.753|0.029|1|13.656|0.046|1|12.749|0.539|1|8.36|0.401|1|13.736|0.034|1|13.577|0.05|1|12.508|0.51|1|8.201|0.426|1|13.71|0.038|1|13.478|0.053|1|12.266|0.474|1|8.042|0.445|1|13.67|0.042|1|13.373|0.055|1|12.022|0.436|1|7.94|0.482|1|13.679|0.04|0.009|0.146|21|0|55275.28745078|55277.20605032|55276.25579157|13.719|0.113|0.024|0.444999993|21|0|55275.28745078|55277.20605032|55276.25579157|11.862|1.034|0.226|6.36600018|17|2|55275.28745078|55277.20605032|55276.23889505|9.106|1.43|0.312|1.94299996|12|0|55275.28745078|55277.20605032|55276.23889505|-45|22|3|1|0|0||||||||||||||||||||||||||1181170519|0.102|-102.7|1|14.756|0.036|14.078|0.035|13.772|0.044|600089401241003961|1|0.0004329015978588|0.0022224308825046|-0.999997436695304|101000000|
+J020522.49-895212.1|31.3437444|-89.8700336|0.9405|0.9206|0.3225|302.8855665|-27.2514103|270.2798088|-66.6280649|2211.664|650.357|600089401241005331|0600m894_ab41-005331|0600m894_ab41|5331|17.63|0.19|5.7|0.942600012|16.875|0.343|3.2|0.928600013|12.181|0.218|5.0|1.21300006|9.247||0.8|1.04900002|1.028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|1|23|0|23|0|22|0|22|23.196|23.615|22.736|22.242|0.0|0.0|0.0|0.0|0||0||0||0||14.0570002|2.45449996|9.264|2.79|0.042|11.217|3.54239988|21.72|3.377|0.135|212.529999|42.6119995|1100.231|22.549|0.303|9.18760014|11.257|298.53|9.375|0.145|17.281|0.24|0|0.261|16.343|0.381|0|0.319|12.023||32|0.825|8.593||32|0.576|17.834|0.226|0|17.178|0.437|0|13.225||32|9.606||32|17.542|0.24|0|16.662|0.381|0|12.848||32|9.169||32|17.557|0.311|0|16.356|0.37|0|12.782||32|8.825||32|17.69|0.434|1|16.209|0.401|1|12.426||32|8.531||32|17.714|0.534|1|16.098|0.436|1|12.222||32|8.27||32|17.461|0.496|1|15.905|0.432|1|12.041||32|8.035||32|17.032|0.388|1|15.645|0.395|1|11.878||32|7.82||32|16.566|0.29|1|15.394|0.361|1|11.726||32|7.621||32|17.676|0.843|0.176|3.616|19|0|55275.55205887|55277.33835439|55276.39777605|16.667|1.619|0.338|3.76200008|13|0|55275.55205887|55277.33835439|55276.39777605|12.008|0.769|0.164|2.39100003|17|0|55275.55205887|55277.33835439|55276.3881014|10.224|4.866|1.037|2.5079999|12|0|55275.55205887|55277.33835439|55276.3881014|7|-31|24|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005331|1|0.0019373018816688|0.0011799248347946|-0.999997427316092|101000000|
+J110805.60-895212.0|167.0233737|-89.8700221|0.0784|0.0803|0.0143|302.8683366|-27.0111563|269.6812125|-66.5895726|2126.016|683.249|1802089401241003783|1802m894_ab41-003783|1802m894_ab41|3783|11.531|0.023|47.7|0.893899977|11.6|0.022|49.3|0.899600029|11.854|0.175|6.2|1.00399995|9.434||-1.2|1.09599996|0.970300019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABU|7|0000|22|22|22|22|2|22|0|22|21.77|21.741|21.915|21.788|0.0|0.0|0.0|0.0|0||0||0||0||3869.3999|81.1549988|9.772|2.787|0.0|1445.19995|29.3330002|21.884|3.474|0.0|287.309998|46.3160019|1095.255|25.573|2.379|-15.427|13.3470001|298.595|10.182|0.983|11.527|0.006|0|0.261|11.605|0.009|0|0.319|11.821|0.317|0|0.825|8.809||32|0.576|12.151|0.006|0|12.356|0.009|0|13.201|0.382|0|9.818||32|11.788|0.006|0|11.924|0.009|0|12.646|0.317|0|9.385||32|11.66|0.006|1|11.765|0.009|1|12.375|0.32|1|9.041||32|11.608|0.006|1|11.703|0.01|1|12.322|0.378|1|8.746||32|11.578|0.006|1|11.67|0.011|1|12.454|0.512|1|8.486||32|11.554|0.006|1|11.647|0.012|1|11.738||32|8.25||32|11.533|0.007|1|11.632|0.013|1|11.747||32|8.034||32|11.514|0.007|1|11.617|0.015|1|11.789||32|7.835||32|11.526|0.022|0.005|0.12|21|0|55274.75810734|55276.94144233|55275.84978638|11.6|0.031|0.007|0.126000002|21|0|55274.75810734|55276.94144233|55275.84978638|11.796|0.762|0.162|3.76300001|20|0|55274.75810734|55276.94144233|55275.84978638||||3.42000008|6|0|55274.75810734|55276.94144233|55275.84978638|-3|28|-49|0|1|1||||||||||||||||||||||||||748869128|0.126|0.5|1|12.296|0.021|11.742|0.027|11.613|0.023|1802089401241003783|1|-0.0022106054577788|0.0005094086933051|-0.999997426859836|111000000|
+J062423.16-895211.3|96.0965189|-89.86981|0.8172|0.9176|-0.2148|302.7866314|-27.1434131|269.9650581|-66.6901587|2187.125|663.199|1201089401241005786|1201m894_ab41-005786|1201m894_ab41|5786|17.473|0.177|6.1|0.935699999|17.401||-0.1|0.959900022|11.982|0.174|6.3|1.07500005|8.839||1.9|1.11300004|1.01600003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|2|22|0|22|2|21|0|21|23.409|23.745|22.979|22.782|0.0|0.0|0.0|0.0|0||0||0||0||16.2420006|2.65129995|9.33|2.823|0.607|-0.335290015|3.45519996|21.819|3.477|0.0|255.5|40.8779984|1095.819|21.412|1.841|22.2789993|11.948|298.523|9.636|1.874|16.623|0.368|1|0.261|15.833||32|0.319|12.108||32|0.825|8.399||32|0.576|17.53|0.478|0|16.537||32|13.367||32|9.561||32|16.884|0.368|1|16.152||32|12.933||32|8.975||32|16.212|0.258|1|15.723||32|12.658||32|8.535||32|15.483|0.163|1|15.228||32|12.43||32|8.893|0.502|1|14.873|0.112|1|15.453|0.5|1|12.2||32|8.506|0.44|1|14.427|0.088|1|14.884|0.35|1|11.962||32|8.253|0.428|1|14.105|0.076|1|14.488|0.282|1|11.736||32|8.055|0.43|17|13.792|0.066|1|14.089|0.225|1|11.599||32|7.825|0.414|17|17.705|0.666|0.142|3.194|20|0|55275.02284279|55277.20605032|55276.17158652||||2.37800002|10|0|55275.02284279|55277.20605032|55276.17158652|11.988|0.961|0.21|3.27900004|18|0|55275.02284279|55277.20605032|55276.15068023|9.454|2.483|0.542|4.50500011|14|0|55275.02284279|55277.20605032|55276.15068023|17|1|9|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005786|1|-0.0002413203435106|0.002259390444895|-0.999997418456323|111000000|
+J070032.38-895211.1|105.1349544|-89.8697545|1.188|1.3519|-0.3329|302.7856932|-27.1229094|269.9140743|-66.6864133|2136.55|681.329|1201089401241005701|1201m894_ab41-005701|1201m894_ab41|5701|18.739||-0.4|0.896000028|16.824|0.318|3.4|0.858699977|11.969|0.186|5.8|1.15799999|9.314||0.5|1.03100002|0.980499983|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UBBU|6|0000|0|21|0|21|3|20|0|20|23.378|23.656|22.794|22.768|0.0|0.0|0.0|0.0|0||0||0||0||-0.957180023|2.53239989|9.356|2.647|0.0|11.757|3.44210005|21.847|3.298|0.0|258.570007|44.237999|1096.468|22.438|3.318|6.10949993|11.8509998|298.236|9.287|1.116|16.284|0.121|1|0.261|15.77|0.335|1|0.319|11.574||32|0.825|8.524||32|0.576|17.558|0.221|1|16.846|0.484|1|12.93||32|9.96||32|16.545|0.121|1|16.089|0.335|1|12.399||32|9.1||32|15.695|0.072|1|15.49|0.251|1|11.978||32|8.726||32|15.01|0.048|1|14.969|0.193|1|12.434|0.542|1|8.4||32|14.486|0.036|1|14.54|0.157|1|12.21|0.532|1|8.141||32|14.078|0.03|1|14.192|0.135|1|11.3||32|7.919||32|13.74|0.025|1|13.889|0.119|1|11.144||32|7.702||32|13.425|0.022|1|13.592|0.104|1|10.999||32|7.518||32||||2.129|8|0|55275.02284279|55276.94144233|55276.12232634|16.837|1.718|0.375|2.31299996|13|0|55275.02284279|55276.94144233|55276.12232634|11.875|1.105|0.247|3.73900008|14|1|55275.02284279|55276.94144233|55276.09791173|13.898|||1.52999997|8|0|55275.02284279|55276.94144233|55276.09791173|-35|-23|41|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241005701|1|-0.000593520652609|0.002194361753494|-0.999997416251527|111000000|
+J143510.38-895211.0|218.7932588|-89.8697259|0.3669|0.3705|0.0984|302.9958646|-27.0109864|269.7455758|-66.4788838|2173.417|669.201|2403089401241005072|2403m894_ab41-005072|2403m894_ab41|5072|16.147|0.063|17.3|1.01400006|16.657|0.276|3.9|0.918900013|12.302||2.0|1.07000005|9.391||-0.8|1.07599998|1.01699996|1|0|0.0|0.0|0.0|0.0|0000|hH00|0|0nnn|ABUU|3|0000|18|21|1|21|1|21|0|21|21.777|22.595|22.759|23.108|0.0|0.0|0.0|0.0|8|h|1032|H|0||0||55.118|3.1796999|9.529|2.311|0.0|13.7209997|3.48930001|21.798|3.151|0.132|94.6809998|47.7750015|1095.384|25.114|4.925|-11.6129999|13.8850002|298.645|10.142|2.327|15.982|0.14|1|0.261|16.063||32|0.319|11.861||32|0.825|8.636||32|0.576|16.795|0.166|1|16.748||32|13.115||32|9.645||32|16.243|0.14|1|16.382||32|12.686||32|9.212||32|15.856|0.128|1|16.091||32|12.37||32|8.867||32|15.542|0.118|1|15.848||32|12.138||32|8.573||32|15.256|0.11|1|15.583||32|11.982||32|8.313||32|14.945|0.097|1|15.247||32|11.824||32|8.078||32|14.596|0.082|1|14.894||32|11.624||32|7.862||32|14.23|0.067|1|15.194|0.461|1|11.406||32|7.663||32|16.121|0.252|0.055|2.997|20|0|55274.89041135|55276.94144233|55275.9017529|16.595|1.678|0.366|2.39299989|13|0|55274.89041135|55276.94144233|55275.9017529|12.625|2.029|0.443|2.75399995|11|0|55274.89041135|55276.94144233|55275.9017529||||4.38399982|9|0|55274.89041135|55276.94144233|55275.9017529|-11|11|55|0|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005072|1|-0.0017721561317835|-0.0014245068489626|-0.9999974151181|121000000|
+J070600.09-895210.5|106.5004019|-89.8696043|0.2228|0.2318|-0.0526|302.7857089|-27.1198001|269.9064234|-66.6857068|2128.771|683.728|1201089401241004457|1201m894_ab41-004457|1201m894_ab41|4457|15.626|0.045|24.3|0.909200013|15.463|0.096|11.3|0.960099995|11.513|0.125|8.7|1.11199999|9.127|0.357|3.0|1.12|1.01800001|1|0|0.0|0.0|0.0|0.001|0000|0000|0|110n|AABC|15|0000|22|22|5|22|4|19|0|21|23.358|23.261|22.901|22.849|0.0|0.0|0.0|0.0|0||0||0||0||89.0110016|3.65709996|9.373|2.642|0.1|41.1780014|3.6322999|21.845|3.299|0.034|393.470001|45.3180008|1096.799|22.741|1.963|35.4189987|11.6549997|298.501|9.26|1.193|15.61|0.124|1|0.261|15.325|0.177|1|0.319|11.644||32|0.825|8.39||32|0.576|16.239|0.124|1|16.135|0.197|1|12.952||32|9.402||32|15.871|0.124|1|15.644|0.177|1|12.469||32|8.966||32|15.677|0.135|1|15.375|0.179|1|12.104||32|8.692||32|15.422|0.133|1|15.084|0.17|1|11.788||32|9.21||32|15.072|0.117|1|14.731|0.149|1|12.31|0.538|1|8.294||32|14.746|0.102|1|14.412|0.131|1|11.44||32|8.058||32|14.537|0.098|1|14.199|0.126|1|11.399||32|7.841||32|14.419|0.102|1|14.066|0.128|1|11.424||32|8.151||32|15.623|0.174|0.037|0.687|21|0|55275.02284279|55276.94144233|55276.08738146|15.533|0.434|0.093|4.02299976|21|1|55275.02284279|55276.94144233|55276.08738146|11.541|0.62|0.142|3.94000006|17|2|55275.02284279|55276.94144233|55276.06395709|8.999|1.435|0.313|2.08200002|13|0|55275.02284279|55276.94144233|55276.06246541|-36|-13|9|1|0|0||||||||||||||||||||||||||1181184479|1.523|42.7|1|17.15|0.249|16.069|0.232|15.539|0.263|1201089401241004457|1|-0.0006463865795693|0.0021821083117877|-0.999997410290499|111000000|
+J024153.27-895210.5|40.4719898|-89.8695944|0.1628|0.1686|0.0388|302.863933|-27.2436927|270.2502439|-66.6451533|2162.648|673.625|600089401241004139|0600m894_ab41-004139|0600m894_ab41|4139|14.971|0.033|32.4|0.924899995|15.156|0.079|13.8|0.886900008|12.428|0.263|4.1|1.06900001|8.886||2.0|1.00399995|0.967599988|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABU|7|0000|24|24|13|24|1|23|0|23|23.758|23.734|22.959|22.845|0.0|0.0|0.0|0.0|0||0||0||0||162.75|5.01730013|9.258|2.697|0.0|54.6629982|3.97199988|21.719|3.388|0.0|169.309998|41.0209999|1099.557|22.01|3.434|21.9519997|11.125|299.014|9.388|1.316|15.003|0.039|0|0.261|15.241|0.2|0|0.319|12.442||32|0.825|8.938|0.5|1|0.576|15.605|0.039|0|15.92|0.2|0|13.88||32|9.396||32|15.264|0.039|0|15.56|0.2|0|13.267||32|9.514|0.5|1|15.156|0.045|0|15.496|0.243|0|12.809||32|8.986|0.41|1|15.122|0.054|0|15.515|0.306|0|12.443||32|8.579|0.358|1|15.098|0.063|1|15.478|0.357|1|12.837|0.528|1|8.239|0.323|1|15.021|0.069|1|15.316|0.363|1|12.468|0.443|1|7.927|0.293|1|14.793|0.065|1|14.988|0.312|1|12.213|0.408|1|7.623|0.263|17|14.4|0.053|1|14.545|0.239|1|11.974|0.376|1|7.373|0.245|17|14.969|0.095|0.019|0.394|23|0|55275.28745078|55277.33835439|55276.3515125|15.138|0.324|0.066|1.75300002|23|0|55275.28745078|55277.33835439|55276.3515125|12.248|1.12|0.234|2.83800006|17|0|55275.28745078|55277.33835439|55276.34024702|9.326|2.093|0.436|4.1079998|15|0|55275.28745078|55277.33835439|55276.34024702|-8|-36|34|0|1|1||||||||||||||||||||||||||806850172|0.221|-64.6|1|15.522|0.069|14.96|0.08|14.826|0.143|600089401241004139|1|0.0017314104131799|0.0014773009316331|-0.999997409896615|101000000|
+J045915.84-895210.1|74.8160395|-89.8694854|0.8724|0.9805|0.205|302.8024152|-27.1894572|270.0863763|-66.6866436|1961.154|682.513|600089401241004679|0600m894_ab41-004679|0600m894_ab41|4679|17.68|0.209|5.2|1.074|17.335||0.0|0.930000007|11.826|0.158|6.9|1.15999997|9.123||0.9|1.02600002|1.04499996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|1|21|0|21|3|20|0|20|22.803|23.681|22.711|22.358|0.0|0.0|0.0|0.0|0||0||0||0||13.4280005|2.58369994|9.344|2.682|0.0|0.0529569983|3.64499998|21.739|3.404|0.199|294.980011|42.8759995|1098.325|22.294|2.303|10.7489996|12.401|299.213|9.645|1.381|17.349|0.467|1|0.261|16.044||32|0.319|12.066||32|0.825|8.522||32|0.576|17.993|0.476|1|16.844||32|13.434||32|9.53||32|17.61|0.467|1|16.363||32|12.891||32|9.098||32|17.059|0.368|1|15.913||32|13.018|0.398|1|8.757||32|16.386|0.245|1|16.107|0.447|1|12.481|0.299|1|8.463||32|15.836|0.178|1|15.533|0.318|1|12.08|0.246|1|8.203||32|15.397|0.14|1|15.058|0.242|1|11.788|0.22|1|7.968||32|14.943|0.107|1|14.587|0.183|1|11.521|0.198|1|7.753||32|14.372|0.073|1|14.042|0.127|1|11.243|0.174|1|7.555||32|17.615|1.012|0.221|1.766|16|0|55275.28745078|55277.20605032|55276.23258879|21.521|||3.27999997|7|0|55275.28745078|55277.20605032|55276.23258879|11.976|0.898|0.201|2.6099999|16|1|55275.28745078|55277.20605032|55276.2136873|9.9|4.149|0.928|1.39400005|10|0|55275.28745078|55277.20605032|55276.2136873|32|-2|-67|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241004679|1|0.0005966273940335|0.0021983857627356|-0.99999740556453|101000000|
+J234820.40-895209.9|357.0850206|-89.869432|0.5333|0.4998|0.071|302.9718436|-27.2538014|270.3277288|-66.5537268|2065.379|693.425|89401241005018|0000m894_ab41-005018|0000m894_ab41|5018|16.623|0.086|12.6|0.847500026|17.136|0.429|2.5|0.856899977|12.411||2.0|1.02400005|8.956||1.4|0.881399989|0.898100019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|8|22|0|22|1|21|0|21|22.669|22.665|22.2|22.223|0.0|0.0|0.0|0.0|0||0||0||0||35.5559998|2.81780005|9.254|2.733|0.185|8.82559967|3.48909998|21.775|3.418|0.042|85.9449997|43.0779991|1100.051|24.161|1.077|17.2490005|12.1090002|298.174|9.487|1.172|16.247|0.132|1|0.261|16.0||32|0.319|12.284||32|0.825|8.852||32|0.576|17.004|0.151|1|16.696||32|13.621||32|9.807||32|16.508|0.132|1|16.319||32|13.109||32|9.428||32|16.116|0.119|1|16.045||32|12.662||32|11.089||32|15.766|0.107|1|15.814||32|12.967|0.523|1|8.772||32|15.472|0.098|1|15.632||32|12.415|0.38|1|8.363||32|15.162|0.087|1|15.377||32|11.977|0.3|1|8.006||32|14.821|0.074|1|15.663|0.42|1|11.662|0.261|1|7.691||32|14.536|0.066|1|15.257|0.333|1|11.428|0.242|1|7.417||32|16.606|0.342|0.073|1.838|21|0|55275.55205887|55277.33835439|55276.43921019|17.073|1.787|0.381|3.55999994|14|0|55275.55205887|55277.33835439|55276.43921019|12.759|2.561|0.559|1.96500003|12|0|55275.55205887|55277.33835439|55276.43104789|10.341|2.875|0.627|4.03900003|13|0|55275.55205887|55277.33835439|55276.43104789|-6|-28|-22|0|0|0||||||||||||||||||||||||||1169410520|0.514|-142.3|1|16.648|0.151|16.153||15.622||89401241005018|1|0.0022758909086691|-0.0001158882033596|-0.999997403441877|131000000|
+J173216.54-895209.9|263.0689492|-89.8694294|0.3908|0.4312|-0.0521|303.0699067|-27.08388|269.960594|-66.4310875|1916.066|667.394|2403089401241005033|2403m894_ab41-005033|2403m894_ab41|5033|16.558|0.079|13.7|1.102|15.745|0.112|9.7|0.862299979|13.016||0.1|1.09300005|9.552||-1.5|1.01199996|1.01400006|1|0|0.0|0.0|0.001|0.0|0000|hh00|0|01nn|ABUU|3|0000|8|24|4|24|1|23|0|23|24.747|24.535|23.819|23.754|0.0|0.0|0.0|0.0|8|h|8|h|0||0||37.7330017|2.7513001|9.602|2.36|0.0|31.7830009|3.2874999|21.85|3.19|0.0|5.78389978|46.3889999|1096.243|25.211|0.0|-17.3799992|11.9729996|298.697|9.845|0.558|15.495|0.051|1|0.261|14.896|0.078|1|0.319|12.125||32|0.825|8.715||32|0.576|16.433|0.065|0|15.901|0.105|0|13.44||32|9.725||32|15.756|0.051|1|15.215|0.078|1|12.95||32|9.291||32|15.265|0.044|1|14.732|0.066|1|12.612||32|8.948||32|14.821|0.039|1|14.324|0.058|1|13.096|0.529|1|8.506||32|14.401|0.034|1|13.963|0.051|1|12.815|0.49|1|8.126||32|14.014|0.031|1|13.626|0.045|1|12.525|0.443|1|7.83||32|13.658|0.027|1|13.3|0.04|1|12.249|0.4|1|7.498||32|13.323|0.025|1|12.986|0.035|1|11.949|0.349|17|7.157||32|16.648|0.371|0.076|2.78|23|1|55275.02271543|55276.94144233|55276.07305113|15.771|0.663|0.135|1.98699999|22|0|55275.02271543|55276.94144233|55276.07305113|13.615|5.208|1.086|3.55900002|11|0|55275.02271543|55276.94144233|55276.04967863||||3.00500011|8|0|55275.02271543|55276.94144233|55276.04967863|22|-48|-45|0|1|0|||||||||||||||||||||||||||||0|||||||2403089401241005033|1|-0.0002750041606685|-0.0022622318497886|-0.999997403336513|121000000|
+J080109.35-895209.7|120.2889662|-89.8693706|0.4991|0.5051|-0.154|302.7919277|-27.0889593|269.8336131|-66.6734186|2047.383|694.029|1201089401241004860|1201m894_ab41-004860|1201m894_ab41|4860|16.804|0.096|11.3|1.04400003|16.095|0.165|6.6|0.916299999|11.88|0.177|6.1|1.04999995|9.095||1.1|1.00100005|0.998199999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|6|22|2|22|3|21|1|21|22.447|22.133|20.812|21.705|0.0|0.0|0.0|0.0|0||0||0||0||30.0820007|2.66689992|9.349|2.721|0.115|23.0230007|3.49850011|21.83|3.378|0.0|280.429993|45.6170006|1096.323|23.448|4.951|13.0340004|11.717|298.624|9.577|0.755|16.23|0.212|1|0.261|15.226|0.119|1|0.319|11.919||32|0.825|8.299||32|0.576|17.055|0.252|1|16.244|0.16|1|13.155||32|9.375||32|16.491|0.212|1|15.545|0.119|1|12.744||32|8.875||32|15.945|0.168|1|15.022|0.096|1|12.474||32|8.571||32|15.383|0.125|1|14.549|0.077|1|12.245||32|8.413||32|14.928|0.099|1|14.15|0.064|1|12.046||32|8.359||32|14.601|0.087|1|13.853|0.057|1|11.895||32|8.123||32|14.36|0.082|1|13.621|0.054|1|11.734||32|7.907||32|14.154|0.078|1|13.407|0.051|1|11.535||32|7.708||32|16.823|0.526|0.112|4.015|21|1|55274.89041135|55276.94144233|55275.92497939|16.12|0.91|0.194|3.04900002|18|0|55274.89041135|55276.94144233|55275.92497939|11.747|0.99|0.216|5.0710001|14|1|55274.89041135|55276.94144233|55275.8923299|11.148|9.164|2.0|3.37599993|12|0|55274.89041135|55276.94144233|55275.8923299|-7|-17|32|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004860|1|-0.0011498991788852|0.001968686838956|-0.999997400998627|111000000|
+J035021.51-895209.4|57.5896497|-89.8692861|0.2366|0.2531|0.0441|302.8284666|-27.2209814|270.1769144|-66.6709624|2062.947|693.928|600089401241004256|0600m894_ab41-004256|0600m894_ab41|4256|15.716|0.046|23.6|0.922800004|15.53|0.103|10.5|0.8847|11.793|0.146|7.4|1.00699997|8.968||1.6|0.931800008|0.933399975|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|AABU|7|0000|21|22|6|22|2|21|1|21|24.038|23.588|22.797|23.58|0.0|0.0|0.0|0.0|129|D|129|D|0||0||81.9729996|3.47460008|9.358|2.586|0.142|38.723999|3.67759991|21.797|3.4|0.133|303.839996|40.9780006|1096.37|21.507|2.513|18.5219994|11.2449999|298.433|9.071|1.167|15.486|0.087|1|0.261|14.859|0.11|1|0.319|12.342||32|0.825|8.713||32|0.576|16.196|0.096|0|15.805|0.143|0|13.599||32|9.791||32|15.747|0.087|1|15.178|0.11|1|13.167||32|9.289||32|15.5|0.089|1|14.827|0.103|1|12.825||32|8.994||32|15.327|0.094|1|14.64|0.107|1|12.531||32|8.768||32|15.19|0.1|1|14.525|0.116|1|12.273||32|8.48||32|15.039|0.103|1|14.427|0.125|1|12.033||32|8.175||32|14.863|0.102|1|14.319|0.132|1|11.82||32|7.945||32|14.678|0.099|1|14.182|0.134|1|11.639||32|7.752||32|15.696|0.193|0.041|1.006|21|0|55275.28745078|55277.33835439|55276.28285086|15.527|0.478|0.102|1.70500004|21|0|55275.28745078|55277.33835439|55276.28285086|11.704|0.484|0.106|1.97899997|19|0|55275.28745078|55277.33835439|55276.26724288|10.275|4.331|0.945|3.37199998|11|0|55275.28745078|55277.33835439|55276.26724288|-1|1|13|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004256|1|0.0012227760419769|0.0019260175925583|-0.999997397634106|101000000|
+J183234.68-895209.2|278.1445177|-89.8692247|0.7021|0.7613|-0.1676|303.078345|-27.1173309|270.0463349|-66.4312457|2178.014|668.77|3004089401241005317|3004m894_ab41-005317|3004m894_ab41|5317|17.168|0.122|8.9|0.959900022|16.778||1.8|0.901499987|12.483||2.0|1.14499998|8.964||1.3|0.962599993|0.989300013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|3|24|1|24|0|23|0|23|24.466|24.715|23.853|23.612|0.0|0.0|0.0|0.0|0||0||0||0||21.5259991|2.4152|9.433|2.584|0.029|5.84040022|3.21329999|21.765|3.365|0.238|80.2490005|40.387001|1096.337|24.797|2.22|16.3400002|12.4139996|299.294|9.71|0.214|16.508||32|0.261|16.51|0.441|1|0.319|12.738|0.534|1|0.825|8.491||32|0.576|17.008||32|17.374|0.532|1|13.326||32|9.572||32|16.769||32|16.829|0.441|1|13.563|0.534|1|9.067||32|16.624||32|16.397|0.385|1|13.162|0.48|1|8.706||32|16.732||32|16.001|0.331|1|12.857|0.449|1|8.524||32|17.472||32|15.686|0.298|1|12.559|0.411|1|8.45||32|16.038||32|15.373|0.265|1|12.256|0.368|1|8.353||32|15.711||32|15.034|0.226|1|11.992|0.335|1|8.137||32|15.457||32|14.755|0.201|1|11.74|0.306|1|7.845||32|17.182|0.653|0.133|3.164|22|0|55275.28732341|55277.20605032|55276.16402342|18.032|3.988|0.814|2.76999998|12|0|55275.28732341|55277.20605032|55276.16402342|13.185|3.599|0.751|5.54699993|14|0|55275.28732341|55277.20605032|55276.14460624|9.922|2.737|0.571|2.93199992|13|0|55275.28732341|55277.20605032|55276.14460624|10|-33|27|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005317|1|0.0003233567201888|-0.002259436428841|-0.999997395190335|131000000|
+J021556.85-895208.8|33.9869024|-89.8691113|0.747|0.7338|0.2357|302.8788485|-27.2502369|270.2736415|-66.6336383|2198.795|659.755|600089401241005134|0600m894_ab41-005134|0600m894_ab41|5134|17.392|0.155|7.0|0.818899989|16.828|0.322|3.4|0.967899978|11.896|0.164|6.6|0.954400003|9.539|0.52|2.1|1.13499999|0.964999974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBC|15|0000|1|23|0|23|1|22|1|22|23.688|23.568|22.915|22.489|0.0|0.0|0.0|0.0|0||0||0||0||17.5030003|2.49349999|9.27|2.781|0.109|11.717|3.47199988|21.704|3.373|0.242|276.559998|41.737999|1100.051|22.657|0.789|24.243|11.6099997|298.089|9.199|0.386|17.053|0.35|0|0.261|16.518|0.407|0|0.319|11.991||32|0.825|8.648||32|0.576|17.692|0.351|0|17.268|0.43|0|13.273||32|9.665||32|17.314|0.35|0|16.837|0.407|0|12.816||32|9.224||32|17.272|0.435|0|16.637|0.436|0|12.457||32|8.88||32|16.588||32|16.438|0.451|1|12.19||32|8.586||32|16.569||32|16.237|0.452|1|11.987||32|8.325||32|16.473||32|16.062|0.454|1|11.858||32|8.089||32|16.215||32|15.832|0.427|1|11.774||32|7.874||32|15.847||32|15.577|0.389|1|11.681||32|7.675||32|17.369|0.674|0.141|3.731|20|0|55275.55205887|55277.33835439|55276.39777605|16.851|1.686|0.352|2.92700005|17|0|55275.55205887|55277.33835439|55276.39777605|11.8|0.662|0.141|7.12599993|20|0|55275.55205887|55277.33835439|55276.3881014|9.47|2.713|0.579|2.83899999|13|0|55275.55205887|55277.33835439|55276.3881014|33|-9|-14|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005134|1|0.0018941753952993|0.0012770075339482|-0.999997390672261|101000000|
+J124636.12-895208.6|191.6505159|-89.8690654|0.1865|0.1818|0.0393|302.9288157|-26.9972509|269.6779614|-66.5339371|1980.394|688.085|1802089401241004096|1802m894_ab41-004096|1802m894_ab41|4096|15.152|0.035|30.6|0.854399979|15.476|0.093|11.7|0.904999971|12.946||0.2|0.958299994|9.534||-0.7|1.00199997|0.926999986|1|0|0.0|0.0|0.0|0.0|0000|h000|0|00nn|AAUU|3|0000|23|24|8|24|0|24|0|24|24.73|24.444|24.914|24.714|0.0|0.0|0.0|0.0|8|h|0||0||0||137.809998|4.50059986|10.154|2.582|0.063|40.7019997|3.47440004|21.857|3.139|0.109|11.6409998|46.7109985|1095.403|25.519|3.651|-8.80790043|12.1759996|298.37|9.928|0.399|15.139|0.139|1|0.261|15.311|0.229|1|0.319|12.42||32|0.825|8.708||32|0.576|15.804|0.145|1|16.178|0.273|1|13.628||32|9.445||32|15.4|0.139|1|15.63|0.229|1|13.245||32|9.284||32|15.158|0.145|1|15.277|0.215|1|12.936||32|9.663||32|14.894|0.141|1|14.949|0.198|1|12.656||32|8.373||32|14.667|0.137|1|14.672|0.184|1|12.396||32|8.112||32|14.544|0.145|1|14.502|0.186|1|12.197||32|7.877||32|14.497|0.161|1|14.418|0.2|1|12.073||32|7.661||32|14.467|0.18|1|14.365|0.22|1|11.988||32|7.462||32|15.159|0.118|0.024|0.405|23|0|55274.75810734|55276.80913826|55275.83323679|15.566|0.529|0.108|3.0769999|23|1|55274.75810734|55276.80913826|55275.83323679|13.838|5.042|1.029|4.96400023|12|0|55274.75810734|55276.80913826|55275.83323679||||2.84800005|12|0|55274.75810734|55276.80913826|55275.83323679|14|24|-24|0|0|0||||||||||||||||||||||||||857797994|0.292|-47.9|1|15.729|0.086|15.44|0.14|15.14||1802089401241004096|1|-0.0022381571775134|-0.0004614845211108|-0.999997388838834|121000000|
+J190627.39-895208.5|286.6141488|-89.8690466|1.1257|1.2104|-0.3076|303.0787519|-27.1366554|270.0936572|-66.4351945|2130.055|684.916|3004089401241005661|3004m894_ab41-005661|3004m894_ab41|5661|17.741|0.194|5.6|0.985700011|17.438||-0.3|0.905499995|12.487||1.7|1.11399996|9.06||1.4|1.12899995|1.03100002|1|0|0.0|0.0|0.0|0.004|0000|0000|0|nnnn|BUUU|1|0000|1|25|0|24|0|24|0|24|24.957|24.483|24.202|24.128|0.0|0.0|0.0|0.0|0||0||0||0||12.6969995|2.27130008|9.313|2.637|0.1|-0.860549986|3.34030008|21.756|3.402|0.0|74.7180023|42.8740005|1095.885|24.617|1.685|15.3070002|11.1809998|298.847|9.51|0.893|17.092||32|0.261|16.293||32|0.319|12.289||32|0.825|8.688||32|0.576|17.573||32|17.009||32|13.459||32|9.702||32|17.353||32|16.612||32|13.114||32|9.264||32|17.349||32|16.312||32|12.835||32|9.035||32|17.308||32|16.101||32|12.606||32|8.866||32|17.104||32|15.935||32|12.307||32|9.418||32|16.924||32|15.757||32|12.09||32|8.526||32|16.757||32|15.62||32|11.955||32|8.323||32|16.608||32|15.585||32|12.116||32|8.133||32|18.03|1.292|0.258|4.051|19|3|55275.28732341|55277.20605032|55276.19247154|19.837|||2.5|9|0|55275.28732341|55277.20605032|55276.17229507|12.883|1.447|0.295|3.10599995|15|0|55275.28732341|55277.20605032|55276.17504875|9.876|3.713|0.758|3.88199997|12|0|55275.28732341|55277.20605032|55276.17504875|55|-20|-2|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005661|1|0.0006535004297408|-0.0021901480119967|-0.999997388091026|131000000|
+J081635.15-895208.5|124.1464846|-89.8690426|0.1646|0.161|-0.0349|302.7948686|-27.0805471|269.8143941|-66.6689806|2024.316|694.069|1201089401241004292|1201m894_ab41-004292|1201m894_ab41|4292|14.894|0.034|32.1|1.04499996|14.866|0.064|17.1|0.908500016|12.501|0.293|3.7|1.25899994|9.52||-0.6|0.972899973|1.04200006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|22|22|14|22|3|21|1|21|22.692|22.686|21.9|21.651|0.0|0.0|0.0|0.0|0||0||0||0||174.770004|5.44199991|9.387|2.778|0.089|71.3919983|4.18149996|21.85|3.326|0.124|158.410004|42.6920013|1095.592|23.629|0.159|-6.99280024|12.3319998|298.394|9.705|1.278|14.789|0.036|1|0.261|14.858|0.092|1|0.319|12.588||32|0.825|8.631||32|0.576|15.449|0.037|1|15.595|0.097|1|14.738||32|9.643||32|15.05|0.036|1|15.177|0.092|1|13.413||32|9.207||32|14.841|0.038|1|15.006|0.102|1|12.919||32|8.863||32|14.657|0.039|1|14.866|0.111|1|12.63||32|8.569||32|14.443|0.039|1|14.662|0.111|1|12.424||32|8.309||32|14.182|0.036|1|14.379|0.101|1|12.274||32|8.073||32|13.901|0.033|1|14.071|0.088|1|12.127||32|7.857||32|13.655|0.03|1|13.791|0.079|1|11.93||32|7.659||32|14.889|0.118|0.025|0.489|21|0|55274.89041135|55276.94144233|55275.92497939|14.846|0.324|0.069|1.55799997|21|1|55274.89041135|55276.94144233|55275.92497939|12.699|2.179|0.476|4.76999998|12|5|55274.89041135|55276.94144233|55275.8923299||||4.33699989|8|1|55274.89041135|55276.94144233|55275.8923299|7|2|94|0|0|3||||||||||||||||||||||||||863310636|0.02|73.1|1|15.398|0.064|15.193|0.097|14.969|0.175|1201089401241004292|1|-0.0012829515695533|0.0018916039695168|-0.999997387931435|111000000|
+J160951.69-895208.0|242.4654106|-89.8688904|0.2909|0.3114|0.0549|303.0440276|-27.0431475|269.8483385|-66.4443763|2035.434|695.055|2403089401241005028|2403m894_ab41-005028|2403m894_ab41|5028|16.023|0.056|19.3|1.08299994|15.64|0.105|10.3|1.00699997|12.33||1.9|1.046|9.505||-2.7|0.927999973|1.01400006|1|0|0.0|0.0|0.0|0.0|0000|h000|0|30nn|AAUU|3|0000|18|23|4|23|3|22|0|22|24.665|24.778|23.839|23.601|0.0|0.0|0.0|0.0|8|h|0||0||0||61.7840004|3.19950008|9.775|2.321|0.0|34.9990005|3.3915|21.856|2.995|0.001|90.8960037|47.262001|1095.924|25.433|2.675|-33.737999|12.4989996|298.584|9.581|0.24|15.266|0.084|0|0.261|14.878||32|0.319|12.314|0.38|0|0.825|8.925||32|0.576|16.194|0.11|0|15.629||32|13.168||32|9.935||32|15.527|0.084|0|15.197||32|13.139|0.38|0|9.501||32|15.003|0.068|1|14.862||32|12.599|0.301|0|9.158||32|14.451|0.051|1|15.092|0.455|1|12.175|0.252|1|8.86||32|13.779|0.033|1|14.192|0.239|1|11.763|0.208|1|8.599||32|12.947|0.019|1|13.173|0.11|1|11.356|0.169|1|8.363||32|12.051|0.011|1|12.227|0.054|1|10.974|0.138|1|8.146||32|11.298|0.008|1|11.485|0.032|1|10.634|0.116|1|7.946||32|16.016|0.386|0.081|2.79|22|3|55275.02271543|55276.94144233|55275.98639725|15.582|0.451|0.094|1.83599997|21|0|55275.02271543|55276.94144233|55275.98639725|12.804|2.993|0.638|3.13700008|11|1|55275.02271543|55276.94144233|55275.95802356||||0.953000009|4|0|55275.02271543|55276.94144233|55275.95802356|0|-28|7|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005028|1|-0.0010578407585712|-0.0020291014369983|-0.999997381856717|121000000|
+J235342.57-895207.7|358.4274013|-89.8688225|0.4253|0.3873|0.0725|302.9686928|-27.2551896|270.3296012|-66.5567629|2057.42|695.334|89401241004843|0000m894_ab41-004843|0000m894_ab41|4843|16.358|0.07|15.6|0.904699981|16.599|0.268|4.1|0.941799998|12.344|0.256|4.2|1.05799997|9.517||0.1|0.903900027|0.947000027|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|13|22|2|21|0|20|0|21|22.693|22.561|21.963|21.885|0.0|0.0|0.0|0.0|0||0||0||0||45.3889999|2.91429996|9.273|2.745|0.396|14.4639997|3.56529999|21.759|3.46|0.048|182.970001|43.1539993|1099.276|23.699|0.515|0.734380007|11.9940004|298.399|9.509|1.039|15.824|0.09|1|0.261|16.021|0.245|1|0.319|12.167||32|0.825|8.726||32|0.576|16.647|0.106|1|16.903|0.295|1|13.397||32|9.742||32|16.085|0.09|1|16.34|0.245|1|12.992||32|9.302||32|15.624|0.075|1|15.864|0.204|1|12.684||32|8.958||32|15.16|0.061|1|15.358|0.159|1|12.445||32|8.662||32|14.752|0.05|1|14.887|0.125|1|12.254||32|8.402||32|14.449|0.045|1|14.52|0.105|1|12.111||32|8.165||32|14.25|0.043|1|14.271|0.097|1|11.996||32|7.949||32|14.127|0.044|1|14.108|0.096|1|11.844||32|7.75||32|16.359|0.276|0.059|1.301|21|0|55275.55205887|55277.33835439|55276.43921019|16.556|1.582|0.345|4.26200008|14|1|55275.55205887|55277.33835439|55276.41214731|12.268|1.201|0.269|3.20799994|14|0|55275.55205887|55277.33835439|55276.40222375|10.741|7.177|1.566|3.17400002|10|0|55275.55205887|55277.33835439|55276.43104789|22|32|6|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004843|1|0.0022886142303604|-0.0000628314298698|-0.999997379145124|131000000|
+J205418.69-895207.6|313.5779135|-89.8688036|0.1284|0.1241|-0.032|303.0587217|-27.1951171|270.2264935|-66.4655013|1970.047|686.553|3004089401241004135|3004m894_ab41-004135|3004m894_ab41|4135|14.444|0.03|36.4|3.12599993|14.13|0.039|27.7|1.34800005|10.908|0.073|14.8|1.31299996|9.337|0.415|2.6|0.96329999|1.69700003|1|0|0.0|0.0|0.0|0.0|0000|0000|1|000n|AAAC|15|0000|23|23|23|23|12|22|0|22|23.683|23.711|22.969|22.985|0.0|0.0|0.0|0.0|0||0||0||0||264.399994|7.26170015|9.282|2.834|0.0|140.570007|5.07980013|21.759|3.46|0.0|686.98999|46.2639999|1097.214|24.652|4.256|29.1739998|11.1490002|298.864|9.426|1.698|14.15|0.02|0|0.261|13.83|0.043|0|0.319|10.944|0.284|0|0.825|8.571||32|0.576|14.889|0.023|0|14.696|0.051|0|12.345|0.342|0|9.551||32|14.411|0.02|0|14.149|0.043|0|11.769|0.284|0|9.147||32|14.206|0.021|0|13.88|0.044|0|11.509|0.29|0|8.737||32|14.089|0.023|0|13.715|0.046|0|11.429|0.333|0|8.321||32|13.946|0.025|1|13.546|0.048|1|11.467|0.416|1|7.995||32|13.654|0.022|1|13.263|0.043|1|10.835||32|8.492|0.526|1|13.102|0.016|1|12.8|0.033|1|10.837||32|8.271|0.517|1|12.386|0.011|1|12.241|0.023|1|10.834||32|8.045|0.499|1|14.453|0.07|0.015|0.329|22|0|55275.28732341|55277.33835439|55276.29994736|14.135|0.18|0.038|0.722000003|22|0|55275.28732341|55277.33835439|55276.29994736|10.927|0.238|0.051|1.676|21|0|55275.28732341|55277.33835439|55276.28582594|9.349|1.674|0.357|3.4749999|15|0|55275.28732341|55277.33835439|55276.28582594|13|-14|-17|0|0|0||||||||||||||||||||||||||996461849|2.281|131.8|1|15.306|0.059|14.925|0.086|14.98|0.136|3004089401241004135|1|0.0015784560542825|-0.0016588220961975|-0.999997378389432|131000000|
+J104325.93-895207.6|160.8580636|-89.8687811|1.0995|0.9931|-0.1698|302.8538599|-27.0168567|269.6878208|-66.6034269|2162.22|676.02|1802089401241005156|1802m894_ab41-005156|1802m894_ab41|5156|17.422|0.165|6.6|0.912199974|17.109||0.7|0.913600028|12.982||-0.4|0.966899991|9.477||-0.3|1.05400002|0.959100008|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|22|0|22|0|22|0|22|22.769|22.613|22.904|22.898|0.0|0.0|0.0|0.0|0||0||0||0||17.0300007|2.5941|9.831|2.852|0.323|2.44490004|3.30119991|21.836|3.352|0.186|-18.1329994|50.8440018|1095.006|25.543|3.17|-3.33960009|12.8269997|298.479|9.84|0.946|16.355||32|0.261|16.252||32|0.319|12.516||32|0.825|9.621||32|0.576|16.879||32|16.864||32|13.751||32|9.968||32|16.616||32|16.571||32|13.341||32|10.197||32|16.536||32|16.395||32|12.979||32|10.364||32|16.394||32|16.162||32|12.562||32|8.889||32|16.193||32|15.961||32|12.166||32|8.627||32|16.009||32|15.777||32|11.891||32|8.39||32|15.847||32|15.615||32|11.719||32|8.173||32|15.695||32|15.462||32|11.61||32|7.973||32|17.391|0.663|0.141|1.926|20|0|55274.75810734|55276.94144233|55275.84978638|18.426|8.171|1.742|0.94599998|10|0|55274.75810734|55276.94144233|55275.84978638|13.857|5.371|1.145|2.86400008|12|0|55274.75810734|55276.94144233|55275.84978638||||2.52699995|9|0|55274.75810734|55276.94144233|55275.84978638|-9|-9|28|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005156|1|-0.0021635722121705|0.0007509779701561|-0.999997377490247|111000000|
+J075411.11-895207.5|118.5463181|-89.8687581|0.1787|0.1758|-0.0413|302.789989|-27.0926|269.8415977|-66.6759163|2057.83|695.493|1201089401241004362|1201m894_ab41-004362|1201m894_ab41|4362|15.213|0.037|29.6|0.948400021|14.811|0.062|17.6|0.909699976|11.908|0.179|6.1|1.14400005|8.722|0.24|4.5|1.10099995|1.01999998|1|0|0.0|0.0|0.0|0.001|0000|hh00|0|01nn|AABB|15|0000|22|22|17|22|3|21|1|21|21.945|21.873|20.635|21.646|0.0|0.0|0.0|0.0|8|h|8|h|0||0||130.270004|4.40679979|9.399|2.808|0.031|75.1259995|4.26900005|21.818|3.378|0.141|273.339996|44.9399986|1096.228|23.464|2.411|51.4510002|11.3610001|297.755|9.059|0.861|15.03|0.086|1|0.261|14.454|0.062|1|0.319|12.025||32|0.825|8.4|0.318|1|0.576|15.733|0.094|1|15.353|0.077|1|13.337||32|9.621|0.391|1|15.291|0.086|1|14.773|0.062|1|12.85||32|8.976|0.318|1|15.012|0.087|1|14.399|0.057|1|13.143|0.531|1|8.67|0.325|1|14.722|0.083|1|14.084|0.053|1|12.609|0.401|1|8.481|0.354|1|14.418|0.075|1|13.795|0.049|1|12.252|0.347|1|8.258|0.361|1|14.127|0.068|1|13.535|0.045|1|12.031|0.333|1|8.008|0.352|1|13.854|0.062|1|13.304|0.043|1|11.829|0.322|1|7.763|0.338|1|13.603|0.056|1|13.082|0.04|1|11.578|0.293|1|7.49|0.313|1|15.221|0.149|0.032|0.607|21|0|55274.89041135|55276.94144233|55275.92497939|14.826|0.304|0.065|1.22099996|21|0|55274.89041135|55276.94144233|55275.92497939|11.881|1.12|0.244|6.25299978|16|1|55274.89041135|55276.94144233|55275.8923299|8.931|1.247|0.272|4.17000008|16|0|55274.89041135|55276.94144233|55275.8923299|15|-29|-45|0|1|1|||||||||||||||||||||||||||||0|||||||1201089401241004362|1|-0.0010946077260654|0.0020121358962517|-0.999997376568089|111000000|
+J134241.74-895206.9|205.673934|-89.8686074|0.1426|0.1417|0.0346|302.9646231|-27.0000326|269.7029766|-66.5035016|1900.456|662.772|1802089401241004001|1802m894_ab41-004001|1802m894_ab41|4001|14.596|0.031|35.3|1.03799999|14.652|0.052|20.9|0.981899977|13.15||-1.3|1.05400002|9.331||0.4|0.977299988|1.00999999|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|31nn|AAUU|3|0000|24|24|22|24|0|24|0|24|24.505|24.661|24.855|24.688|0.0|0.0|0.0|0.0|8|h|8|h|0||0||230.029999|6.52180004|10.5|2.351|0.0|86.9380035|4.16069984|21.893|2.98|0.017|-56.4399986|43.5489998|1096.512|25.557|0.574|5.34579992|12.0080004|298.514|10.109|0.362|14.816|0.092|0|0.261|15.058|0.244|0|0.319|12.318||32|0.825|8.765||32|0.576|15.382|0.087|0|15.71|0.238|0|13.504||32|9.625||32|15.077|0.092|0|15.377|0.244|0|13.143||32|9.341||32|15.016|0.113|0|15.396|0.324|0|12.852||32|9.529||32|15.061|0.146|1|15.68|0.523|1|12.618||32|8.813||32|15.161|0.192|1|15.119||32|12.419||32|8.552||32|15.221|0.24|1|15.341||32|12.238||32|8.316||32|15.18|0.27|1|15.175||32|12.073||32|8.1||32|15.077|0.282|1|15.023||32|11.921||32|7.9||32|14.592|0.133|0.027|0.518|23|0|55274.89041135|55276.94144233|55275.92420909|14.663|0.271|0.055|1.16700006|23|0|55274.89041135|55276.94144233|55275.92420909||||2.398|7|0|55274.89041135|55276.94144233|55275.92420909|10.106|3.822|0.78|3.13000011|11|0|55274.89041135|55276.94144233|55275.92420909|2|-56|-42|0|1|0||||||||||||||||||||||||||858000697|0.069|-139.5|1|15.099|0.044|14.842|0.098|14.547|0.119|1802089401241004001|1|-0.0020668300438538|-0.0009935403137132|-0.99999737054215|121000000|
+J135728.06-895206.7|209.3669554|-89.8685287|0.2976|0.2977|0.0766|302.9738428|-27.0020977|269.7127048|-66.4959717|1880.646|652.804|1802089401241004468|1802m894_ab41-004468|1802m894_ab41|4468|15.91|0.053|20.6|0.922699988|16.147|0.173|6.3|1.16100001|13.018||0.2|0.830200016|9.457||-1.4|0.982500017|0.970799983|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|3nnn|ABUU|3|0000|18|23|2|23|0|23|0|23|24.44|24.456|24.606|24.333|0.0|0.0|0.0|0.0|8|h|8|h|0||0||68.5800018|3.33139992|10.308|2.332|0.0|21.9349995|3.4914|22.168|3.076|0.0|8.21549988|45.0760002|1095.762|25.213|0.285|-18.7000008|13.0710001|298.425|10.181|0.385|16.722|0.541|0|0.261|16.301||32|0.319|12.487||32|0.825|8.503||32|0.576|17.044|0.409|0|16.785||32|13.678||32|9.744||32|16.983|0.541|0|16.62||32|13.312||32|9.079||32|16.288||32|16.339||32|13.029||32|8.574||32|16.411||32|16.106||32|12.797||32|8.853|0.478|1|16.271||32|15.903||32|12.594||32|8.604|0.478|1|17.592||32|15.722||32|12.413||32|7.769||32|15.556||32|15.555||32|12.246||32|7.631||32|15.116||32|15.405||32|12.096||32|7.496||32|15.888|0.333|0.069|1.99|22|2|55274.89041135|55276.94144233|55275.91737459|16.085|1.317|0.275|2.41000009|17|1|55274.89041135|55276.94144233|55275.91737459|14.272|6.874|1.433|2.72799993|12|0|55274.89041135|55276.94144233|55275.91737459||||3.61899996|9|0|55274.89041135|55276.94144233|55275.91737459|-41|11|48|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004468|1|-0.0019997415788283|-0.0011252774592596|-0.999997367388664|121000000|
+J220514.86-895206.6|331.3119563|-89.8685101|0.0725|0.0773|0.0166|303.0299919|-27.2265301|270.2892471|-66.4973213|2213.255|654.024|89401241004102|0000m894_ab41-004102|0000m894_ab41|4102|11.298|0.023|47.3|1.17799997|11.316|0.02|53.3|1.10800004|11.097|0.084|13.0|1.01499999|9.135|0.372|2.9|1.06099999|1.08899999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|970n|AAAC|15|0000|23|23|23|23|8|22|1|22|23.73|23.875|23.039|22.835|0.0|0.0|0.0|0.0|0||0||0||0||4795.2998|101.279999|9.192|2.852|0.223|1877.59998|35.2369995|21.682|3.389|0.115|577.070007|44.4269981|1098.342|24.117|3.478|35.1399994|12.0430002|298.14|9.65|0.765|11.282|0.006|0|0.261|11.309|0.008|0|0.319|11.119|0.165|0|0.825|8.533||32|0.576|11.916|0.006|0|12.068|0.009|0|12.576|0.214|0|9.585||32|11.543|0.006|0|11.628|0.008|0|11.944|0.165|0|9.109||32|11.406|0.006|0|11.46|0.009|0|11.585|0.154|0|8.752||32|11.349|0.006|0|11.395|0.01|0|11.371|0.157|0|8.37||32|11.324|0.006|1|11.368|0.011|1|11.254|0.169|1|7.977||32|11.309|0.006|1|11.356|0.012|1|11.177|0.186|1|8.364|0.509|1|11.3|0.006|1|11.351|0.013|1|11.116|0.204|1|8.003|0.445|1|11.291|0.006|1|11.347|0.015|1|11.05|0.221|1|7.741|0.419|1|11.298|0.06|0.013|0.205|22|0|55275.55205887|55277.33835439|55276.42940014|11.315|0.068|0.014|0.216000006|22|0|55275.55205887|55277.33835439|55276.42940014|11.088|0.34|0.073|1.70799994|21|0|55275.55205887|55277.33835439|55276.42116294|9.271|1.619|0.345|2.86599994|14|0|55275.55205887|55277.33835439|55276.42116294|86|-20|8|8|0|0||||||||||||||||||||||||||1169437713|0.16|54.0|1|11.972|0.023|11.543|0.023|11.469|0.025|89401241004102|1|0.0020132187178209|-0.0011016590815581|-0.999997366645364|131000000|
+J092229.10-895206.6|140.6212629|-89.8685051|0.5406|0.5663|-0.1793|302.8151951|-27.0475833|269.7436165|-66.6439263|1927.794|674.628|1201089401241005002|1201m894_ab41-005002|1201m894_ab41|5002|16.647|0.093|11.7|1.00399995|16.637|0.281|3.9|0.930999994|12.356||1.8|1.11399996|8.856||1.7|1.01400006|1.01300001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|6|22|0|22|1|22|0|22|22.853|23.478|22.926|22.804|0.0|0.0|0.0|0.0|0||0||0||0||34.7579994|2.96650004|9.338|2.799|0.046|13.9639997|3.61330009|21.829|3.267|0.071|86.8470001|47.098999|1095.85|24.834|1.967|20.5499992|12.4540005|298.054|9.632|0.987|16.083|0.215|0|0.261|15.847|0.207|0|0.319|11.718||32|0.825|8.396||32|0.576|16.792|0.232|0|16.66|0.233|0|12.966||32|9.48||32|16.344|0.215|0|16.166|0.207|0|12.543||32|8.972||32|16.239|0.253|1|16.015|0.233|1|12.237||32|8.492||32|16.22|0.308|1|15.997|0.283|1|12.05||32|8.091||32|16.021|0.309|1|15.853|0.299|1|11.944||32|7.77||32|15.502|0.226|1|15.387|0.23|1|11.83||32|7.499||32|14.957|0.159|1|14.833|0.16|1|11.665||32|7.984|0.53|17|14.605|0.132|1|14.445|0.129|1|11.515||32|7.749|0.512|17|16.643|0.314|0.067|1.391|21|0|55274.89041135|55276.94144233|55275.8949045|16.662|1.529|0.326|2.31699991|14|0|55274.89041135|55276.94144233|55275.8949045|13.111|2.512|0.536|5.46000004|12|0|55274.89041135|55276.94144233|55275.8949045|9.705|2.729|0.582|2.12199998|13|0|55274.89041135|55276.94144233|55275.8949045|61|-63|-2|2|1|0|||||||||||||||||||||||||||||0|||||||1201089401241005002|1|-0.001773977487853|0.0014560593484058|-0.999997366444055|111000000|
+J180113.61-895206.3|270.3067243|-89.8684429|0.1496|0.1629|-0.0346|303.0761645|-27.0994903|270.0017612|-66.4291537|1876.095|650.5|2403089401241004514|2403m894_ab41-004514|2403m894_ab41|4514|14.761|0.033|32.8|0.822000027|14.881|0.062|17.6|0.940199971|12.83||0.6|0.951799989|9.483||-0.2|1.03799999|0.924099982|2|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|24|24|18|24|0|23|0|23|23.837|24.021|22.971|22.878|0.0|0.0|0.0|0.0|0||0||0||0||197.440002|6.01859999|9.531|2.539|0.251|70.4229965|4.00549984|21.743|3.299|0.128|26.5499992|45.1790009|1095.766|25.46|0.584|-2.91280007|12.7629995|299.074|9.635|0.358|14.67|0.048|1|0.261|14.604|0.103|1|0.319|12.063|0.281|1|0.825|7.916|0.201|1|0.576|15.354|0.051|1|15.483|0.123|1|13.804|0.464|0|9.337|0.294|1|14.931|0.048|1|14.923|0.103|1|12.888|0.281|1|8.492|0.201|1|14.661|0.048|1|14.524|0.092|1|12.189|0.19|1|7.995|0.173|1|14.381|0.046|1|14.154|0.082|1|11.636|0.142|1|7.705|0.172|1|14.089|0.043|1|13.828|0.073|1|11.226|0.117|1|7.54|0.186|1|13.839|0.04|1|13.578|0.068|1|10.938|0.106|1|7.398|0.2|1|13.659|0.039|1|13.403|0.067|1|10.747|0.103|1|7.223|0.207|17|13.516|0.04|1|13.271|0.068|1|10.614|0.105|1|7.041|0.209|17|14.764|0.096|0.02|0.366|23|0|55275.28732341|55277.20605032|55276.16402342|14.859|0.289|0.059|1.56700003|23|0|55275.28732341|55277.20605032|55276.16402342|14.133|8.231|1.716|3.85800004|11|0|55275.28732341|55277.20605032|55276.14460624|10.219|4.809|1.003|1.47399998|11|0|55275.28732341|55277.20605032|55276.14460624|-49|-47|12|2|1|0||||||||||||||||||||||||||970478725|0.178|-173.2|1|15.365|0.057|15.131|0.1|14.855|0.136|2403089401241004514|1|0.0000122917772548|-0.0022960689766502|-0.999997363954609|131000000|
+J000313.79-895206.2|0.8074849|-89.8684007|0.3157|0.2949|0.0582|302.9628261|-27.2568516|270.3308255|-66.5622149|2043.139|696.533|89401241004663|0000m894_ab41-004663|0000m894_ab41|4663|15.888|0.054|19.9|0.908800006|15.81|0.138|7.9|0.947099984|13.041|0.492|2.2|1.13800001|8.83||1.7|1.02499998|0.999100029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABCU|7|0000|17|20|1|20|1|19|1|19|22.28|22.012|21.235|21.588|0.0|0.0|0.0|0.0|0||0||0||0||69.9319992|3.50769997|9.289|2.731|0.063|29.9249992|3.81019998|21.784|3.547|0.203|96.262001|43.5900002|1098.63|23.467|3.226|21.1480007|12.7049999|298.509|9.525|1.83|15.871|0.096|0|0.261|15.907|0.363|0|0.319|12.299||32|0.825|8.669||32|0.576|16.479|0.096|0|16.541|0.348|0|13.488||32|9.627||32|16.132|0.096|0|16.226|0.363|0|13.124||32|9.245||32|15.95|0.105|1|16.19|0.455|1|12.841||32|8.993||32|15.688|0.102|1|16.017|0.482|1|12.608||32|8.773||32|15.268|0.084|1|15.608|0.397|1|12.408||32|8.512||32|14.795|0.064|1|15.128|0.301|1|12.228||32|8.276||32|14.412|0.053|1|14.736|0.244|1|12.064||32|8.059||32|14.142|0.047|1|14.454|0.217|1|11.911||32|7.86||32|15.87|0.205|0.046|0.912|19|0|55275.55205887|55277.33835439|55276.42869092|15.853|0.564|0.126|2.40400004|19|0|55275.55205887|55277.33835439|55276.42869092|13.382|3.3|0.757|3.22300005|11|0|55275.55205887|55277.33835439|55276.41911578|10.168|3.446|0.791|3.16199994|9|1|55275.55205887|55277.33835439|55276.41911578|-32|-26|12|1|0|0||||||||||||||||||||||||||1229061733|0.384|-30.6|1|16.567|0.154|16.119||14.901||89401241004663|1|0.0022966107125464|0.0000323688995133|-0.999997362262266|101000000|
+J223016.00-895205.9|337.5666776|-89.8683307|0.1947|0.1839|-0.0195|303.0174743|-27.2356003|270.3053432|-66.5101653|2179.548|670.665|89401241004449|0000m894_ab41-004449|0000m894_ab41|4449|15.202|0.037|29.0|0.970200002|15.3|0.082|13.2|1.02400005|12.962||0.5|0.933700025|9.059||1.4|1.10300004|1.005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|10nn|AAUU|3|0000|24|24|9|24|0|23|0|23|23.692|23.619|22.945|22.827|0.0|0.0|0.0|0.0|0||0||0||0||131.639999|4.54419994|9.234|2.832|0.064|47.868|3.62339997|21.717|3.357|0.145|21.7509995|40.9070015|1098.501|24.042|2.404|15.2869997|11.2010002|298.328|9.462|0.43|15.155|0.059|0|0.261|15.092|0.152|0|0.319|12.624||32|0.825|8.503||32|0.576|15.787|0.06|0|15.901|0.173|0|13.806||32|9.594||32|15.416|0.059|0|15.411|0.152|0|13.449||32|9.079||32|15.21|0.064|0|15.131|0.153|0|13.163||32|8.631||32|14.935|0.061|1|14.83|0.143|1|12.931||32|8.248||32|14.476|0.048|1|14.373|0.114|1|12.727||32|8.663|0.499|1|13.872|0.033|1|13.805|0.08|1|12.396||32|8.471|0.511|1|13.316|0.023|1|13.302|0.059|1|12.046||32|8.338|0.542|1|12.923|0.019|1|12.948|0.049|1|11.72||32|8.149|0.539|1|15.201|0.159|0.033|0.632|23|0|55275.55205887|55277.33835439|55276.41490023|15.217|0.418|0.085|1.81200004|22|1|55275.55205887|55277.33835439|55276.41490023|13.825|3.938|0.821|2.60899997|9|0|55275.55205887|55277.33835439|55276.40639074|10.236|3.89|0.811|3.79399991|15|0|55275.55205887|55277.33835439|55276.40639074|-15|-9|-47|0|0|1||||||||||||||||||||||||||1201012196|0.275|27.5|1|16.099|0.118|15.16|0.104|15.326|0.222|89401241004449|1|0.0021241540973975|-0.0008769587376653|-0.999997359452885|131000000|
+J130116.99-895205.5|195.3208108|-89.8681984|1.1385|1.0826|0.3187|302.9382685|-26.9964762|269.6808803|-66.5255591|2292.205|595.827|2403089401241005661|2403m894_ab41-005661|2403m894_ab41|5661|17.602|0.177|6.1|0.826600015|17.319||0.4|1.16900003|13.053||-2.2|1.00199997|9.49||0.1|1.05499995|1.00999999|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BUUU|1|0000|2|24|2|24|0|24|0|24|24.645|24.54|24.901|24.714|0.0|0.0|0.0|0.0|8|h|0||0||0||14.427|2.35780001|10.147|2.441|0.0|1.24160004|3.10529995|21.784|3.066|0.014|-104.529999|47.6349983|1095.264|25.39|0.555|0.752699971|12.2980003|297.773|9.686|0.978|16.278|0.093|1|0.261|16.499||32|0.319|14.167||32|0.825|8.329||32|0.576|17.411|0.146|1|16.873||32|14.011||32|9.543||32|16.539|0.093|1|16.818||32|14.992||32|8.905||32|15.788|0.061|1|15.73||32|13.076||32|8.509||32|15.086|0.041|1|15.508|0.35|1|12.612||32|8.26||32|14.498|0.029|1|14.71|0.203|1|12.248||32|8.038||32|14.075|0.023|1|14.23|0.154|1|12.727|0.536|1|7.799||32|13.804|0.021|1|13.964|0.14|1|12.464|0.488|1|7.568||32|13.615|0.021|1|13.806|0.14|1|12.165|0.428|1|7.357||32|17.696|1.111|0.227|2.678|19|0|55274.75810734|55276.80913826|55275.83323679||||3.51399994|9|0|55274.75810734|55276.80913826|55275.83323679||||1.74800003|3|0|55274.75810734|55276.80913826|55275.83323679|10.461|7.583|1.548|4.69000006|12|0|55274.75810734|55276.80913826|55275.83323679|-38||81|0||0|||||||||||||||||||||||||||||0|||||||2403089401241005661|1|-0.0022186185831557|-0.0006078115995981|-0.999997354144821|121000000|
+J125301.77-895204.8|193.2574023|-89.8680077|0.1523|0.1488|0.0312|302.9329449|-26.9961673|269.6774144|-66.5301078|1970.374|688.756|1802089401241004020|1802m894_ab41-004020|1802m894_ab41|4020|14.821|0.031|34.6|1.09599996|14.794|0.056|19.3|0.895699978|13.11||-1.5|0.855700016|9.48||-0.1|1.02400005|0.965300024|1|0|0.0|0.0|0.0|0.0|0000|h000|0|01nn|AAUU|3|0000|24|24|22|24|0|24|0|24|24.719|24.669|24.91|24.787|0.0|0.0|0.0|0.0|8|h|0||0||0||186.869995|5.4066|10.174|2.52|0.07|76.2799988|3.95499992|21.825|3.108|0.033|-66.8069992|45.1769981|1095.461|25.397|1.213|-1.375|12.7939997|298.489|10.094|0.385|14.808|0.072|1|0.261|14.791|0.116|1|0.319|12.511||32|0.825|10.023||32|0.576|15.48|0.075|1|15.598|0.131|1|13.704||32|9.463||32|15.069|0.072|1|15.11|0.116|1|13.336||32|10.599||32|14.823|0.074|1|14.85|0.119|1|13.054||32|9.426||32|14.599|0.075|1|14.662|0.124|1|12.824||32|8.315||32|14.421|0.077|1|14.522|0.132|1|12.616||32|8.105||32|14.315|0.083|1|14.424|0.142|1|13.048||32|7.892||32|14.253|0.091|1|14.319|0.151|1|12.13||32|7.676||32|14.187|0.099|1|14.156|0.149|1|11.862||32|7.477||32|14.796|0.072|0.015|0.424|23|0|55274.75810734|55276.80913826|55275.83323679|14.793|0.297|0.061|1.51699996|23|1|55274.75810734|55276.80913826|55275.83323679||||1.11899996|8|0|55274.75810734|55276.80913826|55275.83323679||||4.329|9|0|55274.75810734|55276.80913826|55275.83323679|14|47|27|0|1|0||||||||||||||||||||||||||857826181|0.24|13.9|1|15.985|0.111|15.4|0.14|15.191|0.223|1802089401241004020|1|-0.0022423040021768|-0.0005282982715142|-0.999997346483328|121000000|
+J084407.60-895204.5|131.0316763|-89.8679417|0.1577|0.1545|-0.033|302.8011854|-27.0657481|269.7811792|-66.6601747|1982.939|691.593|1201089401241004902|1201m894_ab41-004902|1201m894_ab41|4902|14.858|0.032|33.8|0.996599972|14.946|0.065|16.8|0.873099983|12.797|0.394|2.8|1.046|9.605||-0.8|0.976199985|0.968999982|1|0|0.0|0.0|0.0|0.001|0000|0000|0|01nn|AACU|7|0000|23|23|13|23|3|22|0|22|22.887|22.82|21.923|21.959|0.0|0.0|0.0|0.0|0||0||0||0||180.630005|5.34819984|9.407|2.748|0.227|66.2850037|3.94989991|21.797|3.291|0.0|120.57|43.7729988|1096.793|24.178|4.385|-9.3203001|11.4060001|297.761|9.469|1.222|14.745|0.047|1|0.261|14.836|0.095|1|0.319|11.827||32|0.825|8.388||32|0.576|15.416|0.049|1|15.634|0.106|1|13.022||32|9.395||32|15.006|0.047|1|15.155|0.095|1|12.652||32|8.964||32|14.774|0.049|1|14.891|0.097|1|12.366||32|8.623||32|14.553|0.049|1|14.643|0.095|1|12.135||32|9.095||32|14.288|0.047|1|14.332|0.086|1|11.935||32|9.509||32|14.005|0.042|1|14.0|0.074|1|11.757||32|7.835||32|13.761|0.039|1|13.711|0.066|1|11.594||32|7.619||32|13.572|0.038|1|13.495|0.062|1|11.441||32|7.42||32|14.849|0.11|0.023|0.594|22|0|55274.89041135|55276.94144233|55275.9260225|14.972|0.399|0.083|1.54200006|22|1|55274.89041135|55276.94144233|55275.9260225|12.312|1.98|0.422|4.63800001|13|1|55274.89041135|55276.94144233|55275.8949045||||2.55900002|9|0|55274.89041135|55276.94144233|55275.8949045|0|-38|-60|0|1|0||||||||||||||||||||||||||864198461|0.306|-28.5|1|15.596|0.076|15.087|0.099|14.88|0.148|1201089401241004902|1|-0.0015130792069235|0.0017386562361658|-0.999997343829375|111000000|
+J123757.34-895204.5|189.4889309|-89.8679351|0.7822|0.736|0.1748|302.923202|-26.9963197|269.6728252|-66.5385959|1992.644|693.317|1802089401241005211|1802m894_ab41-005211|1802m894_ab41|5211|17.208|0.133|8.2|0.740800023|16.571|0.236|4.6|0.923699975|12.711||0.8|1.07799995|9.527||-0.2|1.08700001|0.954599977|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BBUU|3|0000|1|24|3|23|0|24|1|24|24.765|23.819|24.824|24.64|0.0|0.0|0.0|0.0|8|h|0||0||0||20.7380009|2.53789997|10.225|2.645|0.573|14.8400002|3.2270999|21.838|3.141|0.063|38.3180008|46.0839996|1095.304|25.436|0.657|-1.97300005|12.2539997|298.199|9.696|0.661|16.376||32|0.261|15.786||32|0.319|12.559||32|0.825|8.478||32|0.576|16.852||32|16.426||32|13.659||32|9.648||32|16.637||32|16.105||32|13.384||32|9.054||32|16.443||32|15.977||32|13.173||32|8.653||32|16.209||32|15.776||32|12.94||32|8.351||32|16.005||32|15.425||32|12.735||32|8.118||32|15.825||32|15.094||32|12.555||32|7.887||32|15.561||32|14.829||32|12.391||32|7.63||32|15.437||32|14.612||32|12.239||32|7.418||32|17.199|0.373|0.076|2.248|21|0|55274.75810734|55276.80913826|55275.83323679|16.664|1.722|0.359|4.10200024|15|1|55274.75810734|55276.80913826|55275.85696662|13.413|2.761|0.564|4.46799994|15|0|55274.75810734|55276.80913826|55275.83323679||||4.92299986|11|3|55274.75810734|55276.80913826|55275.83323679|-8|12|21|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005211|1|-0.0022734271207616|-0.0003799897319174|-0.999997343564937|121000000|
+J093244.84-895204.5|143.1868583|-89.8679235|0.1499|0.1451|-0.0325|302.8188665|-27.0426373|269.7333254|-66.6396243|1912.879|670.325|1201089401241004237|1201m894_ab41-004237|1201m894_ab41|4237|14.625|0.033|32.9|1.02100003|14.345|0.046|23.5|0.944999993|12.266|0.254|4.3|1.11300004|9.042||1.0|1.01300001|1.01999998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|23|23|22|23|0|23|0|23|22.637|22.823|22.975|22.785|0.0|0.0|0.0|0.0|0||0||0||0||223.830002|6.80200005|9.382|2.839|0.108|115.389999|4.91200018|21.847|3.362|0.04|196.520004|45.9259987|1095.725|25.144|1.252|12.6149998|12.842|298.229|10.099|0.322|14.558|0.053|0|0.261|14.278|0.057|0|0.319|11.408||32|0.825|8.167||32|0.576|15.199|0.055|0|15.043|0.063|0|12.632||32|9.314||32|14.819|0.053|0|14.597|0.057|0|12.233||32|8.743||32|14.714|0.063|0|14.446|0.064|0|12.013||32|8.316||32|14.717|0.078|1|14.407|0.077|1|11.898||32|8.028||32|14.733|0.095|1|14.379|0.09|1|12.16||32|7.851||32|14.692|0.107|1|14.314|0.099|1|11.705||32|7.666||32|14.587|0.113|1|14.207|0.105|1|11.541||32|7.479||32|14.469|0.117|1|14.09|0.108|1|11.388||32|7.34||32|14.628|0.097|0.02|0.376|22|0|55274.89041135|55276.94144233|55275.86561452|14.333|0.174|0.036|0.723999977|22|0|55274.89041135|55276.94144233|55275.86561452|12.049|0.886|0.185|4.20300007|17|0|55274.89041135|55276.94144233|55275.86561452|10.139|5.26|1.097|2.97099996|10|0|55274.89041135|55276.94144233|55275.86561452|6|-24|-26|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004237|1|-0.0018455038882199|0.0013812736059636|-0.999997343095782|111000000|
+J011242.25-895203.7|18.1760497|-89.8676969|0.6573|0.633|0.182|302.9181255|-27.2598897|270.3165332|-66.6016606|1939.942|681.127|89401241005093|0000m894_ab41-005093|0000m894_ab41|5093|17.013|0.117|9.3|0.989899993|16.192|0.184|5.9|0.960200012|12.992||0.3|1.06599998|9.544||-0.1|1.05499995|1.01300001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|3|21|3|21|0|20|0|20|22.794|22.826|21.943|21.727|0.0|0.0|0.0|0.0|0||0||0||0||24.809|2.66289997|9.282|2.656|0.512|21.0529995|3.56780005|21.786|3.335|0.25|11.3260002|44.7130013|1099.599|23.284|3.491|-1.56190002|12.059|298.833|9.674|1.027|16.371|0.18|1|0.261|15.673|0.3|1|0.319|12.78||32|0.825|8.758||32|0.576|17.21|0.22|0|16.589|0.373|0|13.966||32|9.767||32|16.632|0.18|1|15.992|0.3|1|13.605||32|9.334||32|16.35|0.178|1|15.678|0.29|1|13.327||32|8.986||32|16.234|0.198|1|15.493|0.301|1|13.099||32|8.694||32|16.179|0.227|1|15.4|0.334|1|12.895||32|8.431||32|16.094|0.248|1|15.391|0.391|1|12.714||32|8.194||32|15.841|0.23|1|15.353|0.44|1|12.548||32|7.978||32|15.23|0.15|1|15.042|0.379|1|12.399||32|7.778||32|16.955|0.427|0.093|1.778|19|0|55275.55205887|55277.33835439|55276.39639986|16.157|0.962|0.21|3.28900003|17|0|55275.55205887|55277.33835439|55276.39639986|14.31|9.357|2.092|5.90700006|9|0|55275.55205887|55277.33835439|55276.38568892||||4.03499985|7|0|55275.55205887|55277.33835439|55276.38568892|-27|32|53|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005093|1|0.0021939039844304|0.0007203028551799|-0.999997333970998|101000000|
+J014023.95-895203.5|25.0998175|-89.8676514|0.1155|0.1185|0.0213|302.9003515|-27.2574928|270.301982|-66.6165609|1901.005|665.81|89401241004239|0000m894_ab41-004239|0000m894_ab41|4239|14.013|0.028|39.5|0.904200017|14.135|0.04|26.9|1.09899998|12.298|0.239|4.5|0.995199978|9.411||0.3|0.958700001|0.986100018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|23|23|22|23|0|22|0|22|22.752|22.657|21.92|21.663|0.0|0.0|0.0|0.0|0||0||0||0||393.549988|9.97340012|9.276|2.787|0.181|139.990005|5.21360016|21.702|3.336|0.173|190.899994|42.0760002|1099.546|23.004|0.158|3.33290005|11.9709997|298.313|9.583|1.574|13.992|0.024|0|0.261|14.131|0.068|0|0.319|11.71||32|0.825|8.819||32|0.576|14.631|0.025|0|14.891|0.074|0|12.886||32|9.828||32|14.253|0.024|0|14.45|0.068|0|12.535||32|9.395||32|14.098|0.027|1|14.262|0.073|1|12.252||32|9.052||32|14.01|0.03|1|14.154|0.082|1|12.023||32|8.76||32|13.955|0.034|1|14.065|0.091|1|11.817||32|8.501||32|13.922|0.039|1|13.997|0.101|1|11.636||32|8.266||32|13.888|0.044|1|13.939|0.111|1|11.474||32|7.99||32|13.85|0.049|1|13.883|0.121|1|11.324||32|7.706||32|14.014|0.067|0.014|0.247|22|0|55275.55205887|55277.33835439|55276.39777605|14.152|0.153|0.032|0.792999983|22|0|55275.55205887|55277.33835439|55276.39777605|12.177|1.021|0.218|2.3499999|15|0|55275.55205887|55277.33835439|55276.3881014|11.118|8.613|1.836|3.71099997|10|0|55275.55205887|55277.33835439|55276.3881014|8|-11|-11|0|0|0||||||||||||||||||||||||||1085459882|0.209|-123.0|1|14.835|0.042|14.23|0.054|14.087|0.068|89401241004239|1|0.0020917921232453|0.0009798589070176|-0.999997332137559|101000000|
+J025304.17-895203.4|43.2674021|-89.8676357|0.5268|0.5399|0.1729|302.856561|-27.2422931|270.2431906|-66.6512442|2148.312|683.742|600089401241004812|0600m894_ab41-004812|0600m894_ab41|4812|16.92|0.101|10.7|0.886399984|16.78|0.323|3.4|0.869499981|11.786|0.14|7.8|1.23300004|9.294|0.387|2.8|1.04299998|1.00399995|1|0|0.0|0.0|0.0|0.005|0000|0000|0|0nnn|ABBC|15|0000|5|24|0|24|2|23|1|23|23.809|23.441|22.932|22.711|0.0|0.0|0.0|0.0|0||0||0||0||27.0400009|2.52040005|9.307|2.76|0.062|12.2489996|3.64680004|21.732|3.358|0.088|306.040009|39.3959999|1098.798|21.922|0.793|30.3659992|10.8319998|297.778|8.735|0.806|16.34|0.107|1|0.261|16.053|0.311|1|0.319|12.544|0.418|1|0.825|8.445||32|0.576|17.097|0.121|1|16.951|0.375|1|13.331||32|9.584||32|16.601|0.107|1|16.372|0.311|1|13.369|0.418|1|9.021||32|16.325|0.107|1|16.085|0.308|1|12.837|0.329|1|8.595||32|16.092|0.107|1|15.912|0.326|1|12.454|0.284|1|8.213||32|15.844|0.103|1|15.737|0.335|1|12.148|0.256|1|8.581|0.504|17|15.492|0.088|1|15.44|0.3|1|11.856|0.228|1|8.24|0.457|17|15.014|0.067|1|15.054|0.245|1|11.579|0.204|1|7.983|0.44|17|14.542|0.05|1|14.662|0.196|1|11.328|0.184|1|7.806|0.449|17|16.908|0.416|0.085|2.85|23|0|55275.28745078|55277.33835439|55276.3515125|16.657|1.178|0.24|3.86199999|17|0|55275.28745078|55277.33835439|55276.3515125|11.736|0.809|0.169|4.40799999|21|1|55275.28745078|55277.33835439|55276.34024702|9.325|2.063|0.43|3.23399997|15|0|55275.28745078|55277.33835439|55276.34024702|0|-14|-7|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004812|1|0.0016821955233751|0.001583414862605|-0.999997331504237|101000000|
+J150847.51-895203.3|227.1979806|-89.8675848|0.1619|0.1664|0.0399|303.0157598|-27.0187937|269.7746956|-66.4633928|2126.986|689.584|2403089401241004405|2403m894_ab41-004405|2403m894_ab41|4405|14.998|0.034|31.9|1.14699996|14.866|0.061|17.7|0.979900002|13.102||-0.9|1.11500001|9.165||0.6|0.97329998|1.051|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|11nn|AAUU|3|0000|23|23|16|23|1|22|0|22|22.74|22.894|21.933|22.018|0.0|0.0|0.0|0.0|8|h|8|h|0||0||158.820007|4.97450018|9.371|2.24|0.195|71.3509979|4.0296998|21.771|3.25|0.37|-42.3009987|45.4970016|1093.239|24.785|5.08|7.8263998|13.1859999|298.428|10.095|0.326|15.133|0.095|1|0.261|14.952|0.114|1|0.319|12.293||32|0.825|8.42||32|0.576|15.79|0.097|1|15.735|0.124|1|13.497||32|9.542||32|15.394|0.095|1|15.271|0.114|1|13.118||32|8.996||32|15.22|0.105|1|15.047|0.12|1|12.837||32|9.256|0.536|1|15.161|0.123|1|14.929|0.133|1|12.603||32|8.688|0.404|1|15.207|0.153|1|14.894|0.154|1|12.406||32|8.222|0.324|1|15.331|0.203|1|14.931|0.188|1|12.227||32|7.884|0.286|1|15.473|0.268|1|14.999|0.233|1|12.064||32|7.659|0.276|1|15.536|0.328|1|14.98|0.264|1|11.91||32|7.521|0.284|1|15.002|0.135|0.028|0.508|22|0|55274.89041135|55276.94144233|55275.92886822|14.862|0.331|0.069|1.35599995|22|1|55274.89041135|55276.94144233|55275.92886822||||3.26799989|8|1|55274.89041135|55276.94144233|55275.89787957|9.749|1.611|0.343|4.69299984|12|0|55274.89041135|55276.94144233|55275.89787957|39|7|7|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004405|1|-0.0015703022763587|-0.0016956523171538|-0.999997329453424|121000000|
+J110026.33-895203.0|165.1097279|-89.8675274|0.314|0.2923|0.0278|302.8626836|-27.0109025|269.6777122|-66.5944198|2138.743|686.764|1802089401241004269|1802m894_ab41-004269|1802m894_ab41|4269|15.923|0.053|20.3|0.889299989|16.141|0.182|6.0|0.877900004|12.993||-2.0|0.888400018|9.441||-1.6|0.97240001|0.903699994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABUU|3|0000|20|21|2|21|0|21|0|21|21.831|21.79|22.442|22.246|0.0|0.0|0.0|0.0|0||0||0||0||67.7160034|3.329|9.824|2.802|0.033|22.052|3.69120002|21.824|3.396|0.0|-99.1320038|50.3310013|1095.855|25.896|0.494|-20.7329998|13.2620001|298.655|9.991|0.699|15.285|0.105|1|0.261|15.119|0.103|1|0.319|12.735||32|0.825|8.977||32|0.576|16.23|0.14|1|16.21|0.15|1|13.934||32|9.987||32|15.546|0.105|1|15.438|0.103|1|13.56||32|9.553||32|14.777|0.067|1|14.614|0.063|1|13.28||32|9.215||32|13.804|0.035|1|13.69|0.034|1|13.045||32|8.928||32|12.854|0.018|1|12.855|0.02|1|12.84||32|8.673||32|12.168|0.012|1|12.237|0.014|1|12.424||32|8.443||32|11.797|0.011|1|11.871|0.012|1|12.054||32|8.232||32|11.636|0.01|1|11.688|0.011|1|11.821||32|8.037||32|15.933|0.237|0.052|0.765|20|0|55274.75810734|55276.80913826|55275.79780276|16.051|0.939|0.205|4.34899998|17|1|55274.75810734|55276.80913826|55275.79780276||||1.87399995|5|0|55274.75810734|55276.80913826|55275.79780276||||1.13600004|6|0|55274.75810734|55276.80913826|55275.79780276|47|7|-95|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004269|1|-0.0022344414847898|0.0005941326948546|-0.999997327135224|111000000|
+J083512.37-895203.0|128.8015826|-89.8675072|0.2716|0.4896|0.1152|302.7981159|-27.0701324|269.7904111|-66.6638239|1996.032|694.992|1201089401241004891|1201m894_ab41-004891|1201m894_ab41|4891|14.851|0.101|10.7|1.06099999|14.55|0.104|10.4|0.903500021|11.983|0.277|3.9|1.125|9.215||0.9|1.09099996|1.04100001|1|0|0.0|0.0|0.0|0.003|0000|0000|0|n2nn|AABU|7|0000|3|23|4|23|1|22|1|22|22.75|22.834|21.911|21.674|0.0|0.0|0.0|0.0|0||0||0||0||181.759995|16.9130001|9.404|2.733|0.651|95.5419998|9.17310047|21.842|3.319|0.164|255.110001|65.2009964|1098.36|24.713|3.119|10.382|11.1440001|297.792|9.3|0.764|14.548|0.045|0|0.261|14.288|0.06|0|0.319|11.875||32|0.825|8.552||32|0.576|15.255|0.05|0|15.122|0.071|0|13.145||32|9.569||32|14.809|0.045|0|14.607|0.06|0|12.7||32|9.128||32|14.593|0.048|1|14.346|0.061|1|12.374||32|8.785||32|14.43|0.051|1|14.16|0.063|1|12.148||32|8.494||32|14.213|0.05|1|13.962|0.064|1|11.964||32|8.234||32|13.911|0.045|1|13.72|0.06|1|11.8||32|7.998||32|13.58|0.039|1|13.461|0.055|1|11.644||32|7.784||32|13.311|0.035|1|13.247|0.052|1|11.471||32|7.585||32|14.831|0.12|0.025|1.058|22|0|55274.89041135|55276.94144233|55275.9260225|14.553|0.367|0.077|1.28499997|22|0|55274.89041135|55276.94144233|55275.9260225|11.92|0.995|0.212|3.05299997|15|1|55274.89041135|55276.94144233|55275.8949045|12.082|||4.86899996|10|1|55274.89041135|55276.94144233|55275.8949045|14|-51|-42|0|1|0||||||||||||||||||||||||||1258763100|0.413|-5.0|1|16.666|0.188|15.721|0.187|15.063|0.173|1201089401241004891|1|-0.0014490294641091|0.0018021272461337|-0.999997326321926|111000000|
+J191037.98-895203.0|287.6582649|-89.8675033|0.9693|1.0325|-0.3101|303.0802834|-27.1391627|270.1005292|-66.4344227|2124.871|690.296|3004089401241005589|3004m894_ab41-005589|3004m894_ab41|5589|17.552|0.163|6.6|0.984799981|16.844||1.5|0.858399987|12.442||1.8|0.985700011|9.645||-0.5|1.08000004|0.975399971|1|0|0.0|0.0|0.0|0.004|0000|0000|0|nnnn|BUUU|1|0000|3|25|1|24|0|24|0|24|25.718|24.593|24.752|24.453|0.0|0.0|0.0|0.0|0||0||0||0||15.1059999|2.2737|9.311|2.658|0.0|4.85489988|3.34549999|21.738|3.418|0.0|79.1409988|43.9920006|1096.178|24.818|0.0|-5.39529991|10.993|299.298|9.609|1.294|17.622|0.386|1|0.261|16.233|0.331|1|0.319|12.307||32|0.825|9.465||32|0.576|18.121|0.345|1|17.274|0.462|1|18.809||32|10.038||32|17.883|0.386|1|16.552|0.331|1|13.132||32|10.041||32|17.243||32|16.186|0.307|1|12.849||32|9.224||32|17.178||32|16.063|0.339|1|12.617||32|9.528||32|16.992||32|16.086|0.417|1|12.416||32|8.758||32|16.787||32|16.167|0.53|1|12.832||32|8.535||32|16.664||32|15.444||32|11.967||32|8.332||32|16.573||32|15.519||32|11.752||32|8.143||32|17.753|0.997|0.199|4.152|19|2|55275.28732341|55277.20605032|55276.19247154|17.48|3.441|0.702|2.51099992|10|0|55275.28732341|55277.20605032|55276.17229507|12.737|1.958|0.4|3.65199995|12|0|55275.28732341|55277.20605032|55276.17504875||||3.95499992|10|0|55275.28732341|55277.20605032|55276.17504875|44|17|13|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005589|1|0.0007014720438137|-0.0022035427758214|-0.999997326164529|131000000|
+J224058.91-895202.9|340.245475|-89.8674744|0.1148|0.1127|0.0046|303.0122538|-27.2397626|270.3129914|-66.5156039|2165.269|678.574|89401241004229|0000m894_ab41-004229|0000m894_ab41|4229|13.965|0.027|40.3|0.968400002|14.0|0.038|28.7|0.912500024|13.187||0.1|0.925899982|9.333||0.4|1.10800004|0.975000024|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|24|24|23|24|0|23|0|23|23.719|23.698|22.919|22.772|0.0|0.0|0.0|0.0|0||0||0||0||411.299988|10.2040005|9.2|2.768|0.131|158.419998|5.5145998|21.738|3.375|0.154|3.7966001|40.2000008|1099.006|24.473|0.0|4.85559988|12.2130003|298.536|9.856|0.775|13.951|0.027|0|0.261|14.027|0.064|0|0.319|12.547||32|0.825|8.709||32|0.576|14.575|0.027|0|14.772|0.069|0|13.737||32|9.776||32|14.212|0.027|0|14.346|0.064|0|13.372||32|9.285||32|14.085|0.031|0|14.193|0.072|0|13.087||32|8.905||32|14.036|0.036|1|14.135|0.085|1|12.856||32|8.588||32|14.009|0.042|1|14.096|0.099|1|12.651||32|8.211||32|13.961|0.047|1|14.034|0.11|1|12.47||32|7.814||32|13.861|0.05|1|13.925|0.116|1|12.305||32|8.265|0.538|1|13.717|0.05|1|13.773|0.115|1|12.155||32|7.335||32|13.961|0.058|0.012|0.291|23|0|55275.55205887|55277.33835439|55276.41490023|13.987|0.161|0.033|0.592000008|23|0|55275.55205887|55277.33835439|55276.41490023|14.443|7.85|1.637|4.94099998|9|0|55275.55205887|55277.33835439|55276.40639074|10.3|4.814|1.004|4.78200006|12|0|55275.55205887|55277.33835439|55276.40639074|-5|-70|-23|0|2|0||||||||||||||||||||||||||1091720512|0.243|79.4|1|14.537|0.041|14.153|0.057|13.918|0.065|89401241004229|1|0.002176883687879|-0.0007817751965769|-0.999997324998898|131000000|
+J074834.77-895202.5|117.1448807|-89.8673697|1.2492|1.3711|-0.453|302.7875418|-27.0953558|269.8471497|-66.6786566|2357.763|508.955|1802089401241005162|1802m894_ab41-005162|1802m894_ab41|5162|18.736||-0.4|0.936600029|16.672||1.7|0.806400001|11.894|0.168|6.4|1.57099998|9.004||1.4|0.905499995|1.06500006|1|0|0.0|0.0|0.0|0.0|0000|Hh00|0|nnnn|UUBU|4|0000|1|21|1|21|3|20|1|20|21.702|21.589|20.837|21.704|0.0|0.0|0.0|0.0|1032|H|8|h|0||0||-0.983460009|2.5381|9.427|2.823|0.008|6.16730022|3.67849994|21.824|3.384|0.0|277.070007|42.9850006|1095.478|23.182|2.305|16.2950001|11.6899996|297.933|9.379|0.479|15.737|0.174|1|0.261|15.202|0.148|1|0.319|12.229|0.333|1|0.825|8.601|0.394|1|0.576|17.066|0.336|1|16.485|0.26|1|13.852|0.503|1|9.221||32|15.998|0.174|1|15.521|0.148|1|13.054|0.333|1|9.177|0.394|1|15.155|0.104|1|14.773|0.096|1|12.479|0.253|1|8.673|0.341|1|14.486|0.07|1|14.161|0.068|1|12.004|0.203|1|8.308|0.319|1|13.965|0.052|1|13.667|0.052|1|11.597|0.167|1|7.98|0.3|1|13.545|0.042|1|13.262|0.042|1|11.255|0.144|1|7.673|0.281|1|13.175|0.035|1|12.9|0.035|1|10.945|0.126|1|7.401|0.267|1|12.769|0.028|1|12.507|0.028|1|10.625|0.108|1|7.157|0.256|1||||3.024|7|1|55275.02271543|55276.94144233|55275.97424453|17.565|3.268|0.713|2.87599993|12|0|55275.02271543|55276.94144233|55275.97424453|12.292|1.686|0.377|3.76300001|14|9|55275.02271543|55276.94144233|55275.94242583|10.181|4.345|0.972|3.18400002|10|1|55275.02271543|55276.94144233|55275.94242583|-43|91|90|0|4|3|||||||||||||||||||||||||||||0|||||||1802089401241005162|1|-0.0010561241081217|0.0020598670810436|-0.999997320771149|111000000|
+J040207.80-895202.2|60.5325023|-89.8672899|1.4069|1.5001|0.4987|302.8215855|-27.217475|270.1648889|-66.6761647|2045.333|699.471|600089401241005609|0600m894_ab41-005609|0600m894_ab41|5609|18.423||0.8|0.914699972|17.409||-1.8|0.907800019|12.072|0.192|5.6|1.01199996|9.138||1.0|0.906499982|0.932200015|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|22|0|22|1|21|0|21|22.329|22.896|22.376|22.941|0.0|0.0|0.0|0.0|0||0||0||0||1.88960004|2.44269991|9.385|2.691|0.0|-6.28789997|3.4296999|21.726|3.399|0.0|235.139999|41.6650009|1097.053|21.897|0.768|11.3590002|11.8439999|298.819|9.318|0.394|16.934||32|0.261|16.465||32|0.319|12.649||32|0.825|9.011||32|0.576|17.493||32|17.139||32|13.84||32|10.007||32|17.195||32|16.784||32|13.474||32|9.587||32|16.909||32|16.558||32|13.188||32|9.26||32|16.559||32|16.284||32|12.956||32|8.985||32|16.116||32|15.835||32|12.752||32|8.743||32|16.254|0.438|1|15.991|0.49|1|12.572||32|8.523||32|15.549|0.266|1|15.269|0.293|1|12.409||32|8.323||32|15.021|0.189|1|14.739|0.206|1|12.257||32|8.655||32|20.051|||2.255|9|0|55275.28745078|55277.33835439|55276.28285086||||2.43499994|8|0|55275.28745078|55277.33835439|55276.28285086|12.004|0.755|0.165|4.25899982|18|1|55275.28745078|55277.33835439|55276.26724288|9.979|2.877|0.628|4.28999996|11|0|55275.28745078|55277.33835439|55276.26724288|-83|-32|-20|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005609|1|0.0011394204966425|0.0020165872049051|-0.999997317544891|101000000|
+J152853.40-895202.1|232.22252|-89.8672722|0.2761|0.294|0.0731|303.0264151|-27.0255072|269.7964527|-66.4556689|2097.234|696.015|2403089401241005040|2403m894_ab41-005040|2403m894_ab41|5040|15.94|0.051|21.2|1.00300002|15.78|0.125|8.7|0.854600012|12.565||0.9|1.06500006|8.796||1.6|0.781599998|0.924000025|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|11nn|ABUU|3|0000|20|23|4|23|1|22|0|22|23.188|22.67|22.112|22.948|0.0|0.0|0.0|0.0|8|h|8|h|0||0||66.7080002|3.1408|9.484|2.271|0.748|30.7560005|3.54819989|21.801|3.212|0.765|47.4490013|50.9399986|1095.478|25.798|6.029|21.0979996|13.4650002|298.692|10.073|0.943|16.007|0.184|1|0.261|15.929|0.424|1|0.319|12.453||32|0.825|9.434||32|0.576|16.73|0.206|1|16.83|0.53|1|13.492||32|9.67||32|16.268|0.184|1|16.248|0.424|1|13.278||32|10.01||32|16.006|0.188|1|15.941|0.415|1|13.06||32|9.14||32|15.734|0.182|1|15.741|0.427|1|12.828||32|8.847||32|15.382|0.158|1|15.613|0.457|1|12.629||32|8.586||32|15.042|0.137|1|15.55|0.511|1|12.412||32|8.351||32|14.815|0.129|1|14.767||32|12.137||32|8.136||32|14.699|0.133|1|14.789||32|11.917||32|7.937||32|15.948|0.261|0.054|1.002|22|0|55274.89041135|55276.94144233|55275.92886822|15.738|0.646|0.135|3.19099998|20|1|55274.89041135|55276.94144233|55275.92886822|12.618|2.375|0.506|2.37100005|11|0|55274.89041135|55276.94144233|55275.89787957|9.555|2.264|0.483|4.13100004|14|0|55274.89041135|55276.94144233|55275.89787957|-39|16|6|1|0|0||||||||||||||||||||||||||858107224|0.48|83.1|1|16.655|0.177|16.271|0.205|16.733||2403089401241005040|1|-0.0014191014437765|-0.0018309801179169|-0.99999731682785|121000000|
+J033526.59-895202.1|53.8608232|-89.867253|0.3457|0.3733|0.1074|302.8339706|-27.2283058|270.1976647|-66.6677897|2085.729|697.524|600089401241004454|0600m894_ab41-004454|0600m894_ab41|4454|16.315|0.067|16.3|0.949500024|16.236|0.188|5.8|0.963|11.532|0.116|9.3|1.05799997|8.835||1.9|1.12800002|1.01900005|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|ABBU|7|0000|13|23|2|23|3|22|0|22|24.417|24.191|23.425|23.524|0.0|0.0|0.0|0.0|129|D|129|D|0||0||47.1870003|2.89619994|9.325|2.671|0.027|20.2210007|3.50539994|21.724|3.351|0.067|386.549988|41.401001|1097.761|21.497|1.182|22.5839996|11.8900003|298.923|9.375|0.953|15.83|0.074|1|0.261|15.539|0.218|1|0.319|11.631||32|0.825|8.313||32|0.576|16.584|0.083|0|16.463|0.272|0|12.939||32|9.443||32|16.091|0.074|1|15.858|0.218|1|12.456||32|8.889||32|15.827|0.076|1|15.503|0.203|1|12.101||32|8.511||32|15.569|0.073|1|15.226|0.195|1|12.477|0.477|1|8.918|0.513|1|15.156|0.061|1|14.898|0.173|1|12.13|0.418|1|8.695|0.526|1|14.548|0.041|1|14.426|0.133|1|11.8|0.364|1|7.802||32|13.906|0.027|1|13.896|0.095|1|11.509|0.325|1|7.69||32|13.431|0.021|1|13.47|0.074|1|11.328|0.315|1|7.566||32|16.299|0.281|0.059|2.342|22|0|55275.28745078|55277.33835439|55276.32874232|16.196|1.019|0.212|1.86899996|18|0|55275.28745078|55277.33835439|55276.32874232|11.503|0.503|0.107|1.99899995|20|0|55275.28745078|55277.33835439|55276.31592977|9.17|1.868|0.398|3.30999994|12|0|55275.28745078|55277.33835439|55276.31592977|15|-22|-24|0|0|0||||||||||||||||||||||||||1181198027|1.582|-129.3|1|16.611|0.185|16.106||15.474||600089401241004454|1|0.0013663708965306|0.0018710734666317|-0.999997316053726|101000000|
+J063244.22-895201.9|98.1842682|-89.8672182|0.2335|0.2472|-0.0458|302.7832032|-27.1389008|269.952227|-66.6921312|2178.239|674.352|1201089401241004430|1201m894_ab41-004430|1201m894_ab41|4430|15.618|0.046|23.7|0.90200001|15.576|0.107|10.1|0.905200005|11.72|0.139|7.8|1.07500005|9.401|0.453|2.4|1.01400006|0.969500005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AABC|15|0000|21|22|6|22|3|21|0|21|23.2|23.444|22.931|23.011|0.0|0.0|0.0|0.0|0||0||0||0||89.6959991|3.78830004|9.383|2.843|0.037|37.1329994|3.66179991|21.773|3.399|0.054|325.089996|41.7449989|1095.995|21.893|3.703|27.5109997|11.4879999|298.153|9.34|0.762|15.297|0.054|1|0.261|15.426|0.247|1|0.319|12.506|0.413|1|0.825|8.475||32|0.576|16.041|0.061|1|16.241|0.279|1|13.382||32|9.612||32|15.558|0.054|1|15.745|0.247|1|13.331|0.413|1|9.051||32|15.23|0.051|1|15.439|0.242|1|12.598|0.273|1|8.662||32|14.94|0.049|1|15.178|0.235|1|12.025|0.199|1|8.329||32|14.684|0.046|1|14.953|0.23|1|11.594|0.162|1|7.999||32|14.438|0.044|1|14.719|0.219|1|11.268|0.142|1|8.385|0.481|1|14.15|0.039|1|14.425|0.195|1|11.006|0.13|1|8.16|0.472|1|13.797|0.033|1|14.04|0.157|1|10.788|0.122|1|8.067|0.514|17|15.627|0.179|0.038|0.704|21|0|55275.02284279|55276.94144233|55276.12948978|15.581|0.754|0.161|2.02999997|18|1|55275.02284279|55276.94144233|55276.12948978|11.677|0.713|0.156|2.7980001|18|1|55275.02284279|55276.94144233|55276.10657889|9.388|1.869|0.408|3.79299998|14|0|55275.02284279|55276.94144233|55276.10657889|-45|-28|52|1|1|1|||||||||||||||||||||||||||||0|||||||1201089401241004430|1|-0.0003299096203991|0.0022938754758907|-0.999997314643866|111000000|
+J092156.69-895201.8|140.486209|-89.8671942|0.3729|0.3596|-0.1019|302.8138172|-27.0470271|269.741551|-66.6449964|1705.169|410.064|600089401241005067|0600m894_ab41-005067|0600m894_ab41|5067|16.268|0.067|16.3|1.09000003|16.043|0.153|7.1|1.04999995|12.635|0.342|3.2|1.02199996|9.131||0.9|1.09899998|1.05499995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|15|23|3|23|1|23|0|23|22.784|23.435|22.79|22.852|0.0|0.0|0.0|0.0|0||0||0||0||49.2939987|3.02110004|9.402|2.783|0.0|24.1410007|3.39829993|21.855|3.308|0.0|140.0|44.0480003|1096.244|25.036|0.663|10.6850004|12.3039999|298.019|9.942|0.682|15.875|0.124|1|0.261|15.766|0.214|1|0.319|11.689||32|0.825|8.426||32|0.576|16.635|0.142|1|16.548|0.236|1|12.896||32|9.454||32|16.136|0.124|1|16.085|0.214|1|12.514||32|9.002||32|15.933|0.132|1|15.982|0.25|1|12.245||32|8.558||32|15.893|0.157|1|16.087|0.34|1|12.087||32|8.202||32|15.825|0.178|1|16.128|0.426|1|11.953||32|7.925||32|15.503|0.157|1|15.737|0.351|1|11.772||32|7.696||32|15.001|0.115|1|15.1|0.227|1|11.608||32|7.477||32|14.556|0.088|1|14.583|0.162|1|11.456||32|7.285||32|16.186|0.277|0.058|2.463|22|1|55274.89041135|55276.94144233|55275.86561452|16.08|0.986|0.206|3.54099989|20|1|55274.89041135|55276.94144233|55275.86561452|12.576|1.56|0.325|4.23799992|15|0|55274.89041135|55276.94144233|55275.86561452|10.232|3.909|0.815|3.62400007|14|0|55274.89041135|55276.94144233|55275.86561452|35|-10|-24|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005067|1|-0.0017881911519341|0.0014747940714057|-0.999997313673817|111000000|
+J031529.54-895201.5|48.8730841|-89.8670915|1.7021|1.5236|0.5096|302.8440246|-27.2356357|270.2206544|-66.6606683|2115.707|693.351|600089401241005780|0600m894_ab41-005780|0600m894_ab41|5780|18.783||-1.5|0.821699977|17.361||-1.2|1.01199996|12.089|0.208|5.2|1.05200005|9.103||1.2|0.995500028|0.966600001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|24|0|24|0|23|0|23|23.671|23.748|22.962|22.811|0.0|0.0|0.0|0.0|0||0||0||0||-3.7572999|2.43190002|9.286|2.71|0.0|-4.24160004|3.5855999|21.746|3.436|0.026|231.380005|44.3699989|1100.562|22.544|3.131|13.8649998|11.1669998|298.216|9.267|0.964|17.13||32|0.261|16.524||32|0.319|12.377||32|0.825|8.868||32|0.576|17.975||32|17.212||32|13.634||32|10.014||32|17.391||32|16.843||32|13.202||32|9.444||32|16.872||32|16.568||32|12.893||32|8.953||32|16.583|0.372|1|16.224||32|12.645||32|8.471||32|15.231|0.13|1|15.851|0.42|1|12.354||32|8.014||32|14.27|0.064|1|14.691|0.171|1|11.998||32|8.303|0.444|17|13.721|0.045|1|14.067|0.112|1|12.209|0.383|1|8.018|0.411|17|13.462|0.041|1|13.753|0.096|1|11.711|0.278|1|7.811|0.403|17||||2.958|8|0|55275.28745078|55277.33835439|55276.3515125||||3.46199989|11|0|55275.28745078|55277.33835439|55276.3515125|11.909|0.947|0.198|3.98000002|18|0|55275.28745078|55277.33835439|55276.34024702|10.001|4.248|0.886|2.74300003|12|0|55275.28745078|55277.33835439|55276.34024702|-4|74|5|0|2|0|||||||||||||||||||||||||||||0|||||||600089401241005780|1|0.0015257270609989|0.0017473160809363|-0.999997309518105|101000000|
+J015653.03-895201.4|29.22098|-89.8670603|0.9398|0.8887|0.3043|302.8897903|-27.2557062|270.2924385|-66.6253356|1867.958|54.175|2403089401241005989|2403m894_ab41-005989|2403m894_ab41|5989|18.817||-4.6|0.894999981|17.455||-1.3|0.948899984|11.712|0.138|7.9|0.954100013|9.611||-0.3|1.16999996|0.987299979|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|23|0|23|3|22|0|22|22.744|22.854|21.979|21.825|0.0|0.0|0.0|0.0|0||0||0||0||-10.9549999|2.35669994|9.355|2.789|0.0|-4.31890011|3.2874999|21.705|3.39|0.0|327.640015|41.6500015|1098.529|22.152|0.0|-3.95350003|11.3380003|298.649|9.401|1.72|17.913||32|0.261|16.545||32|0.319|11.858||32|0.825|8.964||32|0.576|18.535||32|17.225||32|13.113||32|9.972||32|18.174||32|16.864||32|12.683||32|9.54||32|17.891||32|16.52||32|12.391||32|9.2||32|17.655||32|16.235||32|12.193||32|8.913||32|17.452||32|16.01||32|12.028||32|8.658||32|17.271||32|15.73||32|11.886||32|8.427||32|17.107||32|15.372||32|11.78||32|8.215||32|16.955||32|15.046||32|11.647||32|8.02||32||||2.011|2|0|55275.55205887|55277.33835439|55276.39777605||||1.65199995|6|0|55275.55205887|55277.33835439|55276.39777605|11.625|0.713|0.152|3.48699999|17|0|55275.55205887|55277.33835439|55276.3881014|11.456|||3.57200003|9|0|55275.55205887|55277.33835439|55276.3881014|-72|69|27|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005989|1|0.0020249680259247|0.0011326896582826|-0.999997308255693|101000000|
+J003919.17-895201.2|9.8298882|-89.8670247|0.4833|0.4617|0.0988|302.9398222|-27.2609456|270.3296864|-66.583065|1988.557|695.059|89401241004975|0000m894_ab41-004975|0000m894_ab41|4975|16.507|0.081|13.3|0.854200006|16.751|0.314|3.5|0.904799998|12.333|0.263|4.1|1.01699996|9.319||0.2|0.927399993|0.921700001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|9|20|0|20|1|19|0|19|20.753|20.632|19.97|19.561|0.0|0.0|0.0|0.0|0||0||0||0||39.5569992|2.96690011|9.259|2.733|0.031|12.5780001|3.63910007|21.738|3.45|0.142|184.820007|44.8089981|1098.326|23.267|3.009|2.89560008|13.3859997|298.8|9.932|0.481|16.178|0.107|0|0.261|15.987|0.383|0|0.319|12.344||32|0.825|8.385||32|0.576|16.898|0.118|0|16.892|0.467|0|15.989||32|9.525||32|16.439|0.107|0|16.306|0.383|0|13.169||32|8.961||32|16.171|0.108|0|15.96|0.362|0|12.884||32|8.516||32|15.889|0.104|0|15.661|0.339|0|12.652||32|8.165||32|15.497|0.087|1|15.301|0.293|1|12.45||32|7.923||32|14.991|0.065|1|14.851|0.228|1|12.274||32|7.759||32|14.424|0.045|1|14.368|0.17|1|12.109||32|7.65||32|13.916|0.033|1|13.922|0.13|1|11.957||32|7.555||32|16.576|0.305|0.068|1.325|19|0|55275.55205887|55277.33835439|55276.42869092|16.766|1.677|0.375|2.76699996|11|0|55275.55205887|55277.33835439|55276.42869092|12.364|0.844|0.194|2.18199992|15|0|55275.55205887|55277.33835439|55276.41911578||||3.72799993|7|0|55275.55205887|55277.33835439|55276.41911578|9|-38|-6|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004975|1|0.0022867822861598|0.0003962244824923|-0.999997306812841|101000000|
+J210845.10-895200.9|317.1879211|-89.8669242|0.1393|0.134|-0.0189|303.0554798|-27.2031486|270.2445291|-66.47008|1947.722|685.694|3004089401241004146|3004m894_ab41-004146|3004m894_ab41|4146|14.449|0.03|36.5|0.972599983|14.512|0.05|21.6|0.916999996|12.412|0.274|4.0|1.10899997|9.18||0.6|0.949500024|0.983200014|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|22|22|20|22|0|21|0|21|22.932|23.363|23.219|23.265|0.0|0.0|0.0|0.0|0||0||0||0||263.26001|7.21269989|9.268|2.924|0.159|98.8799973|4.57469988|21.682|3.46|0.145|171.839996|43.4370003|1097.8|24.568|1.543|8.18000031|12.7700005|299.211|9.917|0.981|14.398|0.026|1|0.261|14.536|0.089|1|0.319|12.386||32|0.825|8.454||32|0.576|15.031|0.026|1|15.271|0.093|1|13.661||32|9.508||32|14.659|0.026|1|14.855|0.089|1|13.211||32|9.03||32|14.513|0.029|1|14.712|0.1|1|12.931||32|8.632||32|14.429|0.032|1|14.666|0.119|1|12.698||32|8.301||32|14.368|0.037|1|14.65|0.141|1|12.493||32|8.085||32|14.324|0.041|1|14.647|0.166|1|12.313||32|7.927||32|14.274|0.046|1|14.638|0.191|1|12.148||32|7.799||32|14.177|0.048|1|14.572|0.207|1|11.996||32|7.719||32|14.449|0.065|0.014|0.249|21|0|55275.28745078|55277.33835439|55276.34597572|14.518|0.224|0.048|1.00399995|21|0|55275.28745078|55277.33835439|55276.34597572|12.311|1.499|0.327|2.26999998|13|0|55275.28745078|55277.33835439|55276.33337368|11.017|8.066|1.76|2.98099995|10|0|55275.28745078|55277.33835439|55276.33337368|13|16|-53|0|0|1||||||||||||||||||||||||||996500440|0.103|-67.0|1|15.327|0.057|14.8|0.08|14.477|0.089|3004089401241004146|1|0.0017038350458768|-0.001578435888921|-0.999997302739503|131000000|
+J174416.59-895200.8|266.0691589|-89.8668963|0.3244|0.3534|-0.0484|303.0750475|-27.0896342|269.977183|-66.4279167|1896.865|666.033|2403089401241005417|2403m894_ab41-005417|2403m894_ab41|5417|16.177|0.06|18.0|1.11199999|16.189|0.167|6.5|0.933099985|12.873||0.4|1.00899994|8.803||1.7|0.978100002|1.00600004|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|0nnn|ABUU|3|0000|16|24|2|24|0|23|1|23|24.653|24.655|23.908|23.51|0.0|0.0|0.0|0.0|8|h|8|h|0||0||53.5810013|2.9849|9.548|2.369|0.1|21.1040001|3.2414999|21.733|3.157|0.442|17.618|47.4070015|1095.98|25.054|3.788|22.2159996|12.7620001|298.854|9.834|1.458|15.663|0.072|0|0.261|15.488|0.133|0|0.319|12.535||32|0.825|8.827||32|0.576|16.473|0.086|0|16.435|0.172|0|13.62||32|9.76||32|15.924|0.072|0|15.807|0.133|0|13.36||32|9.403||32|15.545|0.065|0|15.389|0.116|0|14.382||32|9.058||32|15.218|0.059|1|15.028|0.101|1|13.009||32|8.765||32|14.888|0.053|1|14.652|0.086|1|12.804||32|8.504||32|14.534|0.045|1|14.253|0.069|1|12.762||32|8.268||32|14.169|0.038|1|13.86|0.055|1|12.231||32|8.052||32|13.821|0.032|1|13.505|0.045|1|11.899||32|7.758||32|16.145|0.3|0.061|1.253|22|0|55275.28732341|55277.20605032|55276.16402342|16.208|0.957|0.195|3.27399993|19|0|55275.28732341|55277.20605032|55276.16402342|13.805|4.767|0.994|2.98300004|12|0|55275.28732341|55277.20605032|55276.14460624|8.874|1.666|0.347|2.97900009|12|0|55275.28732341|55277.20605032|55276.14460624|23|5|70|0|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005417|1|-0.0001592535685106|-0.0023176304606939|-0.999997301610034|121000000|
+J054340.90-895200.7|85.9204574|-89.8668832|0.4495|0.4884|-0.0657|302.7887843|-27.1668679|270.0239355|-66.6934866|1896.16|665.732|600089401241004604|0600m894_ab41-004604|0600m894_ab41|4604|16.609|0.086|12.6|0.961300015|16.685|0.297|3.7|0.998399973|11.768|0.143|7.6|1.19500005|9.209||0.8|1.06500006|1.051|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0n1n|ABBU|7|0000|7|22|3|22|5|21|0|21|21.792|22.036|21.181|21.585|0.0|0.0|0.0|0.0|0||0||0||0||35.9970016|2.84710002|9.363|2.777|0.053|13.3660002|3.65840006|21.749|3.451|0.02|311.149994|41.0239983|1095.937|21.135|1.543|9.75129986|11.5419998|298.661|9.149|0.901|16.619|0.208|0|0.261|15.922|0.25|0|0.319|11.908||32|0.825|8.865||32|0.576|17.136|0.189|0|16.746|0.285|0|13.125||32|10.934||32|16.88|0.208|0|16.241|0.25|0|12.733||32|9.441||32|16.911|0.278|0|16.05|0.272|0|12.477||32|9.265||32|17.161|0.434|0|16.016|0.327|0|12.309||32|8.95||32|16.709||32|16.038|0.401|0|12.186||32|8.621||32|16.964||32|16.103|0.502|1|12.007||32|8.403||32|16.863||32|15.374||32|11.844||32|8.208||32|16.711||32|15.321||32|11.692||32|8.198||32|16.649|0.388|0.083|2.034|21|1|55275.28745078|55277.20605032|55276.22872649|16.631|1.995|0.425|3.44000006|12|1|55275.28745078|55277.20605032|55276.22872649|11.753|0.973|0.212|2.83500004|17|1|55275.28745078|55277.20605032|55276.21054115|10.611|6.498|1.418|3.09699988|13|0|55275.28745078|55277.20605032|55276.21054115|-12|-19|-43|0|0|1|||||||||||||||||||||||||||||0|||||||600089401241004604|1|0.0001652843609733|0.00231743811042|-0.9999973010772|101000000|
+J184739.54-895200.7|281.914753|-89.8668766|0.5165|0.5603|-0.1632|303.0814715|-27.1258823|270.068734|-66.4304384|2158.86|682.461|3004089401241005009|3004m894_ab41-005009|3004m894_ab41|5009|16.809|0.089|12.1|0.881799996|17.051|0.375|2.9|1.04799998|13.147||-0.2|1.11399996|9.213||0.8|1.02499998|1.01300001|1|0|0.0|0.0|0.0|0.001|0000|0000|0|1nnn|ACUU|3|0000|5|25|0|25|2|24|0|24|24.808|24.468|23.994|23.71|0.0|0.0|0.0|0.0|0||0||0||0||29.9619999|2.46749997|9.327|2.61|0.0|9.53950024|3.29480004|21.742|3.386|0.114|-9.00949955|43.6529999|1096.817|24.848|2.67|9.14169979|11.7939997|299.064|9.621|0.761|16.308|0.094|1|0.261|16.215|0.428|1|0.319|12.666||32|0.825|9.009||32|0.576|17.097|0.11|1|17.137|0.535|1|13.854||32|10.014||32|16.569|0.094|1|16.534|0.428|1|13.491||32|9.585||32|16.255|0.09|1|16.208|0.412|1|13.208||32|9.245||32|16.024|0.089|1|16.085|0.455|1|12.975||32|8.953||32|15.827|0.088|1|15.35||32|12.775||32|8.697||32|15.627|0.086|1|15.288||32|12.595||32|8.465||32|15.395|0.08|1|15.153||32|13.084||32|8.252||32|15.112|0.07|1|14.943||32|12.115||32|8.055||32|16.838|0.382|0.076|3.073|23|1|55275.28732341|55277.20605032|55276.19247154|16.843|1.568|0.314|2.39100003|16|0|55275.28732341|55277.20605032|55276.19247154|13.907|9.157|1.869|1.86600006|7|1|55275.28732341|55277.20605032|55276.17504875|9.871|3.664|0.748|4.66400003|13|0|55275.28732341|55277.20605032|55276.17504875|39|-12|-19|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005009|1|0.0004796884804069|-0.0022733836736319|-0.999997300809174|131000000|
+J230618.61-895200.1|346.5775612|-89.8666949|0.818|0.7338|-0.1111|302.9983092|-27.2476656|270.3255627|-66.529427|2129.011|691.501|89401241005217|0000m894_ab41-005217|0000m894_ab41|5217|17.139|0.132|8.2|0.825200021|16.82|0.308|3.5|0.837300003|13.192||-0.1|0.983500004|9.562||-0.2|1.05700004|0.919700027|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|3|23|1|23|0|22|0|22|23.696|23.763|22.934|22.638|0.0|0.0|0.0|0.0|0||0||0||0||22.0930004|2.68429995|9.25|2.822|0.0|11.8030005|3.34529996|21.702|3.38|0.083|-2.13129997|41.8919983|1099.204|23.732|1.694|-2.45760012|11.8629999|298.021|9.409|1.045|16.447|0.164|1|0.261|16.396|0.536|1|0.319|11.85||32|0.825|8.436||32|0.576|17.248|0.189|0|16.434||32|13.067||32|9.679||32|16.708|0.164|1|16.715|0.536|1|12.675||32|9.012||32|16.232|0.137|1|16.232|0.445|1|12.396||32|8.561||32|15.605|0.095|1|15.603|0.307|1|12.171||32|8.878|0.48|1|14.966|0.064|1|14.956|0.205|1|11.966||32|8.582|0.452|1|14.496|0.049|1|14.473|0.154|1|11.791||32|8.45|0.484|1|14.185|0.043|1|14.156|0.134|1|11.626||32|7.653||32|13.923|0.039|1|13.91|0.123|1|11.471||32|7.538||32|17.2|0.84|0.175|3.427|21|1|55275.55205887|55277.33835439|55276.44378378|16.948|1.735|0.362|2.51600003|12|0|55275.55205887|55277.33835439|55276.44378378|19.855|||3.87899995|11|0|55275.55205887|55277.33835439|55276.43620038||||2.58500004|11|0|55275.55205887|55277.33835439|55276.43620038|7|-63|-54|0|1|1|||||||||||||||||||||||||||||0|||||||89401241005217|1|0.0022630596378651|-0.0005400735282253|-0.999997293437167|131000000|
+J114527.58-895200.0|176.3649568|-89.8666898|0.1461|0.1387|0.0247|302.8894361|-27.000326|269.6654258|-66.5688045|2071.81|700.224|1802089401241003957|1802m894_ab41-003957|1802m894_ab41|3957|14.531|0.03|36.5|0.903100014|14.62|0.057|19.2|1.08500004|12.797||0.6|0.970899999|9.386||-1.1|0.992299974|0.983900011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|AAUU|3|0000|21|21|17|21|0|21|0|21|21.694|21.428|21.79|22.645|0.0|0.0|0.0|0.0|0||0||0||0||244.020004|6.68790007|9.929|2.758|0.085|89.5699997|4.67229986|21.838|3.468|0.069|27.1219997|46.6969986|1093.894|25.364|3.15|-15.4619999|13.9510002|298.154|10.148|1.69|14.472|0.029|1|0.261|14.531|0.087|1|0.319|12.438||32|0.825|8.62||32|0.576|15.123|0.03|0|15.316|0.096|0|13.686||32|9.782||32|14.733|0.029|1|14.85|0.087|1|13.263||32|9.196||32|14.552|0.031|1|14.636|0.092|1|12.969||32|8.747||32|14.419|0.034|1|14.509|0.102|1|12.772||32|8.402||32|14.295|0.036|1|14.41|0.111|1|12.589||32|8.144||32|14.178|0.039|1|14.335|0.123|1|12.389||32|7.889||32|14.077|0.041|1|14.319|0.14|1|12.129||32|7.626||32|13.985|0.043|1|14.371|0.169|1|11.857||32|8.1|0.499|1|14.541|0.06|0.013|0.368|20|0|55274.75810734|55276.80913826|55275.79780276|14.606|0.292|0.064|1.03600001|20|1|55274.75810734|55276.80913826|55275.79780276|15.685|||4.29899979|9|0|55274.75810734|55276.80913826|55275.79780276||||3.89899993|8|0|55274.75810734|55276.80913826|55275.79780276|55|-33|86|2|0|1||||||||||||||||||||||||||748927086|0.181|-42.8|1|15.359|0.073|14.867|0.08|14.816|0.134|1802089401241003957|1|-0.0023220180686268|0.0001475148609059|-0.999997293232064|111000000|
+J131923.79-895159.7|199.8491592|-89.8666093|0.5923|0.5555|0.1469|302.9501334|-26.9957559|269.6851591|-66.5151005|1931.004|681.069|1802089401241004868|1802m894_ab41-004868|1802m894_ab41|4868|16.953|0.108|10.0|0.891900003|15.977|0.141|7.7|0.928799987|13.098||-0.8|0.888300002|9.53||-0.1|0.967599988|0.910000026|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|0nnn|ABUU|3|0000|7|24|2|24|0|24|0|24|24.714|24.627|24.877|24.819|0.0|0.0|0.0|0.0|8|h|8|h|0||0||26.2269993|2.6105001|10.457|2.455|0.0|25.6630001|3.32319999|21.971|3.072|0.024|-36.1609993|45.6679993|1096.314|25.639|4.926|-0.743640006|12.2150002|298.667|9.972|1.331|17.032|0.506|1|0.261|16.113|0.448|1|0.319|12.433||32|0.825|8.668||32|0.576|17.06||32|16.235||32|13.742||32|10.739||32|17.293|0.506|1|16.432|0.448|1|13.258||32|9.244||32|16.511|0.318|1|15.924|0.362|1|12.844||32|8.897||32|15.701|0.187|1|15.289|0.25|1|12.442||32|8.606||32|15.061|0.125|1|14.718|0.179|1|12.688|0.416|1|8.344||32|14.61|0.097|1|14.3|0.143|1|12.332|0.352|1|8.107||32|14.283|0.084|1|13.994|0.126|1|12.065|0.322|1|7.892||32|13.982|0.073|1|13.711|0.112|1|11.807|0.291|1|7.692||32|16.907|0.52|0.106|4.175|21|1|55274.75810734|55276.80913826|55275.83323679|15.998|0.892|0.182|4.24100018|20|0|55274.75810734|55276.80913826|55275.83323679||||3.25300002|6|0|55274.75810734|55276.80913826|55275.83323679|12.008|||1.68599999|8|0|55274.75810734|55276.80913826|55275.83323679|7|67|79|0|1|0|||||||||||||||||||||||||||||0|||||||1802089401241004868|1|-0.0021897909096202|-0.0007904962398052|-0.999997289962061|121000000|
+J195757.22-895158.9|299.4884577|-89.8663791|0.103|0.0997|-0.0112|303.0758238|-27.1663217|270.1645847|-66.4443113|2053.938|701.812|3004089401241004036|3004m894_ab41-004036|3004m894_ab41|4036|13.571|0.026|42.5|1.14699996|13.619|0.031|34.6|1.06500006|13.089||0.3|1.00899994|9.638||-0.1|1.16999996|1.09500003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|25|25|25|25|0|25|1|25|25.665|25.703|24.921|24.736|0.0|0.0|0.0|0.0|0||0||0||0||590.940002|13.9069996|9.308|2.675|0.25|225.190002|6.51210022|21.752|3.358|0.595|11.2290001|40.4370003|1094.733|24.008|1.725|-1.37409997|11.0620003|299.374|9.743|0.705|13.55|0.024|0|0.261|13.581|0.041|0|0.319|12.744||32|0.825|9.06||32|0.576|14.189|0.025|0|14.357|0.045|0|13.926||32|10.055||32|13.811|0.024|0|13.9|0.041|0|13.569||32|9.636||32|13.665|0.027|0|13.704|0.043|0|13.295||32|11.935||32|13.592|0.031|0|13.586|0.048|0|12.984||32|8.951||32|13.534|0.035|1|13.48|0.052|1|12.757||32|8.68||32|13.459|0.039|1|13.349|0.055|1|12.617||32|8.391||32|13.309|0.039|1|13.147|0.053|1|12.362||32|8.14||32|13.01|0.034|1|12.825|0.045|1|11.993||32|7.977||32|13.571|0.038|0.008|0.198|24|0|55275.28732341|55277.33835439|55276.21893744|13.61|0.14|0.028|0.472000003|24|0|55275.28732341|55277.33835439|55276.21893744|13.71|3.67|0.734|2.55500007|10|0|55275.28732341|55277.33835439|55276.22158098||||4.50600004|10|0|55275.28732341|55277.33835439|55276.22158098|10|16|-35|0|0|0||||||||||||||||||||||||||1126886737|0.577|106.7|1|14.255|0.034|13.776|0.045|13.697|0.057|3004089401241004036|1|0.0011479827786301|-0.0020300067676465|-0.999997280600334|131000000|
+J202952.79-895158.7|307.4699588|-89.8663318|0.2561|0.25|-0.0733|303.0685316|-27.183756|270.2035572|-66.4544877|2005.295|699.371|3004089401241004488|3004m894_ab41-004488|3004m894_ab41|4488|15.819|0.048|22.5|0.974399984|15.494|0.095|11.4|0.935599983|12.991|0.445|2.4|0.913999975|9.527||-0.3|0.966899991|0.945200026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|10nn|AACU|7|0000|22|24|8|24|1|23|1|23|24.955|24.851|23.876|24.722|0.0|0.0|0.0|0.0|0||0||0||0||74.5279999|3.30920005|9.305|2.788|0.083|40.0379982|3.50169992|21.737|3.3|0.13|100.839996|41.3310013|1095.526|24.326|0.534|-3.8289001|12.25|299.328|9.739|0.494|15.474|0.092|1|0.261|15.249|0.213|1|0.319|12.099||32|0.825|8.548||32|0.576|16.253|0.106|0|16.106|0.25|0|13.387||32|9.562||32|15.735|0.092|1|15.568|0.213|1|12.924||32|9.124||32|15.378|0.085|1|15.263|0.208|1|12.478||32|8.779||32|15.067|0.08|1|15.053|0.212|1|12.095||32|8.485||32|14.764|0.073|1|14.866|0.216|1|12.49|0.517|1|8.224||32|14.465|0.065|1|14.638|0.206|1|12.111|0.431|1|7.988||32|14.194|0.059|1|14.392|0.192|1|11.844|0.392|1|7.772||32|13.959|0.055|1|14.165|0.179|1|11.634|0.371|1|7.573||32|15.819|0.252|0.051|0.935|23|1|55275.28732341|55277.33835439|55276.27705169|15.475|0.571|0.116|2.80599999|22|1|55275.28732341|55277.33835439|55276.27705169|12.86|1.978|0.412|4.10699987|15|0|55275.28732341|55277.33835439|55276.26254878||||4.97200012|10|0|55275.28732341|55277.33835439|55276.26254878|6|-23|-48|0|0|1|||||||||||||||||||||||||||||0|||||||3004089401241004488|1|0.0014192378909571|-0.0018515961651286|-0.999997278674022|131000000|
+J192454.94-895158.7|291.2289542|-89.8663289|0.9482|0.9927|-0.3023|303.0805365|-27.1475348|270.1210733|-66.4360616|2104.147|697.462|3004089401241005472|3004m894_ab41-005472|3004m894_ab41|5472|17.517|0.157|6.9|0.935299993|16.891||1.4|0.98119998|12.955||0.5|0.956900001|9.551||-0.5|1.11199999|0.992999971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|26|0|26|1|25|0|25|25.776|25.617|25.003|24.747|0.0|0.0|0.0|0.0|0||0||0||0||15.6059999|2.26009989|9.325|2.693|0.0|4.61709976|3.21959996|21.785|3.391|0.0|19.5960007|42.2939987|1096.323|24.737|0.0|-6.2572999|11.9870005|299.818|9.893|1.366|16.738||32|0.261|16.121||32|0.319|12.367||32|0.825|9.042||32|0.576|17.294||32|16.785||32|13.689||32|10.044||32|16.999||32|16.44||32|13.192||32|9.618||32|16.903||32|16.251||32|12.821||32|9.282||32|16.893||32|16.085||32|12.535||32|8.995||32|16.858||32|15.925||32|12.286||32|8.744||32|16.689||32|15.71||32|11.993||32|8.517||32|16.374||32|15.429||32|11.697||32|8.308||32|15.982||32|15.853|0.517|1|12.107|0.462|1|8.115||32|17.651|0.937|0.184|3.168|20|0|55275.28732341|55277.33835439|55276.23654396|17.346|2.851|0.559|3.26399994|11|0|55275.28732341|55277.33835439|55276.23654396|13.6|4.207|0.841|4.73799992|12|0|55275.28732341|55277.33835439|55276.22158098|11.644|||2.57299995|12|0|55275.28732341|55277.33835439|55276.22158098|-47|-37|-64|1|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005472|1|0.0008447690131846|-0.0021746843235366|-0.999997278553001|131000000|
+J052633.89-895158.5|81.6412111|-89.8662596|1.0033|1.177|0.2568|302.7917706|-27.1764904|270.0491385|-66.693021|1701.559|402.938|89401241005708|0000m894_ab41-005708|0000m894_ab41|5708|18.66||0.1|0.963500023|17.063|0.408|2.7|0.989600003|11.708|0.141|7.7|1.24899995|9.494||0.2|1.02699995|1.04999995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn1n|UCBU|6|0000|0|23|1|23|4|21|0|22|22.612|22.565|22.136|22.319|0.0|0.0|0.0|0.0|0||0||0||0||0.326669991|2.56030011|9.347|2.837|0.05|9.4343996|3.54570007|21.748|3.462|0.004|328.730011|42.5589981|1096.502|21.192|2.398|2.52220011|11.3699999|298.869|9.468|1.385|16.971|0.264|1|0.261|15.829|0.276|1|0.319|12.37||32|0.825|8.382||32|0.576|17.957|0.366|1|16.818|0.364|1|13.467||32|9.698||32|17.232|0.264|1|16.148|0.276|1|13.195||32|8.958||32|16.669|0.205|1|15.68|0.234|1|12.911||32|9.172|0.503|1|16.157|0.158|1|15.314|0.206|1|12.681||32|8.732|0.43|1|15.677|0.123|1|15.004|0.187|1|12.478||32|8.399|0.394|1|15.184|0.092|1|14.681|0.163|1|12.302||32|8.152|0.381|1|14.634|0.064|1|14.288|0.132|1|12.138||32|7.924|0.369|1|14.055|0.044|1|13.839|0.101|1|12.207||32|7.709|0.357|1|20.245|||1.716|9|0|55275.28745078|55277.20605032|55276.25684072|17.283|2.275|0.474|3.1789999|13|0|55275.28745078|55277.20605032|55276.25684072|11.66|0.724|0.158|4.35599995|19|1|55275.28745078|55277.20605032|55276.21054115|11.265|6.969|1.486|3.06500006|11|0|55275.28745078|55277.20605032|55276.24075991|33|34|-6|0|1|0|||||||||||||||||||||||||||||0|||||||89401241005708|1|0.0003393272636118|0.0023094126919058|-0.999997275731302|101000000|
+J112057.94-895158.5|170.2414541|-89.8662572|0.1311|0.1277|0.0196|302.8741862|-27.0046881|269.6683399|-66.5830278|2109.016|696.812|1802089401241003917|1802m894_ab41-003917|1802m894_ab41|3917|14.234|0.028|39.0|0.939300001|14.399|0.05|21.8|1.079|12.666||0.7|1.00199997|9.125||0.8|1.08099997|1.02199996|1|0|0.0|0.0|0.0|0.001|0000|0000|0|11nn|AAUU|3|0000|21|21|20|21|0|21|1|21|21.757|21.877|21.944|21.698|0.0|0.0|0.0|0.0|0||0||0||0||320.820007|8.2251997|9.891|2.786|0.023|109.760002|5.04460001|21.856|3.448|0.157|36.3110008|49.8370018|1094.948|25.741|1.337|10.3570004|12.5679998|298.065|9.717|0.34|14.128|0.022|0|0.261|14.385|0.074|0|0.319|12.133||32|0.825|8.639||32|0.576|14.808|0.024|0|15.15|0.081|0|13.381||32|9.577||32|14.389|0.022|0|14.704|0.074|0|12.958||32|9.215||32|14.189|0.023|1|14.512|0.08|1|12.619||32|8.871||32|14.061|0.025|1|14.418|0.09|1|12.343||32|8.578||32|13.95|0.027|1|14.357|0.103|1|12.078||32|8.317||32|13.811|0.028|1|14.259|0.111|1|12.548|0.514|1|8.083||32|13.58|0.027|1|13.99|0.1|1|12.282|0.468|1|7.867||32|13.157|0.021|1|13.448|0.07|1|12.047|0.433|1|7.668||32|14.246|0.069|0.015|0.378|20|0|55274.75810734|55276.80913826|55275.79780276|14.382|0.206|0.045|0.750999987|20|0|55274.75810734|55276.80913826|55275.79780276|12.989|2.992|0.653|2.09500003|8|0|55274.75810734|55276.80913826|55275.79780276|10.04|4.958|1.082|4.58599997|11|0|55274.75810734|55276.80913826|55275.79780276|24|-3|1|1|0|0||||||||||||||||||||||||||748883566|0.228|-15.2|1|14.905|0.045|14.398|0.055|14.258|0.079|1802089401241003917|1|-0.0023004756510964|0.0003956472771316|-0.999997275633794|111000000|
+J032442.09-895158.2|51.1753852|-89.8661804|0.0916|0.0946|-0.0152|302.838605|-27.233121|270.2118021|-66.6648213|2102.31|698.152|600089401241003934|0600m894_ab41-003934|0600m894_ab41|3934|13.173|0.024|45.0|0.970499992|13.253|0.028|38.9|1.14600003|11.657|0.132|8.2|1.09599996|8.685|0.24|4.5|0.984300017|1.04700005|1|0|0.0|0.0|0.0|0.0|0000|dd00|0|11nn|AABB|15|0000|23|23|23|23|3|22|2|22|23.876|24.503|23.424|22.961|0.0|0.0|0.0|0.0|1|d|1|d|0||0||853.059998|18.9430008|9.309|2.663|0.05|315.480011|8.11340046|21.76|3.363|0.1|344.519989|42.0|1099.339|22.102|0.0|53.2070007|11.7690001|298.451|9.272|0.558|13.177|0.01|0|0.261|13.276|0.029|0|0.319|12.252|0.452|0|0.825|8.972|0.528|1|0.576|13.804|0.01|0|14.017|0.032|0|12.978||32|9.363||32|13.438|0.01|0|13.595|0.029|0|13.077|0.452|0|9.548|0.528|1|13.311|0.01|1|13.45|0.033|1|12.567|0.366|1|9.102|0.478|1|13.261|0.012|1|13.408|0.039|1|12.155|0.311|1|8.824|0.483|1|13.233|0.013|1|13.401|0.046|1|11.825|0.276|1|8.571|0.483|1|13.204|0.014|1|13.401|0.055|1|11.549|0.253|1|8.302|0.466|1|13.158|0.016|1|13.385|0.063|1|11.312|0.237|1|8.052|0.45|1|13.081|0.017|1|13.344|0.069|1|11.114|0.227|1|7.845|0.445|17|13.172|0.032|0.007|0.132|22|0|55275.28745078|55277.33835439|55276.32874232|13.254|0.06|0.012|0.244000003|22|0|55275.28745078|55277.33835439|55276.32874232|11.616|0.579|0.124|3.18499994|20|0|55275.28745078|55277.33835439|55276.31592977|8.729|1.003|0.214|3.24699998|17|0|55275.28745078|55277.33835439|55276.31592977|36|22|25|1|0|0||||||||||||||||||||||||||769531472|0.21|-105.6|1|13.854|0.03|13.361|0.034|13.176|0.041|600089401241003934|1|0.0014642721341872|0.0018195859232339|-0.999997272503373|101000000|
+J180843.54-895157.9|272.1814262|-89.866092|0.2|0.208|-0.0315|303.0797382|-27.1032672|270.0127452|-66.4268974|2214.103|660.773|3004089401241004316|3004m894_ab41-004316|3004m894_ab41|4316|15.218|0.039|27.7|0.838|15.242|0.082|13.3|0.956499994|12.661||1.2|1.09899998|9.281||0.5|1.12399995|0.995700002|2|0|0.0|0.0|0.0|0.0|0000|0000|0|12nn|AAUU|3|0000|24|24|8|24|0|23|0|23|23.779|23.609|23.001|22.869|0.0|0.0|0.0|0.0|0||0||0||0||129.619995|4.68400002|9.606|2.559|0.072|50.4770012|3.79380012|21.747|3.264|0.231|50.7579994|42.9140015|1096.126|25.25|0.0|6.10790014|12.3170004|299.173|9.714|1.249|15.096|0.053|1|0.261|14.978|0.124|1|0.319|12.432||32|0.825|8.02||32|0.576|15.796|0.057|1|15.83|0.145|1|13.655||32|9.22||32|15.357|0.053|1|15.297|0.124|1|13.257||32|8.596||32|15.064|0.053|1|14.971|0.119|1|12.811||32|8.111||32|14.732|0.048|1|14.653|0.11|1|12.337||32|8.491|0.532|1|14.345|0.041|1|14.305|0.096|1|12.639|0.535|1|7.512||32|13.965|0.034|1|13.963|0.083|1|12.049|0.367|1|7.33||32|13.668|0.03|1|13.678|0.074|1|11.579|0.276|1|7.168||32|13.474|0.029|1|13.471|0.07|1|11.234|0.232|1|7.013||32|15.221|0.114|0.023|0.458|23|0|55275.28732341|55277.20605032|55276.16402342|15.197|0.457|0.093|2.24000001|22|1|55275.28732341|55277.20605032|55276.16402342|13.107|2.853|0.595|4.01599979|12|0|55275.28732341|55277.20605032|55276.14460624|11.338|||3.55900002|11|0|55275.28732341|55277.20605032|55276.14460624|-30|75|25|1|3|0||||||||||||||||||||||||||970505317|0.122|-142.8|1|15.812|0.086|15.646|0.163|15.167|0.183|3004089401241004316|1|0.0000889603750504|-0.0023354404647393|-0.999997268898214|131000000|
+J184322.39-895157.6|280.8432951|-89.8660233|1.0755|1.1632|-0.3316|303.082354|-27.1233627|270.0630288|-66.4291116|2165.77|682.435|3004089401241005512|3004m894_ab41-005512|3004m894_ab41|5512|17.645|0.179|6.1|0.924600005|17.097||0.8|0.953299999|12.736||0.9|1.03299999|9.538||-0.1|1.005|0.975399971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|25|0|25|2|24|0|24|24.764|24.611|23.95|23.75|0.0|0.0|0.0|0.0|0||0||0||0||13.868|2.28419995|9.336|2.573|0.084|2.66190004|3.2428|21.746|3.363|0.158|40.2130013|43.6559982|1097.313|24.969|1.499|-1.62849998|12.132|299.532|9.791|0.57|16.537|0.115|1|0.261|15.838||32|0.319|12.394||32|0.825|11.442||32|0.576|17.523|0.161|1|16.663||32|13.652||32|10.508||32|16.798|0.115|1|16.157||32|13.219||32|12.018||32|16.249|0.09|1|15.826||32|12.881||32|9.25||32|15.85|0.077|1|15.647||32|12.633||32|8.96||32|15.55|0.07|1|15.557||32|12.432||32|8.705||32|15.282|0.064|1|15.487||32|12.271||32|8.473||32|14.999|0.057|1|15.356||32|12.134||32|8.262||32|14.711|0.05|1|15.177||32|12.012||32|8.067||32|17.881|1.142|0.228|4.726|18|3|55275.28732341|55277.20605032|55276.19247154|18.423|6.952|1.39|3.00500011|14|0|55275.28732341|55277.20605032|55276.19247154|13.108|3.433|0.701|3.63899994|11|1|55275.28732341|55277.20605032|55276.17504875|11.835|||3.56500006|10|0|55275.28732341|55277.20605032|55276.17504875|60|-63|15|1|1|0|||||||||||||||||||||||||||||0|||||||3004089401241005512|1|0.0004398954055102|-0.0022965828078159|-0.999997266095982|131000000|
+J132719.16-895157.6|201.8298629|-89.8660085|0.1539|0.1509|0.0361|302.9553634|-26.9958018|269.6879326|-66.5105732|1919.123|678.292|1802089401241004045|1802m894_ab41-004045|1802m894_ab41|4045|15.034|0.034|32.0|1.34300005|14.46|0.046|23.8|0.997600019|11.242|0.1|10.8|1.05999994|9.384||0.4|0.958500028|1.08800006|1|0|0.0|0.0|0.0|0.0|0000|h000|0|000n|AAAU|7|0000|25|25|24|25|8|25|0|25|24.907|24.685|24.997|24.744|0.0|0.0|0.0|0.0|8|h|0||0||0||153.550003|4.8039999|10.158|2.296|0.0|103.800003|4.36199999|21.819|2.968|0.0|504.899994|46.5540009|1096.331|25.533|3.29|4.65789986|11.6420002|298.268|9.784|0.875|14.905|0.09|1|0.261|14.424|0.092|1|0.319|11.216|0.165|1|0.825|8.547||32|0.576|15.604|0.097|0|15.227|0.104|0|12.617|0.202|0|9.569||32|15.166|0.09|1|14.743|0.092|1|12.041|0.165|1|9.123||32|14.991|0.099|1|14.509|0.096|1|11.773|0.167|1|8.81||32|14.897|0.112|1|14.353|0.103|1|11.699|0.194|1|8.581||32|14.809|0.124|1|14.224|0.11|1|11.751|0.244|1|8.399||32|14.701|0.133|1|14.11|0.117|1|11.889|0.327|1|8.179||32|14.591|0.14|1|14.004|0.123|1|12.091|0.458|1|7.912||32|14.484|0.146|1|13.898|0.129|1|11.471||32|7.639||32|15.019|0.092|0.018|0.48|24|0|55274.75810734|55276.94144233|55275.87756502|14.465|0.238|0.048|0.843999982|24|0|55274.75810734|55276.94144233|55275.87756502|11.149|0.355|0.071|2.09500003|24|0|55274.75810734|55276.94144233|55275.87756502|10.993|8.872|1.774|1.50699997|11|0|55274.75810734|55276.94144233|55275.87756502|4|4|-20|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004045|1|-0.0021708953958231|-0.0008696089781953|-0.999997265492964|121000000|
+J130011.82-895157.2|195.0492809|-89.8659043|1.2422|1.1565|0.3181|302.9376663|-26.9941585|269.674908|-66.5255539|1958.478|691.489|1802089401241005480|1802m894_ab41-005480|1802m894_ab41|5480|17.699|0.198|5.5|0.797999978|17.523||-0.3|1.00600004|13.037||-1.1|1.08099997|8.946||1.4|1.04100001|0.969399989|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BUUU|1|0000|1|24|0|24|0|24|1|24|24.725|24.555|24.856|24.783|0.0|0.0|0.0|0.0|8|h|0||0||0||13.2010002|2.4052|10.166|2.411|0.0|-0.907329977|3.08769989|21.83|3.08|0.0|-53.6790009|48.3330002|1095.754|25.521|1.259|17.2269993|12.2980003|297.511|9.601|0.868|16.509||32|0.261|16.176||32|0.319|12.67||32|0.825|8.477||32|0.576|17.261||32|16.843||32|13.843||32|9.416||32|16.77||32|16.495||32|13.495||32|9.053||32|16.987|0.473|1|16.222||32|13.223||32|9.931||32|16.214|0.289|1|15.985||32|12.986||32|8.565||32|15.485|0.178|1|15.482||32|12.785||32|8.301||32|14.932|0.128|1|15.583|0.537|1|13.622||32|8.065||32|14.549|0.104|1|14.824|0.31|1|12.121||32|7.849||32|14.273|0.093|1|14.348|0.231|1|11.762||32|7.649||32|17.99|1.474|0.301|2.834|16|1|55274.75810734|55276.80913826|55275.83323679||||3.85500002|9|0|55274.75810734|55276.80913826|55275.83323679||||2.57200003|6|0|55274.75810734|55276.80913826|55275.83323679|10.261|5.376|1.097|2.75999999|9|0|55274.75810734|55276.80913826|55275.83323679|-15||11|0||0|||||||||||||||||||||||||||||0|||||||1802089401241005480|1|-0.0022601395695126|-0.0006076866004759|-0.999997261239311|121000000|
+J100149.97-895156.9|150.4582305|-89.8658303|0.198|0.1881|-0.0327|302.8303496|-27.0290436|269.7057699|-66.6265873|2222.675|656.782|1802089401241004106|1802m894_ab41-004106|1802m894_ab41|4106|15.242|0.038|28.9|1.07700002|15.326|0.086|12.6|0.908800006|13.05||-0.5|1.051|9.436|0.52|2.1|0.983399987|1.00300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|22nn|AAUC|11|0000|22|23|7|23|0|23|1|23|23.876|23.554|23.98|23.525|0.0|0.0|0.0|0.0|0||0||0||0||126.830002|4.39139986|9.412|2.748|0.074|46.7369995|3.7190001|21.803|3.381|0.555|-23.7089996|47.7340012|1096.316|25.876|2.185|26.6380005|12.7700005|297.861|9.905|0.444|15.237|0.059|0|0.261|15.132|0.114|0|0.319|12.598||32|0.825|8.366||32|0.576|15.833|0.058|0|15.887|0.123|0|13.786||32|9.399||32|15.498|0.059|0|15.451|0.114|0|13.423||32|8.942||32|15.422|0.071|0|15.293|0.127|0|13.137||32|8.661||32|15.433|0.089|1|15.246|0.15|1|12.905||32|8.534||32|15.471|0.11|1|15.226|0.178|1|12.703||32|8.444||32|15.484|0.132|1|15.18|0.202|1|12.521||32|8.273||32|15.426|0.146|1|15.064|0.211|1|12.355||32|8.02||32|15.311|0.151|1|14.89|0.207|1|12.203||32|7.784||32|15.279|0.136|0.028|0.904|22|1|55274.89041135|55276.94144233|55275.86561452|15.318|0.41|0.086|1.88300002|22|0|55274.89041135|55276.94144233|55275.86561452|14.332|8.115|1.692|4.74300003|9|0|55274.89041135|55276.94144233|55275.86561452|9.53|2.194|0.457|3.48200011|14|0|55274.89041135|55276.94144233|55275.86561452|63|-18|-22|3|0|0||||||||||||||||||||||||||806950197|0.256|-137.9|1|16.377|0.157|15.437|0.148|14.754||1802089401241004106|1|-0.0020372710808107|0.0011545939423604|-0.999997258215927|111000000|
+J070649.05-895156.8|106.7044163|-89.8657852|0.5289|0.562|-0.1611|302.7814627|-27.1190763|269.9025116|-66.6892298|2129.92|693.736|1201089401241004896|1201m894_ab41-004896|1201m894_ab41|4896|16.835|0.101|10.8|0.919399977|16.843|0.331|3.3|1.02900004|11.796|0.157|6.9|0.979799986|8.891||1.9|1.18599999|1.02499998|1|0|0.0|0.0|0.0|0.001|0000|0000|0|1nnn|ABBU|7|0000|6|21|1|21|2|19|0|20|23.662|23.149|22.963|22.911|0.0|0.0|0.0|0.0|0||0||0||0||29.2290001|2.71670008|9.384|2.643|0.07|11.5530005|3.52629995|21.816|3.244|0.063|302.970001|43.8380013|1096.292|22.452|4.036|21.3719997|11.3149996|298.296|9.252|1.448|16.481|0.16|1|0.261|16.365|0.353|1|0.319|11.764||32|0.825|8.365||32|0.576|17.178|0.17|1|17.205|0.408|1|12.994||32|9.318||32|16.742|0.16|1|16.684|0.353|1|12.589||32|8.941||32|16.471|0.163|1|16.286|0.318|1|12.316||32|8.595||32|16.176|0.157|1|15.827|0.26|1|12.116||32|8.3||32|15.918|0.15|1|15.405|0.213|1|11.966||32|8.04||32|15.788|0.16|1|15.083|0.188|1|11.836||32|7.803||32|15.717|0.178|1|14.815|0.172|1|11.744||32|7.587||32|15.493|0.169|1|14.527|0.153|1|11.884||32|7.388||32|16.95|0.597|0.13|4.231|20|3|55275.02284279|55276.94144233|55276.05616522|17.173|2.02|0.441|4.36000013|13|1|55275.02284279|55276.94144233|55276.05616522|11.818|0.68|0.156|1.97800004|15|0|55275.02284279|55276.94144233|55275.99083164|9.64|3.112|0.696|2.05299997|12|0|55275.02284279|55276.94144233|55276.02844256|-19|14|24|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004896|1|-0.0006733115285323|0.0022436358743581|-0.999997256371061|111000000|
+J120934.07-895156.6|182.3919917|-89.8657239|0.8748|0.8048|0.1749|302.9045379|-26.9961122|269.6628072|-66.5547425|2035.023|703.326|1802089401241005103|1802m894_ab41-005103|1802m894_ab41|5103|17.288|0.143|7.6|0.851400018|16.886|0.332|3.3|0.839600027|13.02||-1.1|1.16999996|9.474||-0.9|0.965900004|0.954400003|1|0|0.0|0.0|0.0|0.0|0000|h000|0|nnnn|BBUU|3|0000|2|23|1|23|0|23|0|23|23.439|23.577|23.466|23.873|0.0|0.0|0.0|0.0|8|h|0||0||0||19.2600002|2.54570007|9.826|2.684|0.099|11.1110001|3.39779997|21.873|3.391|0.0|-51.9109993|49.0750008|1094.825|25.864|0.486|-11.5019999|12.8610001|298.298|9.867|0.816|16.245|0.119|0|0.261|15.61||32|0.319|12.159||32|0.825|8.924||32|0.576|17.145|0.152|0|16.328||32|13.516||32|9.931||32|16.506|0.119|0|15.929||32|12.984||32|9.5||32|16.069|0.103|0|15.733||32|12.557||32|9.154||32|15.709|0.092|0|15.635||32|12.235||32|8.858||32|15.38|0.081|0|15.554||32|12.014||32|8.597||32|15.054|0.071|1|15.418||32|11.825||32|8.361||32|14.733|0.062|1|15.216||32|11.654||32|8.144||32|14.411|0.053|1|14.936||32|11.524||32|7.945||32|17.658|0.811|0.169|3.949|20|2|55274.75810734|55276.80913826|55275.80231653|16.931|2.127|0.444|2.80699992|12|0|55274.75810734|55276.80913826|55275.80231653|14.098|6.801|1.418|3.94799995|9|0|55274.75810734|55276.80913826|55275.80231653||||1.85899997|7|0|55274.75810734|55276.80913826|55275.80231653|87|35|-10|4|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005103|1|-0.0023415167300678|-0.0000978107767063|-0.999997253862457|121000000|
+J041903.42-895156.2|64.7642501|-89.8656208|0.1307|0.1369|-0.0091|302.813001|-27.2110143|270.1447379|-66.6821967|2019.346|702.682|600089401241004038|0600m894_ab41-004038|0600m894_ab41|4038|14.478|0.029|37.9|0.953199983|14.64|0.053|20.3|0.915700018|12.356|0.248|4.4|1.02100003|9.249|0.399|2.7|1.08099997|0.987900019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABC|15|0000|22|22|20|22|1|21|0|21|22.796|22.825|22.486|22.702|0.0|0.0|0.0|0.0|0||0||0||0||256.269989|6.75549984|9.375|2.638|0.082|87.9110031|4.33129978|21.802|3.332|0.1|181.050003|41.2960014|1096.64|21.692|1.023|31.6469994|11.6210003|298.512|9.204|0.812|14.477|0.049|1|0.261|14.548|0.083|1|0.319|12.597||32|0.825|8.809||32|0.576|15.092|0.049|1|15.313|0.09|1|13.789||32|9.775||32|14.738|0.049|1|14.867|0.083|1|13.422||32|9.385||32|14.602|0.055|1|14.681|0.089|1|13.148||32|9.175||32|14.529|0.064|1|14.58|0.101|1|12.915||32|8.882||32|14.496|0.075|1|14.519|0.115|1|12.709||32|8.623||32|14.488|0.087|1|14.512|0.134|1|12.531||32|8.39||32|14.484|0.101|1|14.547|0.161|1|12.367||32|8.175||32|14.479|0.116|1|14.577|0.19|1|12.216||32|7.977||32|14.483|0.063|0.013|0.303|21|0|55275.28745078|55277.33835439|55276.28285086|14.648|0.189|0.04|1.32099998|21|0|55275.28745078|55277.33835439|55276.28285086|12.259|0.632|0.138|6.03100014|17|0|55275.28745078|55277.33835439|55276.26724288|9.248|1.664|0.363|3.52800012|13|0|55275.28745078|55277.33835439|55276.26724288|-4|10|-24|0|0|0||||||||||||||||||||||||||922165362|0.174|112.1|1|15.025|0.059|14.713|0.082|14.466|0.122|600089401241004038|1|0.0009999283706842|0.0021215189723939|-0.999997249646469|101000000|
+J050057.38-895155.9|75.239112|-89.8655453|0.9908|1.1073|0.2971|302.7979835|-27.1904275|270.0865747|-66.6907025|1956.021|691.82|600089401241005820|0600m894_ab41-005820|0600m894_ab41|5820|18.784||-0.8|0.943799973|17.315|0.511|2.1|1.22300005|11.707|0.143|7.6|1.13699996|9.334|0.429|2.5|1.00699997|1.074|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UCBC|14|0000|0|22|1|22|2|21|1|21|22.967|23.215|22.608|22.63|0.0|0.0|0.0|0.0|0||0||0||0||-1.86210001|2.42820001|9.336|2.745|0.085|7.48479986|3.52570009|21.782|3.4|0.128|329.0|43.4700012|1096.595|21.611|1.843|29.2779999|11.5799999|298.237|9.049|0.488|17.208||32|0.261|15.849||32|0.319|12.378|0.367|1|0.825|8.426||32|0.576|17.94||32|16.555||32|13.941|0.524|0|9.492||32|17.469||32|16.168||32|13.203|0.367|1|9.002||32|17.038||32|15.895||32|12.642|0.281|1|8.591||32|17.326|0.541|1|15.577||32|12.216|0.233|1|8.938|0.537|1|16.629|0.344|1|15.216||32|11.874|0.204|1|8.598|0.494|1|16.05|0.239|1|15.459|0.414|1|11.56|0.179|1|8.353|0.485|1|15.465|0.162|1|14.908|0.29|1|11.287|0.16|1|8.116|0.472|1|14.763|0.098|1|14.306|0.191|1|11.051|0.146|1|7.91|0.466|1||||2.147|7|0|55275.28745078|55277.20605032|55276.25579157|18.189|4.7|1.002|3.5940001|11|3|55275.28745078|55277.20605032|55276.25579157|11.686|0.628|0.137|2.4849999|18|0|55275.28745078|55277.20605032|55276.23889505|9.696|2.42|0.528|4.21799994|13|0|55275.28745078|55277.20605032|55276.23889505|96|57|-16|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241005820|1|0.0005978994112709|0.0022692295134916|-0.999997246553064|101000000|
+J183001.85-895155.2|277.507732|-89.8653609|0.7773|0.896|-0.1937|303.0825214|-27.1155183|270.0439893|-66.4272178|2185.471|676.621|3004089401241005177|3004m894_ab41-005177|3004m894_ab41|5177|17.508|0.162|6.7|0.870500028|16.688|0.268|4.0|0.950399995|12.494|0.278|3.9|1.06900001|9.381||0.3|0.944700003|0.955799997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|1|24|1|24|2|23|1|23|24.257|24.726|23.732|23.478|0.0|0.0|0.0|0.0|0||0||0||0||15.7329998|2.34430003|9.433|2.584|0.396|13.3260002|3.29460001|21.765|3.365|0.249|159.389999|40.875|1096.337|24.797|7.175|3.89969993|12.0679998|299.294|9.71|0.475|16.713||32|0.261|15.768||32|0.319|12.446|0.394|1|0.825|8.912||32|0.576|17.238||32|16.433||32|13.277||32|9.928||32|16.974||32|16.087||32|13.271|0.394|1|9.488||32|16.895||32|15.918||32|12.68|0.296|1|9.143||32|16.747||32|15.827||32|12.24|0.245|1|11.05||32|16.543||32|15.787||32|11.899|0.216|1|9.332||32|16.362||32|16.308||32|11.645|0.203|1|8.259||32|16.071||32|15.618||32|11.491|0.204|1|8.01||32|15.665||32|17.8||32|11.39|0.214|1|7.813||32|17.545|0.808|0.165|1.801|20|0|55275.28732341|55277.20605032|55276.16402342|17.005|1.934|0.395|4.04199982|16|1|55275.28732341|55277.20605032|55276.16402342|12.548|1.669|0.348|3.97000003|15|1|55275.28732341|55277.20605032|55276.14460624|10.066|5.072|1.058|3.6789999|10|0|55275.28732341|55277.20605032|55276.14460624|25|-48|-35|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241005177|1|0.000307037024708|-0.0023297482349621|-0.999997238996902|131000000|
+J081714.03-895155.1|124.308485|-89.8653308|0.546|0.5362|-0.1658|302.7911421|-27.0788413|269.8083164|-66.6718311|2022.65|703.693|1201089401241004814|1201m894_ab41-004814|1201m894_ab41|4814|16.752|0.093|11.6|0.765200019|16.579|0.26|4.2|0.960300028|12.505|0.299|3.6|1.08399999|9.523||-0.5|0.868900001|0.915099978|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|8|22|1|22|1|21|1|21|22.663|22.626|21.873|21.643|0.0|0.0|0.0|0.0|0||0||0||0||31.566|2.71799994|9.399|2.665|0.177|14.7329998|3.5322001|21.861|3.295|0.028|157.699997|43.4160004|1095.91|23.522|1.626|-6.22959995|12.3000002|298.169|9.451|0.963|15.595|0.113|1|0.261|15.267|0.122|1|0.319|12.176||32|0.825|8.805||32|0.576|16.689|0.174|1|16.456|0.193|1|13.392||32|9.82||32|15.856|0.113|1|15.586|0.122|1|13.001||32|9.381||32|15.111|0.074|1|14.886|0.083|1|12.717||32|9.037||32|14.524|0.053|1|14.348|0.063|1|12.834||32|8.744||32|14.166|0.047|1|13.991|0.055|1|12.37||32|8.484||32|13.989|0.047|1|13.784|0.053|1|12.19||32|8.249||32|13.908|0.05|1|13.661|0.055|1|12.025||32|8.033||32|13.857|0.055|1|13.559|0.058|1|11.874||32|7.834||32|16.688|0.398|0.085|2.273|20|0|55274.89041135|55276.94144233|55275.92497939|16.777|1.466|0.312|2.9000001|14|0|55274.89041135|55276.94144233|55275.92497939|12.55|1.26|0.275|4.1789999|17|1|55274.89041135|55276.94144233|55275.8923299||||3.41400003|7|0|55274.89041135|55276.94144233|55275.8923299|-1|11|82|0|0|2|||||||||||||||||||||||||||||0|||||||1201089401241004814|1|-0.0013248097123267|0.0019414807347236|-0.999997237762076|111000000|
+J021305.54-895154.6|33.2730972|-89.8651907|0.8415|0.8191|0.2912|302.8790233|-27.2544896|270.2841922|-66.6344128|1887.229|37.842|2403089401241005053|2403m894_ab41-005053|2403m894_ab41|5053|18.831||-4.0|0.836300015|17.42||-0.6|0.91049999|11.523|0.115|9.5|1.04999995|9.469||0.2|1.01499999|0.940699995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|23|0|23|3|22|1|22|22.951|23.479|22.342|21.846|0.0|0.0|0.0|0.0|0||0||0||0||-9.36989975|2.32500005|9.245|2.767|0.078|-2.19230008|3.39720011|21.775|3.393|0.041|389.660004|41.1969986|1099.628|22.48|2.258|2.87140012|11.4910002|297.888|9.122|1.266|17.571||32|0.261|16.526||32|0.319|11.671||32|0.825|8.504||32|0.576|18.385||32|17.218||32|12.946||32|9.521||32|17.832||32|16.845||32|12.496||32|9.08||32|17.133||32|16.476||32|12.194||32|8.73||32|16.791|0.286|1|15.891||32|11.964||32|8.426||32|15.923|0.156|1|16.065|0.519|1|11.774||32|8.159||32|15.416|0.116|1|15.539|0.379|1|11.625||32|7.916||32|15.168|0.108|1|15.355|0.373|1|11.489||32|7.694||32|15.058|0.113|1|15.388|0.445|1|11.393||32|7.49||32||||3.004|5|0|55275.55205887|55277.33835439|55276.39777605||||3.68600011|9|0|55275.55205887|55277.33835439|55276.39777605|11.528|0.371|0.079|2.18799996|20|0|55275.55205887|55277.33835439|55276.3881014||||3.74000001|9|0|55275.55205887|55277.33835439|55276.3881014|99|-10|54|0|0|1|||||||||||||||||||||||||||||0|||||||2403089401241005053|1|0.0019671466548961|0.0012908520344754|-0.999997232013701|101000000|
+J010608.14-895154.5|16.5339242|-89.8651497|0.5114|0.4854|0.1519|302.9221939|-27.2627291|270.325492|-66.5987481|1947.519|690.481|89401241005012|0000m894_ab41-005012|0000m894_ab41|5012|16.586|0.085|12.8|0.925700009|16.472|0.245|4.4|0.745899975|12.848|0.44|2.5|1.03799999|9.172||0.7|0.942300022|0.907599986|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABCU|7|0000|10|20|1|20|0|19|0|19|22.474|22.655|21.872|21.815|0.0|0.0|0.0|0.0|0||0||0||0||36.7649994|2.8815999|9.267|2.624|0.0|16.2649994|3.6651001|21.762|3.38|0.0|115.029999|46.5740013|1100.68|23.433|2.13|8.93500042|12.5290003|298.394|9.436|0.505|16.297|0.141|1|0.261|15.511||32|0.319|12.579||32|0.825|8.831||32|0.576|17.013|0.155|0|16.207||32|13.753||32|9.756||32|16.558|0.141|1|15.83||32|13.404||32|9.407||32|16.234|0.135|1|15.559||32|13.131||32|9.055||32|15.941|0.128|1|15.306||32|12.894||32|8.762||32|15.67|0.12|1|15.062||32|12.693||32|8.495||32|15.406|0.112|1|14.851||32|12.505||32|8.257||32|15.156|0.103|1|14.691||32|12.342||32|8.04||32|14.969|0.1|1|14.592||32|12.189||32|7.84||32|16.595|0.42|0.094|1.82|19|1|55275.55205887|55277.33835439|55276.42869092|16.513|1.215|0.272|3.54399991|15|0|55275.55205887|55277.33835439|55276.42869092|12.526|1.174|0.269|1.41700006|11|0|55275.55205887|55277.33835439|55276.41911578|10.919|6.154|1.412|4.22599983|10|0|55275.55205887|55277.33835439|55276.41911578|11|-21|54|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005012|1|0.0022562622583218|0.0006697887060755|-0.99999723032802|101000000|
+J044441.88-895154.4|71.1745202|-89.865114|0.074|0.0711|-0.0147|302.8028651|-27.1989461|270.1099882|-66.688341|1980.12|698.593|600089401241003885|0600m894_ab41-003885|0600m894_ab41|3885|10.977|0.022|48.6|0.9551|11.022|0.02|53.3|1.02699995|10.63|0.056|19.4|1.13300002|9.337|0.416|2.6|1.08899999|1.046|1|0|0.0|0.0|0.0|0.0|0000|0000|0|111n|AAAC|15|0000|23|23|23|23|18|22|0|22|23.65|23.742|22.921|22.822|0.0|0.0|0.0|0.0|0||0||0||0||6445.2002|132.589996|9.321|2.74|0.044|2461.3999|46.2179985|21.732|3.441|0.136|887.119995|45.7159996|1096.699|21.492|0.706|29.191|11.177|298.777|9.017|0.266|10.974|0.006|0|0.261|11.031|0.007|0|0.319|10.879|0.092|0|0.825|8.658||32|0.576|11.603|0.006|0|11.785|0.008|0|12.336|0.118|0|9.67||32|11.235|0.006|0|11.35|0.007|0|11.704|0.092|0|9.234||32|11.107|0.006|0|11.188|0.007|0|11.322|0.083|0|8.906||32|11.058|0.006|0|11.128|0.008|0|11.07|0.081|0|8.6||32|11.035|0.006|1|11.102|0.008|1|10.896|0.082|1|8.341||32|11.022|0.007|1|11.088|0.009|1|10.76|0.084|1|8.147||32|11.013|0.007|1|11.077|0.01|1|10.637|0.086|1|7.916||32|11.007|0.007|1|11.069|0.011|1|10.516|0.087|1|7.697||32|10.974|0.028|0.006|0.133|22|0|55275.28745078|55277.33835439|55276.30285952|11.023|0.034|0.007|0.135000005|22|0|55275.28745078|55277.33835439|55276.30285952|10.609|0.292|0.062|1.80700004|21|1|55275.28745078|55277.33835439|55276.28887047|9.466|1.531|0.326|3.44400001|15|0|55275.28745078|55277.33835439|55276.28887047|36|44|10|1|1|0||||||||||||||||||||||||||1181143811|0.418|20.1|1|11.732|0.024|11.177|0.024|11.011|0.02|600089401241003885|1|0.0007596699062744|0.0022282670421677|-0.999997228859972|101000000|
+J052104.30-895154.3|80.2679501|-89.8651072|0.9358|1.0448|0.1662|302.7919146|-27.1799072|270.057633|-66.6936499|1926.194|683.526|600089401241005752|0600m894_ab41-005752|0600m894_ab41|5752|18.045|0.27|4.0|0.827700019|17.187||0.6|1.01699996|11.957|0.17|6.4|1.00999999|9.133|0.358|3.0|1.148|0.996200025|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBC|13|0000|0|23|0|23|2|22|0|22|22.525|22.67|22.263|22.32|0.0|0.0|0.0|0.0|0||0||0||0||9.5934|2.38639998|9.335|2.815|0.059|1.95659995|3.23210001|21.729|3.44|0.183|261.350006|40.9059982|1096.159|20.947|0.875|35.2080002|11.6090002|298.379|9.052|1.03|16.567|0.189|0|0.261|15.936||32|0.319|12.605||32|0.825|8.314||32|0.576|17.504|0.253|0|16.693||32|13.79||32|9.423||32|16.828|0.189|0|16.255||32|13.43||32|8.89||32|16.38|0.163|0|16.606|0.508|0|13.078||32|9.13|0.483|1|15.909|0.131|1|15.897|0.327|1|12.724||32|8.68|0.409|1|15.239|0.085|1|15.061|0.182|1|12.421||32|8.361|0.379|1|14.467|0.05|1|14.303|0.107|1|12.166||32|8.059|0.348|1|13.82|0.032|1|13.721|0.073|1|11.938||32|7.838|0.34|1|13.413|0.026|1|13.337|0.059|1|11.691||32|7.748|0.369|1|18.046|1.128|0.235|3.362|17|0|55275.28745078|55277.20605032|55276.25684072|19.068|||3.13499999|10|0|55275.28745078|55277.20605032|55276.25684072|11.926|1.173|0.25|2.83599997|16|1|55275.28745078|55277.20605032|55276.24075991|9.111|1.965|0.419|5.03700018|15|0|55275.28745078|55277.20605032|55276.24075991|10|56|-40|0|1|1|||||||||||||||||||||||||||||0|||||||600089401241005752|1|0.0003979760986675|0.0023204398425244|-0.999997228583141|101000000|
+J225259.77-895154.2|343.2490743|-89.8650585|0.1953|0.1787|-0.0295|303.006911|-27.2454553|270.3243332|-66.5214817|2149.82|690.327|89401241004466|0000m894_ab41-004466|0000m894_ab41|4466|15.362|0.04|27.4|0.866699994|14.929|0.068|15.9|0.952600002|10.924|0.073|14.9|1.10599995|9.024|0.325|3.3|1.03699994|0.985599995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|011n|AAAB|15|0000|23|23|15|23|14|22|2|22|23.758|23.751|22.92|22.413|0.0|0.0|0.0|0.0|0||0||0||0||113.57|4.1388998|9.164|2.773|0.0|67.3649979|4.23339987|21.738|3.431|0.011|676.909973|45.5530014|1099.983|24.509|0.0|38.9360008|11.6540003|298.144|9.53|0.512|15.223|0.063|1|0.261|14.831|0.113|1|0.319|11.038|0.122|0|0.825|8.088||32|0.576|15.882|0.065|0|15.606|0.124|0|12.423|0.147|0|9.128||32|15.484|0.063|1|15.15|0.113|1|11.863|0.122|0|8.664||32|15.293|0.068|1|14.916|0.118|1|11.584|0.123|1|8.293||32|15.031|0.066|1|14.679|0.118|1|11.457|0.136|1|8.072||32|14.648|0.056|1|14.379|0.108|1|11.407|0.156|1|8.0||32|14.291|0.048|1|14.096|0.098|1|11.402|0.183|1|7.91||32|14.014|0.043|1|13.871|0.093|1|11.433|0.22|1|7.695||32|13.764|0.039|1|13.674|0.089|1|11.507|0.271|1|7.495||32|15.364|0.16|0.033|0.598|22|0|55275.55205887|55277.33835439|55276.44378378|14.901|0.3|0.063|1.66600001|22|0|55275.55205887|55277.33835439|55276.44378378|10.885|0.308|0.066|1.40699995|21|0|55275.55205887|55277.33835439|55276.43620038|9.2|1.501|0.32|2.82599998|16|0|55275.55205887|55277.33835439|55276.43620038|15|30|60|0|1|2|||||||||||||||||||||||||||||0|||||||89401241004466|1|0.0022552335865262|-0.0006787880068204|-0.99999722658031|131000000|
+J050747.78-895153.8|76.949098|-89.8649636|1.3634|1.5667|0.3978|302.7953677|-27.1870965|270.0770679|-66.6922385|1804.583|95.651|3004089401241005848|3004m894_ab41-005848|3004m894_ab41|5848|18.813||-1.9|0.849600017|16.94||1.1|1.10599995|12.102|0.195|5.6|1.06400001|9.624||0.0|1.06599998|1.01699996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|23|1|23|0|22|0|22|22.692|22.534|21.986|22.403|0.0|0.0|0.0|0.0|0||0||0||0||-4.44829988|2.36529994|9.352|2.752|0.373|3.79480004|3.38720012|21.741|3.394|0.0|228.600006|41.0680008|1096.724|21.329|2.069|0.0842460021|11.1630001|298.504|9.227|0.314|17.353|0.356|1|0.261|16.299|0.426|1|0.319|12.695|0.495|1|0.825|8.842|0.475|1|0.576|17.792||32|16.574||32|13.377||32|9.38||32|17.614|0.356|1|16.618|0.426|1|13.52|0.495|1|9.418|0.475|1|16.894|0.238|1|15.98|0.306|1|12.887|0.355|1|8.945|0.419|1|16.363|0.182|1|15.446|0.232|1|12.361|0.269|1|8.699|0.435|1|15.93|0.147|1|15.03|0.191|1|11.939|0.218|1|8.614|0.507|1|15.488|0.116|1|14.674|0.162|1|11.595|0.186|1|7.768||32|14.936|0.081|1|14.316|0.136|1|11.316|0.165|1|7.631||32|14.347|0.055|1|13.931|0.11|1|11.099|0.154|1|7.487||32||||2.619|8|0|55275.28745078|55277.20605032|55276.25684072||||3.60299993|8|0|55275.28745078|55277.20605032|55276.25684072|12.027|1.113|0.237|2.74399996|16|0|55275.28745078|55277.20605032|55276.24075991|10.869|7.671|1.635|3.21000004|12|0|55275.28745078|55277.20605032|55276.24075991|-11|-88|-36|0|2|0|||||||||||||||||||||||||||||0|||||||3004089401241005848|1|0.0005322109892714|0.0022959511557226|-0.99999722267602|101000000|
+J202026.36-895153.7|305.1098641|-89.8649246|0.1566|0.1515|-0.0384|303.0724511|-27.1792334|270.1944403|-66.4500894|2019.337|704.507|3004089401241004190|3004m894_ab41-004190|3004m894_ab41|4190|14.862|0.033|32.9|1.57299995|14.607|0.053|20.6|0.990499973|12.455||1.6|1.04200006|9.391||0.3|1.08700001|1.17299998|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|AAUU|3|0000|23|23|18|23|1|22|0|22|26.334|25.363|25.291|25.502|0.0|0.0|0.0|0.0|8|h|0||0||0||180.009995|5.47599983|9.283|2.777|0.0|90.5839996|4.3895998|21.788|3.393|0.153|72.6309967|46.3129997|1097.513|25.384|0.0|3.98009992|11.8970003|298.978|9.559|0.315|14.344|0.026|0|0.261|14.24|0.079|0|0.319|11.804|0.199|0|0.825|8.658||32|0.576|15.19|0.032|0|15.156|0.098|0|13.487|0.316|0|9.784||32|14.605|0.026|0|14.559|0.079|0|12.629|0.199|0|9.234||32|14.193|0.023|1|14.145|0.07|1|12.08|0.157|1|8.722||32|13.745|0.019|1|13.689|0.057|1|11.685|0.134|1|8.336||32|13.105|0.014|1|13.052|0.039|1|11.323|0.116|1|8.047||32|12.296|0.009|1|12.294|0.023|1|10.949|0.096|1|7.808||32|11.514|0.007|1|11.589|0.015|1|10.58|0.079|1|7.617||32|10.926|0.006|1|11.054|0.011|1|10.27|0.068|1|7.456||32|14.862|0.09|0.019|0.316|22|0|55275.28732341|55277.33835439|55276.24529173|14.595|0.247|0.052|1.03299999|22|0|55275.28732341|55277.33835439|55276.24529173|12.782|2.791|0.595|3.95499992|14|0|55275.28732341|55277.33835439|55276.22868597||||2.63400006|10|0|55275.28732341|55277.33835439|55276.22868597|-29|-6|3|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004190|1|0.0013559120649844|-0.0019285618642442|-0.999997221071943|131000000|
+J194707.77-895153.5|296.7823978|-89.8648712|0.2785|0.2816|-0.0885|303.0793301|-27.1605936|270.1523345|-66.4400019|2070.699|705.082|3004089401241004549|3004m894_ab41-004549|3004m894_ab41|4549|15.957|0.051|21.4|0.976700008|15.851|0.127|8.5|1.01499999|12.721||1.0|1.04700005|9.644||-0.3|1.07000005|1.02400005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|21nn|ABUU|3|0000|20|26|5|26|0|25|0|25|25.673|25.671|24.829|24.637|0.0|0.0|0.0|0.0|0||0||0||0||65.6230011|3.07130003|9.328|2.688|0.069|28.8199997|3.37549996|21.779|3.434|0.118|43.5229988|42.9029999|1095.646|24.162|3.893|-2.95180011|10.9989996|299.095|9.536|0.651|15.731|0.151|1|0.261|15.397|0.189|1|0.319|12.196||32|0.825|8.768||32|0.576|16.447|0.165|1|16.261|0.225|1|13.547||32|9.839||32|15.992|0.151|1|15.716|0.189|1|13.021||32|9.344||32|15.697|0.149|1|15.37|0.179|1|12.547||32|8.928||32|15.436|0.146|1|15.079|0.17|1|12.792|0.423|1|8.673||32|15.188|0.14|1|14.832|0.163|1|12.435|0.366|1|8.451||32|14.843|0.12|1|14.546|0.148|1|12.19|0.345|1|8.256||32|14.358|0.089|1|14.159|0.121|1|12.003|0.337|1|9.499||32|13.91|0.068|1|13.77|0.097|1|11.796|0.321|1|10.76||32|15.959|0.307|0.06|1.162|25|1|55275.28732341|55277.33835439|55276.23654396|15.784|0.72|0.141|2.8210001|23|1|55275.28732341|55277.33835439|55276.23654396|13.861|4.409|0.882|4.64300013|14|0|55275.28732341|55277.33835439|55276.22158098||||1.99800003|11|0|55275.28732341|55277.33835439|55276.22158098|57|-22|7|2|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004549|1|0.0010627211266541|-0.0021054372215356|-0.999997218875089|131000000|
+J043306.67-895153.4|68.2778302|-89.8648384|1.4135|1.5342|0.5908|302.8067939|-27.2048159|270.1263981|-66.6862219|1997.618|702.294|600089401241005711|0600m894_ab41-005711|0600m894_ab41|5711|18.802||-2.1|0.788500011|16.956||1.1|0.839900017|12.014|0.192|5.7|0.978699982|9.516||-0.5|1.00300002|0.897599995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|0|22|0|22|1|21|0|21|23.476|23.484|22.925|22.753|0.0|0.0|0.0|0.0|0||0||0||0||-4.99469995|2.38879991|9.358|2.697|0.194|3.61969995|3.39650011|21.769|3.35|0.107|248.039993|43.8240013|1096.991|21.787|0.349|-6.68149996|12.3769999|298.94|9.477|0.694|17.199|0.534|0|0.261|15.923||32|0.319|12.357||32|0.825|8.867||32|0.576|17.361||32|16.688||32|13.549||32|10.002||32|17.46|0.534|0|16.242||32|13.182||32|9.443||32|16.637|0.322|0|15.811||32|12.908||32|8.772||32|15.744|0.176|0|15.81|0.367|0|12.675||32|8.318||32|14.744|0.085|1|14.785|0.173|1|12.471||32|8.005||32|13.667|0.038|1|13.672|0.074|1|12.289||32|7.763||32|12.611|0.017|1|12.661|0.034|1|12.124||32|7.598||32|11.812|0.011|1|11.91|0.02|1|11.788||32|7.471||32||||2.79|6|0|55275.28745078|55277.33835439|55276.28285086|18.975|||2.68199992|10|0|55275.28745078|55277.33835439|55276.28285086|11.968|0.883|0.193|3.68899989|17|0|55275.28745078|55277.33835439|55276.26724288|11.121|9.1|1.986|3.51799989|8|0|55275.28745078|55277.33835439|55276.26724288|90|39|1|1|1|0|||||||||||||||||||||||||||||0|||||||600089401241005711|1|0.0008730850893224|0.0021914972654688|-0.99999721752721|101000000|
+J153029.29-895152.8|232.622047|-89.8646871|0.5682|0.6066|0.1685|303.029071|-27.0241077|269.7943819|-66.4530475|2095.746|703.057|2403089401241005723|2403m894_ab41-005723|2403m894_ab41|5723|17.052|0.114|9.5|0.990100026|15.926|0.139|7.8|0.881799996|12.944||-0.8|0.941100001|9.47||-0.6|0.88380003|0.921999991|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|0nnn|BBUU|3|0000|4|23|1|23|0|22|0|22|23.763|23.192|22.696|23.369|0.0|0.0|0.0|0.0|8|h|8|h|0||0||23.9500008|2.51480007|9.88|2.358|0.078|26.8929996|3.44059992|21.8|3.18|0.165|-39.6279984|52.6300011|1095.254|25.828|5.439|-8.31729984|12.9169998|298.764|10.023|1.552|16.057||32|0.261|15.926|0.401|1|0.319|12.399||32|0.825|8.722||32|0.576|16.713||32|16.796|0.477|1|13.935||32|9.731||32|16.318||32|16.245|0.401|1|13.224||32|9.298||32|16.081||32|15.991|0.411|1|12.894||32|8.951||32|17.044||32|15.936|0.486|1|12.629||32|8.656||32|15.852||32|15.221||32|12.433||32|8.396||32|15.667||32|15.274||32|12.236||32|8.159||32|15.506||32|15.339||32|12.063||32|7.943||32|15.352||32|15.965||32|11.944||32|7.744||32|17.052|0.638|0.133|2.312|20|0|55274.89041135|55276.94144233|55275.92886822|15.897|0.645|0.134|1.83800006|20|0|55274.89041135|55276.94144233|55275.92886822||||6.21700001|8|0|55274.89041135|55276.94144233|55275.89787957||||4.02699995|9|0|55274.89041135|55276.94144233|55275.89787957|-2|38|50|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005723|1|-0.0014336893091964|-0.0018766839605267|-0.99999721129225|121000000|
+J215204.86-895152.6|328.0202628|-89.8646236|0.4215|0.3948|-0.099|303.0392642|-27.2241094|270.2878492|-66.4887463|1884.013|666.243|3004089401241004717|3004m894_ab41-004717|3004m894_ab41|4717|16.231|0.07|15.6|0.836300015|16.645||1.7|1.07200003|12.494||1.7|1.00199997|8.981||1.1|0.993700027|0.972299993|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|AUUU|1|0000|13|22|0|22|1|21|0|21|22.704|22.943|22.628|22.791|0.0|0.0|0.0|0.0|0||0||0||0||51.0169983|3.27390003|9.237|2.857|0.0|6.41239977|3.7276001|21.68|3.467|0.07|72.3590012|43.5309982|1098.224|24.851|1.651|14.7539997|12.8760004|298.094|9.757|1.039|15.933|0.085|0|0.261|15.863||32|0.319|11.698||32|0.825|8.479||32|0.576|16.608|0.091|0|16.509||32|12.927||32|9.63||32|16.194|0.085|0|16.182||32|12.523||32|9.055||32|15.982|0.09|1|15.981||32|12.207||32|8.584||32|15.8|0.094|1|15.774||32|11.955||32|8.181||32|15.542|0.09|1|15.513||32|11.727||32|8.494|0.471|1|15.16|0.075|1|15.121||32|11.515||32|8.14|0.422|1|14.622|0.053|1|15.011|0.292|1|11.297||32|7.921|0.422|1|13.872|0.031|1|13.981|0.13|1|11.047||32|7.801|0.453|17|16.218|0.391|0.083|1.996|21|1|55275.55205887|55277.33835439|55276.40311569|17.634|2.976|0.634|2.77200007|12|0|55275.55205887|55277.33835439|55276.40311569|12.839|2.843|0.62|1.45200002|9|0|55275.55205887|55277.33835439|55276.3932346|9.889|3.648|0.796|3.86100006|10|0|55275.55205887|55277.33835439|55276.3932346|-16|48|-5|0|0|0||||||||||||||||||||||||||1169397286|0.226|-83.1|1|16.449|0.122|16.019|0.196|15.585||3004089401241004717|1|0.0020041783567561|-0.0012513643129002|-0.99999720867434|131000000|
+J051708.56-895152.4|79.2857016|-89.8645636|0.867|0.9781|0.1863|302.7923708|-27.1822524|270.0636408|-66.6937713|1699.581|417.958|89401241005814|0000m894_ab41-005814|0000m894_ab41|5814|18.827||-3.1|0.904799998|17.448||-2.8|0.963|11.834|0.149|7.3|1.11899996|9.059|0.33|3.3|1.26400006|1.03199995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn0n|UUBB|12|0000|0|23|0|23|5|22|0|22|22.398|22.729|22.199|22.419|0.0|0.0|0.0|0.0|0||0||0||0||-7.1796999|2.3348999|9.277|2.796|0.026|-9.35299969|3.31049991|21.732|3.438|0.049|292.76001|40.3059998|1096.206|20.976|1.549|37.7150002|11.4469995|298.714|9.243|0.535|17.315|0.354|1|0.261|16.299||32|0.319|12.193||32|0.825|8.97|0.526|1|0.576|17.774||32|17.365||32|13.482||32|9.28||32|17.576|0.354|1|16.618||32|13.018||32|9.546|0.526|1|16.753|0.216|1|16.026||32|12.647||32|9.173|0.499|1|15.968|0.13|1|16.052|0.408|1|12.362||32|8.848|0.475|1|15.162|0.075|1|15.212|0.226|1|12.114||32|8.583|0.462|1|14.395|0.044|1|14.44|0.131|1|11.871||32|8.41|0.478|1|13.802|0.03|1|13.831|0.087|1|11.648||32|8.33|0.53|1|13.434|0.025|1|13.424|0.069|1|11.435||32|7.501||32||||2.754|5|0|55275.28745078|55277.20605032|55276.25684072||||1.91400003|6|0|55275.28745078|55277.20605032|55276.25684072|11.808|0.903|0.193|3.50300002|18|1|55275.28745078|55277.20605032|55276.24075991|9.048|1.691|0.361|4.5710001|15|0|55275.28745078|55277.20605032|55276.24075991|-99|-35|5|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005814|1|0.0004394598761254|0.0023225984866406|-0.999997206201741|101000000|
+J062700.21-895152.2|96.7508838|-89.8645045|1.004|1.213|-0.2135|302.7805171|-27.1424937|269.9597397|-66.6952598|2189.086|677.512|1201089401241005167|1201m894_ab41-005167|1201m894_ab41|5167|18.669|0.504|2.2|0.697300017|17.408||-0.3|0.898000002|11.767|0.144|7.5|1.03100002|9.275||0.6|1.11399996|0.916999996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|CUBU|5|0000|0|22|0|22|2|21|0|21|22.8|23.063|23.268|23.117|0.0|0.0|0.0|0.0|0||0||0||0||5.40259981|2.50970006|9.33|2.823|0.136|-1.00810003|3.43510008|21.819|3.477|0.139|311.279999|41.2779999|1095.819|21.412|1.003|7.37989998|11.7559996|298.523|9.636|0.399|16.834|0.25|1|0.261|16.975||32|0.319|12.729|0.497|1|0.825|8.994||32|0.576|17.687|0.307|0|16.744||32|13.355||32|10.008||32|17.095|0.25|1|17.294||32|13.554|0.497|1|9.57||32|16.72|0.229|1|16.195||32|13.105|0.426|1|9.159||32|16.296|0.194|1|15.956||32|12.67|0.354|1|8.809||32|15.806|0.148|1|15.756||32|12.249|0.289|1|8.525||32|15.366|0.116|1|15.442||32|11.871|0.239|1|8.279||32|15.009|0.097|1|15.122||32|11.54|0.204|1|8.139||32|14.704|0.085|1|14.829||32|11.27|0.183|1|8.034||32|18.786|1.684|0.359|3.071|15|0|55275.02284279|55277.20605032|55276.17158652||||2.29399991|10|0|55275.02284279|55277.20605032|55276.17158652|11.767|0.961|0.21|2.84800005|17|1|55275.02284279|55277.20605032|55276.15068023|12.456|||3.35500002|9|0|55275.02284279|55277.20605032|55276.15068023|78|-43|27|2|1|0|||||||||||||||||||||||||||||0|||||||1201089401241005167|1|-0.0002779933655004|0.0023484437221659|-0.999997203761977|111000000|
+J115333.79-895151.8|178.3908125|-89.864398|0.5231|0.4863|0.1125|302.8938925|-26.99685|269.6591863|-66.564147|2059.683|706.844|1802089401241004710|1802m894_ab41-004710|1802m894_ab41|4710|16.583|0.083|13.1|1.10099995|16.702||1.8|0.83950001|12.619||0.9|0.960099995|9.407||-0.6|1.06599998|0.989099979|1|0|0.0|0.0|0.0|0.0|0000|h000|0|2nnn|AUUU|1|0000|5|21|0|21|0|21|0|21|22.074|22.443|22.749|23.06|0.0|0.0|0.0|0.0|8|h|0||0||0||36.8880005|2.81430006|9.962|2.725|0.068|6.28609991|3.43869996|21.861|3.401|0.0|44.1570015|48.9379997|1095.679|25.761|2.618|-7.91120005|13.6789999|298.735|10.415|0.717|15.912|0.103|1|0.261|15.79||32|0.319|12.407|0.372|1|0.825|8.589||32|0.576|16.832|0.136|1|16.557||32|13.293||32|9.6||32|16.173|0.103|1|16.109||32|13.232|0.372|1|9.165||32|15.669|0.084|1|16.48|0.516|1|12.66|0.284|1|8.818||32|15.192|0.068|1|15.926|0.385|1|12.204|0.232|1|8.523||32|14.707|0.052|1|15.33|0.267|1|11.834|0.198|1|8.263||32|14.283|0.042|1|14.853|0.203|1|11.535|0.177|1|8.027||32|13.992|0.037|1|14.544|0.178|1|11.287|0.164|1|7.812||32|13.822|0.037|1|14.368|0.174|1|11.104|0.159|1|7.612||32|16.789|0.473|0.103|1.697|19|0|55274.75810734|55276.80913826|55275.79780276|17.022|1.992|0.435|2.5940001|12|0|55274.75810734|55276.80913826|55275.79780276|13.542|4.281|0.934|2.59599996|10|0|55274.75810734|55276.80913826|55275.79780276|9.88|3.793|0.828|2.59599996|10|0|55274.75810734|55276.80913826|55275.79780276|65|8|9|2|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004710|1|-0.0023657650810579|0.000066461454405|-0.999997199365306|111000000|
+J094120.99-895151.8|145.3374656|-89.864391|0.5695|0.5282|-0.1422|302.8196283|-27.0365341|269.7187186|-66.6375842|1897.098|673.402|1201089401241005518|1201m894_ab41-005518|1201m894_ab41|5518|16.639|0.092|11.8|0.916700006|16.735||1.8|0.988499999|12.704||1.0|0.931999981|8.893||1.5|1.04400003|0.966799974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2nnn|AUUU|1|0000|7|23|1|23|0|23|0|23|23.456|23.688|23.372|23.381|0.0|0.0|0.0|0.0|0||0||0||0||35.0309982|2.96930003|9.437|2.848|0.0|6.07499981|3.34579992|21.829|3.381|0.065|44.3209991|43.5050011|1094.576|24.632|4.018|18.8619995|12.5410004|297.587|9.925|0.493|16.606|0.32|1|0.261|16.369|0.352|1|0.319|12.249||32|0.825|8.685||32|0.576|17.221|0.319|1|17.26|0.429|1|13.505||32|9.639||32|16.867|0.32|1|16.688|0.352|1|13.074||32|9.261||32|16.701|0.357|1|16.363|0.338|1|12.819||32|10.674||32|16.539|0.382|1|15.96|0.289|1|12.684||32|8.744||32|16.246|0.351|1|15.427|0.214|1|14.052||32|8.484||32|15.672|0.244|1|14.845|0.147|1|12.867||32|8.249||32|15.002|0.153|1|14.316|0.105|1|12.08||32|8.033||32|14.526|0.114|1|13.944|0.086|1|11.805||32|7.835||32|16.621|0.581|0.121|4.112|22|2|55274.89041135|55276.94144233|55275.86561452|17.301|2.667|0.556|2.75999999|15|0|55274.89041135|55276.94144233|55275.86561452|13.57|3.825|0.798|3.32399988|12|0|55274.89041135|55276.94144233|55275.86561452|9.295|2.485|0.518|4.64799976|13|0|55274.89041135|55276.94144233|55275.86561452|37|-40|62|1|1|1|||||||||||||||||||||||||||||0|||||||1201089401241005518|1|-0.0019467491027307|0.0013461105182982|-0.999997199073279|111000000|
+J181420.48-895151.5|273.5853691|-89.8643173|0.5109|0.5709|-0.14|303.0823481|-27.1062099|270.0212154|-66.4252904|2208.589|668.894|3004089401241005091|3004m894_ab41-005091|3004m894_ab41|5091|16.754|0.089|12.2|0.940400004|17.19|0.426|2.6|0.909500003|12.829|0.398|2.7|1.05200005|9.581||-0.8|0.9375|0.956499994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ACCU|7|0000|7|24|0|24|0|23|0|23|23.786|23.649|22.888|22.857|0.0|0.0|0.0|0.0|0||0||0||0||31.5200005|2.5769999|9.432|2.495|0.117|8.39630032|3.29119992|21.818|3.318|0.152|117.110001|42.9679985|1094.318|24.355|1.185|-9.83059978|11.6520004|299.264|9.886|0.805|15.838|0.119|1|0.261|15.985|0.294|1|0.319|12.244||32|0.825|8.505||32|0.576|16.878|0.174|1|17.09|0.434|1|13.49||32|9.585||32|16.099|0.119|1|16.304|0.294|1|13.069||32|9.081||32|15.447|0.085|1|15.613|0.201|1|12.779||32|8.621||32|14.895|0.063|1|15.047|0.148|1|12.53||32|8.242||32|14.508|0.053|1|14.668|0.126|1|12.262||32|7.88||32|14.273|0.051|1|14.427|0.119|1|12.005||32|7.599||32|14.107|0.051|1|14.234|0.116|1|11.727||32|7.422||32|13.943|0.05|1|14.043|0.111|1|12.114|0.499|1|7.301||32|16.86|0.523|0.107|2.606|23|2|55275.28732341|55277.20605032|55276.16402342|17.24|2.46|0.502|3.23600006|14|0|55275.28732341|55277.20605032|55276.16402342|12.927|1.639|0.342|3.67799997|15|0|55275.28732341|55277.20605032|55276.14460624||||2.77600002|8|0|55275.28732341|55277.20605032|55276.14460624|38|-18|10|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005091|1|0.000148091138929|-0.0023634718734707|-0.999997196030928|131000000|
+J065137.74-895151.2|102.9072802|-89.8642278|0.1005|0.0974|0.0026|302.7793614|-27.1279607|269.9233479|-66.6930319|2153.581|691.456|1201089401241004115|1201m894_ab41-004115|1201m894_ab41|4115|13.438|0.025|43.1|1.08800006|13.483|0.031|34.9|1.03100002|11.641|0.136|8.0|1.051|9.07||0.9|1.10300004|1.06400001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|011n|AABU|7|0000|22|22|22|22|4|21|0|21|22.548|23.212|22.597|22.754|0.0|0.0|0.0|0.0|0||0||0||0||667.909973|15.5080004|9.39|2.794|0.0|255.080002|7.30009985|21.839|3.355|0.101|349.670013|43.723999|1097.48|22.733|2.636|11.4449997|12.9359999|298.558|9.553|1.195|13.437|0.022|1|0.261|13.494|0.045|1|0.319|11.831||32|0.825|8.632||32|0.576|14.073|0.023|1|14.256|0.049|1|13.103||32|9.647||32|13.698|0.022|1|13.813|0.045|1|12.656||32|9.208||32|13.537|0.025|1|13.619|0.048|1|12.31||32|8.861||32|13.435|0.028|1|13.505|0.053|1|11.99||32|8.569||32|13.37|0.031|1|13.427|0.059|1|11.702||32|8.308||32|13.336|0.035|1|13.373|0.067|1|12.161|0.492|1|8.073||32|13.31|0.04|1|13.326|0.074|1|11.903|0.452|1|7.858||32|13.266|0.044|1|13.269|0.081|1|11.638|0.407|1|7.658||32|13.438|0.039|0.008|0.158|21|0|55275.02284279|55276.94144233|55276.12948978|13.499|0.101|0.021|0.560000002|21|0|55275.02284279|55276.94144233|55276.12948978|11.494|0.701|0.153|4.82800007|16|1|55275.02284279|55276.94144233|55276.10657889|9.465|2.005|0.438|2.55200005|10|0|55275.02284279|55276.94144233|55276.10657889|-1|32|13|0|1|0||||||||||||||||||||||||||1329117198|0.192|179.3|1|14.04|0.026|13.534|0.038|13.499|0.043|1201089401241004115|1|-0.0005293226783717|0.002309795466236|-0.999997192327262|111000000|
+J231844.56-895150.9|349.6856686|-89.864147|0.4414|0.3959|0.0268|302.9920527|-27.2530353|270.3356795|-66.5360254|2111.68|701.957|89401241004851|0000m894_ab41-004851|0000m894_ab41|4851|16.348|0.072|15.1|0.843400002|16.344|0.21|5.2|0.92110002|12.554||1.5|0.854900002|9.328||0.5|1.07099998|0.918900013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|11|23|1|23|0|22|0|22|23.35|23.748|22.823|22.366|0.0|0.0|0.0|0.0|0||0||0||0||45.8100014|3.03279996|9.244|2.801|0.248|18.3010006|3.53200006|21.721|3.414|0.0|64.6930008|43.0670013|1100.432|24.227|1.899|6.06220007|11.6850004|298.688|9.498|0.65|15.977|0.103|0|0.261|16.011|0.288|0|0.319|12.046||32|0.825|8.578||32|0.576|16.693|0.112|0|16.806|0.318|0|13.241||32|9.584||32|16.238|0.103|0|16.33|0.288|0|12.871||32|9.154||32|16.024|0.109|1|16.039|0.286|1|12.586||32|8.81||32|15.912|0.122|1|15.733|0.268|1|12.352||32|8.516||32|15.802|0.132|1|15.412|0.239|1|12.154||32|8.256||32|15.607|0.13|1|15.115|0.215|1|11.973||32|8.021||32|15.359|0.12|1|14.862|0.198|1|11.81||32|7.805||32|15.121|0.111|1|14.619|0.182|1|11.657||32|7.606||32|16.455|0.304|0.063|1.688|22|1|55275.55205887|55277.33835439|55276.44378378|16.393|0.777|0.162|2.81599998|19|0|55275.55205887|55277.33835439|55276.44378378|13.404|3.042|0.648|4.15899992|14|0|55275.55205887|55277.33835439|55276.43620038|10.319|3.39|0.723|2.43700004|12|0|55275.55205887|55277.33835439|55276.43620038|-3|-28|23|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004851|1|0.0023327642505997|-0.0004245379057189|-0.999997188985308|131000000|
+J211230.53-895150.7|318.127239|-89.8641101|0.8884|0.8512|-0.2652|303.0566671|-27.2065639|270.2534559|-66.4698|1940.029|691.025|3004089401241005130|3004m894_ab41-005130|3004m894_ab41|5130|17.213|0.142|7.7|0.866699994|16.91||1.2|0.875800014|12.582||1.3|0.960500002|9.049||1.2|0.967499971|0.913800001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|2|22|0|22|0|21|0|21|23.108|23.495|23.103|23.127|0.0|0.0|0.0|0.0|0||0||0||0||20.6490002|2.69339991|9.288|2.894|0.0|4.0618|3.40210009|21.748|3.502|0.0|57.3129997|44.7949982|1098.728|24.788|0.0|14.1420002|11.9490004|298.561|9.581|0.259|16.049|0.136|1|0.261|15.587||32|0.319|12.389||32|0.825|8.946|0.5|1|0.576|17.022|0.192|1|16.415||32|13.553||32|9.433||32|16.31|0.136|1|15.906||32|13.214||32|9.522|0.5|1|15.636|0.095|1|16.153|0.498|1|12.932||32|9.138|0.468|17|15.039|0.068|1|15.649|0.389|1|12.697||32|8.989|0.517|17|14.678|0.059|1|15.399|0.373|1|12.492||32|8.098||32|14.532|0.061|1|15.374|0.428|1|12.316||32|7.968||32|14.485|0.068|1|14.721||32|12.148||32|7.846||32|14.461|0.076|1|14.728||32|11.999||32|7.644||32|17.41|0.66|0.141|2.961|20|1|55275.28745078|55277.33835439|55276.34597572|17.939|3.352|0.715|2.38800001|11|0|55275.28745078|55277.33835439|55276.34597572|13.058|2.183|0.476|3.20499992|14|0|55275.28745078|55277.33835439|55276.33337368|10.343|6.09|1.329|3.54900002|11|0|55275.28745078|55277.33835439|55276.33337368|15|-3|-31|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005130|1|0.0017660548816853|-0.0015830755403592|-0.999997187457039|131000000|
+J162529.85-895150.7|246.3743981|-89.8640983|1.0493|1.1409|0.3047|303.0546004|-27.0472942|269.8637626|-66.4361386|2010.765|705.878|2403089401241005660|2403m894_ab41-005660|2403m894_ab41|5660|18.225||1.3|1.45799994|16.161|0.161|6.8|1.01300001|12.479||1.5|1.00899994|9.537||-1.3|0.943000019|1.10500002|1|0|0.0|0.0|0.0|0.0|0000|Hh00|0|nnnn|UBUU|2|0000|2|24|3|24|1|23|0|23|23.482|23.774|22.991|22.914|0.0|0.0|0.0|0.0|1032|H|8|h|0||0||3.20760012|2.45959997|11.494|2.78|0.0|21.6480007|3.2025001|21.837|2.941|0.0|68.8889999|46.3370018|1096.301|24.959|8.362|-15.71|12.1339998|298.995|9.651|0.248|18.178||32|0.261|17.476||32|0.319|11.712||32|0.825|9.0||32|0.576|16.748||32|16.369||32|12.901||32|10.004||32|18.439||32|17.795||32|12.537||32|9.576||32|16.245||32|15.873||32|12.258||32|9.243||32|16.009||32|15.637||32|12.022||32|8.958||32|15.808||32|15.436||32|11.821||32|8.709||32|15.628||32|15.256||32|11.642||32|8.482||32|15.464||32|15.092||32|11.478||32|8.275||32|15.108||32|14.938||32|11.325||32|8.083||32|18.894|6.255|1.277|3.145|12|0|55275.02271543|55276.94144233|55276.01516015|16.217|1.165|0.238|3.77099991|19|1|55275.02271543|55276.94144233|55276.01516015|13.435|2.927|0.61|4.25500011|14|0|55275.02271543|55276.94144233|55275.98927066||||1.60000002|6|0|55275.02271543|55276.94144233|55275.98927066|8|-29|-66|0|1|1|||||||||||||||||||||||||||||0|||||||2403089401241005660|1|-0.000950570732997|-0.0021731230898404|-0.999997186971702|121000000|
+J012748.68-895150.6|21.9528622|-89.864083|0.9592|0.9169|0.2913|302.9077509|-27.2623632|270.3175629|-66.6112001|2267.771|631.91|600089401241005292|0600m894_ab41-005292|0600m894_ab41|5292|17.382|0.154|7.0|0.970499992|16.791||1.6|0.966400027|12.63||1.3|1.12100005|9.406||0.3|0.890999973|0.98360002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|3|23|1|23|1|22|0|22|22.875|22.836|21.948|21.782|0.0|0.0|0.0|0.0|0||0||0||0||17.6669998|2.51110005|9.224|2.772|0.133|5.42509985|3.35010004|21.726|3.345|0.217|56.1850014|42.1780014|1098.957|22.754|0.0|3.91400003|11.7419996|298.427|9.701|0.747|16.372|0.108|1|0.261|15.821||32|0.319|11.701||32|0.825|8.964||32|0.576|17.255|0.135|1|16.561||32|12.9||32|9.969||32|16.633|0.108|1|16.14||32|12.526||32|9.54||32|16.179|0.093|1|15.846||32|12.247||32|9.198||32|15.808|0.082|1|15.606||32|12.016||32|8.906||32|15.525|0.076|1|15.427||32|11.815||32|8.649||32|15.301|0.073|1|15.279||32|11.633||32|8.416||32|15.051|0.068|1|15.109||32|11.47||32|8.203||32|14.692|0.056|1|14.832||32|11.317||32|8.006||32|17.353|0.821|0.171|4.083|18|0|55275.55205887|55277.33835439|55276.39777605|17.259|2.558|0.533|1.68400002|13|0|55275.55205887|55277.33835439|55276.39777605|14.554|||3.75600004|10|1|55275.55205887|55277.33835439|55276.3881014|11.214|||2.61199999|10|0|55275.55205887|55277.33835439|55276.3881014|-37|21|-20|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241005292|1|0.0022001938531592|0.0008868311170213|-0.999997186334831|101000000|
+J143132.35-895149.9|217.8847995|-89.8638878|0.1899|0.1928|0.0446|302.9965401|-27.0048075|269.730841|-66.4768942|1694.854|304.293|1201089401241004530|1201m894_ab41-004530|1201m894_ab41|4530|15.185|0.037|29.1|2.08699989|15.051|0.072|15.2|0.978900015|12.454||1.3|0.971899986|9.484||-2.1|1.04700005|1.25800002|1|0|0.0|0.0|0.0|0.0|0000|Dhd0|0|n1nn|AAUU|3|0000|20|21|15|21|1|21|0|21|21.484|22.366|22.985|23.341|0.0|0.0|0.0|0.0|137|Dh|8|h|9|dh|0||133.610001|4.59110022|9.481|2.22|0.107|60.1769981|3.96350002|21.834|3.189|0.055|63.8050003|50.737999|1096.722|25.441|2.103|-26.1679993|12.7469997|298.367|9.799|0.204|14.791|0.031|1|0.261|14.808|0.151|1|0.319|11.93||32|0.825|8.946||32|0.576|15.618|0.038|1|15.741|0.191|1|13.115||32|9.955||32|15.052|0.031|1|15.127|0.151|1|12.755||32|9.522||32|14.712|0.029|1|14.77|0.14|1|12.5||32|9.177||32|14.433|0.028|1|14.503|0.136|1|12.303||32|8.885||32|14.146|0.026|1|14.234|0.127|1|12.124||32|8.625||32|13.782|0.022|1|13.895|0.11|1|11.882||32|8.39||32|13.333|0.017|1|13.481|0.088|1|11.575||32|8.175||32|12.88|0.014|1|13.06|0.068|1|11.276||32|7.976||32|15.182|0.134|0.029|0.543|19|0|55274.89041135|55276.94144233|55275.9017529|15.05|0.301|0.066|1.03999996|20|0|55274.89041135|55276.94144233|55275.9017529|12.867|2.039|0.445|3.14499998|11|0|55274.89041135|55276.94144233|55275.9017529||||2.62100005|5|0|55274.89041135|55276.94144233|55275.9017529|-33|-19|-43|1|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004530|1|-0.0018749382652898|-0.0014588009145317|-0.999997178249215|121000000|
+J081143.92-895149.9|122.9330018|-89.8638786|0.162|0.1619|-0.0325|302.7883199|-27.081363|269.8130981|-66.6748458|2030.917|707.998|1201089401241004311|1201m894_ab41-004311|1201m894_ab41|4311|14.979|0.034|32.3|0.927600026|14.81|0.06|18.0|1.28900003|12.664|0.35|3.1|0.98210001|9.563|0.521|2.1|0.847299993|1.00999999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABC|15|0000|22|22|14|22|1|21|1|21|22.36|21.929|21.258|21.69|0.0|0.0|0.0|0.0|0||0||0||0||161.539993|4.99900007|9.411|2.63|0.352|75.1289978|4.17140007|21.864|3.266|0.0|136.25|43.9160004|1097.505|23.749|2.049|23.6949997|11.368|297.86|9.295|1.628|14.885|0.07|1|0.261|14.75|0.122|1|0.319|12.711||32|0.825|8.516||32|0.576|15.574|0.076|1|15.565|0.141|1|13.885||32|9.528||32|15.146|0.07|1|15.069|0.122|1|13.536||32|9.092||32|14.877|0.07|1|14.788|0.121|1|13.263||32|8.745||32|14.643|0.07|1|14.574|0.123|1|13.031||32|8.455||32|14.457|0.071|1|14.404|0.127|1|12.828||32|8.194||32|14.293|0.072|1|14.248|0.129|1|12.65||32|7.958||32|14.132|0.073|1|14.099|0.131|1|12.484||32|7.744||32|14.002|0.074|1|13.984|0.136|1|12.335||32|7.544||32|14.977|0.12|0.025|0.459|21|0|55274.89041135|55276.94144233|55275.92497939|14.935|0.358|0.076|1.71200001|20|1|55274.89041135|55276.94144233|55275.92497939|12.74|1.732|0.378|3.76099992|11|1|55274.89041135|55276.94144233|55275.8923299|9.386|2.464|0.538|2.8670001|12|0|55274.89041135|55276.94144233|55275.8923299|21|-13|-21|0|0|0||||||||||||||||||||||||||863310624|0.467|64.7|1|15.574|0.074|15.011|0.085|14.768|0.152|1201089401241004311|1|-0.0012916035741739|0.0019939958530463|-0.99999717786639|111000000|
+J144818.18-895149.7|222.0757916|-89.8638275|0.3499|0.3607|0.0957|303.0065198|-27.0092876|269.7468309|-66.4692531|2159.897|690.524|2403089401241005413|2403m894_ab41-005413|2403m894_ab41|5413|16.21|0.062|17.4|1.06700003|15.985|0.151|7.2|0.926999986|12.976||-0.6|0.874800026|9.45||-0.6|0.992600024|0.962100029|1|0|0.0|0.0|0.0|0.0|0000|hhH0|0|1nnn|ABUU|3|0000|17|22|1|22|0|22|0|22|22.84|23.394|23.465|23.201|0.0|0.0|0.0|0.0|8|h|8|h|1032|H|0||52.0009995|2.98709989|9.606|2.313|0.133|25.4640007|3.54949999|21.84|3.153|0.0|-32.3240013|51.1279984|1095.871|25.643|4.604|-7.47609997|13.1549997|298.549|10.007|0.795|16.821|0.443|0|0.261|16.042|0.24|0|0.319|12.064||32|0.825|8.494||32|0.576|17.308|0.388|0|16.879|0.277|0|13.259||32|9.61||32|17.082|0.443|0|16.361|0.24|0|12.889||32|9.07||32|16.368||32|16.041|0.231|0|12.608||32|8.785||32|16.371||32|15.782|0.226|0|12.373||32|8.542||32|16.408||32|15.558|0.221|0|12.17||32|8.284||32|16.407||32|15.333|0.211|0|11.993||32|8.07||32|16.242||32|15.092|0.197|0|11.829||32|7.855||32|16.091||32|14.845|0.18|0|11.677||32|7.605||32|16.213|0.249|0.053|0.942|21|0|55274.89041135|55276.94144233|55275.87382429|15.978|0.665|0.142|3.57200003|19|0|55274.89041135|55276.94144233|55275.87382429|14.347|8.297|1.769|3.7980001|6|0|55274.89041135|55276.94144233|55275.87382429||||4.21500015|8|0|55274.89041135|55276.94144233|55275.87382429|39|-38|-32|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005413|1|-0.0017640951317496|-0.0015926288854897|-0.999997175746811|121000000|
+J031106.20-895149.6|47.7758489|-89.8637908|0.4575|0.4844|0.1325|302.844228|-27.2398191|270.2310588|-66.6614053|2124.074|700.434|600089401241004645|0600m894_ab41-004645|0600m894_ab41|4645|16.578|0.079|13.7|0.893999994|16.683||1.9|1.005|12.428|0.26|4.2|1.06900001|9.05||1.4|1.06500006|1.005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|AUBU|5|0000|10|24|1|24|2|23|0|23|23.623|23.423|22.916|22.688|0.0|0.0|0.0|0.0|0||0||0||0||37.0519981|2.69970012|9.287|2.713|0.226|6.57840014|3.40809989|21.747|3.481|0.177|169.419998|40.5400009|1099.646|22.015|1.644|15.5129995|11.2550001|298.214|9.23|0.811|16.426|0.136|1|0.261|16.62|0.513|1|0.319|12.812||32|0.825|8.774||32|0.576|17.044|0.135|1|16.64||32|14.006||32|10.703||32|16.687|0.136|1|16.939|0.513|1|13.637||32|9.35||32|16.543|0.155|1|16.662|0.518|1|13.357||32|8.837||32|16.443|0.175|1|16.385|0.498|1|12.693||32|8.436||32|16.23|0.173|1|15.998|0.418|1|12.761|0.466|1|8.127||32|15.78|0.135|1|15.512|0.314|1|12.086|0.294|1|7.853||32|15.132|0.087|1|14.946|0.217|1|11.642|0.226|1|7.586||32|14.392|0.051|1|14.315|0.139|1|11.335|0.196|1|8.095|0.542|17|16.542|0.289|0.059|1.541|22|0|55275.28745078|55277.33835439|55276.3515125|17.525|2.49|0.508|1.96000004|14|0|55275.28745078|55277.33835439|55276.3515125|12.279|1.479|0.308|4.49399996|15|1|55275.28745078|55277.33835439|55276.34024702|10.004|2.854|0.595|3.15100002|15|0|55275.28745078|55277.33835439|55276.34024702|-28|10|1|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004645|1|0.0015976212453754|0.0017604389538477|-0.999997174226531|101000000|
+J034106.73-895149.0|55.2780692|-89.8636204|0.9096|0.9675|0.2847|302.8284578|-27.2287989|270.1961726|-66.6726808|2077.97|707.828|600089401241005113|0600m894_ab41-005113|0600m894_ab41|5113|17.694|0.208|5.2|0.864899993|17.374||-0.6|0.987500012|11.871|0.164|6.6|0.995100021|9.092||1.1|1.03900003|0.967199981|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|BUBU|5|0000|1|22|0|22|2|21|0|21|23.818|23.529|23.254|23.554|0.0|0.0|0.0|0.0|129|D|129|D|0||0||13.25|2.53660011|9.301|2.694|0.066|-2.06800008|3.54259992|21.759|3.439|0.118|282.98999|42.7470016|1098.457|22.006|0.72|12.9499998|11.8149996|298.545|9.273|0.569|16.812|0.217|0|0.261|15.92||32|0.319|11.923||32|0.825|8.672||32|0.576|17.672|0.272|0|16.647||32|13.126||32|9.884||32|17.073|0.217|0|16.239||32|12.748||32|9.248||32|16.57|0.177|1|15.956||32|12.466||32|8.761||32|16.085|0.14|1|15.683||32|12.212||32|8.422||32|15.621|0.111|1|15.383||32|11.944||32|8.152||32|15.188|0.088|1|15.075||32|11.657||32|7.927||32|14.808|0.072|1|14.758||32|11.427||32|7.711||32|14.478|0.061|1|15.096|0.454|1|11.245||32|7.522||32|17.68|0.866|0.185|3.32|19|0|55275.28745078|55277.33835439|55276.34600466||||2.63800001|8|0|55275.28745078|55277.33835439|55276.34600466|11.779|0.744|0.162|3.81900001|17|0|55275.28745078|55277.33835439|55276.33340399|10.712|6.835|1.491|3.48699999|12|0|55275.28745078|55277.33835439|55276.33340399|53|19|-44|1|0|1|||||||||||||||||||||||||||||0|||||||600089401241005113|1|0.0013557883633359|0.0019564066439866|-0.999997167151466|101000000|
+J230035.88-895148.8|345.1495044|-89.8635705|0.1377|0.1342|0.0158|303.0032742|-27.2489211|270.3310545|-66.5253928|2139.543|697.283|89401241004302|0000m894_ab41-004302|0000m894_ab41|4302|14.507|0.03|36.0|0.979099989|14.291|0.046|23.5|1.03100002|12.495||1.9|1.00800002|9.096||1.2|1.07500005|1.01999998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|23|23|20|23|1|22|0|22|23.705|23.6|22.836|22.435|0.0|0.0|0.0|0.0|0||0||0||0||249.570007|6.92579985|9.217|2.828|0.0|121.199997|5.15210009|21.708|3.441|0.038|77.4580002|40.8759995|1098.472|23.656|3.445|13.6890001|11.3730001|298.339|9.427|1.329|14.471|0.033|1|0.261|14.33|0.087|1|0.319|12.186||32|0.825|8.497||32|0.576|15.113|0.034|1|15.067|0.092|1|13.557||32|9.652||32|14.732|0.033|1|14.649|0.087|1|13.011||32|9.073||32|14.56|0.036|1|14.49|0.097|1|12.531||32|8.667||32|14.395|0.039|1|14.361|0.107|1|12.716|0.412|1|8.39||32|14.161|0.037|1|14.169|0.108|1|12.206|0.311|1|8.212||32|13.908|0.035|1|13.961|0.105|1|11.813|0.256|1|8.126||32|13.722|0.034|1|13.802|0.105|1|11.557|0.235|1|8.05||32|13.619|0.036|1|13.706|0.111|1|11.385|0.231|1|8.331||32|14.503|0.083|0.017|0.354|22|0|55275.55205887|55277.33835439|55276.44378378|14.274|0.175|0.037|0.811999977|22|0|55275.55205887|55277.33835439|55276.44378378|13.631|4.43|0.945|4.0|14|1|55275.55205887|55277.33835439|55276.43620038|9.895|2.226|0.475|2.86199999|11|0|55275.55205887|55277.33835439|55276.43620038|-22|14|-49|0|0|1||||||||||||||||||||||||||1095003103|1.513|-86.1|1|15.551|0.056|15.016|0.089|14.725|0.093|89401241004302|1|0.002301607328434|-0.0006102814351616|-0.999997165076119|131000000|
+J013415.05-895148.7|23.5627089|-89.8635532|1.1766|1.1107|0.3284|302.9034083|-27.2622264|270.3151123|-66.6149382|1905.186|679.475|89401241005563|0000m894_ab41-005563|0000m894_ab41|5563|17.657|0.213|5.1|0.834200025|17.063|0.402|2.7|0.935599983|12.623|0.333|3.3|1.16100001|9.559||0.0|1.14100003|1.00300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCBU|7|0000|1|22|0|22|1|21|0|21|22.775|22.658|21.982|21.769|0.0|0.0|0.0|0.0|0||0||0||0||13.7119999|2.68959999|9.283|2.739|0.0|9.43970013|3.49679995|21.741|3.389|0.22|141.580002|43.4580002|1100.405|23.291|0.0|-0.258029997|11.8970003|299.031|9.89|0.59|16.522|0.119|0|0.261|15.812||32|0.319|11.841||32|0.825|8.852||32|0.576|17.388|0.15|0|16.525||32|13.026||32|9.862||32|16.783|0.119|0|16.131||32|12.666||32|9.428||32|16.258|0.095|1|15.822||32|12.373||32|9.083||32|15.635|0.067|1|15.996|0.401|1|12.14||32|8.788||32|14.931|0.042|1|15.252|0.243|1|11.94||32|8.529||32|14.298|0.028|1|14.619|0.16|1|11.761||32|8.293||32|13.852|0.022|1|14.176|0.124|1|11.596||32|8.077||32|13.579|0.02|1|13.894|0.11|1|11.444||32|7.856||32|17.495|0.728|0.155|3.224|18|0|55275.55205887|55277.33835439|55276.42719412|16.817|1.624|0.346|2.50300002|13|0|55275.55205887|55277.33835439|55276.42719412|12.621|1.347|0.294|2.67199993|14|0|55275.55205887|55277.33835439|55276.41845963|11.671|||2.71199989|11|0|55275.55205887|55277.33835439|55276.41845963|35|-41|42|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005563|1|0.0021828858866638|0.0009519879584889|-0.999997164360046|101000000|
+J191537.08-895148.4|288.9045333|-89.8634709|0.394|0.4114|-0.1126|303.084488|-27.1424519|270.1106288|-66.431505|2119.61|702.231|3004089401241004756|3004m894_ab41-004756|3004m894_ab41|4756|16.487|0.072|15.0|0.936699986|15.971|0.145|7.5|0.883000016|12.743||0.8|1.02199996|9.581||-1.0|0.870400012|0.925599992|1|0|0.0|0.0|0.0|0.0|0000|0000|0|11nn|ABUU|3|0000|12|25|4|25|0|24|0|24|25.709|24.862|24.956|24.665|0.0|0.0|0.0|0.0|0||0||0||0||40.2840004|2.68729997|9.393|2.657|0.045|25.7989998|3.45429993|21.738|3.373|0.137|37.4059982|44.6450005|1096.592|24.886|2.781|-11.2489996|11.658|299.921|9.774|1.648|16.589|0.211|0|0.261|15.698|0.209|0|0.319|14.605||32|0.825|9.062||32|0.576|17.095|0.19|0|16.455|0.224|0|15.924||32|10.052||32|16.85|0.211|0|16.017|0.209|0|15.43||32|9.638||32|16.989|0.311|1|15.91|0.245|1|13.457||32|9.317||32|17.361|0.54|1|15.999|0.328|1|12.558||32|9.049||32|16.666||32|16.165|0.461|1|12.194||32|8.815||32|16.554||32|15.42||32|11.847||32|8.605||32|16.29||32|15.974|0.531|1|11.546||32|8.341||32|16.031||32|15.706|0.477|1|11.307||32|8.163||32|16.492|0.383|0.077|2.026|24|0|55275.28732341|55277.20605032|55276.19247154|15.938|0.918|0.184|3.47000003|21|1|55275.28732341|55277.20605032|55276.19247154|13.563|3.842|0.784|6.33400011|12|0|55275.28732341|55277.20605032|55276.17504875|12.01|||2.30100012|10|0|55275.28732341|55277.20605032|55276.17504875|25|-21|-13|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004756|1|0.0007720348201543|-0.00225434713823|-0.999997160936578|131000000|
+J194235.68-895147.8|295.6486899|-89.8633002|0.2558|0.2641|-0.0806|303.0817432|-27.1583374|270.1480192|-66.4374087|2078.025|708.662|3004089401241004517|3004m894_ab41-004517|3004m894_ab41|4517|15.902|0.049|22.0|0.987200022|15.974|0.141|7.7|0.791199982|11.864|0.165|6.6|0.937699974|9.113|0.325|3.3|1.07000005|0.926800013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBB|15|0000|24|26|2|26|1|25|0|25|25.717|25.586|24.933|24.625|0.0|0.0|0.0|0.0|0||0||0||0||69.0479965|3.14400005|9.328|2.688|0.0|25.7250004|3.3369|21.779|3.434|0.0|284.660004|43.2010002|1095.646|24.162|3.425|35.8759995|10.7519999|299.095|9.536|0.418|15.793|0.151|1|0.261|15.439|0.171|1|0.319|11.717|0.187|1|0.825|8.495||32|0.576|16.506|0.165|1|16.35|0.21|1|13.155|0.236|1|9.425||32|16.054|0.151|1|15.758|0.171|1|12.542|0.187|1|9.071||32|15.779|0.152|1|15.4|0.16|1|12.16|0.17|1|8.854||32|15.601|0.16|1|15.146|0.156|1|11.85|0.157|1|8.636||32|15.522|0.179|1|14.961|0.158|1|11.613|0.15|1|8.434||32|15.487|0.205|1|14.793|0.16|1|11.415|0.146|1|8.328||32|15.45|0.23|1|14.599|0.156|1|11.215|0.14|1|10.07||32|15.378|0.248|1|14.401|0.15|1|11.014|0.133|1|8.655||32|15.9|0.221|0.043|0.96|25|0|55275.28732341|55277.33835439|55276.23654396|15.92|0.63|0.123|3.71600008|23|0|55275.28732341|55277.33835439|55276.23654396|11.764|0.605|0.121|4.89699984|23|0|55275.28732341|55277.33835439|55276.22158098|9.319|2.348|0.47|3.53900003|16|0|55275.28732341|55277.33835439|55276.22158098|31|14|-1|1|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004517|1|0.0010327239334505|-0.0021507687627065|-0.999997153833453|131000000|
+J102043.72-895147.7|155.1821687|-89.8632608|0.1253|0.1198|-0.0075|302.838099|-27.0199009|269.6872687|-66.6177923|2199.835|676.224|1802089401241003904|1802m894_ab41-003904|1802m894_ab41|3904|14.108|0.028|39.2|1.02600002|14.206|0.043|25.3|0.961199999|12.707||0.8|0.984000027|9.436||-1.8|1.01900005|0.995000005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AAUU|3|0000|23|23|23|23|0|23|0|23|23.845|23.252|23.837|23.592|0.0|0.0|0.0|0.0|0||0||0||0||360.570007|9.20919991|9.428|2.756|0.128|131.039993|5.18130016|21.842|3.352|0.105|37.5890007|46.7150002|1094.626|25.474|0.465|-23.6560001|13.316|298.185|10.131|0.455|14.092|0.017|0|0.261|14.219|0.043|0|0.319|12.432||32|0.825|8.88||32|0.576|14.719|0.018|0|14.946|0.045|0|13.672||32|9.893||32|14.353|0.017|0|14.538|0.043|0|13.257||32|9.456||32|14.225|0.019|1|14.422|0.05|1|12.916||32|9.114||32|14.164|0.022|1|14.409|0.061|1|12.623||32|8.818||32|14.108|0.024|1|14.41|0.073|1|12.373||32|8.557||32|14.033|0.027|1|14.381|0.084|1|12.18||32|8.32||32|13.928|0.028|1|14.298|0.09|1|12.041||32|8.897||32|13.802|0.029|1|14.177|0.092|1|11.912||32|7.803||32|14.127|0.063|0.013|0.405|22|0|55274.75810734|55276.94144233|55275.85410429|14.225|0.117|0.024|0.527999997|22|0|55274.75810734|55276.94144233|55275.85410429|13.53|2.994|0.624|3.21300006|13|0|55274.75810734|55276.94144233|55275.85410429||||4.63199997|8|0|55274.75810734|55276.94144233|55275.85410429|16|-38|1|0|1|0||||||||||||||||||||||||||748768943|0.172|-2.3|1|14.581|0.04|14.178|0.058|14.218|0.086|1802089401241003904|1|-0.0021661422983074|0.0010017164453178|-0.999997152191798|111000000|
+J155154.07-895147.5|237.9753293|-89.8631986|0.1294|0.1341|0.022|303.0407321|-27.0315771|269.8184752|-66.4446205|2062.95|709.874|2403089401241004239|2403m894_ab41-004239|2403m894_ab41|4239|14.458|0.029|37.3|1.17900002|14.463|0.046|23.7|1.10800004|13.005||-0.8|1.01900005|9.563||-1.5|0.948199987|1.06299996|1|0|0.0|0.0|0.0|0.0|0000|h000|0|00nn|AAUU|3|0000|24|24|23|24|0|23|0|23|24.796|24.702|23.913|23.733|0.0|0.0|0.0|0.0|8|h|0||0||0||261.109985|7.00719976|9.864|2.244|0.0|103.5|4.3585|21.817|3.035|0.0|-38.0019989|49.7779999|1097.633|26.201|5.816|-18.0750008|11.8470001|298.764|9.895|0.975|14.315|0.034|0|0.261|14.541|0.161|0|0.319|12.538|0.508|0|0.825|8.71||32|0.576|15.047|0.037|0|15.359|0.182|0|13.24||32|10.927||32|14.576|0.034|0|14.86|0.161|0|13.363|0.508|0|9.286||32|14.297|0.033|1|14.582|0.16|1|12.825|0.399|1|8.74||32|14.068|0.033|1|14.345|0.159|1|12.437|0.344|1|8.388||32|13.8|0.031|1|14.036|0.144|1|12.081|0.299|1|8.184||32|13.415|0.026|1|13.564|0.11|1|11.729|0.256|1|8.043||32|12.873|0.019|1|12.95|0.073|1|11.387|0.217|1|7.919||32|12.293|0.013|1|12.341|0.048|1|11.058|0.184|1|7.736||32|14.467|0.06|0.012|0.312|23|0|55274.89041135|55276.94144233|55275.94073117|14.479|0.182|0.037|0.874000013|23|0|55274.89041135|55276.94144233|55275.94073117|18.741|||3.87199998|11|0|55274.89041135|55276.94144233|55275.91160563||||3.93400002|6|0|55274.89041135|55276.94144233|55275.91160563|11|27|-77|0|0|0||||||||||||||||||||||||||912427349|0.193|105.7|1|15.395|0.068|14.72|0.051|14.659|0.111|2403089401241004239|1|-0.0012661244759155|-0.002024282649683|-0.99999714960022|121000000|
+J015500.44-895147.4|28.7518456|-89.8631881|1.4796|1.3749|0.4511|302.8897723|-27.2597327|270.3023357|-66.6262273|1860.211|47.027|2403089401241006017|2403m894_ab41-006017|2403m894_ab41|6017|18.808||-0.3|0.896099985|17.451||-1.2|0.951300025|12.124|0.207|5.3|0.986100018|9.266|0.408|2.7|1.10300004|0.980000019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBC|12|0000|0|23|0|23|2|22|1|22|22.796|22.789|21.919|21.866|0.0|0.0|0.0|0.0|0||0||0||0||-0.643809974|2.37660003|9.266|2.692|0.075|-4.10129976|3.29909992|21.682|3.373|0.158|224.179993|42.6769981|1099.477|22.441|1.983|31.1669998|11.717|298.36|9.38|1.179|17.203||32|0.261|16.495||32|0.319|12.163||32|0.825|8.601||32|0.576|17.814||32|17.161||32|13.31||32|9.593||32|17.464||32|16.814||32|12.988||32|9.177||32|17.184||32|16.537||32|12.733||32|8.776||32|16.949||32|16.303||32|12.471||32|8.402||32|16.749||32|16.101||32|12.213||32|8.119||32|16.564||32|16.139||32|12.021||32|7.935||32|16.401||32|15.65||32|11.88||32|7.758||32|16.249||32|15.438||32|11.757||32|7.575||32|20.572|||2.44|10|0|55275.55205887|55277.33835439|55276.39777605||||2.78600001|11|0|55275.55205887|55277.33835439|55276.39777605|12.013|1.119|0.239|4.4000001|17|0|55275.55205887|55277.33835439|55276.3881014|9.163|2.01|0.428|2.89299989|15|0|55275.55205887|55277.33835439|55276.3881014|23|-1|-19|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241006017|1|0.0020934244397614|0.0011485797078309|-0.999997149165321|101000000|
+J035031.50-895146.4|57.6312532|-89.8629093|0.396|0.4192|0.0946|302.823336|-27.2254378|270.1853735|-66.6763895|2063.415|710.619|600089401241004473|0600m894_ab41-004473|0600m894_ab41|4473|16.402|0.072|15.0|0.939599991|16.329|0.207|5.2|0.897300005|12.153|0.206|5.3|1.10500002|9.096||1.3|1.04499996|0.99119997|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|ABBU|7|0000|11|23|1|23|3|21|0|22|22.904|23.019|23.37|23.56|0.0|0.0|0.0|0.0|129|D|129|D|0||0||43.5760002|2.89840007|9.359|2.705|0.0|18.5569992|3.53830004|21.759|3.385|0.0|218.259995|41.4239998|1097.715|21.806|0.0|14.6709995|10.8859997|298.375|8.871|1.544|16.161|0.26|0|0.261|15.818|0.212|0|0.319|12.296||32|0.825|9.04||32|0.576|16.871|0.283|0|16.659|0.246|0|15.508||32|10.032||32|16.422|0.26|0|16.137|0.212|0|13.121||32|9.616||32|16.081|0.246|1|15.741|0.19|1|12.84||32|9.296||32|15.612|0.198|1|15.286|0.155|1|13.347||32|9.031||32|15.026|0.139|1|14.778|0.117|1|12.317||32|8.553||32|14.506|0.102|1|14.327|0.091|1|12.051||32|8.23||32|14.143|0.085|1|13.977|0.077|1|11.839||32|8.021||32|13.916|0.079|1|13.721|0.069|1|11.7||32|7.777||32|16.459|0.354|0.074|1.571|22|1|55275.28745078|55277.33835439|55276.31436422|16.219|0.853|0.178|2.61599994|18|0|55275.28745078|55277.33835439|55276.31436422|12.104|1.259|0.275|4.4749999|16|2|55275.28745078|55277.33835439|55276.26724288|10.203|5.345|1.139|4.99100018|12|0|55275.28745078|55277.33835439|55276.30089811|39|-7|65|1|0|1|||||||||||||||||||||||||||||0|||||||600089401241004473|1|0.0012809612437608|0.00202090768622|-0.999997137531111|101000000|
+J012426.55-895146.3|21.1106608|-89.8628786|0.6712|0.6244|0.2005|302.909778|-27.2638566|270.3222216|-66.6097659|1918.691|686.932|89401241005277|0000m894_ab41-005277|0000m894_ab41|5277|17.078|0.119|9.1|0.824999988|16.939|0.346|3.1|1.01400006|12.003|0.186|5.8|1.00699997|9.111||1.1|1.03699994|0.965799987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|2|23|1|23|1|22|0|22|22.889|22.636|22.003|21.743|0.0|0.0|0.0|0.0|0||0||0||0||23.3780003|2.55699992|9.237|2.741|0.055|10.5769997|3.37350011|21.714|3.331|0.242|250.600006|42.9109993|1101.088|24.031|1.776|12.9060001|11.5229998|298.078|9.423|0.966|16.242|0.093|1|0.261|16.07|0.386|1|0.319|11.675||32|0.825|8.956||32|0.576|17.134|0.121|1|17.059|0.508|1|13.504||32|9.969||32|16.503|0.093|1|16.389|0.386|1|12.5||32|9.532||32|16.034|0.078|1|16.01|0.352|1|12.22||32|9.187||32|15.698|0.071|1|15.801|0.36|1|11.983||32|8.892||32|15.486|0.07|1|15.697|0.393|1|11.784||32|8.631||32|15.311|0.07|1|15.635|0.438|1|11.604||32|8.395||32|15.119|0.068|1|15.531|0.463|1|11.441||32|8.179||32|14.915|0.065|1|15.335|0.444|1|11.288||32|7.979||32|17.056|0.564|0.118|3.373|20|0|55275.55205887|55277.33835439|55276.39777605|16.793|1.747|0.364|3.48000002|15|0|55275.55205887|55277.33835439|55276.39777605|11.735|0.76|0.162|2.63599992|17|0|55275.55205887|55277.33835439|55276.3881014|10.168|3.49|0.744|3.79699993|13|0|55275.55205887|55277.33835439|55276.3881014|46|-19|10|1|0|0|||||||||||||||||||||||||||||0|||||||89401241005277|1|0.0022325997028046|0.0008619658256583|-0.999997136252641|101000000|
+J111318.79-895146.3|168.328332|-89.8628669|0.515|0.4753|0.0535|302.8680135|-27.0033871|269.6620056|-66.5880879|2122.331|703.267|1802089401241004584|1802m894_ab41-004584|1802m894_ab41|4584|16.559|0.082|13.2|0.978999972|16.645|0.286|3.8|1.00999999|12.946||-0.3|1.00800002|9.197||0.6|0.993700027|0.994499981|1|0|0.0|0.0|0.0|0.001|0000|0000|0|0nnn|ABUU|3|0000|7|21|1|21|0|21|0|21|21.476|21.486|21.629|21.441|0.0|0.0|0.0|0.0|0||0||0||0||37.6879997|2.8605001|9.929|2.784|0.091|13.8640003|3.6473|21.822|3.438|0.146|-14.099|52.5550003|1095.891|26.368|2.731|7.6638999|12.7740002|298.357|9.697|0.839|16.182|0.18|1|0.261|16.041|0.341|1|0.319|12.256||32|0.825|8.719||32|0.576|16.939|0.203|1|16.954|0.421|1|13.449||32|9.689||32|16.443|0.18|1|16.36|0.341|1|13.081||32|9.295||32|15.991|0.154|1|15.856|0.277|1|12.801||32|9.013||32|15.432|0.114|1|15.274|0.201|1|12.568||32|8.7||32|14.819|0.079|1|14.661|0.138|1|12.363||32|8.4||32|14.182|0.052|1|14.063|0.094|1|12.183||32|8.146||32|13.538|0.034|1|13.464|0.063|1|12.018||32|8.009||32|12.862|0.021|1|12.857|0.042|1|11.867||32|7.932||32|16.666|0.352|0.077|1.888|20|2|55274.75810734|55276.80913826|55275.79780276|16.387|1.374|0.3|3.66899991|14|0|55274.75810734|55276.80913826|55275.79780276|13.589|4.624|1.009|2.36199999|8|0|55274.75810734|55276.80913826|55275.79780276|10.046|3.935|0.859|3.398|10|0|55274.75810734|55276.80913826|55275.79780276|11|-37|-15|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004584|1|-0.002343932900277|0.0004841965400021|-0.999997135762033|111000000|
+J131755.32-895146.2|199.4805108|-89.8628491|0.5467|0.5184|0.1474|302.949663|-26.9919192|269.6755447|-66.5146351|1929.885|691.112|1802089401241004920|1802m894_ab41-004920|1802m894_ab41|4920|16.721|0.091|11.9|0.925000012|16.808|0.289|3.8|0.912599981|13.101||-2.7|1.08500004|9.511||-1.9|0.9648|0.969099998|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0nnn|ABUU|3|0000|10|24|1|24|1|24|0|24|24.677|24.616|24.881|24.8|0.0|0.0|0.0|0.0|8|h|0||0||0||32.4770012|2.73539996|10.457|2.455|0.837|11.9370003|3.17630005|21.971|3.072|0.066|-121.529999|45.5530014|1096.314|25.639|2.239|-24.1550007|12.4300003|298.667|9.972|0.697|16.444||32|0.261|16.319||32|0.319|12.866||32|0.825|8.723||32|0.576|16.924||32|16.906||32|14.048||32|9.733||32|16.705||32|16.638||32|13.691||32|9.299||32|16.656||32|19.123||32|13.413||32|8.952||32|16.521||32|20.63||32|13.181||32|8.66||32|16.317||32|15.897||32|12.978||32|8.398||32|16.134||32|15.488||32|12.785||32|8.161||32|15.647||32|15.003||32|12.139||32|7.945||32|15.141||32|15.115|0.378|1|12.395|0.501|1|7.746||32|16.634|0.418|0.085|2.081|22|0|55274.75810734|55276.80913826|55275.83323679|16.87|2.187|0.446|2.90499997|15|1|55274.75810734|55276.80913826|55275.83323679||||3.00399995|6|1|55274.75810734|55276.80913826|55275.83323679||||3.625|7|0|55274.75810734|55276.80913826|55275.83323679|-13|27|54|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004920|1|-0.0022567026972806|-0.000798276564902|-0.999997135019627|121000000|
+J004811.38-895146.2|12.0474242|-89.8628403|0.5857|0.5412|0.1494|302.934103|-27.2653023|270.3376068|-66.5889744|1973.041|703.216|89401241004987|0000m894_ab41-004987|0000m894_ab41|4987|16.683|0.094|11.5|0.842700005|17.221|0.485|2.2|0.871500015|12.924|0.456|2.4|1.11399996|8.959||1.1|1.03799999|0.959900022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACCU|7|0000|7|20|0|20|0|19|0|19|20.368|20.73|20.19|19.704|0.0|0.0|0.0|0.0|0||0||0||0||33.6279984|2.9137001|9.275|2.738|0.189|8.15810013|3.6414001|21.764|3.493|0.195|107.290001|45.0600014|1098.767|23.31|0.792|14.4980001|13.4230003|298.418|9.731|0.351|15.809|0.124|1|0.261|15.533|0.262|1|0.319|12.195||32|0.825|8.373||32|0.576|16.792|0.175|1|16.727|0.423|1|13.568||32|9.452||32|16.07|0.124|1|15.852|0.262|1|13.02||32|8.949||32|15.425|0.089|1|15.15|0.177|1|12.581||32|8.529||32|14.778|0.061|1|14.55|0.126|1|12.242||32|8.194||32|14.242|0.045|1|14.096|0.1|1|12.005||32|8.635|0.504|1|13.903|0.039|1|13.805|0.091|1|11.854||32|8.303|0.449|1|13.707|0.038|1|13.619|0.089|1|11.723||32|7.953|0.387|1|13.566|0.038|1|13.478|0.09|1|11.575||32|7.67|0.35|1|16.638|0.353|0.079|1.163|18|0|55275.55205887|55277.33835439|55276.42869092|17.156|2.545|0.569|3.329|13|0|55275.55205887|55277.33835439|55276.42869092|12.572|1.698|0.39|2.51699996|12|0|55275.55205887|55277.33835439|55276.41911578|9.795|2.239|0.514|3.375|11|0|55275.55205887|55277.33835439|55276.41911578|-16|-13|-19|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004987|1|0.0023411617634117|0.0004996549999032|-0.999997134649134|101000000|
+J051155.18-895146.1|77.9799246|-89.8628314|0.9444|1.09|0.2345|302.7920236|-27.1857956|270.0722041|-66.6948535|1937.695|693.795|600089401241005275|0600m894_ab41-005275|0600m894_ab41|5275|18.623||0.4|0.899699986|17.471||-0.4|0.988799989|11.761|0.141|7.7|1.10300004|9.03|0.316|3.4|1.11899996|1.01900005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn2n|UUBB|12|0000|0|23|0|23|5|22|1|22|22.419|22.773|22.321|22.534|0.0|0.0|0.0|0.0|0||0||0||0||0.87331003|2.38039994|9.335|2.815|0.022|-1.27090001|3.24160004|21.729|3.44|0.108|313.170013|40.7610016|1096.159|20.947|2.668|38.737999|11.2690001|298.379|9.052|0.927|17.155||32|0.261|16.278||32|0.319|12.111||32|0.825|8.681|0.398|1|0.576|17.766||32|17.003||32|13.351||32|9.99|0.533|1|17.416||32|16.597||32|12.936||32|9.257|0.398|1|17.066||32|16.164||32|12.582||32|8.751|0.335|1|16.648||32|15.694||32|12.277||32|8.444|0.322|1|16.896|0.507|1|15.935|0.48|1|12.013||32|8.257|0.335|1|16.179|0.31|1|15.358|0.333|1|11.775||32|8.114|0.356|1|15.433|0.182|1|14.814|0.235|1|11.544||32|7.986|0.377|1|14.664|0.103|1|14.271|0.164|1|11.359||32|7.884|0.403|1|21.148|||2.159|11|0|55275.28745078|55277.20605032|55276.25684072||||2.68700004|11|0|55275.28745078|55277.20605032|55276.25684072|11.742|0.957|0.204|3.63400006|18|2|55275.28745078|55277.20605032|55276.24075991|8.997|1.516|0.323|2.9000001|13|0|55275.28745078|55277.20605032|55276.24075991|60|68|22|1|2|0|||||||||||||||||||||||||||||0|||||||600089401241005275|1|0.0004985696747943|0.0023415513646136|-0.999997134278637|101000000|
+J093535.66-895145.0|143.8986199|-89.8625123|0.5944|0.5926|-0.2843|302.8154899|-27.0378375|269.7198193|-66.6414695|1903.237|681.592|1201089401241005056|1201m894_ab41-005056|1201m894_ab41|5056|16.479|0.094|11.6|0.842700005|17.292|0.514|2.1|0.9921|12.86||0.3|0.977999985|9.029||0.9|0.924000025|0.931999981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|5|23|0|23|0|23|0|23|23.466|23.605|23.194|23.244|0.0|0.0|0.0|0.0|0||0||0||0||40.5740013|3.49950004|9.437|2.848|0.239|7.64209986|3.6164|21.829|3.381|0.232|15.474|49.1650009|1094.576|24.632|5.033|12.0869999|13.3459997|297.587|9.925|1.239|16.268|0.24|1|0.261|16.029|0.24|1|0.319|12.365||32|0.825|8.338||32|0.576|17.038|0.272|1|17.101|0.341|1|13.563||32|9.467||32|16.529|0.24|1|16.348|0.24|1|13.19||32|8.914||32|15.984|0.188|1|15.679|0.169|1|12.907||32|8.55||32|15.397|0.136|1|15.067|0.119|1|12.676||32|8.336||32|14.93|0.107|1|14.569|0.091|1|12.329||32|8.191||32|14.574|0.091|1|14.198|0.077|1|11.968||32|8.108||32|14.309|0.083|1|13.938|0.07|1|11.683||32|7.991||32|14.163|0.083|1|13.785|0.07|1|11.43||32|7.792||32|16.445|0.394|0.082|1.804|22|0|55274.89041135|55276.94144233|55275.86561452|17.19|2.587|0.539|4.22100019|14|0|55274.89041135|55276.94144233|55275.86561452|13.485|4.382|0.914|2.92400002|12|0|55274.89041135|55276.94144233|55275.86561452|10.389|4.657|0.971|3.73799992|12|0|55274.89041135|55276.94144233|55275.86561452|1|34|-12|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241005056|1|-0.0019388266961667|0.0014138882812923|-0.999997120931341|111000000|
+J023933.06-895144.9|39.8877898|-89.8624958|0.1157|0.1205|0.0162|302.861629|-27.2506252|270.2661856|-66.6486635|2172.341|689.881|600089401241004016|0600m894_ab41-004016|0600m894_ab41|4016|14.123|0.027|40.1|1.48699999|14.129|0.041|26.3|1.00600004|11.839|0.156|6.9|1.10399997|9.608||-0.1|0.981299996|1.14400005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|110n|AABU|7|0000|23|23|21|23|4|22|0|22|23.822|23.632|22.89|22.831|0.0|0.0|0.0|0.0|0||0||0||0||355.540009|8.87269974|9.17|2.756|0.144|140.679993|5.35059977|21.693|3.407|0.126|291.470001|41.9459991|1099.827|22.04|0.0|-0.812860012|11.368|298.671|9.424|0.445|13.945|0.013|1|0.261|13.918|0.034|1|0.319|12.193||32|0.825|8.878||32|0.576|14.69|0.016|1|14.788|0.041|1|13.469||32|9.891||32|14.206|0.013|1|14.237|0.034|1|13.018||32|9.454||32|13.92|0.013|1|13.933|0.033|1|12.734||32|9.109||32|13.743|0.013|1|13.755|0.034|1|12.498||32|8.813||32|13.644|0.014|1|13.649|0.037|1|12.298||32|8.552||32|13.576|0.015|1|13.576|0.04|1|12.119||32|8.547||32|13.503|0.016|1|13.505|0.044|1|11.955||32|8.0||32|13.407|0.017|1|13.427|0.047|1|11.802||32|7.746||32|14.12|0.064|0.013|0.229|22|0|55275.55205887|55277.33835439|55276.39777605|14.119|0.178|0.037|0.785000026|22|0|55275.55205887|55277.33835439|55276.39777605|11.753|0.991|0.211|3.10800004|15|1|55275.55205887|55277.33835439|55276.3881014|12.724|||4.50500011|10|0|55275.55205887|55277.33835439|55276.3881014|32|-9|23|1|0|0||||||||||||||||||||||||||1101447050|0.239|21.5|1|15.344|0.047|14.652|0.044|14.31|0.083|600089401241004016|1|0.0018414467503001|0.001539021809477|-0.999997120238721|101000000|
+J135809.99-895144.8|209.5416644|-89.8624671|0.5719|0.557|0.1612|302.9762247|-26.996405|269.7000162|-66.4926101|1871.971|666.136|1802089401241005118|1802m894_ab41-005118|1802m894_ab41|5118|16.751|0.096|11.3|1.03499997|16.401|0.219|5.0|0.953800023|13.126||-0.4|1.11000001|9.525||-0.7|1.09200001|1.04499996|1|0|0.0|0.0|0.0|0.0|0000|hHH0|0|0nnn|ABUU|3|0000|7|22|1|22|0|22|0|22|24.06|24.516|24.968|24.691|0.0|0.0|0.0|0.0|8|h|1032|H|1032|H|0||31.5879993|2.80690002|9.998|2.265|0.2|17.3579998|3.49699998|21.919|3.093|0.033|-16.0610008|44.5060005|1096.322|24.781|1.063|-8.85109997|12.2720003|297.825|9.803|1.246|16.627||32|0.261|16.017||32|0.319|12.237||32|0.825|8.884||32|0.576|17.04||32|16.628||32|13.42||32|9.896||32|16.888||32|16.336||32|13.062||32|9.46||32|16.61||32|16.12||32|12.784||32|9.114||32|16.379||32|15.915||32|12.553||32|8.821||32|16.176||32|15.714||32|12.35||32|8.558||32|15.995||32|15.486||32|12.168||32|8.322||32|15.831||32|15.268||32|12.004||32|8.106||32|15.68||32|15.112||32|11.852||32|7.907||32|16.743|0.497|0.106|4.059|21|1|55274.89041135|55276.94144233|55275.93097005|16.202|0.931|0.199|2.91599989|18|0|55274.89041135|55276.94144233|55275.93097005|15.04|||4.54199982|11|0|55274.89041135|55276.94144233|55275.93097005||||1.85599995|10|0|55274.89041135|55276.94144233|55275.93097005|11|-30|-1|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005118|1|-0.0020883419500085|-0.001183532556722|-0.999997119035144|121000000|
+J081647.54-895144.5|124.1980927|-89.8623724|0.2911|0.2873|-0.0831|302.7879421|-27.0780032|269.8046385|-66.6744195|2022.786|711.468|1201089401241004565|1201m894_ab41-004565|1201m894_ab41|4565|15.922|0.053|20.3|0.948400021|15.752|0.123|8.8|0.971199989|12.068|0.201|5.4|1.08299994|9.124||1.0|0.904799998|0.9745|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|20|22|3|22|3|21|1|21|22.292|22.122|21.563|21.525|0.0|0.0|0.0|0.0|0||0||0||0||67.8130035|3.33870006|9.398|2.614|0.0|31.5599995|3.5848999|21.894|3.289|0.0|235.869995|43.7000008|1097.148|23.89|4.835|12.0489998|11.7309999|298.166|9.177|1.532|15.474|0.103|1|0.261|15.032|0.097|1|0.319|11.943||32|0.825|8.809||32|0.576|16.327|0.128|1|16.056|0.134|1|13.201||32|9.769||32|15.735|0.103|1|15.351|0.097|1|12.768||32|9.385||32|15.229|0.084|1|14.803|0.076|1|12.523||32|9.847||32|14.821|0.072|1|14.363|0.063|1|12.396||32|8.923||32|14.563|0.068|1|14.049|0.056|1|12.334||32|8.671||32|14.364|0.067|1|13.813|0.053|1|12.333||32|8.443||32|14.132|0.063|1|13.581|0.049|1|12.253||32|8.682||32|13.887|0.058|1|13.348|0.045|1|12.102||32|7.857||32|15.901|0.18|0.038|1.062|21|0|55274.89041135|55276.94144233|55275.92497939|15.762|0.587|0.125|3.40400004|20|0|55274.89041135|55276.94144233|55275.92497939|11.939|1.144|0.25|2.29399991|15|0|55274.89041135|55276.94144233|55275.8923299|10.595|4.998|1.091|5.07399988|11|1|55274.89041135|55276.94144233|55275.8923299|-5|0|-32|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004565|1|-0.0013500875456678|0.0019867357558247|-0.999997115068166|111000000|
+J183807.29-895144.2|279.5303866|-89.862287|0.3725|0.4035|-0.0955|303.0863795|-27.1200748|270.05701|-66.4248862|2176.804|688.787|3004089401241004764|3004m894_ab41-004764|3004m894_ab41|4764|16.345|0.066|16.4|0.918900013|16.743|0.289|3.8|0.798799992|12.807|0.391|2.8|0.980799973|9.287||0.6|0.989499986|0.917900026|1|0|0.0|0.0|0.0|0.001|0000|0000|0|0nnn|ABCU|7|0000|14|24|1|24|1|23|0|23|24.673|24.749|23.893|23.634|0.0|0.0|0.0|0.0|0||0||0||0||45.9150009|2.80679989|9.327|2.563|0.063|12.6660004|3.36949992|21.762|3.365|0.053|119.400002|43.0470009|1094.796|24.122|1.592|6.60830021|11.9729996|298.937|9.694|0.441|16.682|0.435|1|0.261|15.771||32|0.319|12.528|0.469|0|0.825|8.778||32|0.576|17.177|0.382|0|16.447||32|13.28||32|9.795||32|16.943|0.435|1|16.09||32|13.353|0.469|0|9.354||32|16.252||32|15.983||32|12.766|0.352|1|9.01||32|16.281||32|15.934||32|12.388|0.309|1|8.715||32|16.277||32|15.797||32|12.14|0.297|1|8.454||32|16.149||32|15.559||32|11.964|0.298|1|8.218||32|15.897||32|15.319||32|11.838|0.308|1|8.002||32|15.611||32|15.136||32|11.737|0.324|1|7.803||32|16.347|0.321|0.065|1.162|23|0|55275.28732341|55277.20605032|55276.16402342|16.684|1.328|0.271|2.97199988|18|0|55275.28732341|55277.20605032|55276.16402342|12.488|1.587|0.331|5.66499996|14|0|55275.28732341|55277.20605032|55276.14460624|10.308|3.903|0.814|2.41899991|12|0|55275.28732341|55277.20605032|55276.14460624|-16|-47|-4|0|1|0|||||||||||||||||||||||||||||0|||||||3004089401241004764|1|0.0003979562200764|-0.0023703693097825|-0.999997111485919|131000000|
+J064048.93-895144.1|100.2038993|-89.8622774|0.7385|0.8194|-0.2188|302.7773271|-27.1344527|269.938328|-66.6962412|2171.219|690.898|1201089401241005170|1201m894_ab41-005170|1201m894_ab41|5170|17.364|0.157|6.9|0.958700001|17.413||-0.6|0.867699981|11.813|0.15|7.3|1.05499995|9.587||0.0|1.01600003|0.970099986|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|1|22|0|22|3|21|0|21|22.51|23.115|22.462|22.872|0.0|0.0|0.0|0.0|0||0||0||0||17.9629993|2.59570003|9.38|2.805|0.1|-2.19919991|3.41729999|21.799|3.372|0.175|298.529999|41.1660004|1095.607|21.997|0.699|0.313789994|11.4329996|298.281|9.354|1.856|16.565|0.218|1|0.261|15.779||32|0.319|12.032||32|0.825|8.906||32|0.576|17.408|0.265|1|16.649||32|13.262||32|10.006||32|16.826|0.218|1|16.098||32|12.857||32|9.482||32|16.358|0.183|1|15.644||32|12.51||32|9.115||32|15.877|0.146|1|15.268||32|12.215||32|8.771||32|15.387|0.112|1|15.641|0.502|1|11.979||32|8.469||32|14.864|0.082|1|15.118|0.366|1|11.785||32|8.206||32|14.27|0.055|1|14.526|0.247|1|11.613||32|7.943||32|13.713|0.038|1|13.973|0.171|1|11.422||32|7.758||32|17.351|0.815|0.174|3.132|18|0|55275.02284279|55276.94144233|55276.12948978|20.311|||3.20799994|11|0|55275.02284279|55276.94144233|55276.12948978|11.77|0.844|0.184|5.04500008|17|1|55275.02284279|55276.94144233|55276.10657889|12.488|||4.51599979|7|0|55275.02284279|55276.94144233|55276.10657889|-1|-39|13|0|1|0|||||||||||||||||||||||||||||0|||||||1201089401241005170|1|-0.000425821519359|0.0023656927269863|-0.999997111082805|111000000|
+J160322.48-895144.1|240.843696|-89.8622727|0.0819|0.0791|-0.0183|303.0467958|-27.035924|269.8321259|-66.4403423|2045.003|712.598|2403089401241003995|2403m894_ab41-003995|2403m894_ab41|3995|12.036|0.024|46.0|1.05200005|11.922|0.022|49.6|1.07200003|12.071|0.214|5.1|1.05299997|9.132||1.0|1.046|1.05299997|1|0|0.0|0.0|0.0|0.0|0000|dd00|0|00nn|AABU|7|0000|25|25|25|25|3|24|0|24|24.756|24.808|23.927|23.785|0.0|0.0|0.0|0.0|9|dh|1|d|0||0||2430.0|52.8190002|9.729|2.233|0.0|1074.80005|21.6560001|21.795|2.98|0.0|235.190002|46.3810005|1095.356|25.075|0.0|11.7550001|11.7559996|298.652|9.701|1.103|12.026|0.009|0|0.261|11.932|0.014|0|0.319|12.044|0.445|0|0.825|8.682||32|0.576|12.664|0.009|0|12.696|0.015|0|12.765||32|9.619||32|12.287|0.009|0|12.251|0.014|0|12.869|0.445|0|9.258||32|12.132|0.01|0|12.062|0.015|0|12.379|0.367|0|9.316||32|12.01|0.011|1|11.919|0.016|1|12.002|0.322|1|8.8||32|11.796|0.01|1|11.695|0.015|1|11.658|0.282|1|8.54||32|11.425|0.009|1|11.355|0.014|1|11.328|0.245|1|8.217||32|11.007|0.008|1|10.991|0.012|1|11.043|0.219|1|7.955||32|10.689|0.007|1|10.702|0.011|1|10.833|0.208|1|7.757||32|12.038|0.017|0.003|0.153|24|0|55274.89041135|55276.94144233|55275.9701702|11.921|0.04|0.008|0.169|24|0|55274.89041135|55276.94144233|55275.9701702|11.929|0.918|0.187|4.08400011|19|0|55274.89041135|55276.94144233|55275.94348485|11.173|||4.33300018|16|0|55274.89041135|55276.94144233|55275.94348485|11|-8|-9|0|0|0||||||||||||||||||||||||||912456525|0.33|132.8|1|13.065|0.024|12.467|0.03|12.272|0.032|2403089401241003995|1|-0.00117111254719|-0.0020992168622307|-0.99999711088781|121000000|
+J114737.90-895144.0|176.9079405|-89.8622477|0.7704|0.7082|0.151|302.8894291|-26.995702|269.6540991|-66.5677584|2069.192|712.043|1802089401241004995|1802m894_ab41-004995|1802m894_ab41|4995|17.079|0.127|8.5|1.31299996|16.908|0.348|3.1|0.8847|13.035||-1.4|0.991900027|9.46||-2.1|0.983099997|1.03999996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|3nnn|BBUU|3|0000|4|21|0|21|0|21|0|21|20.627|21.073|21.143|22.352|0.0|0.0|0.0|0.0|0||0||0||0||23.3500004|2.74099994|9.969|2.674|0.183|10.8809996|3.4921|21.799|3.394|0.0|-66.4889984|48.394001|1094.623|25.293|3.078|-26.9529991|13.0299997|297.947|9.937|0.644|16.326|0.199|1|0.261|15.797||32|0.319|12.059||32|0.825|8.647||32|0.576|17.279|0.273|1|16.509||32|13.535||32|9.659||32|16.587|0.199|1|16.116||32|12.884||32|9.223||32|15.982|0.147|1|16.48|0.518|1|13.06|0.5|1|8.878||32|15.333|0.1|1|15.763|0.331|1|12.516|0.374|1|8.586||32|14.743|0.07|1|15.119|0.221|1|12.156|0.323|1|8.325||32|14.346|0.058|1|14.716|0.18|1|11.894|0.3|1|8.09||32|14.129|0.055|1|14.503|0.172|1|11.665|0.282|1|7.874||32|14.015|0.057|1|14.378|0.176|1|11.481|0.273|1|7.675||32|17.374|0.913|0.199|3.593|17|1|55274.75810734|55276.80913826|55275.79780276|16.939|1.779|0.388|2.00500011|12|0|55274.75810734|55276.80913826|55275.79780276||||3.21799994|7|0|55274.75810734|55276.80913826|55275.79780276||||3.6960001|5|0|55274.75810734|55276.80913826|55275.79780276|36|-4|29|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004995|1|-0.0024007279562325|0.0001296850941916|-0.999997109839352|111000000|
+J152808.75-895144.0|232.0364654|-89.8622242|0.3738|0.4075|0.1072|303.0296167|-27.021319|269.7878588|-66.4519422|2100.266|708.93|2403089401241005645|2403m894_ab41-005645|2403m894_ab41|5645|16.358|0.068|15.9|1.00399995|16.387|0.209|5.2|1.02699995|12.735||0.4|0.983299971|9.488||-2.3|1.01999998|1.00199997|1|0|0.0|0.0|0.0|0.0|0000|hH00|0|0nnn|ABUU|3|0000|13|23|1|23|0|22|0|22|23.911|23.318|22.861|23.499|0.0|0.0|0.0|0.0|8|h|1032|H|0||0||45.3740005|2.8585|9.88|2.358|0.0|17.5949993|3.38070011|21.8|3.18|0.0|21.0149994|53.3059998|1095.254|25.828|1.29|-29.8299999|12.6949997|298.764|10.023|0.414|16.297||32|0.261|15.962||32|0.319|12.14||32|0.825|8.724||32|0.576|16.714||32|16.67||32|13.367||32|9.735||32|16.558||32|16.281||32|12.965||32|9.3||32|16.375||32|16.054||32|12.753||32|8.954||32|16.138||32|15.954||32|12.673||32|8.659||32|15.94||32|15.901||32|12.582||32|8.399||32|15.756||32|15.717||32|12.399||32|8.162||32|15.594||32|15.555||32|12.237||32|7.946||32|15.442||32|15.403||32|12.085||32|7.747||32|16.304|0.302|0.063|0.999|21|0|55274.89041135|55276.94144233|55275.92886822|16.353|0.93|0.194|4.37099981|18|0|55274.89041135|55276.94144233|55275.92886822|13.471|3.222|0.687|2.60599995|9|0|55274.89041135|55276.94144233|55275.89787957||||2.2190001|7|0|55274.89041135|55276.94144233|55275.89787957|-5|77|98|0|2|2|||||||||||||||||||||||||||||0|||||||2403089401241005645|1|-0.0014792377601434|-0.0018958237951835|-0.999997108849714|121000000|
+J023504.61-895143.9|38.7692335|-89.8622184|0.1472|0.1522|0.0315|302.8641948|-27.2520724|270.2710025|-66.6467525|2179.176|688.066|600089401241004068|0600m894_ab41-004068|0600m894_ab41|4068|14.665|0.031|35.0|0.82160002|14.784|0.061|17.9|1.02199996|12.554|0.307|3.5|1.11099994|9.585||-0.2|0.950299978|0.972000003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABU|7|0000|23|23|18|23|1|22|0|22|23.913|23.726|22.91|22.737|0.0|0.0|0.0|0.0|0||0||0||0||215.839996|6.17010021|9.285|2.808|0.022|77.0149994|4.30219984|21.695|3.398|0.12|150.740005|42.6049995|1100.621|22.488|1.948|-1.77129996|11.6099997|298.691|9.542|0.88|14.226|0.023|1|0.261|14.27|0.046|1|0.319|12.221||32|0.825|8.894||32|0.576|15.073|0.028|1|15.221|0.06|1|13.404||32|9.905||32|14.487|0.023|1|14.589|0.046|1|13.046||32|9.47||32|14.095|0.021|1|14.18|0.041|1|12.769||32|9.125||32|13.856|0.02|1|13.913|0.039|1|12.541||32|8.83||32|13.74|0.022|1|13.754|0.04|1|12.334||32|8.568||32|13.683|0.024|1|13.663|0.043|1|12.153||32|8.332||32|13.641|0.027|1|13.597|0.047|1|11.99||32|8.116||32|13.593|0.029|1|13.526|0.05|1|11.837||32|7.916||32|14.677|0.061|0.013|0.292|22|0|55275.55205887|55277.33835439|55276.39777605|14.755|0.234|0.049|1.09000003|22|0|55275.55205887|55277.33835439|55276.39777605|12.329|1.219|0.26|4.42700005|15|0|55275.55205887|55277.33835439|55276.3881014|12.685|||3.11100006|9|0|55275.55205887|55277.33835439|55276.3881014|-3|-7|42|0|0|0||||||||||||||||||||||||||806836803|0.189|100.5|1|15.725|0.095|15.006|0.095|14.719|0.125|600089401241004068|1|0.0018749141704917|0.0015058127929686|-0.999997108608163|101000000|
+J170516.04-895143.8|256.3168682|-89.8621865|0.0629|0.0622|-0.0107|303.0703677|-27.0665047|269.9184837|-66.4267854|1948.851|698.95|2403089401241003913|2403m894_ab41-003913|2403m894_ab41|3913|6.325|0.045|24.1|0.953599989|6.467|0.02|54.4|0.955799997|6.288|0.015|73.4|1.176|6.151|0.041|26.3|1.10800004|1.02100003|1|0|0.114|0.024|0.0|0.0|3700|h000|0|0000|AAAA|15|0000|24|24|24|24|23|23|21|23|20.168|24.099|23.067|23.128|0.0|0.0|0.0|0.0|8|h|0||0||0||467780.0|19417.0|12.385|2.817|0.201|163310.0|3000.3999|21.895|2.87|0.0|48413.0|659.710022|1094.886|24.662|3.645|548.929993|20.8530006|298.938|9.926|1.709|7.42|0.005|16|0.261|6.56|0.005|16|0.319|6.289|0.006|0|0.825|6.176|0.043|0|0.576|8.231|0.005|16|7.335|0.005|16|7.7|0.006|0|7.228|0.044|0|7.681|0.005|16|6.879|0.005|16|7.114|0.006|0|6.752|0.043|0|7.451|0.005|16|6.703|0.005|16|6.805|0.006|0|6.477|0.045|0|7.348|0.005|16|6.634|0.005|16|6.645|0.006|0|6.341|0.052|1|7.296|0.005|16|6.602|0.005|16|6.563|0.006|0|6.287|0.063|1|7.264|0.005|16|6.584|0.005|16|6.521|0.006|0|6.262|0.076|1|7.243|0.005|16|6.572|0.005|16|6.498|0.007|0|6.253|0.092|1|7.227|0.005|16|6.564|0.005|16|6.484|0.007|0|6.254|0.111|1|6.307|0.048|0.01|0.325|23|0|55275.02271543|55276.94144233|55276.07305113|6.467|0.029|0.006|0.114|23|0|55275.02271543|55276.94144233|55276.07305113|6.288|0.017|0.003|0.0590000004|22|0|55275.02271543|55276.94144233|55276.04967863|6.136|0.124|0.026|0.575999975|22|0|55275.02271543|55276.94144233|55276.04967863|-8|9|7|0|0|0||||||||||||||||||||||||||12018402|0.262|80.9|1|7.593|0.02|6.704|0.031|6.385|0.024|2403089401241003913|1|-0.0005689781449936|-0.0023370320975519|-0.999997107268239|121000000|
+J050456.82-895143.8|76.2367796|-89.8621817|0.5401|0.5987|0.0939|302.7934038|-27.1898466|270.0828756|-66.6945482|1947.669|698.626|600089401241004797|0600m894_ab41-004797|0600m894_ab41|4797|17.342|0.152|7.1|0.886600018|15.855|0.132|8.3|1.29299998|11.823|0.148|7.3|1.09800005|8.988|0.311|3.5|0.993399978|1.06400001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBB|15|0000|2|23|3|23|2|22|0|22|22.659|22.976|22.789|22.792|0.0|0.0|0.0|0.0|0||0||0||0||18.3309994|2.57240009|9.33|2.755|0.053|28.7089996|3.47889996|21.766|3.379|0.051|295.600006|40.3129997|1097.501|21.601|0.0|40.262001|11.5270004|298.876|9.409|0.0|16.514|0.188|1|0.261|15.476|0.165|1|0.319|12.242||32|0.825|8.837|0.46|1|0.576|17.341|0.227|0|16.389|0.202|0|13.566||32|9.307||32|16.775|0.188|1|15.795|0.165|1|13.067||32|9.413|0.46|1|16.456|0.18|1|15.429|0.151|1|12.698||32|9.005|0.425|1|16.268|0.188|1|15.171|0.148|1|12.37||32|8.639|0.388|1|16.129|0.199|1|14.969|0.148|1|12.027||32|8.325|0.361|1|15.983|0.205|1|14.797|0.149|1|12.42|0.483|1|8.099|0.357|1|15.785|0.198|1|14.612|0.146|1|12.097|0.418|1|7.93|0.365|1|15.489|0.173|1|14.389|0.137|1|11.814|0.37|1|7.789|0.378|1|17.299|0.603|0.126|2.1|20|0|55275.28745078|55277.20605032|55276.25684072|16.307|1.125|0.234|2.20499992|18|0|55275.28745078|55277.20605032|55276.25684072|11.827|0.578|0.123|2.67600012|20|1|55275.28745078|55277.20605032|55276.24075991|8.773|0.887|0.189|3.72799993|18|0|55275.28745078|55277.20605032|55276.24075991|-35|15|0|1|0|0|||||||||||||||||||||||||||||0|||||||600089401241004797|1|0.0005722639905904|0.0023363148272882|-0.999997107069292|101000000|
+J041735.39-895143.8|64.3974771|-89.8621759|0.7695|0.8396|0.2|302.8105641|-27.2138302|270.1504782|-66.6849287|2346.411|554.922|1201089401241005678|1201m894_ab41-005678|1201m894_ab41|5678|17.412|0.159|6.8|1.02400005|16.791|0.304|3.6|1.0|12.067|0.194|5.6|1.03199995|9.57||0.0|0.972800016|1.005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBU|7|0000|3|22|1|22|1|21|0|21|23.314|23.414|22.747|22.848|0.0|0.0|0.0|0.0|0||0||0||0||17.1849995|2.5229001|9.359|2.617|0.316|12.1239996|3.39669991|21.756|3.346|0.0|236.119995|42.2150002|1097.135|21.912|0.0|0.120250002|11.7180004|298.623|9.221|1.024|16.564|0.459|1|0.261|15.944|0.348|1|0.319|12.808||32|0.825|8.851||32|0.576|16.691||32|16.958|0.474|1|13.903||32|9.86||32|16.825|0.459|1|16.263|0.348|1|13.633||32|9.427||32|16.111|0.31|1|15.672|0.263|1|13.348||32|9.087||32|15.506|0.22|1|15.179|0.208|1|13.116||32|8.793||32|15.209|0.202|1|14.907|0.195|1|12.917||32|8.534||32|15.205|0.237|1|14.841|0.216|1|12.742||32|8.3||32|15.387|0.326|1|14.876|0.259|1|12.581||32|8.085||32|15.576|0.446|1|14.882|0.3|1|12.432||32|7.887||32|17.443|1.153|0.246|3.681|18|1|55275.28745078|55277.33835439|55276.28285086|16.875|2.21|0.471|2.98099995|13|0|55275.28745078|55277.33835439|55276.28285086|12.049|1.025|0.224|5.96600008|17|1|55275.28745078|55277.33835439|55276.26724288||||3.26699996|10|0|55275.28745078|55277.33835439|55276.26724288|-9|-24|69|0|0|1|||||||||||||||||||||||||||||0|||||||1201089401241005678|1|0.0010394699297257|0.0021692959629606|-0.99999710682446|101000000|
+J053323.01-895142.8|83.3459007|-89.8618984|0.3379|0.3685|-0.0128|302.7855963|-27.1742107|270.0404533|-66.697875|1905.253|684.226|600089401241004437|0600m894_ab41-004437|0600m894_ab41|4437|16.195|0.065|16.8|0.971400023|16.52|0.246|4.4|0.903400004|11.703|0.135|8.1|1.17799997|9.411|0.45|2.4|1.00199997|1.00899994|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0n0n|ABBC|15|0000|16|22|1|22|4|21|0|21|23.235|23.42|22.645|22.6|0.0|0.0|0.0|0.0|0||0||0||0||52.7290001|3.14479995|9.319|2.823|0.01|15.5579996|3.51880002|21.667|3.402|0.064|330.299988|40.9980011|1095.898|21.395|1.997|27.2639999|11.3059998|298.423|9.033|0.739|16.136|0.135|0|0.261|15.737||32|0.319|12.139||32|0.825|8.829||32|0.576|16.738|0.132|0|16.376||32|13.307||32|9.801||32|16.397|0.135|0|16.056||32|12.964||32|9.405||32|16.233|0.15|1|15.91||32|12.759||32|9.156||32|16.04|0.156|1|15.759||32|13.222||32|8.846||32|15.768|0.147|1|15.505||32|13.48||32|8.415||32|15.424|0.126|1|15.154||32|12.137||32|8.04||32|15.003|0.1|1|15.375|0.421|1|11.827||32|7.785||32|14.535|0.075|1|14.809|0.288|1|11.513||32|7.582||32|16.217|0.275|0.059|1.043|21|0|55275.28745078|55277.20605032|55276.22872649|16.749|1.261|0.269|3.70799994|17|0|55275.28745078|55277.20605032|55276.22872649|11.717|0.845|0.184|3.06399989|18|1|55275.28745078|55277.20605032|55276.21054115|9.374|2.318|0.506|4.30000019|12|0|55275.28745078|55277.20605032|55276.21054115|7|-26|11|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004437|1|0.0002792964728855|0.0023940880248993|-0.999997095163786|101000000|
+J084223.64-895142.5|130.5985393|-89.8618169|0.6431|0.6189|-0.1947|302.7945747|-27.0637729|269.7729773|-66.6654662|1706.953|472.767|600089401241005867|0600m894_ab41-005867|0600m894_ab41|5867|17.02|0.114|9.5|0.991599977|16.846|0.317|3.4|0.941200018|12.115|0.204|5.3|1.04400003|8.924||1.6|1.04499996|1.00199997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BBBU|7|0000|6|23|2|23|3|22|2|22|23.422|23.576|22.318|22.425|0.0|0.0|0.0|0.0|0||0||0||0||24.6620007|2.59789991|9.368|2.644|0.02|11.526|3.36360002|21.873|3.24|0.219|225.990005|42.4309998|1095.849|23.674|4.256|19.25|11.7180004|298.161|9.58|1.412|15.949|0.103|0|0.261|15.832|0.192|0|0.319|11.479||32|0.825|8.272||32|0.576|16.852|0.135|0|16.812|0.255|0|12.685||32|9.265||32|16.21|0.103|0|16.151|0.192|0|12.304||32|8.848||32|15.765|0.088|0|15.728|0.169|0|12.092||32|8.547||32|15.4|0.078|1|15.397|0.155|1|13.225||32|8.991||32|15.013|0.066|1|15.026|0.133|1|11.83||32|8.07||32|14.557|0.051|1|14.576|0.104|1|11.647||32|7.834||32|14.089|0.039|1|14.116|0.079|1|11.484||32|7.618||32|13.69|0.031|1|13.717|0.063|1|11.332||32|7.419||32|16.989|0.689|0.144|3.154|21|1|55274.89041135|55276.94144233|55275.9260225|16.933|2.592|0.54|3.47199988|12|1|55274.89041135|55276.94144233|55275.9260225|11.967|1.273|0.271|3.22099996|16|2|55274.89041135|55276.94144233|55275.8949045|10.105|4.182|0.892|4.03100014|11|1|55274.89041135|55276.94144233|55275.8949045|4|74|-7|0|1|0|||||||||||||||||||||||||||||0|||||||600089401241005867|1|-0.0015694565635073|0.0018312108699497|-0.999997091732194|111000000|
+J040138.77-895142.1|60.4115447|-89.8616986|0.2449|0.2609|0.0528|302.8171544|-27.2214521|270.1725106|-66.6808807|2045.985|714.114|600089401241004264|0600m894_ab41-004264|0600m894_ab41|4264|15.682|0.046|23.7|0.973999977|15.911|0.142|7.7|1.06400001|12.382|0.252|4.3|1.10699999|9.023||1.4|0.940599978|1.01800001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|22|22|2|22|1|21|0|21|23.632|23.768|22.695|23.528|0.0|0.0|0.0|0.0|0||0||0||0||84.5559998|3.56340003|9.345|2.768|0.0|27.2649994|3.55999994|21.742|3.385|0.0|176.729996|40.9939995|1096.508|21.761|0.0|16.073|11.4460001|298.739|9.181|0.505|15.584|0.093|0|0.261|15.992|0.318|0|0.319|12.457||32|0.825|9.029||32|0.576|16.211|0.094|0|16.58|0.292|0|13.645||32|10.021||32|15.845|0.093|0|16.311|0.318|0|13.282||32|9.605||32|15.708|0.105|0|16.31|0.408|0|13.011||32|9.285||32|15.599|0.118|1|16.331|0.513|1|12.783||32|9.021||32|15.387|0.117|1|16.163|0.531|1|12.579||32|8.787||32|14.99|0.096|1|15.68|0.402|1|12.4||32|8.579||32|14.49|0.071|1|15.06|0.265|1|12.237||32|8.389||32|14.056|0.054|1|14.523|0.185|1|12.088||32|8.212||32|15.688|0.219|0.047|0.858|21|0|55275.28745078|55277.33835439|55276.28285086|15.939|0.716|0.153|2.95799994|20|0|55275.28745078|55277.33835439|55276.28285086|12.376|1.308|0.285|5.88800001|16|0|55275.28745078|55277.33835439|55276.26724288|9.585|1.948|0.425|2.78500009|11|0|55275.28745078|55277.33835439|55276.26724288|-24|38|51|1|1|1||||||||||||||||||||||||||728598314|0.175|133.3|1|16.838|0.21|15.962|0.22|15.366|0.228|600089401241004264|1|0.0011918600425501|0.0020990377582548|-0.999997086750821|101000000|
+J021806.03-895141.7|34.5251491|-89.8615993|0.1771|0.1818|0.0461|302.8744378|-27.2567679|270.2875622|-66.6388874|2204.385|678.9|600089401241004186|0600m894_ab41-004186|0600m894_ab41|4186|15.127|0.036|30.0|0.961000025|15.188|0.079|13.7|0.949500024|11.656|0.13|8.4|1.16299999|8.911||1.7|0.903100014|0.990499973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|011n|AABU|7|0000|23|23|11|23|5|22|0|22|22.833|23.174|22.116|21.778|0.0|0.0|0.0|0.0|0||0||0||0||141.039993|4.70870018|9.25|2.746|0.0|53.0519981|3.8828001|21.719|3.396|0.027|344.959991|41.2770004|1099.088|22.53|3.276|19.8670006|11.665|298.496|9.34|0.386|15.132|0.074|1|0.261|15.094|0.137|1|0.319|12.186|0.317|1|0.825|8.764||32|0.576|15.743|0.074|1|15.867|0.15|1|13.783|0.462|1|9.774||32|15.393|0.074|1|15.413|0.137|1|13.011|0.317|1|9.34||32|15.259|0.085|1|15.202|0.146|1|12.461|0.247|1|9.0||32|15.154|0.096|1|15.069|0.161|1|12.006|0.202|1|8.707||32|15.059|0.105|1|14.98|0.178|1|11.634|0.173|1|8.448||32|15.008|0.118|1|14.937|0.202|1|11.335|0.154|1|8.214||32|14.98|0.134|1|14.932|0.233|1|11.096|0.144|1|7.998||32|14.929|0.147|1|14.935|0.269|1|10.908|0.139|1|7.8||32|15.136|0.1|0.021|0.484|22|0|55275.55205887|55277.33835439|55276.39777605|15.167|0.299|0.062|1.62899995|22|0|55275.55205887|55277.33835439|55276.39777605|11.563|0.756|0.161|1.85000002|18|1|55275.55205887|55277.33835439|55276.3881014|9.627|2.118|0.452|4.70300007|14|0|55275.55205887|55277.33835439|55276.3881014|2|51|-13|0|2|0||||||||||||||||||||||||||1101433965|0.21|78.8|1|16.24|0.09|15.401|0.097|15.313|0.174|600089401241004186|1|0.0019901131620859|0.0013690534148821|-0.999997082566919|101000000|
+J140646.04-895141.6|211.6918626|-89.861562|0.3401|0.3401|0.0874|302.9820691|-26.9971205|269.7047335|-66.4877019|2221.924|670.015|2403089401241004891|2403m894_ab41-004891|2403m894_ab41|4891|16.111|0.06|18.1|0.943400025|15.937|0.143|7.6|0.934000015|13.11||-1.2|0.965600014|9.43||-1.4|1.01499999|0.961700022|1|0|0.0|0.0|0.0|0.0|0000|hhD0|0|0nnn|ABUU|3|0000|16|22|3|22|0|22|0|22|23.371|23.643|24.745|24.296|0.0|0.0|0.0|0.0|8|h|8|h|1161|DH|0||56.9510002|3.14650011|10.129|2.301|0.12|26.6219997|3.51020002|21.983|3.187|0.162|-52.5|45.1730003|1097.518|25.427|2.304|-18.0939999|13.3970003|298.553|10.105|0.892|16.018||32|0.261|16.205|0.495|0|0.319|12.867||32|0.825|8.734||32|0.576|16.504||32|16.228||32|14.039||32|9.88||32|16.279||32|16.524|0.495|0|13.692||32|9.31||32|16.153||32|16.229|0.488|1|13.412||32|8.845||32|15.841||32|15.929|0.457|1|13.08||32|8.497||32|15.97|0.505|1|15.509|0.375|1|12.53||32|8.241||32|15.117|0.271|1|15.012|0.28|1|12.071||32|8.0||32|14.503|0.18|1|14.509|0.206|1|12.225|0.374|1|7.728||32|13.94|0.123|1|13.994|0.147|1|11.744|0.275|1|7.455||32|16.098|0.293|0.062|1.357|21|0|55274.89041135|55276.94144233|55275.93097005|16.021|0.695|0.148|2.45300007|19|0|55274.89041135|55276.94144233|55275.93097005||||3.80900002|7|0|55274.89041135|55276.94144233|55275.93097005||||2.74099994|9|0|55274.89041135|55276.94144233|55275.93097005|14|18|68|0|0|1||||||||||||||||||||||||||858154132|0.419|-143.9|1|16.729||15.983|0.149|15.547||2403089401241004891|1|-0.0020559074171832|-0.0012693509665225|-0.999997080992148|121000000|
+J201101.01-895141.4|302.7542146|-89.8615137|0.0738|0.0708|0.0118|303.0782957|-27.1752064|270.1874827|-66.4441296|2033.491|714.31|3004089401241003942|3004m894_ab41-003942|3004m894_ab41|3942|10.371|0.023|47.0|1.11699998|10.458|0.02|55.0|0.990800023|10.201|0.045|24.2|1.02999997|9.563|0.52|2.1|0.962400019|1.023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|001n|AAAC|15|0000|25|25|24|24|18|24|0|24|26.416|26.519|25.917|25.603|0.0|0.0|0.0|0.0|0||0||0||0||11265.0|239.509995|9.323|2.791|0.107|4139.7002|75.2939987|21.812|3.364|0.225|1316.59998|54.2999992|1098.047|24.839|3.613|23.698|11.3559999|299.439|9.618|0.985|10.366|0.006|0|0.261|10.468|0.006|0|0.319|10.259|0.056|0|0.825|8.4||32|0.576|10.989|0.006|0|11.219|0.006|0|11.655|0.068|0|9.481||32|10.627|0.006|0|10.787|0.006|0|11.084|0.056|0|8.976||32|10.498|0.006|0|10.622|0.006|0|10.781|0.055|0|8.565||32|10.446|0.006|0|10.557|0.006|0|10.62|0.059|0|8.247||32|10.421|0.006|1|10.523|0.006|1|10.535|0.066|1|8.009||32|10.403|0.006|1|10.5|0.006|1|10.491|0.074|1|7.835||32|10.388|0.006|1|10.48|0.006|1|10.469|0.085|1|7.752||32|10.375|0.006|1|10.463|0.006|1|10.466|0.098|1|7.707||32|10.368|0.023|0.005|0.149|24|0|55275.28732341|55277.33835439|55276.26127983|10.455|0.026|0.005|0.144999996|23|0|55275.28732341|55277.33835439|55276.24397037|10.161|0.158|0.032|0.578000009|23|0|55275.28732341|55277.33835439|55276.24672405|9.476|2.652|0.541|4.1789999|14|0|55275.28732341|55277.33835439|55276.24672405|20|18|45|0|0|1||||||||||||||||||||||||||1126886727|0.347|116.7|1|11.132|0.021|10.562|0.024|10.455|0.022|3004089401241003942|1|0.001307706245833|-0.0020327284081942|-0.99999707895553|131000000|
+J142010.27-895141.3|215.0427952|-89.8614926|0.1299|0.1335|0.0236|302.9906096|-26.9998891|269.7158293|-66.4809216|2203.117|679.801|2403089401241004183|2403m894_ab41-004183|2403m894_ab41|4183|14.087|0.03|36.6|21.3199997|14.239|0.043|25.2|3.13800001|12.0|0.191|5.7|1.20799994|9.468||-0.2|1.13399994|6.671|3|0|0.0|0.0|0.0|0.0|0000|DDdD|1|nnnn|AABU|7|0000|21|21|21|22|2|22|0|22|22.192|22.702|22.757|23.454|0.0|0.0|0.0|0.0|137|Dh|137|Dh|9|dh|129|D|367.470001|10.0509996|9.659|2.28|0.054|127.220001|5.04390001|21.881|3.164|0.145|251.089996|44.2649994|1096.58|24.996|1.642|-2.0848999|12.9390001|298.422|9.829|0.306|13.371|0.025|1|0.261|13.456|0.033|1|0.319|11.449|0.177|1|0.825|8.399||32|0.576|14.393|0.035|1|14.575|0.049|1|13.012|0.25|1|9.561||32|13.632|0.025|1|13.775|0.033|1|12.274|0.177|1|8.975||32|13.126|0.02|1|13.234|0.026|1|11.83|0.152|1|8.613||32|12.743|0.018|1|12.82|0.022|1|11.514|0.141|1|8.338||32|12.447|0.016|1|12.497|0.02|1|11.257|0.134|1|8.025||32|12.219|0.016|1|12.238|0.019|1|11.032|0.128|1|8.44|0.498|1|12.03|0.015|1|12.019|0.018|1|10.84|0.125|1|8.184|0.474|1|11.868|0.015|1|11.83|0.017|1|10.682|0.124|1|7.932|0.445|1|14.093|0.288|0.063|1.054|20|9|55274.89041135|55276.94144233|55275.9017529|14.261|0.323|0.069|1.47899997|21|4|55274.89041135|55276.94144233|55275.93097005|12.031|1.029|0.219|4.76200008|16|2|55274.89041135|55276.94144233|55275.93097005||||4.63399982|12|0|55274.89041135|55276.94144233|55275.93097005|67|-4|-10|3|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004183|2|-0.0019791879177301|-0.001388046535516|-0.999997078066732|121000000|
+J060835.95-895140.8|92.1498131|-89.8613507|1.2323|1.4046|-0.0793|302.7788068|-27.1538389|269.9868513|-66.69926|2410.814|363.895|1802089401241005599|1802m894_ab41-005599|1802m894_ab41|5599|18.102||1.6|0.828100026|16.893||1.3|0.786599994|11.979|0.179|6.1|1.07799995|8.933||1.6|0.854300022|0.883099973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UUBU|4|0000|1|22|0|22|2|21|0|21|23.55|23.664|22.929|22.894|0.0|0.0|0.0|0.0|0||0||0||0||4.01009989|2.54710007|9.35|2.819|0.092|4.26609993|3.38560009|21.769|3.404|0.215|256.049988|42.1170006|1096.356|21.449|4.89|18.7019997|11.8179998|298.522|9.434|0.1|16.705||32|0.261|15.965||32|0.319|12.052||32|0.825|8.854||32|0.576|17.319||32|16.607||32|13.238||32|9.865||32|16.966||32|16.284||32|12.877||32|9.43||32|16.572||32|16.015||32|12.597||32|9.084||32|16.256||32|15.806||32|12.365||32|8.788||32|16.18||32|15.74||32|12.164||32|8.527||32|16.36||32|15.692||32|11.983||32|8.29||32|15.98||32|15.366||32|11.82||32|8.074||32|15.967|0.536|1|14.799||32|11.667||32|7.874||32|18.91|3.323|0.709|2.659|12|0|55275.28745078|55277.20605032|55276.22872649|18.041|4.603|0.981|2.93899989|11|0|55275.28745078|55277.20605032|55276.22872649|11.936|0.935|0.204|2.99300003|17|0|55275.28745078|55277.20605032|55276.21054115|9.895|3.872|0.845|1.95000005|12|0|55275.28745078|55277.20605032|55276.21054115|30|19|5|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005599|1|-0.00009077594385|0.0024181811430532|-0.999997072075557|111000000|
+J073522.85-895139.5|113.8452375|-89.860986|0.0661|0.0637|0.0105|302.7786174|-27.101582|269.8579909|-66.6877929|2088.194|713.756|1201089401241004038|1201m894_ab41-004038|1201m894_ab41|4038|8.713|0.022|49.4|1.02400005|8.771|0.02|53.1|1.68299997|8.633|0.02|54.4|1.35500002|8.285|0.175|6.2|1.06799996|1.27699995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|111n|AAAB|15|0000|20|20|20|20|19|19|2|19|22.637|22.58|21.606|21.636|0.0|0.0|0.0|0.0|0||0||0||0||51858.0|1049.5|9.419|2.725|0.112|19568.0|368.48999|21.988|3.327|0.112|5582.5|102.529999|1095.516|22.787|0.588|76.9199982|12.4320002|298.251|9.342|0.462|8.72|0.005|0|0.261|8.78|0.006|0|0.319|8.644|0.021|0|0.825|8.045|0.29|0|0.576|9.345|0.005|0|9.537|0.006|0|10.076|0.026|0|9.263|0.35|0|8.981|0.005|0|9.099|0.006|0|9.469|0.021|0|8.621|0.29|0|8.853|0.005|0|8.933|0.005|0|9.12|0.02|0|8.222|0.275|1|8.802|0.005|0|8.867|0.005|0|8.906|0.02|0|8.007|0.296|1|8.777|0.005|0|8.835|0.006|0|8.767|0.021|0|7.883|0.335|1|8.763|0.005|0|8.817|0.006|0|8.676|0.023|0|7.783|0.38|1|8.753|0.005|0|8.804|0.006|0|8.617|0.025|0|7.71|0.432|1|8.746|0.005|0|8.795|0.006|0|8.582|0.028|0|7.662|0.497|1|8.712|0.014|0.003|0.105|19|0|55275.02284279|55276.94144233|55276.02182099|8.779|0.018|0.004|0.0869999975|18|0|55275.02284279|55276.94144233|55276.02182099|8.638|0.055|0.013|0.342999995|18|0|55275.02284279|55276.94144233|55275.99083164|8.426|0.814|0.187|2.37199998|15|1|55275.02284279|55276.94144233|55275.99083164|39|26|36|1|1|1||||||||||||||||||||||||||946726928|0.733|91.7|1|9.439|0.022|8.928|0.022|8.791|0.023|1201089401241004038|1|-0.0009808541942469|0.0022191471562892|-0.999997056651143|111000000|
+J065423.40-895139.4|103.5975157|-89.8609505|0.2508|0.2638|-0.0649|302.7756943|-27.1262789|269.9173673|-66.6958393|2151.934|700.926|1201089401241004552|1201m894_ab41-004552|1201m894_ab41|4552|15.742|0.049|22.0|0.877900004|15.501|0.103|10.6|0.989000022|11.807|0.152|7.1|1.07799995|8.979||1.5|1.11899996|1.01199996|2|0|0.0|0.0|0.0|0.0|0000|0000|0|10nn|AABU|7|0000|20|22|5|22|3|21|0|21|22.825|22.956|23.063|23.044|0.0|0.0|0.0|0.0|0||0||0||0||80.0439987|3.63400006|9.346|2.755|0.0|39.7630005|3.76780009|21.818|3.299|0.0|300.160004|41.9920006|1095.75|21.728|4.782|17.4090004|11.5810003|298.28|9.271|1.793|15.013|0.055|1|0.261|14.809|0.122|1|0.319|12.077||32|0.825|8.869||32|0.576|15.999|0.077|1|15.897|0.179|1|13.188||32|9.881||32|15.274|0.055|1|15.128|0.122|1|12.902||32|9.445||32|14.571|0.037|1|14.485|0.087|1|12.631||32|9.096||32|13.952|0.026|1|13.939|0.065|1|12.401||32|8.805||32|13.545|0.022|1|13.548|0.055|1|12.195||32|8.544||32|13.336|0.021|1|13.313|0.052|1|12.014||32|8.308||32|13.239|0.023|1|13.184|0.054|1|11.847||32|8.092||32|13.193|0.025|1|13.12|0.058|1|11.699||32|7.892||32|15.736|0.242|0.052|1.098|21|0|55275.02284279|55276.94144233|55276.12948978|15.662|0.525|0.112|1.78299999|20|1|55275.02284279|55276.94144233|55276.12948978|11.799|0.875|0.191|2.5250001|18|1|55275.02284279|55276.94144233|55276.10657889|12.482|||4.49100018|12|0|55275.02284279|55276.94144233|55276.10657889|-9|16|0|0|0|0|||||||||||||||||||||||||||||0|||||||1201089401241004552|1|-0.0005705567433809|0.0023588464139909|-0.999997055149963|111000000|
+J212201.63-895138.9|320.5068276|-89.8608169|1.0728|0.9706|-0.295|303.0558356|-27.213115|270.2690594|-66.471959|1923.092|694.349|3004089401241005328|3004m894_ab41-005328|3004m894_ab41|5328|17.42|0.173|6.3|0.918299973|17.131|0.437|2.5|0.954900026|13.128||-2.0|0.895799994|9.498||-0.1|0.898699999|0.915000021|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BCUU|3|0000|3|21|0|21|0|20|0|20|22.773|23.219|23.261|22.606|0.0|0.0|0.0|0.0|0||0||0||0||17.0610008|2.72270012|9.244|2.874|0.013|8.86289978|3.56750011|21.639|3.538|0.137|-88.9889984|44.4539986|1098.857|24.906|1.521|-1.19000006|12.5799999|298.654|9.743|1.316|17.029|0.339|0|0.261|16.144||32|0.319|12.07||32|0.825|8.986||32|0.576|17.589|0.32|0|16.666||32|13.256||32|9.992||32|17.29|0.339|0|16.463||32|12.895||32|9.562||32|17.229|0.418|1|16.448||32|12.606||32|9.224||32|16.528||32|16.216||32|12.372||32|8.934||32|16.467||32|16.017||32|12.171||32|8.679||32|16.339||32|15.838||32|11.991||32|8.448||32|16.143||32|15.674||32|11.827||32|8.237||32|15.96||32|15.521||32|11.675||32|8.043||32|17.521|0.979|0.214|3.689|17|1|55275.55205887|55277.33835439|55276.39638167|17.114|2.527|0.552|2.86999989|13|0|55275.55205887|55277.33835439|55276.39638167||||0.771000028|3|0|55275.55205887|55277.33835439|55276.38566982||||2.72399998|8|0|55275.55205887|55277.33835439|55276.38566982|67||-65|2||0|||||||||||||||||||||||||||||0|||||||3004089401241005328|1|0.0018746150519481|-0.0015449382495143|-0.999997049487753|131000000|
+J181434.98-895138.6|273.6457735|-89.8607269|0.2016|0.2136|-0.0388|303.0863547|-27.1057719|270.0221401|-66.4217161|2212.495|677.453|3004089401241004705|3004m894_ab41-004705|3004m894_ab41|4705|15.383|0.04|27.4|1.023|15.549|0.104|10.4|0.931999981|12.726||1.0|1.07500005|8.808||1.9|0.93900001|0.990100026|2|0|0.0|0.0|0.0|0.0|0000|0000|0|10nn|AAUU|3|0000|24|24|7|24|1|23|0|23|23.87|23.784|22.886|22.863|0.0|0.0|0.0|0.0|0||0||0||0||111.389999|4.06330013|9.606|2.559|0.157|38.0369987|3.65969992|21.747|3.264|0.146|43.5139999|42.5970001|1096.126|25.25|0.409|23.1669998|12.1719999|299.173|9.714|0.966|15.195|0.098|1|0.261|15.586|0.349|1|0.319|12.398||32|0.825|8.414||32|0.576|15.931|0.11|1|16.331|0.376|1|13.572||32|9.402||32|15.456|0.098|1|15.905|0.349|1|13.223||32|8.99||32|15.195|0.099|1|15.785|0.401|1|12.94||32|8.756||32|15.013|0.104|1|15.812|0.511|1|12.688||32|8.58||32|14.866|0.109|1|15.053||32|12.419||32|8.318||32|14.732|0.114|1|15.03||32|12.169||32|8.083||32|14.587|0.116|1|14.975||32|11.946||32|7.868||32|14.44|0.116|1|14.922||32|11.733||32|7.67||32|15.393|0.184|0.038|0.744|23|0|55275.28732341|55277.20605032|55276.16402342|15.464|0.523|0.107|2.58899999|22|1|55275.28732341|55277.20605032|55276.16402342|13.141|4.03|0.84|4.15899992|12|0|55275.28732341|55277.20605032|55276.14460624|9.457|1.718|0.358|4.44099998|16|0|55275.28732341|55277.20605032|55276.14460624|-13|-22|33|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004705|1|0.0001545674329928|-0.002425851747597|-0.99999704567174|131000000|
+J154221.43-895138.4|235.5893125|-89.8606753|0.2611|0.2774|0.0646|303.0380425|-27.025774|269.8029739|-66.4456408|2078.386|715.524|2403089401241004971|2403m894_ab41-004971|2403m894_ab41|4971|15.859|0.049|22.2|0.889900029|15.829|0.121|8.9|0.908100009|13.051||-0.6|1.10300004|9.523||-0.5|1.02400005|0.976599991|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|1nnn|ABUU|3|0000|22|24|3|24|0|23|0|23|24.672|24.529|23.961|23.771|0.0|0.0|0.0|0.0|8|h|8|h|0||0||71.8479996|3.24359989|10.189|2.408|0.054|29.4109993|3.28979993|21.808|3.025|0.014|-26.3729992|47.7159996|1095.356|25.404|0.935|-5.55560017|12.2980003|298.594|9.88|0.155|16.244|0.479|0|0.261|15.966|0.345|0|0.319|12.316||32|0.825|8.442||32|0.576|16.808|0.454|0|16.858|0.418|0|13.575||32|9.457||32|16.505|0.479|0|16.285|0.345|0|13.141||32|9.018||32|16.358|0.539|1|15.834|0.294|1|12.72||32|8.672||32|16.016|0.489|1|15.379|0.24|1|12.322||32|8.379||32|15.524|0.375|1|14.917|0.19|1|11.969||32|8.118||32|15.021|0.279|1|14.482|0.15|1|12.374|0.519|1|7.882||32|14.557|0.211|1|14.096|0.123|1|11.998|0.427|1|7.666||32|14.23|0.18|1|13.799|0.107|1|11.69|0.37|1|7.467||32|15.865|0.271|0.055|1.201|23|1|55274.89041135|55276.94144233|55275.94073117|15.866|0.805|0.164|3.99099994|21|0|55274.89041135|55276.94144233|55275.94073117|14.104|5.094|1.062|1.28100002|10|0|55274.89041135|55276.94144233|55275.91160563||||5.33699989|8|0|55274.89041135|55276.94144233|55275.91160563|5|-25|-6|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004971|1|-0.0013741884091341|-0.0020061487032531|-0.999997043482428|121000000|
+J155516.20-895138.4|238.8175224|-89.8606689|0.6215|0.6517|0.246|303.0443544|-27.0312508|269.8195065|-66.4414038|1736.826|542.399|1802089401241004585|1802m894_ab41-004585|1802m894_ab41|4585|16.886|0.107|10.2|1.22099996|16.409|0.21|5.2|1.14900005|12.656||0.7|1.10399997|9.526||-0.8|0.981100023|1.11300004|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0nnn|ABUU|3|0000|5|25|1|25|0|24|0|24|24.896|24.604|24.016|23.712|0.0|0.0|0.0|0.0|8|h|0||0||0||27.9050007|2.74749994|10.048|2.3|0.073|17.2329998|3.32870007|21.763|2.994|0.115|36.8380013|50.2029991|1096.628|25.502|0.818|-10.0769997|12.2609997|298.856|9.696|0.225|15.214|0.114|1|0.261|15.02|0.242|1|0.319|11.754||32|0.825|8.817||32|0.576|16.577|0.223|1|16.4|0.457|1|13.047||32|9.826||32|15.475|0.114|1|15.339|0.242|1|12.579||32|9.393||32|14.472|0.059|1|14.365|0.128|1|12.213||32|8.837||32|13.524|0.031|1|13.406|0.066|1|11.871||32|8.424||32|12.608|0.017|1|12.501|0.035|1|11.513||32|8.183||32|11.784|0.01|1|11.725|0.021|1|11.785|0.424|1|8.08||32|11.142|0.008|1|11.137|0.015|1|11.372|0.338|1|8.042||32|10.731|0.007|1|10.754|0.012|1|11.096|0.301|1|7.843||32|16.886|0.508|0.102|1.42|21|0|55274.89041135|55276.94144233|55275.9701702|16.46|1.394|0.279|4.39300013|19|0|55274.89041135|55276.94144233|55275.9701702|13.049|2.884|0.589|4.99499989|11|0|55274.89041135|55276.94144233|55275.94348485||||2.93400002|9|0|55274.89041135|55276.94144233|55275.94348485|-21|-28|-36|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004585|1|-0.0012590935141135|-0.002080446130462|-0.999997043209339|121000000|
+J004202.13-895138.2|10.5089126|-89.8606383|0.1142|0.1159|0.022|302.9383463|-27.2674007|270.3448239|-66.5857485|1981.446|710.77|89401241004238|0000m894_ab41-004238|0000m894_ab41|4238|13.969|0.026|41.3|1.39499998|14.028|0.039|27.6|1.01499999|12.384|0.281|3.9|1.09599996|9.278|0.452|2.4|1.18599999|1.16999996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|AABC|15|0000|20|20|20|20|0|19|0|19|19.959|20.405|19.464|19.124|0.0|0.0|0.0|0.0|0||0||0||0||409.799988|9.92450047|9.266|2.7|0.123|154.509995|5.59569979|21.785|3.476|0.152|176.339996|45.6069984|1099.63|23.965|0.0|30.8129997|12.8360004|298.335|9.597|1.649|13.85|0.018|1|0.261|13.897|0.059|1|0.319|11.915||32|0.825|8.723|0.48|1|0.576|14.549|0.019|0|14.717|0.067|0|13.237||32|9.142||32|14.111|0.018|1|14.216|0.059|1|12.74||32|9.299|0.48|1|13.881|0.018|1|13.963|0.061|1|12.321||32|8.981|0.491|1|13.709|0.019|1|13.796|0.064|1|11.988||32|8.706|0.498|1|13.545|0.019|1|13.646|0.067|1|11.731||32|8.415|0.482|1|13.393|0.02|1|13.498|0.069|1|11.526||32|8.16|0.472|1|13.277|0.02|1|13.375|0.072|1|11.355||32|7.964|0.48|1|13.193|0.022|1|13.291|0.076|1|11.203||32|7.782|0.486|1|13.967|0.049|0.011|0.148|19|0|55275.55205887|55277.33835439|55276.42869092|14.024|0.163|0.037|0.626999974|19|0|55275.55205887|55277.33835439|55276.42869092|12.366|1.419|0.326|2.28200006|13|0|55275.55205887|55277.33835439|55276.41911578|9.694|2.113|0.485|3.97900009|11|0|55275.55205887|55277.33835439|55276.41911578|-24|-45|-3|0|1|0||||||||||||||||||||||||||1085364149|0.235|171.6|1|14.738|0.029|14.268|0.055|13.997|0.065|89401241004238|1|0.0023915194678792|0.0004436267352798|-0.999997041910602|101000000|
+J075548.19-895137.9|118.950826|-89.8605472|0.4492|0.4585|-0.1361|302.7814167|-27.0894241|269.829461|-66.6826428|2055.867|717.045|1201089401241004810|1201m894_ab41-004810|1201m894_ab41|4810|16.808|0.097|11.2|0.896600008|15.72|0.119|9.1|0.98119998|11.887|0.162|6.7|1.25999999|9.416|0.465|2.3|1.15199995|1.06500006|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|0n3n|ABBC|15|0000|4|22|2|22|6|21|1|21|21.843|21.885|21.392|21.662|0.0|0.0|0.0|0.0|8|h|8|h|0||0||29.9839993|2.67869997|9.431|2.581|0.0|32.5060005|3.55570006|21.848|3.239|0.661|278.619995|41.4770012|1095.49|22.869|3.209|27.1389999|11.6129999|297.887|9.138|0.444|16.759|0.328|1|0.261|15.644|0.314|1|0.319|11.97||32|0.825|8.463||32|0.576|17.328|0.314|1|16.459|0.356|1|13.295||32|9.578||32|17.02|0.328|1|15.963|0.314|1|12.795||32|9.039||32|16.772|0.336|1|15.652|0.304|1|13.178|0.535|1|8.615||32|16.282|0.264|1|15.353|0.285|1|12.832|0.481|1|8.215||32|15.652|0.179|1|15.036|0.257|1|12.575|0.458|1|8.541|0.486|1|15.075|0.124|1|14.719|0.227|1|12.388|0.456|1|8.135|0.413|1|14.598|0.093|1|14.39|0.195|1|12.246|0.465|1|7.826|0.377|1|14.164|0.072|1|14.015|0.159|1|12.108|0.469|1|7.571|0.357|1|16.9|0.394|0.084|2.732|21|1|55274.89041135|55276.94144233|55275.92497939|15.741|0.489|0.104|1.90100002|21|0|55274.89041135|55276.94144233|55275.92497939|12.084|1.444|0.315|5.69700003|15|5|55274.89041135|55276.94144233|55275.8923299|9.346|1.851|0.404|4.98099995|13|1|55274.89041135|55276.94144233|55275.8923299|-1|56|42|0|2|1|||||||||||||||||||||||||||||0|||||||1201089401241004810|1|-0.0011781542443299|0.0021297552126471|-0.999997038043269|111000000|
+J025905.45-895137.7|44.7727214|-89.8604775|0.4997|0.5185|0.131|302.8489547|-27.2465656|270.2499912|-66.6587757|2144.515|704.337|600089401241004712|0600m894_ab41-004712|0600m894_ab41|4712|16.716|0.088|12.4|0.84920001|17.352|0.532|2.0|0.894299984|12.131|0.193|5.6|1.16499996|9.122||1.2|1.13|1.00300002|1|0|0.0|0.0|0.0|0.005|0000|0000|0|0nnn|ACBU|7|0000|7|24|0|24|2|23|0|23|23.764|23.768|22.911|22.717|0.0|0.0|0.0|0.0|0||0||0||0||32.637001|2.63669991|9.324|2.734|0.0|7.2342|3.54489994|21.746|3.525|0.0|222.699997|39.6570015|1098.975|21.806|3.266|13.2209997|11.1719999|298.94|9.255|1.286|16.536|0.184|0|0.261|15.774||32|0.319|12.498||32|0.825|8.737||32|0.576|17.189|0.189|0|16.48||32|13.809||32|9.908||32|16.797|0.184|0|16.093||32|13.323||32|9.313||32|16.467|0.177|1|15.741||32|12.927||32|8.944||32|15.916|0.132|1|15.868|0.406|1|12.546||32|8.688||32|15.256|0.087|1|15.137|0.251|1|12.183||32|8.422||32|14.722|0.063|1|14.581|0.178|1|12.522|0.442|1|8.129||32|14.396|0.054|1|14.222|0.149|1|12.256|0.402|1|7.847||32|14.228|0.054|1|14.014|0.141|1|12.096|0.399|1|7.58||32|16.735|0.485|0.099|4.016|23|1|55275.28745078|55277.33835439|55276.3515125|17.18|2.485|0.507|3.19099998|12|0|55275.28745078|55277.33835439|55276.3515125|12.075|1.065|0.222|3.31299996|17|0|55275.28745078|55277.33835439|55276.34024702|9.887|3.798|0.792|3.02099991|12|0|55275.28745078|55277.33835439|55276.34024702|27|15|-21|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241004712|1|0.0017287092971731|0.0017150486620491|-0.999997035081731|101000000|
+J012021.42-895137.5|20.0892806|-89.8604433|0.9975|0.9368|0.3038|302.9121575|-27.2666021|270.3301297|-66.6082979|1922.491|695.171|89401241005522|0000m894_ab41-005522|0000m894_ab41|5522|17.498|0.174|6.2|0.989400029|16.734||1.7|0.99879998|12.401|0.273|4.0|0.95450002|9.544||-0.6|1.06599998|0.99150002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|1|22|0|22|0|21|0|21|22.719|22.511|21.955|21.62|0.0|0.0|0.0|0.0|0||0||0||0||15.8719997|2.5474999|9.283|2.739|0.104|5.90080023|3.4381001|21.741|3.389|0.076|173.679993|43.6829987|1100.405|23.291|0.629|-7.35699987|12.0629997|299.031|9.89|0.329|17.211|0.445|1|0.261|15.813||32|0.319|11.647||32|0.825|8.943||32|0.576|17.886|0.469|1|16.61||32|12.961||32|9.953||32|17.472|0.445|1|16.132||32|12.472||32|9.519||32|17.165|0.437|1|15.73||32|12.075||32|9.175||32|16.845|0.403|1|16.085|0.485|1|11.808||32|8.878||32|16.466|0.342|1|15.667|0.398|1|11.647||32|8.617||32|16.056|0.277|1|15.297|0.333|1|11.588||32|8.381||32|15.644|0.221|1|14.953|0.282|1|11.591||32|8.165||32|15.217|0.172|1|14.592|0.233|1|11.991||32|8.94||32|17.489|0.643|0.137|2.373|19|0|55275.55205887|55277.33835439|55276.42719412|17.299|2.075|0.442|2.74099994|15|0|55275.55205887|55277.33835439|55276.42719412|12.274|0.84|0.183|2.8210001|16|0|55275.55205887|55277.33835439|55276.41845963||||3.18400002|8|0|55275.55205887|55277.33835439|55276.41845963|23|-10|-59|0|0|1|||||||||||||||||||||||||||||0|||||||89401241005522|1|0.0022875283491903|0.000836631250425|-0.999997033626702|101000000|
+J164536.85-895137.3|251.4035481|-89.8603802|0.1096|0.1121|-0.015|303.0656526|-27.0552335|269.8886589|-66.4283392|1978.024|710.807|2403089401241004114|2403m894_ab41-004114|2403m894_ab41|4114|13.161|0.03|36.6|3.4289999|13.146|0.028|38.1|1.43299997|12.892||0.3|1.12899995|9.422||-2.1|0.975499988|1.76199996|3|0|0.0|0.0|0.0|0.0|0000|hh00|1|00nn|AAUU|3|0000|24|24|24|24|1|23|0|23|23.927|24.425|23.196|23.099|0.0|0.0|0.0|0.0|8|h|8|h|0||0||862.179993|23.5650005|10.717|2.438|0.073|348.029999|9.12790012|21.782|2.846|0.329|16.2929993|47.0779991|1095.673|24.643|1.637|-28.8670006|13.4919996|298.93|9.639|0.828|12.814|0.012|1|0.261|12.783|0.017|1|0.319|11.695||32|0.825|8.937||32|0.576|13.598|0.014|1|13.695|0.022|1|12.987||32|10.009||32|13.075|0.012|1|13.102|0.017|1|12.52||32|9.513||32|12.762|0.012|1|12.744|0.016|1|12.109||32|8.924||32|12.519|0.012|1|12.469|0.016|1|11.761||32|8.342||32|12.28|0.011|1|12.211|0.015|1|11.491||32|8.451|0.435|1|12.017|0.011|1|11.942|0.014|1|11.266||32|7.735|0.278|1|11.734|0.01|1|11.655|0.013|1|11.035||32|7.12|0.192|1|11.426|0.009|1|11.346|0.011|1|11.459|0.487|1|6.712|0.158|17|13.161|0.035|0.007|0.152|23|0|55275.02271543|55276.94144233|55276.01516015|13.157|0.068|0.014|0.338999987|23|0|55275.02271543|55276.94144233|55276.01516015|13.908|7.615|1.588|2.95499992|10|0|55275.02271543|55276.94144233|55275.98927066||||2.02200007|6|0|55275.02271543|55276.94144233|55275.98927066|-4|14|-2|0|0|0||||||||||||||||||||||||||11976068|0.253|-51.1|1|13.885|0.039|13.493|0.049|13.383|0.043|2403089401241004114|1|-0.0007771042314293|-0.002309591610347|-0.999997030943396|121000000|
+J012719.34-895137.3|21.8306145|-89.8603734|1.1745|1.1213|0.3479|302.9074215|-27.2660728|270.3265244|-66.6122921|1912.053|691.369|89401241005766|0000m894_ab41-005766|0000m894_ab41|5766|17.52|0.184|5.9|0.981599987|16.895||1.3|0.928499997|12.897||0.6|1.01600003|9.416||0.1|1.08399999|0.998199999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|BUUU|1|0000|4|22|0|22|0|21|0|21|22.891|22.574|22.003|21.729|0.0|0.0|0.0|0.0|0||0||0||0||15.566|2.6421001|9.283|2.739|0.138|4.34100008|3.33699989|21.741|3.389|0.185|25.9400005|41.9830017|1100.405|23.291|2.776|1.36119998|12.8920002|299.031|9.89|1.053|16.793|0.307|1|0.261|16.402|0.527|1|0.319|11.809||32|0.825|8.916||32|0.576|17.696|0.394|1|16.534||32|13.005||32|9.923||32|17.054|0.307|1|16.721|0.527|1|12.634||32|9.492||32|16.454|0.23|1|16.22|0.433|1|12.348||32|9.148||32|15.999|0.187|1|15.866|0.387|1|12.117||32|8.852||32|15.724|0.174|1|15.653|0.382|1|11.918||32|8.591||32|15.536|0.173|1|15.53|0.402|1|11.737||32|8.355||32|15.375|0.173|1|15.432|0.427|1|11.575||32|8.138||32|15.221|0.173|1|15.319|0.442|1|11.422||32|7.939||32|17.405|0.967|0.206|4.024|17|1|55275.55205887|55277.33835439|55276.42719412|17.869|3.984|0.849|3.48900008|11|0|55275.55205887|55277.33835439|55276.42719412|13.158|2.223|0.485|1.87300003|15|0|55275.55205887|55277.33835439|55276.41845963|11.395|||3.74900007|9|0|55275.55205887|55277.33835439|55276.41845963|-68|13|-22|2|0|0|||||||||||||||||||||||||||||0|||||||89401241005766|1|0.0022621822087939|0.0009062107394718|-0.999997030652466|101000000|
+J175339.04-895136.8|268.4126801|-89.8602286|0.1966|0.2127|-0.0354|303.0839511|-27.0932043|269.990321|-66.4209909|1875.943|674.998|2403089401241004929|2403m894_ab41-004929|2403m894_ab41|4929|15.352|0.039|27.5|1.07700002|15.526|0.097|11.2|0.990700006|12.449||1.8|1.07299995|9.419||0.2|1.12|1.06200004|1|0|0.0|0.0|0.0|0.0|0000|h000|0|11nn|AAUU|3|0000|24|24|7|24|2|23|1|23|24.165|24.728|23.401|23.375|0.0|0.0|0.0|0.0|8|h|0||0||0||114.620003|4.16470003|9.544|2.458|0.0|38.8610001|3.45959997|21.765|3.208|0.105|77.887001|44.0979996|1095.632|24.934|3.441|2.43239999|12.3179998|298.341|9.611|1.49|15.173|0.062|0|0.261|15.06|0.096|0|0.319|11.9||32|0.825|8.773||32|0.576|15.877|0.069|0|15.963|0.12|0|13.07||32|10.013||32|15.434|0.062|0|15.379|0.096|0|12.725||32|9.349||32|15.214|0.066|0|15.073|0.093|0|12.448||32|8.831||32|15.063|0.071|0|14.876|0.097|0|12.216||32|8.502||32|14.928|0.075|1|14.701|0.099|1|12.012||32|8.222||32|14.788|0.078|1|14.512|0.098|1|11.834||32|7.933||32|14.629|0.078|1|14.296|0.094|1|11.667||32|7.629||32|14.453|0.077|1|14.068|0.088|1|11.517||32|8.074|0.533|17|15.351|0.192|0.039|0.889|23|0|55275.28732341|55277.20605032|55276.16402342|15.524|0.483|0.099|1.78100002|22|0|55275.28732341|55277.20605032|55276.16402342|12.514|1.907|0.398|3.00200009|12|0|55275.28732341|55277.20605032|55276.14460624||||5.15700006|9|1|55275.28732341|55277.20605032|55276.14460624|-40|-25|49|1|0|0||||||||||||||||||||||||||970465613|0.246|-49.3|1|16.313|0.123|15.46|0.144|15.171|0.168|2403089401241004929|1|-0.0000675742768252|-0.0024385319513423|-0.999997024493393|121000000|
+J000302.68-895136.8|0.7611963|-89.8602251|0.2481|0.2357|0.052|302.9648729|-27.2648229|270.3513815|-66.5621726|2043.133|717.939|89401241004548|0000m894_ab41-004548|0000m894_ab41|4548|15.575|0.044|24.8|1.12699997|15.532|0.113|9.6|1.046|13.078|0.517|2.1|0.999599993|9.468||-0.7|1.12199998|1.07000005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|10nn|ABCU|7|0000|20|20|6|20|0|19|0|19|21.646|21.19|20.423|20.792|0.0|0.0|0.0|0.0|0||0||0||0||93.3450012|3.76209998|9.271|2.749|0.016|38.6389999|4.02699995|21.77|3.497|0.333|93.0879974|44.3050003|1098.697|23.341|1.031|-9.45680046|12.934|298.585|9.55|0.741|15.1|0.05|1|0.261|14.954|0.104|1|0.319|12.006||32|0.825|8.793||32|0.576|15.94|0.062|1|15.911|0.135|1|13.191||32|9.8||32|15.361|0.05|1|15.273|0.104|1|12.831||32|9.369||32|14.968|0.045|1|14.862|0.091|1|12.554||32|9.026||32|14.636|0.041|1|14.532|0.083|1|12.326||32|8.736||32|14.395|0.04|1|14.278|0.079|1|12.122||32|8.476||32|14.264|0.041|1|14.116|0.08|1|11.943||32|8.242||32|14.2|0.045|1|14.035|0.087|1|11.778||32|8.027||32|14.156|0.05|1|13.999|0.096|1|11.629||32|7.829||32|15.57|0.217|0.049|0.898|19|1|55275.55205887|55277.33835439|55276.42869092|15.481|0.508|0.114|2.05200005|19|0|55275.55205887|55277.33835439|55276.42869092|13.041|2.229|0.511|5.72300005|11|0|55275.55205887|55277.33835439|55276.41911578||||4.67700005|10|0|55275.55205887|55277.33835439|55276.41911578|19|-5|9|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004548|1|0.0024393142840748|0.0000324091259741|-0.999997024343309|101000000|
+J010053.19-895136.1|15.2216625|-89.8600326|0.2741|0.2645|0.0612|302.9254259|-27.2680047|270.340029|-66.5970902|1951.779|705.62|89401241004624|0000m894_ab41-004624|0000m894_ab41|4624|15.74|0.05|21.8|0.837000012|15.635|0.119|9.1|0.880599976|12.327|0.262|4.1|1.06799996|9.514||-0.9|0.98150003|0.936500013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|01nn|ABBU|7|0000|19|20|5|20|0|19|0|19|21.515|22.106|21.607|21.208|0.0|0.0|0.0|0.0|0||0||0||0||80.1399994|3.6796|9.261|2.629|0.087|35.151001|3.84719992|21.762|3.395|0.552|185.929993|44.9259987|1098.729|22.836|2.143|-11.5710001|12.3950005|298.661|9.485|0.247|15.58|0.068|0|0.261|15.093||32|0.319|12.522||32|0.825|8.632||32|0.576|16.267|0.073|0|15.75||32|13.72||32|9.644||32|15.841|0.068|0|15.412||32|13.347||32|9.208||32|15.62|0.071|1|15.26||32|13.067||32|8.86||32|15.44|0.074|1|15.189||32|12.799||32|8.565||32|15.253|0.076|1|15.149||32|12.505||32|8.303||32|15.037|0.073|1|15.056||32|12.254||32|8.068||32|14.801|0.069|1|14.887||32|12.043||32|7.851||32|14.577|0.064|1|14.695||32|11.81||32|7.652||32|15.719|0.161|0.036|1.164|19|0|55275.55205887|55277.33835439|55276.42869092|15.611|0.494|0.11|2.03299999|19|0|55275.55205887|55277.33835439|55276.42869092|12.247|1.151|0.264|1.94200003|14|0|55275.55205887|55277.33835439|55276.41911578||||2.15899992|5|0|55275.55205887|55277.33835439|55276.41911578|3|53|31|0|1|0||||||||||||||||||||||||||1085423003|0.197|72.4|1|16.568|0.147|16.122|0.236|15.51|0.234|89401241004624|1|0.0023571869771158|0.0006413906216524|-0.999997016139361|101000000|
+J233558.07-895135.4|353.991964|-89.8598576|1.1111|1.026|0.2057|302.9828979|-27.2607595|270.3501682|-66.5456497|2086.399|716.919|89401241005464|0000m894_ab41-005464|0000m894_ab41|5464|17.448|0.169|6.4|0.863300025|17.394||-1.0|0.871500015|12.876||0.6|0.974900007|9.227||0.7|1.06200004|0.938799977|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|3|22|0|22|0|21|0|21|22.521|22.93|22.079|21.944|0.0|0.0|0.0|0.0|0||0||0||0||16.6200008|2.58839989|9.268|2.774|0.023|-3.33529997|3.47959995|21.741|3.377|0.215|26.8190002|42.651001|1100.562|24.339|2.082|8.0326004|12.1269999|298.365|9.703|0.644|16.402|0.169|1|0.261|16.056||32|0.319|12.079||32|0.825|8.57||32|0.576|17.412|0.242|1|16.966||32|13.265||32|9.63||32|16.663|0.169|1|16.375||32|12.904||32|9.146||32|15.963|0.116|1|16.522|0.537|1|12.618||32|8.831||32|15.413|0.087|1|15.846|0.358|1|12.382||32|8.64||32|15.082|0.077|1|15.491|0.31|1|12.109||32|8.49||32|14.929|0.079|1|15.341|0.318|1|11.899||32|8.34||32|14.855|0.086|1|15.257|0.342|1|11.753||32|8.124||32|14.774|0.091|1|15.159|0.36|1|11.857||32|7.926||32|17.451|0.977|0.208|4.127|18|1|55275.55205887|55277.33835439|55276.43921019||||3.38499999|7|0|55275.55205887|55277.33835439|55276.43921019|13.207|2.047|0.447|4.1869998|11|0|55275.55205887|55277.33835439|55276.43104789|10.394|4.995|1.09|2.99600005|11|0|55275.55205887|55277.33835439|55276.43104789|-24|44|7|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005464|1|0.0024325086982916|-0.0002560119109774|-0.999997008675193|131000000|
+J135220.69-895135.3|208.0862375|-89.8598272|0.7025|0.6955|0.2121|302.9732318|-26.9928985|269.6899334|-66.4944086|2244.003|662.288|2403089401241005940|2403m894_ab41-005940|2403m894_ab41|5940|17.002|0.113|9.6|0.859899998|17.313|0.466|2.3|0.876999974|13.174||-0.3|1.04400003|9.569||-0.7|1.15900004|0.98299998|1|0|0.0|0.0|0.0|0.0|0000|hHH0|0|nnnn|BCUU|3|0000|3|24|1|24|1|24|0|24|24.523|24.618|24.908|24.791|0.0|0.0|0.0|0.0|8|h|1032|H|1032|H|0||25.066|2.60730004|10.321|2.323|0.0|7.49510002|3.21670008|22.086|3.106|0.0|-11.2180004|42.5839996|1094.753|24.534|1.203|-8.19460011|11.7869997|297.651|9.516|0.723|16.555||32|0.261|16.067||32|0.319|12.071||32|0.825|9.029||32|0.576|17.17||32|16.74||32|13.25||32|10.035||32|16.816||32|16.386||32|12.896||32|9.605||32|16.532||32|16.101||32|12.611||32|9.264||32|16.297||32|15.865||32|12.376||32|8.974||32|16.097||32|15.665||32|12.176||32|8.717||32|15.915||32|15.483||32|11.995||32|8.484||32|15.752||32|15.321||32|11.832||32|8.271||32|15.599||32|15.168||32|11.679||32|8.074||32|16.885|0.423|0.086|1.812|20|0|55274.75810734|55276.94144233|55275.86907179|17.556|2.615|0.534|3.19000006|15|0|55274.75810734|55276.94144233|55275.86907179|15.289|||5.98999977|10|1|55274.75810734|55276.94144233|55275.86907179||||2.10299993|8|0|55274.75810734|55276.94144233|55275.86907179|-11|-23|12|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005940|1|-0.0021583770352206|-0.0011517998386065|-0.999997007378375|121000000|
+J231237.61-895135.2|348.1567313|-89.8597902|0.4042|0.363|-0.0278|302.9978293|-27.2555199|270.3445771|-66.5315543|2123.335|711.297|89401241004777|0000m894_ab41-004777|0000m894_ab41|4777|16.263|0.069|15.8|0.845600009|15.878|0.144|7.5|0.80400002|12.822||0.9|1.04700005|9.418||0.2|1.06200004|0.934199989|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABUU|3|0000|12|23|2|23|0|22|0|22|22.839|23.263|22.093|22.062|0.0|0.0|0.0|0.0|0||0||0||0||49.519001|3.14100003|9.216|2.803|0.0|28.1049995|3.72839999|21.732|3.413|0.051|35.2280006|41.3160019|1099.012|23.815|0.624|2.85809994|12.1210003|298.126|9.498|0.402|15.815|0.117|1|0.261|15.498|0.25|1|0.319|11.891||32|0.825|8.983||32|0.576|16.62|0.138|1|16.414|0.309|1|13.086||32|9.991||32|16.076|0.117|1|15.817|0.25|1|12.716||32|9.559||32|15.593|0.097|1|15.375|0.215|1|12.439||32|9.224||32|15.124|0.078|1|15.023|0.192|1|12.206||32|8.941||32|14.785|0.069|1|14.817|0.192|1|12.0||32|8.689||32|14.588|0.068|1|14.764|0.216|1|11.821||32|8.461||32|14.457|0.07|1|14.814|0.262|1|11.657||32|8.253||32|14.322|0.071|1|14.835|0.308|1|11.505||32|8.06||32|16.261|0.227|0.047|0.996|22|0|55275.55205887|55277.33835439|55276.44378378|15.852|0.759|0.158|3.55900002|21|1|55275.55205887|55277.33835439|55276.44378378|13.804|3.515|0.749|4.39900017|11|0|55275.55205887|55277.33835439|55276.43620038|10.203|2.35|0.501|4.32000017|14|0|55275.55205887|55277.33835439|55276.43620038|18|43|11|0|1|0|||||||||||||||||||||||||||||0|||||||89401241004777|1|0.0023950269174491|-0.0005022351058113|-0.999997005798499|131000000|
+J215016.07-895135.0|327.5669826|-89.8597462|0.565|0.5153|-0.1747|303.0440158|-27.2267787|270.2966955|-66.4852078|1880.685|678.897|3004089401241004877|3004m894_ab41-004877|3004m894_ab41|4877|16.564|0.089|12.2|0.846499979|17.157|0.463|2.3|0.910000026|12.597||1.4|1.19000006|9.0||1.1|1.08800006|1.00100005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACUU|3|0000|8|22|0|22|0|21|0|21|21.813|22.295|21.909|22.124|0.0|0.0|0.0|0.0|0||0||0||0||37.5320015|3.06559992|9.221|2.891|0.601|8.6541996|3.6888001|21.704|3.524|0.128|60.1930008|42.3580017|1097.621|24.513|3.694|14.3039999|12.7550001|298.671|9.764|1.532|16.183|0.137|0|0.261|16.271|0.481|0|0.319|11.48||32|0.825|8.444||32|0.576|16.85|0.145|0|16.341||32|12.755||32|9.49||32|16.444|0.137|0|16.59|0.481|0|12.305||32|9.02||32|16.265|0.151|1|16.334|0.496|1|11.956||32|8.628||32|16.104|0.16|1|16.194|0.54|1|11.715||32|8.279||32|15.881|0.157|1|15.304||32|11.54||32|7.956||32|15.63|0.147|1|15.2||32|11.377||32|7.72||32|15.437|0.143|1|15.09||32|11.222||32|7.553||32|15.288|0.143|1|14.932||32|11.09||32|7.408||32|16.541|0.359|0.076|1.262|20|0|55275.55205887|55277.33835439|55276.40311569|17.084|1.675|0.357|2.92400002|12|0|55275.55205887|55277.33835439|55276.40311569|13.436|3.512|0.766|3.9690001|12|0|55275.55205887|55277.33835439|55276.3932346|11.954|||3.14599991|10|0|55275.55205887|55277.33835439|55276.3932346|3|41|47|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004877|1|0.0020660641319428|-0.0013128348751217|-0.999997003917308|131000000|
+J045454.47-895135.0|73.7269908|-89.8597326|1.1104|1.2498|0.3064|302.7941639|-27.1963757|270.0993501|-66.6953255|1961.432|708.918|600089401241005324|0600m894_ab41-005324|0600m894_ab41|5324|18.665|0.482|2.3|1.023|17.296|0.472|2.3|0.791700006|11.973|0.171|6.3|1.11500001|8.977||1.5|1.01400006|0.980799973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nn1n|CCBU|7|0000|1|23|0|23|4|22|0|22|23.725|23.982|23.541|23.53|0.0|0.0|0.0|0.0|0||0||0||0||5.41860008|2.40420008|9.322|2.761|0.011|7.61409998|3.30859995|21.731|3.353|0.171|257.600006|40.6559982|1096.546|21.506|0.075|17.2450008|11.7089996|298.863|9.37|1.072|16.942|0.308|0|0.261|15.802||32|0.319|12.268||32|0.825|9.256||32|0.576|17.864|0.404|0|16.507||32|13.655||32|10.013||32|17.203|0.308|0|16.121||32|13.093||32|9.832||32|16.682|0.247|0|15.848||32|12.615||32|8.932||32|16.236|0.203|16|15.581||32|12.217||32|8.477||32|15.793|0.163|17|15.27||32|12.557|0.453|1|8.18||32|15.192|0.111|17|15.471|0.481|1|12.187|0.38|1|7.942||32|14.34|0.059|17|14.36|0.201|1|11.817|0.314|1|7.695||32|13.294|0.027|17|13.255|0.084|1|11.443|0.256|1|7.465||32|19.124|2.929|0.611|3.306|14|1|55275.28745078|55277.20605032|55276.25684072|17.308|2.279|0.475|2.88599992|13|0|55275.28745078|55277.20605032|55276.25684072|11.941|1.089|0.232|2.40899992|16|1|55275.28745078|55277.20605032|55276.24075991|9.573|2.778|0.592|2.53900003|11|0|55275.28745078|55277.20605032|55276.24075991|17|-29|22|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005324|1|0.0006860003118243|0.0023500471037916|-0.999997003336601|101000000|
+J184751.76-895135.0|281.9657015|-89.8597299|0.3063|0.3271|-0.0849|303.0895026|-27.1258804|270.0727089|-66.4234696|2164.502|700.304|3004089401241004635|3004m894_ab41-004635|3004m894_ab41|4635|16.086|0.056|19.5|0.963699996|16.781|0.295|3.7|0.970000029|13.144||-0.2|1.074|9.505||0.1|0.989799976|0.995999992|1|0|0.0|0.0|0.0|0.002|0000|0000|0|1nnn|ABUU|3|0000|19|25|0|25|0|24|0|24|24.786|24.634|23.972|23.595|0.0|0.0|0.0|0.0|0||0||0||0||58.2859993|2.9849999|9.3|2.58|0.0|12.2370005|3.32279992|21.75|3.344|0.0|-9.48180008|43.8079987|1096.479|24.699|3.186|1.47660005|11.7690001|299.561|9.86|0.606|16.202|0.157|0|0.261|15.866||32|0.319|12.313||32|0.825|8.942||32|0.576|16.765|0.15|0|16.416||32|13.498||32|9.951||32|16.463|0.157|0|16.185||32|13.138||32|9.518||32|16.382|0.191|0|16.647||32|12.847||32|9.174||32|16.355|0.23|1|16.02||32|12.616||32|8.88||32|16.262|0.254|1|15.817||32|12.413||32|8.623||32|15.917|0.219|1|15.637||32|12.233||32|8.388||32|15.314|0.146|1|15.472||32|12.068||32|8.173||32|14.691|0.095|1|15.32||32|11.917||32|7.975||32|16.1|0.318|0.064|1.146|24|1|55275.28732341|55277.20605032|55276.19247154|16.751|1.241|0.248|3.25999999|18|0|55275.28732341|55277.20605032|55276.19247154|14.372|8.027|1.639|4.00299978|10|0|55275.28732341|55277.20605032|55276.17504875|11.476|||2.80900002|12|0|55275.28732341|55277.20605032|55276.17504875|30|-6|89|1|0|1|||||||||||||||||||||||||||||0|||||||3004089401241004635|1|0.0005075702553301|-0.0023949791117153|-0.999997003219255|131000000|
+J203503.89-895134.9|308.7662425|-89.8597123|0.4873|0.4795|-0.1713|303.0737817|-27.1893779|270.2198593|-66.451171|1994.944|715.465|3004089401241004892|3004m894_ab41-004892|3004m894_ab41|4892|16.722|0.087|12.5|0.992500007|16.452|0.214|5.1|1.06400001|12.176|0.204|5.3|1.02600002|9.234||0.9|0.916499972|0.998000026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|12nn|ABBU|7|0000|7|24|4|24|1|23|0|23|24.978|25.021|24.438|24.69|0.0|0.0|0.0|0.0|0||0||0||0||32.4469986|2.60560012|9.266|2.735|0.831|16.5709991|3.27040005|21.757|3.321|0.704|213.539993|40.1689987|1095.395|24.091|3.559|9.58250046|11.2489996|298.89|9.413|0.723|16.662|0.205|1|0.261|15.888|0.241|1|0.319|11.694||32|0.825|8.803||32|0.576|17.203|0.189|1|16.748|0.282|1|12.978||32|9.815||32|16.923|0.205|1|16.207|0.241|1|12.519||32|9.379||32|16.887|0.258|1|15.879|0.231|1|12.193||32|9.038||32|16.845|0.309|1|15.591|0.219|1|11.971||32|8.741||32|16.689|0.325|1|15.32|0.206|1|11.805||32|8.48||32|16.42|0.299|1|15.05|0.19|1|11.653||32|8.063||32|16.026|0.243|1|14.741|0.166|1|11.487||32|7.761||32|15.544|0.18|1|14.398|0.14|1|11.323||32|7.509||32|16.728|0.3|0.061|4.118|23|0|55275.28732341|55277.33835439|55276.27705169|16.507|1.505|0.307|3.023|17|1|55275.28732341|55277.33835439|55276.27705169|12.194|1.021|0.213|3.68300009|19|0|55275.28732341|55277.33835439|55276.26254878|10.361|3.011|0.628|1.90600002|10|0|55275.28732341|55277.33835439|55276.26254878|-52|-13|13|2|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004892|1|0.0015331021771921|-0.0019090967866163|-0.999997002469094|131000000|
+J115226.83-895134.9|178.1117997|-89.8596975|0.468|0.4352|0.0883|302.891834|-26.9924704|269.6474134|-66.5649359|2061.875|719.081|1802089401241004602|1802m894_ab41-004602|1802m894_ab41|4602|16.395|0.074|14.6|0.976599991|17.33|0.533|2.0|0.993200004|12.314||2.0|1.01900005|9.458||-1.4|1.08200002|1.01499999|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0nnn|ACUU|3|0000|8|21|0|21|0|21|0|21|21.124|21.509|22.075|22.442|0.0|0.0|0.0|0.0|8|h|0||0||0||43.8549995|3.0079999|10.137|2.759|0.157|7.38189983|3.62380004|21.865|3.43|0.0|93.6719971|47.2120018|1094.331|25.299|0.069|-17.8139992|13.0579996|298.227|10.04|1.004|15.773|0.063|1|0.261|16.502|0.455|1|0.319|11.96|0.305|1|0.825|8.856||32|0.576|16.621|0.078|1|17.326|0.52|1|13.61|0.466|1|9.865||32|16.034|0.063|1|16.821|0.455|1|12.785|0.305|1|9.432||32|15.654|0.057|1|16.33|0.373|1|12.273|0.246|1|9.087||32|15.329|0.052|1|15.752|0.27|1|11.927|0.221|1|8.796||32|15.029|0.047|1|15.242|0.203|1|11.654|0.207|1|8.536||32|14.758|0.043|1|14.868|0.17|1|11.397|0.193|1|8.301||32|14.516|0.04|1|14.558|0.149|1|11.155|0.18|1|8.086||32|14.28|0.036|1|14.237|0.127|1|10.961|0.173|1|7.887||32|16.47|0.39|0.085|1.84|20|1|55274.75810734|55276.80913826|55275.79780276|17.315|2.469|0.539|3.75600004|13|0|55274.75810734|55276.80913826|55275.79780276|12.861|2.089|0.456|4.40600014|11|0|55274.75810734|55276.80913826|55275.79780276||||3.47799993|7|0|55274.75810734|55276.80913826|55275.79780276|29|-21|-33|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004602|1|-0.0024474078037234|0.0000806842980666|-0.999997001838049|111000000|
+J230639.11-895134.7|346.6629594|-89.8596642|0.1692|0.1644|0.0223|303.0016039|-27.2540604|270.3428348|-66.5279616|2132.752|709.532|89401241004378|0000m894_ab41-004378|0000m894_ab41|4378|14.91|0.034|32.1|0.948099971|15.093|0.075|14.6|0.933300018|13.196||-0.7|1.00399995|9.568||-0.1|0.936600029|0.952300012|1|0|0.0|0.0|0.0|0.0|0000|d000|0|11nn|AAUU|3|0000|23|23|12|23|0|22|0|22|22.821|23.333|22.499|22.161|0.0|0.0|0.0|0.0|1|d|0||0||0||172.259995|5.36149979|9.204|2.839|0.0|57.9360008|3.97609997|21.693|3.386|0.092|-31.0039997|41.7550011|1099.77|24.395|0.0|-1.0043|11.7959995|298.674|9.764|0.467|14.852|0.057|1|0.261|15.025|0.147|1|0.319|11.753||32|0.825|8.981||32|0.576|15.498|0.059|1|15.793|0.159|1|12.942||32|9.986||32|15.113|0.057|1|15.344|0.147|1|12.578||32|9.557||32|14.914|0.061|1|15.089|0.151|1|12.291||32|9.214||32|14.712|0.063|1|14.835|0.148|1|12.058||32|8.923||32|14.466|0.06|1|14.552|0.137|1|11.858||32|8.667||32|14.204|0.056|1|14.268|0.124|1|11.678||32|8.435||32|13.996|0.054|1|14.046|0.118|1|11.512||32|8.222||32|13.88|0.055|1|13.926|0.121|1|11.361||32|8.025||32|14.902|0.103|0.021|0.388|22|0|55275.55205887|55277.33835439|55276.44378378|15.052|0.389|0.081|2.16599989|22|1|55275.55205887|55277.33835439|55276.44378378||||2.48399997|7|0|55275.55205887|55277.33835439|55276.43620038|11.91|||3.03600001|10|0|55275.55205887|55277.33835439|55276.43620038|-43|-14|-8|1|0|0||||||||||||||||||||||||||1201668390|0.126|66.0|1|15.512|0.067|15.202|0.116|14.948|0.154|89401241004378|1|0.0023832611111404|-0.0005650061284051|-0.999997000412777|131000000|
+J005144.37-895134.0|12.9349158|-89.8594481|0.4188|0.3977|0.1214|302.9317079|-27.2687082|270.3448105|-66.5917924|1965.622|710.669|89401241004917|0000m894_ab41-004917|0000m894_ab41|4917|16.324|0.072|15.0|0.784600019|16.077|0.172|6.3|1.07099998|12.615|0.345|3.1|0.933799982|9.499||-0.4|1.00300002|0.944400012|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|14|20|3|20|0|19|0|19|19.895|20.646|20.299|20.083|0.0|0.0|0.0|0.0|0||0||0||0||46.8199997|3.1243999|9.317|2.687|0.199|23.3999996|3.71449995|21.756|3.458|0.086|142.580002|45.3149986|1099.057|23.16|3.848|-4.78719997|12.5749998|298.312|9.524|1.195|16.006|0.16|1|0.261|15.945|0.511|1|0.319|12.144||32|0.825|8.606||32|0.576|16.736|0.177|1|15.947||32|13.457||32|9.816||32|16.267|0.16|1|16.264|0.511|1|12.969||32|9.182||32|15.953|0.154|1|15.337||32|12.595||32|8.734||32|15.557|0.133|1|15.126||32|12.281||32|8.327||32|15.033|0.099|1|15.447|0.464|1|12.019||32|8.612|0.479|1|14.448|0.068|1|14.779|0.296|1|11.792||32|8.148|0.375|1|13.937|0.05|1|14.189|0.2|1|11.6||32|7.73|0.302|1|13.59|0.042|1|13.793|0.16|1|11.446||32|7.334|0.244|1|16.339|0.316|0.071|1.342|19|0|55275.55205887|55277.33835439|55276.42869092|16.096|1.016|0.227|3.33899999|15|1|55275.55205887|55277.33835439|55276.42869092|12.42|1.367|0.314|2.29999995|13|0|55275.55205887|55277.33835439|55276.41911578||||2.64100003|8|0|55275.55205887|55277.33835439|55276.41911578|-9|1|-79|0|0|1|||||||||||||||||||||||||||||0|||||||89401241004917|1|0.0023908438250668|0.0005491099427838|-0.999996991167511|101000000|
+J150816.31-895133.8|227.0679592|-89.8594057|0.4557|0.4776|0.1313|303.0206373|-27.0118574|269.7602489|-66.4575873|1779.703|604.036|1802089401241005498|1802m894_ab41-005498|1802m894_ab41|5498|16.565|0.084|13.0|1.04499996|16.079|0.162|6.7|0.935299993|12.958||-0.6|0.971700013|9.513||-1.2|0.957799971|0.974699974|1|0|0.0|0.0|0.0|0.0|0000|hHH0|0|1nnn|ABUU|3|0000|8|22|2|22|0|22|0|22|23.48|23.633|22.84|23.248|0.0|0.0|0.0|0.0|8|h|1032|H|1032|H|0||37.493|2.88709998|9.563|2.216|0.0|23.3540001|3.4927001|21.803|3.153|0.007|-29.5340004|51.9760017|1095.587|25.927|1.935|-15.191|12.4060001|298.5|9.928|0.933|16.75|0.32|0|0.261|15.924||32|0.319|12.575||32|0.825|8.642||32|0.576|17.498|0.357|0|16.391||32|13.77||32|9.868||32|17.011|0.32|0|16.243||32|13.4||32|9.218||32|16.785|0.337|1|15.96||32|13.118||32|8.702||32|16.648|0.368|1|15.726||32|12.883||32|8.336||32|16.492|0.382|1|15.529||32|12.686||32|8.143||32|16.245|0.36|1|15.347||32|12.505||32|8.036||32|15.952|0.319|1|15.184||32|12.342||32|7.877||32|15.617|0.27|1|15.031||32|12.19||32|7.673||32|16.527|0.268|0.057|0.959|20|0|55274.89041135|55276.94144233|55275.89787957|16.064|0.903|0.193|3.55200005|19|1|55274.89041135|55276.94144233|55275.89787957|14.485|7.597|1.62|3.31900001|7|0|55274.89041135|55276.94144233|55275.89787957||||3.19799995|6|0|55274.89041135|55276.94144233|55275.89787957|25|31|64|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005498|1|-0.0016713789056018|-0.0017966020714399|-0.999996989352243|121000000|
+J192338.87-895133.8|290.9119591|-89.8593901|0.4233|0.4444|-0.1323|303.0883765|-27.1477663|270.1255084|-66.4293105|2109.071|715.06|3004089401241004850|3004m894_ab41-004850|3004m894_ab41|4850|16.584|0.075|14.4|0.926199973|16.542|0.237|4.6|0.925499976|12.624|0.328|3.3|0.99940002|9.335||0.7|0.953299999|0.948099971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ABBU|7|0000|11|26|3|26|1|25|0|25|25.713|25.593|24.819|24.716|0.0|0.0|0.0|0.0|0||0||0||0||36.8330002|2.55139995|9.332|2.66|0.055|15.2530003|3.32680011|21.755|3.386|0.176|141.419998|42.6629982|1098.292|25.433|3.681|7.3045001|10.9650002|299.229|9.516|0.928|16.659|0.261|0|0.261|16.229|0.329|0|0.319|12.204|0.437|0|0.825|9.045||32|0.576|17.206|0.247|0|16.953|0.349|0|12.951||32|10.046||32|16.92|0.261|0|16.548|0.329|0|13.029|0.437|0|9.621||32|16.926|0.338|0|16.421|0.377|0|12.519|0.352|0|9.285||32|16.999|0.447|1|16.307|0.42|1|12.129|0.304|0|9.008||32|16.264||32|16.084|0.413|1|11.82|0.276|1|8.761||32|16.122||32|15.823|0.383|1|11.593|0.264|1|8.537||32|15.92||32|15.598|0.363|1|11.406|0.26|1|8.334||32|16.486|0.531|1|15.466|0.369|1|11.273|0.264|1|8.144||32|16.644|0.428|0.084|2.844|25|1|55275.28732341|55277.33835439|55276.23654396|16.428|1.504|0.295|3.91300011|17|1|55275.28732341|55277.33835439|55276.23654396|12.701|1.866|0.373|5.23999977|16|2|55275.28732341|55277.33835439|55276.22158098|10.338|5.262|1.052|1.954|13|0|55275.28732341|55277.33835439|55276.22158098|2|26|-11|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241004850|1|0.0008759506548389|-0.0022924521291275|-0.999996988682309|131000000|
+J022254.19-895133.5|35.7258315|-89.8593304|0.9|0.9033|0.2717|302.8704262|-27.2577579|270.2880421|-66.6425835|2199.952|687.516|600089401241005104|0600m894_ab41-005104|0600m894_ab41|5104|17.375|0.153|7.1|0.949500024|17.307||-0.2|0.906700015|12.444|0.269|4.0|0.909099996|9.346||0.4|0.874100029|0.907800019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUBU|5|0000|2|23|0|23|0|22|0|22|22.774|23.085|22.093|21.936|0.0|0.0|0.0|0.0|0||0||0||0||17.7789993|2.5086|9.27|2.804|0.106|-0.682039976|3.76999998|21.761|3.425|0.088|166.850006|41.3730011|1099.581|22.767|0.885|4.53779984|12.2080002|299.472|9.946|1.168|16.573|0.229|1|0.261|16.075||32|0.319|12.118||32|0.825|8.796||32|0.576|17.495|0.3|1|16.923||32|13.315||32|9.807||32|16.834|0.229|1|16.394||32|12.943||32|9.372||32|16.143|0.157|1|16.542|0.513|1|14.861||32|9.035||32|15.523|0.11|1|15.785|0.315|1|12.31||32|8.739||32|15.123|0.092|1|15.3|0.244|1|12.031||32|8.48||32|14.919|0.089|1|15.035|0.224|1|11.86||32|8.247||32|14.788|0.092|1|14.877|0.225|1|11.74||32|8.031||32|14.604|0.089|1|14.701|0.221|1|11.619||32|7.833||32|17.392|0.857|0.179|3.113|20|0|55275.55205887|55277.33835439|55276.39777605|18.052|4.193|0.874|3.75|10|0|55275.55205887|55277.33835439|55276.39777605|12.282|1.011|0.216|3.35899997|17|0|55275.55205887|55277.33835439|55276.3881014|9.944|3.266|0.696|4.579|13|0|55275.55205887|55277.33835439|55276.3881014|-21|-3|-15|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005104|1|0.0019931365111175|0.0014335768953166|-0.999996986127525|101000000|
+J001853.02-895132.8|4.7209355|-89.8591308|1.2928|1.1886|0.2404|302.9543516|-27.267605|270.3531005|-66.5719059|2017.64|719.585|89401241005687|0000m894_ab41-005687|0000m894_ab41|5687|17.685|0.212|5.1|0.766300023|17.095||0.5|0.995800018|12.734|0.398|2.7|1.04100001|9.463||-1.0|1.01300001|0.948499978|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUCU|5|0000|1|20|0|20|0|19|0|19|19.694|19.851|18.778|19.417|0.0|0.0|0.0|0.0|0||0||0||0||13.3649998|2.60479999|9.314|2.694|0.027|1.8326|3.66639996|21.768|3.431|0.138|127.790001|46.8639984|1099.724|23.839|1.425|-12.4750004|12.993|298.557|9.71|0.57|16.66||32|0.261|16.56||32|0.319|12.054||32|0.825|8.71||32|0.576|17.205||32|17.09||32|13.239||32|9.721||32|16.921||32|16.879||32|12.879||32|9.286||32|16.81||32|16.6||32|12.601||32|8.945||32|16.703||32|16.365||32|12.366||32|8.653||32|16.631||32|16.163||32|12.166||32|8.396||32|16.571||32|15.982||32|11.985||32|8.163||32|16.352||32|15.819||32|11.823||32|7.95||32|15.907||32|15.667||32|11.671||32|7.752||32|17.694|0.698|0.156|3.256|18|0|55275.55205887|55277.33835439|55276.42869092|19.511|||1.96000004|7|0|55275.55205887|55277.33835439|55276.42869092|12.308|0.985|0.226|1.72399998|11|0|55275.55205887|55277.33835439|55276.41911578||||1.88|7|0|55275.55205887|55277.33835439|55276.41911578|-15|5|-69|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005687|1|0.0024502870713823|0.0002023516646604|-0.999996977568968|101000000|
+J044145.05-895132.8|70.4377365|-89.8591203|1.064|1.1826|0.3871|302.7982061|-27.2036253|270.1192234|-66.6934117|2394.957|226.859|1802089401241005271|1802m894_ab41-005271|1802m894_ab41|5271|18.615||0.4|0.891900003|16.876|0.327|3.3|0.976700008|11.85|0.155|7.0|1.08700001|9.14||1.2|1.051|0.996900022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|UBBU|6|0000|0|24|1|24|3|23|0|23|23.734|23.537|23.088|23.393|0.0|0.0|0.0|0.0|0||0||0||0||0.988470018|2.3434999|9.338|2.74|0.052|11.2110004|3.37719989|21.729|3.374|0.036|288.350006|41.2929993|1097.879|22.029|2.006|12.8579998|11.0600004|298.541|9.295|1.394|16.298|0.252|0|0.261|15.67|0.225|0|0.319|11.976||32|0.825|8.424||32|0.576|17.502|0.432|0|16.759|0.33|0|13.155||32|9.593||32|16.559|0.252|0|15.989|0.225|0|12.801||32|9.0||32|15.717|0.15|0|15.325|0.158|0|12.522||32|8.621||32|14.85|0.084|1|14.578|0.098|1|12.29||32|8.372||32|13.854|0.041|1|13.68|0.052|1|12.086||32|8.199||32|12.81|0.019|17|12.762|0.027|1|12.475||32|7.992||32|11.973|0.011|17|12.02|0.017|1|11.581||32|7.72||32|11.442|0.009|17|11.526|0.013|1|11.376||32|7.467||32|20.065|8.197|1.673|2.565|11|0|55275.28745078|55277.33835439|55276.30190379|17.005|1.534|0.313|2.73799992|14|0|55275.28745078|55277.33835439|55276.30190379|11.629|0.554|0.115|5.05100012|19|0|55275.28745078|55277.33835439|55276.28848141|10.074|4.156|0.867|4.68100023|12|0|55275.28745078|55277.33835439|55276.28848141|-62|24|2|1|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005271|1|0.000823286625586|0.002316885091384|-0.999996977116734|101000000|
+J031500.58-895132.6|48.7524463|-89.8590818|0.4894|0.5245|0.1461|302.8389924|-27.2422855|270.2345709|-66.6664862|2324.223|107.456|1802089401241004642|1802m894_ab41-004642|1802m894_ab41|4642|16.8|0.1|10.9|1.02100003|16.764||1.5|0.844799995|11.514|0.114|9.5|1.14199996|8.92||1.8|0.914600015|0.98180002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0n0n|AUBU|5|0000|5|23|0|23|6|22|0|23|23.825|23.414|22.764|22.803|0.0|0.0|0.0|0.0|0||0||0||0||30.1889992|2.76839995|9.34|2.732|0.05|5.25930023|3.58349991|21.756|3.49|0.121|392.980011|41.3139992|1099.63|22.111|0.0|20.1669998|11.3380003|298.261|9.235|0.57|15.628|0.128|1|0.261|15.643|0.296|1|0.319|11.773|0.313|1|0.825|8.419||32|0.576|16.745|0.202|1|16.832|0.474|1|13.298|0.429|1|9.567||32|15.889|0.128|1|15.962|0.296|1|12.598|0.313|1|8.995||32|15.196|0.089|1|15.305|0.212|1|12.164|0.275|1|8.642||32|14.735|0.072|1|14.835|0.171|1|11.879|0.262|1|8.375||32|14.504|0.07|1|14.542|0.157|1|11.661|0.258|1|8.13||32|14.372|0.073|1|14.352|0.155|1|11.45|0.251|1|7.953||32|14.24|0.075|1|14.186|0.155|1|11.247|0.242|1|7.824||32|14.064|0.073|1|13.985|0.148|1|11.022|0.226|1|7.689||32|16.704|0.388|0.081|2.206|21|0|55275.28745078|55277.33835439|55276.32874232|17.426|2.378|0.496|2.74799991|14|0|55275.28745078|55277.33835439|55276.32874232|11.51|0.72|0.154|3.523|21|2|55275.28745078|55277.33835439|55276.31592977|9.668|2.542|0.53|3.55699992|13|0|55275.28745078|55277.33835439|55276.34024702|-11|8|18|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241004642|1|0.0016215715388517|0.0018492072240276|-0.99999697546462|101000000|
+J182144.88-895132.5|275.4370184|-89.8590533|0.9325|1.0275|-0.2188|303.0889324|-27.109861|270.0333853|-66.4203928|2204.096|686.405|3004089401241005352|3004m894_ab41-005352|3004m894_ab41|5352|17.478|0.159|6.8|0.860700011|17.339||0.2|1.02699995|12.333||1.9|1.11899996|9.149||0.9|1.02100003|1.00300002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BUUU|1|0000|1|24|2|24|1|23|0|23|23.793|23.949|22.972|23.016|0.0|0.0|0.0|0.0|0||0||0||0||16.1800003|2.37389994|9.563|2.543|0.024|0.68554002|3.31570005|21.772|3.28|0.044|90.8759995|47.0169983|1095.202|25.016|2.494|10.5699997|12.0629997|299.169|9.757|0.499|16.887|0.297|1|0.261|16.301||32|0.319|12.018||32|0.825|8.428||32|0.576|17.795|0.387|0|16.865||32|13.272||32|9.471||32|17.148|0.297|1|16.62||32|12.843||32|9.004||32|16.583|0.23|1|16.422||32|12.538||32|8.833||32|15.997|0.166|1|18.133||32|12.287||32|8.61||32|15.418|0.118|1|15.677||32|12.095||32|8.35||32|14.941|0.089|1|15.196||32|11.976||32|8.116||32|14.603|0.076|1|15.53|0.489|1|11.906||32|7.9||32|14.389|0.072|1|15.173|0.405|1|11.81||32|7.701||32|17.458|0.702|0.143|1.774|20|0|55275.28732341|55277.20605032|55276.16402342|18.148|8.855|1.808|4.15500021|11|1|55275.28732341|55277.20605032|55276.16402342|12.53|1.77|0.369|3.97900009|12|0|55275.28732341|55277.20605032|55276.14460624|10.277|4.246|0.885|3.80599999|14|0|55275.28732341|55277.20605032|55276.14460624|-21|-31|-30|0|0|0|||||||||||||||||||||||||||||0|||||||3004089401241005352|1|0.0002330869410735|-0.0024489134781422|-0.99999697424205|131000000|
+J121846.56-895132.4|184.6940034|-89.8590161|0.116|0.1131|0.0149|302.9094446|-26.9886|269.6469271|-66.5487744|2019.569|720.031|1802089401241003903|1802m894_ab41-003903|1802m894_ab41|3903|14.033|0.027|40.9|0.894200027|14.025|0.038|28.3|0.962899983|13.064||-0.2|1.02600002|9.324||0.3|1.02100003|0.973100007|1|0|0.0|0.0|0.0|0.0|0000|h000|0|00nn|AAUU|3|0000|23|23|23|23|0|23|0|23|23.27|23.002|23.443|23.874|0.0|0.0|0.0|0.0|8|h|0||0||0||386.100006|9.45069981|10.255|2.651|0.0|154.889999|5.47329998|21.898|3.309|0.059|-8.63370037|47.1329994|1094.124|25.291|3.454|4.10839987|12.7200003|298.374|9.896|1.794|13.998|0.027|1|0.261|14.032|0.078|1|0.319|12.461||32|0.825|8.552||32|0.576|14.654|0.027|1|14.812|0.084|1|13.663||32|9.497||32|14.259|0.027|1|14.351|0.078|1|13.286||32|9.128||32|14.069|0.029|1|14.128|0.082|1|13.0||32|8.909||32|13.921|0.031|1|13.975|0.088|1|12.768||32|8.613||32|13.795|0.033|1|13.859|0.095|1|12.568||32|8.353||32|13.686|0.035|1|13.771|0.103|1|12.301||32|8.118||32|13.58|0.037|1|13.689|0.111|1|11.985||32|7.902||32|13.467|0.038|1|13.605|0.119|1|11.739||32|7.703||32|14.036|0.034|0.007|0.258|22|0|55274.75810734|55276.80913826|55275.80231653|14.041|0.126|0.026|0.748000026|22|0|55274.75810734|55276.80913826|55275.80231653|13.609|4.388|0.915|1.76900005|9|0|55274.75810734|55276.80913826|55275.80231653||||4.17999983|12|0|55274.75810734|55276.80913826|55275.80231653|-1|-31|44|0|0|0||||||||||||||||||||||||||857714512|0.168|-15.1|1|14.473|0.032|14.226|0.051|14.042|0.074|1802089401241003903|1|-0.002452378249812|-0.0002013637942357|-0.999996972642189|121000000|
+J220352.09-895132.4|330.9670651|-89.8590042|0.2238|0.2126|-0.0531|303.0378008|-27.2330739|270.3090645|-66.4919769|2227.149|674.784|89401241004499|0000m894_ab41-004499|0000m894_ab41|4499|15.525|0.046|23.8|0.85619998|14.992|0.073|14.8|0.888999999|11.147|0.087|12.4|1.03699994|9.346|0.464|2.3|1.03400004|0.949000001|1|0|0.0|0.0|0.0|0.0|0000|0000|0|000n|AAAC|15|0000|20|22|13|22|7|21|0|21|23.512|23.558|22.935|22.767|0.0|0.0|0.0|0.0|0||0||0||0||97.689003|4.10500002|9.227|2.879|0.0|63.5649986|4.29460001|21.674|3.46|0.0|550.830017|44.3310013|1098.112|24.262|0.0|28.9559994|12.3839998|298.608|9.588|0.465|15.318|0.068|0|0.261|14.777|0.135|0|0.319|11.219|0.224|0|0.825|8.76|0.433|1|0.576|15.987|0.072|0|15.598|0.153|0|12.658|0.282|0|9.255||32|15.579|0.068|0|15.096|0.135|0|12.044|0.224|0|9.336|0.433|1|15.412|0.076|0|14.841|0.138|0|11.712|0.215|0|8.908|0.394|1|15.325|0.087|1|14.669|0.146|1|11.539|0.227|0|8.614|0.388|1|15.259|0.098|1|14.528|0.155|1|11.47|0.257|1|8.375|0.389|1|15.132|0.103|1|14.377|0.159|1|11.442|0.296|1|8.167|0.393|1|14.851|0.092|1|14.173|0.153|1|11.389|0.327|1|8.012|0.41|1|14.38|0.069|1|13.867|0.133|1|11.307|0.35|1|7.828|0.411|1|15.528|0.16|0.034|0.582|21|0|55275.55205887|55277.33835439|55276.40311569|14.969|0.26|0.055|1.28199995|21|0|55275.55205887|55277.33835439|55276.40311569|11.147|0.463|0.101|1.93299997|20|1|55275.55205887|55277.33835439|55276.3932346|9.448|2.318|0.506|4.99399996|15|0|55275.55205887|55277.33835439|55276.3932346|-9|9|-7|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004499|1|0.0021516118183187|-0.0011942752321443|-0.999996972132043|131000000|
+J093446.48-895132.2|143.6936728|-89.8589689|0.1842|0.1798|-0.0445|302.8121203|-27.0358893|269.7133211|-66.6439528|1900.716|690.615|1201089401241004913|1201m894_ab41-004913|1201m894_ab41|4913|15.149|0.037|29.3|0.99970001|15.191|0.076|14.4|1.06500006|13.109||0.0|0.920799971|9.125||0.5|0.833700001|0.955900013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|23|23|10|23|0|23|0|23|23.744|23.624|23.793|23.516|0.0|0.0|0.0|0.0|0||0||0||0||138.199997|4.71430016|9.437|2.848|0.04|52.9189987|3.68359995|21.829|3.381|0.0|0.482160002|45.0019989|1094.576|24.632|4.35|6.72009993|14.3870001|297.587|9.925|1.472|15.138|0.079|1|0.261|14.985|0.1|1|0.319|12.254||32|0.825|8.377||32|0.576|15.762|0.08|1|15.78|0.112|1|13.492||32|9.413||32|15.399|0.079|1|15.304|0.1|1|13.079||32|8.953||32|15.241|0.088|1|15.085|0.105|1|12.788||32|8.685||32|15.124|0.098|1|14.935|0.114|1|12.563||32|9.007||32|15.036|0.109|1|14.808|0.122|1|12.35||32|8.28||32|14.991|0.124|1|14.719|0.133|1|12.161||32|8.045||32|14.969|0.141|1|14.66|0.146|1|11.927||32|7.829||32|14.931|0.156|1|14.609|0.16|1|11.648||32|7.63||32|15.146|0.147|0.031|0.612|22|0|55274.89041135|55276.94144233|55275.86561452|15.187|0.295|0.062|1.03400004|22|0|55274.89041135|55276.94144233|55275.86561452|14.172|7.87|1.641|3.69099998|10|0|55274.89041135|55276.94144233|55275.86561452||||2.68000007|11|0|55274.89041135|55276.94144233|55275.86561452|8|-26|-71|0|0|0||||||||||||||||||||||||||867154064|0.689|-106.8|1|15.826|0.123|15.284|0.149|15.09|0.199|1201089401241004913|1|-0.0019835943373734|0.0014574321721936|-0.999996970617895|111000000|
+J052233.57-895132.2|80.6398927|-89.8589459|0.1454|0.1536|-0.0113|302.7851256|-27.1814207|270.0579978|-66.6998743|1918.382|697.833|600089401241004067|0600m894_ab41-004067|0600m894_ab41|4067|14.697|0.033|33.2|1.22500002|14.575|0.052|20.8|0.905099988|11.614|0.122|8.9|0.973100007|8.917||1.5|1.10300004|1.04700005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|000n|AABU|7|0000|23|23|20|23|5|22|0|22|23.653|23.622|22.982|22.72|0.0|0.0|0.0|0.0|0||0||0||0||209.539993|6.31669998|9.343|2.857|0.104|93.3440018|4.49230003|21.724|3.388|0.088|358.269989|40.3779984|1095.518|21.008|1.281|18.4979992|12.2460003|299.326|9.654|0.774|14.493|0.036|1|0.261|14.456|0.12|1|0.319|11.999||32|0.825|8.832||32|0.576|15.208|0.04|0|15.259|0.134|0|13.27||32|9.944||32|14.754|0.036|1|14.775|0.12|1|12.824||32|9.408||32|14.56|0.039|1|14.596|0.132|1|12.502||32|8.835||32|14.456|0.044|1|14.554|0.157|1|12.254||32|8.404||32|14.368|0.048|1|14.562|0.191|1|12.032||32|8.083||32|14.273|0.052|1|14.576|0.227|1|11.854||32|7.798||32|14.16|0.055|1|14.553|0.259|1|11.695||32|8.256|0.51|1|14.024|0.055|1|14.48|0.279|1|11.548||32|7.981|0.469|1|14.69|0.072|0.015|0.285|22|0|55275.28745078|55277.20605032|55276.25684072|14.582|0.232|0.048|1.05799997|22|0|55275.28745078|55277.20605032|55276.25684072|11.615|0.737|0.157|6.12699986|20|1|55275.28745078|55277.20605032|55276.24075991|9.346|1.748|0.373|2.8039999|12|0|55275.28745078|55277.20605032|55276.24075991|8|-19|2|0|0|0||||||||||||||||||||||||||1181197970|0.472|-179.5|1|16.043|0.1|15.355|0.123|15.216|0.163|600089401241004067|1|0.0004003937563137|0.0024290775251654|-0.999996969629017|101000000|
+J003452.38-895131.9|8.7182893|-89.8588638|0.1694|0.1665|0.0397|302.9433825|-27.2689237|270.3510113|-66.5817097|1991.984|717.267|89401241004384|0000m894_ab41-004384|0000m894_ab41|4384|14.968|0.034|31.8|0.811500013|14.815|0.064|16.9|0.943700016|11.824|0.159|6.8|1.17499995|9.31|0.491|2.2|1.14699996|1.01199996|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AABC|15|0000|20|20|16|20|2|19|1|19|19.701|19.813|18.979|18.785|0.0|0.0|0.0|0.0|0||0||0||0||163.25|5.13189983|9.327|2.755|0.104|74.8440018|4.41830015|21.781|3.418|0.189|295.470001|43.3110008|1097.123|22.965|2.156|29.9230003|13.5200005|298.48|9.775|0.576|14.745|0.034|1|0.261|14.778|0.104|1|0.319|11.848||32|0.825|8.266||32|0.576|15.474|0.038|0|15.537|0.113|0|13.014||32|9.336||32|15.006|0.034|1|15.097|0.104|1|12.673||32|8.842||32|14.698|0.033|1|14.875|0.11|1|12.483||32|8.541||32|14.36|0.03|1|14.603|0.106|1|12.346||32|8.301||32|13.982|0.025|1|14.239|0.091|1|12.561||32|8.048||32|13.667|0.023|1|13.913|0.079|1|12.883||32|7.815||32|13.467|0.022|1|13.701|0.076|1|11.816||32|7.651||32|13.345|0.022|1|13.57|0.077|1|11.554||32|7.532||32|14.963|0.095|0.021|0.343|19|0|55275.55205887|55277.33835439|55276.42869092|14.81|0.254|0.057|1.09899998|19|0|55275.55205887|55277.33835439|55276.42869092|11.818|0.861|0.198|2.0480001|16|1|55275.55205887|55277.33835439|55276.41911578|9.29|1.846|0.423|5.31500006|12|0|55275.55205887|55277.33835439|55276.41911578|-14|-7|-24|0|0|0|||||||||||||||||||||||||||||0|||||||89401241004384|1|0.0024348276391008|0.000373376441498|-0.999996966097598|101000000|
+J143447.82-895131.6|218.6992624|-89.8587856|0.4732|0.4852|0.1378|303.0009949|-27.0010442|269.7239203|-66.4721735|2184.514|695.613|2403089401241005789|2403m894_ab41-005789|2403m894_ab41|5789|16.528|0.082|13.2|0.969600022|16.358|0.21|5.2|1.02199996|12.513||1.0|0.956200004|9.392||-1.7|0.994000018|0.98210001|1|0|0.0|0.0|0.0|0.0|0000|hHH0|0|1nnn|ABUU|3|0000|10|21|4|21|0|21|0|21|21.552|22.741|23.731|23.587|0.0|0.0|0.0|0.0|8|h|1032|H|1032|H|0||38.7820015|2.94269991|9.737|2.25|0.098|18.0690002|3.49530005|21.849|3.157|0.073|53.7540016|51.4280014|1097.394|25.333|4.847|-23.8610001|13.8730001|298.986|10.027|1.266|16.54|0.343|0|0.261|15.494||32|0.319|12.104||32|0.825|8.857||32|0.576|17.472|0.455|0|16.306||32|13.301||32|10.167||32|16.801|0.343|0|15.813||32|12.929||32|9.433||32|16.264|0.269|1|16.095|0.491|1|12.663||32|9.078||32|15.734|0.206|1|15.587|0.383|1|12.403||32|8.833||32|15.139|0.143|1|15.036|0.278|1|12.152||32|8.521||32|14.503|0.094|1|14.418|0.186|1|11.918||32|8.163||32|13.918|0.064|1|13.825|0.125|1|11.684||32|7.866||32|13.439|0.048|1|13.311|0.09|1|11.419||32|7.593||32|16.477|0.38|0.083|1.838|18|1|55274.89041135|55276.94144233|55275.9017529|16.323|1.375|0.3|3.68899989|14|1|55274.89041135|55276.94144233|55275.9017529|12.856|1.867|0.407|5.31799984|13|0|55274.89041135|55276.94144233|55275.9017529||||2.08100009|5|0|55274.89041135|55276.94144233|55275.9017529|-32|-4|62|1|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005789|1|-0.0019235105976112|-0.0015409819168166|-0.999996962736244|121000000|
+J031949.21-895131.6|49.9550679|-89.8587797|0.1279|0.1335|0.0031|302.8361143|-27.2407655|270.2294157|-66.6686518|2113.08|715.99|600089401241004026|0600m894_ab41-004026|0600m894_ab41|4026|14.311|0.028|38.2|0.890900016|14.456|0.051|21.4|1.00300002|11.515|0.119|9.1|1.00600004|9.104|0.353|3.1|0.851199985|0.935500026|1|0|0.0|0.0|0.0|0.0|0000|dD00|0|0n0n|AABB|15|0000|22|22|18|22|6|21|0|21|23.513|22.903|22.347|22.756|0.0|0.0|0.0|0.0|1|d|129|D|0||0||299.059998|7.83360004|9.292|2.73|0.152|104.139999|4.87239981|21.77|3.542|0.484|392.5|43.0810013|1098.917|22.265|1.963|36.1809998|11.7550001|298.303|9.316|0.338|14.337|0.04|0|0.261|14.391|0.083|0|0.319|12.003|0.354|0|0.825|8.516||32|0.576|14.954|0.041|0|15.169|0.092|0|13.597|0.523|0|9.667||32|14.598|0.04|0|14.71|0.083|0|12.828|0.354|0|9.092||32|14.479|0.046|1|14.513|0.089|1|12.297|0.28|0|8.555||32|14.44|0.055|1|14.424|0.101|1|11.908|0.242|1|8.885|0.504|1|14.427|0.065|1|14.369|0.116|1|11.582|0.216|1|8.716|0.542|1|14.392|0.074|1|14.271|0.125|1|11.314|0.199|1|7.829||32|14.281|0.078|1|14.072|0.122|1|11.088|0.189|1|7.676||32|14.023|0.071|1|13.768|0.106|1|10.876|0.178|1|7.496||32|14.31|0.065|0.014|0.237|21|0|55275.28745078|55277.33835439|55276.34600466|14.425|0.215|0.046|0.786000013|21|0|55275.28745078|55277.33835439|55276.34600466|11.463|0.64|0.14|3.23099995|19|1|55275.28745078|55277.33835439|55276.33340399|9.115|1.062|0.232|1.98699999|14|0|55275.28745078|55277.33835439|55276.33340399|-2|-3|-9|0|0|0||||||||||||||||||||||||||769518854|0.034|36.3|1|15.174|0.055|14.481|0.065|14.494|0.115|600089401241004026|1|0.0015857954644548|0.0018868703900571|-0.999996962481825|101000000|
+J111113.56-895130.9|167.806531|-89.858607|0.884|0.7923|-0.0634|302.8647183|-27.0000501|269.6521467|-66.590188|2127.935|713.466|1802089401241005005|1802m894_ab41-005005|1802m894_ab41|5005|17.562|0.183|5.9|1.90900004|16.005|0.168|6.5|0.895200014|12.594||1.0|1.18499994|9.532||-0.4|1.02100003|1.24899995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBUU|3|0000|2|21|1|21|1|21|0|21|20.561|21.119|21.016|21.067|0.0|0.0|0.0|0.0|0||0||0||0||14.9680004|2.52480006|10.02|2.815|0.22|25.0020008|3.87299991|21.857|3.475|0.0|49.5569992|47.8730011|1094.284|25.625|0.0|-4.92479992|12.1969995|298.186|9.629|0.75|16.68|0.144|1|0.261|15.836|0.327|1|0.319|12.871||32|0.825|8.798||32|0.576|17.479|0.169|0|16.621|0.357|0|13.782||32|11.878||32|16.941|0.144|1|16.155|0.327|1|13.696||32|9.374||32|16.536|0.129|1|15.851|0.321|1|12.85||32|8.971||32|16.073|0.104|1|15.556|0.303|1|12.619||32|8.631||32|15.622|0.083|1|15.269|0.28|1|12.416||32|8.362||32|15.258|0.069|1|15.021|0.262|1|12.242||32|8.233||32|14.984|0.063|1|14.82|0.253|1|12.078||32|12.098||32|14.751|0.058|1|14.634|0.245|1|11.926||32|7.958||32|18.427|2.309|0.504|3.498|13|8|55274.75810734|55276.80913826|55275.79780276|16.147|0.926|0.202|3.97000003|16|1|55274.75810734|55276.80913826|55275.79780276|14.145|6.39|1.394|3.49699998|8|1|55274.75810734|55276.80913826|55275.79780276|10.866|5.255|1.147|2.59800005|9|0|55274.75810734|55276.80913826|55275.79780276|-12|28|25|0|0|0|||||||||||||||||||||||||||||0|||||||1802089401241005005|1|-0.0024120977392603|0.0005212261942025|-0.999996955049239|111000000|
+J163224.04-895130.8|248.1001921|-89.8585658|0.1206|0.1248|-0.0126|303.0623808|-27.0474603|269.868078|-66.4294253|1998.176|718.95|2403089401241004365|2403m894_ab41-004365|2403m894_ab41|4365|14.358|0.029|37.6|1.45500004|14.055|0.037|29.2|1.00800002|13.084|0.533|2.0|1.07299995|9.097||0.9|0.974600017|1.12699997|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|42nn|AACU|7|0000|24|24|23|24|1|23|0|23|23.689|23.736|22.951|22.698|0.0|0.0|0.0|0.0|8|h|8|h|0||0||286.23999|7.60459995|11.547|2.598|0.833|150.720001|5.15420008|21.937|2.862|0.049|92.5859985|45.4440002|1096.913|24.811|3.894|11.7139997|12.3500004|298.691|9.914|1.072|14.326|0.034|0|0.261|14.105|0.069|0|0.319|11.683||32|0.825|8.416||32|0.576|14.957|0.034|0|14.879|0.076|0|12.868||32|9.517||32|14.587|0.034|0|14.424|0.069|0|12.508||32|8.992||32|14.448|0.038|1|14.234|0.075|1|12.25||32|8.534||32|14.348|0.043|1|14.103|0.082|1|12.054||32|8.168||32|14.162|0.044|1|13.907|0.083|1|12.306||32|7.901||32|13.807|0.038|1|13.595|0.074|1|11.765||32|7.666||32|13.354|0.03|1|13.221|0.062|1|11.6||32|7.436||32|12.961|0.024|1|12.876|0.052|1|11.45||32|7.268||32|14.356|0.123|0.025|0.396|23|0|55275.02271543|55276.94144233|55276.01516015|14.051|0.243|0.05|1.13499999|23|2|55275.02271543|55276.94144233|55276.01516015|12.994|2.266|0.472|2.97600007|13|0|55275.02271543|55276.94144233|55275.98927066|9.888|3.055|0.637|2.36299992|15|0|55275.02271543|55276.94144233|55275.98927066|39|7|-63|1|0|1||||||||||||||||||||||||||912571292|0.49|73.9|1|15.312|0.06|14.804|0.077|14.426|0.093|2403089401241004365|1|-0.000920708731722|-0.0022903570974844|-0.999996953275257|121000000|
+J164305.97-895130.4|250.7749118|-89.8584649|0.1365|0.1442|-0.0304|303.0665663|-27.0529129|269.883464|-66.4270234|1981.059|716.485|2403089401241005811|2403m894_ab41-005811|2403m894_ab41|5811|14.505|0.031|34.6|1.23000002|14.304|0.043|25.5|0.8926|12.965|0.463|2.3|1.09200001|9.476||0.2|1.08200002|1.07099998|3|0|0.0|0.0|0.0|0.0|0000|hh00|0|30nn|AACU|7|0000|24|24|24|24|0|23|0|23|23.697|23.912|23.001|22.838|0.0|0.0|0.0|0.0|8|h|8|h|0||0||249.970001|7.22980022|10.777|2.508|0.0|119.809998|4.70480013|21.772|2.818|0.0|103.230003|44.0330009|1095.725|24.589|4.483|2.31539989|11.677|298.854|9.655|1.994|13.182|0.009|1|0.261|13.123|0.018|1|0.319|11.55||32|0.825|8.904||32|0.576|14.278|0.013|1|14.266|0.026|1|12.911||32|9.915||32|13.443|0.009|1|13.442|0.018|1|12.375||32|9.48||32|12.884|0.008|1|12.894|0.014|1|12.627|0.444|1|9.022||32|12.524|0.008|1|12.528|0.013|1|12.241|0.385|1|8.557||32|12.297|0.008|1|12.28|0.013|1|11.898|0.339|1|8.113||32|12.135|0.008|1|12.097|0.013|1|11.583|0.298|1|8.4|0.515|1|11.983|0.008|1|11.929|0.013|1|11.305|0.268|1|7.758|0.347|1|11.817|0.008|1|11.75|0.013|1|11.067|0.248|1|7.171|0.242|17|14.495|0.129|0.026|0.486|23|0|55275.02271543|55276.94144233|55276.01516015|14.314|0.186|0.038|0.72299999|23|0|55275.02271543|55276.94144233|55276.01516015|12.573|1.594|0.332|2.54299998|13|0|55275.02271543|55276.94144233|55275.98927066||||2.66599989|12|0|55275.02271543|55276.94144233|55275.98927066|16|-1|1|0|0|0||||||||||||||||||||||||||912600154|0.208|-68.9|1|15.738|0.076|15.06|0.089|14.697|0.137|2403089401241005811|1|-0.0008134047027436|-0.0023324911072799|-0.999996948924357|121000000|
+J174237.75-895129.9|265.6573213|-89.8583096|0.5695|0.6344|-0.1186|303.0839421|-27.0861705|269.9731801|-66.419423|1889.522|687.438|2403089401241005793|2403m894_ab41-005793|2403m894_ab41|5793|16.913|0.099|11.0|0.974300027|17.234|0.422|2.6|0.95599997|12.637||1.3|1.028|9.604||-1.5|1.07200003|1.00399995|1|0|0.0|0.0|0.0|0.007|0000|hH00|0|0nnn|ACUU|3|0000|5|25|0|25|0|23|0|24|24.773|24.707|23.972|23.475|0.0|0.0|0.0|0.0|8|h|1032|H|0||0||27.2099991|2.4841001|9.86|2.46|0.0|8.06110001|3.13269997|21.883|3.213|0.0|54.4830017|42.598999|1094.646|24.439|0.0|-16.9549999|11.4069996|298.94|9.605|0.88|16.044|0.282|1|0.261|15.959|0.398|1|0.319|12.492||32|0.825|9.008||32|0.576|16.961|0.372|1|16.231||32|13.671||32|10.018||32|16.305|0.282|1|16.278|0.398|1|13.317||32|9.584||32|15.8|0.227|1|15.773|0.321|1|13.046||32|9.239||32|15.376|0.191|1|15.406|0.285|1|12.81||32|8.952||32|15.025|0.167|1|15.118|0.263|1|12.608||32|8.693||32|14.725|0.15|1|14.876|0.25|1|12.423||32|8.46||32|14.429|0.133|1|14.636|0.233|1|12.26||32|8.247||32|14.123|0.115|1|14.365|0.208|1|12.108||32|8.05||32|16.922|0.376|0.075|2.786|23|0|55275.02271543|55277.20605032|55276.1183711|17.15|2.032|0.406|2.59100008|16|0|55275.02271543|55277.20605032|55276.1183711|13.068|3.218|0.671|2.49699998|11|0|55275.28732341|55277.20605032|55276.14460624||||3.50999999|10|0|55275.02271543|55277.20605032|55276.09786079|7|-32|-48|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241005793|1|-0.0001872563471071|-0.0024658617726947|-0.999996942225714|121000000|
+J193928.64-895129.4|294.8693718|-89.8581939|0.6183|0.6357|-0.1952|303.0878042|-27.1575774|270.1491523|-66.4319814|2084.176|721.526|3004089401241005111|3004m894_ab41-005111|3004m894_ab41|5111|16.984|0.103|10.6|0.948199987|16.828||1.9|1.04499996|13.052|0.509|2.1|1.02100003|9.635||-0.4|0.877300024|0.971400023|1|0|0.0|0.0|0.0|0.003|0000|0000|0|nnnn|AUCU|5|0000|2|26|0|26|0|25|0|25|25.624|25.589|24.933|24.539|0.0|0.0|0.0|0.0|0||0||0||0||25.4920006|2.40930009|9.325|2.652|0.158|5.67439985|3.02329993|21.778|3.349|0.26|95.3180008|44.7019997|1098.029|25.257|1.674|-4.31799984|11.0889997|299.507|9.592|0.952|16.637||32|0.261|15.929||32|0.319|12.541|0.406|0|0.825|8.567||32|0.576|17.789|0.49|0|16.483||32|13.344||32|9.706||32|16.898||32|16.248||32|13.366|0.406|0|9.143||32|16.898||32|16.019||32|12.807|0.316|0|8.767||32|16.881||32|15.787||32|12.346|0.256|1|8.532||32|16.603||32|15.586||32|11.927|0.209|1|8.378||32|15.987||32|15.407||32|11.609|0.184|1|8.283||32|15.747|0.278|1|14.987||32|11.378|0.173|1|8.178||32|14.956|0.155|1|14.496||32|11.205|0.17|1|8.44||32|17.164|0.471|0.092|2.641|25|1|55275.28732341|55277.33835439|55276.23654396|17.623|3.773|0.74|3.61599994|16|0|55275.28732341|55277.33835439|55276.23654396|12.429|1.216|0.243|5.88600016|16|0|55275.28732341|55277.33835439|55276.22158098|13.571|||4.52099991|13|0|55275.28732341|55277.33835439|55276.22158098|-4|-13|54|0|0|1|||||||||||||||||||||||||||||0|||||||3004089401241005111|1|0.0010408553087588|-0.0022454731391055|-0.999996937230614|131000000|
+J125240.78-895129.4|193.1699515|-89.8581817|0.2502|0.2406|0.0557|302.9327785|-26.9863402|269.6533046|-66.5280137|1965.147|713.951|1802089401241004304|1802m894_ab41-004304|1802m894_ab41|4304|15.727|0.046|23.8|0.988200009|15.634|0.103|10.5|0.953100026|13.064||-0.6|0.936399996|9.62||-1.8|1.11399996|0.994799972|1|0|0.0|0.0|0.0|0.0|0000|h000|0|01nn|AAUU|3|0000|23|24|5|24|1|24|0|24|23.948|23.912|23.925|24.085|0.0|0.0|0.0|0.0|8|h|0||0||0||81.1299973|3.40969992|10.191|2.491|0.208|35.1759987|3.34619999|21.819|3.076|0.129|-26.6399994|47.125|1095.29|25.832|1.331|-19.9769993|11.2399998|298.333|9.615|0.954|15.879|0.203|1|0.261|15.593||32|0.319|13.049||32|0.825|8.793||32|0.576|16.487|0.201|0|16.843|0.486|0|15.314||32|9.805||32|16.14|0.203|1|15.912||32|13.874||32|9.369||32|16.027|0.236|1|15.982||32|13.343||32|9.025||32|15.998|0.284|1|16.103||32|12.933||32|8.733||32|16.015|0.348|1|15.899||32|12.651||32|8.473||32|15.999|0.405|1|15.719||32|12.411||32|8.238||32|15.793|0.39|1|15.555||32|12.185||32|8.022||32|15.374|0.304|1|15.405||32|11.981||32|7.823||32|15.702|0.214|0.044|2.273|23|2|55274.75810734|55276.80913826|55275.83323679|15.568|0.569|0.116|3.21199989|22|1|55274.75810734|55276.80913826|55275.83323679||||6.98899984|10|1|55274.75810734|55276.80913826|55275.83323679||||3.44300008|9|0|55274.75810734|55276.80913826|55275.83323679|13|-60|-67|0|1|0|||||||||||||||||||||||||||||0|||||||1802089401241004304|1|-0.0024100927391415|-0.0005639488173879|-0.999996936702668|121000000|
+J154947.72-895129.3|237.4488693|-89.8581548|0.1849|0.1867|0.0462|303.0437023|-27.0270963|269.809053|-66.4410293|2066.91|722.909|2403089401241004094|2403m894_ab41-004094|2403m894_ab41|4094|15.34|0.037|29.1|2.64299989|14.871|0.057|18.9|1.09599996|13.023|0.511|2.1|1.12899995|8.932||1.5|0.927699983|1.47599995|1|0|0.0|0.0|0.0|0.0|0000|dd00|0|00nn|AACU|7|0000|24|25|20|25|3|24|0|24|24.748|24.737|23.692|23.763|0.0|0.0|0.0|0.0|9|dh|9|dh|0||0||115.860001|3.97659993|10.373|2.443|0.0|71.0680008|3.75530005|21.828|2.949|0.0|97.8820038|46.0289993|1097.281|25.279|1.269|17.9969997|12.1870003|299.028|9.884|0.501|14.827|0.077|0|0.261|14.862|0.271|0|0.319|11.64||32|0.825|8.505||32|0.576|15.669|0.095|0|15.709|0.316|0|12.833||32|9.326||32|15.088|0.077|0|15.181|0.271|0|12.465||32|9.081||32|14.777|0.074|1|14.952|0.282|1|12.238||32|8.709||32|14.502|0.071|1|14.759|0.291|1|12.366||32|8.418||32|14.141|0.062|1|14.42|0.257|1|11.913||32|8.157||32|13.691|0.048|1|13.917|0.191|1|11.732||32|7.921||32|13.156|0.035|1|13.266|0.123|1|11.566||32|7.706||32|12.456|0.021|1|12.487|0.069|1|12.42||32|7.506||32|15.323|0.145|0.029|0.871|24|0|55274.89041135|55276.94144233|55275.9701702|14.861|0.293|0.059|1.55400002|24|0|55274.89041135|55276.94144233|55275.9701702|12.612|2.316|0.473|3.6960001|13|1|55274.89041135|55276.94144233|55275.94348485|10.744|5.617|1.147|5.12400007|14|0|55274.89041135|55276.94144233|55275.94348485|-13|-11|-20|0|0|0|||||||||||||||||||||||||||||0|||||||2403089401241004094|1|-0.0013320352085457|-0.0020867646355091|-0.999996935543084|121000000|
+J035316.94-895129.3|58.3206157|-89.8581524|0.1211|0.125|-0.0113|302.8182119|-27.2276015|270.1881885|-66.6813089|2059.485|723.226|600089401241004007|0600m894_ab41-004007|0600m894_ab41|4007|14.238|0.027|40.1|1.38199997|14.327|0.046|23.4|0.940199971|11.81|0.155|7.0|1.05400002|9.314||0.7|1.079|1.11300004|1|0|0.0|0.0|0.0|0.0|0000|d000|0|00nn|AABU|7|0000|23|23|22|23|2|21|0|22|23.644|23.537|23.284|23.713|0.0|0.0|0.0|0.0|1|d|0||0||0||319.670013|7.96810007|9.293|2.709|0.27|117.220001|5.01420021|21.831|3.435|0.152|299.279999|42.8069992|1097.607|22.279|1.231|7.52320004|11.1389999|298.704|9.036|1.53|14.231|0.047|1|0.261|14.239|0.049|1|0.319|11.994||32|0.825|9.04||32|0.576|14.86|0.047|0|15.017|0.054|0|13.209||32|10.029||32|14.492|0.047|1|14.558|0.049|1|12.819||32|9.616||32|14.36|0.054|1|14.356|0.053|1|12.615||32|9.292||32|14.293|0.062|1|14.25|0.059|1|12.54||32|9.025||32|14.224|0.07|1|14.169|0.065|1|12.485||32|8.792||32|14.133|0.076|1|14.063|0.07|1|12.305||32|8.582||32|14.022|0.08|1|13.923|0.071|1|12.139||32|8.39||32|13.92|0.084|1|13.787|0.072|1|11.989||32|8.212||32|14.248|0.065|0.014|0.279|22|0|55275.28745078|55277.33835439|55276.31436422|14.338|0.179|0.037|0.614000022|22|0|55275.28745078|55277.33835439|55276.31436422|11.761|0.731|0.159|4.74100018|19|1|55275.28745078|55277.33835439|55276.26724288|10.103|4.562|0.973|1.58599997|11|0|55275.28745078|55277.33835439|55276.30089811|2|0|13|0|0|0||||||||||||||||||||||||||728573107|0.097|-155.4|1|14.991|0.043|14.426|0.069|14.374|0.093|600089401241004007|1|0.0013001544528222|0.0021068246707803|-0.999996935439407|101000000|
+J060856.85-895128.8|92.2368888|-89.8580125|0.3037|0.3313|-0.0523|302.775075|-27.1542431|269.9859877|-66.7025876|2222.232|680.414|1201089401241004539|1201m894_ab41-004539|1201m894_ab41|4539|15.998|0.058|18.8|0.902499974|16.032|0.159|6.8|0.906300008|11.889|0.162|6.7|1.01300001|9.56||-0.4|0.898299992|0.927100003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1nnn|ABBU|7|0000|17|22|1|22|2|21|0|21|23.61|23.869|23.018|22.691|0.0|0.0|0.0|0.0|0||0||0||0||63.237999|3.36199999|9.346|2.798|0.0|24.3920002|3.5631001|21.761|3.429|0.23|278.220001|41.4059982|1095.993|20.968|2.221|-4.7203002|11.8859997|298.899|9.523|1.044|15.898|0.198|0|0.261|15.553|0.172|0|0.319|12.288||32|0.825|8.997||32|0.576|16.515|0.195|0|16.422|0.203|0|13.487||32|10.001||32|16.159|0.198|0|15.872|0.172|0|13.113||32|9.573||32|15.947|0.211|1|15.45|0.151|1|12.83||32|9.237||32|15.508|0.174|1|14.986|0.122|1|12.598||32|8.953||32|14.841|0.114|1|14.47|0.092|1|12.394||32|8.702||32|14.256|0.079|1|14.024|0.072|1|12.213||32|8.475||32|13.916|0.067|1|13.734|0.064|1|12.049||32|8.267||32|13.786|0.068|1|13.579|0.064|1|11.898||32|8.074||32|15.977|0.288|0.061|1.574|21|1|55275.28745078|55277.20605032|55276.22872649|16.018|0.809|0.172|2.98099995|19|0|55275.28745078|55277.20605032|55276.22872649|11.849|0.685|0.15|3.78999996|19|0|55275.28745078|55277.20605032|55276.21054115||||2.11400008|5|0|55275.28745078|55277.20605032|55276.21054115|10|31|40|0|1|0|||||||||||||||||||||||||||||0|||||||1201089401241004539|1|-0.0000967249347549|0.002476258388184|-0.999996929389627|111000000|
+J000738.47-895128.2|1.910313|-89.8578538|0.5919|0.5551|0.1401|302.9622903|-27.2677116|270.3572169|-66.565041|2035.589|723.973|89401241005011|0000m894_ab41-005011|0000m894_ab41|5011|16.689|0.097|11.2|0.935299993|17.225|0.489|2.2|0.951499999|12.379|0.274|4.0|0.951699972|9.347||0.3|1.05999994|0.970600009|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0nnn|ACBU|7|0000|6|20|0|20|2|19|0|19|21.048|20.405|19.915|20.644|0.0|0.0|0.0|0.0|0||0||0||0||33.4490013|2.97340012|9.297|2.74|0.062|8.13160038|3.6638999|21.76|3.431|0.04|177.190002|44.7919998|1098.563|23.512|0.591|4.09450006|12.4130001|298.365|9.315|0.701|16.049|0.094|1|0.261|15.862||32|0.319|12.153||32|0.825|8.937||32|0.576|16.923|0.117|1|16.576||32|13.354||32|9.94||32|16.31|0.094|1|16.181||32|12.978||32|9.513||32|15.765|0.075|1|15.773||32|12.692||32|9.173||32|15.24|0.057|1|15.918|0.433|1|12.46||32|8.881||32|14.787|0.045|1|15.357|0.309|1|12.264||32|8.627||32|14.46|0.04|1|15.041|0.272|1|12.084||32|8.396||32|14.26|0.039|1|14.923|0.283|1|11.922||32|8.184||32|14.143|0.04|1|14.951|0.334|1|11.769||32|7.989||32|16.676|0.47|0.105|1.727|18|0|55275.55205887|55277.33835439|55276.42869092|17.15|2.604|0.582|2.80900002|11|0|55275.55205887|55277.33835439|55276.42869092|12.228|1.312|0.301|2.99499989|13|0|55275.55205887|55277.33835439|55276.41911578|10.682|5.959|1.367|3.8039999|9|0|55275.55205887|55277.33835439|55276.41911578|28|0|6|0|0|0|||||||||||||||||||||||||||||0|||||||89401241005011|1|0.0024795370077519|0.0000827015137694|-0.999996922523608|101000000|
+J034055.14-895127.8|55.2297628|-89.8577449|0.8588|0.8914|0.296|302.824096|-27.233214|270.2049124|-66.6774306|2079.574|723.13|600089401241005064|0600m894_ab41-005064|0600m894_ab41|5064|17.913|0.251|4.3|0.859799981|16.753||1.5|0.932799995|11.708|0.136|8.0|1.09500003|9.307|0.414|2.6|1.051|0.976499975|1|0|0.0|0.0|0.0|0.0|0000|DD00|0|nnnn|BUBC|13|0000|0|22|0|22|3|21|0|21|22.68|23.156|23.131|23.246|0.0|0.0|0.0|0.0|129|D|129|D|0||0||10.8380003|2.50270009|9.315|2.734|0.026|5.44420004|3.55369997|21.736|3.432|0.129|328.660004|41.2869987|1097.511|21.945|0.0|30.0039997|11.4320002|297.88|8.849|0.498|16.73||32|0.261|15.823||32|0.319|12.217||32|0.825|8.793||32|0.576|17.247||32|16.502||32|13.438||32|9.741||32|16.991||32|16.142||32|13.042||32|9.369||32|16.864||32|15.954||32|12.78||32|9.062||32|16.654||32|15.84||32|12.573||32|8.705||32|16.252||32|15.639||32|12.395||32|8.333||32|15.754||32|15.461||32|12.244||32|8.008||32|15.929|0.413|1|15.297||32|12.088||32|7.767||32|15.314|0.27|1|14.912||32|11.894||32|7.56||32|17.841|1.182|0.252|1.963|16|0|55275.28745078|55277.33835439|55276.34600466|18.512|8.762|1.868|1.79700005|9|0|55275.28745078|55277.33835439|55276.34600466|11.82|0.923|0.201|5.01000023|19|3|55275.28745078|55277.33835439|55276.33340399|9.258|1.403|0.306|4.73400021|16|0|55275.28745078|55277.33835439|55276.33340399|21|-34|-15|0|0|0|||||||||||||||||||||||||||||0|||||||600089401241005064|1|0.0014159182731029|0.0020394992432342|-0.99999691780439|101000000|
+J223706.59-895127.8|339.2774699|-89.8577325|0.1297|0.1251|0.0112|303.0204296|-27.246651|270.3338381|-66.510013|2179.795|700.402|89401241004269|0000m894_ab41-004269|0000m894_ab41|4269|14.268|0.029|37.5|0.934899986|14.246|0.043|25.0|0.997099996|13.168||-1.1|0.987399995|9.411||0.3|0.974600017|0.970600009|1|0|0.0|0.0|0.0|0.0|0000|0000|0|00nn|AAUU|3|0000|23|23|22|23|0|22|0|22|23.413|23.862|22.837|22.326|0.0|0.0|0.0|0.0|0||0||0||0||311.170013|8.29269981|9.22|2.818|0.04|126.370003|5.05609989|21.672|3.393|0.054|-45.5670013|42.8370018|1100.175|24.871|0.0|3.32550001|11.9720001|298.317|9.643|0.715|14.219|0.025|0|0.261|14.205|0.051|0|0.319|12.379||32|0.825|8.924||32|0.576|14.859|0.026|0|14.967|0.056|0|13.574||32|9.934||32|14.48|0.025|0|14.524|0.051|0|13.204||32|9.5||32|14.345|0.028|0|14.362|0.057|0|12.918||32|9.18||32|14.291|0.033|1|14.308|0.067|1|12.686||32|8.803||32|14.261|0.039|1|14.284|0.079|1|12.483||32|8.455||32|14.237|0.044|1|14.253|0.091|1|12.303||32|8.201||32|14.209|0.05|1|14.177|0.098|1|12.138||32|7.942||32|14.163|0.055|1|14.055|0.101|1|11.987||32|7.686||32|14.267|0.044|0.009|0.154|22|0|55275.55205887|55277.33835439|55276.44378378|14.246|0.167|0.035|0.711000025|22|0|55275.55205887|55277.33835439|55276.44378378||||2.21000004|6|0|55275.55205887|55277.33835439|55276.43620038|9.536|1.194|0.255|3.9519999|13|0|55275.55205887|55277.33835439|55276.43620038|-10|22|11|0|0|0||||||||||||||||||||||||||1127075773|0.227|55.7|1|15.227|0.055|14.661|0.065|14.506|0.094|89401241004269|1|0.0023223938518027|-0.0008786032810269|-0.999996917266784|131000000|
+J162056.44-895127.6|245.235185|-89.8576698|0.699|0.7655|0.1727|303.0584822|-27.0412098|269.8508895|-66.4313969|2016.38|723.318|2403089401241005875|2403m894_ab41-005875|2403m894_ab41|5875|18.719||-7.1|1.449|16.18|0.161|6.8|1.023|13.12|0.524|2.1|1.03100002|9.538||-0.3|0.861599982|1.09099996|1|0|0.0|0.0|0.0|0.0|0000|Hh00|0|nnnn|UBCU|6|0000|1|24|3|24|1|23|0|23|24.326|24.781|23.557|23.393|0.0|0.0|0.0|0.0|1032|H|8|h|0||0||-18.3799992|2.57949996|12.344|2.854|0.036|21.2789993|3.14720011|21.842|2.819|0.135|89.552002|43.2159996|1095.419|24.418|0.337|-3.81789994|12.132|298.933|9.763|0.539|18.184||32|0.261|15.863||32|0.319|12.331||32|0.825|8.718||32|0.576|18.816||32|16.621||32|13.721||32|10.332||32|18.445||32|16.182||32|13.156||32|9.294||32|18.006||32|15.886||32|12.882||32|8.914||32|17.277||32|16.203|0.464|1|12.649||32|8.611||32|16.835|0.239|1|15.638|0.333|1|12.443||32|8.353||32|15.864|0.115|1|15.083|0.237|1|12.263||32|8.139||32|15.107|0.067|1|14.557|0.17|1|12.098||32|8.02||32|14.501|0.044|1|14.082|0.126|1|11.947||32|7.821||32||||2.175|4|1|55275.02271543|55276.94144233|55276.01516015|16.242|1.097|0.224|3.98600006|19|1|55275.02271543|55276.94144233|55276.01516015|12.789|2.338|0.487|4.26999998|13|0|55275.02271543|55276.94144233|55275.98927066|11.332|||3.51099992|11|0|55275.02271543|55276.94144233|55275.98927066|39|-10|72|0|0|2|||||||||||||||||||||||||||||0|||||||2403089401241005875|1|-0.0010405879029431|-0.0022556754146601|-0.99999691454786|121000000|
+J012756.67-895126.9|21.9861304|-89.8574778|0.619|0.5947|0.1845|302.9064832|-27.268872|270.3329515|-66.6137143|1908.294|698.029|89401241005226|0000m894_ab41-005226|0000m894_ab41|5226|16.981|0.114|9.5|1.02699995|17.068|0.409|2.7|1.09000003|11.858|0.157|6.9|1.05700004|9.545||-1.3|1.09800005|1.06500006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|3nnn|BCBU|7|0000|7|22|2|22|3|21|0|21|22.752|22.701|21.885|21.573|0.0|0.0|0.0|0.0|0||0||0||0||25.559|2.69140005|9.231|2.666|0.05|9.39459991|3.5388999|21.745|3.34|0.113|286.170013|41.3810005|1098.625|22.323|0.0|-15.5550003|12.052|299.04|9.723|0.283|16.979|0.385|1|0.261|16.065||32|0.319|12.045||32|0.825|8.72||32|0.576|17.58|0.377|1|16.721||32|13.352||32|9.729||32|17.24|0.385|1|16.384||32|12.87||32|9.296||32|16.924|0.373|1|16.122||32|12.587||32|8.95||32|16.534|0.322|1|15.885||32|12.354||32|8.656||32|16.137|0.267|1|15.615||32|12.154||32|8.396||32|15.673|0.205|1|15.922|0.521|1|11.973||32|8.159||32|15.108|0.142|1|15.104|0.286|1|11.808||32|7.943||32|14.456|0.09|1|14.363|0.166|1|11.655||32|7.744||32|16.979|0.805|0.172|3.899|20|2|55275.55205887|55277.33835439|55276.42719412|16.877|2.046|0.436|1.84500003|10|0|55275.55205887|55277.33835439|55276.42719412|11.847|0.887|0.194|2.02900004|17|0|55275.55205887|55277.33835439|55276.41845963||||2.19899988|4|0|55275.55205887|55277.33835439|55276.41845963|-33|57|-11|0|1|0|||||||||||||||||||||||||||||0|||||||89401241005226|1|0.0023065763347571|0.000931267895691|-0.999996906218073|101000000|
+J024329.99-895126.7|40.8749775|-89.8574317|0.6091|0.6182|0.2046|302.8565878|-27.2539985|270.27203|-66.6537723|2170.865|704.492|600089401241004938|0600m894_ab41-004938|0600m894_ab41|4938|17.254|0.139|7.8|0.860199988|16.114|0.177|6.1|0.990400016|11.827|0.151|7.2|1.05900002|9.25|0.381|2.8|0.939400017|0.958800018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|nnnn|BBBC|15|0000|2|23|3|23|1|22|0|22|23.736|23.513|22.962|22.678|0.0|0.0|0.0|0.0|0||0||0||0||19.8859997|2.54040003|9.231|2.711|0.055|22.6219997|3.69390011|21.686|3.412|0.075|294.709991|40.9669991|1099.145|21.893|0.604|31.6359997|11.1079998|298.487|9.323|0.973|16.774|0.324|0|0.261|15.873|0.3|0|0.319|12.061||32|0.825|8.833||32|0.576|17.534|0.366|0|16.615|0.316|0|13.293||32|9.847||32|17.035|0.324|0|16.192|0.3|0|12.886||32|9.409||32|16.739|0.321|1|15.996|0.325|1|12.58||32|9.065||32|16.345|0.277|1|15.726|0.315|1|12.374||32|8.768||32|15.722|0.188|1|15.297|0.256|1|12.251||32|8.507||32|15.026|0.117|1|14.767|0.185|1|12.921||32|8.271||32|14.462|0.081|1|14.289|0.139|1|12.041||32|8.054||32|14.064|0.065|1|13.93|0.115|1|11.888||32|7.855||32|17.289|0.68|0.142|3.238|21|0|55275.55205887|55277.33835439|55276.39777605|15.963|0.726|0.151|3.93600011|20|0|55275.55205887|55277.33835439|55276.39777605|11.79|0.664|0.142|1.46800005|18|0|55275.55205887|55277.33835439|55276.3881014|9.219|1.132|0.241|3.63800001|18|0|55275.55205887|55277.33835439|55276.3881014|-17|-29|-45|0|1|1|||||||||||||||||||||||||||||0|||||||600089401241004938|1|0.0018814893473138|0.0016283594912215|-0.99999690421681|101000000|
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/test/WISE.prelim.sample.dat
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/test/WISE.prelim.sample.dat	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/test/WISE.prelim.sample.dat	(revision 34041)
@@ -0,0 +1,100 @@
+J070019.93+432212.0|105.0830765|43.3700066|0.0714|0.5048|-0.0096|173.4548334|19.7690989|101.6541116|20.53902|73.341|623.355|1040143901111000001|1040p439_aa11-000001|1040p439_aa11|1|7.149|0.028|38.9|0.869199991|7.294|0.023|48.1|0.935500026|7.13|0.02|54.8|0.841700017|7.115|0.099|11.0|1.074|0.926599979|1|0|0.142|0.0|0.0|0.0|5000|0000|0|1110|AAAA|15|12|12|12|12|12|12|7|12|10.898|12.111|11.879|12.129|0.0|0.0|0.0|0.0|0||0||0||0||219050.0|5638.0|17.205|3.254|0.0|76247.0|1585.40002|45.53|4.079|0.0|14058.0|256.390015|1881.719|22.688|0.0|225.919998|20.566|736.969|10.674|2.705|7.67|0.005|16|0.222|7.313|0.005|0|0.28|7.118|0.008|0|0.665|7.106|0.162|0|0.616|8.338|0.006|16|8.026|0.006|0|8.369|0.009|0|8.211|0.17|0|7.892|0.005|16|7.593|0.005|0|7.783|0.008|0|7.722|0.162|0|7.725|0.005|16|7.428|0.005|0|7.466|0.007|0|7.414|0.167|1|7.654|0.005|16|7.364|0.005|0|7.3|0.008|0|7.228|0.184|1|7.618|0.005|16|7.332|0.005|0|7.212|0.008|0|7.106|0.21|1|7.596|0.005|16|7.314|0.005|0|7.165|0.009|0|7.052|0.247|1|7.58|0.005|16|7.301|0.005|0|7.139|0.009|0|7.075|0.308|1|7.569|0.005|16|7.291|0.005|0|7.124|0.01|0|7.089|0.375|1|7.147|0.037|0.011|7.295|0.03|0.009|7.13|0.027|0.008|7.129|0.34|0.098||||||||||||||||||||||||||389882849|0.009|81.1|1|8.222|0.034|7.451|0.046|7.231|0.021|-0.18916233986809|0.70189102689035|0.686707066766055|223003002|
+J065913.94+431543.9|104.8081131|43.2621994|0.0973|0.5092|-0.012|173.493124|19.5447216|101.4544493|20.4099538|594.029|335.42|1040143901111000051|1040p439_aa11-000051|1040p439_aa11|51|12.893|0.025|42.9|0.7676|12.864|0.03|36.5|0.90079999|12.057||1.7|0.876299977|9.18|||0.902999997|0.857800007|2|0|0.0|0.0|0.0|0.0|0000|0000|0|1100|AAUU|3|13|13|13|13|0|13|0|13|12.628|12.656|12.771|12.717|0.0|0.0|0.0|0.0|0||0||0||0||1103.90002|25.7310009|16.008|3.288|0.0|451.25|12.3649998|44.678|4.026|0.0|69.2180023|40.5629997|1882.381|21.958|0.0|-4.68730021|16.8579998|737.179|10.956|4.392|12.905|0.015|0|0.222|12.907|0.03|0|0.28|11.954||32|0.665|9.494||32|0.616|13.497|0.015|0|13.611|0.031|0|13.002||32|9.6||32|13.127|0.015|0|13.187|0.03|0|12.619||32|10.11||32|12.997|0.016|1|13.048|0.033|1|12.304||32|8.742||32|12.944|0.019|1|13.016|0.04|1|12.015||32|8.286||32|12.914|0.021|1|13.013|0.047|1|11.719||32|7.817||32|12.889|0.024|1|13.007|0.055|1|11.464||32|7.427||32|12.868|0.027|1|12.996|0.063|1|11.264||32|7.166||32|12.853|0.031|1|12.99|0.072|1|11.11||32|7.018||32|12.893|0.023|0.006|12.865|0.068|0.019|12.952|2.605|0.723|||||||||||||||||||||||||||||389862912|0.091|-72.5|1|13.336|0.022|13.016|0.021|13.003|0.028|-0.186121697487002|0.704038676616684|0.685338059319913|223003031|
+J065944.84+432452.7|104.9368439|43.4146538|0.1091|0.5117|-0.0212|173.3730353|19.6833296|101.5360666|20.5717047|352.875|736.982|1040143901111000076|1040p439_aa11-000076|1040p439_aa11|76|13.239|0.025|42.8|1.56500006|13.299|0.037|29.1|1.04999995|11.895||1.8|1.01699996|8.748||0.8|0.957199991|1.13900006|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0100|AAUU|3|11|11|11|11|0|11|0|11|11.257|11.534|10.912|11.402|0.0|0.0|0.0|0.0|8|h|0||0||0||802.429993|18.7660007|16.709|3.838|0.0|302.220001|10.3889999|45.571|5.071|0.0|81.6419983|46.5060005|1883.447|23.228|0.0|14.4219999|17.8859997|736.917|10.331|1.413|13.119|0.023|1|0.222|13.132|0.052|1|0.28|12.004|0.508|1|0.665|8.292||32|0.616|13.802|0.025|0|13.954|0.061|0|12.532||32|9.343||32|13.341|0.023|1|13.412|0.052|1|12.669|0.508|1|8.908||32|13.048|0.022|1|13.081|0.049|1|12.099|0.386|1|8.562||32|12.775|0.022|1|12.793|0.047|1|11.694|0.328|1|8.27||32|12.506|0.021|1|12.523|0.044|1|11.434|0.311|1|8.008||32|12.298|0.02|1|12.317|0.043|1|11.252|0.311|1|7.772||32|12.171|0.021|1|12.183|0.044|1|11.152|0.329|1|7.556||32|12.088|0.022|1|12.09|0.047|1|11.163|0.382|1|7.357||32|13.239|0.03|0.009|13.299|0.078|0.023|12.364|0.996|0.3|9.792|2.153|0.649||||||||||||||||||||||||||389863247|0.051|123.7|1|13.972|0.03|13.451|0.031|13.378|0.03|-0.187232347403342|0.701854285923945|0.687273314930839|223003031|
+J070019.91+432501.6|105.0829773|43.4171371|0.1194|0.514|-0.0139|173.4074755|19.7844378|101.6484702|20.5858536|75.07|746.733|1040143901111000101|1040p439_aa11-000101|1040p439_aa11|101|13.696|0.028|38.4|1.16600001|13.421|0.039|27.7|0.858900011|12.154||1.2|0.895299971|9.139|||0.971599996|0.965699971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1100|AAUU|3|11|11|11|11|0|11|0|11|12.755|12.8|12.656|12.579|0.0|0.0|0.0|0.0|0||0||0||0||526.969971|13.7279997|16.058|3.11|0.0|270.089996|9.76399994|44.821|4.448|0.0|51.5999985|42.9360008|1882.171|22.464|0.0|-9.09549999|17.5189991|736.803|10.463|0.0|13.687|0.028|0|0.222|13.464|0.058|0|0.28|11.597||32|0.665|8.361||32|0.616|14.276|0.029|0|14.171|0.062|0|12.703||32|9.413||32|13.909|0.028|0|13.744|0.058|0|12.262||32|8.977||32|13.767|0.031|1|13.601|0.065|1|12.044||32|8.63||32|13.687|0.036|1|13.551|0.077|1|11.954||32|8.333||32|13.604|0.04|1|13.496|0.088|1|13.584||32|8.072||32|13.491|0.042|1|13.41|0.096|1|11.73||32|7.834||32|13.366|0.044|1|13.311|0.102|1|11.567||32|7.617||32|13.266|0.046|1|13.23|0.109|1|11.413||32|7.417||32|13.698|0.057|0.017|13.422|0.085|0.026|13.23|2.799|0.844|||||||||||||||||||||||||||||389882755|0.519|18.1|1|14.696|0.037|14.15|0.037|13.908|0.042|-0.189014070691318|0.70134570373507|0.687304797693903|223003002|
+J065950.85+432136.6|104.9618988|43.3601799|0.1294|0.5192|-0.0288|173.4340316|19.682647|101.5617693|20.5195542|303.654|594.893|1040143901111000126|1040p439_aa11-000126|1040p439_aa11|126|13.937|0.03|36.5|2.1559999|13.953|0.051|21.3|0.943799973|12.554||0.3|0.771399975|9.13|||0.967199981|1.19200003|1|0|0.0|0.0|0.0|0.002|0000|0000|0|5100|AAUU|3|12|12|12|12|0|12|0|12|11.735|11.737|11.902|11.861|0.0|0.0|0.0|0.0|0||0||0||0||421.829987|11.5480003|15.826|3.312|0.0|165.440002|7.76469994|44.939|4.178|0.0|10.7950001|42.1899986|1882.188|21.918|0.0|-32.9980011|17.6509991|736.953|10.729|1.617|13.939|0.038|0|0.222|13.965|0.107|0|0.28|12.128||32|0.665|8.326||32|0.616|14.526|0.038|0|14.701|0.117|0|13.154||32|9.376||32|14.161|0.038|0|14.245|0.107|0|12.793||32|8.942||32|14.02|0.043|1|14.074|0.118|1|12.507||32|8.598||32|13.939|0.049|1|14.023|0.139|1|12.272||32|8.304||32|13.864|0.054|1|14.02|0.167|1|12.072||32|8.044||32|13.783|0.059|1|14.03|0.199|1|11.892||32|7.809||32|13.708|0.064|1|14.033|0.231|1|11.728||32|7.593||32|13.653|0.07|1|14.009|0.26|1|11.575||32|7.395||32|13.94|0.115|0.033|13.965|0.163|0.047||||||||||||||||||||||||||||||||389863128|0.713|-0.8|1|14.319|0.023|14.068|0.03|13.98|0.039|-0.187707857831671|0.702403298409196|0.686582381431483|223003002|
+J070006.43+431646.2|105.0268326|43.2795029|0.1616|0.5256|-0.0385|173.5314409|19.7007945|101.621355|20.4445555|177.595|385.113|1040143901111000151|1040p439_aa11-000151|1040p439_aa11|151|14.267|0.033|33.4|0.888700008|14.366|0.067|16.3|1.00300002|12.527||0.3|0.967100024|9.092|||0.905900002|0.936100006|2|0|0.0|0.0|0.0|0.0|0000|000h|0|1100|AAUU|3|12|12|12|12|0|12|0|12|12.725|12.717|12.248|12.548|0.0|0.0|0.0|0.0|0||0||0||8|h|311.329987|9.33250046|15.887|3.373|0.215|113.099998|6.94950008|44.965|4.386|0.0|13.4020004|42.0779991|1882.708|21.166|1.85|-9.7159996|18.2959995|737.466|11.189|2.805|13.947|0.036|1|0.222|13.973|0.087|1|0.28|11.947||32|0.665|7.994||32|0.616|14.722|0.043|1|14.893|0.113|1|13.115||32|9.099||32|14.169|0.036|1|14.253|0.087|1|12.612||32|8.61||32|13.784|0.032|1|13.823|0.076|1|12.171||32|8.336||32|13.533|0.032|1|13.556|0.074|1|11.865||32|8.116||32|13.415|0.034|1|13.432|0.079|1|11.637||32|7.917||32|13.376|0.038|1|13.39|0.089|1|11.438||32|7.719||32|13.37|0.044|1|13.379|0.103|1|11.265||32|7.577||32|13.368|0.051|1|13.39|0.119|1|11.066||32|8.266||32|14.268|0.067|0.019|14.354|0.169|0.049|14.746|||||||||||||||||||||||||||||||389883042|0.041|-13.3|1|15.109|0.045|14.465|0.048|14.352|0.063|-0.18875424368919|0.703123123536474|0.685557954251596|223003002|
+J065921.99+431354.2|104.8416595|43.2317276|0.1794|0.534|-0.018|173.5322098|19.5577219|101.4838951|20.3823155|529.312|256.25|1040143901111000176|1040p439_aa11-000176|1040p439_aa11|176|14.445|0.037|29.4|0.825800002|14.398|0.064|17.0|0.810500026|12.329||0.9|0.913999975|9.177|||0.874199986|0.851800025|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1100|AAUU|3|13|13|13|13|0|13|0|13|13.813|13.712|13.958|13.916|0.0|0.0|0.0|0.0|0||0||0||0||264.119995|8.97809982|16.228|3.848|0.0|109.860001|6.47809982|44.701|4.264|0.0|36.1710014|40.4339981|1882.185|22.645|0.0|-18.0879993|16.9039993|736.858|10.787|2.273|14.004|0.049|1|0.222|13.949|0.116|1|0.28|11.853||32|0.665|8.597||32|0.616|14.817|0.06|1|14.91|0.155|1|12.995||32|9.653||32|14.226|0.049|1|14.229|0.116|1|12.518||32|9.213||32|13.645|0.037|1|13.621|0.086|1|12.123||32|8.867||32|12.957|0.025|1|12.985|0.06|1|11.784||32|8.572||32|12.388|0.018|1|12.449|0.044|1|11.501||32|8.309||32|12.06|0.016|1|12.106|0.038|1|11.242||32|8.072||32|11.908|0.016|1|11.922|0.037|1|11.666|0.476|1|7.855||32|11.83|0.017|1|11.825|0.039|1|11.408|0.432|1|7.655||32|14.436|0.02|0.005|14.408|0.169|0.047|13.597|4.01|1.112|||||||||||||||||||||||||||||389862834|1.441|156.3|2|15.234||14.624||14.974|0.113|-0.186627212884102|0.704281808406382|0.684950668120668|223003031|
+J065924.24+432255.3|104.8510132|43.3820419|0.166|0.532|-0.0359|173.383969|19.6137107|101.4736646|20.5324783|515.262|649.93|1040143901111000201|1040p439_aa11-000201|1040p439_aa11|201|14.55|0.034|32.0|1.398|14.365|0.064|17.0|0.871299982|12.693||0.0|1.01900005|9.169|||0.976999998|1.06200004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1100|AAUU|3|12|12|12|12|0|12|0|12|12.164|12.55|11.972|12.391|0.0|0.0|0.0|0.0|0||0||0||0||239.970001|7.49039984|16.212|3.454|0.0|113.290001|6.65829992|44.793|4.505|0.0|0.688690007|41.512001|1882.019|22.528|2.802|-13.9160004|17.0410004|736.586|10.506|2.305|14.592|0.083|0|0.222|14.475|0.171|0|0.28|12.108||32|0.665|8.348||32|0.616|15.173|0.083|0|15.137|0.174|0|13.136||32|9.399||32|14.814|0.083|0|14.755|0.171|0|12.773||32|8.964||32|14.668|0.094|1|14.649|0.201|1|12.494||32|8.618||32|14.537|0.103|1|14.567|0.232|1|12.257||32|8.323||32|14.343|0.104|1|14.404|0.239|1|12.041||32|8.063||32|14.091|0.097|1|14.189|0.233|1|11.672||32|7.827||32|13.856|0.091|1|13.99|0.225|1|11.429||32|7.611||32|13.697|0.09|1|13.844|0.226|1|11.273||32|7.412||32|14.539|0.059|0.017|14.382|0.197|0.057||||||||||||||||||||||||||||||||389863175|0.497|6.3|1|15.622|0.055|14.988|0.08|14.623|0.076|-0.186280973376651|0.702511982256868|0.68685974823349|223003031|
+J065938.67+431944.3|104.9111252|43.3289871|0.1814|0.5335|-0.0358|173.4524301|19.6375225|101.5262299|20.4845071|399.449|512.194|1040143901111000226|1040p439_aa11-000226|1040p439_aa11|226|14.668|0.037|29.7|1.06500006|14.445|0.071|15.3|1.00800002|12.653|||1.03400004|9.058|||0.944500029|1.00699997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1100|AAUU|3|11|11|11|11|1|11|0|11|10.917|10.718|10.874|10.894|0.0|0.0|0.0|0.0|0||0||0||0||215.25|7.24599981|15.662|3.228|0.0|105.239998|6.88880014|44.734|4.133|0.0|-9.33329964|43.4199982|1883.122|22.287|0.0|-24.2299995|18.8740005|736.905|11.341|1.487|14.687|0.075|1|0.222|14.436|0.123|1|0.28|12.064||32|0.665|8.474||32|0.616|15.279|0.076|0|15.176|0.134|0|13.1||32|9.52||32|14.909|0.075|1|14.716|0.123|1|12.729||32|9.09||32|14.748|0.084|1|14.536|0.135|1|12.439||32|8.749||32|14.611|0.091|1|14.437|0.153|1|12.207||32|8.458||32|14.419|0.092|1|14.307|0.163|1|11.918||32|8.203||32|14.2|0.088|1|14.131|0.163|1|11.589||32|7.971||32|13.989|0.085|1|13.905|0.154|1|11.261||32|7.759||32|13.705|0.075|1|13.555|0.128|1|10.984||32|7.563||32|14.662|0.118|0.036|14.44|0.234|0.071||||||||||||||||||||||||||||||||389863069|0.207|-172.6|1|15.502|0.055|14.967|0.077|14.851|0.094|-0.187181493286928|0.702930459175366|0.686186460180019|223003031|
+J070004.01+431150.7|105.0167084|43.1974411|0.2006|0.5425|-0.0355|173.6111903|19.666881|101.6231645|20.3621803|194.386|170.07|1040143901111000251|1040p439_aa11-000251|1040p439_aa11|251|14.921|0.039|28.1|0.90200001|14.821|0.09|12.1|0.843200028|12.269||0.8|0.837599993|8.417||1.6|1.03999996|0.90109998|1|0|0.0|0.0|0.0|0.0|0000|hh00|0|0000|AAUU|3|12|12|9|12|0|12|0|12|12.867|12.824|12.298|12.798|0.0|0.0|0.0|0.0|8|h|8|h|0||0||170.520004|6.06529999|16.035|3.305|0.0|74.3939972|6.16099977|44.734|4.591|0.0|36.4160004|43.6489983|1883.279|22.518|3.235|30.0960007|19.0049992|737.0|10.718|0.167|14.683|0.089|0|0.222|14.706|0.194|0|0.28|11.9||32|0.665|7.85||32|0.616|15.4|0.101|0|15.482|0.221|0|12.988||32|8.917||32|14.905|0.089|0|14.986|0.194|0|12.565||32|8.466||32|14.568|0.085|0|14.663|0.188|0|12.186||32|8.108||32|14.204|0.075|0|14.286|0.165|0|11.819||32|7.837||32|13.687|0.056|1|13.719|0.118|1|11.465||32|7.605||32|12.903|0.033|1|12.925|0.067|1|11.813|0.49|1|7.397||32|11.971|0.017|1|12.054|0.036|1|11.325|0.363|1|7.216||32|11.15|0.01|1|11.286|0.021|1|10.886|0.279|1|7.052||32|14.919|0.064|0.019|14.833|0.342|0.099|13.34|2.32|0.67|9.478|1.459|0.421||||||||||||||||||||||||||389883225|0.242|47.0|1|16.094|0.075|15.347|0.083|15.154|0.116|-0.188884213139567|0.704104102223168|0.684514548610293|223003002|
+J065954.56+432159.9|104.9773483|43.3666649|0.2128|0.547|-0.0407|173.4314406|19.6953852|101.5729304|20.5272323|274.438|612.206|1040143901111000276|1040p439_aa11-000276|1040p439_aa11|276|14.976|0.04|26.9|0.971099973|15.333|0.135|8.1|0.792800009|12.674|||1.09099996|8.673||0.8|1.023|0.962499976|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|ABUU|3|12|12|3|12|0|12|0|12|11.695|11.762|11.62|11.819|0.0|0.0|0.0|0.0|0||0||0||0||162.0|6.03100014|15.616|3.099|0.0|46.4329987|5.75710011|44.836|4.422|0.0|-31.8950005|42.6020012|1882.636|21.897|0.0|14.9680004|19.4060001|736.944|10.844|1.624|14.971|0.072|1|0.222|15.297|0.28|1|0.28|12.146||32|0.665|8.378||32|0.616|15.575|0.073|0|16.043|0.306|0|13.18||32|9.428||32|15.193|0.072|1|15.577|0.28|1|12.811||32|8.994||32|14.992|0.078|1|15.358|0.298|1|12.523||32|8.649||32|14.788|0.08|1|15.212|0.322|1|12.292||32|8.355||32|14.56|0.078|1|15.095|0.349|1|12.091||32|8.095||32|14.377|0.078|1|15.032|0.388|1|11.913||32|7.859||32|14.271|0.082|1|15.059|0.464|1|11.747||32|7.643||32|14.213|0.089|1|14.342||32|11.596||32|7.444||32|15.02|0.113|0.033|15.355|0.611|0.176||||9.921|2.264|0.653||||||||||||||||||||||||||389882857|0.205|177.3|1|15.457|0.051|15.052|0.076|15.039|0.108|-0.187877165794471|0.702277583381205|0.686664668126511|223003002|
+J070016.92+431807.0|105.0705109|43.30196|0.2784|0.5777|-0.0515|173.5199744|19.7381922|101.6524389|20.4703802|95.073|444.912|1040143901111000326|1040p439_aa11-000326|1040p439_aa11|326|15.252|0.054|20.2|0.958599985|14.932|0.101|10.8|0.962599993|11.362|0.172|6.3|1.051|8.459|0.295|3.7|1.13999999|1.02100003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|AABB|15|11|11|7|11|1|11|1|11|11.295|11.477|10.94|11.368|0.0|0.0|0.0|0.0|0||0||0||0||125.690002|6.22410011|16.276|3.671|0.721|67.1709976|6.24380016|44.992|4.182|0.0|285.130005|45.1679993|1882.505|21.367|0.0|65.5049973|17.7959995|736.89|10.504|0.293|15.04|0.157|0|0.222|14.801|0.263|0|0.28|11.19|0.26|0|0.665|8.174|0.49|1|0.616|15.72|0.173|0|15.561|0.295|0|12.509|0.343|0|9.318|0.534|1|15.262|0.157|0|15.081|0.263|0|11.855|0.26|0|8.79|0.49|1|15.052|0.166|0|14.924|0.293|0|11.423|0.225|0|8.524|0.528|1|14.939|0.185|0|14.945|0.369|0|11.127|0.212|0|7.585||32|14.889|0.213|1|15.078|0.504|1|10.965|0.22|1|7.456||32|14.885|0.25|1|14.376||32|10.89|0.242|1|7.36||32|14.883|0.292|1|14.374||32|10.88|0.28|1|7.273||32|14.853|0.325|1|14.327||32|10.935|0.337|1|7.16||32|15.269|0.127|0.038|14.913|0.171|0.052|11.374|0.634|0.191|8.98|1.329|0.401|||||||||||||||||||||||||||||0|||||||-0.189220320959677|0.702719509202604|0.685843248506515|223003002|
+J065941.98+431013.3|104.9249573|43.1703873|0.2268|0.5549|-0.0323|173.6149312|19.5948027|101.5554039|20.3279575|368.743|97.283|1040143901111000351|1040p439_aa11-000351|1040p439_aa11|351|15.188|0.044|24.9|1.28499997|15.014|0.095|11.4|0.904900014|12.554|0.448|2.4|0.985000014|9.292|||1.10099995|1.06599998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|AACU|7|14|14|8|14|1|14|0|14|13.839|13.788|13.821|13.869|0.0|0.0|0.0|0.0|0||0||0||0||133.259995|5.34210014|15.544|3.233|0.0|62.2999992|5.44239998|44.8|4.129|0.0|95.125|39.2130013|1882.785|21.633|0.0|-0.199420005|15.2159996|736.707|9.858|2.194|14.988|0.09|0|0.222|14.9|0.214|0|0.28|11.697||32|0.665|8.588||32|0.616|15.658|0.097|0|15.67|0.238|0|12.822||32|9.643||32|15.21|0.09|0|15.18|0.214|0|12.362||32|9.204||32|15.048|0.1|0|14.997|0.234|0|12.083||32|8.86||32|15.0|0.119|1|14.974|0.284|1|11.921||32|8.566||32|14.983|0.141|1|15.02|0.357|1|11.887||32|8.305||32|14.952|0.162|1|15.048|0.431|1|11.994||32|8.07||32|14.892|0.178|1|15.014|0.487|1|11.914||32|7.854||32|14.804|0.189|1|14.958|0.532|1|11.763||32|7.655||32|15.188|0.099|0.026|15.016|0.338|0.09|13.043|2.344|0.626|||||||||||||||||||||||||||||389862698|1.683|133.3|1|16.252|0.09|15.67|0.104|15.408|0.159|-0.18783967182655|0.704717900893396|0.684170255015884|223003002|
+J065930.89+431616.9|104.8787308|43.2713737|0.1403|0.5218|-0.0268|173.501941|19.5962904|101.5079283|20.424665|459.635|360.736|1040143901111000376|1040p439_aa11-000376|1040p439_aa11|376|14.144|0.03|35.7|1.824|14.087|0.054|20.2|1.01699996|12.695|||0.938199997|9.171|||1.00399995|1.18400002|1|0|0.0|0.0|0.0|0.005|0000|d000|0|0100|AAUU|3|12|12|12|12|0|12|0|12|12.821|13.529|13.217|13.124|0.0|0.0|0.0|0.0|1|d|0||0||0||348.609985|9.77050018|16.11|3.563|0.302|146.320007|7.22949982|45.162|4.623|0.601|-28.3859997|41.769001|1882.561|22.73|0.0|-19.8360004|16.9979992|736.849|10.335|0.464|14.102|0.047|0|0.222|14.152|0.14|0|0.28|11.953||32|0.665|8.471||32|0.616|14.718|0.048|0|14.865|0.149|0|13.459||32|9.523||32|14.324|0.047|0|14.432|0.14|0|12.618||32|9.087||32|14.152|0.051|0|14.283|0.158|0|12.157||32|8.743||32|14.043|0.057|1|14.234|0.187|1|11.822||32|8.448||32|13.936|0.063|1|14.165|0.212|1|11.563||32|8.187||32|13.785|0.064|1|14.02|0.219|1|11.34||32|7.952||32|13.588|0.062|1|13.836|0.215|1|11.163||32|7.667||32|13.411|0.061|1|13.686|0.216|1|11.024||32|7.449||32|14.159|0.054|0.016|14.081|0.151|0.044||||||||||||||||||||||||||||||||389862933|0.931|-9.2|1|15.155|0.039|14.537|0.045|14.314|0.06|-0.186961111433325|0.703702677611237|0.6854546551993|223003031|
+J070007.71+431950.8|105.0321503|43.3307991|0.3311|0.6146|-0.0475|173.4813129|19.7212716|101.6194319|20.4959659|169.045|519.527|1040143901111000401|1040p439_aa11-000401|1040p439_aa11|401|15.502|0.059|18.5|1.08500004|15.67|0.194|5.6|0.917200029|12.161||1.1|0.871200025|9.088|||0.888300002|0.933300018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|ABUU|3|11|11|1|11|0|11|0|11|11.441|11.742|11.097|11.607|0.0|0.0|0.0|0.0|0||0||0||0||99.8000031|5.38759995|16.071|3.344|1.204|34.0519981|6.07609987|44.834|4.159|0.0|49.5779991|43.5250015|1883.139|23.419|0.0|-2.34649992|18.3600006|737.38|11.211|5.242|15.447|0.148|0|0.222|15.179||32|0.28|11.802||32|0.665|8.377||32|0.616|16.027|0.147|0|16.481|0.527|0|12.821||32|9.43||32|15.669|0.148|0|15.459||32|12.467||32|8.993||32|15.532|0.168|0|15.481||32|12.376||32|8.652||32|15.454|0.193|1|16.606||32|12.145||32|8.354||32|15.361|0.214|1|15.418||32|11.941||32|8.093||32|15.12|0.201|1|15.243||32|11.766||32|7.858||32|14.676|0.155|1|14.871||32|11.603||32|7.641||32|14.112|0.107|1|14.342||32|11.449||32|7.442||32|15.497|0.146|0.044|15.876|0.656|0.198|13.269|3.956|1.193|||||||||||||||||||||||||||||389882927|1.004|-0.6|1|15.996|0.075|15.512|0.102|15.364|0.153|-0.188660236642888|0.702512551728144|0.686209464940744|223003002|
+J065855.17+432450.8|104.7298965|43.4141273|0.2872|0.5852|-0.0592|173.3210178|19.5412116|101.3765234|20.5548311|746.407|731.856|1040143901111000426|1040p439_aa11-000426|1040p439_aa11|426|15.456|0.052|20.9|1.005|15.357|0.145|7.5|1.12399995|12.63|||0.889800012|9.088||0.1|0.971000016|0.992799997|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|ABUU|3|12|12|6|11|0|11|0|12|11.886|11.86|11.763|11.735|0.0|0.0|0.0|0.0|0||0||0||0||104.160004|4.97230005|15.675|3.248|0.0|45.4269981|6.0868001|44.708|4.869|0.0|-71.651001|44.3549995|1882.149|21.856|0.0|1.13929999|17.7859993|736.94|11.067|0.0|15.448|0.12|0|0.222|15.151|0.285|0|0.28|12.036||32|0.665|8.359||32|0.616|16.03|0.12|0|15.938|0.325|0|13.064||32|9.448||32|15.67|0.12|0|15.431|0.285|0|12.701||32|8.975||32|15.553|0.139|0|15.2|0.299|0|12.418||32|8.573||32|15.49|0.162|1|15.057|0.324|1|12.185||32|8.193||32|15.413|0.181|1|14.899|0.337|1|11.983||32|7.943||32|15.299|0.192|1|14.675|0.323|1|11.805||32|7.789||32|15.131|0.192|1|14.413|0.296|1|11.517||32|7.67||32|14.88|0.175|1|14.168|0.272|1|11.167||32|8.14||32|15.449|0.152|0.044|15.356|0.662|0.2||||11.386||||||||||||||||||||||||||||389856264|0.329|50.8|1|16.127|0.093|15.687|0.133|15.469|0.155|-0.184697700409823|0.702532081213561|0.687266639907006|223003031|
+J065955.96+431332.2|104.9832001|43.2256355|0.3517|0.6307|-0.0545|173.5743892|19.6530851|101.5939672|20.3875221|259.164|243.132|1040143901111000451|1040p439_aa11-000451|1040p439_aa11|451|15.661|0.064|16.9|0.977699995|15.538|0.174|6.2|0.998600006|12.472||0.3|0.886900008|8.283||1.7|0.987200022|0.956700027|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|ABUU|3|11|11|1|11|0|11|0|11|11.176|11.481|11.946|12.499|0.0|0.0|0.0|0.0|0||0||0||0||86.2300034|5.09180021|16.101|3.615|0.0|38.4350014|6.17719984|44.802|4.465|0.0|15.0869999|43.7420006|1883.849|20.898|3.903|35.0379982|21.0009995|736.484|10.763|3.715|15.518|0.162|1|0.222|15.752|0.516|1|0.28|11.958||32|0.665|13.404||32|0.616|16.189|0.176|1|16.365|0.502|1|13.654||32|9.445||32|15.74|0.162|1|16.032|0.516|1|12.623||32|14.02||32|15.483|0.165|1|15.154||32|12.105||32|8.812||32|15.303|0.173|1|15.088||32|11.691||32|8.52||32|15.186|0.187|1|15.08||32|11.386||32|8.26||32|15.112|0.206|1|15.067||32|11.172||32|8.027||32|15.034|0.223|1|15.468||32|11.726|0.531|1|7.812||32|14.858|0.218|1|15.221||32|11.478|0.486|1|7.614||32|15.697|0.145|0.044|15.542|0.478|0.144|14.369|3.483|1.05|8.867|0.768|0.232||||||||||||||||||||||||||389883155|0.833|12.9|1|16.721|0.154|16.134|0.186|15.733|0.189|-0.188385291677707|0.703888974300826|0.684873195370673|223003002|
+J065923.93+431000.2|104.8497314|43.1667252|0.3404|0.6207|-0.0508|173.5993793|19.5418036|101.4976702|20.3183379|512.276|86.236|1040143901111000476|1040p439_aa11-000476|1040p439_aa11|476|15.667|0.063|17.3|0.855099976|15.775|0.191|5.7|0.89200002|12.727|||0.944599986|9.174|||0.932900012|0.901499987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|12|13|1|13|0|13|0|13|13.825|13.9|13.855|13.832|0.0|0.0|0.0|0.0|0||0||0||0||85.7330017|4.94680023|15.694|3.435|0.0|30.9009991|5.43190002|45.122|4.151|0.0|-16.4130001|40.5769997|1883.008|22.86|0.0|-8.49419975|16.9619999|737.162|9.504|0.0|15.62|0.2|0|0.222|14.936||32|0.28|12.066||32|0.665|8.53||32|0.616|16.236|0.204|0|15.621||32|13.104||32|9.586||32|15.842|0.2|0|15.216||32|12.731||32|9.146||32|15.674|0.221|0|14.99||32|12.451||32|8.743||32|15.624|0.262|0|14.839||32|12.216||32|8.362||32|15.625|0.316|1|14.714||32|12.01||32|8.099||32|15.585|0.359|1|14.589||32|11.83||32|7.946||32|15.44|0.366|1|14.46||32|11.664||32|7.789||32|15.221|0.345|1|14.354||32|11.511||32|7.589||32|15.648|0.119|0.033|15.766|0.69|0.191|16.397|||||||||||||||||||||||||||||||389862687|0.235|159.4|1|16.122|0.09|15.574|0.11|15.461|0.156|-0.186925464881937|0.705006182856739|0.684123638469277|223003031|
+J065857.31+430957.4|104.7388306|43.165947|0.4834|0.7291|-0.0729|173.5717532|19.4652183|101.4120154|20.3088035|724.028|82.279|1040143901111000501|1040p439_aa11-000501|1040p439_aa11|501|16.017|0.087|12.5|0.86619997|15.922|0.236|4.6|0.823499978|12.575||0.2|1.02900004|9.227|||0.921999991|0.904999971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|9|13|0|13|0|13|0|13|13.395|13.609|13.849|14.0|0.0|0.0|0.0|0.0|0||0||0||0||62.0950012|4.97510004|16.929|4.14|0.0|26.9990005|5.87559986|45.571|4.661|1.156|10.0170002|41.637001|1883.275|23.787|0.0|-13.2589998|16.1469994|737.099|10.132|0.0|15.923|0.283|1|0.222|14.754||32|0.28|12.006||32|0.665|8.612||32|0.616|16.486|0.279|0|15.406||32|13.03||32|9.657||32|16.145|0.283|1|15.034||32|12.671||32|9.228||32|16.023|0.327|1|14.783||32|12.389||32|8.89||32|15.817|0.336|1|14.548||32|12.154||32|8.606||32|15.42|0.281|1|14.315||32|11.953||32|8.354||32|14.99|0.223|1|14.068||32|11.769||32|8.126||32|14.637|0.188|1|13.818||32|11.606||32|7.917||32|14.355|0.167|1|13.575||32|11.453||32|7.724||32|16.06|0.262|0.073|16.026|0.896|0.248|15.881|||||||||||||||||||||||||||||||389856831|0.196|56.6|1|16.752||15.877|0.142|15.982|0.266|-0.185562880776909|0.705375658004148|0.684113732045331|223003031|
+J065906.04+432131.6|104.7751846|43.3587799|0.4107|0.6656|-0.0492|173.3879887|19.5540013|101.417854|20.5033683|659.008|587.689|1040143901111000551|1040p439_aa11-000551|1040p439_aa11|551|15.941|0.072|15.0|1.04100001|15.846|0.196|5.5|1.12899995|12.766|||1.08399999|9.263|||1.06400001|1.07500005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|10|14|0|14|0|14|0|14|13.82|13.853|13.822|13.906|0.0|0.0|0.0|0.0|0||0||0||0||66.6080017|4.43249989|15.927|3.571|0.126|28.941|5.23589993|44.854|4.354|0.0|-11.2659998|39.1310005|1882.762|22.289|2.589|-20.4309998|15.6289997|736.661|10.254|1.396|15.906|0.212|0|0.222|15.093||32|0.28|12.053||32|0.665|8.519||32|0.616|16.486|0.213|0|15.746||32|13.9||32|9.567||32|16.128|0.212|0|15.373||32|12.718||32|9.135||32|15.951|0.234|1|15.161||32|12.366||32|8.602||32|15.729|0.236|1|14.984||32|12.074||32|8.24||32|15.35|0.199|1|14.75||32|11.781||32|7.993||32|14.839|0.148|1|14.425||32|11.543||32|7.758||32|14.354|0.11|1|14.716|0.417|1|11.391||32|7.566||32|13.996|0.091|1|14.369|0.349|1|11.279||32|7.404||32|15.98|0.306|0.082|15.849|0.811|0.217|||||||||||||||||||||||||||||||||||0|||||||-0.185422167462181|0.703027487284865|0.686564615994413|223003031|
+J070005.59+431326.7|105.0232925|43.2240982|0.5011|0.7387|-0.0772|173.5861266|19.6801714|101.6251254|20.3892035|182.637|240.002|1040143901111000576|1040p439_aa11-000576|1040p439_aa11|576|16.189|0.093|11.7|0.762000024|15.771|0.215|5.1|0.996299982|11.617|0.23|4.7|0.800100029|9.101|||0.990400016|0.883700013|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABBU|7|7|11|1|11|1|11|0|11|12.421|12.749|12.316|13.214|0.0|0.0|0.0|0.0|0||0||0||0||53.0019989|4.52540016|16.503|3.516|0.0|31.0279999|6.13749981|45.294|4.446|0.0|225.589996|47.8400002|1882.765|20.829|0.0|-2.59859991|18.132|737.365|11.727|5.144|15.964|0.252|1|0.222|15.29|0.362|1|0.28|11.79|0.381|1|0.665|8.406||32|0.616|16.648|0.274|0|16.159|0.442|0|12.981|0.438|0|9.455||32|16.186|0.252|1|15.57|0.362|1|12.455|0.381|1|9.022||32|15.759|0.221|1|15.163|0.323|1|12.188|0.386|1|8.674||32|15.172|0.16|1|14.752|0.275|1|11.987|0.398|1|8.376||32|14.577|0.111|1|14.325|0.222|1|11.852|0.42|1|8.114||32|14.159|0.089|1|13.988|0.193|1|11.766|0.459|1|7.876||32|13.932|0.084|1|13.784|0.186|1|11.719|0.511|1|7.658||32|13.812|0.087|1|13.675|0.193|1|10.886||32|7.458||32|16.195|0.276|0.083|15.756|0.621|0.187|11.625|0.799|0.241||||||||||||||||||||||||||||||||0|||||||-0.188882551027677|0.703774727902452|0.684853644425659|223003002|
+J065930.23+431657.4|104.8759689|43.2826195|0.4519|0.6956|-0.065|173.4899673|19.5980984|101.5044874|20.4356246|465.194|390.12|1040143901111000601|1040p439_aa11-000601|1040p439_aa11|601|16.005|0.077|14.1|0.968900025|16.826|0.52|2.1|0.87470001|12.668|||0.928200006|8.503||1.2|0.832000017|0.896600008|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ACUU|3|10|12|0|12|0|12|0|12|12.261|12.736|12.427|12.685|0.0|0.0|0.0|0.0|0||0||0||0||62.7809982|4.44040012|15.968|3.448|0.523|11.7399998|5.62319994|45.014|4.505|0.0|-40.401001|42.8180008|1883.106|22.593|0.0|23.6690006|19.618|736.493|10.801|0.0|15.901|0.223|1|0.222|15.29||32|0.28|13.391||32|0.665|8.189||32|0.616|16.554|0.237|1|16.029||32|13.215||32|9.291||32|16.123|0.223|1|15.57||32|14.056||32|8.805||32|15.729|0.201|1|15.17||32|12.367||32|8.562||32|15.236|0.158|1|15.458|0.484|1|12.108||32|10.175||32|14.808|0.128|1|14.95|0.366|1|11.961||32|8.253||32|14.528|0.117|1|14.588|0.31|1|11.849||32|8.017||32|14.372|0.118|1|14.325|0.283|1|11.791||32|7.802||32|14.288|0.126|1|14.159|0.28|1|11.638||32|7.603||32|15.942|0.233|0.067|16.849|1.761|0.508||||9.448|1.931|0.557||||||||||||||||||||||||||389862960|0.152|24.5|1|16.453|0.112|15.73|0.152|15.621|0.184|-0.186892646440861|0.703581646311366|0.685597553729679|223003031|
+J065943.01+431050.0|104.9292374|43.1805611|0.4338|0.6827|-0.0661|173.6058277|19.6011034|101.5575271|20.3384115|360.854|124.002|1040143901111000676|1040p439_aa11-000676|1040p439_aa11|676|16.127|0.077|14.0|0.77670002|15.679|0.17|6.4|0.85619998|12.289||1.1|0.971099973|9.03||0.2|1.01300001|0.899100006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|12|14|2|14|0|14|0|14|13.809|13.883|13.802|13.856|0.0|0.0|0.0|0.0|0||0||0||0||56.151001|4.00430012|15.565|3.232|0.0|33.7449989|5.27729988|44.681|4.386|0.0|43.2700005|39.0839996|1882.561|22.591|0.0|3.95939994|17.3840008|736.959|11.275|2.441|15.994|0.185|1|0.222|15.509|0.369|1|0.28|11.747||32|0.665|8.396||32|0.616|16.632|0.196|0|16.279|0.416|0|12.829||32|9.489||32|16.216|0.185|1|15.789|0.369|1|12.412||32|9.012||32|16.008|0.197|1|15.549|0.383|1|12.127||32|8.705||32|15.809|0.201|1|15.305|0.378|1|11.929||32|8.614||32|15.587|0.198|1|15.07|0.368|1|11.759||32|8.367||32|15.396|0.196|1|14.935|0.384|1|11.587||32|8.145||32|15.253|0.2|1|14.871|0.42|1|11.405||32|7.941||32|15.117|0.202|1|14.807|0.455|1|11.239||32|7.752||32|16.172|0.228|0.061|15.679|0.643|0.172|13.424|4.061|1.085|10.676|8.823|2.358|||||||||||||||||||||||||||||0|||||||-0.187861014230189|0.704586471041056|0.684299747302537|223003002|
+J065909.48+431813.9|104.7895279|43.3038864|0.6237|0.8462|-0.062|173.4466287|19.545722|101.4352735|20.4499282|630.433|444.228|1040143901111000701|1040p439_aa11-000701|1040p439_aa11|701|16.47|0.115|9.5|0.875500023|15.771|0.193|5.6|0.843299985|12.641||0.1|0.960099995|8.963||0.3|1.04200006|0.924799979|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BBUU|3|4|13|0|13|0|12|0|13|13.917|13.761|13.751|13.845|0.0|0.0|0.0|0.0|0||0||0||0||40.9129982|4.31699991|16.189|3.643|0.0|31.0230007|5.5151|45.129|4.372|0.0|2.16499996|42.8129997|1883.189|23.329|0.0|5.39820004|17.8920002|737.211|10.703|0.0|16.341|0.449|0|0.222|15.059||32|0.28|12.074||32|0.665|8.471||32|0.616|16.92|0.445|0|16.419|0.542|0|13.106||32|9.522||32|16.563|0.449|0|15.339||32|12.739||32|9.087||32|16.474|0.538|0|15.258||32|12.455||32|8.741||32|15.628||32|15.227||32|12.225||32|8.444||32|15.551||32|15.156||32|12.02||32|8.181||32|15.443||32|15.421||32|11.839||32|7.943||32|15.293||32|14.989||32|11.672||32|7.726||32|15.151||32|14.838||32|11.519||32|10.855||32|16.467|0.496|0.138|15.735|0.6|0.166|15.566|||10.95|||||||||||||||||||||||||||||||0|||||||-0.185765981308066|0.703616710731939|0.68586771652223|223003031|
+J065949.75+432359.7|104.9573135|43.3999329|0.6548|0.8913|-0.1327|173.3929875|19.6925459|101.553577|20.558702|313.518|698.866|1040143901111000726|1040p439_aa11-000726|1040p439_aa11|726|16.462|0.111|9.7|0.903100014|16.183||1.7|0.810800016|12.689|||0.927699983|8.761||0.7|1.03400004|0.913500011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BUUU|1|6|12|0|12|0|12|0|12|11.861|11.775|11.817|11.854|0.0|0.0|0.0|0.0|0||0||0||0||41.2099991|4.22800016|16.125|3.53|0.0|9.90229988|5.66410017|44.93|4.572|0.0|-2.6322999|41.9949989|1882.993|22.692|0.0|13.4300003|18.1019993|737.485|11.552|0.0|15.905|0.253|1|0.222|15.085||32|0.28|11.863||32|0.665|7.957||32|0.616|16.706|0.308|1|15.822||32|12.974||32|9.21||32|16.127|0.253|1|15.365||32|12.528||32|8.573||32|15.769|0.236|1|15.072||32|12.246||32|8.194||32|15.488|0.226|1|14.855||32|12.084||32|7.939||32|15.214|0.212|1|14.66||32|11.981||32|7.717||32|14.988|0.203|1|14.471||32|11.965||32|7.534||32|14.841|0.206|1|14.299||32|11.8||32|7.39||32|14.737|0.215|1|14.16||32|11.648||32|7.262||32|16.434|0.306|0.088|16.925|1.885|0.544||||9.513|1.61|0.465|||||||||||||||||||||||||||||0|||||||-0.187528650217752|0.701957924048084|0.687086659900782|223003002|
+J065907.43+432639.6|104.7809906|43.4443359|0.5589|0.7757|-0.095|173.303747|19.5862068|101.4124321|20.5888776|649.932|811.775|1040143901111000751|1040p439_aa11-000751|1040p439_aa11|751|16.333|0.095|11.5|0.750699997|16.26|0.309|3.5|0.997699976|12.501||0.3|0.946399987|8.606||1.0|0.861000001|0.884899974|1|0|0.0|0.0|0.0|0.0|0000|000h|0|0000|ABUU|3|9|12|0|12|0|12|0|12|11.648|11.553|11.613|11.721|0.0|0.0|0.0|0.0|0||0||0||8|h|46.4230003|4.04419994|15.853|3.108|0.0|19.7670002|5.62949991|44.709|4.155|0.0|13.0179996|43.4339981|1881.867|22.449|0.0|19.0499992|19.0900002|736.64|10.904|1.453|15.836|0.2|1|0.222|15.806|0.459|1|0.28|11.981|0.442|1|0.665|7.698||32|0.616|16.679|0.253|1|15.933||32|12.63||32|8.822||32|16.058|0.2|1|16.086|0.459|1|12.646|0.442|1|8.314||32|15.565|0.164|1|15.57|0.368|1|12.114|0.348|1|8.02||32|15.208|0.146|1|15.151|0.31|1|11.823|0.33|1|7.819||32|14.975|0.142|1|14.882|0.291|1|11.687|0.351|1|7.706||32|14.796|0.142|1|14.724|0.297|1|11.671|0.407|1|7.656||32|14.66|0.146|1|14.667|0.327|1|11.745|0.506|1|7.616||32|14.595|0.158|1|14.711|0.392|1|11.001||32|7.49||32|16.263|0.229|0.066|16.232|1.342|0.387|14.636|||10.074|3.503|1.011||||||||||||||||||||||||||389856196|1.017|-26.8|1|16.61|0.129|16.407||15.696||-0.185231645743146|0.70201663506788|0.687649533922083|223003031|
+J070016.88+431051.9|105.0703583|43.1810989|0.6058|0.8157|-0.1133|173.641228|19.6984598|101.6665518|20.350245|91.484|128.523|1040143901111000776|1040p439_aa11-000776|1040p439_aa11|776|16.399|0.104|10.4|0.760399997|16.144|0.279|3.9|0.736999989|12.189||1.1|1.11699998|9.163|||0.763700008|0.840699971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|7|12|0|12|0|12|0|12|12.863|12.607|12.551|12.65|0.0|0.0|0.0|0.0|0||0||0||0||43.6940002|4.19089985|15.967|3.259|0.0|21.9920006|5.64359999|44.986|4.191|0.0|48.6010017|42.2739983|1883.059|22.656|0.0|-16.0610008|17.1310005|736.882|10.736|0.0|16.378|0.373|1|0.222|15.691|0.435|1|0.28|11.891||32|0.665|8.504||32|0.616|16.963|0.379|0|16.541|0.533|0|12.88||32|9.556||32|16.6|0.373|1|15.971|0.435|1|12.556||32|9.12||32|16.453|0.419|1|15.678|0.429|1|12.408||32|8.771||32|16.355|0.475|1|15.484|0.444|1|12.359||32|8.479||32|16.288|0.537|1|15.377|0.484|1|12.156||32|8.215||32|15.406||32|14.59||32|11.968||32|7.979||32|15.239||32|14.486||32|11.804||32|7.763||32|15.74|0.514|1|14.365||32|11.651||32|7.563||32|16.412|0.296|0.085|16.149|0.911|0.263|13.333|3.65|1.054|||||||||||||||||||||||||||||389883259|1.489|-35.6|1|16.743|0.15|16.412|0.233|15.89||-0.189594186235284|0.70411542585368|0.684306591829036|223003002|
+J065927.29+430955.0|104.863739|43.1652946|0.5749|0.7999|-0.0571|173.6043943|19.5509739|101.5086661|20.318027|485.499|82.744|1040143901111000851|1040p439_aa11-000851|1040p439_aa11|851|16.353|0.1|10.9|0.830200016|16.818|0.506|2.1|0.896799982|12.721|||0.869499981|8.794||0.8|0.82980001|0.851899981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ACUU|3|7|13|0|13|0|13|0|13|12.87|13.283|12.873|13.09|0.0|0.0|0.0|0.0|0||0||0||0||45.5660019|4.18909979|15.408|3.264|0.694|11.8280001|5.50950003|45.111|4.367|0.0|-35.9049988|40.7970009|1883.842|23.616|0.0|13.3620005|17.3829994|737.008|10.645|0.0|16.188|0.261|0|0.222|15.445||32|0.28|11.91||32|0.665|8.538||32|0.616|16.863|0.282|0|16.141||32|12.942||32|9.511||32|16.41|0.261|0|15.725||32|12.575||32|9.154||32|16.122|0.259|0|15.47||32|12.291||32|8.809||32|15.824|0.245|1|15.212||32|12.057||32|8.517||32|15.384|0.196|1|14.817||32|11.86||32|11.153||32|14.723|0.126|1|14.783|0.316|1|11.68||32|7.916||32|14.057|0.08|1|14.088|0.195|1|11.513||32|7.675||32|13.593|0.06|1|13.612|0.144|1|11.364||32|7.465||32|16.358|0.452|0.125|16.878|1.087|0.301||||9.45|1.797|0.498|||||||||||||||||||||||||||||0|||||||-0.187102200067289|0.704976972354511|0.684105426948104|223003031|
+J065933.77+432249.8|104.8907166|43.3805084|0.7296|0.939|-0.2014|173.395588|19.6404553|101.5044735|20.5340996|439.679|646.672|1040143901111000876|1040p439_aa11-000876|1040p439_aa11|876|16.616|0.128|8.5|0.958100021|16.372|0.367|3.0|0.858399987|12.614|||0.922699988|8.851|0.454|2.4|1.10800004|0.956200004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BCUC|11|3|11|0|11|0|11|1|11|12.18|12.547|11.139|12.12|0.0|0.0|0.0|0.0|0||0||0||0||35.7739983|4.22910023|16.15|3.244|0.0|17.8330002|6.02729988|45.199|4.098|0.243|-56.5390015|45.007|1882.435|22.695|0.0|45.6870003|19.1159992|737.128|10.849|4.195|16.135|0.255|1|0.222|15.23||32|0.28|12.013||32|0.665|8.199||32|0.616|16.933|0.307|1|16.03||32|13.049||32|9.19||32|16.357|0.255|1|15.51||32|12.678||32|8.815||32|16.041|0.245|1|15.192||32|12.407||32|8.573||32|15.808|0.245|1|15.012||32|12.176||32|8.422||32|15.623|0.25|1|14.891||32|11.974||32|8.284||32|15.522|0.269|1|14.765||32|11.798||32|7.875||32|15.474|0.3|1|14.628||32|11.636||32|7.613||32|15.413|0.326|1|14.476||32|11.485||32|7.372||32|16.531|0.259|0.078|16.379|1.241|0.374||||9.531|1.605|0.484|||||||||||||||||||||||||||||0|||||||-0.18677246190797|0.702400495186993|0.686840295726672|223003031|
+J065924.95+431244.8|104.8539734|43.2124481|0.7279|0.9539|-0.0808|173.5546667|19.5598261|101.4956466|20.364126|505.335|206.003|1040143901111000901|1040p439_aa11-000901|1040p439_aa11|901|16.696|0.132|8.2|0.738099992|16.296||1.8|0.989700019|11.933|0.262|4.1|1.01900005|8.842||1.0|0.930000007|0.914699972|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BUBU|5|4|14|0|14|0|14|0|14|13.806|13.921|13.725|13.819|0.0|0.0|0.0|0.0|0||0||0||0||33.25|4.03719997|16.084|3.496|0.0|9.04059982|5.03910017|44.876|4.33|0.0|168.649994|40.7220001|1881.779|21.604|0.0|14.9200001|15.5559998|736.83|10.569|1.2|16.563|0.523|0|0.222|15.622||32|0.28|11.854|0.403|0|0.665|8.365||32|0.616|17.138|0.513|0|16.008||32|13.154|0.512|0|9.427||32|16.785|0.523|0|15.902||32|12.519|0.403|0|8.981||32|15.905||32|15.505||32|12.185|0.384|0|8.7||32|15.823||32|15.272||32|11.996|0.4|1|8.467||32|15.716||32|15.076||32|11.845|0.417|1|8.207||32|15.532||32|14.892||32|11.728|0.444|1|7.971||32|15.341||32|14.73||32|11.575|0.449|1|7.754||32|15.233||32|14.576||32|11.395|0.439|1|7.554||32|16.656|0.471|0.126|16.814|1.123|0.3|11.986|1.06|0.283|10.391|4.125|1.103|||||||||||||||||||||||||||||0|||||||-0.186837645817897|0.704464420177401|0.684705465736432|223003031|
+J065942.30+432358.5|104.9262695|43.3995934|0.8566|1.051|-0.1744|173.3854643|19.6711285|101.5296718|20.5558939|372.568|697.342|1040143901111000926|1040p439_aa11-000926|1040p439_aa11|926|16.744|0.144|7.5|0.975000024|16.802|||0.9472|12.604|||0.996999979|8.97|||1.028|0.980700016|1|0|0.0|0.0|0.0|0.008|0000|0000|0|0000|BUUU|1|3|11|0|11|0|11|0|11|10.96|10.851|10.914|10.788|0.0|0.0|0.0|0.0|0||0||0||0||31.7919998|4.21600008|16.349|3.552|0.0|-12.151|5.9994998|45.174|4.371|0.0|-11.4189997|45.4210014|1882.799|21.482|0.0|-6.62589979|20.4580002|737.309|10.55|0.0|15.76||32|0.222|15.73||32|0.28|12.095||32|0.665|8.43||32|0.616|16.344||32|16.371||32|13.12||32|9.478||32|15.982||32|16.01||32|12.76||32|9.046||32|15.758||32|15.728||32|12.478||32|8.706||32|15.585||32|15.494||32|12.244||32|8.416||32|15.453||32|15.291||32|12.04||32|8.159||32|15.375||32|15.111||32|11.86||32|7.925||32|15.296||32|14.948||32|11.696||32|7.712||32|15.212||32|14.797||32|11.544||32|7.514||32|16.776|0.514|0.155||||||||||||||||||||||||||||||||||||||0|||||||-0.187149336513046|0.702063361656272|0.68708235464362|223003031|
+J070010.40+431926.8|105.043335|43.3241386|0.8183|0.9999|-0.1655|173.4908304|19.7267757|101.6288484|20.4902423|147.537|502.339|1040143901111000976|1040p439_aa11-000976|1040p439_aa11|976|16.708|0.133|8.2|0.832599998|16.349||1.3|0.95660001|12.199||1.0|0.897099972|8.969||0.3|0.961499989|0.907100022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BUUU|1|2|12|0|12|0|12|0|12|11.839|11.849|11.788|11.819|0.0|0.0|0.0|0.0|0||0||0||0||32.8650017|4.03100014|15.877|3.302|0.0|7.08230019|5.56850004|44.655|4.296|0.0|45.2099991|43.3479996|1883.166|22.53|0.0|4.69110012|18.1340008|736.972|11.052|0.0|16.644|0.329|1|0.222|16.045||32|0.28|12.108||32|0.665|7.958||32|0.616|17.248|0.337|0|16.494||32|13.055||32|9.252||32|16.866|0.329|1|16.325||32|12.773||32|8.574||32|16.728|0.376|1|16.039||32|12.486||32|8.082||32|16.58|0.405|1|15.805||32|12.255||32|7.805||32|16.286|0.373|1|15.597||32|12.048||32|7.638||32|15.941|0.321|1|15.413||32|11.866||32|7.535||32|15.622|0.278|1|15.248||32|11.701||32|7.426||32|15.252|0.228|1|15.094||32|11.548||32|7.291||32|16.698|0.288|0.083|17.585|4.71|1.36|13.371|2.954|0.853|10.881|6.684|1.93|||||||||||||||||||||||||||||0|||||||-0.188818073464292|0.702552741760222|0.686124901295987|223003002|
+J065952.23+431411.9|104.9676285|43.2366486|0.8851|1.0643|-0.1825|173.5593838|19.6459927|101.5806477|20.3972246|289.187|271.627|1040143901111001051|1040p439_aa11-001051|1040p439_aa11|1051|16.861|0.147|7.4|0.853999972|16.245||1.8|1.01999998|12.245||1.0|0.875199974|8.914||0.2|1.01199996|0.935699999|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BUUU|1|3|13|0|13|0|12|0|13|13.845|13.687|13.923|13.823|0.0|0.0|0.0|0.0|0||0||0||0||28.5470009|3.8599999|15.985|3.568|0.0|9.56019974|5.24669981|45.029|4.643|0.0|42.9239998|41.7470016|1883.939|22.435|0.0|4.35179996|19.3759995|737.091|11.626|0.0|16.331||32|0.222|15.586||32|0.28|11.642||32|0.665|8.408||32|0.616|17.587|0.519|0|16.276||32|12.812||32|9.497||32|16.553||32|15.866||32|12.307||32|9.024||32|16.347||32|15.632||32|11.997||32|8.577||32|16.169||32|15.477||32|11.835||32|8.143||32|16.048||32|15.401||32|11.758||32|7.776||32|15.99||32|15.365||32|11.721||32|7.541||32|16.02||32|17.566||32|11.683||32|7.424||32|16.057||32|15.765||32|11.751||32|7.331||32|16.887|0.614|0.17|17.111|2.421|0.672|12.806|2.006|0.579|10.855|||||||||||||||||||||||||||||||0|||||||-0.188159981518349|0.703812957431529|0.685013242431487|223003002|
+J065819.98+431117.5|104.5832672|43.1881981|0.0774|0.5053|-0.0041|173.5095339|19.3656138|101.2892004|20.3187474|1021.451|138.311|1040143901111001101|1040p439_aa11-001101|1040p439_aa11|1101|10.713|0.025|42.6|1.05799997|10.744|0.021|52.1|0.974799991|10.662|0.081|13.3|0.829999983|9.202|||1.11000001|0.987999976|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1100|AAAU|7|15|15|15|15|9|15|0|15|14.905|14.858|14.596|14.897|0.0|0.0|0.0|0.0|0||0||0||0||8219.2002|193.029999|16.583|3.488|0.0|3179.0|61.0320015|45.15|4.304|0.0|543.619995|40.7669983|1883.502|22.205|0.0|-5.37109995|16.5259991|736.504|12.031|5.876|10.695|0.007|0|0.222|10.746|0.008|0|0.28|10.685|0.154|0|0.665|8.62||32|0.616|11.277|0.007|0|11.457|0.009|0|11.927|0.186|0|9.665||32|10.917|0.007|0|11.026|0.008|0|11.35|0.154|0|9.236||32|10.791|0.008|0|10.865|0.008|0|11.045|0.151|0|8.898||32|10.741|0.008|0|10.802|0.009|0|10.907|0.164|0|8.611||32|10.718|0.009|1|10.773|0.01|1|10.839|0.186|1|8.357||32|10.703|0.01|1|10.756|0.011|1|10.789|0.21|1|8.128||32|10.69|0.011|1|10.743|0.013|1|10.761|0.239|1|7.919||32|10.669|0.013|1|10.724|0.014|1|10.767|0.276|1|7.726||32|10.709|0.03|0.008|10.745|0.019|0.005|10.664|0.225|0.058|||||||||||||||||||||||||||||389836185|0.106|-90.2|1|11.444|0.023|10.857|0.021|10.77|0.019|-0.183580130003317|0.705619705306785|0.684396936982283|223003031|
+J065748.01+432558.5|104.450058|43.4329262|0.0899|0.508|-0.0105|173.23073|19.3557027|101.15856|20.5517725|1278.833|777.561|1040143901111001126|1040p439_aa11-001126|1040p439_aa11|1126|12.493|0.025|44.2|1.77600002|12.581|0.026|41.1|1.07099998|12.39|0.386|2.8|0.750999987|9.15||0.0|0.992999971|1.13699996|2|0|0.0|0.0|0.0|0.0|0000|0000|0|1100|AACU|7|14|14|14|14|0|14|0|14|14.068|14.742|14.595|14.283|0.0|0.0|0.0|0.0|0||0||0||0||1595.80005|36.105999|15.85|3.174|0.0|585.650024|14.2580004|45.177|4.444|0.0|110.690002|39.3520012|1882.412|22.178|0.0|0.592800021|17.0419998|736.908|9.925|1.251|12.48|0.01|0|0.222|12.566|0.025|0|0.28|11.857||32|0.665|8.602||32|0.616|13.093|0.01|0|13.302|0.027|0|12.869||32|9.647||32|12.702|0.01|0|12.846|0.025|0|12.522||32|9.218||32|12.541|0.01|1|12.655|0.027|1|12.384||32|8.875||32|12.432|0.011|1|12.54|0.029|1|12.441||32|8.581||32|12.28|0.011|1|12.385|0.031|1|12.22||32|8.323||32|12.012|0.011|1|12.121|0.028|1|12.039||32|8.088||32|11.636|0.009|1|11.761|0.024|1|11.72||32|7.873||32|11.293|0.008|1|11.421|0.02|1|11.344||32|7.674||32|12.501|0.03|0.008|12.592|0.045|0.012|12.191|0.706|0.189|10.984||||||||||||||||||||||||||||389829786|0.315|-24.0|1|13.348|0.025|12.734|0.022|12.619|0.021|-0.181207993297128|0.703207382498296|0.687504938429626|223003031|
+J065740.21+432307.2|104.4175644|43.3853607|0.0989|0.5112|-0.0093|173.2699207|19.3175952|101.1388731|20.5019752|1340.051|652.743|1040143901111001151|1040p439_aa11-001151|1040p439_aa11|1151|13.18|0.028|39.4|1.88|13.142|0.031|35.5|1.13399994|12.082||1.8|0.946500003|8.603||1.5|1.01400006|1.23599994|1|0|0.0|0.0|0.0|0.0|0000|00O0|0|1100|AAUU|3|15|15|15|15|0|15|0|15|14.838|14.845|14.69|14.997|0.0|0.0|0.0|0.0|0||0||272|O|0||846.909973|21.4769993|16.205|3.192|0.0|349.179993|9.84220028|44.807|4.514|0.0|68.6309967|39.1899986|1885.31|22.468|5.121|24.5230007|16.4360008|737.57|11.286|0.0|13.205|0.022|0|0.222|13.165|0.042|0|0.28|11.558||32|0.665|8.388||32|0.616|13.792|0.023|0|13.891|0.046|0|12.585||32|9.323||32|13.427|0.022|0|13.445|0.042|0|12.223||32|9.004||32|13.299|0.025|0|13.264|0.046|0|12.042||32|8.798||32|13.245|0.03|0|13.183|0.053|0|12.567||32|8.574||32|13.213|0.034|1|13.141|0.061|1|11.744||32|8.312||32|13.19|0.04|1|13.118|0.07|1|11.559||32|8.075||32|13.158|0.045|1|13.095|0.08|1|11.397||32|7.859||32|13.112|0.049|1|13.069|0.089|1|11.244||32|7.659||32|13.181|0.03|0.008|13.154|0.066|0.017|12.994|2.54|0.656|9.465|2.65|0.684||||||||||||||||||||||||||389829884|0.374|5.5|1|13.695|0.025|13.281|0.025|13.244|0.03|-0.180951207669276|0.703862568175476|0.686901845655152|223003031|
+J065738.35+432405.5|104.4098282|43.4015465|0.1105|0.5128|-0.0066|173.2517646|19.3176942|101.1310779|20.517476|1354.953|695.055|1040143901111001176|1040p439_aa11-001176|1040p439_aa11|1176|13.46|0.027|40.1|0.9903|13.501|0.038|28.9|0.853299975|12.562|0.452|2.4|0.997900009|8.725||0.9|1.03600001|0.96420002|2|0|0.0|0.0|0.0|0.0|0000|00Oh|0|1100|AACU|7|14|14|14|14|1|14|0|14|13.856|13.796|13.645|14.38|0.0|0.0|0.0|0.0|0||0||272|O|8|h|654.859985|16.3430004|15.915|3.215|0.0|250.990005|8.67819977|44.595|4.518|0.646|94.4540024|39.3069992|1883.743|22.453|0.0|16.2709999|17.5189991|737.054|10.824|1.448|13.355|0.016|1|0.222|13.356|0.041|1|0.28|11.623|0.473|1|0.665|8.578|0.528|1|0.616|14.013|0.018|1|14.157|0.049|1|12.17||32|9.004||32|13.577|0.016|1|13.636|0.041|1|12.288|0.473|1|9.194|0.528|1|13.335|0.017|1|13.349|0.041|1|11.654|0.341|1|8.807|0.503|1|13.161|0.017|1|13.149|0.041|1|11.165|0.269|1|8.594|0.535|1|13.044|0.018|1|13.007|0.044|1|10.826|0.237|1|7.687||32|12.958|0.02|1|12.907|0.047|1|10.594|0.226|1|7.59||32|12.854|0.021|1|12.804|0.049|1|10.445|0.229|1|7.572||32|12.704|0.021|1|12.664|0.05|1|10.357|0.242|1|7.544||32|13.46|0.037|0.01|13.5|0.099|0.026|13.033|2.024|0.541|10.051|3.691|0.986||||||||||||||||||||||||||389829852|0.078|25.5|1|14.316|0.023|13.708|0.032|13.598|0.041|-0.180807872072191|0.703699024030807|0.687107121906632|223003031|
+J065807.06+432521.3|104.5294571|43.4226074|0.126|0.5164|-0.0215|173.2613765|19.4066508|101.2209639|20.5476412|1127.721|751.354|1040143901111001201|1040p439_aa11-001201|1040p439_aa11|1201|13.764|0.03|36.2|0.810800016|13.751|0.042|25.9|1.00300002|12.519||0.5|0.913900018|8.718||1.4|1.06799996|0.944800019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1200|AAUU|3|14|14|14|14|0|14|0|14|13.919|14.424|13.95|14.133|0.0|0.0|0.0|0.0|0||0||0||0||494.910004|13.6730003|15.725|3.06|0.0|199.259995|7.67939997|44.597|4.464|0.0|19.7660007|39.2490005|1882.211|21.791|0.0|21.6369991|14.9949999|736.699|9.518|0.0|13.791|0.023|0|0.222|13.743|0.072|0|0.28|12.082||32|0.665|8.86||32|0.616|14.377|0.024|0|14.474|0.078|0|13.165||32|9.413||32|14.013|0.023|0|14.023|0.072|0|12.747||32|9.476||32|13.886|0.026|0|13.847|0.078|0|12.386||32|8.802||32|13.839|0.03|0|13.793|0.092|0|12.037||32|8.508||32|13.821|0.035|0|13.802|0.112|0|11.761||32|8.247||32|13.814|0.041|0|13.828|0.135|0|11.581||32|8.012||32|13.808|0.048|1|13.835|0.159|1|11.435||32|7.795||32|13.802|0.054|1|13.834|0.182|1|11.311||32|7.596||32|13.761|0.046|0.012|13.749|0.161|0.043|14.117|5.277|1.41|9.774|3.396|0.907||||||||||||||||||||||||||389836744|0.096|-170.5|1|14.363|0.026|13.912|0.026|13.821|0.037|-0.18221336682962|0.703075440093915|0.687374144469635|223003031|
+J065744.83+432515.2|104.4367981|43.4208984|0.1353|0.5192|-0.0165|173.2393506|19.3426165|101.1496947|20.5387921|1303.893|745.948|1040143901111001226|1040p439_aa11-001226|1040p439_aa11|1226|13.997|0.03|35.8|0.917200029|13.959|0.051|21.3|0.92839998|12.169||1.4|0.995999992|8.749||0.8|1.00899994|0.958000004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1100|AAUU|3|13|13|13|13|0|13|0|13|14.833|14.797|14.899|14.911|0.0|0.0|0.0|0.0|0||0||0||0||399.220001|11.1560001|16.235|3.763|0.0|164.550003|7.70739985|45.215|4.703|0.0|55.5359993|40.0800018|1882.879|22.589|1.301|14.4940004|17.8320007|737.217|10.022|4.18|13.985|0.03|0|0.222|13.912|0.083|0|0.28|11.743||32|0.665|8.63||32|0.616|14.585|0.031|0|14.635|0.091|0|12.848||32|9.666||32|14.207|0.03|0|14.192|0.083|0|12.408||32|9.246||32|14.074|0.034|0|14.029|0.092|0|12.156||32|8.913||32|14.023|0.04|0|13.964|0.107|0|12.107||32|8.635||32|14.0|0.047|0|13.918|0.123|0|12.133||32|8.387||32|13.99|0.054|0|13.874|0.14|0|11.951||32|8.076||32|13.98|0.063|0|13.839|0.158|0|11.784||32|7.776||32|13.96|0.071|1|13.829|0.179|1|11.633||32|7.535||32|13.997|0.07|0.019|13.96|0.133|0.037|13.143|3.089|0.857|9.602|2.625|0.728||||||||||||||||||||||||||389829815|0.332|161.2|1|14.762|0.035|14.296|0.043|14.147|0.056|-0.181081223696359|0.703389051921835|0.687352480217488|223003031|
+J065818.78+431732.5|104.5782623|43.292366|0.1506|0.5287|0.0128|173.4041138|19.3968342|101.2734641|20.4219298|1032.744|410.951|1040143901111001251|1040p439_aa11-001251|1040p439_aa11|1251|14.243|0.035|30.9|1.40400004|14.334|0.059|18.5|1.04100001|12.093||1.9|0.903699994|8.9||0.9|0.847500026|1.04200006|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|AAUU|3|15|15|13|15|0|15|0|15|14.901|14.833|14.824|14.793|0.0|0.0|0.0|0.0|0||0||0||0||318.269989|10.309|16.081|3.439|0.0|116.489998|6.28130007|45.001|4.437|0.0|70.1610031|37.6619987|1882.635|23.589|0.0|13.1350002|15.2650003|736.841|10.83|2.782|14.234|0.065|1|0.222|14.349|0.151|1|0.28|11.714||32|0.665|8.526||32|0.616|14.808|0.065|0|15.061|0.162|0|12.843||32|10.374||32|14.456|0.065|1|14.629|0.151|1|12.379||32|9.142||32|14.341|0.075|1|14.499|0.174|1|12.028||32|8.569||32|14.3|0.09|1|14.489|0.214|1|11.726||32|8.096||32|14.256|0.103|1|14.507|0.26|1|11.447||32|7.81||32|14.179|0.114|1|14.505|0.308|1|11.841|0.478|1|7.606||32|14.063|0.119|1|14.416|0.329|1|11.466|0.393|1|7.399||32|13.928|0.121|1|14.221|0.317|1|11.141|0.336|1|7.226||32|14.243|0.087|0.022|14.333|0.231|0.06|12.807|1.798|0.464|9.819|2.848|0.735||||||||||||||||||||||||||389836451|0.775|-6.1|1|14.855|0.038|14.386|0.045|14.207|0.057|-0.183205000010475|0.704430349727535|0.685721379536838|223003031|
+J065830.67+431730.3|104.6277924|43.2917595|0.1741|0.5348|-0.0197|173.4174192|19.4306364|101.311782|20.4251848|938.348|410.004|1040143901111001301|1040p439_aa11-001301|1040p439_aa11|1301|14.624|0.037|29.4|0.818899989|14.613|0.075|14.5|0.994599998|12.236||1.0|0.870100021|9.229|||1.02100003|0.921400011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1100|AAUU|3|12|12|12|12|0|12|0|12|12.684|12.889|12.455|12.787|0.0|0.0|0.0|0.0|0||0||0||0||224.139999|7.63360023|15.86|3.232|1.248|90.0899963|6.2020998|44.666|4.344|1.07|41.7659988|42.8899994|1882.059|22.07|0.0|-0.135609999|16.1140003|737.271|10.25|0.128|14.594|0.073|0|0.222|14.703|0.176|0|0.28|11.667||32|0.665|8.451||32|0.616|15.199|0.074|0|15.377|0.18|0|12.827||32|10.205||32|14.816|0.073|0|14.983|0.176|0|12.332||32|9.067||32|14.674|0.083|1|14.845|0.2|1|11.978||32|8.665||32|14.606|0.096|1|14.752|0.228|1|11.748||32|8.292||32|14.538|0.108|1|14.666|0.252|1|11.582||32|8.021||32|14.449|0.118|1|14.588|0.278|1|11.445||32|7.841||32|14.353|0.125|1|14.523|0.304|1|11.347||32|7.707||32|14.258|0.132|1|14.493|0.341|1|11.265||32|7.602||32|14.624|0.064|0.019|14.666|0.146|0.042|13.437|2.438|0.704|10.841|5.013|1.447||||||||||||||||||||||||||389836450|0.165|173.1|1|15.118|0.042|14.898|0.061|14.649|0.079|-0.183815718761931|0.704278735869215|0.685713674749524|223003031|
+J065708.27+431906.9|104.2844696|43.3185921|0.1927|0.547|-0.0368|173.3022966|19.20406|101.0436477|20.4253927|1592.801|477.003|1040143901111001351|1040p439_aa11-001351|1040p439_aa11|1351|14.929|0.04|27.4|1.37199998|14.965|0.102|10.6|0.95450002|12.551||0.4|0.934099972|9.176||0.0|0.870599985|1.028|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|AAUU|3|13|13|6|13|0|13|0|13|14.446|14.912|14.623|14.358|0.0|0.0|0.0|0.0|0||0||0||0||169.130005|6.16200018|16.383|3.71|0.0|65.1660004|6.15019989|44.953|4.797|0.0|16.0100002|39.6819992|1882.369|22.311|0.0|0.299080014|16.7709999|736.824|10.949|5.668|14.745|0.097|1|0.222|14.744|0.233|1|0.28|12.227||32|0.665|8.613||32|0.616|15.437|0.108|1|15.59|0.285|1|13.162||32|9.66||32|14.967|0.097|1|15.024|0.233|1|12.892||32|9.229||32|14.696|0.097|1|14.679|0.22|1|12.607||32|8.888||32|14.52|0.102|1|14.425|0.215|1|12.375||32|8.599||32|14.405|0.111|1|14.239|0.219|1|12.169||32|8.341||32|14.325|0.122|1|14.101|0.228|1|11.986||32|8.108||32|14.259|0.133|1|13.992|0.24|1|11.822||32|7.894||32|14.188|0.143|1|13.891|0.251|1|12.113||32|7.696||32|14.93|0.07|0.02|14.918|0.392|0.109|13.073|1.971|0.547|12.859||||||||||||||||||||||||||||389809591|1.099|3.3|1|15.456|0.052|15.029|0.066|15.061|0.103|-0.179513071576691|0.705056249886058|0.686054474243635|223003021|
+J065729.81+432433.2|104.3742371|43.4092484|0.2304|0.5631|-0.0325|173.2349291|19.2958889|101.1027549|20.5224052|1422.745|714.928|1040143901111001401|1040p439_aa11-001401|1040p439_aa11|1401|15.191|0.044|24.7|1.02999997|15.521|0.154|7.1|0.934099972|12.649||0.0|0.791499972|8.498||1.6|0.779799998|0.882700026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|ABUU|3|13|13|3|13|0|13|0|13|12.764|13.382|11.842|13.013|0.0|0.0|0.0|0.0|0||0||0||0||132.910004|5.38360023|16.12|3.494|0.0|39.0379982|5.53719997|44.726|4.259|1.254|0.0283640008|43.5769997|1882.218|22.618|0.0|27.809|17.7010002|735.997|11.329|4.117|15.116|0.1|1|0.222|15.29||32|0.28|11.96||32|0.665|7.789||32|0.616|15.73|0.104|1|16.461|0.45|1|12.985||32|8.996||32|15.338|0.1|1|15.57||32|12.625||32|8.405||32|15.166|0.11|1|15.569||32|12.352||32|8.011||32|15.074|0.126|1|15.67||32|12.12||32|7.742||32|15.032|0.145|1|15.592||32|11.927||32|7.542||32|15.006|0.168|1|15.407||32|11.748||32|7.347||32|14.942|0.184|1|15.245||32|11.59||32|7.17||32|14.818|0.189|1|16.084||32|11.441||32|7.043||32|15.189|0.121|0.033|15.681|0.747|0.207||||9.933|1.63|0.452||||||||||||||||||||||||||389829836|0.781|-10.0|1|15.708|0.066|15.331|0.084|15.109|0.127|-0.180347780901092|0.70372172456346|0.687204781925651|223003031|
+J065800.21+431423.3|104.5009155|43.2398109|0.2581|0.583|-0.0348|173.4367616|19.326226|101.2196913|20.3636733|1179.385|272.486|1040143901111001426|1040p439_aa11-001426|1040p439_aa11|1426|15.304|0.05|21.6|1.17799997|15.475|0.151|7.2|0.938000023|12.259||1.3|0.823199987|9.152|||0.863600016|0.94599998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|13|14|2|14|0|14|0|14|14.122|14.602|14.195|14.292|0.0|0.0|0.0|0.0|0||0||0||0||119.769997|5.54799986|16.464|3.59|0.0|40.7519989|5.6722002|45.057|4.974|0.699|48.6269989|38.1230011|1883.413|23.124|0.0|-20.0669994|17.2980003|736.466|10.682|0.0|15.2|0.199|0|0.222|14.742||32|0.28|11.734||32|0.665|8.492||32|0.616|15.806|0.203|0|15.368||32|12.89||32|9.55||32|15.422|0.199|0|15.022||32|12.399||32|9.108||32|15.283|0.225|1|14.864||32|12.001||32|8.765||32|15.178|0.254|1|14.734||32|11.698||32|8.473||32|14.996|0.259|1|14.59||32|11.493||32|8.212||32|14.754|0.245|1|14.481||32|11.355||32|7.977||32|14.561|0.239|1|14.437||32|11.276||32|7.762||32|14.472|0.253|1|14.398||32|11.273||32|7.562||32|15.256|0.147|0.039|15.469|0.653|0.175|13.316|2.713|0.725||||||||||||||||||||||||||||||||0|||||||-0.182411301329658|0.70528567731668|0.685053450848306|223003031|
+J065716.27+432541.6|104.3178253|43.4282379|0.2442|0.5688|-0.0262|173.2014654|19.2636121|101.0571104|20.5369768|1530.203|764.258|1040143901111001451|1040p439_aa11-001451|1040p439_aa11|1451|15.363|0.048|22.4|1.12399995|15.142|0.108|10.0|0.936600029|12.774|||0.909600019|8.955||0.4|1.00899994|0.989899993|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2000|AAUU|3|14|14|5|14|0|14|0|14|14.69|14.793|14.895|14.965|0.0|0.0|0.0|0.0|0||0||0||0||113.400002|5.05649996|15.962|3.323|1.208|55.3619995|5.52330017|44.805|4.28|0.267|-21.198|38.8540001|1881.737|22.793|0.259|7.50290012|17.0030003|736.982|10.936|2.727|15.374|0.12|1|0.222|15.273|0.298|1|0.28|13.498||32|0.665|8.301||32|0.616|15.974|0.121|1|15.909|0.294|1|13.056||32|9.512||32|15.596|0.12|1|15.553|0.298|1|14.163||32|8.917||32|15.444|0.135|1|15.496|0.365|1|12.27||32|8.519||32|15.396|0.16|1|15.592|0.496|1|11.944||32|8.288||32|15.412|0.196|1|14.89||32|11.663||32|8.077||32|15.397|0.228|1|14.933||32|11.437||32|7.885||32|15.322|0.248|1|14.998||32|11.211||32|7.702||32|15.254|0.268|1|14.988||32|10.954||32|7.503||32|15.364|0.192|0.051|15.141|0.41|0.11||||11.064|7.381|1.973||||||||||||||||||||||||||389829799|0.865|-145.5|1|16.331|0.098|15.801|0.131|15.366|0.139|-0.179598494171112|0.703678224787879|0.687445515550758|223003031|
+J065730.19+432108.3|104.3758163|43.3523293|0.2741|0.585|-0.044|173.292176|19.2779605|101.1103797|20.4659243|1419.146|565.926|1040143901111001476|1040p439_aa11-001476|1040p439_aa11|1476|15.47|0.052|20.8|0.967899978|15.504|0.152|7.1|0.951300025|11.979||1.8|0.860599995|9.158||0.1|1.05999994|0.957700014|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2000|ABUU|3|13|13|1|13|0|13|0|13|13.98|13.956|13.08|14.549|0.0|0.0|0.0|0.0|0||0||0||0||102.800003|4.94189978|15.807|3.233|1.164|39.6660004|5.56850004|44.693|5.82|1.833|76.9789963|42.2960014|1882.76|21.522|0.0|1.66299999|16.3789997|737.007|11.151|0.0|15.119|0.092|1|0.222|15.102|0.208|1|0.28|11.682||32|0.665|8.601||32|0.616|15.888|0.109|0|15.987|0.261|0|12.773||32|9.654||32|15.341|0.092|1|15.382|0.208|1|12.347||32|9.217||32|14.909|0.08|1|14.957|0.182|1|12.103||32|8.867||32|14.377|0.061|1|14.428|0.138|1|11.949||32|8.572||32|13.793|0.043|1|13.852|0.098|1|11.831||32|8.31||32|13.337|0.034|1|13.394|0.076|1|11.737||32|8.073||32|12.992|0.029|1|13.035|0.063|1|11.621||32|7.857||32|12.566|0.023|1|12.61|0.049|1|11.451||32|7.658||32|15.472|0.218|0.06|15.522|0.45|0.125|12.843|2.571|0.713|10.608|5.706|1.583||||||||||||||||||||||||||389829956|0.845|157.8|1|16.403|0.094|15.668|0.135|15.643|0.196|-0.180536586161857|0.704377716782095|0.686482755178792|223003031|
+J065707.24+431730.8|104.2801895|43.2918968|0.2718|0.5842|0.036|173.3278216|19.1921743|101.043325|20.398518|1600.749|407.092|1040143901111001501|1040p439_aa11-001501|1040p439_aa11|1501|15.504|0.053|20.4|0.966400027|15.411|0.136|8.0|0.867399991|11.681|0.203|5.3|0.856000006|8.564||1.7|0.963999987|0.908900023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|ABBU|7|14|14|4|14|1|14|0|14|14.274|14.841|14.487|14.297|0.0|0.0|0.0|0.0|0||0||0||0||99.651001|4.88800001|16.341|3.468|0.82|43.2249985|5.42670012|44.97|4.326|0.0|212.619995|39.8450012|1882.822|21.426|0.0|26.9629993|16.2730007|737.033|10.949|1.439|15.108|0.122|0|0.222|15.044|0.26|0|0.28|11.456|0.266|0|0.665|8.449||32|0.616|15.859|0.142|0|15.9|0.316|0|12.781|0.349|0|9.445||32|15.33|0.122|0|15.324|0.26|0|12.121|0.266|0|9.065||32|15.067|0.124|0|15.04|0.259|0|11.768|0.249|0|8.807||32|14.956|0.138|0|14.962|0.298|0|11.583|0.261|0|8.734||32|14.943|0.164|0|15.05|0.389|0|11.491|0.288|0|8.285||32|14.983|0.201|0|15.226|0.541|0|11.47|0.334|0|8.038||32|15.033|0.245|1|14.479||32|11.465|0.387|0|7.864||32|15.073|0.293|1|14.445||32|11.526|0.471|1|7.691||32|15.479|0.083|0.022|15.406|0.578|0.155|11.67|0.873|0.233|9.673|3.306|0.884|||||||||||||||||||||||||||||0|||||||-0.179539228015065|0.705379351687302|0.685715418972737|223003021|
+J065758.62+432403.1|104.4942551|43.4008675|0.3617|0.6393|-0.0529|173.2740997|19.3753058|101.1962829|20.5233029|1194.35|694.06|1040143901111001526|1040p439_aa11-001526|1040p439_aa11|1526|15.686|0.065|16.6|0.808700025|15.729|0.199|5.4|0.853299975|12.414||0.6|0.864099979|8.861||0.6|0.893999994|0.847800016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|ABUU|3|13|13|1|13|0|13|0|13|14.001|13.803|13.42|13.94|0.0|0.0|0.0|0.0|0||0||0||0||84.2190018|5.06050014|16.176|3.298|0.0|32.2330017|5.91739988|44.841|4.351|0.0|24.4890003|41.8639984|1883.22|22.642|0.0|10.2259998|17.5209999|736.627|10.85|0.0|15.692|0.205|0|0.222|15.015||32|0.28|12.003||32|0.665|8.234||32|0.616|16.274|0.204|0|15.664||32|13.038||32|9.847||32|15.914|0.205|0|15.295||32|12.668||32|8.85||32|15.779|0.235|1|15.114||32|12.313||32|8.41||32|15.668|0.264|1|15.003||32|11.949||32|8.022||32|15.514|0.274|1|14.905||32|11.645||32|7.706||32|15.327|0.273|1|14.778||32|11.412||32|7.455||32|15.13|0.264|1|14.605||32|11.225||32|7.218||32|14.899|0.246|1|14.367||32|11.089||32|7.058||32|15.681|0.12|0.033|15.572|0.678|0.188|13.409|2.19|0.607|9.655|2.04|0.566|||||||||||||||||||||||||||||0|||||||-0.181846633166088|0.703439718360184|0.687098511597502|223003031|
+J065748.47+431310.5|104.4519806|43.2195892|0.3203|0.6164|-0.0499|173.4443483|19.2858663|101.1841647|20.3397842|1272.461|219.061|1040143901111001551|1040p439_aa11-001551|1040p439_aa11|1551|15.714|0.061|17.7|0.989499986|15.516|0.15|7.2|1.00699997|12.772|||0.921299994|8.839||0.8|0.917500019|0.954599977|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|ABUU|3|14|14|1|14|0|14|0|14|13.91|14.222|13.862|14.065|0.0|0.0|0.0|0.0|0||0||0||0||82.1419983|4.63310003|16.022|3.495|0.216|39.2369995|5.43370008|44.737|5.043|0.0|-2.38919997|38.9280014|1884.069|22.369|0.0|12.9940004|16.5809994|737.032|10.748|3.234|15.835|0.267|1|0.222|15.766|0.501|1|0.28|11.996||32|0.665|8.336||32|0.616|16.345|0.248|0|16.33|0.463|0|13.031||32|9.375||32|16.057|0.267|1|16.046|0.501|1|12.661||32|8.952||32|16.036|0.34|1|15.257||32|12.376||32|8.732||32|16.083|0.439|1|15.294||32|12.145||32|8.398||32|16.067|0.521|1|15.32||32|11.942||32|8.139||32|15.91|0.53|1|15.764||32|11.767||32|7.845||32|15.675|0.496|1|14.921||32|11.604||32|7.533||32|15.412|0.449|1|14.607||32|11.451||32|7.333||32|15.73|0.104|0.028|15.544|0.471|0.126||||11.18|8.985|2.401||||||||||||||||||||||||||389830251|0.698|34.4|1|16.619|0.14|15.859|0.132|15.222||-0.181869197149131|0.705675297991727|0.684796297399904|223003031|
+J065823.19+431044.1|104.5966568|43.1789169|0.5777|0.824|-0.0312|173.5222562|19.3717299|101.300609|20.3105625|995.727|114.183|1040143901111001576|1040p439_aa11-001576|1040p439_aa11|1576|15.982|0.106|10.2|0.967700005|16.139|0.283|3.8|0.965699971|12.705|||0.845799983|9.002||0.3|0.993700027|0.938000023|1|0|0.0|0.0|0.0|0.0|0000|h000|0|0000|ABUU|3|5|12|1|12|0|12|0|12|13.749|14.681|13.877|13.916|0.0|0.0|0.0|0.0|8|h|0||0||0||64.1389999|6.27080011|17.65|4.032|0.0|22.1070004|5.76179981|45.752|4.51|0.0|-86.5410004|41.3880005|1884.27|22.48|0.0|5.46330023|17.1289997|736.569|10.649|0.0|14.938||32|0.222|15.076||32|0.28|12.005||32|0.665|8.34||32|0.616|15.557||32|15.64||32|13.038||32|9.389||32|15.16||32|15.356||32|12.67||32|8.956||32|14.985||32|15.989||32|12.386||32|8.612||32|14.936||32|15.117||32|12.149||32|8.32||32|14.941||32|14.914||32|11.946||32|8.061||32|14.961||32|14.733||32|11.764||32|7.826||32|14.796||32|14.568||32|11.597||32|7.611||32|14.644||32|14.415||32|11.444||32|7.412||32|15.949|0.251|0.072|16.087|1.136|0.328||||11.071||||||||||||||||||||||||||||389836163|0.951|141.2|1|16.483|0.111|16.397|0.246|15.793|0.233|-0.183772959779269|0.705684060958791|0.684278821360618|223003031|
+J065741.60+432540.7|104.4233475|43.4279861|0.4391|0.6983|-0.0327|173.2288186|19.3357675|101.1385198|20.5448059|1329.556|764.384|1040143901111001651|1040p439_aa11-001651|1040p439_aa11|1651|16.053|0.075|14.5|0.959599972|16.806|0.465|2.3|0.906099975|12.351||1.0|0.895900011|8.879||0.7|0.967599988|0.927900016|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ACUU|3|12|15|0|15|0|15|0|15|14.808|14.766|14.8|14.914|0.0|0.0|0.0|0.0|0||0||0||0||60.0740013|4.13210011|16.277|3.763|0.0|11.9540005|5.125|45.071|4.508|0.0|37.8079987|38.4329987|1882.681|23.161|0.0|11.8470001|16.3360004|736.764|10.197|2.237|15.741|0.129|0|0.222|15.716|0.431|0|0.28|12.04||32|0.665|8.37||32|0.616|16.414|0.14|0|15.964||32|13.128||32|9.492||32|15.963|0.129|0|15.996|0.431|0|12.705||32|8.986||32|15.752|0.137|0|15.497|0.352|0|12.325||32|8.56||32|15.615|0.15|1|15.211|0.336|1|12.051||32|8.278||32|15.499|0.163|1|15.024|0.341|1|11.849||32|8.102||32|15.374|0.172|1|14.86|0.347|1|11.662||32|7.933||32|15.221|0.174|1|14.695|0.346|1|11.503||32|7.7||32|15.092|0.178|1|14.527|0.341|1|11.355||32|7.459||32|16.017|0.243|0.063|16.817|1.695|0.438|13.533|4.697|1.213|11.777|||||||||||||||||||||||||||||||0|||||||-0.180894912466909|0.70334918917845|0.687442323926602|223003031|
+J065702.81+431806.7|104.2617416|43.3018761|0.4179|0.6894|-0.0382|173.3130984|19.1828736|101.0279645|20.4070379|1635.984|433.121|1040143901111001676|1040p439_aa11-001676|1040p439_aa11|1676|16.078|0.078|13.9|0.901300013|15.823|0.197|5.5|0.980400026|12.755|||0.887000024|9.218|||0.912299991|0.916199982|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|11|14|3|14|0|13|0|14|13.788|13.868|13.248|13.609|0.0|0.0|0.0|0.0|0||0||0||0||58.6990013|4.22650003|16.412|3.289|0.0|29.5529995|5.36499977|45.103|4.348|0.449|-9.91660023|39.5429993|1882.909|22.86|0.0|-7.50449991|16.2830009|737.515|10.4|1.267|15.998|0.317|0|0.222|14.965||32|0.28|11.876||32|0.665|9.614||32|0.616|16.595|0.321|0|15.663||32|13.079||32|9.633||32|16.22|0.317|0|15.245||32|12.541||32|10.23||32|16.072|0.354|1|15.041||32|12.132||32|8.785||32|15.98|0.402|1|14.941||32|11.839||32|8.577||32|15.683|0.369|1|14.785||32|11.648||32|8.32||32|15.028|0.239|1|14.395||32|11.561||32|8.089||32|14.272|0.138|1|14.369|0.32|1|11.542||32|7.878||32|13.698|0.094|1|13.803|0.218|1|11.564||32|7.682||32|16.085|0.287|0.077|15.79|0.794|0.212||||||||||||||||||||||||||||||||389809557|0.71|-35.8|1|17.015|0.187|16.328|0.247|16.014|0.25|-0.179282678005126|0.705321360519388|0.685842182839748|223003021|
+J065745.33+432256.0|104.4389038|43.3822479|0.4539|0.706|-0.0634|173.2785107|19.3311785|101.1556893|20.5005209|1299.407|644.782|1040143901111001701|1040p439_aa11-001701|1040p439_aa11|1701|16.045|0.079|13.7|0.972000003|16.674|0.433|2.5|0.932699978|12.49||0.6|0.987299979|9.204|||0.879800022|0.938499987|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ACUU|3|8|14|0|14|0|14|0|14|14.64|14.851|13.834|14.657|0.0|0.0|0.0|0.0|0||0||0||0||60.5569992|4.42110014|15.819|3.323|0.547|13.5059996|5.38549995|44.904|4.372|0.146|23.4290009|38.7529984|1884.81|21.866|0.0|-5.03410006|16.4969997|737.186|10.878|2.373|15.763|0.202|1|0.222|15.904|0.447|1|0.28|12.047||32|0.665|8.619||32|0.616|16.491|0.229|1|16.034||32|13.831||32|9.666||32|15.985|0.202|1|16.184|0.447|1|12.712||32|9.235||32|15.66|0.194|1|15.812|0.412|1|13.022||32|8.896||32|15.404|0.19|1|15.557|0.403|1|12.089||32|8.61||32|15.211|0.192|1|15.401|0.422|1|11.885||32|8.357||32|15.093|0.203|1|15.403|0.5|1|11.705||32|8.13||32|15.024|0.221|1|14.689||32|11.54||32|7.921||32|14.948|0.237|1|14.64||32|11.389||32|7.729||32|16.051|0.348|0.093|16.643|1.539|0.411|14.023|4.854|1.297|||||||||||||||||||||||||||||389829895|0.932|33.0|1|16.58|0.116|16.105|0.18|16.424||-0.181222648639591|0.703831264032968|0.686862361313972|223003031|
+J065817.79+431016.7|104.5741272|43.1713219|0.497|0.7581|-0.0403|173.5240472|19.3537084|101.2840553|20.3012561|1038.623|94.022|1040143901111001751|1040p439_aa11-001751|1040p439_aa11|1751|16.34|0.092|11.9|1.14499998|16.545|0.358|3.0|0.959399998|12.51|0.436|2.5|0.989499986|9.02||0.1|1.11399996|1.04700005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ACCU|7|7|14|0|14|0|14|0|14|14.287|14.289|14.641|14.996|0.0|0.0|0.0|0.0|0||0||0||0||46.1520004|3.8914001|16.133|3.677|0.0|15.2030001|5.01690006|45.119|4.117|0.0|99.0899963|39.7729988|1884.543|22.31|0.0|1.87699997|18.5960007|736.788|10.444|1.24|15.966|0.4|1|0.222|14.842||32|0.28|12.051|0.503|1|0.665|8.439||32|0.616|16.774|0.485|1|15.658||32|12.569||32|9.505||32|16.188|0.4|1|15.122||32|12.716|0.503|1|9.055||32|15.677|0.325|1|15.385|0.458|1|12.16|0.392|1|8.739||32|15.228|0.267|1|15.012|0.402|1|11.818|0.355|1|8.493||32|14.918|0.24|1|14.772|0.387|1|11.588|0.345|1|8.226||32|14.774|0.248|1|14.663|0.412|1|11.399|0.342|1|7.95||32|14.728|0.277|1|14.649|0.474|1|11.29|0.36|1|7.696||32|14.682|0.306|1|13.907||32|11.275|0.408|1|7.503||32|16.342|0.377|0.101|16.38|0.787|0.21|12.487|1.809|0.484|11.932|||||||||||||||||||||||||||||||0|||||||-0.183518282596366|0.705844050407268|0.684182151519274|223003031|
+J065810.38+431945.4|104.5432816|43.3292847|0.5064|0.7515|0.0525|173.3582292|19.3851058|101.2422509|20.4559212|1099.976|507.197|1040143901111001776|1040p439_aa11-001776|1040p439_aa11|1776|16.401|0.1|10.8|0.931400001|15.632|0.165|6.6|0.921400011|11.862|0.24|4.5|1.15600002|8.98||0.3|0.941100001|0.98299998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABBU|7|6|14|1|14|1|14|0|14|13.736|13.762|13.941|13.803|0.0|0.0|0.0|0.0|0||0||0||0||43.6069984|4.01919985|15.937|3.382|0.0|35.2449989|5.35109997|44.621|4.692|0.0|179.990005|39.7210007|1881.697|22.282|0.0|4.87039995|17.8330002|736.36|10.28|0.897|15.564|0.16|1|0.222|15.048|0.232|1|0.28|11.897|0.405|1|0.665|8.149||32|0.616|16.531|0.231|1|16.023|0.318|1|13.121|0.492|0|9.292||32|15.786|0.16|1|15.328|0.232|1|12.562|0.405|1|8.765||32|15.105|0.111|1|14.786|0.182|1|12.276|0.401|1|8.27||32|14.478|0.077|1|14.305|0.145|1|12.117|0.43|1|7.938||32|14.015|0.061|1|13.925|0.123|1|11.981|0.458|1|7.726||32|13.741|0.056|1|13.673|0.115|1|11.782|0.451|1|7.548||32|13.594|0.057|1|13.525|0.117|1|11.601|0.444|1|7.407||32|13.505|0.06|1|13.446|0.125|1|11.487|0.459|1|7.341||32|16.371|0.477|0.128|15.689|0.887|0.237|11.84|1.004|0.268|10.494|||||||||||||||||||||||||||||||0|||||||-0.182663900581314|0.704114235065648|0.686190238492459|223003031|
+J065746.71+431757.9|104.4446564|43.2994347|0.5857|0.8473|-0.1115|173.3627188|19.3075008|101.1694886|20.4186162|1287.429|428.021|1040143901111001826|1040p439_aa11-001826|1040p439_aa11|1826|16.502|0.106|10.3|1.00399995|16.625|0.401|2.7|0.867299974|12.366||0.9|0.863799989|9.225|||0.896799982|0.903900027|2|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ACUU|3|5|14|0|14|0|14|0|14|13.795|13.904|13.924|13.921|0.0|0.0|0.0|0.0|0||0||0||0||39.7290001|3.86809993|16.369|3.349|0.0|14.1309996|5.22209978|45.059|4.395|0.0|33.980999|39.5960007|1884.709|22.85|0.0|-14.1750002|16.1760006|737.173|9.949|0.0|15.728|0.29|0|0.222|15.013||32|0.28|11.67||32|0.665|8.476||32|0.616|16.658|0.393|0|15.82||32|12.751||32|9.524||32|15.95|0.29|0|15.293||32|12.335||32|9.092||32|15.458|0.239|0|15.57|0.47|0|12.109||32|8.75||32|15.054|0.204|1|15.138|0.391|1|11.943||32|8.454||32|14.607|0.162|1|14.723|0.321|1|11.762||32|8.196||32|14.106|0.121|1|14.257|0.246|1|11.624||32|7.961||32|13.697|0.096|1|13.826|0.192|1|12.55||32|7.746||32|13.458|0.089|1|13.545|0.171|1|12.883||32|7.548||32|16.537|0.462|0.123|16.591|1.373|0.367|13.449|3.399|0.908||||||||||||||||||||||||||||||||0|||||||-0.1815407643106|0.704773713084934|0.685811172435969|223003031|
+J065810.54+432516.0|104.5439224|43.4211121|0.5482|0.7659|-0.0749|173.266572|19.4160639|101.2322904|20.5472746|1100.189|747.607|1040143901111001851|1040p439_aa11-001851|1040p439_aa11|1851|16.317|0.096|11.3|0.976499975|16.222|0.285|3.8|0.994099975|12.764|||0.996599972|9.092|||0.921000004|0.967499971|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|8|14|1|14|0|14|0|14|13.859|13.765|13.927|13.852|0.0|0.0|0.0|0.0|0||0||0||0||47.1349983|4.16499996|16.034|3.458|0.0|20.4810009|5.38560009|44.626|4.434|0.0|-12.0679998|39.2060013|1882.562|22.203|0.0|-11.3389997|18.2889996|737.326|10.46|2.367|16.335|0.302|0|0.222|15.247||32|0.28|12.193||32|0.665|8.312||32|0.616|16.901|0.294|0|15.808||32|13.231||32|9.362||32|16.557|0.302|0|15.527||32|12.858||32|8.928||32|16.417|0.345|0|15.388||32|12.573||32|8.582||32|16.252|0.368|1|15.228||32|12.339||32|8.289||32|16.048|0.367|1|15.042||32|12.02||32|8.028||32|15.834|0.356|1|14.868||32|11.776||32|7.792||32|15.587|0.331|1|14.69||32|11.62||32|7.576||32|15.328|0.299|1|14.512||32|11.49||32|7.377||32|16.243|0.206|0.055|15.941|0.918|0.245|||||||||||||||||||||||||||||||||||0|||||||-0.182395369270884|0.703046778744293|0.687355189233202|223003031|
+J065812.24+432315.5|104.5510406|43.3876419|0.618|0.8299|-0.1116|173.3018663|19.4098247|101.2415943|20.5145472|1086.121|660.061|1040143901111001876|1040p439_aa11-001876|1040p439_aa11|1876|16.452|0.105|10.3|0.91170001|16.65|0.457|2.4|0.830600023|12.127||1.4|0.829200029|9.071|||0.938600004|0.872799993|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ACUU|3|6|13|0|13|0|13|0|13|12.97|12.764|12.864|13.738|0.0|0.0|0.0|0.0|0||0||0||0||41.6170006|4.0309|16.268|3.469|0.0|13.7989998|5.8032999|44.747|4.541|0.0|57.4679985|41.7350006|1881.691|23.894|0.0|-0.200859994|18.6469994|736.48|10.896|4.624|16.535|0.506|0|0.222|15.577||32|0.28|12.205||32|0.665|8.509||32|0.616|17.05|0.474|0|16.174||32|13.089||32|9.559||32|16.757|0.506|0|15.857||32|12.87||32|9.125||32|15.903||32|15.83||32|12.611||32|8.777||32|15.846||32|15.79||32|12.385||32|8.486||32|15.817||32|15.59||32|12.185||32|8.224||32|15.772||32|15.412||32|12.007||32|7.988||32|15.687||32|15.248||32|11.845||32|7.773||32|15.564||32|15.1||32|11.699||32|7.574||32|16.421|0.338|0.094|16.599|1.651|0.458|13.195|2.122|0.589||||||||||||||||||||||||||||||||0|||||||-0.182583561545671|0.703412642884472|0.686930780270895|223003031|
+J065826.19+431620.9|104.6091385|43.2724724|0.7247|0.9546|-0.0996|173.4319269|19.4114219|101.29958|20.4045541|973.551|359.261|1040143901111001951|1040p439_aa11-001951|1040p439_aa11|1951|16.703|0.132|8.2|0.841300011|16.258|0.283|3.8|0.953100026|12.463||0.5|0.839699984|8.831||0.6|1.06700003|0.920400023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BBUU|3|2|13|1|13|0|13|0|13|14.088|14.818|13.683|14.23|0.0|0.0|0.0|0.0|0||0||0||0||33.0219994|4.00369978|15.738|3.502|0.0|19.8050003|5.17140007|44.81|4.234|0.0|21.9290009|40.7529984|1882.259|22.905|5.375|10.5799999|17.9689999|737.045|9.828|0.0|16.564|0.396|1|0.222|15.579||32|0.28|12.846||32|0.665|8.393||32|0.616|17.166|0.404|0|16.161||32|15.622||32|9.962||32|16.786|0.396|1|15.859||32|13.511||32|9.009||32|16.758|0.501|1|15.727||32|12.484||32|8.522||32|16.012||32|15.691||32|12.063||32|8.203||32|15.966||32|15.573||32|11.755||32|7.978||32|15.871||32|15.392||32|11.585||32|7.845||32|15.733||32|15.224||32|11.513||32|7.801||32|15.597||32|15.073||32|11.52||32|7.602||32|16.639|0.253|0.07|16.697|1.618|0.449|15.975|||10.455|6.511|1.806|||||||||||||||||||||||||||||0|||||||-0.18364462531134|0.704561868258636|0.685468617363448|223003031|
+J065747.58+431946.2|104.4482574|43.329525|0.7848|1.0106|-0.0791|173.3335874|19.3200101|101.1688684|20.4488148|1280.948|506.832|1040143901111002026|1040p439_aa11-002026|1040p439_aa11|2026|16.848|0.139|7.8|0.869099975|16.431|0.33|3.3|1.07599998|12.473||0.6|0.912800014|9.213|||0.978299975|0.954900026|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BBUU|3|2|14|0|14|0|14|0|14|13.864|13.86|13.737|13.955|0.0|0.0|0.0|0.0|0||0||0||0||28.8929996|3.70619988|15.995|3.471|0.215|16.8840008|5.12760019|44.756|4.324|0.0|24.7299995|38.8810005|1884.401|22.271|0.0|-0.0377740003|16.3549995|737.262|10.181|3.206|16.673|0.528|1|0.222|15.284||32|0.28|12.112||32|0.665|8.136||32|0.616|17.28|0.541|0|15.98||32|13.136||32|9.306||32|16.895|0.528|1|15.564||32|12.777||32|8.752||32|16.622|0.529|1|15.272||32|12.501||32|8.375||32|16.187|0.438|1|14.976||32|12.27||32|8.116||32|15.61|0.311|1|15.384|0.523|1|12.063||32|7.923||32|15.052|0.22|1|14.984|0.427|1|11.882||32|7.724||32|14.614|0.171|1|14.672|0.373|1|11.717||32|7.532||32|14.249|0.14|1|14.413|0.337|1|11.567||32|7.363||32|16.891|0.51|0.136|16.41|1.607|0.429|13.532|3.218|0.86|13.655|||||||||||||||||||||||||||||||0|||||||-0.181495168838672|0.704413425048671|0.686193289313894|223003031|
+J065705.68+432456.0|104.273674|43.4155731|0.8626|1.0814|-0.126|173.2027436|19.2291553|101.0244754|20.5210186|1614.055|730.846|1040143901111002051|1040p439_aa11-002051|1040p439_aa11|2051|16.86|0.144|7.5|0.742200017|16.89|||0.907199979|12.739|||0.894200027|9.092|||0.784600019|0.828599989|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BUUU|1|1|13|0|13|0|13|0|13|12.623|12.8|12.741|13.018|0.0|0.0|0.0|0.0|0||0||0||0||28.5690002|3.79049993|16.103|3.066|0.0|-1.64170003|5.53189993|44.96|4.189|0.0|-9.55420017|40.1100006|1882.775|21.845|3.544|-6.79640007|18.2929993|737.375|10.869|0.0|16.671|0.474|0|0.222|15.984||32|0.28|12.163||32|0.665|8.37||32|0.616|17.286|0.491|0|16.621||32|13.186||32|9.422||32|16.893|0.474|0|16.264||32|12.828||32|8.986||32|16.066||32|15.99||32|12.553||32|8.643||32|16.041||32|15.759||32|12.322||32|8.354||32|16.098||32|15.554||32|12.116||32|8.096||32|16.15||32|15.375||32|11.937||32|7.863||32|15.985||32|15.211||32|11.773||32|7.649||32|15.836||32|15.062||32|11.625||32|7.452||32|16.876|0.301|0.083||||||||||||||||||||||||||||||||||||||0|||||||-0.179093657240236|0.703963658334611|0.687284969776342|223003031|
+J065725.79+432446.0|104.35746|43.4127846|0.8203|1.0474|-0.0553|173.2270859|19.2855817|101.0894159|20.5246373|1454.68|724.068|1040143901111002101|1040p439_aa11-002101|1040p439_aa11|2101|16.89|0.147|7.4|0.851000011|16.775|0.488|2.2|0.89200002|12.637|||0.980499983|8.415||1.9|0.993399978|0.923099995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BCUU|3|1|13|0|13|0|13|0|13|12.893|12.779|11.785|12.734|0.0|0.0|0.0|0.0|0||0||0||0||27.7889996|3.75620008|16.103|3.225|0.0|12.3059998|5.53119993|44.68|4.508|0.0|-9.42370033|44.0649986|1881.832|22.762|5.455|33.1689987|17.5270004|736.37|10.495|4.13|16.833|0.533|0|0.222|15.597||32|0.28|12.444||32|0.665|8.172||32|0.616|17.395|0.519|0|16.195||32|13.193||32|9.211||32|17.055|0.533|0|15.877||32|13.109||32|8.788||32|16.13||32|15.736||32|12.424||32|8.441||32|15.932||32|15.604||32|12.035||32|8.17||32|15.663||32|15.402||32|11.718||32|8.013||32|16.001|0.461|1|15.128||32|11.511||32|7.871||32|15.58|0.364|1|14.828||32|11.336||32|7.666||32|15.215|0.299|1|14.524||32|11.155||32|7.456||32|16.87|0.26|0.072|16.749|1.713|0.475||||9.295|1.533|0.425|||||||||||||||||||||||||||||0|||||||-0.180131194892821|0.703733413236273|0.687249616748755|223003031|
+J065616.09+432010.8|104.0670471|43.3363495|0.0748|0.5049|-0.0049|173.2283042|19.0610775|100.8738177|20.4266128|2006.965|522.839|1040143901111002226|1040p439_aa11-002226|1040p439_aa11|2226|9.394|0.025|43.6|0.878499985|9.474|0.021|52.9|1.03100002|9.308|0.036|30.5|0.988699973|8.504||1.8|0.956399977|0.959399998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1110|AAAU|7|13|13|13|13|13|13|0|13|13.89|14.231|13.973|14.255|0.0|0.0|0.0|0.0|0||0||0||0||27705.0|635.919983|16.418|3.632|0.0|10243.0|193.589996|45.387|4.619|0.0|1891.80005|62.1100006|1884.527|22.907|1.446|29.8220005|16.5160007|737.041|11.115|3.031|9.395|0.006|0|0.222|9.477|0.006|0|0.28|9.313|0.043|0|0.665|8.523|0.513|1|0.616|9.979|0.006|0|10.193|0.006|0|10.57|0.054|0|9.017||32|9.617|0.006|0|9.757|0.006|0|9.978|0.043|0|9.139|0.513|1|9.49|0.006|0|9.594|0.006|0|9.659|0.042|0|8.611|0.432|1|9.437|0.006|0|9.528|0.006|0|9.48|0.044|0|8.183|0.381|1|9.409|0.006|0|9.495|0.006|0|9.36|0.047|0|7.855|0.358|1|9.388|0.006|1|9.471|0.006|1|9.243|0.05|1|7.581|0.345|1|9.368|0.006|1|9.451|0.007|1|9.1|0.051|1|7.386|0.352|1|9.349|0.006|1|9.429|0.007|1|8.938|0.05|1|7.279|0.383|1|9.394|0.019|0.005|9.474|0.02|0.006|9.305|0.055|0.015|9.413|1.058|0.293||||||||||||||||||||||||||389803164|0.082|-172.5|1|10.205|0.022|9.569|0.021|9.46|0.021|-0.176784592768036|0.705526093831348|0.686279927349561|223003021|
+J065539.68+431627.0|103.9153595|43.2741737|0.1055|0.5105|-0.0223|173.2507059|18.9361698|100.7634816|20.3534397|2296.086|360.251|1040143901111002276|1040p439_aa11-002276|1040p439_aa11|2276|13.126|0.026|41.9|0.846199989|13.144|0.035|31.1|1.22599995|12.468||0.4|0.905399978|9.192|||0.8477|0.952000022|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1100|AAUU|3|13|13|13|13|0|12|0|13|13.793|13.575|13.552|13.827|0.0|0.0|0.0|0.0|0||0||0||0||890.280029|21.2310009|16.602|3.31|0.0|348.589996|11.2110004|45.491|4.097|0.0|16.3519993|43.3429985|1882.296|22.538|0.0|-1.31850004|16.6720009|737.151|10.535|3.164|13.14|0.021|0|0.222|13.168|0.045|0|0.28|11.985||32|0.665|8.563||32|0.616|13.722|0.021|0|13.878|0.049|0|12.982||32|9.62||32|13.362|0.021|0|13.448|0.045|0|12.65||32|9.179||32|13.242|0.024|0|13.299|0.051|0|12.545||32|8.826||32|13.205|0.028|0|13.258|0.061|0|12.4||32|10.304||32|13.198|0.033|1|13.253|0.072|1|12.198||32|8.168||32|13.202|0.039|1|13.254|0.085|1|12.012||32|7.893||32|13.201|0.046|1|13.243|0.098|1|11.846||32|7.67||32|13.181|0.052|1|13.219|0.111|1|11.689||32|7.481||32|13.118|0.027|0.008|13.162|0.104|0.029|14.615|||||||||||||||||||||||||||||||389782686|0.103|-158.4|1|13.581|0.025|13.214|0.022|13.118|0.028|-0.175095128014006|0.706714108665614|0.685490236807736|223003021|
+J065610.79+432159.7|104.04496|43.3665848|0.1052|0.5113|0.0117|173.1924586|19.0561564|100.8534423|20.4550311|2049.029|601.994|1040143901111002301|1040p439_aa11-002301|1040p439_aa11|2301|13.422|0.026|41.0|1.05299997|13.415|0.035|30.9|0.954699993|12.689|0.479|2.3|1.03600001|9.281|||1.02400005|1.01199996|1|0|0.0|0.0|0.0|0.001|0000|0000|0|1100|AACU|7|15|15|15|15|0|15|0|15|14.838|14.731|14.273|14.766|0.0|0.0|0.0|0.0|0||0||0||0||677.830017|16.5179996|16.062|3.336|0.0|271.570007|8.77859974|45.2|4.28|0.0|84.0240021|37.0540009|1884.604|21.404|0.0|-8.71700001|15.3690004|736.733|9.597|0.0|13.343|0.023|1|0.222|13.329|0.053|1|0.28|11.52||32|0.665|8.546||32|0.616|13.996|0.025|1|14.122|0.063|1|12.693||32|9.681||32|13.565|0.023|1|13.609|0.053|1|12.185||32|9.162||32|13.297|0.023|1|13.312|0.052|1|11.802||32|8.515||32|13.074|0.024|1|13.087|0.053|1|12.229|0.505|1|8.029||32|12.908|0.024|1|12.91|0.054|1|12.008|0.497|1|7.692||32|12.769|0.025|1|12.741|0.054|1|11.795|0.479|1|7.409||32|12.59|0.025|1|12.527|0.052|1|11.556|0.449|1|7.187||32|12.338|0.023|1|12.269|0.047|1|11.296|0.404|1|7.049||32|13.423|0.032|0.008|13.421|0.117|0.03|12.743|1.987|0.513||||||||||||||||||||||||||||||||0|||||||-0.176424691338728|0.705242764989323|0.686663651809421|223003021|
+J065649.14+431714.3|104.2047653|43.2873192|0.1228|0.5158|-0.0127|173.3128693|19.1389239|100.9855828|20.3882334|1744.469|394.757|1040143901111002351|1040p439_aa11-002351|1040p439_aa11|2351|13.807|0.028|38.3|1.45200002|13.875|0.046|23.6|1.03699994|12.636|0.473|2.3|0.891600013|9.154|||0.928200006|1.07200003|3|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|AACU|7|14|14|14|14|0|14|0|14|14.691|14.706|15.264|15.405|0.0|0.0|0.0|0.0|0||0||0||0||475.690002|12.415|15.622|3.195|0.0|177.860001|7.52860022|44.611|5.175|0.306|88.2259979|38.4049988|1882.479|23.035|0.0|-8.68830013|17.2660007|737.244|9.848|2.809|13.696|0.027|0|0.222|13.769|0.068|0|0.28|11.896||32|0.665|8.477||32|0.616|14.343|0.029|0|14.537|0.077|0|12.948||32|9.527||32|13.918|0.027|0|14.049|0.068|0|12.561||32|9.093||32|13.718|0.029|1|13.809|0.071|1|12.271||32|8.744||32|13.546|0.031|1|13.61|0.073|1|12.035||32|8.449||32|13.281|0.029|1|13.351|0.069|1|11.837||32|8.188||32|12.933|0.025|1|13.029|0.061|1|11.711||32|7.952||32|12.649|0.022|1|12.742|0.055|1|11.639||32|7.736||32|12.495|0.022|1|12.558|0.053|1|11.608||32|7.536||32|13.807|0.046|0.012|13.875|0.123|0.033|12.657|1.722|0.46|||||||||||||||||||||||||||||389809520|0.358|175.9|1|14.346|0.027|14.006|0.043|13.921|0.047|-0.178623953834228|0.705668193374097|0.685657264219352|223003021|
+J065602.69+432100.4|104.0112305|43.350132|0.1396|0.5189|-0.0291|173.2000853|19.0275184|100.8292155|20.4361421|2113.24|558.933|1040143901111002376|1040p439_aa11-002376|1040p439_aa11|2376|14.043|0.032|33.9|1.02400005|13.977|0.049|22.3|1.04900002|12.519||0.4|0.940999985|9.249|||0.990499973|0.997600019|1|0|0.0|0.0|0.0|0.001|0000|0000|0|1100|AAUU|3|14|14|14|14|0|14|0|14|14.468|14.602|13.158|14.704|0.0|0.0|0.0|0.0|0||0||0||0||382.640015|11.283|15.624|3.259|0.112|161.929993|7.26450014|44.81|5.024|0.0|18.0160007|40.1310005|1884.241|22.385|0.0|-4.89160013|15.8299999|737.597|9.525|1.711|14.066|0.039|0|0.222|14.081|0.107|0|0.28|12.805||32|0.665|8.628||32|0.616|14.635|0.039|0|14.767|0.112|0|13.555||32|9.679||32|14.288|0.039|0|14.361|0.107|0|13.47||32|9.244||32|14.189|0.045|1|14.255|0.125|1|12.662||32|9.236||32|14.182|0.055|1|14.276|0.158|1|12.2||32|8.541||32|14.186|0.067|1|14.296|0.194|1|11.902||32|8.267||32|14.132|0.075|1|14.239|0.218|1|11.643||32|8.396||32|13.992|0.077|1|14.083|0.219|1|11.488||32|7.882||32|13.798|0.074|1|13.874|0.208|1|11.385||32|7.681||32|14.037|0.045|0.012|13.99|0.157|0.042|14.641|8.713|2.329|12.904||||||||||||||||||||||||||||389803125|0.19|18.9|1|14.639|0.032|14.106|0.026|14.04|0.049|-0.176057223067745|0.705537786139566|0.686454868534672|223003021|
+J065623.29+432619.3|104.0970612|43.4387093|0.1439|0.5226|0.0114|173.1340937|19.1160949|100.8856881|20.5306783|1949.971|790.844|1040143901111002401|1040p439_aa11-002401|1040p439_aa11|2401|14.202|0.033|33.1|0.909300029|14.168|0.057|19.2|1.12300003|12.386||0.8|1.03100002|9.137|||1.01699996|1.01499999|3|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|AAUU|3|13|13|13|13|0|13|0|13|12.837|12.788|13.065|13.407|0.0|0.0|0.0|0.0|0||0||0||0||330.390015|9.97210026|16.78|3.624|0.373|135.710007|7.08510017|45.146|4.199|0.0|30.5879993|40.2159996|1883.528|22.616|3.895|-14.5579996|17.5419998|736.856|10.27|0.36|14.213|0.059|1|0.222|14.285|0.121|1|0.28|11.782||32|0.665|8.33||32|0.616|14.789|0.06|0|14.96|0.126|0|12.802||32|9.542||32|14.435|0.059|1|14.565|0.121|1|12.447||32|8.946||32|14.297|0.067|1|14.401|0.134|1|12.605||32|8.563||32|14.18|0.075|1|14.28|0.148|1|11.917||32|8.237||32|14.037|0.079|1|14.154|0.159|1|11.971||32|7.96||32|13.893|0.082|1|14.036|0.169|1|12.493||32|7.714||32|13.752|0.083|1|13.924|0.176|1|11.389||32|7.48||32|13.606|0.083|1|13.794|0.18|1|11.238||32|7.298||32|14.201|0.055|0.015|14.183|0.237|0.066|13.836|4.267|1.184|||||||||||||||||||||||||||||389802924|0.08|-101.1|1|14.613|0.032|14.26|0.033|14.231|0.05|-0.176855249038739|0.704243137560451|0.687578231248239|223003021|
+J065655.53+431152.7|104.2314148|43.1979904|0.1534|0.5282|-0.0249|173.4088245|19.1271664|101.0161021|20.3014137|1693.154|161.007|1040143901111002426|1040p439_aa11-002426|1040p439_aa11|2426|14.388|0.035|31.4|1.57799995|14.316|0.063|17.2|1.023|12.691|||0.915099978|8.916||0.4|1.01600003|1.12199998|2|0|0.0|0.0|0.0|0.0|0000|0000|0|1400|AAUU|3|13|13|13|13|0|13|0|13|12.839|13.087|12.74|13.49|0.0|0.0|0.0|0.0|0||0||0||0||278.51001|8.87040043|16.341|3.702|0.0|118.43|6.88320017|45.412|4.323|0.0|-15.7749996|41.9410019|1883.067|23.663|0.0|6.54180002|18.2259998|736.743|9.193|0.0|14.335|0.073|0|0.222|14.327|0.17|0|0.28|11.936||32|0.665|8.383||32|0.616|14.914|0.073|0|15.036|0.182|0|12.959||32|9.436||32|14.557|0.073|0|14.607|0.17|0|12.601||32|8.999||32|14.426|0.083|1|14.452|0.19|1|12.325||32|8.659||32|14.348|0.095|1|14.376|0.218|1|12.097||32|8.368||32|14.211|0.102|1|14.237|0.233|1|11.89||32|8.109||32|13.919|0.092|1|13.95|0.211|1|11.712||32|7.876||32|13.529|0.075|1|13.593|0.176|1|11.551||32|7.661||32|13.202|0.063|1|13.294|0.154|1|11.403||32|7.463||32|14.387|0.073|0.02|14.319|0.304|0.084|15.233|||10.323|5.131|1.423||||||||||||||||||||||||||389809314|0.924|4.9|1|14.655|0.028|14.356|0.047|14.366|0.066|-0.179214739072089|0.706620366188633|0.68452153756238|223003021|
+J065651.41+432607.7|104.214241|43.4354897|0.1735|0.5343|-0.0113|173.1675565|19.1951588|100.976414|20.536315|1727.185|782.718|1040143901111002451|1040p439_aa11-002451|1040p439_aa11|2451|14.653|0.036|30.0|1.08200002|14.773|0.081|13.4|0.913100004|12.689||0.2|0.851199985|9.003||0.7|1.13499999|0.99089998|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|AAUU|3|14|14|12|14|0|14|0|14|14.709|14.732|14.891|14.923|0.0|0.0|0.0|0.0|0||0||0||0||218.169998|7.26230001|16.018|3.376|0.0|77.7969971|5.79220009|44.582|3.979|0.0|6.42719984|38.7849998|1881.649|22.524|0.0|9.88599968|14.915|736.404|9.957|1.274|14.651|0.086|0|0.222|14.912|0.225|0|0.28|11.992||32|0.665|8.092||32|0.616|15.235|0.086|0|15.555|0.226|0|13.133||32|9.198||32|14.873|0.086|0|15.192|0.225|0|12.657||32|8.708||32|14.758|0.1|0|15.083|0.264|0|12.281||32|8.491||32|14.727|0.121|0|15.031|0.313|0|11.993||32|8.475||32|14.701|0.142|1|14.957|0.353|1|11.807||32|8.275||32|14.595|0.152|1|14.769|0.35|1|11.672||32|8.039||32|14.297|0.134|1|14.416|0.295|1|11.559||32|7.822||32|13.828|0.1|1|13.988|0.229|1|11.444||32|7.622||32|14.653|0.084|0.022|14.763|0.268|0.072|15.623|||11.224||||||||||||||||||||||||||||389809842|0.136|52.0|1|15.447|0.047|14.918|0.065|14.752|0.079|-0.178304664372144|0.703917418164096|0.687537428121793|223003031|
+J065525.82+432602.7|103.8575974|43.4341087|0.1846|0.5352|-0.0243|173.0765713|18.9508684|100.7015081|20.5082638|2405.246|779.183|1040143901111002476|1040p439_aa11-002476|1040p439_aa11|2476|14.808|0.038|28.9|1.23300004|14.88|0.094|11.6|1.01199996|12.214||1.4|0.915899992|8.778||1.0|1.06500006|1.051|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|AAUU|3|14|14|9|14|0|14|0|14|14.747|14.816|14.92|14.901|0.0|0.0|0.0|0.0|0||0||0||0||189.179993|6.5467|15.866|3.418|0.0|70.4499969|6.09560013|44.652|4.376|0.0|53.7729988|38.1959991|1882.445|21.833|0.0|16.1499996|16.3479996|736.467|10.957|3.194|14.73|0.075|1|0.222|14.749|0.171|1|0.28|12.205||32|0.665|8.168||32|0.616|15.374|0.08|0|15.546|0.197|0|13.381||32|9.387||32|14.952|0.075|1|15.029|0.171|1|12.87||32|8.784||32|14.771|0.083|1|14.764|0.173|1|12.587||32|8.252||32|14.681|0.094|1|14.565|0.179|1|12.35||32|7.886||32|14.624|0.108|1|14.389|0.184|1|12.145||32|7.678||32|14.566|0.121|1|14.256|0.192|1|11.964||32|7.513||32|14.471|0.128|1|14.123|0.198|1|11.798||32|7.368||32|14.319|0.129|1|13.939|0.192|1|11.644||32|7.223||32|14.807|0.115|0.031|14.863|0.288|0.077|13.128|2.249|0.601|10.239|6.233|1.666||||||||||||||||||||||||||389783008|0.277|-174.4|1|15.392|0.059|14.932|0.057|14.838|0.086|-0.173923599506875|0.705029739441936|0.687519925556349|223003023|
+J065527.40+431817.7|103.8642044|43.3049278|0.1972|0.5418|-0.0446|173.2067679|18.9115768|100.720628|20.3802411|2393.424|440.943|1040143901111002501|1040p439_aa11-002501|1040p439_aa11|2501|14.873|0.038|28.3|0.999499977|14.666|0.087|12.5|0.846300006|11.951|0.285|3.8|0.790199995|9.119|||0.908500016|0.881299973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|AABU|7|12|12|8|12|0|12|0|12|12.8|12.726|12.541|12.456|0.0|0.0|0.0|0.0|0||0||0||0||178.130005|6.28779984|15.902|3.613|0.245|85.8359985|6.84639978|45.016|4.346|0.0|165.869995|43.487999|1881.657|22.583|1.42|-5.75990009|17.8460007|736.831|10.354|0.342|14.752|0.08|1|0.222|14.562|0.192|1|0.28|11.818|0.411|1|0.665|8.469||32|0.616|15.396|0.084|0|15.332|0.215|0|13.077|0.504|0|9.517||32|14.974|0.08|1|14.842|0.192|1|12.483|0.411|1|9.085||32|14.804|0.088|1|14.624|0.205|1|12.121|0.384|1|8.742||32|14.695|0.099|1|14.511|0.228|1|11.88|0.382|1|9.607||32|14.55|0.104|1|14.388|0.245|1|11.7|0.389|1|8.11||32|14.391|0.106|1|14.269|0.259|1|11.53|0.392|1|7.829||32|14.285|0.112|1|14.216|0.286|1|11.411|0.409|1|7.631||32|14.235|0.123|1|14.233|0.335|1|11.409|0.471|1|7.47||32|14.881|0.101|0.029|14.653|0.241|0.07|11.916|0.962|0.278||||||||||||||||||||||||||||||||0|||||||-0.174375893916523|0.706512830047404|0.685880943458281|223003021|
+J065552.32+432141.6|103.9680023|43.361557|0.2155|0.5532|-0.0408|173.177477|19.001797|100.794598|20.4442812|2195.518|588.892|1040143901111002526|1040p439_aa11-002526|1040p439_aa11|2526|15.041|0.043|25.1|1.31700003|14.911|0.095|11.4|1.18099999|12.022||1.7|0.734899998|8.598||1.7|1.04299998|1.06700003|1|0|0.0|0.0|0.0|0.0|0000|0000|0|3000|AAUU|3|13|13|6|13|0|13|0|13|12.736|13.038|12.413|13.201|0.0|0.0|0.0|0.0|0||0||0||0||152.660004|6.07490015|15.996|3.563|0.0|68.4820023|6.0019002|44.971|4.141|0.0|71.262001|42.0169983|1883.073|23.245|0.0|26.1119995|15.7790003|736.816|11.256|1.894|14.897|0.105|0|0.222|14.724|0.191|0|0.28|11.988||32|0.665|8.193||32|0.616|15.524|0.109|0|15.508|0.217|0|12.961||32|9.19||32|15.119|0.105|0|15.004|0.191|0|12.653||32|8.809||32|14.999|0.122|1|14.792|0.203|1|12.543||32|9.489||32|14.967|0.147|1|14.733|0.239|1|12.365||32|8.389||32|14.942|0.173|1|14.744|0.291|1|12.163||32|8.13||32|14.915|0.198|1|14.74|0.341|1|11.986||32|7.895||32|14.902|0.227|1|14.697|0.381|1|11.823||32|7.679||32|14.886|0.258|1|14.599|0.4|1|11.673||32|7.481||32|15.037|0.174|0.048|14.908|0.496|0.138|12.866|1.501|0.416|9.378|2.799|0.776|||||||||||||||||||||||||||||0|||||||-0.175491818792844|0.705537567707547|0.68659985587684|223003021|
+J065656.70+432007.3|104.2362823|43.3353691|0.2096|0.5552|-0.0424|173.2731122|19.176664|101.0045735|20.4384124|1684.693|520.681|1040143901111002551|1040p439_aa11-002551|1040p439_aa11|2551|15.202|0.044|24.7|1.07000005|14.833|0.086|12.6|0.953999996|12.472|0.414|2.6|0.939400017|8.851|0.396|2.7|0.978999972|0.981100023|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|AACC|15|14|14|7|14|0|14|0|14|14.769|14.776|14.849|14.994|0.0|0.0|0.0|0.0|0||0||0||0||131.580002|5.32499981|15.98|3.465|0.364|73.6139984|5.82789993|44.651|4.206|0.0|102.57|39.0769997|1881.713|22.283|0.0|45.6679993|16.6749992|736.285|10.452|0.0|15.16|0.116|1|0.222|14.696|0.182|1|0.28|11.435||32|0.665|7.703||32|0.616|15.731|0.114|0|15.455|0.201|0|12.569||32|8.861||32|15.382|0.116|1|14.976|0.182|1|12.1||32|8.319||32|15.306|0.14|1|14.793|0.199|1|11.831||32|8.0||32|15.279|0.17|1|14.695|0.226|1|11.727||32|7.793||32|15.138|0.18|1|14.558|0.241|1|11.749||32|7.644||32|14.871|0.166|1|14.352|0.236|1|11.76||32|7.534||32|14.538|0.142|1|14.088|0.215|1|11.596||32|7.458||32|14.173|0.117|1|13.778|0.186|1|11.443||32|7.364||32|15.184|0.073|0.019|14.851|0.335|0.089|12.357|0.534|0.143|8.791|1.116|0.298||||||||||||||||||||||||||389809638|1.252|28.7|1|16.582|0.128|16.159|0.177|15.901|0.225|-0.178870626915682|0.7050122286103|0.68626748162559|223003021|
+J065619.53+432351.9|104.0813751|43.3977776|0.2783|0.5981|-0.0277|173.1708243|19.0915878|100.8781066|20.488788|1979.749|683.668|1040143901111002601|1040p439_aa11-002601|1040p439_aa11|2601|15.539|0.052|21.0|2.43899989|15.613|0.165|6.6|0.937699974|12.655|0.511|2.1|0.963199973|8.776||0.7|0.798799992|1.28100002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|ABCU|7|13|13|1|13|0|13|0|13|13.753|13.918|13.956|13.84|0.0|0.0|0.0|0.0|0||0||0||0||96.5029984|4.59840012|16.197|3.334|0.0|35.868|5.43480015|44.831|3.814|0.0|86.7080002|40.8079987|1884.211|22.242|3.397|12.5839996|18.1790009|737.086|10.146|0.0|15.241|0.135|1|0.222|15.6|0.345|1|0.28|11.741||32|0.665|8.323||32|0.616|15.914|0.146|0|16.424|0.407|0|12.855||32|9.465||32|15.463|0.135|1|15.88|0.345|1|12.406||32|8.939||32|15.247|0.143|1|15.576|0.337|1|12.027||32|8.546||32|15.091|0.153|1|15.375|0.346|1|11.724||32|8.241||32|14.939|0.16|1|15.222|0.362|1|11.493||32|8.014||32|14.789|0.165|1|15.111|0.386|1|11.327||32|7.827||32|14.642|0.167|1|15.054|0.426|1|11.208||32|7.656||32|14.493|0.168|1|15.044|0.485|1|11.102||32|7.5||32|15.543|0.198|0.055|15.643|0.638|0.177|12.675|1.242|0.344|9.992|2.915|0.809|||||||||||||||||||||||||||||0|||||||-0.176781902873504|0.704767790798027|0.687059327765872|223003021|
+J065629.75+432254.3|104.1239624|43.3817673|0.2525|0.5743|-0.0008|173.1978042|19.1153399|100.9127342|20.4760657|1898.691|641.805|1040143901111002626|1040p439_aa11-002626|1040p439_aa11|2626|15.399|0.049|22.1|1.10000002|15.489|0.154|7.1|0.901499987|12.769|||0.861699998|9.161|||0.960099995|0.952799976|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2000|ABUU|3|14|14|0|14|0|14|0|14|13.902|13.796|13.717|14.052|0.0|0.0|0.0|0.0|0||0||0||0||109.730003|4.95949984|16.396|3.554|0.0|40.2340012|5.70650005|45.136|4.423|0.0|-66.6699982|39.0320015|1883.21|23.027|0.0|-3.37870002|17.1650009|737.482|10.956|3.548|15.451|0.172|1|0.222|15.546|0.403|1|0.28|12.293||32|0.665|8.543||32|0.616|16.009|0.168|0|16.193|0.406|0|13.32||32|9.549||32|15.673|0.172|1|15.826|0.403|1|12.958||32|9.159||32|15.469|0.185|1|15.718|0.473|1|12.676||32|8.817||32|15.106|0.165|1|15.511|0.486|1|12.442||32|8.525||32|14.672|0.133|1|15.188|0.435|1|12.243||32|8.266||32|14.383|0.12|1|14.979|0.423|1|12.065||32|8.032||32|14.263|0.125|1|14.972|0.49|1|11.901||32|7.817||32|14.256|0.143|1|14.288||32|11.751||32|7.619||32|15.405|0.196|0.052|15.486|0.333|0.089||||||||||||||||||||||||||||||||389803045|0.112|30.5|1|15.856|0.059|15.469|0.099|15.361|0.149|-0.177352541641202|0.704822351561942|0.686856264958033|223003021|
+J065602.67+431748.2|104.0111389|43.2967491|0.3003|0.596|-0.0575|173.2532055|19.0094178|100.8349977|20.3830349|2113.471|419.172|1040143901111002651|1040p439_aa11-002651|1040p439_aa11|2651|15.477|0.056|19.5|0.767400026|15.553|0.156|7.0|0.896499991|12.438||0.8|1.06400001|8.619||1.3|0.926299989|0.909600019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|3000|ABUU|3|14|14|0|14|0|14|0|14|13.919|13.763|13.819|14.391|0.0|0.0|0.0|0.0|0||0||0||0||102.110001|5.23019981|15.762|3.319|0.0|37.9160004|5.45389986|44.572|4.25|0.0|29.4720001|38.2150002|1882.297|21.907|0.0|22.0170002|17.2539997|737.008|10.907|0.801|15.466|0.171|0|0.222|15.289||32|0.28|12.179||32|0.665|8.496||32|0.616|16.041|0.171|0|15.796||32|13.205||32|9.473||32|15.688|0.171|0|15.569||32|12.844||32|9.112||32|15.582|0.202|0|15.624||32|12.556||32|8.766||32|15.57|0.247|0|15.648||32|12.326||32|8.47||32|15.583|0.3|0|15.447||32|12.125||32|8.21||32|15.598|0.359|0|15.269||32|11.946||32|7.974||32|15.62|0.427|1|15.105||32|11.781||32|7.759||32|15.542|0.456|1|14.954||32|11.628||32|7.56||32|15.493|0.231|0.062|15.516|0.418|0.112|13.835|5.604|1.498|9.651|3.207|0.857||||||||||||||||||||||||||389803268|0.184|132.0|1|15.889|0.069|15.627|0.11|15.465|0.147|-0.176210866525915|0.706158308138855|0.685777058791453|223003021|
+J065652.70+432134.4|104.2195969|43.3595619|0.2713|0.5826|-0.041|173.2446725|19.1733538|100.9890003|20.4612071|1716.6|583.954|1040143901111002676|1040p439_aa11-002676|1040p439_aa11|2676|15.528|0.053|20.6|0.918500006|15.343|0.133|8.2|0.937099993|12.8|||0.996900022|8.654||1.3|1.08000004|0.978500009|1|0|0.0|0.0|0.0|0.0|0000|0000|0|2000|ABUU|3|14|14|3|14|0|14|0|14|14.597|14.777|14.963|14.844|0.0|0.0|0.0|0.0|0||0||0||0||97.4670029|4.73990011|15.469|3.15|1.086|46.0050011|5.62330008|44.649|4.67|0.254|-31.6709995|37.9210014|1882.451|22.201|0.0|21.0799999|16.8260002|736.46|10.241|0.0|15.421|0.109|1|0.222|15.336|0.263|1|0.28|11.985||32|0.665|8.303||32|0.616|16.088|0.117|1|16.079|0.285|1|13.027||32|9.273||32|15.643|0.109|1|15.616|0.263|1|12.65||32|8.919||32|15.392|0.113|1|15.319|0.26|1|12.362||32|8.616||32|15.178|0.114|1|15.003|0.241|1|12.129||32|8.337||32|14.973|0.113|1|14.704|0.219|1|11.931||32|8.089||32|14.796|0.114|1|14.444|0.204|1|11.749||32|7.851||32|14.645|0.115|1|14.231|0.195|1|11.584||32|7.597||32|14.51|0.117|1|14.073|0.194|1|11.43||32|7.311||32|15.536|0.224|0.06|15.306|0.475|0.127||||10.094|4.272|1.142||||||||||||||||||||||||||389809679|0.086|-15.6|1|16.692|0.143|15.864|0.143|15.734|0.194|-0.178594113782019|0.704783331594166|0.686574539310513|223003021|
+J065700.49+432054.1|104.2520599|43.348362|0.3175|0.6116|-0.0309|173.2642287|19.1918326|101.0153041|20.4525329|1654.722|554.776|1040143901111002726|1040p439_aa11-002726|1040p439_aa11|2726|15.679|0.058|18.6|0.859899998|16.509|0.36|3.0|0.879700005|12.717||0.1|1.02600002|9.211|0.487|2.2|0.926199973|0.917299986|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1000|ACUC|11|14|14|0|14|0|14|0|14|13.819|14.385|14.017|14.218|0.0|0.0|0.0|0.0|0||0||0||0||84.7669983|4.55719995|15.779|3.378|0.0|15.717|5.20429993|45.074|4.484|0.0|2.44729996|39.7290001|1881.953|23.003|0.0|32.7939987|14.6999998|736.175|10.093|2.209|15.679|0.174|0|0.222|15.54||32|0.28|12.026||32|0.665|7.704||32|0.616|16.268|0.173|0|16.142||32|13.145||32|8.923||32|15.901|0.174|0|15.82||32|12.691||32|8.32||32|15.778|0.2|1|15.684||32|12.46||32|8.582|0.476|17|15.742|0.24|1|15.593||32|12.369||32|8.308|0.485|17|15.66|0.268|1|15.461||32|12.245||32|8.148|0.532|17|15.477|0.267|1|15.281||32|12.065||32|7.237||32|15.289|0.261|1|15.115||32|11.899||32|7.098||32|15.173|0.27|1|14.963||32|11.746||32|6.94||32|15.677|0.135|0.036|16.456|1.101|0.294||||8.91|1.296|0.346||||||||||||||||||||||||||389809663|0.311|-125.4|1|16.51|0.118|15.715|0.111|15.61|0.19|-0.17902644268774|0.704812093638778|0.686432404158702|223003031|
+J065523.10+431248.5|103.8462601|43.2134781|0.3714|0.6399|-0.0804|173.2929799|18.8682137|100.7166709|20.287937|2428.175|201.611|1040143901111002751|1040p439_aa11-002751|1040p439_aa11|2751|15.856|0.065|16.6|0.915799975|16.164|0.276|3.9|0.996299982|12.632||0.1|0.893999994|9.21|0.514|2.1|0.873899996|0.915700018|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUC|11|12|13|0|14|0|13|0|14|12.88|13.752|13.383|13.837|0.0|0.0|0.0|0.0|0||0||0||0||72.0289993|4.3453002|15.853|3.318|0.0|21.6040001|5.49910021|45.167|4.45|0.605|6.01340008|41.2630005|1881.683|22.947|0.0|32.8180008|15.5509996|736.241|10.187|2.039|15.624|0.151|1|0.222|15.574||32|0.28|11.857||32|0.665|8.064||32|0.616|16.379|0.177|1|16.089||32|13.07||32|9.177||32|15.846|0.151|1|15.854||32|12.522||32|8.68||32|15.515|0.145|1|15.718||32|12.138||32|8.369||32|15.344|0.154|1|15.609||32|11.912||32|8.123||32|15.294|0.176|1|15.408||32|11.783||32|7.935||32|15.309|0.21|1|15.231||32|11.672||32|7.735||32|15.363|0.257|1|15.065||32|11.591||32|7.544||32|15.439|0.316|1|14.914||32|11.548||32|7.443||32|15.853|0.219|0.061|16.21|0.96|0.257|13.827|3.698|1.026|9.407|2.183|0.583|||||||||||||||||||||||||||||0|||||||-0.174416381543174|0.707629429230514|0.684718567541646|223003021|
+J065617.07+431547.2|104.0711288|43.263134|0.4429|0.6988|-0.0907|173.3022789|19.0391672|100.8850278|20.3540944|1999.137|331.159|1040143901111002776|1040p439_aa11-002776|1040p439_aa11|2776|15.969|0.077|14.0|0.764800012|16.2|0.309|3.5|0.783500016|12.668|||0.963800013|9.134||0.2|0.877200007|0.841899991|2|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|10|12|0|12|0|12|0|12|12.831|12.587|12.558|12.875|0.0|0.0|0.0|0.0|0||0||0||0||64.9410019|4.63170004|16.002|3.457|0.0|20.8880005|5.94910002|45.065|4.477|0.0|-14.5889997|42.8149986|1882.447|22.279|0.0|2.68989992|16.25|736.71|10.429|2.684|15.722|0.24|0|0.222|15.753|0.524|0|0.28|12.058||32|0.665|8.532||32|0.616|16.42|0.265|0|15.775||32|13.094||32|9.588||32|15.944|0.24|0|16.033|0.524|0|12.723||32|9.148||32|15.525|0.211|0|15.559|0.437|0|12.446||32|8.734||32|14.879|0.144|1|14.921|0.301|1|12.211||32|8.299||32|14.021|0.079|1|14.104|0.171|1|12.023||32|8.015||32|13.203|0.044|1|13.325|0.099|1|11.657||32|7.774||32|12.612|0.03|1|12.726|0.066|1|11.429||32|7.514||32|12.262|0.025|1|12.325|0.053|1|11.247||32|7.276||32|15.956|0.239|0.069|16.25|1.038|0.3||||14.871||||||||||||||||||||||||||||389803347|0.378|19.5|1|16.961|0.177|16.334|0.2|16.006|0.27|-0.177047921878891|0.706363572068214|0.685349937924707|223003021|
+J065550.83+431539.4|103.9618225|43.260952|0.4488|0.6863|-0.108|173.2759811|18.9635192|100.8008182|20.3437447|2207.542|325.523|1040143901111002801|1040p439_aa11-002801|1040p439_aa11|2801|15.967|0.075|14.4|0.977599978|16.381|0.365|3.0|0.951499999|12.656|||0.880400002|9.103|||0.97359997|0.939899981|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ACUU|3|11|12|1|12|0|12|0|12|11.848|11.762|11.904|11.961|0.0|0.0|0.0|0.0|0||0||0||0||65.0530014|4.50880003|16.333|3.666|0.0|17.6779995|5.94449997|45.169|5.242|0.0|-7.27920008|43.3009987|1882.682|23.206|3.38|-2.22930002|18.1119995|737.116|9.863|0.913|15.996|0.32|0|0.222|15.072||32|0.28|11.793||32|0.665|8.449||32|0.616|16.514|0.305|0|15.701||32|12.807||32|9.499||32|16.218|0.32|0|15.352||32|12.458||32|9.065||32|16.163|0.39|0|15.152||32|12.186||32|8.72||32|16.171|0.488|0|14.99||32|11.949||32|8.434||32|15.418||32|14.841||32|11.748||32|8.174||32|15.402||32|14.619||32|11.562||32|7.941||32|15.368||32|14.346||32|11.399||32|7.728||32|15.23||32|14.102||32|11.247||32|7.53||32|15.992|0.099|0.029|16.49|1.758|0.508||||||||||||||||||||||||||||||||389782650|0.278|110.4|1|16.341|0.096|15.83|0.131|15.882||-0.175706329211863|0.706725379116332|0.685322204796962|223003021|
+J065522.20+432138.6|103.8425293|43.3607407|0.4131|0.6726|-0.1002|173.1456153|18.9156898|100.6978418|20.4341629|2434.361|587.162|1040143901111002826|1040p439_aa11-002826|1040p439_aa11|2826|15.955|0.072|15.1|0.784300029|16.097|0.259|4.2|1.03299999|12.484||0.5|0.860899985|8.765||0.8|0.971199989|0.907500029|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|10|13|1|13|0|13|0|13|13.418|13.048|13.195|13.688|0.0|0.0|0.0|0.0|0||0||0||0||65.7409973|4.3670001|15.883|3.281|0.0|22.9659996|5.47790003|44.66|4.355|0.0|21.5179996|39.987999|1881.782|23.186|0.0|13.5240002|17.9629993|736.416|11.271|0.0|15.683|0.146|1|0.222|15.38||32|0.28|13.341||32|0.665|8.162||32|0.616|16.39|0.163|1|16.029||32|13.192||32|9.095||32|15.905|0.146|1|15.66||32|14.006||32|8.778||32|15.656|0.15|1|15.457||32|12.353||32|8.604||32|15.528|0.165|1|15.331||32|11.997||32|8.308||32|15.503|0.194|1|15.24||32|11.746||32|8.047||32|15.562|0.241|1|15.143||32|11.556||32|7.811||32|15.673|0.311|1|15.059||32|11.395||32|7.594||32|15.761|0.387|1|15.031||32|11.316||32|7.395||32|15.943|0.278|0.077|16.317|0.879|0.244|14.114|5.353|1.485|10.018|3.09|0.857|||||||||||||||||||||||||||||0|||||||-0.173948670912222|0.705929686027018|0.686589497643|223003021|
+J065625.96+431943.2|104.1082001|43.3286896|0.3666|0.6503|-0.0756|173.2466114|19.0866774|100.9064333|20.4220866|1928.581|502.826|1040143901111002851|1040p439_aa11-002851|1040p439_aa11|2851|15.907|0.069|15.8|0.835300028|15.905|0.22|4.9|0.8829|12.458||0.7|0.864099979|8.507||1.7|1.03199995|0.899200022|1|0|0.0|0.0|0.0|0.002|0000|0000|0|0000|ABUU|3|12|14|0|14|0|14|0|14|14.654|14.879|14.914|14.81|0.0|0.0|0.0|0.0|0||0||0||0||68.7549973|4.34130001|16.335|3.455|0.931|27.4179993|5.54920006|45.072|4.54|0.0|27.4230003|38.2389984|1883.661|22.119|2.473|29.066|16.8209991|736.794|10.617|0.0|15.933|0.292|1|0.222|15.741|0.531|1|0.28|11.861||32|0.665|7.851||32|0.616|16.526|0.293|1|15.718||32|13.037||32|9.015||32|16.155|0.292|1|16.021|0.531|1|12.526||32|8.467||32|15.963|0.318|1|15.745|0.535|1|12.091||32|8.102||32|15.777|0.331|1|14.811||32|11.736||32|7.801||32|15.621|0.344|1|14.693||32|11.436||32|7.549||32|15.504|0.365|1|14.626||32|11.199||32|7.336||32|15.324|0.36|1|14.535||32|11.019||32|7.163||32|14.975|0.3|1|14.311||32|10.875||32|7.02||32|15.864|0.147|0.039|15.739|0.409|0.109|13.785|4.763|1.273|9.445|1.613|0.431||||||||||||||||||||||||||389803193|0.88|-10.5|1|16.378|0.102|15.882|0.151|15.643|0.185|-0.177313657619401|0.705487910746665|0.686182683118669|223003021|
+J065655.65+431803.1|104.2318802|43.3008728|0.385|0.654|-0.0478|173.3063756|19.162066|101.0050163|20.4037703|1692.868|430.355|1040143901111002876|1040p439_aa11-002876|1040p439_aa11|2876|16.016|0.071|15.3|0.947899997|15.864|0.197|5.5|0.939999998|12.564||0.4|1.00800002|9.234|0.523|2.1|1.05299997|0.982299984|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUC|11|12|14|1|14|0|14|1|14|14.77|14.836|14.78|14.859|0.0|0.0|0.0|0.0|0||0||0||0||62.1489983|4.06559992|15.993|3.347|0.659|28.4720001|5.16289997|44.83|4.231|0.724|16.9230003|38.6720009|1882.493|21.539|0.0|32.0820007|15.4639997|737.171|10.429|4.424|16.18|0.354|0|0.222|15.004||32|0.28|12.121||32|0.665|8.29||32|0.616|16.673|0.326|0|15.705||32|15.07||32|9.367||32|16.402|0.354|0|15.284||32|12.786||32|8.906||32|16.36|0.442|0|15.043||32|12.502||32|8.651||32|15.596||32|14.904||32|12.267||32|9.22||32|15.468||32|14.803||32|12.068||32|8.324||32|15.324||32|14.665||32|11.889||32|8.087||32|15.171||32|14.501||32|11.723||32|7.871||32|15.009||32|14.369||32|11.571||32|7.67||32|16.019|0.249|0.067|15.885|0.791|0.211|13.293|2.92|0.781|9.972|3.83|1.024||||||||||||||||||||||||||389809553|0.295|-167.1|1|16.651|0.141|16.241|0.189|15.568||-0.178918006982693|0.705426344228058|0.685829439180309|223003021|
+J065522.96+431422.0|103.8457031|43.2394562|0.5442|0.7677|-0.1249|173.267016|18.8766657|100.7134291|20.3137397|2429.085|269.625|1040143901111002926|1040p439_aa11-002926|1040p439_aa11|2926|16.337|0.094|11.6|0.841799974|16.005|0.247|4.4|0.890799999|12.703|||0.942799985|9.11|||0.985499978|0.910600007|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|8|13|1|13|0|13|0|13|13.621|12.962|12.974|13.781|0.0|0.0|0.0|0.0|0||0||0||0||46.2700005|3.98979998|15.958|3.396|0.0|25.0079994|5.67819977|44.965|4.61|1.099|-0.834240019|41.4920006|1881.967|23.285|0.0|-9.72859955|17.9860001|736.565|11.032|5.279|16.075|0.273|1|0.222|14.934||32|0.28|12.148||32|0.665|8.574||32|0.616|16.761|0.3|1|15.667||32|13.174||32|9.62||32|16.297|0.273|1|15.214||32|12.813||32|9.19||32|15.979|0.265|1|15.628|0.536|1|12.525||32|8.852||32|15.626|0.238|1|15.298|0.489|1|12.292||32|8.562||32|15.265|0.205|1|14.966|0.433|1|12.092||32|8.306||32|14.972|0.184|1|14.702|0.401|1|11.911||32|8.076||32|14.779|0.179|1|14.56|0.408|1|11.748||32|7.864||32|14.653|0.184|1|14.515|0.45|1|11.595||32|7.507||32|16.34|0.257|0.071|16.051|1.231|0.341|||||||||||||||||||||||||||||||||||0|||||||-0.174335190337373|0.707329618982326|0.685048940967249|223003021|
+J065613.56+431047.3|104.0565262|43.179821|0.6705|0.8758|-0.156|173.3814157|19.000999|100.882898|20.2701283|2026.951|113.043|1040143901111002951|1040p439_aa11-002951|1040p439_aa11|2951|16.363|0.114|9.6|0.737800002|16.225||1.4|0.921700001|12.436||0.4|0.89139998|9.14|||0.899299979|0.857599974|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BUUU|1|4|12|0|12|0|12|0|12|11.811|11.726|11.599|11.716|0.0|0.0|0.0|0.0|0||0||0||0||45.1759987|4.72900009|16.143|3.394|0.0|8.29160023|6.05880022|45.303|4.351|0.0|17.6580009|44.2150002|1881.963|22.125|0.0|-12.5640001|17.4950008|737.355|10.881|1.332|16.384|0.347|1|0.222|15.833||32|0.28|11.617||32|0.665|8.251||32|0.616|16.93|0.342|0|16.449||32|12.763||32|9.422||32|16.606|0.347|1|16.113||32|12.282||32|8.867||32|16.592|0.443|1|15.835||32|11.929||32|8.429||32|15.901||32|15.605||32|11.684||32|8.194||32|15.839||32|15.401||32|11.499||32|7.959||32|15.771||32|15.224||32|11.309||32|7.726||32|15.726||32|15.057||32|11.1||32|7.537||32|15.666||32|14.908||32|10.939||32|7.358||32|16.376|0.321|0.093|17.157|3.013|0.87|14.344|8.571|2.474|||||||||||||||||||||||||||||389803536|0.636|143.0|1|16.855|0.168|15.98|0.157|15.613||-0.177109745824109|0.707374642537163|0.684290328025715|223003021|
+J065629.59+432541.3|104.1233063|43.4281578|0.5857|0.8219|-0.0114|173.1513952|19.1304944|100.9070959|20.522157|1900.054|763.263|1040143901111002976|1040p439_aa11-002976|1040p439_aa11|2976|16.47|0.104|10.4|0.761600018|16.387|0.334|3.3|0.936999977|12.641||0.1|1.04799998|8.715||1.0|0.983399987|0.925400019|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|7|13|0|13|0|13|0|13|13.76|13.866|13.148|13.645|0.0|0.0|0.0|0.0|0||0||0||0||40.9440002|3.92090011|16.334|3.307|0.678|17.5799999|5.4066|44.63|4.331|0.0|2.71289992|42.5439987|1882.942|21.934|3.75|16.7140007|17.5149994|737.045|11.479|0.0|16.162|0.213|1|0.222|15.498||32|0.28|12.166||32|0.665|8.539||32|0.616|16.853|0.236|0|16.112||32|13.194||32|9.585||32|16.384|0.213|1|15.778||32|12.831||32|9.155||32|16.118|0.215|1|15.561||32|12.553||32|8.813||32|15.845|0.209|1|15.288||32|12.316||32|8.522||32|15.496|0.181|1|14.959||32|12.122||32|8.265||32|15.179|0.161|1|14.673||32|11.94||32|8.031||32|14.965|0.153|1|14.477||32|11.779||32|7.816||32|14.812|0.153|1|14.353||32|11.628||32|7.618||32|16.54|0.305|0.084|16.325|0.899|0.249||||9.851|4.953|1.374|||||||||||||||||||||||||||||0|||||||-0.177208712773619|0.704284836675696|0.68744450026588|223003021|
+J065523.56+432441.3|103.8481827|43.4114799|0.5949|0.8294|-0.1391|173.0966295|18.9367656|100.6967022|20.485057|2423.285|719.981|1040143901111003001|1040p439_aa11-003001|1040p439_aa11|3001|16.439|0.106|10.2|0.936800003|16.414|0.339|3.2|0.974099994|12.661|0.492|2.2|0.946500003|8.809||0.6|1.02400005|0.965900004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABCU|7|4|14|0|14|0|14|0|14|14.748|14.464|14.81|14.687|0.0|0.0|0.0|0.0|0||0||0||0||42.1150017|4.13040018|16.076|3.48|0.0|17.1560001|5.35739994|44.852|4.39|0.0|86.2490005|39.0660019|1882.023|22.71|0.0|10.9860001|18.2390003|736.415|10.779|1.793|15.976|0.306|0|0.222|15.328||32|0.28|11.969||32|0.665|8.094||32|0.616|16.776|0.374|0|16.073||32|12.975||32|9.223||32|16.198|0.306|0|15.608||32|12.634||32|8.71||32|15.856|0.289|0|15.279||32|12.447||32|8.398||32|15.649|0.297|0|15.035||32|12.327||32|8.142||32|15.511|0.313|0|14.914||32|12.16||32|7.843||32|15.416|0.34|1|14.872||32|11.865||32|7.58||32|15.365|0.376|1|14.88||32|11.521||32|7.384||32|15.309|0.412|1|14.912||32|11.217||32|7.214||32|16.465|0.487|0.13|16.461|1.283|0.343|12.987|1.49|0.398|13.854|||||||||||||||||||||||||||||||0|||||||-0.173872726538511|0.705321895013857|0.687233075004489|223003023|
+J065619.27+431740.5|104.0803223|43.29459|0.5326|0.7827|-0.0983|173.2733431|19.0560839|100.8886666|20.3860732|1981.648|413.518|1040143901111003026|1040p439_aa11-003026|1040p439_aa11|3026|16.417|0.098|11.0|0.947799981|15.867|0.209|5.2|1.00800002|12.109||1.5|0.886300027|8.63||1.7|1.01699996|0.960699975|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|7|13|3|13|0|13|0|13|13.445|13.356|13.436|13.839|0.0|0.0|0.0|0.0|0||0||0||0||42.9560013|3.89199996|15.935|3.255|0.0|28.4009991|5.47179985|44.777|4.488|0.0|62.019001|40.6710014|1883.44|22.222|0.0|26.0259991|14.9809999|736.789|10.385|0.0|16.252|0.264|1|0.222|15.828|0.449|1|0.28|11.954||32|0.665|8.42||32|0.616|16.86|0.269|1|16.627|0.519|1|14.494||32|9.449||32|16.474|0.264|1|16.108|0.449|1|12.619||32|9.036||32|16.358|0.308|1|15.71|0.405|1|12.333||32|8.658||32|16.292|0.358|1|15.363|0.364|1|12.104||32|8.424||32|16.149|0.38|1|15.15|0.361|1|11.898||32|8.224||32|15.976|0.382|1|15.054|0.389|1|11.717||32|11.346||32|15.822|0.386|1|14.999|0.43|1|11.554||32|7.88||32|15.712|0.401|1|14.918|0.46|1|11.401||32|7.684||32|16.416|0.283|0.078|15.903|1.324|0.367|13.037|1.718|0.476|9.498|1.591|0.441|||||||||||||||||||||||||||||0|||||||-0.177069695431367|0.705970088128051|0.68574963188347|223003021|
+J065541.50+432301.5|103.9229279|43.3837585|0.6396|0.8644|-0.1032|173.1436602|18.9784744|100.7573878|20.4630139|2281.226|647.126|1040143901111003051|1040p439_aa11-003051|1040p439_aa11|3051|16.701|0.12|9.0|0.909300029|15.763|0.201|5.4|0.879199982|12.235||1.1|0.8495|8.816||1.0|1.00600004|0.907299995|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BBUU|3|4|13|2|13|0|12|0|13|13.293|13.801|12.895|13.277|0.0|0.0|0.0|0.0|0||0||0||0||33.0769997|3.65630007|16.273|3.306|0.0|31.2509995|5.79360008|44.988|4.167|0.0|43.9980011|41.848999|1883.068|22.122|0.0|15.2980003|15.941|736.901|10.173|0.0|16.472|0.394|0|0.222|15.642|0.425|0|0.28|13.213||32|0.665|8.238||32|0.616|17.109|0.413|0|16.414|0.479|0|12.933||32|9.364||32|16.694|0.394|0|15.922|0.425|0|13.878||32|8.854||32|16.479|0.417|0|15.743|0.465|0|12.41||32|8.482||32|16.246|0.419|0|15.572|0.494|0|12.175||32|8.079||32|15.915|0.371|0|15.306|0.465|0|11.976||32|7.763||32|15.441|0.283|0|14.945|0.394|0|11.796||32|7.589||32|14.853|0.192|1|14.462|0.293|1|11.634||32|7.421||32|14.172|0.118|1|13.843|0.191|1|11.48||32|7.283||32|16.711|0.388|0.108|15.744|0.776|0.215|13.469|4.18|1.207|9.93|3.843|1.066|||||||||||||||||||||||||||||0|||||||-0.174872691313664|0.705417121628196|0.686881522787232|223003021|
+J065519.56+431059.3|103.8315201|43.1831398|0.5729|0.783|-0.0965|173.3192626|18.8477868|100.7085555|20.2566653|2456.502|122.254|1040143901111003076|1040p439_aa11-003076|1040p439_aa11|3076|16.466|0.096|11.3|1.00100005|16.689|0.403|2.7|0.930800021|12.667|0.492|2.2|0.850399971|9.213|||0.854799986|0.905600011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ACCU|7|7|15|0|15|0|15|0|15|14.887|14.835|14.839|14.866|0.0|0.0|0.0|0.0|0||0||0||0||41.0600014|3.63910007|15.622|3.262|0.0|13.3129997|4.9394002|44.872|4.389|0.0|85.7699966|38.8880005|1882.361|23.323|0.0|-8.47439957|16.3579998|736.377|10.844|1.191|16.269|0.283|1|0.222|15.413||32|0.28|11.72||32|0.665|8.621||32|0.616|16.967|0.312|1|16.171||32|12.859||32|9.668||32|16.491|0.283|1|15.693||32|12.385||32|9.237||32|16.245|0.292|1|15.39||32|12.061||32|8.891||32|16.079|0.311|1|15.163||32|11.873||32|8.599||32|15.891|0.313|1|14.919||32|11.816||32|8.341||32|15.675|0.303|1|14.682||32|11.859||32|8.106||32|15.543|0.313|1|14.549||32|11.927||32|7.892||32|15.546|0.36|1|14.489||32|11.777||32|7.694||32|16.549|0.365|0.094|16.633|1.609|0.415|12.602|1.311|0.338||||||||||||||||||||||||||||||||0|||||||-0.174320982052796|0.708026224699673|0.684332565609497|223003021|
+J065652.39+432211.3|104.2183304|43.3698311|0.6442|0.888|-0.0925|173.2341036|19.1759331|100.9868797|20.4713243|1719.059|610.836|1040143901111003126|1040p439_aa11-003126|1040p439_aa11|3126|16.768|0.129|8.4|1.03299999|15.713|0.18|6.0|0.961799979|12.557||0.4|0.945500016|9.266|||0.936600029|0.964399993|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BBUU|3|2|14|2|14|0|14|0|14|13.803|13.892|13.93|14.105|0.0|0.0|0.0|0.0|0||0||0||0||31.1049995|3.70440006|15.933|3.128|0.0|32.7150002|5.41790009|44.951|4.591|0.0|17.2980003|38.7869987|1882.684|22.28|0.0|-2.34139991|15.5780001|736.76|10.973|0.0|16.549|0.514|0|0.222|15.43|0.388|0|0.28|11.904||32|0.665|8.617||32|0.616|17.136|0.519|0|16.251|0.46|0|13.023||32|9.658||32|16.771|0.514|0|15.71|0.388|0|12.569||32|9.233||32|15.854||32|15.481|0.405|1|12.127||32|8.899||32|15.659||32|15.355|0.444|1|11.722||32|8.62||32|15.428||32|15.21|0.47|1|11.322||32|8.371||32|15.209||32|15.06|0.483|1|11.579|0.408|1|9.015||32|15.04||32|14.947|0.507|1|11.242|0.348|1|7.866||32|14.934||32|14.143||32|11.053|0.336|1|7.66||32|16.768|0.579|0.155|15.698|0.854|0.228|14.343|7.683|2.053||||||||||||||||||||||||||||||||0|||||||-0.178548307288071|0.704667981757165|0.686704840124815|223003031|
+J065657.94+431526.1|104.2414169|43.2572517|0.5383|0.7735|-0.0862|173.3523399|19.1539529|101.0172388|20.3611119|1674.426|316.195|1040143901111003151|1040p439_aa11-003151|1040p439_aa11|3151|16.389|0.096|11.3|0.845000029|16.403|0.326|3.3|1.03999996|12.539||0.4|0.760299981|8.617||1.3|0.985499978|0.904900014|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|ABUU|3|8|14|1|14|0|14|0|14|13.843|13.896|13.191|14.114|0.0|0.0|0.0|0.0|0||0||0||0||44.0999985|3.88619995|15.464|3.233|0.186|17.3250008|5.20410013|44.808|4.407|0.491|16.2000008|40.1310005|1882.289|22.241|0.0|22.427|17.1189995|736.848|9.522|0.0|15.718|0.176|1|0.222|15.678|0.366|1|0.28|11.76||32|0.665|8.027||32|0.616|16.649|0.241|0|16.065||32|12.966||32|9.273||32|15.94|0.176|1|15.958|0.366|1|12.425||32|8.643||32|15.261|0.122|1|15.065|0.21|1|11.94||32|8.176||32|14.545|0.079|1|14.275|0.126|1|12.204|0.509|1|8.601|0.534|1|13.902|0.053|1|13.665|0.086|1|11.628|0.359|1|7.627||32|13.406|0.039|1|13.238|0.069|1|11.196|0.284|1|7.489||32|13.082|0.034|1|12.968|0.063|1|10.893|0.249|1|7.434||32|12.902|0.033|1|12.815|0.062|1|10.692|0.237|1|7.406||32|16.38|0.299|0.08|16.64|1.244|0.332|14.139|6.686|1.787|9.238|1.659|0.443|||||||||||||||||||||||||||||0|||||||-0.179163820168373|0.705902446775283|0.685275171868457|223003021|
+J065634.05+431806.6|104.1419144|43.3018456|0.5774|0.8376|-0.106|173.2821015|19.1007329|100.9354325|20.3979277|1864.291|432.611|1040143901111003176|1040p439_aa11-003176|1040p439_aa11|3176|16.505|0.104|10.5|0.921000004|16.271||1.8|0.961700022|12.394||0.9|0.890299976|9.214|||1.15600002|0.977400005|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|AUUU|1|6|14|0|14|0|14|0|14|14.066|14.484|13.683|14.288|0.0|0.0|0.0|0.0|0||0||0||0||39.6279984|3.78830004|16.109|3.492|0.0|9.36400032|5.10010004|44.899|4.608|0.539|33.1100006|38.5979996|1883.688|22.606|0.0|-7.62820005|16.3439999|736.784|10.24|4.156|16.883|0.508|0|0.222|15.934||32|0.28|11.926||32|0.665|8.457||32|0.616|17.243|0.415|0|16.984||32|13.101||32|9.508||32|17.105|0.508|0|16.214||32|12.591||32|9.073||32|16.392||32|15.932||32|12.202||32|8.58||32|16.523||32|15.699||32|11.931||32|8.137||32|16.464||32|15.493||32|11.773||32|7.793||32|16.281||32|15.31||32|11.676||32|7.444||32|16.116||32|15.144||32|11.601||32|7.165||32|15.961||32|14.99||32|11.538||32|7.002||32|16.513|0.399|0.107|16.713|1.26|0.337|12.768|0.742|0.198||||||||||||||||||||||||||||||||0|||||||-0.177807281798011|0.70569511984121|0.685841795439665|223003021|
+J065700.09+432505.0|104.2504044|43.4180679|0.7614|0.9889|-0.1503|173.1942591|19.2140646|101.0062481|20.5217311|1658.322|737.254|1040143901111003201|1040p439_aa11-003201|1040p439_aa11|3201|16.748|0.131|8.3|0.847599983|16.495||1.0|1.00600004|12.14||1.4|1.08700001|8.843||0.8|0.973699987|0.97390002|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BUUU|1|5|13|0|13|0|13|0|13|13.798|13.737|13.844|13.708|0.0|0.0|0.0|0.0|0||0||0||0||31.6690006|3.80749989|15.891|3.36|0.578|5.36289978|5.27689981|44.625|4.032|0.596|57.4949989|40.8860016|1882.452|21.273|0.0|13.4449997|16.2859993|736.928|10.146|1.153|16.288|0.29|0|0.222|15.388||32|0.28|11.344||32|0.665|7.845||32|0.616|17.09|0.354|0|16.139||32|12.571||32|9.076||32|16.51|0.29|0|15.668||32|12.009||32|8.461||32|16.047|0.245|1|15.342||32|12.325|0.533|0|7.994||32|15.619|0.205|1|15.048||32|11.998|0.489|1|8.416|0.528|17|15.25|0.176|1|14.766||32|11.841|0.511|1|7.486||32|14.921|0.153|1|15.227|0.516|1|10.991||32|7.341||32|14.6|0.133|1|14.874|0.434|1|10.902||32|7.193||32|14.32|0.118|1|14.532|0.364|1|10.816||32|7.032||32|16.766|0.518|0.144|17.857|3.926|1.089|13.716|4.008|1.112|10.179|4.54|1.259|||||||||||||||||||||||||||||0|||||||-0.178800374138676|0.704007329881298|0.687316597850856|223003031|
+J065659.28+431054.0|104.2470093|43.1816826|0.709|0.9241|-0.1672|173.4291276|19.1323884|101.029972|20.2863809|1663.283|118.38|1040143901111003251|1040p439_aa11-003251|1040p439_aa11|3251|16.582|0.12|9.1|0.990100026|16.793|||0.873000026|12.698|||0.956499994|8.985||0.2|0.925199986|0.931100011|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BUUU|1|5|13|0|13|0|12|0|13|12.875|12.634|11.872|12.826|0.0|0.0|0.0|0.0|0||0||0||0||36.9140015|4.06839991|16.101|3.519|0.0|-1.18770003|6.04909992|44.918|4.363|0.0|-30.5510006|41.6769981|1881.785|22.113|0.0|3.38700008|18.4860001|736.697|10.592|0.0|16.595|0.416|1|0.222|15.785||32|0.28|12.194||32|0.665|7.964||32|0.616|17.182|0.418|1|16.426||32|13.216||32|9.157||32|16.817|0.416|1|16.065||32|12.859||32|8.58||32|16.533|0.416|1|15.607||32|12.509||32|8.201||32|16.092|0.343|1|15.031||32|12.068||32|7.956||32|15.634|0.272|1|15.29|0.516|1|11.703||32|7.747||32|15.341|0.245|1|14.913|0.43|1|11.456||32|7.541||32|15.213|0.253|1|14.805|0.452|1|11.317||32|7.338||32|15.161|0.278|1|14.84|0.537|1|11.301||32|7.152||32|16.48|0.237|0.066|||||||13.859|||||||||||||||||||||||||||||||0|||||||-0.179454998458069|0.706760373069436|0.68431402045199|223003021|
+J065535.47+431310.8|103.8978043|43.2196732|0.9195|1.0801|-0.1531|173.3003139|18.9056473|100.7558415|20.2979195|2329.802|217.62|1040143901111003301|1040p439_aa11-003301|1040p439_aa11|3301|16.897|0.148|7.3|0.941900015|16.785||0.2|0.782299995|12.19||1.1|1.005|8.638||1.2|0.899399996|0.900699973|1|0|0.0|0.0|0.0|0.0|0000|0000|0|0000|BUUU|1|2|13|0|13|0|13|0|13|13.062|13.353|12.224|13.363|0.0|0.0|0.0|0.0|0||0||0||0||27.6159992|3.7586|15.743|3.21|1.078|0.991060019|5.59899998|45.038|4.146|0.0|48.0040016|42.5060005|1882.474|22.737|0.0|21.3190002|17.1350002|736.66|9.844|0.0|15.974||32|0.222|15.571||32|0.28|11.949||32|0.665|7.868||32|0.616|16.575||32|16.319||32|12.917||32|8.99||32|16.196||32|15.851||32|12.614||32|8.484||32|15.913||32|15.454||32|12.332||32|8.155||32|16.259|0.47|1|15.041||32|12.1||32|7.925||32|15.618|0.314|1|15.327|0.515|1|11.902||32|7.758||32|14.894|0.19|1|14.654|0.327|1|11.514||32|7.582||32|14.226|0.12|1|14.047|0.218|1|11.185||32|7.358||32|13.663|0.082|1|13.551|0.159|1|10.92||32|7.139||32|16.901|0.505|0.14|21.486|||13.308|3.695|1.025|10.092|5.289|1.467|||||||||||||||||||||||||||||0|||||||-0.175035122054335|0.707400363209168|0.684797365779805|223003021|
+J065427.10+431310.3|103.6129532|43.2195511|0.0836|0.5062|-0.0144|173.2256644|18.7104643|100.5356731|20.276866|2873.279|219.216|1040143901111003426|1040p439_aa11-003426|1040p439_aa11|3426|10.879|0.025|44.2|11.8400002|10.936|0.022|49.8|4.76100016|10.851|0.104|10.4|0.971599996|8.789||0.4|0.974399984|4.80600023|2|0|0.0|0.0|0.0|0.0|0000|0000|1|0100|AAAU|7|13|13|13|13|5|12|0|12|14.662|14.436|13.525|13.549|0.0|0.0|0.0|0.0|0||0||0||0||7054.2002|159.440002|15.824|3.307|0.0|2665.19995|53.5410004|44.7|4.129|0.0|456.619995|43.8569984|1882.624|22.04|0.0|8.22700024|20.059|737.216|10.622|2.32|10.869|0.006|1|0.222|10.925|0.008|1|0.28|10.822|0.171|1|0.665|8.452||32|0.616|11.516|0.006|0|11.684|0.009|0|12.095|0.211|0|9.507||32|11.091|0.006|1|11.205|0.008|1|11.487|0.171|1|9.068||32|10.91|0.006|1|10.996|0.008|1|11.177|0.166|1|8.723||32|10.826|0.006|1|10.896|0.008|1|11.027|0.18|1|8.43||32|10.782|0.006|1|10.842|0.009|1|10.982|0.209|1|8.168||32|10.751|0.006|1|10.808|0.01|1|11.016|0.255|1|7.932||32|10.731|0.007|1|10.787|0.011|1|11.105|0.323|1|7.716||32|10.718|0.007|1|10.774|0.012|1|11.242|0.422|1|7.516||32|10.879|0.037|0.01|10.936|0.015|0.004|10.851|0.221|0.064|9.706|1.808|0.522||||||||||||||||||||||||||389755285|0.375|-102.8|1|11.335|0.022|11.083|0.021|11.019|0.02|-0.171516412602795|0.708263238465682|0.684795812812821|223003023|
+J065358.21+431532.6|103.4925461|43.2590561|0.0926|0.509|-0.0055|173.1547451|18.6416094|100.4384295|20.3074579|3102.32|324.008|1040143901111003451|1040p439_aa11-003451|1040p439_aa11|3451|12.703|0.025|44.2|1.72800004|12.745|0.028|38.9|1.11399996|12.086||1.5|0.881799996|8.972||0.1|0.883300006|1.15400004|1|0|0.0|0.0|0.0|0.0|0000|0000|0|1100|AAUU|3|13|13|12|12|1|12|0|12|12.929|13.845|12.63|12.393|0.0|0.0|0.0|0.0|0||0||0||0||1315.09998|29.7870007|16.036|3.427|0.0|503.380005|12.9460001|44.875|4.225|0.0|61.8880005|42.2910004|1884.438|22.959|0.0|2.31839991|19.2630005|737.263|10.797|0.0|12.738|0.016|0|0.222|12.786|0.033|0|0.28|11.679||32|0.665|8.54||32|0.616|13.326|0.016|0|13.505|0.036|0|12.836||32|9.581||32|12.96|0.016|0|13.066|0.033|0|12.344||32|9.156||32|12.833|0.018|1|12.903|0.037|1|11.918||32|8.815||32|12.785|0.02|1|12.848|0.043|1|11.585||32|8.525||32|12.759|0.024|1|12.828|0.051|1|11.351||32|8.269||32|12.732|0.027|1|12.815|0.059|1|11.176||32|8.036||32|12.698|0.03|1|12.793|0.067|1|11.024||32|7.822||32|12.658|0.033|1|12.76|0.075|1|10.903||32|7.624||32|12.702|0.037|0.01|12.736|0.044|0.013|14.009|5.651|1.631|||||||||||||||||||||||||||||389748939|0.358|-5.5|1|13.362|0.023|12.883|0.029|12.78|0.026|-0.169917414949627|0.708162817712711|0.685298107181123|223003023|
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.flatcorr.dvo
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.flatcorr.dvo	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.flatcorr.dvo	(revision 34041)
@@ -0,0 +1,563 @@
+# -*-sh-*-
+
+# relphot can apply a flat-field correction to each image (image->photom_map_id specifies the correction to use)
+# we would like to test that the flat-field is correctly included in the analysis 
+
+# define a flat-field correction
+# write a fake flat-field correction file in the right format
+# create a set of cmf files with the flat-field correction applied
+# load cmfs into DVO 
+# apply the flat-field correction with setphot?
+
+# problems: 
+# * setphot only applies the very-specific ubercal flat-corrections (including specific MJD ranges for different corrections)
+# * no other mechanism to tell DVO about a flat-field correction
+
+input tap.dvo
+
+# set globals
+if (not($?PLOT)) set PLOT = 0 
+
+# set various global variables
+macro init
+  $RA_CENTER = 10.0
+  $DEC_CENTER = 20.0
+  $PLATE_SCALE = 0.25
+  $NSEASON = 3
+  $NFILTER = 3
+  $NCHIP_X = 2
+  $NCHIP_Y = 2
+  $NCELL_X = 2
+  $NCELL_Y = 2
+  $CHIP_DX = 1000
+  $CHIP_DY = 1000
+
+  # images are loaded into dvo with GPC1 photcodes, so we need to get the nominal zps for those filters
+  $zpt_nominal:g = 24.58
+  $zpt_nominal:r = 24.80
+  $zpt_nominal:i = 24.74
+  $zpt_nominal:z = 24.26
+  $zpt_nominal:y = 23.41
+
+  # klam is negative, so klam*(airmass - 1) increase the zero point
+  $klam_nominal:g = -0.15
+  $klam_nominal:r = -0.10
+  $klam_nominal:i = -0.04
+  $klam_nominal:z = -0.03
+  $klam_nominal:y = -0.03
+
+  # we have two sets of images: ubercaled and not-ubercaled
+
+  # sequence to count images (only used in this function)
+  create tmpseq 0 9
+
+  $filt_uc:n = 9
+  $filt_uc:0 = g
+  $filt_uc:1 = g
+  $filt_uc:2 = g
+  $filt_uc:3 = r
+  $filt_uc:4 = r
+  $filt_uc:5 = r
+  $filt_uc:6 = i
+  $filt_uc:7 = i
+  $filt_uc:8 = i
+
+  # airmass slopes for these sequnece
+  set klam_uc = zero(tmpseq)
+  for i 0 tmpseq[]
+    klam_uc[$i] = $klam_nominal:$filt_uc:$i
+  end    
+
+  # mjd and zpt values for ubercal'ed imaged
+  set exptime_uc = 10.0 + zero(tmpseq)
+  set airmass_uc = 1.3 + zero(tmpseq)
+
+  # ubercal zero points are defined as ZP_nominal + 2.5log(exptime) + K*(airmass - 1.0)
+  # note that K is defined as a negative value (is this sensible?)
+  set zpt_uc = 25.0 + 2.5*log(exptime_uc) + klam_uc*(airmass_uc - 1.0) + tmpseq*0.0050 - 0.0025
+
+  set mjd_uc = zero(zpt_uc)
+  mjd_uc[0] = 55000.01
+  mjd_uc[1] = 55000.02
+  mjd_uc[2] = 55000.03
+  mjd_uc[3] = 55015.01
+  mjd_uc[4] = 55015.02
+  mjd_uc[5] = 55015.03
+  mjd_uc[6] = 55025.01
+  mjd_uc[7] = 55025.02
+  mjd_uc[8] = 55025.03
+
+  # mjd and zpt values for not-ubercal'ed images
+  $filt_nc:n = 9
+  $filt_nc:0 = g
+  $filt_nc:1 = g
+  $filt_nc:2 = g
+  $filt_nc:3 = r
+  $filt_nc:4 = r
+  $filt_nc:5 = r
+  $filt_nc:6 = i
+  $filt_nc:7 = i
+  $filt_nc:8 = i
+
+  # airmass slopes for these sequnece
+  set klam_nc = zero(tmpseq)
+  for i 0 tmpseq[]
+    klam_nc[$i] = $klam_nominal:$filt_nc:$i
+  end    
+
+  # place this within a valid season (55000.0 - 55010.0 - 55020.0 - 55030.0)
+  set exptime_nc = 15.0 + zero(tmpseq)
+  set airmass_nc = 1.6 + zero(tmpseq)
+
+  # ubercal zero points are defined as ZP_nominal + 2.5log(exptime) + K*(airmass - 1.0)
+  set zpt_nc = 25.0 + 2.5*log(exptime_nc) + klam_nc*(airmass_nc - 1.0) - tmpseq*0.0050 + 0.0025
+
+  set mjd_nc = zero(zpt_nc)
+  mjd_nc[0] = 55000.11
+  mjd_nc[1] = 55000.12
+  mjd_nc[2] = 55000.13
+  mjd_nc[3] = 55015.11
+  mjd_nc[4] = 55015.12
+  mjd_nc[5] = 55015.13
+  mjd_nc[6] = 55025.11
+  mjd_nc[7] = 55025.12
+  mjd_nc[8] = 55025.13
+end
+
+macro go
+  if ($0 != 3)
+    echo "go (fileroot) (catdir)"
+    break
+  end
+
+  local i fileroot rootdir catdir
+
+  $fileroot = $1
+  $catdir = $2
+
+  dirname $1 -var rootdir
+  mkdir $rootdir
+
+  exec rm -rf $catdir
+
+  init
+  mkzptfile
+  mkstars 500
+
+  tapPLAN {((mjd_uc[]*4 + mjd_nc[]*4) + (mjd_uc[] + mjd_nc[]) + (mjd_uc[] + mjd_nc[])) / 3}
+
+  # generate the basic images and check they were correctly ingested by dvo
+  mksequence $fileroot $catdir
+  for i 0 mjd_uc[] 3
+    ckexposure catdir.test mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i raw
+  end
+  for i 0 mjd_nc[] 3
+    ckexposure catdir.test mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i raw
+  end
+
+  # run setphot on the db and check that the images now match the expected values
+  exec setphot -update -ubercal testzpt.fits -D CATDIR $catdir
+  for i 0 mjd_uc[] 3
+    ckexposure catdir.test mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i setphot_uc
+  end
+  for i 0 mjd_nc[] 3
+    ckexposure catdir.test mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i setphot_nc
+  end
+
+  # run relphot on the db and check that the images now match the expected values
+  exec relphot g,r,i -v -region 9.5 10.5 19.5 20.5 -D CATDIR catdir.test -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update >& tmp.log
+  for i 0 mjd_uc[] 3
+    ckexposure catdir.test mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i relphot
+  end
+  for i 0 mjd_nc[] 3
+    ckexposure catdir.test mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i relphot
+  end
+
+  tapDONE
+end
+
+# go testdata/t1 catdir.test
+# ckexposure catdir.test mjd_uc[0] zpt_uc[0] raw : result is mean of 0.0 (since test corrects for ZPT_NOMINAL vs REAL)
+# ckexposure catdir.test mjd_nc[0] zpt_nc[0] raw : result is mean of 0.0 
+# setphot -update -ubercal testzpt.fits -D CATDIR catdir.test
+# ckexposure catdir.test mjd_uc[0] zpt_uc[0] corr : result is mean of 0.0 (since image is corrected to ZPT_REAL)
+# ckexposure catdir.test mjd_nc[0] zpt_nc[0] corr : result is mean of -0.42 (since image is NOT corrected to ZPT_REAL)
+# relphot g -region 9.5 10.5 19.5 20.5 -update -D CATDIR catdir.test -D STAR_TOOFEW 1 -D SIGMA_LIM 0.075 -statmode MEAN
+# dvo: ckexposure catdir.test mjd_uc[0] zpt_uc[0] corr
+#  mean is now -0.42
+# dvo: ckexposure catdir.test mjd_nc[0] zpt_nc[0] corr
+#  mean is now -0.42 
+#  ** setphot assigned the zero point of the uc exposure to an effective -0.4 (ie, negative clouds), relphot was not told to keep this so it dragged the negative clouds to 0.0 -- this seems to be the right thing to do
+
+# re-run setphot, then relphot with -keep-ubercal
+
+# the test case has only 2 exposures, so the STAR_TOOFEW of 1 is necessary.  Also, the mag and sigma distributions are somewhat artificial
+# relphot g -v -region 9.5 10.5 19.5 20.5 -D CATDIR catdir.test -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update
+# dvo: ckexposure catdir.test mjd_uc[0] zpt_uc[0] corr
+#  mean is now 0.0 
+# dvo: ckexposure catdir.test mjd_nc[0] zpt_nc[0] corr
+#  mean is now 0.0
+#  ** setphot correctly assigned the zero point of UC & relphot adjusted NC to match
+
+macro ckexposure
+  if ($0 != 8)
+    echo "ckexposure (catdir) (mjd) (zpt) (exptime) (airmass) (filter) (mode)"
+    echo "  mode == raw or corr"
+    break
+  end
+
+  local CATDIR MJD_IMAGE ZPT_REAL ZPT_NOMINAL EXPTIME FILTER AIRMASS
+  
+  $CATDIR      = $1
+  $MJD_IMAGE   = $2
+  $ZPT_REAL    = $3
+  $EXPTIME     = $4
+  $AIRMASS     = $5
+  $FILTER      = $6
+  $MODE        = $7
+
+  # XXX need a function to extract the nominal zpt for a given filter / photcode from the db
+  $ZPT_NOMINAL = $zpt_nominal:$FILTER
+  $KLAM_NOMINAL = $klam_nominal:$FILTER
+
+  $TIMEFORMAT = mjd
+  $TIMEREF = 0.0
+
+  catdir $CATDIR
+
+  # assume we still have stars_ra, stars_dec, stars_mag in hand
+  if ($PLOT)
+    dev -n 0
+    region $RA_CENTER $DEC_CENTER 0.2
+    images
+    pmeasure -all -m 15 20
+  end
+
+  skyregion {$RA_CENTER - 0.2/dcos($DEC_CENTER)} {$RA_CENTER + 0.2/dcos($DEC_CENTER)} {$DEC_CENTER - 0.2} {$DEC_CENTER + 0.2} 
+  mextract ra dec mag xccd yccd where (abs(time - $MJD_IMAGE) < 0.0001)
+ 
+  match2d -closest ra dec stars_ra stars_dec 0.001 -index1 index1 -index2 index2
+
+  reindex stars_ra_m  = stars_ra  using index1
+  reindex stars_dec_m = stars_dec using index1
+  reindex stars_mag_m = stars_mag using index1
+  set dr = 3600*(ra - stars_ra_m)
+  set dd = 3600*(dec - stars_dec_m)
+  set dm = mag - stars_mag_m
+
+  if ($PLOT) 
+    dev -n 1
+    lim mag dm; clear; box; plot mag dm
+  end
+
+  set cell_xbin = int(xccd / ($CHIP_DX / $NCELL_X))
+  set cell_ybin = int(yccd / ($CHIP_DY / $NCELL_Y))
+  subset dm00 = dm if (cell_xbin == 0) && (cell_ybin == 0)
+  subset dm01 = dm if (cell_xbin == 0) && (cell_ybin == 1)
+  subset dm10 = dm if (cell_xbin == 1) && (cell_ybin == 0)
+  subset dm11 = dm if (cell_xbin == 1) && (cell_ybin == 1)
+
+  # uncorrected values behave like this:
+  #   mag_DVO  = m_inst + zpt_nominal + 2.5*log(exptime) + K*(airmass - 1.0)
+  #   mag_real = m_inst + zpt_real + cell_offset
+  #   dm = mag_DVO - mag_real = zpt_nominal - zpt_real - cell_offset
+  #   <dm> - zpt_nominal + zpt_real + cell_offset ~ 0.0
+  #   zpt_real (in this case) = 25.0  + 2.5*log(exptime) + K*(airmass - 1.0) 
+  #     (actually, it is the value in the vector 'zpt' for this entry
+  #   zpt_nominal = 24.58
+
+  # setphot-corrected values behave like this:
+  #   mag_DVO  = mag_real (because m_inst has cell_offset applied)
+  #   dm = mag_DVO - mag_real ~ 0.0
+
+  $ZPT_REAL_NORM = $ZPT_REAL - 2.5*log($EXPTIME) - $KLAM_NOMINAL*($AIRMASS - 1.0)
+
+  if ("$MODE" == "raw") 
+    for ix 0 $NCELL_X
+      for iy 0 $NCELL_Y
+        # vstat -q dm$ix\$iy
+        # echo cell_off[$ix][$iy] {$MEDIAN - $ZPT_NOMINAL + $ZPT_REAL + cell_off[$ix][$iy]} $MEDIAN $MEAN $SIGMA 
+  
+        set dm_adjust = dm$ix\$iy - $ZPT_NOMINAL + $ZPT_REAL_NORM + cell_off[$ix][$iy]
+        vstat -q dm_adjust
+        tapOK {abs($MEAN) < 0.005} "addstar raw ZP $MJD_IMAGE $FILTER"
+      end
+    end
+    return
+  end
+
+  if ("$MODE" == "setphot_uc") 
+    vstat -q dm
+    tapOK {abs($MEAN) < 0.005} "setphot_uc  ZP $MJD_IMAGE $FILTER"
+    return
+  end
+
+  if ("$MODE" == "setphot_nc") 
+    vstat -q dm
+    tapOK {abs($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM) < 0.005} "setphot_nc  ZP $MJD_IMAGE $FILTER"
+    return
+  end
+
+  if ("$MODE" == "relphot") 
+    vstat -q dm
+    tapOK {abs($MEAN) < 0.005} "relphot    ZP $MJD_IMAGE $FILTER"
+    return
+  end
+
+end
+
+macro mksequence
+  if ($0 != 3)
+    echo "mksequence (fileroot) (catdir)"
+    break
+  end
+
+  local i
+
+  # we have defined a set of mjd and zero point values for ubercal'ed images
+  # for i 0 mjd_uc[]
+  for i 0 mjd_uc[] 3
+    mkexposure $1.uc.$i $RA_CENTER $DEC_CENTER zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] mjd_uc[$i] $filt_uc:$i $2
+  end
+
+  # we have a second set of mjd and zero point values for non-ubercal'ed images
+  # for i 0 mjd_nc[]
+  for i 0 mjd_nc[] 3
+    mkexposure $1.nc.$i $RA_CENTER $DEC_CENTER zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] mjd_nc[$i] $filt_nc:$i $2
+  end
+end
+
+macro mkexposure
+ if ($0 != 10)
+   echo "mkexposure (fileroot) (ra) (dec) (zpt) (exptime) (airmass) (mjd) (filter) (catdir)"
+   break
+ end
+
+ local ix iy date time datetime ra dec ROOT RAo DECo ZPT MJD FILTER EXPTIME AIRMASS CATDIR
+
+ $ROOT    = $1
+ $RAo     = $2
+ $DECo    = $3
+ $ZPT     = $4
+ $EXPTIME = $5
+ $AIRMASS = $6 
+ $MJD     = $7
+ $FILTER  = $8
+ $CATDIR  = $9
+
+ $TIMEFORMAT = mjd
+ $TIMEREF = 0.0
+
+ # XX ctimes -ref $MJD -var datetime
+ # XX substr $datetime 0 10 date
+ # XX substr $datetime 11 8 time
+
+ for ix 0 $NCHIP_X
+  for iy 0 $NCHIP_Y
+    $dx  = $CHIP_DX * $PLATE_SCALE * ($ix - 0.5*$NCHIP_X + 0.5)
+    $dy  = $CHIP_DY * $PLATE_SCALE * ($iy - 0.5*$NCHIP_Y + 0.5)
+    $ra  = $RAo  - $dx / 3600.0 / dcos($DECo)
+    $dec = $DECo - $dy / 3600.0
+    # echo $ra $dec $dx $dy
+    mkinput test.in.txt $ra $dec $ZPT 
+    
+    # ra,dec is the center of this chip
+    local options
+    $options = -mjd $MJD 
+    $options = $options -radec $ra $dec 
+    $options = $options -type PS1_V2 
+    $options = $options -coords 
+    $options = $options -photcode GPC1.$FILTER.XY$ix\$iy 
+    $options = $options -no-noise 
+    $options = $options -size $CHIP_DX $CHIP_DY 
+    $options = $options -crpix {0.5*$CHIP_DX} {0.5*$CHIP_DY} 
+    $options = $options -airmass $AIRMASS
+    $options = $options -exptime $EXPTIME
+    exec mkcmf test.in.txt $ROOT.$ix.$iy.cmf $options
+    echo mkcmf test.in.txt $ROOT.$ix.$iy.cmf $options 
+    
+    # the fake images have inconsistent ra,dec and airmass,sidtime values
+    echo addstar $ROOT.$ix.$iy.cmf -D CATDIR $CATDIR -D CAMERA gpc1 -quick-airmass
+    exec addstar $ROOT.$ix.$iy.cmf -D CATDIR $CATDIR -D CAMERA gpc1 -quick-airmass >& tmp.log
+  end
+ end
+end
+
+# make a simple input file for mkcmf
+macro mkinput
+  if ($0 != 5)
+    echo "mkinput (filename) (ra) (dec) (zpt)"
+    break
+  end
+
+  # chip coordinate of the stars
+  # ra,dec is at the chip center, which corresponds to pixel (CHIP_DX,CHIP_DY)/2
+  set stars_X = (stars_ra  - $2) * 3600.0 * dcos($3) / $PLATE_SCALE + $CHIP_DX*0.5
+  set stars_Y = (stars_dec - $3) * 3600.0            / $PLATE_SCALE + $CHIP_DY*0.5
+  set stars_M = (stars_mag - $4)
+
+  set valid = (stars_X > 0) && (stars_X < $CHIP_DX) && (stars_Y > 0) && (stars_Y < $CHIP_DX)
+  subset stars_x  = stars_X if valid
+  subset stars_y  = stars_Y if valid
+  subset stars_m  = stars_M if valid
+  subset stars_r  = stars_ra if valid
+  subset stars_d  = stars_dec if valid
+  subset stars_mr = stars_mag if valid
+
+  set cell_x = int(stars_x / ($CHIP_DX / $NCELL_X))
+  set cell_y = int(stars_y / ($CHIP_DX / $NCELL_X))
+
+  # eddie says: M_real = M_inst + zpt + ff_offset
+  # thus, stars_mi = stars_mag - zpt - ff_offset = stars_m - offset
+  set stars_mi = zero(stars_m)
+  for i 0 stars_mi[]
+    $nx = cell_x[$i] 
+    $ny = cell_y[$i]
+    $offset = cell_off[$nx][$ny]
+    stars_mi[$i] = stars_m[$i] - $offset
+  end
+
+  write -f "%10.6f %10.6f %7.3f  %6.1f %6.1f %7.3f" $1 stars_r stars_d stars_mr stars_x stars_y stars_mi
+end
+
+# generate a set of stars with raw RA, DEC, MAG values to use for all of the output cmf files
+macro mkstars
+  if ($0 != 2)
+    echo "USAGE: mkstars (Nstars)"
+    break
+  end
+
+  local RA_RANGE DEC_RANGE
+
+  # the images are oriented along N-S, E-W lines
+
+  # size of region of interest in linear arcseconds
+  $RA_RANGE  = 1.25 * $CHIP_DX * $NCHIP_X * $PLATE_SCALE
+  $DEC_RANGE = 1.25 * $CHIP_DY * $NCHIP_Y * $PLATE_SCALE 
+
+  create tmp 0 $1
+  set stars_ra  = $RA_CENTER  + $RA_RANGE  * (rnd(tmp) - 0.5) / 3600 / dcos ($DEC_CENTER)
+  set stars_dec = $DEC_CENTER + $DEC_RANGE * (rnd(tmp) - 0.5) / 3600
+  set stars_mag = 15.0 + 4.0 * rnd(tmp) 
+end
+
+# create a fake ubercal-style zpt/flatcorr table with metadata
+macro mkzptfile
+
+  mcreate phu 0 0
+  keyword phu NSEASON -wd $NSEASON
+  keyword phu NFILTER -wd $NFILTER
+  keyword phu NCHIP_X -wd $NCHIP_X
+  keyword phu NCHIP_Y -wd $NCHIP_Y
+  keyword phu NCELL_X -wd $NCELL_X
+  keyword phu NCELL_Y -wd $NCELL_Y
+  keyword phu CHIP_DX -wd $CHIP_DX
+  keyword phu CHIP_DY -wd $CHIP_DY
+
+  # define the season boundaries
+  keyword phu TS0_0000 -wf 55000.0
+  keyword phu TS1_0000 -wf 55010.0
+  keyword phu TS0_0001 -wf 55010.0
+  keyword phu TS1_0001 -wf 55020.0
+  keyword phu TS0_0002 -wf 55020.0
+  keyword phu TS1_0002 -wf 55030.0
+
+  # create a single flat-field correction map for a single chip
+  mcreate cell_off 2 2
+  cell_off[0][0] =  0.01
+  cell_off[1][0] = -0.01
+  cell_off[0][1] =  0.02
+  cell_off[1][1] = -0.02
+
+  # in the correction table, we have an image of the full exposure
+  # (NCHIP_X x NCHIP_Y) for each season, unwrapped as a single linear
+  # vector (with the last two missing -- how is that hard wired?)
+
+  local ix iy ixc iyc ns
+
+  # unroll the chip & cell level corrections into a single vector for a single image
+  delete -q image_offset
+  for iy 0 $NCHIP_Y
+    for iyc 0 $NCELL_Y
+      for ix 0 $NCHIP_X
+        for ixc 0 $NCELL_X
+          concat cell_off[$ixc][$iyc] image_offset
+        end
+      end
+    end
+  end
+
+  # generate the full set of corrections for a single filter
+  delete -q offset
+  for ns 0 $NSEASON
+    concat image_offset offset
+  end
+
+  # the output fits table uses the vector names for the field names,
+  # so set them here to the desired names
+  set mjd_obs = mjd_uc
+  set zp = zpt_uc
+  set resid = 0.02*rnd(zpt_uc) - 0.01
+
+  delete -q flatcorr
+  dimenup offset flatcorr {$NSEASON*$NCHIP_X*$NCHIP_Y*$NCELL_X*$NCELL_Y} 1
+
+  wd phu testzpt.fits
+
+  # filter 1
+  write testzpt.fits -fits ZPTS_1 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w g
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+
+  # filter 2 (?)
+  write testzpt.fits -fits ZPTS_2 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w r
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+
+  # filter 3
+  write testzpt.fits -fits ZPTS_3 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w i
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+end
+
+# create a populated catdir with a couple of cmf files
+macro test.relphot
+  if ($0 != 3)
+    echo "test.relphot (cmftype) (dvotype)"
+    break
+  end
+
+  tapPLAN 4
+
+  exec rm -rf catdir.test
+
+  $RA = 10.0
+  $DEC = 20.0
+
+  for i 0 $offset:n
+    mkinput test.in.txt $offset:$i
+    exec mkcmf test.in.txt test.cmf -date 2008/1/1 -time $i\:00:00 -radec $RA $DEC -type $1
+    exec addstar -D CATDIR catdir.test -D CAMERA simtest test.cmf -D CATFORMAT $2
+  end
+
+  exec relphot -D CATDIR catdir.test r -region {$RA-1.0} {$RA+1.0} {$DEC-1.0} {$DEC+1.0} -update -nloop 10.0 >& /dev/null
+
+  catdir catdir.test
+  skyregion {$RA-1.0} {$RA+1.0} {$DEC-1.0} {$DEC+1.0} 
+
+  imextract time Mcal
+
+  for i 0 $offset:n
+    tapOK {abs(Mcal[$i] - Mcal[0] - $offset:$i) < 0.001} "Mcal $i"
+  end
+
+  exec rm test.cmf test.in.txt
+  exec rm -r catdir.test
+
+  tapDONE
+end
+
+# running setphot: setphot testzpt.fits -update -ubercal -D CATDIR catdir.test
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.parallel.dvo
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.parallel.dvo	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.parallel.dvo	(revision 34041)
@@ -0,0 +1,446 @@
+# -*-sh-*-
+
+# test suite for the parallel analysis mode for relphot 
+# this does not include / test flat-field correction options
+
+input tap.dvo
+
+# set globals
+if (not($?PLOT)) set PLOT = 0 
+
+# set various global variables
+macro init
+  echo "starting init..."
+  $RA_CENTER = 10.0
+  $DEC_CENTER = 20.0
+  $PLATE_SCALE = 0.25
+  $NSEASON = 3
+  $NFILTER = 3
+  $NCHIP_X = 2
+  $NCHIP_Y = 2
+  $NCELL_X = 2
+  $NCELL_Y = 2
+  $CHIP_DX = 1000
+  $CHIP_DY = 1000
+  if (not($?VERBOSE)) set VERBOSE = 0
+
+  # images are loaded into dvo with GPC1 photcodes, so we need to get the nominal zps for those filters
+  $zpt_nominal:g = 24.58
+  $zpt_nominal:r = 24.80
+  $zpt_nominal:i = 24.74
+  $zpt_nominal:z = 24.26
+  $zpt_nominal:y = 23.41
+
+  # klam is negative, so klam*(airmass - 1) increase the zero point
+  $klam_nominal:g = -0.15
+  $klam_nominal:r = -0.10
+  $klam_nominal:i = -0.04
+  $klam_nominal:z = -0.03
+  $klam_nominal:y = -0.03
+
+  # we have two sets of images: ubercaled and not-ubercaled
+
+  # sequence to count images (only used in this function)
+  create tmpseq 0 9
+
+  # mjd and zpt values for not-ubercal'ed images
+  $filt_nc:n = 9
+  create filtN_nc 0 $filt_nc:n
+  $filt_nc:0 = g;  filtN_nc[0] = 1
+  $filt_nc:1 = g;  filtN_nc[1] = 1
+  $filt_nc:2 = g;  filtN_nc[2] = 1
+  $filt_nc:3 = r;  filtN_nc[3] = 2
+  $filt_nc:4 = r;  filtN_nc[4] = 2
+  $filt_nc:5 = r;  filtN_nc[5] = 2
+  $filt_nc:6 = i;  filtN_nc[6] = 3
+  $filt_nc:7 = i;  filtN_nc[7] = 3
+  $filt_nc:8 = i;  filtN_nc[8] = 3
+
+  # airmass slopes for these sequnece
+  set klam_nc = zero(tmpseq)
+  for i 0 tmpseq[]
+    klam_nc[$i] = $klam_nominal:$filt_nc:$i
+  end    
+
+  # place this within a valid season (55000.0 - 55010.0 - 55020.0 - 55030.0)
+  set exptime_nc = 15.0 + zero(tmpseq)
+  set airmass_nc = 1.6 + zero(tmpseq)
+
+  # ubercal zero points are defined as ZP_nominal + 2.5log(exptime) + K*(airmass - 1.0)
+  set zpt_nc = 25.0 + 2.5*log(exptime_nc) + klam_nc*(airmass_nc - 1.0) - tmpseq*0.0050 + 0.0025
+
+  # without an ubercal or other tie, relphot should set zpts to the mean of the zpts for a filter
+  subset tmp = zpt_nc where filtN_nc == 1; vstat -q tmp; set zpt_nc_g = $MEAN
+  subset tmp = zpt_nc where filtN_nc == 2; vstat -q tmp; set zpt_nc_r = $MEAN
+  subset tmp = zpt_nc where filtN_nc == 3; vstat -q tmp; set zpt_nc_i = $MEAN
+
+  set mjd_nc = zero(zpt_nc)
+  mjd_nc[0] = 55000.11
+  mjd_nc[1] = 55000.12
+  mjd_nc[2] = 55000.13
+  mjd_nc[3] = 55015.11
+  mjd_nc[4] = 55015.12
+  mjd_nc[5] = 55015.13
+  mjd_nc[6] = 55025.11
+  mjd_nc[7] = 55025.12
+  mjd_nc[8] = 55025.13
+end
+
+macro go
+  if ($0 != 3)
+    echo "go (fileroot) (catdir)"
+    break
+  end
+
+  local i fileroot rootdir catdir
+
+  $fileroot = $1
+  $catdir = $2
+
+  dirname $1 -var rootdir
+  mkdir $rootdir
+
+  exec rm -rf $catdir
+
+  init
+  mkstars 500
+
+  tapPLAN {((mjd_nc[]*4 + mjd_nc[]) + mjd_nc[])}
+
+  # generate the basic images and check they were correctly ingested by dvo
+  mksequence $fileroot $catdir
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i raw
+  end
+
+  # XXX tmp
+  exec rsync -aub $catdir/ $catdir.raw/
+
+  # parallel-ize the database
+  mkparallel $catdir
+
+  # run relphot on the serial db and check that the images now match the expected values
+  exec relphot g,r,i -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update >& log.relphot.s0
+
+  for i 0 mjd_nc[]
+    # this is a little ill-defined : if we run relphot with no tied
+    # down data, we should convert on a solution with zero points
+    # matching the mean zp of photometric data, which we calculate in
+    # 'init'
+    ckexposure $catdir mjd_nc[$i] $zpt_nc_$filt_nc:$i exptime_nc[$i] airmass_nc[$i] $filt_nc:$i relphot_nc
+  end
+
+  # run relphot on the parallel db and check that the images now match the expected values
+  exec relphot -parallel g,r,i -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir.p0 -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update >& log.relphot.p0
+
+  exec dvodist -in $catdir.p0 >& log.dvodist.in
+
+  for i 0 mjd_nc[]
+    # this is a little ill-defined : if we run relphot with no tied
+    # down data, we should convert on a solution with zero points
+    # matching the mean zp of photometric data, which we calculate in
+    # 'init'
+    ckexposure $catdir.p0 mjd_nc[$i] $zpt_nc_$filt_nc:$i exptime_nc[$i] airmass_nc[$i] $filt_nc:$i relphot_nc
+  end
+
+  tapDONE
+end
+
+macro ckexposure
+  if ($0 != 8)
+    echo "ckexposure (catdir) (mjd) (zpt) (exptime) (airmass) (filter) (mode)"
+    echo "  mode == raw or corr"
+    break
+  end
+
+  local CATDIR MJD_IMAGE ZPT_REAL ZPT_NOMINAL EXPTIME FILTER AIRMASS
+  
+  $CATDIR      = $1
+  $MJD_IMAGE   = $2
+  $ZPT_REAL    = $3
+  $EXPTIME     = $4
+  $AIRMASS     = $5
+  $FILTER      = $6
+  $MODE        = $7
+
+  # XXX need a function to extract the nominal zpt for a given filter / photcode from the db
+  $ZPT_NOMINAL = $zpt_nominal:$FILTER
+  $KLAM_NOMINAL = $klam_nominal:$FILTER
+
+  $TIMEFORMAT = mjd
+  $TIMEREF = 0.0
+
+  catdir $CATDIR
+
+  # assume we still have stars_ra, stars_dec, stars_mag in hand
+  if ($PLOT)
+    dev -n 0
+    region $RA_CENTER $DEC_CENTER 0.2
+    images
+    pmeasure -all -m 15 20
+  end
+
+  skyregion {$RA_CENTER - 0.2/dcos($DEC_CENTER)} {$RA_CENTER + 0.2/dcos($DEC_CENTER)} {$DEC_CENTER - 0.2} {$DEC_CENTER + 0.2} 
+  mextract ra dec mag xccd yccd where (abs(time - $MJD_IMAGE) < 0.0001)
+  if (not(ra[])) 
+    echo "no matching data for MJD = $MJD_IMAGE"
+    if ("$MODE" == "raw")
+      tapSKIP 4
+    else
+      tapSKIP 1
+    end
+    return
+  end
+  match2d -closest ra dec stars_ra stars_dec 0.001 -index1 index1 -index2 index2
+
+  reindex stars_ra_m  = stars_ra  using index1
+  reindex stars_dec_m = stars_dec using index1
+  reindex stars_mag_m = stars_mag using index1
+  if (ra[]  != stars_ra_m[])
+    echo "failed to match stars in catdir to stars in memory"
+    break
+  end
+  set dr = 3600*(ra - stars_ra_m)
+  set dd = 3600*(dec - stars_dec_m)
+  set dm = mag - stars_mag_m
+
+  if ($PLOT) 
+    dev -n 0
+    cplot -pt 7 -c red ra dec
+    dev -n 1
+    lim mag dm; clear; box; plot mag dm
+  end
+
+  set cell_xbin = int(xccd / ($CHIP_DX / $NCELL_X))
+  set cell_ybin = int(yccd / ($CHIP_DY / $NCELL_Y))
+  subset dm00 = dm if (cell_xbin == 0) && (cell_ybin == 0)
+  subset dm01 = dm if (cell_xbin == 0) && (cell_ybin == 1)
+  subset dm10 = dm if (cell_xbin == 1) && (cell_ybin == 0)
+  subset dm11 = dm if (cell_xbin == 1) && (cell_ybin == 1)
+
+  # uncorrected values behave like this:
+  #   mag_DVO  = m_inst + zpt_nominal + 2.5*log(exptime) + K*(airmass - 1.0)
+  #   mag_real = m_inst + zpt_real + cell_offset
+  #   dm = mag_DVO - mag_real = zpt_nominal - zpt_real - cell_offset
+  #   <dm> - zpt_nominal + zpt_real + cell_offset ~ 0.0
+  #   zpt_real (in this case) = 25.0  + 2.5*log(exptime) + K*(airmass - 1.0) 
+  #     (actually, it is the value in the vector 'zpt' for this entry
+  #   zpt_nominal = 24.58
+
+  # setphot-corrected values behave like this:
+  #   mag_DVO  = mag_real (because m_inst has cell_offset applied)
+  #   dm = mag_DVO - mag_real ~ 0.0
+
+  $ZPT_REAL_NORM = $ZPT_REAL - 2.5*log($EXPTIME) - $KLAM_NOMINAL*($AIRMASS - 1.0)
+  if ($VERBOSE) echo "$ZPT_REAL_NORM = $ZPT_REAL - 2.5*log($EXPTIME) - $KLAM_NOMINAL*($AIRMASS - 1.0)"
+
+  if ("$MODE" == "raw") 
+    for ix 0 $NCELL_X
+      for iy 0 $NCELL_Y
+        # vstat -q dm$ix\$iy
+        # echo cell_off[$ix][$iy] {$MEDIAN - $ZPT_NOMINAL + $ZPT_REAL + cell_off[$ix][$iy]} $MEDIAN $MEAN $SIGMA 
+  
+        set dm_adjust = dm$ix\$iy - $ZPT_NOMINAL + $ZPT_REAL_NORM
+        vstat -q dm_adjust
+        tapOK {abs($MEAN) < 0.005} "addstar raw ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+      end
+    end
+    return
+  end
+
+  if ("$MODE" == "setphot_uc") 
+    vstat -q dm
+    tapOK {abs($MEAN) < 0.005} "setphot_uc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "setphot_nc") 
+    vstat -q dm
+    tapOK {abs($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM) < 0.005} "setphot_nc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "relphot_nc") 
+    vstat -q dm
+    tapOK {abs($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM) < 0.005} "relphot_nc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "relphot") 
+    vstat -q dm
+    tapOK {abs($MEAN) < 0.005} "relphot    ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+end
+
+macro mksequence
+  if ($0 != 3)
+    echo "mksequence (fileroot) (catdir)"
+    break
+  end
+
+  echo "starting mksequence..."
+  local i T1 T2
+
+  ctimes -abs now -var T1
+  # we have a second set of mjd and zero point values for non-ubercal'ed images
+  for i 0 mjd_nc[]
+    echo -no-return "$i.. "
+    mkexposure $1.nc.$i $RA_CENTER $DEC_CENTER zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] mjd_nc[$i] $filt_nc:$i $2
+  end
+  ctimes -abs now -var T2
+  echo "done ({86400*($T2 - $T1)} sec)"
+end
+
+macro mkexposure
+ if ($0 != 10)
+   echo "mkexposure (fileroot) (ra) (dec) (zpt) (exptime) (airmass) (mjd) (filter) (catdir)"
+   break
+ end
+
+ local ix iy date time datetime ra dec ROOT RAo DECo ZPT MJD FILTER EXPTIME AIRMASS CATDIR
+
+ $ROOT    = $1
+ $RAo     = $2
+ $DECo    = $3
+ $ZPT     = $4
+ $EXPTIME = $5
+ $AIRMASS = $6 
+ $MJD     = $7
+ $FILTER  = $8
+ $CATDIR  = $9
+
+ $TIMEFORMAT = mjd
+ $TIMEREF = 0.0
+
+ for ix 0 $NCHIP_X
+  for iy 0 $NCHIP_Y
+    $dx  = $CHIP_DX * $PLATE_SCALE * ($ix - 0.5*$NCHIP_X + 0.5)
+    $dy  = $CHIP_DY * $PLATE_SCALE * ($iy - 0.5*$NCHIP_Y + 0.5)
+    $ra  = $RAo  - $dx / 3600.0 / dcos($DECo)
+    $dec = $DECo - $dy / 3600.0
+    # echo $ra $dec $dx $dy
+    if ($VERBOSE) echo mkinput test.in.txt $ra $dec $ZPT 
+    mkinput test.in.txt $ra $dec $ZPT 
+    # costs 7/36 sec / chip
+    
+    # ra,dec is the center of this chip
+    local options
+    $options = -mjd $MJD 
+    $options = $options -radec $ra $dec 
+    $options = $options -type PS1_V2 
+    $options = $options -coords 
+    $options = $options -photcode GPC1.$FILTER.XY$ix\$iy 
+    $options = $options -no-noise 
+    $options = $options -size $CHIP_DX $CHIP_DY 
+    $options = $options -crpix {0.5*$CHIP_DX} {0.5*$CHIP_DY} 
+    $options = $options -airmass $AIRMASS
+    $options = $options -exptime $EXPTIME
+    if ($VERBOSE) echo mkcmf test.in.txt $ROOT.$ix.$iy.cmf $options 
+    exec mkcmf test.in.txt $ROOT.$ix.$iy.cmf $options
+    # costs 8/36 sec / chip
+
+    # the fake images have inconsistent ra,dec and airmass,sidtime values
+    if ($VERBOSE) echo addstar $ROOT.$ix.$iy.cmf -D CATDIR $CATDIR -D CAMERA gpc1 -quick-airmass
+    exec addstar $ROOT.$ix.$iy.cmf -D CATDIR $CATDIR -D CAMERA gpc1 -quick-airmass >& /dev/null
+    # costs 10/36 sec / chip
+  end
+ end
+end
+
+# make a simple input file for mkcmf
+macro mkinput
+  if ($0 != 5)
+    echo "mkinput (filename) (ra) (dec) (zpt)"
+    break
+  end
+
+  # chip coordinate of the stars
+  # ra,dec is at the chip center, which corresponds to pixel (CHIP_DX,CHIP_DY)/2
+  set stars_X = (stars_ra  - $2) * 3600.0 * dcos($3) / $PLATE_SCALE + $CHIP_DX*0.5
+  set stars_Y = (stars_dec - $3) * 3600.0            / $PLATE_SCALE + $CHIP_DY*0.5
+  set stars_M = (stars_mag - $4)
+
+  set valid = (stars_X > 0) && (stars_X < $CHIP_DX) && (stars_Y > 0) && (stars_Y < $CHIP_DX)
+  subset stars_x  = stars_X if valid
+  subset stars_y  = stars_Y if valid
+  subset stars_m  = stars_M if valid
+  subset stars_r  = stars_ra if valid
+  subset stars_d  = stars_dec if valid
+  subset stars_mr = stars_mag if valid
+
+  set cell_x = int(stars_x / ($CHIP_DX / $NCELL_X))
+  set cell_y = int(stars_y / ($CHIP_DX / $NCELL_X))
+
+  if (1)
+    # FLAT-FIELD CORRECTION 
+    # eddie says: M_real = M_inst + zpt + ff_offset
+    # thus, stars_mi = stars_mag - zpt - ff_offset = stars_m - offset
+    set stars_mi = zero(stars_m)
+    for i 0 stars_mi[]
+      $nx = cell_x[$i] 
+      $ny = cell_y[$i]
+      # $offset = cell_off[$nx][$ny]
+      $offset = 0.0
+      stars_mi[$i] = stars_m[$i] - $offset
+    end
+  else
+    set stars_mi = stars_m
+  end
+  
+  # delete the output file before writing
+  exec rm -f $1
+  write -f "%10.6f %10.6f %7.3f  %6.1f %6.1f %7.3f" $1 stars_r stars_d stars_mr stars_x stars_y stars_mi
+end
+
+# generate a set of stars with raw RA, DEC, MAG values to use for all of the output cmf files
+macro mkstars
+  if ($0 != 2)
+    echo "USAGE: mkstars (Nstars)"
+    break
+  end
+
+  echo "starting mkstars..."
+  local RA_RANGE DEC_RANGE
+
+  # the images are oriented along N-S, E-W lines
+
+  # size of region of interest in linear arcseconds
+  $RA_RANGE  = 1.25 * $CHIP_DX * $NCHIP_X * $PLATE_SCALE
+  $DEC_RANGE = 1.25 * $CHIP_DY * $NCHIP_Y * $PLATE_SCALE 
+
+  create tmp 0 $1
+  set stars_ra  = $RA_CENTER  + $RA_RANGE  * (rnd(tmp) - 0.5) / 3600 / dcos ($DEC_CENTER)
+  set stars_dec = $DEC_CENTER + $DEC_RANGE * (rnd(tmp) - 0.5) / 3600
+  set stars_mag = 15.0 + 4.0 * rnd(tmp) 
+end
+
+# copy the catdir to catdir.p0 and parallelize to local directories catdir.d1 - catdir.d3
+macro mkparallel
+  if ($0 != 2)
+    echo "USAGE: mkparallel (catdir)"
+    break
+  end
+
+  local hostname catdir
+ 
+  $hostname = `hostname -s`
+
+  $tmp1 = `dirname $1`
+  $tmp2 = `basename $1`
+  $catdir = $tmp1/$tmp2
+
+  exec rsync -auv $catdir/ $catdir.p0/ >& log.rsync
+  mkdir $catdir.d1
+  mkdir $catdir.d2
+  mkdir $catdir.d3
+  
+  exec rm -f $catdir.p0/HostTable.dat
+  exec echo "1 $hostname $catdir.d1" >  $catdir.p0/HostTable.dat
+  exec echo "2 $hostname $catdir.d2" >> $catdir.p0/HostTable.dat
+  exec echo "3 $hostname $catdir.d3" >> $catdir.p0/HostTable.dat
+
+  exec dvodist -out $catdir.p0 >& log.dvodist.out
+end
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.reject.dvo
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.reject.dvo	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.reject.dvo	(revision 34041)
@@ -0,0 +1,645 @@
+# -*-sh-*-
+
+# test suite for the parallel analysis mode for relphot & setphot
+# in this test suite, we add in sources with outlier measurements.  these are supposed to trigger the various rejection flags in relphot.  does it work?
+
+# measurement rejections that we perform:
+# measurement is an outlier for the star
+# measurement is flagged as bad by the photometry
+# measurement is flagged as poor by the photometry
+# Area & Time (ignore for now -- probably not used by GPC1)
+
+# also: 
+# bad images: chisq to high, zpt scatter too high
+# bad objects : chisq to high, too few measurements?
+
+input tap.dvo
+
+# set globals
+if (not($?PLOT)) set PLOT = 0 
+
+# set various global variables
+macro init
+  echo "starting init..."
+  $RA_CENTER = 10.0
+  $DEC_CENTER = 20.0
+  $PLATE_SCALE = 0.25
+  $NSEASON = 3
+  $NFILTER = 3
+  $NCHIP_X = 2
+  $NCHIP_Y = 2
+  $NCELL_X = 2
+  $NCELL_Y = 2
+  $CHIP_DX = 1000
+  $CHIP_DY = 1000
+  $DEFECT_FRAC = 0.03
+  $OFFSET_FRAC_UC = 0.0
+  $OFFSET_FRAC_NC = 0.5
+  if (not($?VERBOSE)) set VERBOSE = 0
+
+  # images are loaded into dvo with GPC1 photcodes, so we need to get the nominal zps for those filters
+  $zpt_nominal:g = 24.58
+  $zpt_nominal:r = 24.80
+  $zpt_nominal:i = 24.74
+  $zpt_nominal:z = 24.26
+  $zpt_nominal:y = 23.41
+
+  # klam is negative, so klam*(airmass - 1) increase the zero point
+  $klam_nominal:g = -0.15
+  $klam_nominal:r = -0.10
+  $klam_nominal:i = -0.04
+  $klam_nominal:z = -0.03
+  $klam_nominal:y = -0.03
+
+  # we have two sets of images: ubercaled and not-ubercaled
+
+  # sequence to count images (only used in this function)
+  # XXX  TEST create tmpseq 0 9
+  create tmpseq 0 9
+
+  ##### mjd and zpt values for ubercal'ed images
+
+  $filt_uc:n = tmpseq[]
+  create filtN_uc 0 $filt_uc:n
+  $filt_uc:0 = g;  filtN_uc[0] = 1
+  $filt_uc:1 = g;  filtN_uc[1] = 1
+  $filt_uc:2 = g;  filtN_uc[2] = 1
+  $filt_uc:3 = g;  filtN_uc[3] = 1
+  $filt_uc:4 = g;  filtN_uc[4] = 1
+  $filt_uc:5 = g;  filtN_uc[5] = 1
+  $filt_uc:6 = g;  filtN_uc[6] = 1
+  $filt_uc:7 = g;  filtN_uc[7] = 1
+  $filt_uc:8 = g;  filtN_uc[8] = 1
+
+  # airmass slopes for this sequnece
+  set klam_uc = zero(tmpseq)
+  for i 0 tmpseq[]
+    klam_uc[$i] = $klam_nominal:$filt_uc:$i
+  end    
+
+  # place this within a valid season (55000.0 - 55010.0 - 55020.0 - 55030.0)
+  set exptime_uc = 15.0 + zero(tmpseq)
+  set airmass_uc = 1.6 + zero(tmpseq)
+
+  # ubercal zero points are defined as ZP_nominal + 2.5log(exptime) + K*(airmass - 1.0)
+  set zpt_uc = 25.0 + 2.5*log(exptime_uc) + klam_uc*(airmass_uc - 1.0) + tmpseq*0.0050 - 0.0025
+
+  set mjd_uc = zero(zpt_uc)
+  mjd_uc[0] = 55000.01
+  mjd_uc[1] = 55000.02
+  mjd_uc[2] = 55000.03
+  mjd_uc[3] = 55015.01
+  mjd_uc[4] = 55015.02
+  mjd_uc[5] = 55015.03
+  mjd_uc[6] = 55025.01
+  mjd_uc[7] = 55025.02
+  mjd_uc[8] = 55025.03
+
+  ##### mjd and zpt values for not-ubercal'ed images
+
+  $filt_nc:n = tmpseq[]
+  create filtN_nc 0 $filt_nc:n
+  $filt_nc:0 = g;  filtN_nc[0] = 1
+  $filt_nc:1 = g;  filtN_nc[1] = 1
+  $filt_nc:2 = g;  filtN_nc[2] = 1
+  $filt_nc:3 = g;  filtN_nc[3] = 1
+  $filt_nc:4 = g;  filtN_nc[4] = 1
+  $filt_nc:5 = g;  filtN_nc[5] = 1
+  $filt_nc:6 = g;  filtN_nc[6] = 1
+  $filt_nc:7 = g;  filtN_nc[7] = 1
+  $filt_nc:8 = g;  filtN_nc[8] = 1
+
+  # airmass slopes for these sequnece
+  set klam_nc = zero(tmpseq)
+  for i 0 tmpseq[]
+    klam_nc[$i] = $klam_nominal:$filt_nc:$i
+  end    
+
+  # place this within a valid season (55000.0 - 55010.0 - 55020.0 - 55030.0)
+  set exptime_nc = 15.0 + zero(tmpseq)
+  set airmass_nc = 1.6 + zero(tmpseq)
+
+  # ubercal zero points are defined as ZP_nominal + 2.5log(exptime) + K*(airmass - 1.0)
+  set zpt_nc = 25.0 + 2.5*log(exptime_nc) + klam_nc*(airmass_nc - 1.0) - tmpseq*0.0050 + 0.0025
+
+  # with an ubercal tie, relphot should set zpts to the inserted values above
+  set mjd_nc = zero(zpt_nc)
+  mjd_nc[0] = 55000.11
+  mjd_nc[1] = 55000.12
+  mjd_nc[2] = 55000.13
+  mjd_nc[3] = 55015.11
+  mjd_nc[4] = 55015.12
+  mjd_nc[5] = 55015.13
+  mjd_nc[6] = 55025.11
+  mjd_nc[7] = 55025.12
+  mjd_nc[8] = 55025.13
+end
+
+macro go
+  if ($0 != 3)
+    echo "go (fileroot) (catdir)"
+    break
+  end
+
+  local i fileroot rootdir catdir
+
+  $fileroot = $1
+  $catdir = $2
+
+  dirname $1 -var rootdir
+  mkdir $rootdir
+
+  exec rm -rf $catdir
+
+  init
+  mkzptfile
+  mkstars 10000
+
+  tapPLAN {(((mjd_uc[] + mjd_nc[])*4 + (mjd_uc[] + mjd_nc[])) + (mjd_uc[] + mjd_nc[]))}
+
+  # generate the basic images and check they were correctly ingested by dvo
+  mksequence.drift $fileroot $catdir
+  for i 0 mjd_uc[]
+    ckexposure $catdir mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i raw
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i raw
+  end
+
+  # run setphot on the serial db and check that the images now match the expected values
+  exec setphot -reset -update -ubercal testzpt.fits -D CATDIR $catdir
+  for i 0 mjd_uc[]
+    ckexposure $catdir mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i setphot_uc
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i setphot_nc
+  end
+
+  # run relphot on the serial db and check that the images now match the expected values
+  # if ($VERBOSE) echo relphot g,r,i -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update >& log.relphot.s0
+  if ($VERBOSE) echo relphot g -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update -reset -D STAR_SCATTER 0.05>& log.relphot.s0
+  exec relphot g -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update -reset -D STAR_SCATTER 0.05>& log.relphot.s0
+  for i 0 mjd_uc[]
+    ckexposure $catdir mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i relphot
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i relphot
+  end
+
+  tapDONE
+end
+
+macro ckexposure
+  if ($0 != 8)
+    echo "ckexposure (catdir) (mjd) (zpt) (exptime) (airmass) (filter) (mode)"
+    echo "  mode == raw or corr"
+    break
+  end
+
+  local CATDIR MJD_IMAGE ZPT_REAL ZPT_NOMINAL EXPTIME FILTER AIRMASS
+  
+  $CATDIR      = $1
+  $MJD_IMAGE   = $2
+  $ZPT_REAL    = $3
+  $EXPTIME     = $4
+  $AIRMASS     = $5
+  $FILTER      = $6
+  $MODE        = $7
+
+  # XXX need a function to extract the nominal zpt for a given filter / photcode from the db
+  $ZPT_NOMINAL = $zpt_nominal:$FILTER
+  $KLAM_NOMINAL = $klam_nominal:$FILTER
+
+  $TIMEFORMAT = mjd
+  $TIMEREF = 0.0
+
+  catdir $CATDIR
+
+  # assume we still have stars_ra, stars_dec, stars_mag in hand
+  if ($PLOT)
+    dev -n 0
+    region $RA_CENTER $DEC_CENTER 0.2
+    images
+    pmeasure -all -m 15 20
+  end
+
+  skyregion {$RA_CENTER - 0.2/dcos($DEC_CENTER)} {$RA_CENTER + 0.2/dcos($DEC_CENTER)} {$DEC_CENTER - 0.2} {$DEC_CENTER + 0.2} 
+  mextract ra dec mag xccd yccd where (abs(time - $MJD_IMAGE) < 0.0001)
+  if (not(ra[])) 
+    echo "no matching data for MJD = $MJD_IMAGE"
+    if ("$MODE" == "raw")
+      tapSKIP 4
+    else
+      tapSKIP 1
+    end
+    return
+  end
+  match2d -closest ra dec stars_ra stars_dec 0.001 -index1 index1 -index2 index2
+
+  reindex stars_ra_m  = stars_ra  using index1
+  reindex stars_dec_m = stars_dec using index1
+  reindex stars_mag_m = stars_mag using index1
+  if (ra[]  != stars_ra_m[])
+    echo "failed to match stars in catdir to stars in memory"
+    break
+  end
+  set dr = 3600*(ra - stars_ra_m)
+  set dd = 3600*(dec - stars_dec_m)
+  set dm = mag - stars_mag_m
+
+  if ($PLOT) 
+    dev -n 0
+    cplot -pt 7 -c red ra dec
+    dev -n 1
+    lim mag dm; clear; box; plot mag dm
+  end
+
+  set cell_xbin = int(xccd / ($CHIP_DX / $NCELL_X))
+  set cell_ybin = int(yccd / ($CHIP_DY / $NCELL_Y))
+  subset dm00 = dm if (cell_xbin == 0) && (cell_ybin == 0)
+  subset dm01 = dm if (cell_xbin == 0) && (cell_ybin == 1)
+  subset dm10 = dm if (cell_xbin == 1) && (cell_ybin == 0)
+  subset dm11 = dm if (cell_xbin == 1) && (cell_ybin == 1)
+
+  # uncorrected values behave like this:
+  #   mag_DVO  = m_inst + zpt_nominal + 2.5*log(exptime) + K*(airmass - 1.0)
+  #   mag_real = m_inst + zpt_real + cell_offset
+  #   dm = mag_DVO - mag_real = zpt_nominal - zpt_real - cell_offset
+  #   <dm> - zpt_nominal + zpt_real + cell_offset ~ 0.0
+  #   zpt_real (in this case) = 25.0  + 2.5*log(exptime) + K*(airmass - 1.0) 
+  #     (actually, it is the value in the vector 'zpt' for this entry
+  #   zpt_nominal = 24.58
+
+  # setphot-corrected values behave like this:
+  #   mag_DVO  = mag_real (because m_inst has cell_offset applied)
+  #   dm = mag_DVO - mag_real ~ 0.0
+
+  $ZPT_REAL_NORM = $ZPT_REAL - 2.5*log($EXPTIME) - $KLAM_NOMINAL*($AIRMASS - 1.0)
+  if ($VERBOSE) echo "$ZPT_REAL_NORM = $ZPT_REAL - 2.5*log($EXPTIME) - $KLAM_NOMINAL*($AIRMASS - 1.0)"
+
+  if ("$MODE" == "raw") 
+    for ix 0 $NCELL_X
+      for iy 0 $NCELL_Y
+        # vstat -q dm$ix\$iy
+        # echo cell_off[$ix][$iy] {$MEDIAN - $ZPT_NOMINAL + $ZPT_REAL + cell_off[$ix][$iy]} $MEDIAN $MEAN $SIGMA 
+  
+        set dm_adjust = dm$ix\$iy - $ZPT_NOMINAL + $ZPT_REAL_NORM
+        vstat -q dm_adjust
+        tapOK {abs($MEAN) < 0.005} "addstar raw ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+      end
+    end
+    return
+  end
+
+  if ("$MODE" == "setphot_uc") 
+    vstat -q dm
+    tapOK {abs($MEAN) < 0.005} "setphot_uc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "setphot_nc") 
+    vstat -q dm
+    tapOK {abs($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM) < 0.005} "setphot_nc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "relphot_nc") 
+    vstat -q dm
+    tapOK {abs($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM) < 0.005} "relphot_nc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "relphot") 
+    vstat -q dm
+    tapOK {abs($MEAN) < 0.005} "relphot    ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+end
+
+macro mksequence.drift
+  if ($0 != 3)
+    echo "mksequence.drift (fileroot) (catdir)"
+    break
+  end
+
+  echo "starting mksequence..."
+  local i T1 T2
+
+  ctimes -abs now -var T1
+  # we have a second set of mjd and zero point values for non-ubercal'ed images
+  echo -no-return "making mjd_uc[] UC images: "
+  for i 0 mjd_uc[]
+    echo -no-return "$i.. "
+    mkexposure $1.uc.$i $RA_CENTER {$DEC_CENTER + $i*$CHIP_DY*$PLATE_SCALE*$NCHIP_Y*$OFFSET_FRAC_UC/3600.0} zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] mjd_uc[$i] $filt_uc:$i $2
+  end
+  echo ""
+  echo -no-return "making mjd_nc[] NC images: "
+  for i 0 mjd_nc[]
+    echo -no-return "$i.. "
+    mkexposure $1.nc.$i $RA_CENTER {$DEC_CENTER + $i*$CHIP_DY*$PLATE_SCALE*$NCHIP_Y*$OFFSET_FRAC_NC/3600.0} zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] mjd_nc[$i] $filt_nc:$i $2
+  end
+  ctimes -abs now -var T2
+  echo "done ({86400*($T2 - $T1)} sec)"
+end
+
+macro mksequence.1pt
+  if ($0 != 3)
+    echo "mksequence (fileroot) (catdir)"
+    break
+  end
+
+  echo "starting mksequence..."
+  local i T1 T2
+
+  ctimes -abs now -var T1
+  # we have a second set of mjd and zero point values for non-ubercal'ed images
+  echo -no-return "making mjd_uc[] UC images: "
+  for i 0 mjd_uc[]
+    echo -no-return "$i.. "
+    mkexposure $1.uc.$i $RA_CENTER $DEC_CENTER zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] mjd_uc[$i] $filt_uc:$i $2
+  end
+  echo ""
+  echo -no-return "making mjd_nc[] NC images: "
+  for i 0 mjd_nc[]
+    echo -no-return "$i.. "
+    mkexposure $1.nc.$i $RA_CENTER $DEC_CENTER zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] mjd_nc[$i] $filt_nc:$i $2
+  end
+  ctimes -abs now -var T2
+  echo "done ({86400*($T2 - $T1)} sec)"
+end
+
+macro mkexposure
+ if ($0 != 10)
+   echo "mkexposure (fileroot) (ra) (dec) (zpt) (exptime) (airmass) (mjd) (filter) (catdir)"
+   break
+ end
+
+ local ix iy date time datetime ra dec ROOT RAo DECo ZPT MJD FILTER EXPTIME AIRMASS CATDIR
+
+ $ROOT    = $1
+ $RAo     = $2
+ $DECo    = $3
+ $ZPT     = $4
+ $EXPTIME = $5
+ $AIRMASS = $6 
+ $MJD     = $7
+ $FILTER  = $8
+ $CATDIR  = $9
+
+ $TIMEFORMAT = mjd
+ $TIMEREF = 0.0
+
+ for ix 0 $NCHIP_X
+  for iy 0 $NCHIP_Y
+    $dx  = $CHIP_DX * $PLATE_SCALE * ($ix - 0.5*$NCHIP_X + 0.5)
+    $dy  = $CHIP_DY * $PLATE_SCALE * ($iy - 0.5*$NCHIP_Y + 0.5)
+    $ra  = $RAo  - $dx / 3600.0 / dcos($DECo)
+    $dec = $DECo - $dy / 3600.0
+    # echo $ra $dec $dx $dy
+    if ($VERBOSE) echo mkinput test.in.txt $ra $dec $ZPT 
+    mkinput test.in.txt $ra $dec $ZPT 
+    # costs 7/36 sec / chip
+    
+    # ra,dec is the center of this chip
+    local options
+    $options = -mjd $MJD 
+    $options = $options -radec $ra $dec 
+    $options = $options -type PS1_V2 
+    $options = $options -coords 
+    $options = $options -photcode GPC1.$FILTER.XY$ix\$iy 
+    $options = $options -no-noise 
+    $options = $options -flags
+    $options = $options -bad-psfqf-frac $DEFECT_FRAC
+    $options = $options -size $CHIP_DX $CHIP_DY 
+    $options = $options -crpix {0.5*$CHIP_DX} {0.5*$CHIP_DY} 
+    $options = $options -airmass $AIRMASS
+    $options = $options -exptime $EXPTIME
+    if ($VERBOSE) echo mkcmf test.in.txt $ROOT.$ix.$iy.cmf $options 
+    exec mkcmf test.in.txt $ROOT.$ix.$iy.cmf $options
+    # costs 8/36 sec / chip
+
+    # the fake images have inconsistent ra,dec and airmass,sidtime values
+    if ($VERBOSE) echo addstar $ROOT.$ix.$iy.cmf -D CATDIR $CATDIR -D CAMERA gpc1 -quick-airmass
+    exec addstar $ROOT.$ix.$iy.cmf -D CATDIR $CATDIR -D CAMERA gpc1 -quick-airmass >& /dev/null
+    # costs 10/36 sec / chip
+  end
+ end
+end
+
+# make a simple input file for mkcmf
+macro mkinput
+  if ($0 != 5)
+    echo "mkinput (filename) (ra) (dec) (zpt)"
+    break
+  end
+
+  # chip coordinate of the stars
+  # ra,dec is at the chip center, which corresponds to pixel (CHIP_DX,CHIP_DY)/2
+  set stars_X = (stars_ra  - $2) * 3600.0 * dcos($3) / $PLATE_SCALE + $CHIP_DX*0.5
+  set stars_Y = (stars_dec - $3) * 3600.0            / $PLATE_SCALE + $CHIP_DY*0.5
+  set stars_M = (stars_mag - $4)
+
+  set valid = (stars_X > 0) && (stars_X < $CHIP_DX) && (stars_Y > 0) && (stars_Y < $CHIP_DX)
+  subset stars_x  = stars_X if valid
+  subset stars_y  = stars_Y if valid
+  subset stars_m  = stars_M if valid
+  subset stars_r  = stars_ra if valid
+  subset stars_d  = stars_dec if valid
+  subset stars_mr = stars_mag if valid
+
+  set cell_x = int(stars_x / ($CHIP_DX / $NCELL_X))
+  set cell_y = int(stars_y / ($CHIP_DX / $NCELL_X))
+
+  if (1)
+    # FLAT-FIELD CORRECTION 
+    # eddie says: M_real = M_inst + zpt + ff_offset
+    # thus, stars_mi = stars_mag - zpt - ff_offset = stars_m - offset
+    set stars_mi = zero(stars_m)
+    for i 0 stars_mi[]
+      $nx = cell_x[$i] 
+      $ny = cell_y[$i]
+      # $offset = cell_off[$nx][$ny]
+      $offset = 0.0
+      stars_mi[$i] = stars_m[$i] - $offset
+    end
+  else
+    set stars_mi = stars_m
+  end
+  
+  # create bad detections / detections to ignore or avoid, save to a file?
+
+  # create 3 types of things to ignore / avoid
+  # * badPhot (deviate the photometry)
+  # * badFlag (set a bad flag bit)
+  # * poorFlag (set a bad flag bit)
+  set badPhot  = rnd(stars_r) <  $DEFECT_FRAC
+  set badFlag  = rnd(stars_r) <  $DEFECT_FRAC
+  set poorFlag = rnd(stars_r) <  $DEFECT_FRAC
+
+  # create deviant photometry (1%)
+  # I'm setting the flag value 0x02 (EXTMODEL) if the object is deviated.  This is a simple way to pass the info
+  set stars_mi = stars_mi + 0.2*badPhot
+  set stars_fl = zero(stars_mi) + 0x00000080*badFlag + 0x00000100*poorFlag + 0x00000002*badPhot
+
+  # bad flags that we sould respect:
+  # PM_SOURCE_MODE_FAIL             = 0x00000008, ///< Fit (non-linear) failed (non-converge, off-edge, run to zero)
+  # PM_SOURCE_MODE_SATSTAR          = 0x00000080, ///< Source model peak is above saturation
+  # PM_SOURCE_MODE_BADPSF           = 0x00000400, ///< Failed to get good estimate of object's PSF
+  # PM_SOURCE_MODE_DEFECT           = 0x00000800, ///< Source is thought to be a defect
+  # PM_SOURCE_MODE_SATURATED        = 0x00001000, ///< Source is thought to be saturated pixels (bleed trail)
+  # PM_SOURCE_MODE_CR_LIMIT         = 0x00002000, ///< Source has crNsigma above limit
+  # PM_SOURCE_MODE_MOMENTS_FAILURE  = 0x00008000, ///< could not measure the moments
+  # PM_SOURCE_MODE_SKY_FAILURE      = 0x00010000, ///< could not measure the local sky
+  # PM_SOURCE_MODE_SKYVAR_FAILURE   = 0x00020000, ///< could not measure the local sky variance
+  # PM_SOURCE_MODE_SIZE_SKIPPED     = 0x10000000, ///< size could not be determined
+  # TOTAL_BAD                       = 0x1003bc88                     
+
+  # poor flags that we should respect:
+  # PM_SOURCE_MODE_POOR             = 0x00000010, ///< Fit succeeds, but low-SN, high-Chisq, or large (for PSF -- drop?)
+  # PM_SOURCE_MODE_PAIR             = 0x00000020, ///< Source fitted with a double psf
+  # PM_SOURCE_MODE_BLEND            = 0x00000100, ///< Source is a blend with other sources
+  # PM_SOURCE_MODE_BELOW_MOMENTS_SN = 0x00040000, ///< moments not measured due to low S/N
+  # PM_SOURCE_MODE_BLEND_FIT        = 0x00400000, ///< source was fitted as a blend
+  # PM_SOURCE_MODE_ON_SPIKE         = 0x20000000, ///< peak lands on diffraction spike
+  # PM_SOURCE_MODE_ON_GHOST         = 0x40000000, ///< peak lands on ghost or glint
+  # PM_SOURCE_MODE_OFF_CHIP         = 0x80000000, ///< peak lands off edge of chip
+  # TOTAL_POOR                      = 0xe0440130
+
+  # delete the output file before writing
+  exec rm -f $1
+  write -f "%10.6f %10.6f %7.3f  %6.1f %6.1f %7.3f 0x%x" $1 stars_r stars_d stars_mr stars_x stars_y stars_mi stars_fl
+end
+
+# generate a set of stars with raw RA, DEC, MAG values to use for all of the output cmf files
+macro mkstars
+  if ($0 != 2)
+    echo "USAGE: mkstars (Nstars)"
+    break
+  end
+
+  echo "starting mkstars..."
+  local RA_RANGE DEC_RANGE
+
+  # the images are oriented along N-S, E-W lines
+
+  # size of region of interest in linear arcseconds
+  $RA_RANGE  = 1.25 * $CHIP_DX * $NCHIP_X * $PLATE_SCALE
+  $DEC_RANGE = 1.25 * $CHIP_DY * $NCHIP_Y * $PLATE_SCALE * (1 + tmpseq[]*$OFFSET_FRAC_NC)
+
+  create tmp 0 $1
+  set stars_ra  = $RA_CENTER  + $RA_RANGE  * (rnd(tmp) - 0.5) / 3600 / dcos ($DEC_CENTER)
+  set stars_dec = $DEC_CENTER + $DEC_RANGE * (rnd(tmp) - 0.5) / 3600
+  set stars_mag = 15.0 + 4.0 * rnd(tmp) 
+end
+
+# copy the catdir to catdir.p0 and parallelize to local directories catdir.d1 - catdir.d3
+macro mkparallel
+  if ($0 != 2)
+    echo "USAGE: mkparallel (catdir)"
+    break
+  end
+
+  local hostname catdir
+ 
+  $hostname = `hostname -s`
+
+  $tmp1 = `dirname $1`
+  $tmp2 = `basename $1`
+  $catdir = $tmp1/$tmp2
+
+  exec rsync -auv $catdir/ $catdir.p0/ >& log.rsync
+  mkdir $catdir.d1
+  mkdir $catdir.d2
+  mkdir $catdir.d3
+  
+  exec rm -f $catdir.p0/HostTable.dat
+  exec echo "1 $hostname $catdir.d1" >  $catdir.p0/HostTable.dat
+  exec echo "2 $hostname $catdir.d2" >> $catdir.p0/HostTable.dat
+  exec echo "3 $hostname $catdir.d3" >> $catdir.p0/HostTable.dat
+
+  exec dvodist -out $catdir.p0 >& log.dvodist.out
+end
+
+# create a fake ubercal-style zpt/flatcorr table with metadata
+macro mkzptfile
+
+  mcreate phu 0 0
+  keyword phu NSEASON -wd $NSEASON
+  keyword phu NFILTER -wd $NFILTER
+  keyword phu NCHIP_X -wd $NCHIP_X
+  keyword phu NCHIP_Y -wd $NCHIP_Y
+  keyword phu NCELL_X -wd $NCELL_X
+  keyword phu NCELL_Y -wd $NCELL_Y
+  keyword phu CHIP_DX -wd $CHIP_DX
+  keyword phu CHIP_DY -wd $CHIP_DY
+
+  # define the season boundaries
+  keyword phu TS0_0000 -wf 55000.0
+  keyword phu TS1_0000 -wf 55010.0
+  keyword phu TS0_0001 -wf 55010.0
+  keyword phu TS1_0001 -wf 55020.0
+  keyword phu TS0_0002 -wf 55020.0
+  keyword phu TS1_0002 -wf 55030.0
+
+  # create a single flat-field correction map for a single chip
+  mcreate cell_off 2 2
+  cell_off[0][0] =  0.01
+  cell_off[1][0] = -0.01
+  cell_off[0][1] =  0.02
+  cell_off[1][1] = -0.02
+
+  # in the correction table, we have an image of the full exposure
+  # (NCHIP_X x NCHIP_Y) for each season, unwrapped as a single linear
+  # vector (with the last two missing -- how is that hard wired?)
+
+  local ix iy ixc iyc ns
+
+  # unroll the chip & cell level corrections into a single vector for a single image
+  delete -q image_offset
+  for iy 0 $NCHIP_Y
+    for iyc 0 $NCELL_Y
+      for ix 0 $NCHIP_X
+        for ixc 0 $NCELL_X
+          concat cell_off[$ixc][$iyc] image_offset
+        end
+      end
+    end
+  end
+
+  # generate the full set of corrections for a single filter
+  delete -q offset
+  for ns 0 $NSEASON
+    concat image_offset offset
+  end
+
+  # the output fits table uses the vector names for the field names,
+  # so set them here to the desired names
+  set mjd_obs = mjd_uc
+  set zp = zpt_uc
+  set resid = 0.02*rnd(zpt_uc) - 0.01
+
+  delete -q flatcorr
+  dimenup offset flatcorr {$NSEASON*$NCHIP_X*$NCHIP_Y*$NCELL_X*$NCELL_Y} 1
+
+  wd phu testzpt.fits
+
+  # filter 1
+  write testzpt.fits -fits ZPTS_1 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w g
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+
+  # filter 2 (?)
+  write testzpt.fits -fits ZPTS_2 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w r
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+
+  # filter 3
+  write testzpt.fits -fits ZPTS_3 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w i
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+end
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.setphot.parallel.dvo
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.setphot.parallel.dvo	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.setphot.parallel.dvo	(revision 34041)
@@ -0,0 +1,639 @@
+# -*-sh-*-
+
+# test suite for the parallel analysis mode for relphot & setphot
+
+input tap.dvo
+
+# set globals
+if (not($?PLOT)) set PLOT = 0 
+
+# set various global variables
+macro init
+  echo "starting init..."
+  $RA_CENTER = 10.0
+  $DEC_CENTER = 20.0
+  $PLATE_SCALE = 0.25
+  $NSEASON = 3
+  $NFILTER = 3
+  $NCHIP_X = 2
+  $NCHIP_Y = 2
+  $NCELL_X = 2
+  $NCELL_Y = 2
+  $CHIP_DX = 1000
+  $CHIP_DY = 1000
+  if (not($?VERBOSE)) set VERBOSE = 0
+
+  # images are loaded into dvo with GPC1 photcodes, so we need to get the nominal zps for those filters
+  $zpt_nominal:g = 24.58
+  $zpt_nominal:r = 24.80
+  $zpt_nominal:i = 24.74
+  $zpt_nominal:z = 24.26
+  $zpt_nominal:y = 23.41
+
+  # klam is negative, so klam*(airmass - 1) increase the zero point
+  $klam_nominal:g = -0.15
+  $klam_nominal:r = -0.10
+  $klam_nominal:i = -0.04
+  $klam_nominal:z = -0.03
+  $klam_nominal:y = -0.03
+
+  # we have two sets of images: ubercaled and not-ubercaled
+
+  # sequence to count images (only used in this function)
+  create tmpseq 0 9
+
+  ##### mjd and zpt values for ubercal'ed images
+
+  $filt_uc:n = 9
+  create filtN_uc 0 $filt_uc:n
+  $filt_uc:0 = g;  filtN_uc[0] = 1
+  $filt_uc:1 = g;  filtN_uc[1] = 1
+  $filt_uc:2 = g;  filtN_uc[2] = 1
+  $filt_uc:3 = r;  filtN_uc[3] = 2
+  $filt_uc:4 = r;  filtN_uc[4] = 2
+  $filt_uc:5 = r;  filtN_uc[5] = 2
+  $filt_uc:6 = i;  filtN_uc[6] = 3
+  $filt_uc:7 = i;  filtN_uc[7] = 3
+  $filt_uc:8 = i;  filtN_uc[8] = 3
+
+  # airmass slopes for this sequnece
+  set klam_uc = zero(tmpseq)
+  for i 0 tmpseq[]
+    klam_uc[$i] = $klam_nominal:$filt_uc:$i
+  end    
+
+  # place this within a valid season (55000.0 - 55010.0 - 55020.0 - 55030.0)
+  set exptime_uc = 15.0 + zero(tmpseq)
+  set airmass_uc = 1.6 + zero(tmpseq)
+
+  # ubercal zero points are defined as ZP_nominal + 2.5log(exptime) + K*(airmass - 1.0)
+  set zpt_uc = 25.0 + 2.5*log(exptime_uc) + klam_uc*(airmass_uc - 1.0) + tmpseq*0.0050 - 0.0025
+
+  set mjd_uc = zero(zpt_uc)
+  mjd_uc[0] = 55000.01
+  mjd_uc[1] = 55000.02
+  mjd_uc[2] = 55000.03
+  mjd_uc[3] = 55015.01
+  mjd_uc[4] = 55015.02
+  mjd_uc[5] = 55015.03
+  mjd_uc[6] = 55025.01
+  mjd_uc[7] = 55025.02
+  mjd_uc[8] = 55025.03
+
+  ##### mjd and zpt values for not-ubercal'ed images
+
+  $filt_nc:n = 9
+  create filtN_nc 0 $filt_nc:n
+  $filt_nc:0 = g;  filtN_nc[0] = 1
+  $filt_nc:1 = g;  filtN_nc[1] = 1
+  $filt_nc:2 = g;  filtN_nc[2] = 1
+  $filt_nc:3 = r;  filtN_nc[3] = 2
+  $filt_nc:4 = r;  filtN_nc[4] = 2
+  $filt_nc:5 = r;  filtN_nc[5] = 2
+  $filt_nc:6 = i;  filtN_nc[6] = 3
+  $filt_nc:7 = i;  filtN_nc[7] = 3
+  $filt_nc:8 = i;  filtN_nc[8] = 3
+
+  # airmass slopes for these sequnece
+  set klam_nc = zero(tmpseq)
+  for i 0 tmpseq[]
+    klam_nc[$i] = $klam_nominal:$filt_nc:$i
+  end    
+
+  # place this within a valid season (55000.0 - 55010.0 - 55020.0 - 55030.0)
+  set exptime_nc = 15.0 + zero(tmpseq)
+  set airmass_nc = 1.6 + zero(tmpseq)
+
+  # ubercal zero points are defined as ZP_nominal + 2.5log(exptime) + K*(airmass - 1.0)
+  set zpt_nc = 25.0 + 2.5*log(exptime_nc) + klam_nc*(airmass_nc - 1.0) - tmpseq*0.0050 + 0.0025
+
+  # with an ubercal tie, relphot should set zpts to the inserted values above
+  set mjd_nc = zero(zpt_nc)
+  mjd_nc[0] = 55000.11
+  mjd_nc[1] = 55000.12
+  mjd_nc[2] = 55000.13
+  mjd_nc[3] = 55015.11
+  mjd_nc[4] = 55015.12
+  mjd_nc[5] = 55015.13
+  mjd_nc[6] = 55025.11
+  mjd_nc[7] = 55025.12
+  mjd_nc[8] = 55025.13
+end
+
+macro go
+  if ($0 != 3)
+    echo "go (fileroot) (catdir)"
+    break
+  end
+
+  local i fileroot rootdir catdir
+
+  $fileroot = $1
+  $catdir = $2
+
+  dirname $1 -var rootdir
+  mkdir $rootdir
+
+  exec rm -rf $catdir
+
+  init
+  mkzptfile
+  mkstars 500
+
+  tapPLAN {(((mjd_uc[] + mjd_nc[])*4 + (mjd_uc[] + mjd_nc[])) + (mjd_uc[] + mjd_nc[]))}
+
+  # generate the basic images and check they were correctly ingested by dvo
+  mksequence $fileroot $catdir
+  for i 0 mjd_uc[]
+    ckexposure $catdir mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i raw
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i raw
+  end
+
+  # parallel-ize the database (goes to $catdir.p0)
+  mkparallel $catdir
+
+  ### SERIAL database tests
+
+  # run setphot on the serial db and check that the images now match the expected values
+  exec setphot -reset -update -ubercal testzpt.fits -D CATDIR $catdir
+  for i 0 mjd_uc[]
+    ckexposure $catdir mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i setphot_uc
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i setphot_nc
+  end
+
+  # run relphot on the serial db and check that the images now match the expected values
+  exec relphot g,r,i -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update >& log.relphot.s0
+  for i 0 mjd_uc[]
+    ckexposure $catdir mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i relphot
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i relphot
+  end
+
+  ### PARALLEL database tests
+
+  # run setphot on the parallel db and check that the images now match the expected values
+  exec setphot -reset -parallel -update -ubercal testzpt.fits -D CATDIR $catdir.p0
+
+  # bring the detections back to the local db
+  # exec dvodist -in $catdir.p0 >& log.dvodist.in
+  # XXX this should now not be needed
+
+  # check the results
+  for i 0 mjd_uc[]
+    ckexposure $catdir.p0 mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i setphot_uc
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir.p0 mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i setphot_nc
+  end
+
+  # run relphot on the parallel db and check that the images now match the expected values
+  exec relphot -parallel g,r,i -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir.p0 -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update >& log.relphot.p0
+
+  for i 0 mjd_uc[]
+    ckexposure $catdir.p0 mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i relphot
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir.p0 mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i relphot
+  end
+
+  tapDONE
+end
+
+macro qt
+
+  ## SER
+
+  # run setphot on the serial db and check that the images now match the expected values
+  exec setphot -reset -update -ubercal testzpt.fits -D CATDIR $catdir
+  for i 0 mjd_uc[]
+    ckexposure $catdir mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i setphot_uc
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i setphot_nc
+  end
+
+  # run relphot on the serial db and check that the images now match the expected values
+  exec relphot g,r,i -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update >& log.relphot.s0
+  for i 0 mjd_uc[]
+    ckexposure $catdir mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i relphot
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i relphot
+  end
+
+  ## PAR
+
+  # run setphot on the parallel db and check that the images now match the expected values
+  exec setphot -reset -parallel -update -ubercal testzpt.fits -D CATDIR $catdir.p0
+
+  # check the results
+  for i 0 mjd_uc[]
+    ckexposure $catdir.p0 mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i setphot_uc
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir.p0 mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i setphot_nc
+  end
+ 
+  # run relphot on the parallel db and check that the images now match the expected values
+  exec relphot -parallel g,r,i -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir.p0 -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update >& log.relphot.p0
+
+  for i 0 mjd_uc[]
+    ckexposure $catdir.p0 mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i relphot
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir.p0 mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i relphot
+  end
+end
+
+macro ckexposure
+  if ($0 != 8)
+    echo "ckexposure (catdir) (mjd) (zpt) (exptime) (airmass) (filter) (mode)"
+    echo "  mode == raw or corr"
+    break
+  end
+
+  local CATDIR MJD_IMAGE ZPT_REAL ZPT_NOMINAL EXPTIME FILTER AIRMASS
+  
+  $CATDIR      = $1
+  $MJD_IMAGE   = $2
+  $ZPT_REAL    = $3
+  $EXPTIME     = $4
+  $AIRMASS     = $5
+  $FILTER      = $6
+  $MODE        = $7
+
+  # XXX need a function to extract the nominal zpt for a given filter / photcode from the db
+  $ZPT_NOMINAL = $zpt_nominal:$FILTER
+  $KLAM_NOMINAL = $klam_nominal:$FILTER
+
+  $TIMEFORMAT = mjd
+  $TIMEREF = 0.0
+
+  catdir $CATDIR
+
+  # assume we still have stars_ra, stars_dec, stars_mag in hand
+  if ($PLOT)
+    dev -n 0
+    region $RA_CENTER $DEC_CENTER 0.2
+    images
+    pmeasure -all -m 15 20
+  end
+
+  skyregion {$RA_CENTER - 0.2/dcos($DEC_CENTER)} {$RA_CENTER + 0.2/dcos($DEC_CENTER)} {$DEC_CENTER - 0.2} {$DEC_CENTER + 0.2} 
+  mextract ra dec mag xccd yccd where (abs(time - $MJD_IMAGE) < 0.0001)
+  if (not(ra[])) 
+    echo "no matching data for MJD = $MJD_IMAGE"
+    if ("$MODE" == "raw")
+      tapSKIP 4
+    else
+      tapSKIP 1
+    end
+    return
+  end
+  match2d -closest ra dec stars_ra stars_dec 0.001 -index1 index1 -index2 index2
+
+  reindex stars_ra_m  = stars_ra  using index1
+  reindex stars_dec_m = stars_dec using index1
+  reindex stars_mag_m = stars_mag using index1
+  if (ra[]  != stars_ra_m[])
+    echo "failed to match stars in catdir to stars in memory"
+    break
+  end
+  set dr = 3600*(ra - stars_ra_m)
+  set dd = 3600*(dec - stars_dec_m)
+  set dm = mag - stars_mag_m
+
+  if ($PLOT) 
+    dev -n 0
+    cplot -pt 7 -c red ra dec
+    dev -n 1
+    lim mag dm; clear; box; plot mag dm
+  end
+
+  set cell_xbin = int(xccd / ($CHIP_DX / $NCELL_X))
+  set cell_ybin = int(yccd / ($CHIP_DY / $NCELL_Y))
+  subset dm00 = dm if (cell_xbin == 0) && (cell_ybin == 0)
+  subset dm01 = dm if (cell_xbin == 0) && (cell_ybin == 1)
+  subset dm10 = dm if (cell_xbin == 1) && (cell_ybin == 0)
+  subset dm11 = dm if (cell_xbin == 1) && (cell_ybin == 1)
+
+  # uncorrected values behave like this:
+  #   mag_DVO  = m_inst + zpt_nominal + 2.5*log(exptime) + K*(airmass - 1.0)
+  #   mag_real = m_inst + zpt_real + cell_offset
+  #   dm = mag_DVO - mag_real = zpt_nominal - zpt_real - cell_offset
+  #   <dm> - zpt_nominal + zpt_real + cell_offset ~ 0.0
+  #   zpt_real (in this case) = 25.0  + 2.5*log(exptime) + K*(airmass - 1.0) 
+  #     (actually, it is the value in the vector 'zpt' for this entry
+  #   zpt_nominal = 24.58
+
+  # setphot-corrected values behave like this:
+  #   mag_DVO  = mag_real (because m_inst has cell_offset applied)
+  #   dm = mag_DVO - mag_real ~ 0.0
+
+  $ZPT_REAL_NORM = $ZPT_REAL - 2.5*log($EXPTIME) - $KLAM_NOMINAL*($AIRMASS - 1.0)
+  if ($VERBOSE) echo "$ZPT_REAL_NORM = $ZPT_REAL - 2.5*log($EXPTIME) - $KLAM_NOMINAL*($AIRMASS - 1.0)"
+
+  if ("$MODE" == "raw") 
+    for ix 0 $NCELL_X
+      for iy 0 $NCELL_Y
+        # vstat -q dm$ix\$iy
+        # echo cell_off[$ix][$iy] {$MEDIAN - $ZPT_NOMINAL + $ZPT_REAL + cell_off[$ix][$iy]} $MEDIAN $MEAN $SIGMA 
+  
+        set dm_adjust = dm$ix\$iy - $ZPT_NOMINAL + $ZPT_REAL_NORM
+        vstat -q dm_adjust
+        tapOK {abs($MEAN) < 0.005} "addstar raw ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+      end
+    end
+    return
+  end
+
+  if ("$MODE" == "setphot_uc") 
+    vstat -q dm
+    tapOK {abs($MEAN) < 0.005} "setphot_uc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "setphot_nc") 
+    vstat -q dm
+    tapOK {abs($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM) < 0.005} "setphot_nc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "relphot_nc") 
+    vstat -q dm
+    tapOK {abs($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM) < 0.005} "relphot_nc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "relphot") 
+    vstat -q dm
+    tapOK {abs($MEAN) < 0.005} "relphot    ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+end
+
+macro mksequence
+  if ($0 != 3)
+    echo "mksequence (fileroot) (catdir)"
+    break
+  end
+
+  echo "starting mksequence..."
+  local i T1 T2
+
+  ctimes -abs now -var T1
+  # we have a second set of mjd and zero point values for non-ubercal'ed images
+  echo -no-return "making mjd_uc[] UC images: "
+  for i 0 mjd_uc[]
+    echo -no-return "$i.. "
+    mkexposure $1.uc.$i $RA_CENTER $DEC_CENTER zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] mjd_uc[$i] $filt_uc:$i $2
+  end
+  echo ""
+  echo -no-return "making mjd_nc[] NC images: "
+  for i 0 mjd_nc[]
+    echo -no-return "$i.. "
+    mkexposure $1.nc.$i $RA_CENTER $DEC_CENTER zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] mjd_nc[$i] $filt_nc:$i $2
+  end
+  ctimes -abs now -var T2
+  echo "done ({86400*($T2 - $T1)} sec)"
+end
+
+macro mkexposure
+ if ($0 != 10)
+   echo "mkexposure (fileroot) (ra) (dec) (zpt) (exptime) (airmass) (mjd) (filter) (catdir)"
+   break
+ end
+
+ local ix iy date time datetime ra dec ROOT RAo DECo ZPT MJD FILTER EXPTIME AIRMASS CATDIR
+
+ $ROOT    = $1
+ $RAo     = $2
+ $DECo    = $3
+ $ZPT     = $4
+ $EXPTIME = $5
+ $AIRMASS = $6 
+ $MJD     = $7
+ $FILTER  = $8
+ $CATDIR  = $9
+
+ $TIMEFORMAT = mjd
+ $TIMEREF = 0.0
+
+ for ix 0 $NCHIP_X
+  for iy 0 $NCHIP_Y
+    $dx  = $CHIP_DX * $PLATE_SCALE * ($ix - 0.5*$NCHIP_X + 0.5)
+    $dy  = $CHIP_DY * $PLATE_SCALE * ($iy - 0.5*$NCHIP_Y + 0.5)
+    $ra  = $RAo  - $dx / 3600.0 / dcos($DECo)
+    $dec = $DECo - $dy / 3600.0
+    # echo $ra $dec $dx $dy
+    if ($VERBOSE) echo mkinput test.in.txt $ra $dec $ZPT 
+    mkinput test.in.txt $ra $dec $ZPT 
+    # costs 7/36 sec / chip
+    
+    # ra,dec is the center of this chip
+    local options
+    $options = -mjd $MJD 
+    $options = $options -radec $ra $dec 
+    $options = $options -type PS1_V2 
+    $options = $options -coords 
+    $options = $options -photcode GPC1.$FILTER.XY$ix\$iy 
+    $options = $options -no-noise 
+    $options = $options -size $CHIP_DX $CHIP_DY 
+    $options = $options -crpix {0.5*$CHIP_DX} {0.5*$CHIP_DY} 
+    $options = $options -airmass $AIRMASS
+    $options = $options -exptime $EXPTIME
+    if ($VERBOSE) echo mkcmf test.in.txt $ROOT.$ix.$iy.cmf $options 
+    exec mkcmf test.in.txt $ROOT.$ix.$iy.cmf $options
+    # costs 8/36 sec / chip
+
+    # the fake images have inconsistent ra,dec and airmass,sidtime values
+    if ($VERBOSE) echo addstar $ROOT.$ix.$iy.cmf -D CATDIR $CATDIR -D CAMERA gpc1 -quick-airmass
+    exec addstar $ROOT.$ix.$iy.cmf -D CATDIR $CATDIR -D CAMERA gpc1 -quick-airmass >& /dev/null
+    # costs 10/36 sec / chip
+  end
+ end
+end
+
+# make a simple input file for mkcmf
+macro mkinput
+  if ($0 != 5)
+    echo "mkinput (filename) (ra) (dec) (zpt)"
+    break
+  end
+
+  # chip coordinate of the stars
+  # ra,dec is at the chip center, which corresponds to pixel (CHIP_DX,CHIP_DY)/2
+  set stars_X = (stars_ra  - $2) * 3600.0 * dcos($3) / $PLATE_SCALE + $CHIP_DX*0.5
+  set stars_Y = (stars_dec - $3) * 3600.0            / $PLATE_SCALE + $CHIP_DY*0.5
+  set stars_M = (stars_mag - $4)
+
+  set valid = (stars_X > 0) && (stars_X < $CHIP_DX) && (stars_Y > 0) && (stars_Y < $CHIP_DX)
+  subset stars_x  = stars_X if valid
+  subset stars_y  = stars_Y if valid
+  subset stars_m  = stars_M if valid
+  subset stars_r  = stars_ra if valid
+  subset stars_d  = stars_dec if valid
+  subset stars_mr = stars_mag if valid
+
+  set cell_x = int(stars_x / ($CHIP_DX / $NCELL_X))
+  set cell_y = int(stars_y / ($CHIP_DX / $NCELL_X))
+
+  if (1)
+    # FLAT-FIELD CORRECTION 
+    # eddie says: M_real = M_inst + zpt + ff_offset
+    # thus, stars_mi = stars_mag - zpt - ff_offset = stars_m - offset
+    set stars_mi = zero(stars_m)
+    for i 0 stars_mi[]
+      $nx = cell_x[$i] 
+      $ny = cell_y[$i]
+      # $offset = cell_off[$nx][$ny]
+      $offset = 0.0
+      stars_mi[$i] = stars_m[$i] - $offset
+    end
+  else
+    set stars_mi = stars_m
+  end
+  
+  # delete the output file before writing
+  exec rm -f $1
+  write -f "%10.6f %10.6f %7.3f  %6.1f %6.1f %7.3f" $1 stars_r stars_d stars_mr stars_x stars_y stars_mi
+end
+
+# generate a set of stars with raw RA, DEC, MAG values to use for all of the output cmf files
+macro mkstars
+  if ($0 != 2)
+    echo "USAGE: mkstars (Nstars)"
+    break
+  end
+
+  echo "starting mkstars..."
+  local RA_RANGE DEC_RANGE
+
+  # the images are oriented along N-S, E-W lines
+
+  # size of region of interest in linear arcseconds
+  $RA_RANGE  = 1.25 * $CHIP_DX * $NCHIP_X * $PLATE_SCALE
+  $DEC_RANGE = 1.25 * $CHIP_DY * $NCHIP_Y * $PLATE_SCALE 
+
+  create tmp 0 $1
+  set stars_ra  = $RA_CENTER  + $RA_RANGE  * (rnd(tmp) - 0.5) / 3600 / dcos ($DEC_CENTER)
+  set stars_dec = $DEC_CENTER + $DEC_RANGE * (rnd(tmp) - 0.5) / 3600
+  set stars_mag = 15.0 + 4.0 * rnd(tmp) 
+end
+
+# copy the catdir to catdir.p0 and parallelize to local directories catdir.d1 - catdir.d3
+macro mkparallel
+  if ($0 != 2)
+    echo "USAGE: mkparallel (catdir)"
+    break
+  end
+
+  local hostname catdir
+ 
+  $hostname = `hostname -s`
+
+  $tmp1 = `dirname $1`
+  $tmp2 = `basename $1`
+  $catdir = $tmp1/$tmp2
+
+  exec rsync -auv $catdir/ $catdir.p0/ >& log.rsync
+  mkdir $catdir.d1
+  mkdir $catdir.d2
+  mkdir $catdir.d3
+  
+  exec rm -f $catdir.p0/HostTable.dat
+  exec echo "1 $hostname $catdir.d1" >  $catdir.p0/HostTable.dat
+  exec echo "2 $hostname $catdir.d2" >> $catdir.p0/HostTable.dat
+  exec echo "3 $hostname $catdir.d3" >> $catdir.p0/HostTable.dat
+
+  exec dvodist -out $catdir.p0 >& log.dvodist.out
+end
+
+# create a fake ubercal-style zpt/flatcorr table with metadata
+macro mkzptfile
+
+  mcreate phu 0 0
+  keyword phu NSEASON -wd $NSEASON
+  keyword phu NFILTER -wd $NFILTER
+  keyword phu NCHIP_X -wd $NCHIP_X
+  keyword phu NCHIP_Y -wd $NCHIP_Y
+  keyword phu NCELL_X -wd $NCELL_X
+  keyword phu NCELL_Y -wd $NCELL_Y
+  keyword phu CHIP_DX -wd $CHIP_DX
+  keyword phu CHIP_DY -wd $CHIP_DY
+
+  # define the season boundaries
+  keyword phu TS0_0000 -wf 55000.0
+  keyword phu TS1_0000 -wf 55010.0
+  keyword phu TS0_0001 -wf 55010.0
+  keyword phu TS1_0001 -wf 55020.0
+  keyword phu TS0_0002 -wf 55020.0
+  keyword phu TS1_0002 -wf 55030.0
+
+  # create a single flat-field correction map for a single chip
+  mcreate cell_off 2 2
+  cell_off[0][0] =  0.01
+  cell_off[1][0] = -0.01
+  cell_off[0][1] =  0.02
+  cell_off[1][1] = -0.02
+
+  # in the correction table, we have an image of the full exposure
+  # (NCHIP_X x NCHIP_Y) for each season, unwrapped as a single linear
+  # vector (with the last two missing -- how is that hard wired?)
+
+  local ix iy ixc iyc ns
+
+  # unroll the chip & cell level corrections into a single vector for a single image
+  delete -q image_offset
+  for iy 0 $NCHIP_Y
+    for iyc 0 $NCELL_Y
+      for ix 0 $NCHIP_X
+        for ixc 0 $NCELL_X
+          concat cell_off[$ixc][$iyc] image_offset
+        end
+      end
+    end
+  end
+
+  # generate the full set of corrections for a single filter
+  delete -q offset
+  for ns 0 $NSEASON
+    concat image_offset offset
+  end
+
+  # the output fits table uses the vector names for the field names,
+  # so set them here to the desired names
+  set mjd_obs = mjd_uc
+  set zp = zpt_uc
+  set resid = 0.02*rnd(zpt_uc) - 0.01
+
+  delete -q flatcorr
+  dimenup offset flatcorr {$NSEASON*$NCHIP_X*$NCHIP_Y*$NCELL_X*$NCELL_Y} 1
+
+  wd phu testzpt.fits
+
+  # filter 1
+  write testzpt.fits -fits ZPTS_1 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w g
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+
+  # filter 2 (?)
+  write testzpt.fits -fits ZPTS_2 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w r
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+
+  # filter 3
+  write testzpt.fits -fits ZPTS_3 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w i
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+end
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.variable.dvo
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.variable.dvo	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/test/relphot.variable.dvo	(revision 34041)
@@ -0,0 +1,633 @@
+# -*-sh-*-
+
+# test suite for the parallel analysis mode for relphot & setphot
+# in this test suite, we add in sources with outlier measurements.  these are supposed to trigger the various rejection flags in relphot.  does it work?
+
+# generate a realistic set of data: cover
+
+# measurement rejections that we perform:
+# measurement is an outlier for the star
+# measurement is flagged as bad by the photometry
+# measurement is flagged as poor by the photometry
+# Area & Time (ignore for now -- probably not used by GPC1)
+
+# also: 
+# bad images: chisq to high, zpt scatter too high
+# bad objects : chisq to high, too few measurements?
+
+input tap.dvo
+
+# set globals
+if (not($?PLOT)) set PLOT = 0 
+
+# set various global variables
+macro init
+  echo "starting init..."
+  $RA_CENTER = 10.0
+  $DEC_CENTER = 20.0
+  $PLATE_SCALE = 0.25
+  $NSEASON = 3
+  $NFILTER = 3
+  $NCHIP_X = 2
+  $NCHIP_Y = 2
+  $NCELL_X = 2
+  $NCELL_Y = 2
+  $CHIP_DX = 1000
+  $CHIP_DY = 1000
+  $DEFECT_FRAC = 0.03
+  $OFFSET_FRAC_UC = 0.0
+  $OFFSET_FRAC_NC = 0.5
+  $LONGITUDE = 10.4170608521
+  $LATITUDE = 20.7070999146
+  if (not($?VERBOSE)) set VERBOSE = 0
+
+  # images are loaded into dvo with GPC1 photcodes, so we need to get the nominal zps for those filters
+  $zpt_nominal:g = 24.58
+  $zpt_nominal:r = 24.80
+  $zpt_nominal:i = 24.74
+  $zpt_nominal:z = 24.26
+  $zpt_nominal:y = 23.41
+
+  # klam is negative, so klam*(airmass - 1) increase the zero point
+  $klam_nominal:g = -0.15
+  $klam_nominal:r = -0.10
+  $klam_nominal:i = -0.04
+  $klam_nominal:z = -0.03
+  $klam_nominal:y = -0.03
+
+  # we have two sets of images: ubercaled and not-ubercaled
+
+  ##### parameters for UBERCAL'ed images
+
+  $filt_uc:n = 3
+  create filtN_uc 0 $filt_uc:n
+  $filt_uc:0 = g;  filtN_uc[0] = 1
+  $filt_uc:1 = g;  filtN_uc[1] = 1
+  $filt_uc:2 = g;  filtN_uc[2] = 1
+
+  # airmass slopes for this sequnece
+  create klam_uc 0 $filt_uc:n
+  for i 0 klam_uc[]
+    klam_uc[$i] = $klam_nominal:$filt_uc:$i
+  end    
+
+  # place this within a valid season (55000.0 - 55010.0 - 55020.0 - 55030.0)
+  set exptime_uc = 15.0 + zero(klam_uc)
+
+  # ubercal zero points are defined as ZP_nominal + 2.5log(exptime) + K*(airmass - 1.0)
+  set zpt_uc = 25.0 + 2.5*log(exptime_uc) + klam_uc*(airmass_uc - 1.0) + ramp(klam_uc)*0.0050 - 0.0025
+
+  set mjd_uc = zero(zpt_uc)
+  mjd_uc[0] = 55000.01
+  mjd_uc[1] = 55000.02
+  mjd_uc[2] = 55000.03
+
+  create airmass_uc 0 klam_uc[]
+  set airmass_uc = 1.6 + zero(klam_uc)
+
+
+  ##### parameters for non-UBERCAL'ed images
+
+  $filt_nc:n = 27
+  create filtN_nc 0 $filt_nc:n
+  for i 0 $filt_nc
+    $filt_nc:$i = g
+    filtN_nc[$i] = 1
+  end
+
+  # airmass slopes for these sequnece
+  create klam_nc 0 $filt_nc:n
+  for i 0 klam_nc[]
+    klam_nc[$i] = $klam_nominal:$filt_nc:$i
+  end    
+
+  # place this within a valid season (55000.0 - 55010.0 - 55020.0 - 55030.0)
+  set exptime_nc = 15.0 + zero(klam_nc)
+
+  # ubercal zero points are defined as ZP_nominal + 2.5log(exptime) + K*(airmass - 1.0)
+  set zpt_nc = 25.0 + 2.5*log(exptime_nc) + klam_nc*(airmass_nc - 1.0) - ramp(klam_nc)*0.0050 + 0.0025
+
+  # with an ubercal tie, relphot should set zpts to the inserted values above
+  set mjd_nc = zero(zpt_nc)
+  mjd_nc[0] = 55000.11
+  mjd_nc[1] = 55000.12
+  mjd_nc[2] = 55000.13
+  mjd_nc[3] = 55015.11
+  mjd_nc[4] = 55015.12
+  mjd_nc[5] = 55015.13
+  mjd_nc[6] = 55025.11
+  mjd_nc[7] = 55025.12
+  mjd_nc[8] = 55025.13
+
+
+  for i 
+  set airmass_nc = 1.6 + zero(klam_nc)
+end
+
+macro go
+  if ($0 != 3)
+    echo "go (fileroot) (catdir)"
+    break
+  end
+
+  local i fileroot rootdir catdir
+
+  $fileroot = $1
+  $catdir = $2
+
+  dirname $1 -var rootdir
+  mkdir $rootdir
+
+  exec rm -rf $catdir
+
+  init
+  mkzptfile
+  mkstars 10000
+
+  tapPLAN {(((mjd_uc[] + mjd_nc[])*4 + (mjd_uc[] + mjd_nc[])) + (mjd_uc[] + mjd_nc[]))}
+
+  # generate the basic images and check they were correctly ingested by dvo
+  mksequence.drift $fileroot $catdir
+  for i 0 mjd_uc[]
+    ckexposure $catdir mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i raw
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i raw
+  end
+
+  # run setphot on the serial db and check that the images now match the expected values
+  exec setphot -reset -update -ubercal testzpt.fits -D CATDIR $catdir
+  for i 0 mjd_uc[]
+    ckexposure $catdir mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i setphot_uc
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i setphot_nc
+  end
+
+  # run relphot on the serial db and check that the images now match the expected values
+  # if ($VERBOSE) echo relphot g,r,i -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update >& log.relphot.s0
+  if ($VERBOSE) echo relphot g -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update -reset -D STAR_SCATTER 0.05>& log.relphot.s0
+  exec relphot g -v -region 9.5 10.5 19.5 20.5 -D CATDIR $catdir -D STAR_TOOFEW 1 -D SIGMA_LIM 0.07 -statmode WT_MEAN -cloud-limit 0.5 -keep-ubercal -D IMAGE_OFFSET 0.5 -update -reset -D STAR_SCATTER 0.05>& log.relphot.s0
+  for i 0 mjd_uc[]
+    ckexposure $catdir mjd_uc[$i] zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] $filt_uc:$i relphot
+  end
+  for i 0 mjd_nc[]
+    ckexposure $catdir mjd_nc[$i] zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] $filt_nc:$i relphot
+  end
+
+  tapDONE
+end
+
+macro ckexposure
+  if ($0 != 8)
+    echo "ckexposure (catdir) (mjd) (zpt) (exptime) (airmass) (filter) (mode)"
+    echo "  mode == raw or corr"
+    break
+  end
+
+  local CATDIR MJD_IMAGE ZPT_REAL ZPT_NOMINAL EXPTIME FILTER AIRMASS
+  
+  $CATDIR      = $1
+  $MJD_IMAGE   = $2
+  $ZPT_REAL    = $3
+  $EXPTIME     = $4
+  $AIRMASS     = $5
+  $FILTER      = $6
+  $MODE        = $7
+
+  # XXX need a function to extract the nominal zpt for a given filter / photcode from the db
+  $ZPT_NOMINAL = $zpt_nominal:$FILTER
+  $KLAM_NOMINAL = $klam_nominal:$FILTER
+
+  $TIMEFORMAT = mjd
+  $TIMEREF = 0.0
+
+  catdir $CATDIR
+
+  # assume we still have stars_ra, stars_dec, stars_mag in hand
+  if ($PLOT)
+    dev -n 0
+    region $RA_CENTER $DEC_CENTER 0.2
+    images
+    pmeasure -all -m 15 20
+  end
+
+  skyregion {$RA_CENTER - 0.2/dcos($DEC_CENTER)} {$RA_CENTER + 0.2/dcos($DEC_CENTER)} {$DEC_CENTER - 0.2} {$DEC_CENTER + 0.2} 
+  mextract ra dec mag xccd yccd where (abs(time - $MJD_IMAGE) < 0.0001)
+  if (not(ra[])) 
+    echo "no matching data for MJD = $MJD_IMAGE"
+    if ("$MODE" == "raw")
+      tapSKIP 4
+    else
+      tapSKIP 1
+    end
+    return
+  end
+  match2d -closest ra dec stars_ra stars_dec 0.001 -index1 index1 -index2 index2
+
+  reindex stars_ra_m  = stars_ra  using index1
+  reindex stars_dec_m = stars_dec using index1
+  reindex stars_mag_m = stars_mag using index1
+  if (ra[]  != stars_ra_m[])
+    echo "failed to match stars in catdir to stars in memory"
+    break
+  end
+  set dr = 3600*(ra - stars_ra_m)
+  set dd = 3600*(dec - stars_dec_m)
+  set dm = mag - stars_mag_m
+
+  if ($PLOT) 
+    dev -n 0
+    cplot -pt 7 -c red ra dec
+    dev -n 1
+    lim mag dm; clear; box; plot mag dm
+  end
+
+  set cell_xbin = int(xccd / ($CHIP_DX / $NCELL_X))
+  set cell_ybin = int(yccd / ($CHIP_DY / $NCELL_Y))
+  subset dm00 = dm if (cell_xbin == 0) && (cell_ybin == 0)
+  subset dm01 = dm if (cell_xbin == 0) && (cell_ybin == 1)
+  subset dm10 = dm if (cell_xbin == 1) && (cell_ybin == 0)
+  subset dm11 = dm if (cell_xbin == 1) && (cell_ybin == 1)
+
+  # uncorrected values behave like this:
+  #   mag_DVO  = m_inst + zpt_nominal + 2.5*log(exptime) + K*(airmass - 1.0)
+  #   mag_real = m_inst + zpt_real + cell_offset
+  #   dm = mag_DVO - mag_real = zpt_nominal - zpt_real - cell_offset
+  #   <dm> - zpt_nominal + zpt_real + cell_offset ~ 0.0
+  #   zpt_real (in this case) = 25.0  + 2.5*log(exptime) + K*(airmass - 1.0) 
+  #     (actually, it is the value in the vector 'zpt' for this entry
+  #   zpt_nominal = 24.58
+
+  # setphot-corrected values behave like this:
+  #   mag_DVO  = mag_real (because m_inst has cell_offset applied)
+  #   dm = mag_DVO - mag_real ~ 0.0
+
+  $ZPT_REAL_NORM = $ZPT_REAL - 2.5*log($EXPTIME) - $KLAM_NOMINAL*($AIRMASS - 1.0)
+  if ($VERBOSE) echo "$ZPT_REAL_NORM = $ZPT_REAL - 2.5*log($EXPTIME) - $KLAM_NOMINAL*($AIRMASS - 1.0)"
+
+  if ("$MODE" == "raw") 
+    for ix 0 $NCELL_X
+      for iy 0 $NCELL_Y
+        # vstat -q dm$ix\$iy
+        # echo cell_off[$ix][$iy] {$MEDIAN - $ZPT_NOMINAL + $ZPT_REAL + cell_off[$ix][$iy]} $MEDIAN $MEAN $SIGMA 
+  
+        set dm_adjust = dm$ix\$iy - $ZPT_NOMINAL + $ZPT_REAL_NORM
+        vstat -q dm_adjust
+        tapOK {abs($MEAN) < 0.005} "addstar raw ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+      end
+    end
+    return
+  end
+
+  if ("$MODE" == "setphot_uc") 
+    vstat -q dm
+    tapOK {abs($MEAN) < 0.005} "setphot_uc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "setphot_nc") 
+    vstat -q dm
+    tapOK {abs($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM) < 0.005} "setphot_nc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "relphot_nc") 
+    vstat -q dm
+    tapOK {abs($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM) < 0.005} "relphot_nc  ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+  if ("$MODE" == "relphot") 
+    vstat -q dm
+    tapOK {abs($MEAN) < 0.005} "relphot    ZP $MJD_IMAGE $FILTER : $MEAN $ZPT_NOMINAL $ZPT_REAL_NORM {($MEAN - $ZPT_NOMINAL + $ZPT_REAL_NORM)}"
+    return
+  end
+
+end
+
+macro mksequence.drift
+  if ($0 != 3)
+    echo "mksequence.drift (fileroot) (catdir)"
+    break
+  end
+
+  echo "starting mksequence..."
+  local i T1 T2
+
+  ctimes -abs now -var T1
+  # we have a second set of mjd and zero point values for non-ubercal'ed images
+  echo -no-return "making mjd_uc[] UC images: "
+  for i 0 mjd_uc[]
+    echo -no-return "$i.. "
+    mkexposure $1.uc.$i $RA_CENTER {$DEC_CENTER + $i*$CHIP_DY*$PLATE_SCALE*$NCHIP_Y*$OFFSET_FRAC_UC/3600.0} zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] mjd_uc[$i] $filt_uc:$i $2
+  end
+  echo ""
+  echo -no-return "making mjd_nc[] NC images: "
+  for i 0 mjd_nc[]
+    echo -no-return "$i.. "
+    mkexposure $1.nc.$i $RA_CENTER {$DEC_CENTER + $i*$CHIP_DY*$PLATE_SCALE*$NCHIP_Y*$OFFSET_FRAC_NC/3600.0} zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] mjd_nc[$i] $filt_nc:$i $2
+  end
+  ctimes -abs now -var T2
+  echo "done ({86400*($T2 - $T1)} sec)"
+end
+
+macro mksequence.1pt
+  if ($0 != 3)
+    echo "mksequence (fileroot) (catdir)"
+    break
+  end
+
+  echo "starting mksequence..."
+  local i T1 T2
+
+  ctimes -abs now -var T1
+  # we have a second set of mjd and zero point values for non-ubercal'ed images
+  echo -no-return "making mjd_uc[] UC images: "
+  for i 0 mjd_uc[]
+    echo -no-return "$i.. "
+    mkexposure $1.uc.$i $RA_CENTER $DEC_CENTER zpt_uc[$i] exptime_uc[$i] airmass_uc[$i] mjd_uc[$i] $filt_uc:$i $2
+  end
+  echo ""
+  echo -no-return "making mjd_nc[] NC images: "
+  for i 0 mjd_nc[]
+    echo -no-return "$i.. "
+    mkexposure $1.nc.$i $RA_CENTER $DEC_CENTER zpt_nc[$i] exptime_nc[$i] airmass_nc[$i] mjd_nc[$i] $filt_nc:$i $2
+  end
+  ctimes -abs now -var T2
+  echo "done ({86400*($T2 - $T1)} sec)"
+end
+
+macro mkexposure
+ if ($0 != 10)
+   echo "mkexposure (fileroot) (ra) (dec) (zpt) (exptime) (airmass) (mjd) (filter) (catdir)"
+   break
+ end
+
+ local ix iy date time datetime ra dec ROOT RAo DECo ZPT MJD FILTER EXPTIME AIRMASS CATDIR
+
+ $ROOT    = $1
+ $RAo     = $2
+ $DECo    = $3
+ $ZPT     = $4
+ $EXPTIME = $5
+ $AIRMASS = $6 
+ $MJD     = $7
+ $FILTER  = $8
+ $CATDIR  = $9
+
+ $TIMEFORMAT = mjd
+ $TIMEREF = 0.0
+
+ for ix 0 $NCHIP_X
+  for iy 0 $NCHIP_Y
+    $dx  = $CHIP_DX * $PLATE_SCALE * ($ix - 0.5*$NCHIP_X + 0.5)
+    $dy  = $CHIP_DY * $PLATE_SCALE * ($iy - 0.5*$NCHIP_Y + 0.5)
+    $ra  = $RAo  - $dx / 3600.0 / dcos($DECo)
+    $dec = $DECo - $dy / 3600.0
+    # echo $ra $dec $dx $dy
+    if ($VERBOSE) echo mkinput test.in.txt $ra $dec $ZPT 
+    mkinput test.in.txt $ra $dec $ZPT 
+    # costs 7/36 sec / chip
+    
+    # ra,dec is the center of this chip
+    local options
+    $options = -mjd $MJD 
+    $options = $options -radec $ra $dec 
+    $options = $options -type PS1_V2 
+    $options = $options -coords 
+    # use photcodes XY01, XY11, XY02, XY12 to avoid the corners
+    $options = $options -photcode GPC1.$FILTER.XY$ix\{$iy+1}
+    $options = $options -no-noise 
+    $options = $options -flags
+    $options = $options -bad-psfqf-frac $DEFECT_FRAC
+    $options = $options -size $CHIP_DX $CHIP_DY 
+    $options = $options -crpix {0.5*$CHIP_DX} {0.5*$CHIP_DY} 
+    $options = $options -airmass $AIRMASS
+    $options = $options -exptime $EXPTIME
+    if ($VERBOSE) echo mkcmf test.in.txt $ROOT.$ix.$iy.cmf $options 
+    exec mkcmf test.in.txt $ROOT.$ix.$iy.cmf $options
+    # costs 8/36 sec / chip
+
+    # the fake images have inconsistent ra,dec and airmass,sidtime values
+    if ($VERBOSE) echo addstar $ROOT.$ix.$iy.cmf -D CATDIR $CATDIR -D CAMERA gpc1 -quick-airmass
+    exec addstar $ROOT.$ix.$iy.cmf -D CATDIR $CATDIR -D CAMERA gpc1 -quick-airmass >& /dev/null
+    # costs 10/36 sec / chip
+  end
+ end
+end
+
+# make a simple input file for mkcmf
+macro mkinput
+  if ($0 != 5)
+    echo "mkinput (filename) (ra) (dec) (zpt)"
+    break
+  end
+
+  # chip coordinate of the stars
+  # ra,dec is at the chip center, which corresponds to pixel (CHIP_DX,CHIP_DY)/2
+  set stars_X = (stars_ra  - $2) * 3600.0 * dcos($3) / $PLATE_SCALE + $CHIP_DX*0.5
+  set stars_Y = (stars_dec - $3) * 3600.0            / $PLATE_SCALE + $CHIP_DY*0.5
+  set stars_M = (stars_mag - $4)
+
+  set valid = (stars_X > 0) && (stars_X < $CHIP_DX) && (stars_Y > 0) && (stars_Y < $CHIP_DX)
+  subset stars_x  = stars_X if valid
+  subset stars_y  = stars_Y if valid
+  subset stars_m  = stars_M if valid
+  subset stars_r  = stars_ra if valid
+  subset stars_d  = stars_dec if valid
+  subset stars_mr = stars_mag if valid
+
+  set cell_x = int(stars_x / ($CHIP_DX / $NCELL_X))
+  set cell_y = int(stars_y / ($CHIP_DX / $NCELL_X))
+
+  if (1)
+    # FLAT-FIELD CORRECTION 
+    # eddie says: M_real = M_inst + zpt + ff_offset
+    # thus, stars_mi = stars_mag - zpt - ff_offset = stars_m - offset
+    set stars_mi = zero(stars_m)
+    for i 0 stars_mi[]
+      $nx = cell_x[$i] 
+      $ny = cell_y[$i]
+      # $offset = cell_off[$nx][$ny]
+      $offset = 0.0
+      stars_mi[$i] = stars_m[$i] - $offset
+    end
+  else
+    set stars_mi = stars_m
+  end
+  
+  # create bad detections / detections to ignore or avoid, save to a file?
+
+  # create 3 types of things to ignore / avoid
+  # * badPhot (deviate the photometry)
+  # * badFlag (set a bad flag bit)
+  # * poorFlag (set a bad flag bit)
+  set badPhot  = rnd(stars_r) <  $DEFECT_FRAC
+  set badFlag  = rnd(stars_r) <  $DEFECT_FRAC
+  set poorFlag = rnd(stars_r) <  $DEFECT_FRAC
+
+  # create deviant photometry (1%)
+  # I'm setting the flag value 0x02 (EXTMODEL) if the object is deviated.  This is a simple way to pass the info
+  set stars_mi = stars_mi + 0.2*badPhot
+  set stars_fl = zero(stars_mi) + 0x00000080*badFlag + 0x00000100*poorFlag + 0x00000002*badPhot
+
+  # bad flags that we sould respect:
+  # PM_SOURCE_MODE_FAIL             = 0x00000008, ///< Fit (non-linear) failed (non-converge, off-edge, run to zero)
+  # PM_SOURCE_MODE_SATSTAR          = 0x00000080, ///< Source model peak is above saturation
+  # PM_SOURCE_MODE_BADPSF           = 0x00000400, ///< Failed to get good estimate of object's PSF
+  # PM_SOURCE_MODE_DEFECT           = 0x00000800, ///< Source is thought to be a defect
+  # PM_SOURCE_MODE_SATURATED        = 0x00001000, ///< Source is thought to be saturated pixels (bleed trail)
+  # PM_SOURCE_MODE_CR_LIMIT         = 0x00002000, ///< Source has crNsigma above limit
+  # PM_SOURCE_MODE_MOMENTS_FAILURE  = 0x00008000, ///< could not measure the moments
+  # PM_SOURCE_MODE_SKY_FAILURE      = 0x00010000, ///< could not measure the local sky
+  # PM_SOURCE_MODE_SKYVAR_FAILURE   = 0x00020000, ///< could not measure the local sky variance
+  # PM_SOURCE_MODE_SIZE_SKIPPED     = 0x10000000, ///< size could not be determined
+
+  # poor flags that we should respect:
+  # PM_SOURCE_MODE_POOR             = 0x00000010, ///< Fit succeeds, but low-SN, high-Chisq, or large (for PSF -- drop?)
+  # PM_SOURCE_MODE_PAIR             = 0x00000020, ///< Source fitted with a double psf
+  # PM_SOURCE_MODE_BLEND            = 0x00000100, ///< Source is a blend with other sources
+  # PM_SOURCE_MODE_BELOW_MOMENTS_SN = 0x00040000, ///< moments not measured due to low S/N
+  # PM_SOURCE_MODE_BLEND_FIT        = 0x00400000, ///< source was fitted as a blend
+  # PM_SOURCE_MODE_ON_SPIKE         = 0x20000000, ///< peak lands on diffraction spike
+  # PM_SOURCE_MODE_ON_GHOST         = 0x40000000, ///< peak lands on ghost or glint
+  # PM_SOURCE_MODE_OFF_CHIP         = 0x80000000, ///< peak lands off edge of chip
+
+  # delete the output file before writing
+  exec rm -f $1
+  write -f "%10.6f %10.6f %7.3f  %6.1f %6.1f %7.3f 0x%x" $1 stars_r stars_d stars_mr stars_x stars_y stars_mi stars_fl
+end
+
+# generate a set of stars with raw RA, DEC, MAG values to use for all of the output cmf files
+macro mkstars
+  if ($0 != 2)
+    echo "USAGE: mkstars (Nstars)"
+    break
+  end
+
+  echo "starting mkstars..."
+  local RA_RANGE DEC_RANGE
+
+  # the images are oriented along N-S, E-W lines
+
+  # size of region of interest in linear arcseconds
+  $RA_RANGE  = 1.25 * $CHIP_DX * $NCHIP_X * $PLATE_SCALE
+  $DEC_RANGE = 1.25 * $CHIP_DY * $NCHIP_Y * $PLATE_SCALE * (1 + tmpseq[]*$OFFSET_FRAC_NC)
+
+  create tmp 0 $1
+  set stars_ra  = $RA_CENTER  + $RA_RANGE  * (rnd(tmp) - 0.5) / 3600 / dcos ($DEC_CENTER)
+  set stars_dec = $DEC_CENTER + $DEC_RANGE * (rnd(tmp) - 0.5) / 3600
+  set stars_mag = 15.0 + 4.0 * rnd(tmp) 
+end
+
+# copy the catdir to catdir.p0 and parallelize to local directories catdir.d1 - catdir.d3
+macro mkparallel
+  if ($0 != 2)
+    echo "USAGE: mkparallel (catdir)"
+    break
+  end
+
+  local hostname catdir
+ 
+  $hostname = `hostname -s`
+
+  $tmp1 = `dirname $1`
+  $tmp2 = `basename $1`
+  $catdir = $tmp1/$tmp2
+
+  exec rsync -auv $catdir/ $catdir.p0/ >& log.rsync
+  mkdir $catdir.d1
+  mkdir $catdir.d2
+  mkdir $catdir.d3
+  
+  exec rm -f $catdir.p0/HostTable.dat
+  exec echo "1 $hostname $catdir.d1" >  $catdir.p0/HostTable.dat
+  exec echo "2 $hostname $catdir.d2" >> $catdir.p0/HostTable.dat
+  exec echo "3 $hostname $catdir.d3" >> $catdir.p0/HostTable.dat
+
+  exec dvodist -out $catdir.p0 >& log.dvodist.out
+end
+
+# create a fake ubercal-style zpt/flatcorr table with metadata
+macro mkzptfile
+
+  mcreate phu 0 0
+  keyword phu NSEASON -wd $NSEASON
+  keyword phu NFILTER -wd $NFILTER
+  keyword phu NCHIP_X -wd $NCHIP_X
+  keyword phu NCHIP_Y -wd $NCHIP_Y
+  keyword phu NCELL_X -wd $NCELL_X
+  keyword phu NCELL_Y -wd $NCELL_Y
+  keyword phu CHIP_DX -wd $CHIP_DX
+  keyword phu CHIP_DY -wd $CHIP_DY
+
+  # define the season boundaries
+  keyword phu TS0_0000 -wf 55000.0
+  keyword phu TS1_0000 -wf 55010.0
+  keyword phu TS0_0001 -wf 55010.0
+  keyword phu TS1_0001 -wf 55020.0
+  keyword phu TS0_0002 -wf 55020.0
+  keyword phu TS1_0002 -wf 55030.0
+
+  # create a single flat-field correction map for a single chip
+  mcreate cell_off 2 2
+  cell_off[0][0] =  0.01
+  cell_off[1][0] = -0.01
+  cell_off[0][1] =  0.02
+  cell_off[1][1] = -0.02
+
+  # in the correction table, we have an image of the full exposure
+  # (NCHIP_X x NCHIP_Y) for each season, unwrapped as a single linear
+  # vector (with the last two missing -- how is that hard wired?)
+
+  local ix iy ixc iyc ns
+
+  # unroll the chip & cell level corrections into a single vector for a single image
+  delete -q image_offset
+  for iy 0 $NCHIP_Y
+    for iyc 0 $NCELL_Y
+      for ix 0 $NCHIP_X
+        for ixc 0 $NCELL_X
+          concat cell_off[$ixc][$iyc] image_offset
+        end
+      end
+    end
+  end
+
+  # generate the full set of corrections for a single filter
+  delete -q offset
+  for ns 0 $NSEASON
+    concat image_offset offset
+  end
+
+  # the output fits table uses the vector names for the field names,
+  # so set them here to the desired names
+  set mjd_obs = mjd_uc
+  set zp = zpt_uc
+  set resid = 0.02*rnd(zpt_uc) - 0.01
+
+  delete -q flatcorr
+  dimenup offset flatcorr {$NSEASON*$NCHIP_X*$NCHIP_Y*$NCELL_X*$NCELL_Y} 1
+
+  wd phu testzpt.fits
+
+  # filter 1
+  write testzpt.fits -fits ZPTS_1 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w g
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+
+  # filter 2 (?)
+  write testzpt.fits -fits ZPTS_2 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w r
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+
+  # filter 3
+  write testzpt.fits -fits ZPTS_3 -f DDE -append mjd_obs zp resid 
+  keyword flatcorr FILTER -w i
+  keyword flatcorr EXTNAME -w FLATCORR
+  wd -extend flatcorr testzpt.fits
+end
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/test/run.relastro.sh
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/test/run.relastro.sh	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/test/run.relastro.sh	(revision 34041)
@@ -0,0 +1,55 @@
+#!/bin/csh -f
+
+set region = "-region 248 251 -2 1.2"
+set cat2M = catdir.2mass
+set catPS = catdir.PS1
+set raw2M = /data/ipp022.0/alala.0/ipp/ippRefs/catdir.2mass
+
+# create the database
+foreach file (smallset/*.smf)
+  addstar -D PHOTCODE_FILE dvo.photcodes.3pi -D CAMERA gpc1 -D CATDIR $catPS $file -update
+end
+addstar -D CAMERA gpc1 -D CATDIR $catPS -resort
+
+# NOTE: if the photcode table does not match the desire, do this:
+# dvosecfilt 8 catdir.small.merge.v3
+# photcode-table -import dvo.photcodes.3pi -D CATDIR catdir.small.merge.v3
+
+# make a local 2MASS database chunk
+dvosplit $raw2M 4 -outdir $cat2M -set-mode split -set-format PS1_REF $region
+addstar -resort -D CATDIR $cat2M $region
+# cp $raw2M/Images.dat catdir.2mass.d4/
+
+# dvomerge A and B to C is broken, so copy A (serial and parallel)
+rsync -auv $catPS/ $catPS.ser/
+rsync -auv $catPS/ $catPS.par/
+
+# merge 2MASS and PS1 (serial and parallel)
+dvomerge $cat2M into $catPS.ser $region
+dvomerge $cat2M into $catPS.par $region
+
+# ensure g,r,i,z,y,J,H,K ave values are set
+relphot -averages -update -D CATDIR $catPS.ser
+relphot -averages -update -D CATDIR $catPS.par
+
+# now parallelize the db
+sed s/CATDIR/$catPS.par/ < HostTable.dat > $catPS.par/HostTable.dat
+dvodist -out $catPS.par
+
+relastro -parallel -D CATDIR $catPS.par -high-speed r J 20.0 catdir.highspeed.par $region -D WHERE_A "(r:nphot > 3) && (r:err > 0.05)" -D WHERE_B "(J:err > 0.05)"
+relastro           -D CATDIR $catPS.ser -high-speed r J 20.0 catdir.highspeed.ser $region -D WHERE_A "(r:nphot > 3) && (r:err > 0.05)" -D WHERE_B "(J:err > 0.05)"
+
+relphot -reset -averages -update -D CATDIR catdir.highspeed.ser
+relphot -reset -averages -update -D CATDIR catdir.highspeed.par
+
+# test relastro runs
+if (0) then
+  relastro           -D CATDIR $catPS.ser $region -update-chips   -update
+  relastro           -D CATDIR $catPS.ser $region -update-objects -update
+  relastro           -D CATDIR $catPS.ser $region -update-objects -update -pm
+
+  relastro -parallel -D CATDIR $catPS.par $region -update-chips   -update
+  relastro -parallel -D CATDIR $catPS.par $region -update-objects -update
+  relastro -parallel -D CATDIR $catPS.par $region -update-objects -update -pm
+endif
+
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/test/simple.dvo
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/test/simple.dvo	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/test/simple.dvo	(revision 34041)
@@ -8,4 +8,5 @@
   test.fields PS1_V1 	PS1_V1
   test.fields PS1_V2 	PS1_V1
+  test.fields PS1_V3 	PS1_V1
 
   test.fields PS1_DEV_0 PS1_V2
@@ -13,4 +14,11 @@
   test.fields PS1_V1 	PS1_V2
   test.fields PS1_V2 	PS1_V2
+  test.fields PS1_V3 	PS1_V2
+
+  test.fields PS1_DEV_0 PS1_V3
+  test.fields PS1_DEV_1 PS1_V3
+  test.fields PS1_V1 	PS1_V3
+  test.fields PS1_V2 	PS1_V3
+  test.fields PS1_V3 	PS1_V3
 end  
 
@@ -31,5 +39,5 @@
   mkinput
   exec mkcmf test.in.txt test.cmf -date 2008/1/1 -time 01:00:00 -radec $RA $DEC -type $1
-  exec addstar -D CATDIR catdir.test -D CAMERA simtest test.cmf -D CATFORMAT $2
+  exec addstar -D CATDIR catdir.test -D CAMERA simtest test.cmf -D CATFORMAT $2 -quick-airmass
 
   list testfields -copy testfields_$1
@@ -220,2 +228,38 @@
   N_FRAMES          : SKIP # no accessor	
 end
+
+# this list is good for PS1_V3
+list testfields_PS1_V3
+  IPP_IDET          : detid	
+  X_PSF             : xccd	
+  Y_PSF             : yccd	
+  X_PSF_SIG         : xccd:err # FAIL
+  Y_PSF_SIG         : yccd:err # FAIL
+  RA_PSF            : SKIP # astrometry is not calibrated in the cmf
+  DEC_PSF           : SKIP # astrometry is not calibrated in the cmf
+  POSANGLE          : SKIP # astrometry is not calibrated in the cmf
+  PLTSCALE          : SKIP # astrometry is not calibrated in the cmf
+  PSF_INST_MAG      : mag:inst	
+  PSF_INST_MAG_SIG  : mag:err	
+  AP_MAG_STANDARD   : mag:ap # FAIL
+  AP_MAG_RADIUS     : SKIP # no accessor
+  PEAK_FLUX_AS_MAG  : SKIP # no accessor
+  CAL_PSF_MAG       : SKIP # photometry is not calibrated in the cmf
+  CAL_PSF_MAG_SIG   : SKIP # photometry is not calibrated in the cmf
+  SKY               : sky	
+  SKY_SIG           : sky_err	
+  PSF_CHISQ         : psf_chisq	
+  CR_NSIGMA         : cr_nsigma	
+  EXT_NSIGMA        : ext_nsigma
+  PSF_MAJOR         : FWHM_MAJ	
+  PSF_MINOR         : FWHM_MIN	
+  PSF_THETA         : THETA # FAIL
+  PSF_QF            : PSF_QF	
+  PSF_NDOF          : SKIP # no accessor
+  PSF_NPIX          : SKIP # no accessor
+  MOMENTS_XX        : SKIP # no accessor
+  MOMENTS_XY        : SKIP # no accessor
+  MOMENTS_YY        : SKIP # no accessor
+  FLAGS             : phot_flags
+  N_FRAMES          : SKIP # no accessor	
+end
Index: branches/meh_branches/ppstack_test/Ohana/src/addstar/test/tap.dvo
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/addstar/test/tap.dvo	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/addstar/test/tap.dvo	(revision 34041)
@@ -1,3 +1,5 @@
 # -*-sh-*-
+
+if (not($?TAP_BREAK)) set TAP_BREAK = 0
 
 macro tapOK
@@ -29,6 +31,17 @@
   $TAP_NTEST = $1
   $TAP_NFAIL = 0
+  $TAP_NSKIP = 0
   $TAP_NDONE = 0
   if (not($?TAP_BREAK)) set TAP_BREAK = 0
+end
+
+macro tapSKIP
+  if ($0 != 2) 
+    echo "USAGE: tapSKIP (nskip)"
+    break
+  end
+
+  $TAP_NSKIP ++
+  $TAP_NDONE ++
 end
 
@@ -47,5 +60,9 @@
   end
 
-  if ($TAP_NFAIL == 0) 
+  if ($TAP_NSKIP) 
+    echo "skipped $TAP_NSKIP of $TAP_NDONE"
+  end
+
+  if ($TAP_NFAIL + $TAP_NSKIP == 0) 
     echo "passed $TAP_NDONE tests"
   end
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/Makefile	(revision 34041)
@@ -1,5 +1,5 @@
 default: all
 help:
-	@echo "make options: dvomerge (default)"
+	@echo "make options: dvomerge dvomerge_client dvoconvert (default)"
 
 include ../../Makefile.System
@@ -17,8 +17,9 @@
 FULL_LDFLAGS  = -lkapa -ldvo -lFITS -lohana $(BASE_LDFLAGS)
 
-dvomerge     : $(BIN)/dvomerge.$(ARCH)
-dvomerge     : $(BIN)/dvoconvert.$(ARCH)
+dvomerge        : $(BIN)/dvomerge.$(ARCH)
+dvomerge_client : $(BIN)/dvomerge_client.$(ARCH)
+dvoconvert      : $(BIN)/dvoconvert.$(ARCH)
 
-all: dvomerge dvoconvert dvosecfilt
+all: dvomerge dvomerge_client dvoconvert dvosecfilt
 
 #  $(SRC)/dvomergeContinue.$(ARCH).o
@@ -28,8 +29,10 @@
 $(SRC)/dvomergeUpdate.$(ARCH).o \
 $(SRC)/dvomergeCreate.$(ARCH).o \
+$(SRC)/dvomergeUpdate_catalogs.$(ARCH).o \
 $(SRC)/dvomergeUpdate_threaded.$(ARCH).o \
 $(SRC)/dvomergeFromList.$(ARCH).o \
 $(SRC)/dvomergeImageIDs.$(ARCH).o \
 $(SRC)/dvo_image_merge_dbs.$(ARCH).o \
+$(SRC)/IDmapIO.$(ARCH).o \
 $(SRC)/SetSignals.$(ARCH).o \
 $(SRC)/ConfigInit.$(ARCH).o \
@@ -41,4 +44,5 @@
 $(SRC)/LoadCatalog.$(ARCH).o \
 $(SRC)/build_links.$(ARCH).o \
+$(SRC)/replace_match.$(ARCH).o \
 $(SRC)/merge_catalogs_new.$(ARCH).o \
 $(SRC)/merge_catalogs_old.$(ARCH).o
@@ -47,4 +51,27 @@
 
 $(BIN)/dvomerge.$(ARCH) : $(DVOMERGE)
+
+DVOMERGE_CLIENT = \
+$(SRC)/dvomerge_client.$(ARCH).o \
+$(SRC)/dvomergeUpdate_catalogs.$(ARCH).o \
+$(SRC)/dvomergeImageIDs.$(ARCH).o \
+$(SRC)/dvo_image_merge_dbs.$(ARCH).o \
+$(SRC)/IDmapIO.$(ARCH).o \
+$(SRC)/SetSignals.$(ARCH).o \
+$(SRC)/ConfigInit.$(ARCH).o \
+$(SRC)/Shutdown.$(ARCH).o \
+$(SRC)/help.$(ARCH).o \
+$(SRC)/args.$(ARCH).o \
+$(SRC)/psps_ids.$(ARCH).o \
+$(SRC)/SkyTablePopulatedRange.$(ARCH).o \
+$(SRC)/LoadCatalog.$(ARCH).o \
+$(SRC)/build_links.$(ARCH).o \
+$(SRC)/replace_match.$(ARCH).o \
+$(SRC)/merge_catalogs_new.$(ARCH).o \
+$(SRC)/merge_catalogs_old.$(ARCH).o
+
+$(DVOMERGE_CLIENT) : $(INC)/dvomerge.h
+
+$(BIN)/dvomerge_client.$(ARCH) : $(DVOMERGE_CLIENT)
 
 DVOCONVERT = \
@@ -99,5 +126,5 @@
 $(BIN)/dvoverify.$(ARCH) : $(DVOVERIFY)
 
-INSTALL = dvomerge dvoconvert dvosecfilt dvorepair dvoverify
+INSTALL = dvomerge dvomerge_client dvoconvert dvosecfilt dvorepair dvoverify
 
 # dependancy rules for binary code #########################
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/doc/failsafe.txt
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/doc/failsafe.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/doc/failsafe.txt	(revision 34041)
@@ -0,0 +1,84 @@
+
+we have a problem with dvomerge and flaky hosts.  the problem is that
+an I/O glitch can prevent a table from being written.  although we can
+(and do?) catch the failure, we do not have a good recovery method.
+recovery would involve 2 things:
+
+1) we should revert the failed table to the original state
+2) we should be able to re-run the merge correctly
+
+point (1) implies that we need a solid copy of the original file before
+writing the new output tables.  
+
+point (2) implies that we need to know which tables have been
+successfully merged.  
+
+For point (1), since we are writing out the entire table, we can
+*move* the original file to a temporary name, and unlink it when the
+output is successful.
+
+For point (2), we should write an ID to the output header that comes
+from the input catalog file.  then a second attempt will skip any
+tables for which the IDs already match.  
+
+Problems & Questions for (2):
+
+* do we need to have the ID in each input db table?  
+* we do not have an ID already in existing tables -- I'll need a tool
+  to write the ID
+OR
+* can we use something like the name & date of the file to check the
+* identity?
+
+(name, date, size can be determined without reading the file, so that
+is quite tempting...)
+
+I'll still need to do 2 passes, on where I determine which output
+tables match the given input table, then check those output tables for
+the merge data.
+
+---
+
+Proposal:
+
+1) Add the following data to the output catalogs:
+
+OBJID   =                  675 /                                               
+LMRG_DB = 'catdir.2mass'       / name of last merged database
+LMRG_ST = 80640                / size of last merged cpt file
+LMRG_SS = 118080               / size of last merged cps file
+LMRG_SM = 331200               / size of last merged cpm file
+LMRG_DT = '2012-04-27 16:42:45' / mod-date of last merged cpm file
+
+This allows us to tell if the current catalog has been merged in yet,
+but it does not require us to track any database IDs.  If a file has
+been merged, we skip it; otherwise, we merge it.
+
+The proposal may do the wrong thing in the following case:
+
+dvomerge db1 into db2
+(failure part way through)
+
+addstar file -D CATDIR db1
+
+dvomerge db1 into db2
+
+If 'file' overlaps the already-merged sections of db1, they will be
+re-ingested.  In fact, the first pass need not have failed -- it will
+still double merge some data.  
+
+However, it does mean the following does the right thing:
+
+dvomerge db1 into db2
+
+dvomerge db1 into db2
+
+(no merge should happen on the second pass)
+
+dvomerge db1 into db2
+(failure)
+
+dvomerge db1 into db2
+
+(only unmerged entries should be merged on the second pass)
+
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/doc/parallel.txt
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/doc/parallel.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/doc/parallel.txt	(revision 34041)
@@ -0,0 +1,8 @@
+
+dvomergeUpdate parallel version:
+
+ * master should update photcode table & image table
+ * master should call remote clients to update their catalog tables
+ * write out a temporary IDmap for the remote clients?
+ * put the inlist loop into a function which can be called by the client or the master
+ 
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/include/dvomerge.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/include/dvomerge.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/include/dvomerge.h	(revision 34041)
@@ -17,6 +17,13 @@
 # include <glob.h>
 
-# define myAbort(MSG) { fprintf (stderr, "%s\n", MSG); abort(); }
-# define myAssert(LOGIC,MSG) { if (!(LOGIC)) { fprintf (stderr, "%s\n", MSG); abort(); } }
+# define DVO_MAX_PATH 1024
+
+int    PARALLEL;
+int    PARALLEL_MANUAL;
+int    PARALLEL_SERIAL;
+
+int    HOST_ID;
+char  *HOSTDIR;
+
 
 int    VERBOSE;
@@ -29,12 +36,13 @@
 int    SKY_DEPTH;
 int    NTHREADS;
-char   *ALTERNATE_PHOTCODE_FILE;
+char  *ALTERNATE_PHOTCODE_FILE;
+int    REPLACE_BY_PHOTCODE;
 
 SkyRegion UserPatch;  // used by MODE CAT
 
 typedef struct {
-  off_t Nmap;
-  off_t *old;
-  off_t *new;
+  unsigned int Nmap;
+  unsigned int *old;
+  unsigned int *new;
 } IDmapType;
 
@@ -54,4 +62,8 @@
 void 	   dvomerge_help          PROTO((int argc, char **argv));
 int  	   dvomerge_args 	  PROTO((int *argc, char **argv));
+
+void       dvomerge_client_usage  PROTO((void));
+void 	   dvomerge_client_help   PROTO((int argc, char **argv));
+int  	   dvomerge_client_args   PROTO((int *argc, char **argv));
 
 void       dvoconvert_usage       PROTO((void));
@@ -113,2 +125,8 @@
 int        dvomergeFromList       PROTO((int argc, char **argv));
 int 	   dvomergeUpdate_threaded PROTO((int argc, char **argv));
+int        dvomergeUpdate_catalogs PROTO((char *input, char *output, SkyTable *outsky, SkyList *inlist, int NsecfiltInput, int NsecfiltOutput, IDmapType *IDmap, int *secfiltMap));
+
+int        replace_match           PROTO((Average *average_out, Measure *measure_out, Average *average_in, Measure *measure_in));
+
+int        IDmapSave               PROTO((char *filename, IDmapType *IDmap));
+IDmapType *IDmapLoad               PROTO((char *filename));
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/IDmapIO.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/IDmapIO.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/IDmapIO.c	(revision 34041)
@@ -0,0 +1,137 @@
+# include "dvomerge.h"
+
+# define GET_COLUMN(OUT,NAME,TYPE) \
+  OUT = gfits_get_bintable_column_data (&theader, &ftable, NAME, type, &Nrow, &Ncol); \
+  myAssert (!strcmp(type, #TYPE), "wrong column type");
+
+// STATUS is value expected for success
+# define CHECK_STATUS(STATUS,MSG,...)					\
+  if (!(STATUS)) {							\
+    fprintf (stderr, MSG, __VA_ARGS__);					\
+    return FALSE;							\
+  }
+
+// write out the IDmap data for clients to read
+int IDmapSave(char *filename, IDmapType *IDmap) {
+
+  Header header;
+  Header theader;
+  Matrix matrix;
+  FTable ftable;
+
+  gfits_init_header (&header);
+  header.extend = TRUE;
+  gfits_create_header (&header);
+  gfits_create_matrix (&header, &matrix);
+
+  gfits_create_table_header (&theader, "BINTABLE", "IMAGE_ID_MAP");
+
+  gfits_define_bintable_column (&theader, "J", "OLD_IDS", "old image IDs", NULL, 1.0, 1.0*0x8000);
+  gfits_define_bintable_column (&theader, "J", "NEW_IDS", "new image IDs", NULL, 1.0, 1.0*0x8000);
+
+  // generate the output array that carries the data
+  gfits_create_table (&theader, &ftable);
+
+  // add the columns to the output array
+  // XXX does this damage the data (due to byte swaps?) 
+  // XXX does it matter?
+  gfits_set_bintable_column (&theader, &ftable, "OLD_IDS", IDmap->old, IDmap->Nmap);
+  gfits_set_bintable_column (&theader, &ftable, "NEW_IDS", IDmap->new, IDmap->Nmap);
+
+  FILE *f = fopen (filename, "w");
+  if (!f) {
+    fprintf (stderr, "ERROR: cannot open ID map file for output %s\n", filename);
+    return FALSE;
+  }
+
+  int status;
+  status = gfits_fwrite_header  (f, &header);
+  CHECK_STATUS (status, "ERROR: cannot write header for image subset %s\n", filename);
+
+  status = gfits_fwrite_matrix  (f, &matrix);
+  CHECK_STATUS (status, "ERROR: cannot write matrix for image subset %s\n", filename);
+
+  status = gfits_fwrite_Theader (f, &theader);
+  CHECK_STATUS (status, "ERROR: cannot write table header for image subset %s\n", filename);
+
+  status = gfits_fwrite_table  (f, &ftable);
+  CHECK_STATUS (status, "ERROR: cannot write table data for image subset %s\n", filename);
+
+  gfits_free_header (&header);
+  gfits_free_matrix (&matrix);
+  gfits_free_header (&theader);
+  gfits_free_table (&ftable);
+
+  int fd = fileno (f);
+
+  status = fflush (f);
+  CHECK_STATUS (!status, "ERROR: cannot flush file image subset %s\n", filename);
+
+  status = fsync (fd);
+  CHECK_STATUS (!status, "ERROR: cannot flush file image subset %s\n", filename);
+
+  status = fclose (f);
+  CHECK_STATUS (!status, "ERROR: problem closing image subset file %s\n", filename);
+
+  return TRUE;
+}
+
+IDmapType *IDmapLoad (char *filename) {
+
+  int Ncol;
+  off_t Nrow;
+  Header header;
+  Header theader;
+  Matrix matrix;
+  FTable ftable;
+  IDmapType *IDmap;
+
+  ALLOCATE (IDmap, IDmapType, 1);
+  IDmap->Nmap = 0;
+  IDmap->old = NULL;
+  IDmap->new = NULL;
+
+  FILE *f = fopen (filename, "r");
+  if (!f) {
+    fprintf (stderr, "ERROR: cannot open image subset file %s\n", filename);
+    return NULL;
+  }
+
+  /* load in PHU segment (ignore) */
+  if (!gfits_fread_header (f, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read image subset header\n");
+    fclose (f);
+    return NULL;
+  }
+  if (!gfits_fread_matrix (f, &matrix, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read image subset matrix\n");
+    gfits_free_header (&header);
+    fclose (f);
+    return NULL;
+  }
+
+  ftable.header = &theader;
+
+  // load data for this header 
+  if (!gfits_load_header (f, &theader)) {
+    fclose (f);
+    return NULL;
+  }
+
+  // read the fits table bytes
+  if (!gfits_fread_ftable_data (f, &ftable, FALSE)) {
+    fclose (f);
+    return (NULL);
+  }
+  fclose (f);
+
+  char type[16];
+
+  GET_COLUMN (IDmap->old, "OLD_IDS", int);
+  GET_COLUMN (IDmap->new, "NEW_IDS", int);
+  IDmap->Nmap = Nrow;
+  fprintf (stderr, "loaded data for %lld images\n", (long long) Nrow);
+
+  return IDmap;
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/args.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/args.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/args.c	(revision 34041)
@@ -14,5 +14,12 @@
   if ((N = get_argument (*argc, argv, "-photcode-file"))) {
     remove_argument (N, argc, argv);
-    ALTERNATE_PHOTCODE_FILE = strdup(argv[N]);
+    ALTERNATE_PHOTCODE_FILE = strcreate(argv[N]);
+    remove_argument (N, argc, argv);
+  }
+
+  /* replace measurement, don't duplicate */
+  REPLACE_BY_PHOTCODE = FALSE;
+  if ((N = get_argument (*argc, argv, "-replace"))) {
+    REPLACE_BY_PHOTCODE = TRUE;
     remove_argument (N, argc, argv);
   }
@@ -43,5 +50,102 @@
   }
 
+  // XXX for the moment, make this selection manual.  it needs to be automatic 
+  // based on the state of the SkyTable
+  PARALLEL = FALSE;
+  if ((N = get_argument (*argc, argv, "-parallel"))) {
+    PARALLEL = TRUE;
+    remove_argument (N, argc, argv);
+  }
+  // this is a test mode : rather than launching the remote jobs and waiting for completion,
+  // relphot will simply list the remote command and wait for the user to signal completion
+  PARALLEL_MANUAL = FALSE;
+  if ((N = get_argument (*argc, argv, "-parallel-manual"))) {
+    PARALLEL = TRUE; // -parallel-manual implies -parallel
+    PARALLEL_MANUAL = TRUE;
+    remove_argument (N, argc, argv);
+  }
+  // this is a test mode : rather than launching the relphot_client jobs remotely, they are 
+  // run in serial via 'system'
+  PARALLEL_SERIAL = FALSE;
+  if ((N = get_argument (*argc, argv, "-parallel-serial"))) {
+    if (PARALLEL_MANUAL) {
+      fprintf (stderr, "ERROR: cannot mix -parallel-manual and -parallel-serial\n");
+      exit (1);
+    }
+    PARALLEL = TRUE; // -parallel-serial implies -parallel
+    PARALLEL_SERIAL = TRUE;
+    remove_argument (N, argc, argv);
+  }
+
   if ((*argc < 4) || (*argc > 6)) dvomerge_usage();
+  return TRUE;
+}
+
+/*** check for command line options ***/
+int dvomerge_client_args (int *argc, char **argv) {
+  
+  int N;
+
+  // by definition, the client is not parallel 
+  PARALLEL = FALSE;
+  PARALLEL_MANUAL = FALSE;
+  PARALLEL_SERIAL = FALSE;
+
+  HOST_ID = 0;
+  if ((N = get_argument (*argc, argv, "-hostID"))) {
+    remove_argument (N, argc, argv);
+    HOST_ID = atoi (argv[N]);
+    remove_argument (N, argc, argv);
+  }
+  if (!HOST_ID) dvomerge_client_usage();
+
+  HOSTDIR = NULL;
+  if ((N = get_argument (*argc, argv, "-hostdir"))) {
+    remove_argument (N, argc, argv);
+    HOSTDIR = strcreate (argv[N]);
+    remove_argument (N, argc, argv);
+  }
+  if (!HOSTDIR) dvomerge_client_usage();
+
+  /* extra error messages */
+  VERBOSE = FALSE;
+  if ((N = get_argument (*argc, argv, "-v"))) {
+    VERBOSE = TRUE;
+    remove_argument (N, argc, argv);
+  }
+
+  /* replace measurement, don't duplicate */
+  REPLACE_BY_PHOTCODE = FALSE;
+  if ((N = get_argument (*argc, argv, "-replace"))) {
+    REPLACE_BY_PHOTCODE = TRUE;
+    remove_argument (N, argc, argv);
+  }
+
+  NTHREADS = 0;
+  if ((N = get_argument (*argc, argv, "-threads"))) {
+    remove_argument (N, argc, argv);
+    NTHREADS = MAX(0, atoi(argv[N]));
+    remove_argument (N, argc, argv);
+  }
+
+  /*** provide additional data ***/ 
+  /* restrict to a portion of the sky? */
+  UserPatch.Rmin = 0;
+  UserPatch.Rmax= 360;
+  UserPatch.Dmin = -90;
+  UserPatch.Dmax = +90;
+  if ((N = get_argument (*argc, argv, "-region"))) {
+    remove_argument (N, argc, argv);
+    UserPatch.Rmin = atof (argv[N]);
+    remove_argument (N, argc, argv);
+    UserPatch.Rmax = atof (argv[N]);
+    remove_argument (N, argc, argv);
+    UserPatch.Dmin = atof (argv[N]);
+    remove_argument (N, argc, argv);
+    UserPatch.Dmax = atof (argv[N]);
+    remove_argument (N, argc, argv);
+  }
+
+  if ((*argc < 4) || (*argc > 6)) dvomerge_client_usage();
   return TRUE;
 }
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvo_image_merge_dbs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvo_image_merge_dbs.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvo_image_merge_dbs.c	(revision 34041)
@@ -1,51 +1,8 @@
 # include "dvomerge.h"
 
+// utility functions
 void sort_IDmap (IDmapType *IDmap);
-
-off_t getTgtIndex (e_time start, e_time stop, short photcode, off_t *TgtIndex, e_time *TgtTimes, short *TgtCodes, off_t NimagesTgt) {
-
-  // use bisection to find the starting entry by time
-
-  off_t Nlo, Nhi, N;
-
-  // find the last TGT before start
-  Nlo = 0; Nhi = NimagesTgt;
-  while (Nhi - Nlo > 10) {
-    N = 0.5*(Nlo + Nhi);
-    if (TgtTimes[N] < start) {
-      Nlo = MAX(N, 0);
-    } else {
-      Nhi = MIN(N + 1, NimagesTgt);
-    }
-  }
-
-  // check for the matched mosaic starting from Nlo 
-  // we may have to go much beyond Nlo since stop is not sorted
-  // can we use a sorted version of stop to check when we are beyond the valid range??
-  for (N = Nlo; N < NimagesTgt; N++) { 
-    if (TgtTimes[N] < start) continue;
-    if (TgtTimes[N] > stop) return (-1);
-    if (TgtCodes[N] != photcode) continue;
-    return (TgtIndex[N]);
-  }
-  return (-1);
-}
-
-// sort two times vectors and an index by first time vector
-void SortTgtByTimes (e_time *S, off_t *I, short *C, off_t N) {
-
-# define SWAPFUNC(A,B){ e_time tmp_t; off_t tmp_i; short tmp_c; 	\
-  tmp_t = S[A]; S[A] = S[B]; S[B] = tmp_t; \
-  tmp_i = I[A]; I[A] = I[B]; I[B] = tmp_i; \
-  tmp_c = C[A]; C[A] = C[B]; C[B] = tmp_c; \
-}
-# define COMPARE(A,B)(S[A] < S[B])
-
-  OHANA_SORT (N, COMPARE, SWAPFUNC);
-
-# undef SWAPFUNC
-# undef COMPARE
-
-}
+void SortTgtByTimes (e_time *S, off_t *I, short *C, off_t N);
+off_t getTgtIndex (e_time start, e_time stop, short photcode, off_t *TgtIndex, e_time *TgtTimes, short *TgtCodes, off_t NimagesTgt);
 
 // we have two tables; 'tgt' contains some exposures from 'src' : find them and match a map
@@ -71,6 +28,6 @@
   }
 
-  ALLOCATE (IDmap->old, off_t, NimagesSrc);
-  ALLOCATE (IDmap->new, off_t, NimagesSrc);
+  ALLOCATE (IDmap->old, unsigned int, NimagesSrc);
+  ALLOCATE (IDmap->new, unsigned int, NimagesSrc);
   IDmap->Nmap = NimagesSrc;
 
@@ -116,4 +73,12 @@
   int status;
  
+  IDmap->old = NULL;
+  IDmap->new = NULL;
+
+  // it is OK if there are no images in the database, but there should be no imageIDs to map...
+  if (in->dbstate == LCK_EMPTY) {
+    return TRUE;
+  }
+
   images = gfits_table_get_Image (&in[0].ftable, &Nimages, &in[0].swapped);
   if (!images) {
@@ -122,6 +87,6 @@
   }
 
-  ALLOCATE (IDmap->old, off_t, Nimages);
-  ALLOCATE (IDmap->new, off_t, Nimages);
+  ALLOCATE (IDmap->old, unsigned int, Nimages);
+  ALLOCATE (IDmap->new, unsigned int, Nimages);
   IDmap->Nmap = Nimages;
 
@@ -157,5 +122,6 @@
 }
 
-// XXX isn't the map just ID_new = ID_old + offset ??
+// map this ID to the new table
+// XXX isn't the map just ID_new = ID_old + offset ?? (probably not)
 off_t dvo_map_image_ID (IDmapType *IDmap, off_t oldID) {
 
@@ -191,4 +157,5 @@
 }
 
+// given a table of detections, update their image IDs based on the new map
 int dvo_update_image_IDs (IDmapType *IDmap, Catalog *catalog) {
 
@@ -198,4 +165,8 @@
     oldID = catalog[0].measure[i].imageID;
     if (oldID == 0) continue;
+
+    if (!IDmap->old) {
+      fprintf (stderr, "input database has image IDs, but no Image table\n");
+    }
 
     newID = dvo_map_image_ID (IDmap, oldID);
@@ -225,2 +196,48 @@
 }
 
+off_t getTgtIndex (e_time start, e_time stop, short photcode, off_t *TgtIndex, e_time *TgtTimes, short *TgtCodes, off_t NimagesTgt) {
+
+  // use bisection to find the starting entry by time
+
+  off_t Nlo, Nhi, N;
+
+  // find the last TGT before start
+  Nlo = 0; Nhi = NimagesTgt;
+  while (Nhi - Nlo > 10) {
+    N = 0.5*(Nlo + Nhi);
+    if (TgtTimes[N] < start) {
+      Nlo = MAX(N, 0);
+    } else {
+      Nhi = MIN(N + 1, NimagesTgt);
+    }
+  }
+
+  // check for the matched mosaic starting from Nlo 
+  // we may have to go much beyond Nlo since stop is not sorted
+  // can we use a sorted version of stop to check when we are beyond the valid range??
+  for (N = Nlo; N < NimagesTgt; N++) { 
+    if (TgtTimes[N] < start) continue;
+    if (TgtTimes[N] > stop) return (-1);
+    if (TgtCodes[N] != photcode) continue;
+    return (TgtIndex[N]);
+  }
+  return (-1);
+}
+
+// sort two times vectors and an index by first time vector
+void SortTgtByTimes (e_time *S, off_t *I, short *C, off_t N) {
+
+# define SWAPFUNC(A,B){ e_time tmp_t; off_t tmp_i; short tmp_c; 	\
+  tmp_t = S[A]; S[A] = S[B]; S[B] = tmp_t; \
+  tmp_i = I[A]; I[A] = I[B]; I[B] = tmp_i; \
+  tmp_c = C[A]; C[A] = C[B]; C[B] = tmp_c; \
+}
+# define COMPARE(A,B)(S[A] < S[B])
+
+  OHANA_SORT (N, COMPARE, SWAPFUNC);
+
+# undef SWAPFUNC
+# undef COMPARE
+
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvoconvert.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvoconvert.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvoconvert.c	(revision 34041)
@@ -100,7 +100,7 @@
 
   // save the output sky table copy
-  sprintf (filename, "%s/SkyTable.fits", output);
-  check_file_access (filename, TRUE, TRUE, VERBOSE);
-  if (!SkyTableSave (outsky, filename)) {
+  char *skyfile = SkyTableFilename (output);
+  check_file_access (skyfile, TRUE, TRUE, VERBOSE);
+  if (!SkyTableSave (outsky, skyfile)) {
     fprintf (stderr, "ERROR: failed to save sky table for %s\n", output);
     exit (1);
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeContinue.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeContinue.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeContinue.c	(revision 34041)
@@ -150,7 +150,7 @@
 
   // save the output sky table copy
-  sprintf (filename, "%s/SkyTable.fits", output);
-  check_file_access (filename, TRUE, TRUE, VERBOSE);
-  if (!SkyTableSave (outsky, filename)) {
+  char *skyfile = SkyTableFilename (output);
+  check_file_access (skyfile, TRUE, TRUE, VERBOSE);
+  if (!SkyTableSave (outsky, skyfile)) {
     fprintf (stderr, "ERROR: failed to save sky table for %s\n", output);
     exit (1);
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeContinue_threaded.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeContinue_threaded.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeContinue_threaded.c	(revision 34041)
@@ -277,7 +277,7 @@
 
   // save the output sky table copy
-  sprintf (filename, "%s/SkyTable.fits", output);
-  check_file_access (filename, TRUE, TRUE, VERBOSE);
-  if (!SkyTableSave (outsky, filename)) {
+  char *skyfile = SkyTableFilename  (output);
+  check_file_access (skyfile, TRUE, TRUE, VERBOSE);
+  if (!SkyTableSave (outsky, skyfile)) {
     fprintf (stderr, "ERROR: failed to save sky table for %s\n", output);
     exit (1);
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeCreate.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeCreate.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeCreate.c	(revision 34041)
@@ -124,16 +124,18 @@
   depth2 = insky2[0].regions[Ns].depth;
 
+  SkyList *outlist = SkyListByPatch (outsky, -1, &UserPatch);
+
   // loop over the populatable output regions
-  for (i = 0; i < outsky[0].Nregions; i++) {
-    if (!outsky[0].regions[i].table) continue;
-    if (VERBOSE) fprintf (stderr, "output: %s\n", outsky[0].regions[i].name);
+  for (i = 0; i < outlist[0].Nregions; i++) {
+    if (!outlist[0].regions[i][0].table) continue;
+    if (VERBOSE) fprintf (stderr, "output: %s\n", outlist[0].regions[i][0].name);
 
     // load / create output catalog
-    LoadCatalog (&outcatalog, &outsky[0].regions[i], outsky[0].filename[i], "w", NsecfiltOutput);
+    LoadCatalog (&outcatalog, outlist[0].regions[i], outlist[0].filename[i], "w", NsecfiltOutput);
 
     // combine only tables at equal or larger depth
       
     // load in all of the tables from input1 for this region
-    inlist = SkyListByBounds (insky1, depth1, outsky[0].regions[i].Rmin, outsky[0].regions[i].Rmax, outsky[0].regions[i].Dmin, outsky[0].regions[i].Dmax);
+    inlist = SkyListByBounds (insky1, depth1, outlist[0].regions[i][0].Rmin + 0.01, outlist[0].regions[i][0].Rmax - 0.01, outlist[0].regions[i][0].Dmin + 0.01, outlist[0].regions[i][0].Dmax - 0.01);
     for (j = 0; j < inlist[0].Nregions; j++) {
       if (VERBOSE) fprintf (stderr, "input 1: %s\n", inlist[0].regions[j][0].name);
@@ -149,5 +151,5 @@
       }
       dvo_update_image_IDs (&IDmap1, &incatalog);
-      merge_catalogs_new (&outsky[0].regions[i], &outcatalog, &incatalog, secfiltMap1);
+      merge_catalogs_new (outlist[0].regions[i], &outcatalog, &incatalog, secfiltMap1);
       dvo_catalog_unlock (&incatalog);
       dvo_catalog_free (&incatalog);
@@ -156,5 +158,5 @@
 
     // load in all of the tables from input2 for this region
-    inlist = SkyListByBounds (insky2, depth2, outsky[0].regions[i].Rmin, outsky[0].regions[i].Rmax, outsky[0].regions[i].Dmin, outsky[0].regions[i].Dmax);
+    inlist = SkyListByBounds (insky2, depth2, outlist[0].regions[i][0].Rmin + 0.01, outlist[0].regions[i][0].Rmax - 0.01, outlist[0].regions[i][0].Dmin + 0.01, outlist[0].regions[i][0].Dmax - 0.01);
     for (j = 0; j < inlist[0].Nregions; j++) {
       if (VERBOSE) fprintf (stderr, "input 2: %s\n", inlist[0].regions[j][0].name);
@@ -170,5 +172,5 @@
       }
       dvo_update_image_IDs (&IDmap2, &incatalog);
-      merge_catalogs_old (&outsky[0].regions[i], &outcatalog, &incatalog, RADIUS, secfiltMap2);
+      merge_catalogs_old (outlist[0].regions[i], &outcatalog, &incatalog, RADIUS, secfiltMap2);
       dvo_catalog_unlock (&incatalog);
       dvo_catalog_free (&incatalog);
@@ -183,7 +185,7 @@
 
   // save the output sky table copy
-  sprintf (filename, "%s/SkyTable.fits", output);
-  check_file_access (filename, TRUE, TRUE, VERBOSE);
-  if (!SkyTableSave (outsky, filename)) {
+  char *skyfile = SkyTableFilename (output);
+  check_file_access (skyfile, TRUE, TRUE, VERBOSE);
+  if (!SkyTableSave (outsky, skyfile)) {
     fprintf (stderr, "ERROR: failed to save sky table for %s\n", output);
     exit (1);
@@ -219,19 +221,18 @@
     in1DB.mode   = dvo_catalog_catmode (CATMODE);
     in1DB.format = dvo_catalog_catformat (CATFORMAT);
-    status       = dvo_image_lock (&in1DB, ImageCat, 3600.0, LCK_XCLD);  // shorter timeout?
+    status       = dvo_image_lock (&in1DB, ImageCat, 3600.0, LCK_SOFT);  // shorter timeout?
     if (!status) Shutdown ("ERROR: failure to lock image catalog %s", in1DB.filename);
 
     // load the image table 
-    if (in1DB.dbstate == LCK_EMPTY) {
-      Shutdown ("can't find input (1) image catalog %s", in1DB.filename);
-    }
-    if (!dvo_image_load (&in1DB, VERBOSE, TRUE)) {
-      Shutdown ("can't read input (1) image catalog %s", in1DB.filename);
-    }
-
+    if (in1DB.dbstate != LCK_EMPTY) {
+      if (!dvo_image_load (&in1DB, VERBOSE, TRUE)) {
+	Shutdown ("can't read input (1) image catalog %s", in1DB.filename);
+      }
+    }
+      
     // convert database table to internal structure & add to output image db
+    // if in1DB has no images, we will (later) insist that there are no image IDs to map
     dvo_image_merge_dbs(IDmap1, &outDB, &in1DB);
     dvo_image_unlock (&in1DB); // unlock input1
-
 
     /*** load input2/Images.dat ***/
@@ -239,16 +240,16 @@
     in2DB.mode   = dvo_catalog_catmode (CATMODE);
     in2DB.format = dvo_catalog_catformat (CATFORMAT);
-    status       = dvo_image_lock (&in2DB, ImageCat, 3600.0, LCK_XCLD);  // shorter timeout?
+    status       = dvo_image_lock (&in2DB, ImageCat, 3600.0, LCK_SOFT);  // shorter timeout?
     if (!status) Shutdown ("ERROR: failure to lock image catalog %s", in2DB.filename);
 
     /* load the image table */
-    if (in2DB.dbstate == LCK_EMPTY) {
-      Shutdown ("can't find input (2) image catalog %s", in2DB.filename);
-    }
-    if (!dvo_image_load (&in2DB, VERBOSE, TRUE)) {
-      Shutdown ("can't read input (2) image catalog %s", in2DB.filename);
+    if (in2DB.dbstate != LCK_EMPTY) {
+      if (!dvo_image_load (&in2DB, VERBOSE, TRUE)) {
+	Shutdown ("can't read input (2) image catalog %s", in2DB.filename);
+      }
     }
 
     // convert database table to internal structure & add to output image db
+    // if in1DB has no images, we will (later) insist that there are no image IDs to map
     dvo_image_merge_dbs(IDmap2, &outDB, &in2DB);
     dvo_image_unlock (&in2DB); // unlock input2
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeImageIDs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeImageIDs.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeImageIDs.c	(revision 34041)
@@ -1,5 +1,5 @@
 # include "dvomerge.h"
 
-/*** update the image table ***/
+/*** generate the IDmap for the given databases, and update the output image table ***/
 int dvomergeImagesUpdate (IDmapType *IDmap, char *input, char *output) { 
 
@@ -12,9 +12,10 @@
   inDB.mode   = dvo_catalog_catmode (CATMODE);
   inDB.format = dvo_catalog_catformat (CATFORMAT);
-  status       = dvo_image_lock (&inDB, ImageCat, 3600.0, LCK_XCLD);  // shorter timeout?
+  status       = dvo_image_lock (&inDB, ImageCat, 3600.0, LCK_SOFT);  // shorter timeout?
   if (!status) Shutdown ("ERROR: failure to lock image catalog %s", inDB.filename);
 
   // load the image table 
   if (inDB.dbstate == LCK_EMPTY) {
+    dvo_image_unlock (&inDB); // unlock input
     IDmap->Nmap = 0;
     return TRUE;
@@ -52,5 +53,5 @@
 }
 
-/*** update the image table ***/
+/*** generate the map for the given 2 databases ***/
 int dvomergeImagesGetMap (IDmapType *IDmap, char *input, char *output) { 
 
@@ -63,9 +64,10 @@
   inDB.mode   = dvo_catalog_catmode (CATMODE);
   inDB.format = dvo_catalog_catformat (CATFORMAT);
-  status       = dvo_image_lock (&inDB, ImageCat, 3600.0, LCK_XCLD);  // shorter timeout?
+  status       = dvo_image_lock (&inDB, ImageCat, 5400.0, LCK_XCLD);  // shorter timeout?
   if (!status) Shutdown ("ERROR: failure to lock image catalog %s", inDB.filename);
 
   // load the image table
   if (inDB.dbstate == LCK_EMPTY) {
+    dvo_image_unlock (&inDB); // unlock input
     IDmap->Nmap = 0;
     return TRUE;
@@ -76,4 +78,5 @@
     Shutdown ("can't read input image catalog %s", inDB.filename);
   }
+  dvo_image_unlock (&inDB); // unlock input
 
   /*** load output/Images.dat ***/
@@ -81,19 +84,18 @@
   outDB.mode   = dvo_catalog_catmode (CATMODE);
   outDB.format = dvo_catalog_catformat (CATFORMAT);
-  status       = dvo_image_lock (&outDB, ImageCat, 3600.0, LCK_XCLD);  // shorter timeout?
+  status       = dvo_image_lock (&outDB, ImageCat, 5400.0, LCK_XCLD);  // shorter timeout?
   if (!status) Shutdown ("ERROR: failure to lock image catalog %s", outDB.filename);
 
   /* load the image table */
   if (outDB.dbstate == LCK_EMPTY) {
-    Shutdown ("only use -continue for an existing, partially merged database");
+    Shutdown ("for dvomerge -continue or dvomerge_client, the output database must exist");
   } 
   if (!dvo_image_load (&outDB, VERBOSE, TRUE)) {
     Shutdown ("can't read output image catalog %s", outDB.filename);
   }
+  dvo_image_unlock (&outDB); // unlock output
 
   // convert database table to internal structure & add to output image db
   dvo_image_match_dbs(IDmap, &outDB, &inDB);
-  dvo_image_unlock (&inDB); // unlock input
-  dvo_image_unlock (&outDB); // unlock output
 
   return TRUE;
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeUpdate.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeUpdate.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeUpdate.c	(revision 34041)
@@ -3,9 +3,7 @@
 int dvomergeUpdate (int argc, char **argv) {
 
-  int depth, CONTINUE;
-  off_t i, j, Ns, Ne;
+  int CONTINUE;
   SkyTable *outsky, *insky;
-  SkyList *outlist, *inlist;
-  Catalog incatalog, outcatalog;
+  SkyList *inlist;
   char filename[256], *input, *output;
   IDmapType IDmap;
@@ -101,64 +99,16 @@
   // loop over the populatable output tables; check for data in input in the corresponding regions
 
-  SkyListPopulatedRange (&Ns, &Ne, inlist, 0);
-  depth = inlist[0].regions[Ns][0].depth;
+  // XXX this is not really used...
+  // SkyListPopulatedRange (&Ns, &Ne, inlist, 0);
+  // depth = inlist[0].regions[Ns][0].depth;
   
   SetPhotcodeTable(NULL);
 
-  // loop over the populated input regions
-  for (i = 0; i < inlist[0].Nregions; i++) {
-    if (!inlist[0].regions[i][0].table) continue;
-    if (VERBOSE) fprintf (stderr, "input: %s\n", inlist[0].regions[i][0].name);
-
-    // load / create output catalog (if catalog does not exist, it will be created)
-    LoadCatalog (&incatalog, &inlist[0].regions[i][0], inlist[0].filename[i], "r", NsecfiltInput);
-    // skip empty input catalogs
-    if (!incatalog.Naves_disk) {
-	dvo_catalog_unlock (&incatalog);
-	dvo_catalog_free (&incatalog);
-	continue;
-    }
-
-    // combine only tables at equal or larger depth
-      
-    // load in all of the tables from input for this region
-    // SkyListByBounds will return neighbor catalogs if the boundaries exactly match (due to rounding).  Since the regions are not infinitely small, 
-    // compare to a slightly reduced footprint
-    float dPos = 2.0/3600.0;
-    outlist = SkyListByBounds (outsky, depth, 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);
-    for (j = 0; j < outlist[0].Nregions; j++) {
-      if (VERBOSE) fprintf (stderr, "output : %s\n", outlist[0].regions[j][0].name);
-
-      // load input catalog
-      LoadCatalog (&outcatalog, outlist[0].regions[j], outlist[0].filename[j], "w", NsecfiltOutput);
-
-      dvo_update_image_IDs (&IDmap, &incatalog);
-      merge_catalogs_old (&outsky[0].regions[j], &outcatalog, &incatalog, RADIUS, secfiltMap);
-
-      outcatalog.catflags = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
-
-      // if we receive a signal which would cause us to exit, wait until the full catalog is written
-      SetProtect (TRUE);
-      if (!dvo_catalog_save (&outcatalog, VERBOSE)) {
-	fprintf (stderr, "ERROR: failed to save catalog %s\n", outlist[0].filename[j]);
-	exit (1);
-      }
-      SetProtect (FALSE);
-
-      dvo_catalog_unlock (&outcatalog);
-      dvo_catalog_free (&outcatalog);
-
-      fprintf (stderr, "merged %s into %s\n", inlist[0].regions[i][0].name, outlist[0].regions[j][0].name);
-    }
-    SkyListFree (outlist);
-
-    dvo_catalog_unlock (&incatalog);
-    dvo_catalog_free (&incatalog);
-  }
+  dvomergeUpdate_catalogs (input, output, outsky, inlist, NsecfiltInput, NsecfiltOutput, &IDmap, secfiltMap);
 
   // save the output sky table copy
-  sprintf (filename, "%s/SkyTable.fits", output);
-  check_file_access (filename, TRUE, TRUE, VERBOSE);
-  if (!SkyTableSave (outsky, filename)) {
+  char *skyfile = SkyTableFilename (output);
+  check_file_access (skyfile, TRUE, TRUE, VERBOSE);
+  if (!SkyTableSave (outsky, skyfile)) {
     fprintf (stderr, "ERROR: failed to save sky table for %s\n", output);
     exit (1);
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeUpdate_catalogs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeUpdate_catalogs.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeUpdate_catalogs.c	(revision 34041)
@@ -0,0 +1,273 @@
+# include "dvomerge.h"
+# define DEBUG 1
+
+// in parallel mode, the target database may be distributed, while the input database is
+// only on a single machine
+
+// this function only merges tables which are at equal or shallower depth compared to the
+// output tables
+
+int dvomergeUpdate_parallel (char *input, char *output, SkyTable *outsky, IDmapType *IDmap);
+
+int dvomergeUpdate_catalogs (char *input, char *output, SkyTable *outsky, SkyList *inlist, int NsecfiltInput, int NsecfiltOutput, IDmapType *IDmap, int *secfiltMap) {
+
+  off_t i, j;
+  SkyList *outlist;
+  Catalog incatalog, outcatalog;
+
+  if (PARALLEL && !HOST_ID) {
+    int status = dvomergeUpdate_parallel (input, output, outsky, IDmap);
+    return status;
+  }
+
+  // loop over the populated input regions
+  for (i = 0; i < inlist[0].Nregions; i++) {
+    if (!inlist[0].regions[i][0].table) continue;
+    if (VERBOSE) fprintf (stderr, "input: %s\n", inlist[0].regions[i][0].name);
+
+    // SkyListByBounds will return neighbor catalogs if the boundaries exactly match (due to rounding).  Since the regions are not infinitely small, 
+    // compare to a slightly reduced footprint
+    float dPos = 2.0/3600.0;
+    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);
+
+    // there may be more than one output region for a given input region.  are any of these output regions relevant to this machine?
+    int found = FALSE;
+    for (j = 0; !found && (j < outlist[0].Nregions); j++) {
+      found = (found || HostTableTestHost(outlist[0].regions[j], HOST_ID));
+    }
+
+    // skip this input table for if no output files are on this machine
+    if (!found) {
+      SkyListFree (outlist); 
+      continue; 
+    }
+
+    // get the stats on this input file (for comparison with the output headers)
+    struct stat instats;
+    int stat_result = stat (inlist[0].filename[i], &instats);
+    if (stat_result) {
+      if (errno == ENOENT) continue;
+      fprintf (stderr, "cannot read stats on input file %s\n", inlist[0].filename[i]);
+      perror ("stats error message:");
+      exit (2);
+    }
+
+    // instats.st_size & instats.st_mtime
+
+    // check if any of the output files have NOT yet received data from this input file
+
+    int missed = FALSE;
+    for (j = 0; !missed && (j < outlist[0].Nregions); j++) {
+      if (!HostTableTestHost(outlist[0].regions[j], HOST_ID)) continue;
+
+      // set the parameters which guide catalog open/load/create
+      char hostfile[DVO_MAX_PATH];
+      snprintf (hostfile, DVO_MAX_PATH, "%s/%s.cpt", HOSTDIR, outlist[0].regions[j]->name);
+      char *filename = HOST_ID ? hostfile : outlist[0].filename[j];
+
+      // get the stats on this input file (for comparison with the output headers)
+      struct stat outstats;
+      stat_result = stat (filename, &outstats);
+      if (stat_result) {
+	if (errno == ENOENT) {
+	  missed = TRUE;
+	  break;
+	}
+	fprintf (stderr, "cannot read stats on output file %s\n", filename);
+	perror ("stats error message:");
+	exit (2);
+      }
+
+      FILE *fout = fopen (filename, "r");
+      if (!fout) {
+	fprintf (stderr, "problem opening output file to read header %s\n", filename);
+	perror ("stats error message:");
+	exit (2);
+      }
+
+      Header outheader;
+      if (!gfits_fread_header (fout, &outheader)) {
+	fprintf (stderr, "problem reading header for output file %s\n", filename);
+	exit (2);
+      }
+      
+      fclose (fout);
+
+      // update header of output catalog
+      long long last_size;
+      char last_moddate[80];
+      gfits_scan (&outheader, "LMRG_SZ", "%lld", 1, &last_size);      
+      gfits_scan (&outheader, "LMRG_DT", "%s", 1, last_moddate);      
+
+      time_t last_mod = ohana_date_to_sec (last_moddate);
+
+      if (last_size != instats.st_size) {
+	missed = TRUE;
+	break;
+      }
+      
+      if (last_mod != instats.st_mtime) {
+	missed = TRUE;
+	break;
+      }
+    }
+    if (!missed) {
+      fprintf (stderr, "skipping %s, already merged\n", inlist[0].filename[i]);
+      continue;
+    }
+
+    // read the input catalog
+    LoadCatalog (&incatalog, &inlist[0].regions[i][0], inlist[0].filename[i], "r", NsecfiltInput);
+
+    // skip empty input catalogs
+    if (!incatalog.Naves_disk) {
+	dvo_catalog_unlock (&incatalog);
+	dvo_catalog_free (&incatalog);
+	SkyListFree (outlist); 
+	continue;
+    }
+
+    char *moddate = ohana_sec_to_date (instats.st_mtime);
+
+    // merge input into the appropriate output tables
+    for (j = 0; j < outlist[0].Nregions; j++) {
+      // skip tables for which the output files are not on this machine
+      if (!HostTableTestHost(outlist[0].regions[j], HOST_ID)) continue; 
+
+      if (VERBOSE) fprintf (stderr, "output : %s\n", outlist[0].regions[j][0].name);
+
+      // set the parameters which guide catalog open/load/create
+      char hostfile[DVO_MAX_PATH];
+      snprintf (hostfile, DVO_MAX_PATH, "%s/%s.cpt", HOSTDIR, outlist[0].regions[j]->name);
+      outcatalog.filename  = HOST_ID ? hostfile : outlist[0].filename[j];
+
+      // load input catalog
+      LoadCatalog (&outcatalog, outlist[0].regions[j], outcatalog.filename, "w", NsecfiltOutput);
+
+      dvo_update_image_IDs (IDmap, &incatalog);
+      merge_catalogs_old (outlist[0].regions[j], &outcatalog, &incatalog, RADIUS, secfiltMap);
+
+      outcatalog.catflags = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
+
+      // update header of output catalog
+      long long last_size;
+      char last_moddate[80];
+      int status_size = gfits_scan (&outcatalog.header, "LMRG_SZ", "%lld", 1, &last_size);      
+      int status_date = gfits_scan (&outcatalog.header, "LMRG_DT", "%s", 1, last_moddate);      
+
+      // save the previous size of merged entry
+      if (status_size && status_date) {
+	gfits_modify (&outcatalog.header, "LMRG_SZ1", "%lld", 1, (long long) last_size);      
+	gfits_modify (&outcatalog.header, "LMRG_DT1", "%s", 1, last_moddate);      
+      }
+
+      // update header of output catalog
+      gfits_modify (&outcatalog.header, "LMRG_SZ", "%lld", 1, (long long) instats.st_size);      
+      gfits_modify (&outcatalog.header, "LMRG_DT", "%s", 1, moddate);      
+
+      if (!dvo_catalog_backup (&outcatalog, TRUE)) {
+	fprintf (stderr, "ERROR: failed to make backup for catalog %s\n", outlist[0].filename[j]);
+	exit (1);
+      }
+
+      // if we receive a signal which would cause us to exit, wait until the full catalog is written
+      SetProtect (TRUE);
+      if (!dvo_catalog_save (&outcatalog, VERBOSE)) {
+	fprintf (stderr, "ERROR: failed to save catalog %s\n", outlist[0].filename[j]);
+	exit (1);
+      }
+      SetProtect (FALSE);
+
+      if (!dvo_catalog_unlink_backup (&outcatalog, TRUE)) {
+	fprintf (stderr, "WARNING: failed to remove backup for catalog %s\n", outlist[0].filename[j]);
+      }
+
+      dvo_catalog_unlock (&outcatalog);
+      dvo_catalog_free (&outcatalog);
+
+      fprintf (stderr, "merged %s into %s\n", inlist[0].regions[i][0].name, outlist[0].regions[j][0].name);
+    }
+    SkyListFree (outlist);
+    free (moddate);
+
+    dvo_catalog_unlock (&incatalog);
+    dvo_catalog_free (&incatalog);
+  }
+  return TRUE;
+}
+
+// launch the dvomergeUpdate_client jobs to the parallel hosts
+int dvomergeUpdate_parallel (char *input, char *output, SkyTable *outsky, IDmapType *IDmap) {
+
+  // ensure that the paths are absolute path names
+  char *absinput  = abspath (input,  DVO_MAX_PATH);
+  char *absoutput = abspath (output, DVO_MAX_PATH);
+
+  // name of image subset file:
+  char IDmapFilename[DVO_MAX_PATH];
+  snprintf (IDmapFilename, DVO_MAX_PATH, "%s/IDmap.fits", absoutput);
+
+  // save IDmap information
+  if (!IDmapSave (IDmapFilename, IDmap)) {
+    fprintf (stderr, "ERROR: failure to save the image ID map\n");
+    exit (1);
+  }
+
+  // load the list of hosts
+  HostTable *table = HostTableLoad (output, outsky->hosts);
+  if (!table) {
+    fprintf (stderr, "ERROR: failure reading Host Table %s for database %s\n", outsky->hosts, output);
+    exit (1);
+  }    
+
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    // options / arguments that can affect relastro_client -update-objects:
+    char command[DVO_MAX_PATH];
+    snprintf (command, DVO_MAX_PATH, "dvomerge_client %s into %s -hostID %d -hostdir %s -region %f %f %f %f -D ADDSTAR_RADIUS %f", 
+	      absinput, absoutput, table->hosts[i].hostID, table->hosts[i].pathname, 
+	      UserPatch.Rmin, UserPatch.Rmax, UserPatch.Dmin, UserPatch.Dmax, RADIUS
+      );
+
+    char tmpline[DVO_MAX_PATH];
+    if (VERBOSE)             { snprintf (tmpline, DVO_MAX_PATH, "%s -v",       command); strcpy (command, tmpline); }
+    if (REPLACE_BY_PHOTCODE) { snprintf (tmpline, DVO_MAX_PATH, "%s -replace", command); strcpy (command, tmpline); }
+
+    fprintf (stderr, "command: %s\n", command);
+
+    if (PARALLEL_MANUAL) continue;
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	fprintf (stderr, "ERROR running photdbc_client\n");
+	exit (2);
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	exit (1);
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+
+  if (PARALLEL_MANUAL) {
+    fprintf (stderr, "run the photdbc_client commands above.  when these are done, hit return\n");
+    getchar();
+  }
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+  }
+
+  return TRUE;
+}      
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeUpdate_threaded.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeUpdate_threaded.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomergeUpdate_threaded.c	(revision 34041)
@@ -61,4 +61,5 @@
     // compare to a slightly reduced footprint
     float dPos = 2.0/3600.0;
+    // XXX probably need to use threadData->region->depth
     outlist = SkyListByBounds (threadData->outsky, threadData->depth, threadData->region->Rmin + dPos, threadData->region->Rmax - dPos, threadData->region->Dmin + dPos, threadData->region->Dmax - dPos);
     for (j = 0; (j < outlist[0].Nregions) && (threadData->state != TS_FAIL); j++) {
@@ -277,7 +278,7 @@
 
   // save the output sky table copy
-  sprintf (filename, "%s/SkyTable.fits", output);
-  check_file_access (filename, TRUE, TRUE, VERBOSE);
-  if (!SkyTableSave (outsky, filename)) {
+  char *skyfile = SkyTableFilename (output);
+  check_file_access (skyfile, TRUE, TRUE, VERBOSE);
+  if (!SkyTableSave (outsky, skyfile)) {
     fprintf (stderr, "ERROR: failed to save sky table for %s\n", output);
     exit (1);
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomerge_client.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomerge_client.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvomerge_client.c	(revision 34041)
@@ -0,0 +1,88 @@
+# include "dvomerge.h"
+
+int main (int argc, char **argv) {
+
+  dvomerge_client_help (argc, argv);
+  ConfigInit (&argc, argv);
+  dvomerge_client_args (&argc, argv);
+
+  SkyTable *outsky, *insky;
+  SkyList *inlist;
+  char filename[256], *input, *output;
+  IDmapType *IDmap;
+  PhotCodeData *inputPhotcodes;
+  PhotCodeData *outputPhotcodes;
+  int *secfiltMap = NULL;
+  int NsecfiltInput, NsecfiltOutput;
+
+  input  = argv[1];
+  output = argv[3];
+
+  // we need input and output photcode tables to correctly match secfilt entries
+
+  // load the input photcodes
+  SetPhotcodeTable(NULL);
+  sprintf (filename, "%s/Photcodes.dat", input);
+  if (!LoadPhotcodes (filename, NULL, FALSE)) {
+    fprintf (stderr, "error reading input database directory %s\n", input);
+    exit (1);
+  }	
+  inputPhotcodes = GetPhotcodeTable();
+  NsecfiltInput = GetPhotcodeNsecfilt();
+
+  // since we are merging the input db into the output db, the output defines the photcode
+  // table & db layout but, this requires the output to exist.  if it does not, fail
+  // (master should have created the output photcode table)
+
+  // load the output photcodes
+  SetPhotcodeTable(NULL);
+  sprintf (filename, "%s/Photcodes.dat", output);
+  if (!LoadPhotcodes (filename, NULL, FALSE)) {
+    fprintf (stderr, "error reading output database directory %s\n", output);
+    exit (1);
+  }
+  outputPhotcodes = GetPhotcodeTable();
+  NsecfiltOutput = GetPhotcodeNsecfilt();
+
+  secfiltMap = GetSecFiltMap(outputPhotcodes, inputPhotcodes);
+  if (!secfiltMap) {
+    fprintf (stderr, "failed to map input secfilt photcodes to output photcodes table\n");
+    exit (1);
+  }
+
+  char *absoutput = abspath (output, DVO_MAX_PATH);
+  char IDmapFilename[DVO_MAX_PATH];
+  snprintf (IDmapFilename, DVO_MAX_PATH, "%s/IDmap.fits", absoutput);
+
+  // save IDmap information
+  IDmap = IDmapLoad (IDmapFilename);
+  if (!IDmap) {
+    fprintf (stderr, "ERROR: failure to save the image ID map\n");
+    exit (1);
+  }
+
+  // load the sky table for the existing database
+  insky = SkyTableLoadOptimal (input, NULL, NULL, FALSE, SKY_DEPTH_HST, VERBOSE);
+  if (!insky) {
+      Shutdown ("can't read SkyTable for %s", input);
+  }
+  SkyTableSetFilenames (insky, input, "cpt");
+
+  // XXX apply this...generate the subset matching the user-selected region
+  inlist = SkyListByPatch (insky, -1, &UserPatch);
+
+  // generate an output table populated at the desired depth
+  outsky = SkyTableLoadOptimal (output, NULL, GSCFILE, TRUE, SKY_DEPTH, VERBOSE);
+  if (!outsky) {
+      Shutdown ("can't read or create SkyTable for %s", output);
+  }
+  SkyTableSetFilenames (outsky, output, "cpt");
+
+  // loop over the populatable output tables; check for data in input in the corresponding regions
+
+  SetPhotcodeTable(NULL);
+  
+  dvomergeUpdate_catalogs (input, output, outsky, inlist, NsecfiltInput, NsecfiltOutput, IDmap, secfiltMap);
+
+  exit (0);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvorepairCPT.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvorepairCPT.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvorepairCPT.c	(revision 34041)
@@ -1,6 +1,3 @@
 # include "dvomerge.h"
-
-# define myAbort(MSG) { fprintf (stderr, "%s\n", MSG); abort(); }
-# define myAssert(LOGIC,MSG) { if (!(LOGIC)) { fprintf (stderr, "%s\n", MSG); abort(); } }
 
 // broken cpt file, valid cpm file: we can recover everything in the cpt file from the cpm file:
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvorepairImageVsMeasure.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvorepairImageVsMeasure.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvorepairImageVsMeasure.c	(revision 34041)
@@ -1,6 +1,3 @@
 # include "dvomerge.h"
-
-# define myAbort(MSG) { fprintf (stderr, "%s\n", MSG); abort(); }
-# define myAssert(LOGIC,MSG) { if (!(LOGIC)) { fprintf (stderr, "%s\n", MSG); abort(); } }
 
 // find images which are missing detections:
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvoverify.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvoverify.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/dvoverify.c	(revision 34041)
@@ -46,4 +46,37 @@
   }
 
+  if ((N = get_argument (argc, argv, "-cpt"))) {
+    remove_argument (N, &argc, argv);
+    char *filename = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+
+    int isBad = FALSE;
+
+    if (!VerifyTableFile (filename)) {
+      fprintf (stderr, "bad average table %s\n", filename);
+      isBad = TRUE;
+    }
+
+    // change last 't' to 's':
+    int Nlast;
+    Nlast = strlen(filename) - 1;
+    filename[Nlast] = 's';
+    if (!VerifyTableFile (filename)) {
+      fprintf (stderr, "bad secfilt table %s\n", filename);
+      isBad = TRUE;
+    }
+
+    // change last 't' to 's':
+    Nlast = strlen(filename) - 1;
+    filename[Nlast] = 'm';
+    if (!VerifyTableFile (filename)) {
+      fprintf (stderr, "bad measure table %s\n", filename);
+      isBad = TRUE;
+    }
+
+    if (isBad) exit (1);
+    exit (0);
+  }
+
   // restrict to a portion of the sky
   UserPatch.Rmin = 0;
@@ -84,6 +117,6 @@
 
     // check the skytable
-    sprintf (filename, "%s/SkyTable.fits", catdir);
-    if (!VerifyTableFile (filename)) {
+    char *skyfile = SkyTableFilename (catdir);
+    if (!VerifyTableFile (skyfile)) {
       Nbad ++;
     }
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/help.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/help.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/help.c	(revision 34041)
@@ -6,4 +6,10 @@
   fprintf (stderr, "   OR: dvomerge (input) into (output) continue\n");
   fprintf (stderr, "   OR: dvomerge (input) into (output) from (list)\n");
+  fprintf (stderr, "   [-region Rmin Rmax Dmin Dmax]\n");
+  exit (2);
+}
+
+void dvomerge_client_usage (void) {
+  fprintf (stderr, "USAGE: dvomerge_client (input) into (output)\n");
   fprintf (stderr, "   [-region Rmin Rmax Dmin Dmax]\n");
   exit (2);
@@ -45,4 +51,28 @@
   fprintf (stderr, "  -h                    	  : this list\n\n");
   fprintf (stderr, "  -region Rmin Rmax Dmin Dmax : region to merge\n\n");
+  fprintf (stderr, "  -replace                    : replace existing detections of the same photcode\n");
+  fprintf (stderr, "                                (this should only be used to merge reference dbs)\n\n");
+  exit (2);
+}
+
+void dvomerge_client_help (int argc, char **argv) {
+
+  /* check for help request */
+  if (get_argument (argc, argv, "-help")) goto show_help;
+  if (get_argument (argc, argv, "-h"))    goto show_help;
+  return;
+
+show_help:
+
+  fprintf (stderr, "USAGE\n");
+  fprintf (stderr, "  dvomerge_client (input) into (output)\n");
+  fprintf (stderr, "  merge DVO databases\n");
+  fprintf (stderr, "  optional flags:\n");
+  fprintf (stderr, "  -v                    	  : verbose mode\n");
+  fprintf (stderr, "  -help                 	  : this list\n");
+  fprintf (stderr, "  -h                    	  : this list\n\n");
+  fprintf (stderr, "  -region Rmin Rmax Dmin Dmax : region to merge\n\n");
+  fprintf (stderr, "  -replace                    : replace existing detections of the same photcode\n");
+  fprintf (stderr, "                                (this should only be used to merge reference dbs)\n\n");
   exit (2);
 }
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/merge_catalogs_old.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/merge_catalogs_old.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/merge_catalogs_old.c	(revision 34041)
@@ -111,4 +111,10 @@
   if (Nave > 1) sort_coords_index (X2, Y2, N2, Nave);
 
+  if (REPLACE_BY_PHOTCODE && output[0].Nmeasure && !output[0].sorted) {
+    fprintf (stderr, "ERROR: attempt to merge with replace into an unsorted database\n");
+    exit (3);
+  }
+
+
   /* set up pointers for linked list of measure */
   if (output[0].sorted && (output[0].Nmeasure >= output[0].Nmeas_disk)) {
@@ -186,4 +192,12 @@
       offset = input[0].average[N].measureOffset + Nin;
 
+      if (REPLACE_BY_PHOTCODE) {
+	// index to first measure for this object
+	int Mout = output[0].average[n].measureOffset;  
+	if (replace_match(&output[0].average[n], &output[0].measure[Mout], &input[0].average[N], &input[0].measure[offset])) {
+	  input[0].found[N] = Mout;
+	  continue;
+	}
+      }
       /* add to end of measurement list */
       add_meas_link (&output[0].average[n], next_meas, Nmeas, NMEAS);
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/replace_match.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/replace_match.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/src/replace_match.c	(revision 34041)
@@ -0,0 +1,57 @@
+# include "dvomerge.h"
+
+// average and measure pointers to the objects of interest and their first / current measurement
+int replace_match (Average *average_out, Measure *measure_out, Average *average_in, Measure *measure_in) {
+
+  int Nout;
+  unsigned int averef;
+  unsigned int catID;
+  double Rin, Din;
+
+  // find the matching photcode in the object's list of measurements
+  for (Nout = 0; Nout < average_out[0].Nmeasure; Nout ++) {
+    if (measure_out[Nout].photcode != measure_in[0].photcode) continue;
+    
+    // set the new measurements
+    averef = measure_out[Nout].averef;
+    catID  = measure_out[Nout].catID;
+    measure_out[Nout] = measure_in[0];
+
+    Rin = average_in[0].R - measure_in[0].dR / 3600.0;
+    Din = average_in[0].D - measure_in[0].dD / 3600.0;
+
+    /** dR,dD now represent arcsec **/
+    measure_out[Nout].dR       = 3600.0*(average_out[0].R - Rin);
+    measure_out[Nout].dD       = 3600.0*(average_out[0].D - Din);
+    measure_out[Nout].dbFlags  = 0;  // XXX why reset these?
+    measure_out[Nout].averef   = averef;
+    measure_out[Nout].objID    = average_out[0].objID;
+    measure_out[Nout].catID    = catID;
+
+    // rationalize dR
+    if (measure_out[Nout].dR > +180.0*3600.0) {
+      // average on high end of boundary, move star up
+      Rin += 360.0;
+      measure_out[Nout].dR = 3600.0*(average_out[0].R - Rin);
+    }
+    if (measure_out[Nout].dR < -180.0*3600.0) {
+      // average on low end of boundary, move star down
+      Rin -= 360.0;
+      measure_out[Nout].dR = 3600.0*(average_out[0].R - Rin);
+    }
+
+    // warn on surprisingly distant detections
+    if (fabs(measure_out[Nout].dR) > 10*RADIUS) {
+      // ok take declination into account and check again.
+      double cosD = cos(RAD_DEG*Din);
+      if (fabs(measure_out[Nout].dR*cosD) > 10*RADIUS) {
+
+	fprintf (stderr, "surprisingly distant detection: %10.6f,%10.6f vs %10.6f,%10.6f\n", 
+		 average_out[0].R, average_out[0].D, Rin, Din);
+      }
+    }
+    return TRUE; // found the matched entry
+  }
+  return FALSE; // did not find the matched entry
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/test/HostTable.dat
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/test/HostTable.dat	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/test/HostTable.dat	(revision 34041)
@@ -0,0 +1,5 @@
+# Host Table for parallel DVO
+# ID  Hostname  Catdir
+   1  pikake    catdir.merge.p1
+   2  pikake    catdir.merge.p2
+   3  pikake    catdir.merge.p3
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/test/dvomerge.parallel.sh
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/test/dvomerge.parallel.sh	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/test/dvomerge.parallel.sh	(revision 34041)
@@ -0,0 +1,7 @@
+#!/bin/csh -f
+
+ rm -rf catdir.merge
+ rsync -auv catdir.2mass/ catdir.merge/
+ cp HostTable.dat catdir.merge/
+ dvodist -out catdir.merge
+ dvomerge -parallel catdir.grizy into catdir.merge
Index: branches/meh_branches/ppstack_test/Ohana/src/dvomerge/test/dvomerge.replace.sh
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvomerge/test/dvomerge.replace.sh	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvomerge/test/dvomerge.replace.sh	(revision 34041)
@@ -0,0 +1,8 @@
+#!/bin/csh -f
+
+ rm -rf catdir.merge.save
+ rm -rf catdir.merge
+ rsync -auv catdir.2mass/ catdir.merge/
+ dvomerge catdir.grizy into catdir.merge
+ rsync -auv catdir.merge/ catdir.merge.save/
+ dvomerge -replace catdir.2mass into catdir.merge
Index: branches/meh_branches/ppstack_test/Ohana/src/dvosplit/include/dvosplit.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvosplit/include/dvosplit.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvosplit/include/dvosplit.h	(revision 34041)
@@ -23,7 +23,7 @@
 
 int    VERBOSE;
-char   CATDIR[256];
-char   CATMODE[16];    /* raw, mef, split, mysql */
-char   CATFORMAT[16];  /* internal, elixir, loneos, panstarrs */
+char  *OUTDIR;
+char  *CATMODE;    /* raw, mef, split, mysql */
+char  *CATFORMAT;  /* internal, elixir, loneos, panstarrs */
 
 SkyRegion UserPatch;  // used by MODE CAT
@@ -38,5 +38,5 @@
 int        args                   PROTO((int argc, char **argv));
 
-Catalog   *open_output_catalogs   PROTO((SkyList *outlist));
+Catalog   *open_output_catalogs   PROTO((SkyList *outlist, int catformat, int catmode));
 AveLinks  *split_averages         PROTO((Catalog *incatalog, SkyList *outlist, Catalog *outcatalogs));
 int        split_measures         PROTO((Catalog *incatalog, SkyList *outlist, Catalog *outcatalogs, AveLinks *avelinks));
Index: branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/ConfigInit.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/ConfigInit.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/ConfigInit.c	(revision 34041)
@@ -5,6 +5,4 @@
   double ZERO_POINT;
   char *config, *file;
-  char CatdirPhotcodeFile[256];
-  char MasterPhotcodeFile[256];
 
   /*** load configuration info ***/
@@ -18,23 +16,8 @@
   if (VERBOSE) fprintf (stderr, "loaded config file: %s\n", file);
 
-  GetConfig (config, "CATDIR",                 	"%s",  0, CATDIR);
-  GetConfig (config, "PHOTCODE_FILE",          	"%s",  0, MasterPhotcodeFile);
-
-  ScanConfig (config, "CATMODE",                "%s",  0, CATMODE);
-  ScanConfig (config, "CATFORMAT",              "%s",  0, CATFORMAT);
-
-  /* default mode, format, if not specified */
-  if (*CATMODE == 0) strcpy (CATMODE, "RAW");
-  if (*CATFORMAT == 0) strcpy (CATFORMAT, "ELIXIR");
-
+  // XXX this really needs to be deprecated.  It is always 25.0, and should just be hard-wired
+  // (the purpose of this value is now completely pointless...)
   GetConfig (config, "ZERO_PT",                "%lf", 0, &ZERO_POINT);
   SetZeroPoint (ZERO_POINT);
-
-  /* XXX this does not yet write out the master photcode table */
-  sprintf (CatdirPhotcodeFile, "%s/Photcodes.dat", CATDIR);
-  if (!LoadPhotcodes (CatdirPhotcodeFile, MasterPhotcodeFile, TRUE)) {
-    fprintf (stderr, "error loading photcode table %s or master file %s\n", CatdirPhotcodeFile, MasterPhotcodeFile);
-    exit (1);
-  }
 
   free (config);
Index: branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/args.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/args.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/args.c	(revision 34041)
@@ -34,4 +34,27 @@
   }
 
+  OUTDIR = NULL;
+  if ((N = get_argument (argc, argv, "-outdir"))) {
+    remove_argument (N, &argc, argv);
+    OUTDIR = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  // override input catalog format (PS1_V1, PS1_REF, etc)
+  CATFORMAT = NULL;
+  if ((N = get_argument (argc, argv, "-set-format"))) {
+    remove_argument (N, &argc, argv);
+    CATFORMAT = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  // override input catalog mode (raw, mef, split, mysql)
+  CATMODE = NULL;
+  if ((N = get_argument (argc, argv, "-set-mode"))) {
+    remove_argument (N, &argc, argv);
+    CATMODE = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
   /* extra error messages */
   VERBOSE = FALSE;
@@ -41,5 +64,5 @@
   }
 
-  if (argc == 2) {
+  if (argc == 3) {
     if (CONFIRM) {
       fprintf (stderr, "you are splitting the entire sky in one pass\n");
@@ -54,5 +77,5 @@
   }
 
-  fprintf (stderr, "USAGE: dvosplit (newlevel) [-region (Rmin) (Rmax) (Dmin) (Dmax)]\n");
+  fprintf (stderr, "USAGE: dvosplit (catdir) (newlevel) [-outdir outdir] [-region (Rmin) (Rmax) (Dmin) (Dmax)]\n");
   exit (2);
 }
@@ -61,8 +84,11 @@
 
   fprintf (stderr, "USAGE\n");
-  fprintf (stderr, "  dvosplit (newlevel)\n\n");
+  fprintf (stderr, "  dvosplit (catdir) (newlevel)\n\n");
   fprintf (stderr, "  optional flags:\n");
+  fprintf (stderr, "  -outdir (outdir)    	  : copy to a new location (does not copy Images.dat)\n");
   fprintf (stderr, "  -region ra ra dec dec 	  : migrate catalogs in specified region\n");
   fprintf (stderr, "  -v                    	  : verbose mode\n");
+  fprintf (stderr, "  -set-format (format)    	  : set format of output catalog (or inherit from input)\n");
+  fprintf (stderr, "  -set-mode (mode)    	  : set mode of output catalog (or inherit from input)\n");
   fprintf (stderr, "  -help                 	  : this list\n");
   fprintf (stderr, "  -h                    	  : this list\n\n");
Index: branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/dvosplit.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/dvosplit.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/dvosplit.c	(revision 34041)
@@ -1,5 +1,7 @@
 # include "dvosplit.h"
 
+// dvosplit (catdir) (outlevel) [-outdir (outcat)} [-region Rmin Rmax Dmin Dmax]
 // dvosplit (outlevel) [-region Rmin Rmax Dmin Dmax]
+// (inherites the input catalog's format and mode, unless -set-format or -set-mode are used)
 int main (int argc, char **argv) {
 
@@ -9,5 +11,5 @@
   Catalog incatalog, *outcatalogs;
   AveLinks *avelinks;
-  char filename[256];
+  char *filename, *CATDIR;
 
   SetSignals ();
@@ -15,5 +17,34 @@
   args (argc, argv);
 
-  OUT_DEPTH = atoi (argv[1]);
+  CATDIR = strcreate (argv[1]);
+  OUT_DEPTH = atoi (argv[2]);
+  if (!OUTDIR) {
+    OUTDIR = strcreate (CATDIR);
+  }
+
+  // load the photcode table (for Nsecfilt and related)
+  char photcodeFile[1024];
+  snprintf (photcodeFile, 1024, "%s/Photcodes.dat", CATDIR);
+  if (!LoadPhotcodes (photcodeFile, NULL, FALSE)) {
+    fprintf (stderr, "error loading photcode table %s\n", photcodeFile);
+    exit (1);
+  }
+
+  // dvosplit can be run locally (no -outdir specified); otherwise, copy Photcode.dat,
+  // Images.dat, SkyTable.fits
+  int LocalCopy = !strcmp (CATDIR, OUTDIR);
+
+  // if not local, save the photcode table (for Nsecfilt and related)
+  if (!LocalCopy) {
+    if (!check_dir_access (OUTDIR, VERBOSE)) {
+      fprintf (stderr, "failed to create output directory %s\n", OUTDIR);
+      exit (1);
+    }
+    snprintf (photcodeFile, 1024, "%s/Photcodes.dat", OUTDIR);
+    if (!SavePhotcodesFITS (photcodeFile)) {
+      fprintf (stderr, "error loading photcode table %s\n", photcodeFile);
+      exit (1);
+    }
+  }
 
   // load the sky table for the existing database
@@ -25,9 +56,16 @@
   
   for (i = 0; i < skylist[0].Nregions; i++) {
-    fprintf (stderr, "%s\n", skylist[0].regions[i][0].name);
+    if (VERBOSE) fprintf (stderr, "%s\n", skylist[0].regions[i][0].name);
 
+    // if !LocalCopy, always copy the file
     // if (current level >  out level) skip: cannot currently merge catalogs
     // if (current level == out level) skip: no action is needed
-    if (skylist[0].regions[i][0].depth >= OUT_DEPTH) continue;
+
+    if (skylist[0].regions[i][0].depth > OUT_DEPTH) {
+      if (VERBOSE) fprintf (stderr, "WARNING, cannot merge deeper catalog %s (%d vs %d)\n", skylist[0].regions[i][0].name, skylist[0].regions[i][0].depth, OUT_DEPTH);
+      continue;
+    }
+
+    if (LocalCopy && (skylist[0].regions[i][0].depth == OUT_DEPTH)) continue;
 
     // set the parameters which guide catalog open/load/create
@@ -52,5 +90,10 @@
     outlist = SkyListByPatch (sky, OUT_DEPTH, skylist[0].regions[i]);
 
-    outcatalogs = open_output_catalogs (outlist);
+    // Modify the outlist filenames to match the output directory.  Note that the
+    // filenames are now owned by the list (and are not freed by SkyListFree)
+    SkyListSetFilenames (outlist, OUTDIR, "cpt");
+
+    // inherit the input catalog's format and mode (unless overridden)
+    outcatalogs = open_output_catalogs (outlist, incatalog.catformat, incatalog.catmode);
 
     avelinks = split_averages (&incatalog, outlist, outcatalogs); 
@@ -75,12 +118,31 @@
       outlist[0].regions[j][0].table = TRUE;
     }
+
+    // free the newly allocated filenames
+    for (j = 0; j < outlist[0].Nregions; j++) {
+      free (outlist[0].filename[j]);
+    }
+
+    // free the rest of the list
+    SkyListFree (outlist);
   }
 
-  // save sky table copy
-  sprintf (filename, "%s/SkyTable.fits", CATDIR);
+  // save sky table copy (Local or not Local : the depth has changed)
+  filename = SkyTableFilename (OUTDIR);
   check_file_access (filename, TRUE, TRUE, VERBOSE);
   if (!SkyTableSave (sky, filename)) {
-    fprintf (stderr, "ERROR: failed to save sky table for %s\n", CATDIR);
+    fprintf (stderr, "ERROR: failed to save sky table for %s\n", OUTDIR);
     exit (1);
+  }
+
+  if (!LocalCopy) {
+    // copy the images table
+    char line[2048];
+    snprintf (line, 2048, "cp %s/Images.dat %s/Images.dat", CATDIR, OUTDIR);
+    int status = system (line);
+    if (status) {
+      fprintf (stderr, "ERROR: failed to copy Images.dat\n");
+      exit (1);
+    }
   }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/open_output_catalogs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/open_output_catalogs.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/open_output_catalogs.c	(revision 34041)
@@ -1,5 +1,5 @@
 # include "dvosplit.h"
 
-Catalog *open_output_catalogs (SkyList *outlist) {
+Catalog *open_output_catalogs (SkyList *outlist, int catformat, int catmode) {
 
   int i;
@@ -15,6 +15,9 @@
     outcatalogs[i].Nsecfilt  = GetPhotcodeNsecfilt ();
     outcatalogs[i].catflags  = LOAD_NONE;
-    outcatalogs[i].catformat = dvo_catalog_catformat (CATFORMAT);  // set the default catformat from config data
-    outcatalogs[i].catmode   = dvo_catalog_catmode (CATMODE);      // set the default catmode from config data
+    outcatalogs[i].catformat = CATFORMAT ? dvo_catalog_catformat (CATFORMAT) : catformat;  // set the default catformat from config data
+    outcatalogs[i].catmode   = CATMODE   ? dvo_catalog_catmode (CATMODE)     : catmode;    // set the default catmode from config data
+
+    // the user options -set-format and -set-mode assign values to the globals CATFORMAT
+    // and CATMODE (in args.c); otherwise the values from the input catalogs are inherited
 
     if (!dvo_catalog_open (&outcatalogs[i], outlist[0].regions[i], VERBOSE, "w")) {
Index: branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/split_averages.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/split_averages.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/split_averages.c	(revision 34041)
@@ -26,11 +26,22 @@
   // split out the average & secfilt entries:
   incatalog[0].catflags = LOAD_AVES | LOAD_SECF;
-  Nblocks = incatalog[0].Naves_disk / NROWS;
-  if (incatalog[0].Naves_disk % NROWS) Nblocks ++;
+
+  if (incatalog[0].catmode == DVO_MODE_SPLIT) {
+    Nblocks = incatalog[0].Naves_disk / NROWS;
+    if (incatalog[0].Naves_disk % NROWS) Nblocks ++;
+  } else {
+    Nblocks = 1;
+  }
+
   for (block = 0; block < Nblocks; block++) {
 
-    // read up to NROWS at a time
-    dvo_catalog_load_segment (incatalog, VERBOSE, block*NROWS, NROWS);
-    fprintf (stderr, "splitting %s (averages) .. %d of %d\n", incatalog[0].filename, block, Nblocks);
+    if (incatalog[0].catmode == DVO_MODE_SPLIT) {
+      // read up to NROWS at a time
+      dvo_catalog_load_segment (incatalog, VERBOSE, block*NROWS, NROWS);
+      fprintf (stderr, "splitting %s (averages) .. %d of %d\n", incatalog[0].filename, block, Nblocks);
+    } else {
+      dvo_catalog_load (incatalog, VERBOSE);
+      fprintf (stderr, "splitting %s (averages)\n", incatalog[0].filename);
+    }
 
     assert (block*NROWS == incatalog[0].Naves_off);
@@ -84,4 +95,6 @@
     // double check the values of Naverage, Nsecf_mem?
 
+    // XXX for output.catformat == MEF, we probably need to skip this stuff and the free below
+
     // write out the new values
     for (cat = 0; cat < outlist[0].Nregions; cat++) {
Index: branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/split_measures.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/split_measures.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/dvosplit/src/split_measures.c	(revision 34041)
@@ -20,11 +20,27 @@
   // split out the measure entries:
   incatalog[0].catflags = LOAD_MEAS;
-  Nblocks = incatalog[0].Nmeas_disk / NROWS;
-  if (incatalog[0].Nmeas_disk % NROWS) Nblocks ++;
+  // if ((incatalog[0].catformat == DVO_FORMAT_ELIXIR) || (incatalog[0].catformat == DVO_FORMAT_LONEOS)) {
+  //   // for these two formats, we need the average and secfilt values around until we do the measures...
+  //   // XXX I am loading these 2x -- perhaps I can make the API smarter about reloading?
+  //   incatalog[0].catflags |= LOAD_AVES | LOAD_SECF; 
+  // }
+
+  if (incatalog[0].catmode == DVO_MODE_SPLIT) {
+    Nblocks = incatalog[0].Nmeas_disk / NROWS;
+    if (incatalog[0].Nmeas_disk % NROWS) Nblocks ++;
+  } else {
+    Nblocks = 1;
+  }
+
   for (block = 0; block < Nblocks; block++) {
 
     // read up to NROWS at a time
-    dvo_catalog_load_segment (incatalog, VERBOSE, block*NROWS, NROWS);
-    fprintf (stderr, "splitting %s (measures) .. %d of %d\n", incatalog[0].filename, block, Nblocks);
+    if (incatalog[0].catmode == DVO_MODE_SPLIT) {
+      dvo_catalog_load_segment (incatalog, VERBOSE, block*NROWS, NROWS);
+      fprintf (stderr, "splitting %s (measures) .. %d of %d\n", incatalog[0].filename, block, Nblocks);
+    } else {
+      dvo_catalog_load (incatalog, VERBOSE);
+      fprintf (stderr, "splitting %s (measures)\n", incatalog[0].filename);
+    }
 
     assert (block*NROWS == incatalog[0].Nmeas_off);
Index: branches/meh_branches/ppstack_test/Ohana/src/elixir/include/elixir.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/elixir/include/elixir.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/elixir/include/elixir.h	(revision 34041)
@@ -169,5 +169,4 @@
 int 	  WaitMsg (char *fifo, char **message, double maxdelay);
 int 	  WriteMsg (char *fifo, char *message);
-int 	  memstr (char *m1, char *m2, int n);
-int 	  rconnect (char *hostname, char *command, int *rsock, int *wsock);
-void GetConfig (char *config, char *field, char *format, int N, void *ptr);
+void      GetConfig (char *config, char *field, char *format, int N, void *ptr);
+int       rconnect_elixir (char *hostname, char *command, int *rsock, int *wsock);
Index: branches/meh_branches/ppstack_test/Ohana/src/elixir/src/MachineOps.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/elixir/src/MachineOps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/elixir/src/MachineOps.c	(revision 34041)
@@ -202,5 +202,5 @@
   char line[256];
 
-  pid = rconnect (machine[0].hostname, CONNECT, &rsock, &wsock);
+  pid = rconnect_elixir (machine[0].hostname, CONNECT, &rsock, &wsock);
   if (pid) {
     machine[0].rsock = rsock;
Index: branches/meh_branches/ppstack_test/Ohana/src/elixir/src/RemoteOps.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/elixir/src/RemoteOps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/elixir/src/RemoteOps.c	(revision 34041)
@@ -15,5 +15,5 @@
 
   /* set signal to remote machine */
-  if (!rconnect (machine, CONNECT, &rsock, &wsock)) {
+  if (!rconnect_elixir (machine, CONNECT, &rsock, &wsock)) {
     fprintf (stderr, "can't make connection to machine %s to kill process\n", machine);
     exit (1);
@@ -47,5 +47,5 @@
 
   /* send signal to remote machine */
-  if (!rconnect (machine, CONNECT, &rsock, &wsock)) {
+  if (!rconnect_elixir (machine, CONNECT, &rsock, &wsock)) {
     fprintf (stderr, "can't make connection to machine %s to kill process\n", machine);
     exit (1);
@@ -90,5 +90,5 @@
 
   /* send signal to remote machine */
-  if (!rconnect (machine, CONNECT, &rsock, &wsock)) {
+  if (!rconnect_elixir (machine, CONNECT, &rsock, &wsock)) {
     fprintf (stderr, "can't make connection to machine %s to signal process\n", machine);
     exit (1);
@@ -151,5 +151,5 @@
 
   /* make connection to remote machine */
-  if (!rconnect (machine, CONNECT, &rsock, &wsock)) {
+  if (!rconnect_elixir (machine, CONNECT, &rsock, &wsock)) {
     fprintf (stderr, "can't make connection to machine %s to kill process\n", machine);
     exit (1);
Index: branches/meh_branches/ppstack_test/Ohana/src/elixir/src/SockScan.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/elixir/src/SockScan.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/elixir/src/SockScan.c	(revision 34041)
@@ -5,8 +5,10 @@
 int SockScan (char *string, Fifo *fifo, int sock) {
   
-  int i, done, status;
+  int i, status;
+  char *done;
 
-  done = 0;
-  for (i = 0; (i < MAXTIME) && !done; i++) {
+  status = FALSE;
+  done = string;
+  for (i = 0; (i < MAXTIME) && (done != NULL); i++) {
     ShiftFifo (fifo);
     status = ReadtoFifo (fifo, sock);
@@ -24,20 +26,4 @@
   return (status);
 }
-
-/* returns (offset to m2) + 1, or 0 if failure */ 
-int memstr (char *m1, char *m2, int n) {
-
-  int i, N;
-
-  N = strlen (m2);
-  for (i = 0; (i < n - N + 1) && memcmp (m1, m2, N); i++, m1++);
-  if (memcmp (m1, m2, N)) {
-    return (0);
-  }
-  else {
-    return (i+1);
-  }
-
-}
  
 /* SockScan reads from the given socket looking for the given string
Index: branches/meh_branches/ppstack_test/Ohana/src/elixir/src/rconnect.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/elixir/src/rconnect.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/elixir/src/rconnect.c	(revision 34041)
@@ -4,5 +4,6 @@
    one for read, one for write */
 
-int rconnect (char *hostname, char *command, int *rsock, int *wsock) {
+// this is a slightly different version than the one in libohana -- use a local name
+int rconnect_elixir (char *hostname, char *command, int *rsock, int *wsock) {
 
   int i, rfd[2], wfd[2], status;
Index: branches/meh_branches/ppstack_test/Ohana/src/getstar/src/args_coords.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/getstar/src/args_coords.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/getstar/src/args_coords.c	(revision 34041)
@@ -26,5 +26,5 @@
       exit (1);
     }
-    coordsFile = strdup(argv[N]);
+    coordsFile = strcreate(argv[N]);
     remove_argument (N, &argc, argv);
   }
@@ -36,5 +36,5 @@
       exit (1);
     }
-    astromFile = strdup(argv[N]);
+    astromFile = strcreate(argv[N]);
     remove_argument (N, &argc, argv);
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/getstar/src/dvoImagesAtCoords.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/getstar/src/dvoImagesAtCoords.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/getstar/src/dvoImagesAtCoords.c	(revision 34041)
@@ -142,5 +142,5 @@
         char *left_bracket = rindex(dbImages[N].name, '[');
         if (!fullNames && left_bracket) {
-            copy = strdup(left_bracket + 1);
+            copy = strcreate(left_bracket + 1);
             name = copy;
             // zap the .hdr]
@@ -158,7 +158,5 @@
         }
         if  (copy) {
-            // XXX: Temporarily leak this copy. free gets redirected to
-            // ohana_free but strdup didn't allocate the memory
-            // free(copy);
+	  free(copy);
         }
     }
Index: branches/meh_branches/ppstack_test/Ohana/src/imregister/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/imregister/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/imregister/Makefile	(revision 34041)
@@ -65,5 +65,4 @@
 $(IMREG)/ConfigPID.$(ARCH).o   \
 $(IMREG)/SetSignals.$(ARCH).o   \
-$(IMREG)/rconnect.$(ARCH).o   \
 $(IMREG)/FifoOps.$(ARCH).o   \
 $(IMREG)/SockScan.$(ARCH).o   \
Index: branches/meh_branches/ppstack_test/Ohana/src/imregister/imreg/SetSignals.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/imregister/imreg/SetSignals.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/imregister/imreg/SetSignals.c	(revision 34041)
@@ -90,5 +90,5 @@
   char username[256], machine[256];
   char line[512];
-  int i, wsock, rsock;
+  int i, iosock[3];
   struct stat filestat;
 
@@ -99,10 +99,11 @@
 
   /* send signal to remote machine */
-  if (!rconnect (machine, CONNECT, &rsock, &wsock)) {
-    fprintf (stderr, "can't make connection to machine %s to kill process %d\n", machine, pid);
+  int errorInfo;
+  if (!rconnect (CONNECT, machine, "/bin/csh", iosock, &errorInfo, TRUE)) {
+    fprintf (stderr, "can't make connection to machine %s to kill process %d (error %d)\n", machine, pid, errorInfo);
     exit (1);
   }
   sprintf (line, "kill -TERM %d\n", pid);
-  if (write (wsock, line, strlen (line)) != strlen(line)) {
+  if (write (iosock[0], line, strlen (line)) != strlen(line)) {
     fprintf (stderr, "error sending signal\n");
     exit (1);
Index: branches/meh_branches/ppstack_test/Ohana/src/imregister/imreg/SockScan.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/imregister/imreg/SockScan.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/imregister/imreg/SockScan.c	(revision 34041)
@@ -6,8 +6,10 @@
 int SockScan (char *string, Fifo *fifo, int sock) {
   
-  int i, done, status;
+  int i, status;
+  char *done;
 
-  done = 0;
-  for (i = 0; (i < MAXTIME) && !done; i++) {
+  done = string;
+  status = FALSE;
+  for (i = 0; (i < MAXTIME) && (done != NULL); i++) {
     ShiftFifo (fifo);
     status = ReadtoFifo (fifo, sock);
@@ -25,20 +27,4 @@
   return (status);
 }
-
-/* returns (offset to m2) + 1, or 0 if failure */ 
-int memstr (char *m1, char *m2, int n) {
-
-  int i, N;
-
-  N = strlen (m2);
-  for (i = 0; (i < n - N + 1) && memcmp (m1, m2, N); i++, m1++);
-  if (memcmp (m1, m2, N)) {
-    return (0);
-  }
-  else {
-    return (i+1);
-  }
-
-}
  
 /* SockScan reads from the given socket looking for the given string
Index: branches/meh_branches/ppstack_test/Ohana/src/imregister/include/imreg.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/imregister/include/imreg.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/imregister/include/imreg.h	(revision 34041)
@@ -118,5 +118,4 @@
 int Shutdown (int status);
 void RemovePID (void);
-int rconnect (char *hostname, char *command, int *rsock, int *wsock);
 
 int InitFifo (Fifo *fifo, int Nalloc, int Nextra);
@@ -126,5 +125,4 @@
 void FreeFifo (Fifo *fifo);
 int SockScan (char *string, Fifo *fifo, int sock);
-int memstr (char *m1, char *m2, int n);
 
 off_t *unique_entries (RegImage *image, off_t Nimage, off_t *subset, off_t *Nmatch);
Index: branches/meh_branches/ppstack_test/Ohana/src/kapa2/include/prototypes.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/kapa2/include/prototypes.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/kapa2/include/prototypes.h	(revision 34041)
@@ -99,4 +99,5 @@
 int           ListSection         PROTO((int sock));
 void          SetSectionSizes     PROTO((Section *section));
+int           SectionMinBoundary  PROTO((Graphic *graphic));
 
 KapaGraphWidget *InitGraph        PROTO((void));
Index: branches/meh_branches/ppstack_test/Ohana/src/kapa2/src/PNGit.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/kapa2/src/PNGit.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/kapa2/src/PNGit.c	(revision 34041)
@@ -22,4 +22,7 @@
 
   graphic = GetGraphic();
+
+  // limit the png window to the min needed to contain the active graphic regions
+  SectionMinBoundary (graphic);
 
   f = fopen (filename, "w");
@@ -81,8 +84,8 @@
   /* see docs for write-row-callback to provide progress info */
   if (haveImage) {
-    png_set_IHDR (png_ptr, info_ptr, graphic->dx, graphic->dy, 8, PNG_COLOR_TYPE_RGB, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT);
+    png_set_IHDR (png_ptr, info_ptr, graphic->dxwin, graphic->dywin, 8, PNG_COLOR_TYPE_RGB, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT);
     png_set_sRGB (png_ptr, info_ptr, PNG_sRGB_INTENT_ABSOLUTE);
   } else {
-    png_set_IHDR (png_ptr, info_ptr, graphic->dx, graphic->dy, 8, PNG_COLOR_TYPE_PALETTE, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); 
+    png_set_IHDR (png_ptr, info_ptr, graphic->dxwin, graphic->dywin, 8, PNG_COLOR_TYPE_PALETTE, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); 
     png_set_PLTE (png_ptr, info_ptr, palette, Npalette); 
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/kapa2/src/Sections.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/kapa2/src/Sections.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/kapa2/src/Sections.c	(revision 34041)
@@ -245,4 +245,12 @@
     int Xe = 0;
     int Ye = 0;
+
+# if (1)
+    graphic->xwin  = 0;
+    graphic->ywin  = 0;
+    graphic->dxwin = graphic->dx;
+    graphic->dywin = graphic->dy; 
+    return TRUE;
+# endif
 
     // the boundary for a single section should probably be adjusted depending on the 
Index: branches/meh_branches/ppstack_test/Ohana/src/kapa2/src/bDrawIt.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/kapa2/src/bDrawIt.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/kapa2/src/bDrawIt.c	(revision 34041)
@@ -12,6 +12,4 @@
 
   black = KapaColorByName ("black");
-
-  // SectionMinBoundary (graphic);
 
   // if we want to trim, we'll need to carry about the start in graphic coords and
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/Makefile.Targets
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/Makefile.Targets	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/Makefile.Targets	(revision 34041)
@@ -10,4 +10,5 @@
 $(ASRC)/average-ps1-v1.$(ARCH).o \
 $(ASRC)/average-ps1-v2.$(ARCH).o \
+$(ASRC)/average-ps1-v3.$(ARCH).o \
 $(ASRC)/average-ps1-ref.$(ARCH).o \
 $(ASRC)/secfilt.$(ARCH).o \
@@ -20,4 +21,5 @@
 $(ASRC)/secfilt-ps1-v1.$(ARCH).o \
 $(ASRC)/secfilt-ps1-v2.$(ARCH).o \
+$(ASRC)/secfilt-ps1-v3.$(ARCH).o \
 $(ASRC)/secfilt-ps1-ref.$(ARCH).o \
 $(ASRC)/measure.$(ARCH).o \
@@ -30,4 +32,5 @@
 $(ASRC)/measure-ps1-v1.$(ARCH).o \
 $(ASRC)/measure-ps1-v2.$(ARCH).o \
+$(ASRC)/measure-ps1-v3.$(ARCH).o \
 $(ASRC)/measure-ps1-ref.$(ARCH).o \
 $(ASRC)/missing.$(ARCH).o \
@@ -39,4 +42,5 @@
 $(ASRC)/photcode-ps1-v1.$(ARCH).o \
 $(ASRC)/photcode-ps1-v2.$(ARCH).o \
+$(ASRC)/photcode-ps1-v3.$(ARCH).o \
 $(ASRC)/photcode-ps1-ref.$(ARCH).o \
 $(ASRC)/image.$(ARCH).o \
@@ -50,4 +54,5 @@
 $(ASRC)/image-ps1-v1.$(ARCH).o \
 $(ASRC)/image-ps1-v2.$(ARCH).o \
+$(ASRC)/image-ps1-v3.$(ARCH).o \
 $(ASRC)/image-ps1-ref.$(ARCH).o \
 $(ASRC)/regimage.$(ARCH).o \
@@ -69,5 +74,7 @@
 $(ASRC)/GSCRegion.$(ARCH).o \
 $(ASRC)/AddstarClientOptions.$(ARCH).o \
-$(ASRC)/SkyRegion.$(ARCH).o
+$(ASRC)/SkyRegion.$(ARCH).o \
+$(ASRC)/FlatCorrectionImage.$(ARCH).o \
+$(ASRC)/FlatCorrection.$(ARCH).o
 
 AINCS = \
@@ -82,4 +89,5 @@
 $(AINC)/average-ps1-v1.h \
 $(AINC)/average-ps1-v2.h \
+$(AINC)/average-ps1-v3.h \
 $(AINC)/average-ps1-ref.h \
 $(AINC)/secfilt.h \
@@ -92,4 +100,5 @@
 $(AINC)/secfilt-ps1-v1.h \
 $(AINC)/secfilt-ps1-v2.h \
+$(AINC)/secfilt-ps1-v3.h \
 $(AINC)/secfilt-ps1-ref.h \
 $(AINC)/measure.h \
@@ -102,4 +111,5 @@
 $(AINC)/measure-ps1-v1.h \
 $(AINC)/measure-ps1-v2.h \
+$(AINC)/measure-ps1-v3.h \
 $(AINC)/measure-ps1-ref.h \
 $(AINC)/missing.h \
@@ -111,4 +121,5 @@
 $(AINC)/photcode-ps1-v1.h \
 $(AINC)/photcode-ps1-v2.h \
+$(AINC)/photcode-ps1-v3.h \
 $(AINC)/photcode-ps1-ref.h \
 $(AINC)/image.h \
@@ -122,4 +133,5 @@
 $(AINC)/image-ps1-v1.h \
 $(AINC)/image-ps1-v2.h \
+$(AINC)/image-ps1-v3.h \
 $(AINC)/image-ps1-ref.h \
 $(AINC)/regimage.h \
@@ -141,5 +153,7 @@
 $(AINC)/GSCRegion.h \
 $(AINC)/AddstarClientOptions.h \
-$(AINC)/SkyRegion.h
+$(AINC)/SkyRegion.h \
+$(AINC)/FlatCorrectionImage.h \
+$(AINC)/FlatCorrection.h
 
 # $(ASRC)/Stars.$(ARCH).o 
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/FlatCorrection.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/FlatCorrection.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/FlatCorrection.d	(revision 34041)
@@ -0,0 +1,9 @@
+STRUCT  FlatCorrection
+EXTNAME FLAT_CORRECTION
+TYPE    BINTABLE
+SIZE    16
+
+FIELD   ID,	   ID,	           int
+FIELD   x,	   X,	           int
+FIELD   y,	   Y,	           int
+FIELD   offset,    OFFSET,	   float
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/FlatCorrectionImage.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/FlatCorrectionImage.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/FlatCorrectionImage.d	(revision 34041)
@@ -0,0 +1,14 @@
+STRUCT  FlatCorrectionImage
+EXTNAME FLAT_CORRECTION_IMAGE
+TYPE    BINTABLE
+SIZE    32
+
+FIELD   tstart,	   TSTART,	   e_time, 
+FIELD   tstop,	   TSTOP,	   e_time, 
+FIELD   ID,	   ID,	           int
+FIELD   Nx,	   NX,	           int
+FIELD   Ny,	   NY,	           int
+FIELD   DX,	   DX,             int
+FIELD   DY,        DY,             int
+FIELD   photcode,  PHOTCODE,	   short
+FIELD   padding,   PADDING,	   short
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/SkyRegion.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/SkyRegion.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/SkyRegion.d	(revision 34041)
@@ -8,10 +8,26 @@
 FIELD   Dmin,	   D_MIN,	   float, 
 FIELD   Dmax,	   D_MAX,	   float, 
-FIELD   childS,	   CHILD_S,	   int,           sequence number in full table of first child
-FIELD   childE,	   CHILD_E,	   int,           sequence number in full table of last child + 1
-FIELD   parent,	   PARENT,	   int,           sequence number in full table of parent
-FIELD   index,     INDEX,          int,           sequence number in full table of this entry
-FIELD   depth,	   DEPTH,	   char,          depth of this entry
-FIELD   child,	   CHILD,	   char,          does this entry have children?
-FIELD   table,	   TABLE,	   char,          does this entry have a table?
-FIELD   name,      NAME,           char[21],      name / filename
+FIELD   childS,	   CHILD_S,	   int,            sequence number in full table of first child
+FIELD   childE,	   CHILD_E,	   int,            sequence number in full table of last child + 1
+FIELD   parent,	   PARENT,	   int,            sequence number in full table of parent
+FIELD   index,     INDEX,          int,            sequence number in full table of this entry
+FIELD   depth,	   DEPTH,	   char,           depth of this entry
+FIELD   child,	   CHILD,	   char,           does this entry have children?
+FIELD   table,	   TABLE,	   char,           does this entry have a table?
+FIELD   name,      NAME,           char[18],       name / filename
+FIELD   hostFlags, HOST_FLAGS,     char,           flags to define host / backup usage
+FIELD   hostID,    HOST_ID,        unsigned char,  host ID where data is stored
+FIELD   backupID,  BACKUP_ID,      unsigned char,  host ID where backup is stored
+
+# note : 2012.02.05 : stole 3 bytes from 'name' to use for host ID and
+#        related (no DBs were created with more than 17 bytes in the
+#        name).  The hostID points at an entry in the host table (text
+#        file, with name given in SkyTable PHU header).  There is no
+#        safety on this, but it is recoverable (by examining the
+#        directories) if misplaced.
+ 
+#        Note that SkyTables from databases generated in the past may
+#        have garbage characters here.  To ensure catch this
+#        condition, we add a header keyword to SkyTables in which the
+#        hostID has been set; if that is not present, the SkyTable
+#        loading software should init these bytes to 0 (== unassigned).
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/average-ps1-v2.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/average-ps1-v2.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/average-ps1-v2.d	(revision 34041)
@@ -9,6 +9,6 @@
 FIELD R,              RA,          double,          RA,                	       	  decimal degrees 
 FIELD D,              DEC,         double,          DEC,               	       	  decimal degrees 
-FIELD dR,             RA_ERR,      float,           RA error                      arcsec
-FIELD dD,             DEC_ERR,     float,           DEC error                     arcsec
+FIELD dR,             RA_ERR,      float,           RA error,                     arcsec
+FIELD dD,             DEC_ERR,     float,           DEC error,                    arcsec
 
 FIELD uR,             U_RA,        float,           RA*cos(D) proper-motion,      arcsec/year
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/average-ps1-v3.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/average-ps1-v3.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/average-ps1-v3.d	(revision 34041)
@@ -0,0 +1,62 @@
+STRUCT       Average_PS1_V3
+EXTNAME      DVO_AVERAGE_PS1_V3
+TYPE         BINTABLE
+SIZE         120
+DESCRIPTION  DVO Average Object Table
+
+# elements of data structure / FITS table
+
+FIELD R,              RA,          double,          RA,                	       	  decimal degrees 
+FIELD D,              DEC,         double,          DEC,               	       	  decimal degrees 
+FIELD dR,             RA_ERR,      float,           RA error,                     arcsec
+FIELD dD,             DEC_ERR,     float,           DEC error,                    arcsec
+
+FIELD uR,             U_RA,        float,           RA*cos(D) proper-motion,      arcsec/year
+FIELD uD,             U_DEC,       float,           DEC proper-motion,            arcsec/year
+FIELD duR,            V_RA_ERR,    float,           RA*cos(D) p-m error,          arcsec/year
+FIELD duD,            V_DEC_ERR,   float,           DEC p-m error,                arcsec/year
+FIELD P,              PAR,         float,           parallax,			  arcsec
+FIELD dP,             PAR_ERR,     float,           parallax error,               arcsec
+
+FIELD ChiSqAve,       CHISQ_POS,   float,           astrometry analysis chisq
+FIELD ChiSqPM,        CHISQ_PM,    float,           astrometry analysis chisq
+FIELD ChiSqPar,       CHISQ_PAP,   float,           astrometry analysis chisq
+FIELD Tmean,          MEAN_EPOCH,  int,   	    mean epoch (PM,PAR ref),       unix time seconds
+FIELD Trange,         TIME_RANGE,  int,   	    mean epoch (PM,PAR ref),       unix time seconds
+
+FIELD Xp,             SIGMA_POS,   float, 	    position scatter,   	  1/100 arcsec
+FIELD Npos,           NUMBER_POS,  unsigned short,  number of detections used for astrometry
+
+# this limits us to a max of 64k measurements per object
+FIELD Nmeasure,       NMEASURE,    unsigned short,  number of psf measurements
+FIELD Nmissing,       NMISSING,    unsigned short,  number of missings
+FIELD Nextend,        NEXTEND,     unsigned short,  number of extended measurements
+
+FIELD measureOffset,  OFF_MEASURE, uint32_t,   	    offset to first psf measurement
+FIELD missingOffset,  OFF_MISSING, uint32_t,   	    offset to first missing obs
+FIELD extendOffset,   OFF_EXTEND,  uint32_t,   	    offset to first extended measurement
+
+# 'flags' was called 'code' prior to 2009.02.07
+FIELD flags,          FLAGS,       uint32_t,        average object flags (star; ghost; etc)
+FIELD photFlagsUpper, PHOTFLAGS_U, uint32_t,        upper bit of 2 bit summary of per-measure photflags
+FIELD photFlagsLower, PHOTFLAGS_L, uint32_t,        lower bit of 2 bit summary of per-measure photflags
+
+# objID + catID gives a unique ID for all objects in the database
+FIELD objID,          OBJ_ID,      unsigned int,    unique ID for object in table
+FIELD catID,          CAT_ID,      unsigned int,    unique ID for table in which object was first realized
+FIELD extID,          EXT_ID,      uint64_t,        external ID for object (eg PSPS objID)
+
+# 2*8 + 1*8 + 12*4 + 7*4 + 4*2
+
+# photflagsUpper & photflagsLower: we have Nmeasures of a given source
+# using psphot. each of these as a photFlag field, with bits
+# describing the detection quality.  photflagsUpper and photFlagsLower
+# represent a 2 bit value (0-3) which defines the frequency of a given
+# bit in the measurements:
+# for a given bit, if that bit is raised for these percentile ranges,
+# the following bits are set:
+# min |  max | L | U
+#  0% |  25% | 0 | 0 
+# 25% |  50% | 1 | 0 
+# 50% |  75% | 0 | 1 
+# 75% | 100% | 1 | 1 
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/average.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/average.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/average.d	(revision 34041)
@@ -2,5 +2,5 @@
 EXTNAME      DVO_AVERAGE
 TYPE         BINTABLE
-SIZE         112
+SIZE         120
 DESCRIPTION  DVO Average Object Table
 
@@ -39,4 +39,6 @@
 # 'flags' was called 'code' prior to 2009.02.07
 FIELD flags,          FLAGS,       uint32_t,        average object flags (star; ghost; etc)
+FIELD photFlagsUpper, PHOTFLAGS_U, uint32_t,        upper bit of 2 bit summary of per-measure photflags
+FIELD photFlagsLower, PHOTFLAGS_L, uint32_t,        lower bit of 2 bit summary of per-measure photflags
 
 # objID + catID gives a unique ID for all objects in the database
@@ -54,2 +56,15 @@
 # *** 20100331 : new fields needed to assess astrometry analysis quality:
 
+
+# photflagsUpper & photflagsLower: we have Nmeasures of a given source
+# using psphot. each of these as a photFlag field, with bits
+# describing the detection quality.  photflagsUpper and photFlagsLower
+# represent a 2 bit value (0-3) which defines the frequency of a given
+# bit in the measurements:
+# for a given bit, if that bit is raised for these percentile ranges,
+# the following bits are set:
+# min |  max | L | U
+#  0% |  25% | 0 | 0 
+# 25% |  50% | 1 | 0 
+# 50% |  75% | 0 | 1 
+# 75% | 100% | 1 | 1 
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/image-ps1-v3.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/image-ps1-v3.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/image-ps1-v3.d	(revision 34041)
@@ -0,0 +1,75 @@
+STRUCT       Image_PS1_V3
+EXTNAME      DVO_IMAGE_PS1_V3
+TYPE         BINTABLE
+SIZE         360
+DESCRIPTION  DVO Image Table 
+
+# elements of the image structure
+
+SUBSTRUCT coords,           COORDS,               Coords,        astrometric data
+SUBFIELD  crval1,           CRVAL1,               double,   	 coordinate at reference pixel
+SUBFIELD  crval2,           CRVAL2,               double,  	 coordinate at reference pixel
+SUBFIELD  crpix1,           CRPIX1,               float,   	 coordinate of reference pixel
+SUBFIELD  crpix2,           CRPIX2,               float,   	 coordinate of reference pixel
+SUBFIELD  cdelt1,           CDELT1,               float,   	 degrees per pixel
+SUBFIELD  cdelt2,           CDELT2,               float,    	 degrees per pixel
+SUBFIELD  pc1_1,            PC1_1,                float,    	 rotation matrix
+SUBFIELD  pc1_2,            PC1_2,                float,    	 rotation matrix
+SUBFIELD  pc2_1,            PC2_1,                float,    	 rotation matrix
+SUBFIELD  pc2_2,            PC2_2,                float,    	 rotation matrix
+SUBFIELD  polyterms,        POLYTERMS,            float[7][2],	 higher order warping terms
+SUBFIELD  ctype,            CTYPE,                char[15],      coordinate type
+SUBFIELD  Npolyterms,       NPOLYTERMS,           char,     	 order of polynomial
+# 120 bytes
+
+FIELD 	  tzero,            TZERO,                e_time,         readout time (row 0)
+FIELD 	  nstar,            NSTAR,                unsigned int,   number of stars on image
+FIELD 	  secz,             SECZ,                 float,      	  airmass,                   mag
+FIELD 	  NX,               NX,                   unsigned short, image width
+FIELD 	  NY,               NY,                   unsigned short, image height
+FIELD 	  apmifit,          APMIFIT,              float,      	  aperture correction,       mag
+FIELD 	  dapmifit,         DAPMIFIT,             float,      	  apmifit error,             mag
+FIELD 	  Mcal,             MCAL,                 float,      	  calibration mag,           mag
+FIELD 	  dMcal,            DMCAL,                float,      	  error on Mcal,             mag
+FIELD 	  Xm,               XM,                   short,      	  image chisq,               10*log(value)
+FIELD 	  photcode,         PHOTCODE,             short,      	  identifier for CCD,
+FIELD 	  exptime,          EXPTIME,              float,          exposure time,             seconds
+FIELD     sidtime,          ST,			  float,          sidereal time of exposure
+FIELD     latitude,         LAT,		  float,          observatory latitude,      degrees
+# 40 bytes
+
+FIELD     RAo,              RA_CENTER,            float,          image center,              degrees
+FIELD     DECo,             DEC_CENTER,           float,          image center,              degrees
+FIELD     Radius,           RADIUS,               float,          image radius,              degrees
+FIELD     DUMMY,            DUMMY,                float,          dummy
+
+# should we define the max length of name as a macro?
+FIELD 	  name,             NAME,                 char[121],      name of original image 
+FIELD 	  detection_limit,  DETECTION_LIMIT,      unsigned char,  detection limit,           10*mag
+FIELD 	  saturation_limit, SATURATION_LIMIT,     unsigned char,  saturation limit,          10*mag
+FIELD 	  cerror,           CERROR,               unsigned char,  astrometric error,         50*arcsec
+FIELD 	  fwhm_x,           FWHM_X,               unsigned char,  PSF x width,               25*arcsec
+FIELD 	  fwhm_y,           FWHM_Y,               unsigned char,  PSF y width,               25*arcsec
+FIELD 	  trate,            TRATE,                unsigned char,  scan rate,                 100 usec/pixel
+FIELD 	  ccdnum,           CCDNUM,               unsigned char,  CCD ID number
+FIELD 	  flags,            FLAGS,                unsigned int,   image quality flags
+FIELD 	  imageID,          IMAGE_ID,             unsigned int,   internal image ID
+FIELD 	  parentID,         PARENT_ID,            unsigned int,   associated ref image
+FIELD 	  externID,         EXTERN_ID,            unsigned int,   external image ID
+FIELD 	  sourceID,         SOURCE_ID,            unsigned short, analysis source ID
+# 48 bytes 
+
+FIELD 	  nLinkAstrom,      NLINK_ASTROM,         short,      	  mean number of matched measurements for astrometry
+FIELD 	  nLinkPhotom,      NLINK_PHOTOM,         short,      	  mean number of matched measurements for astrometry
+FIELD 	  ubercalDist,      UBERCAL_DIST,         short,      	  distance to nearest ubercal image
+
+FIELD 	  dXpixSys,         XPIX_SYS_ERR,         float,      	  systematic astrometry error in X
+FIELD 	  dYpixSys,         YPIX_SYS_ERR,         float,      	  systematic astrometry error in Y
+
+FIELD 	  dMagSys,          MAG_SYS_ERR,          float,      	  systematic photometry error
+FIELD 	  nFitAstrom,       N_FIT_ASTROM,         short,      	  number of stars used for astrometry cal
+FIELD 	  nFitPhotom,       N_FIT_PHOTOM,         short,      	  number of stars used for photometry cal
+
+FIELD 	  photom_map_id,    PHOTOM_MAP_ID,        unsigned int,   reference to 2D zero point map
+FIELD 	  astrom_map_id,    ASTROM_MAP_ID,        unsigned int,   reference to 2D astrometry map
+# nFitPhotom lands on the old location of Mxxxx, which was used to mean nFitPhotom in some cases
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/image.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/image.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/image.d	(revision 34041)
@@ -1,3 +1,3 @@
- STRUCT       Image
+STRUCT       Image
 EXTNAME      DVO_IMAGE
 TYPE         BINTABLE
@@ -63,5 +63,5 @@
 FIELD 	  nLinkAstrom,      NLINK_ASTROM,         short,      	  mean number of matched measurements for astrometry
 FIELD 	  nLinkPhotom,      NLINK_PHOTOM,         short,      	  mean number of matched measurements for astrometry
-FIELD 	  dummy3,           DUMMY3,               short,      	  place holder for byte boundaries
+FIELD 	  ubercalDist,      UBERCAL_DIST,         short,      	  distance to nearest ubercal image
 
 FIELD 	  dXpixSys,         XPIX_SYS_ERR,         float,      	  systematic astrometry error in X
@@ -69,6 +69,6 @@
 
 FIELD 	  dMagSys,          MAG_SYS_ERR,          float,      	  systematic photometry error
-FIELD 	  nFitAstrom,       N_FIT_ASTROM,         short,      	  number of stars used for astrometry cal
-FIELD 	  nFitPhotom,       N_FIT_PHOTOM,         short,      	  number of stars used for photometry cal
+FIELD 	  nFitAstrom,       N_FIT_ASTROM,         unsigned short, number of stars used for astrometry cal
+FIELD 	  nFitPhotom,       N_FIT_PHOTOM,         unsigned short, number of stars used for photometry cal
 
 FIELD 	  photom_map_id,    PHOTOM_MAP_ID,        unsigned int,   reference to 2D zero point map
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/measure-ps1-v3.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/measure-ps1-v3.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/measure-ps1-v3.d	(revision 34041)
@@ -0,0 +1,82 @@
+STRUCT       Measure_PS1_V3
+EXTNAME      DVO_MEASURE_PS1_V3
+TYPE         BINTABLE
+SIZE         152
+DESCRIPTION  DVO Detection Measurement Table 
+
+FIELD dR,             D_RA,         float,          RA offset,                	  arcsec
+FIELD dD,             D_DEC,        float,          DEC offset,               	  arcsec
+FIELD M,              MAG,          float,          catalog mag,       	       	  mag
+FIELD Mcal,           M_CAL,        float,          image cal mag,	          mag
+FIELD Map,            M_APER,       float,          aperture mag,		  mag
+FIELD dM,             MAG_ERR,      float,          mag error,                    mag
+FIELD dMcal,          MAG_CAL_ERR,  float,          systematic calibration error, mag
+FIELD dt,             M_TIME,       float,          exposure time,                2.5*log(exptime)
+
+# note that with airmass = 1.0 / cos(90 - alt), we have full alt/az representation
+FIELD airmass,        AIRMASS,      float,          (airmass - 1),		  airmass
+FIELD az,             AZ,           float,          telescope azimuth
+
+# new field elements needed for Pan-STARRS:
+FIELD Xccd,           X_CCD,        float,          X coord on chip,               pixels
+FIELD Yccd,           Y_CCD,        float,          Y coord on chip,               pixels
+
+# could these be packed into fewer bits?
+FIELD Sky,            SKY_FLUX,     float,          local estimate of sky flux,    counts/sec
+FIELD dSky,           SKY_FLUX_ERR, float,          local estimate of sky flux,    counts/sec
+
+FIELD t,              TIME,         int,   	    time in seconds (UNIX)
+FIELD averef,         AVE_REF,      unsigned int,   reference to average entry      
+
+# internally, this is an unsigned int; however, we do NOT convert with TZERO/TSCAL on output
+FIELD detID,          DET_ID,       unsigned int,   detection ID
+FIELD imageID,        IMAGE_ID,     unsigned int,   reference to DVO image ID
+FIELD objID,          OBJ_ID,       unsigned int,   unique ID for object in table
+FIELD catID,          CAT_ID,       unsigned int,   unique ID for table in which object was first realized
+
+# PSPS uses a 64-bit detection ID
+FIELD extID,          EXT_ID,       uint64_t,       external ID (eg PSPS detID)
+
+# do we need more resolution than a short? should this be a log?
+FIELD psfQual,        PSF_QF,       float,          psf coverage/quality factor
+FIELD psfChisq,       PSF_CHISQ,    float,          psf fit chisq
+FIELD psfNdof,        PSF_NDOF,     int,            psf degrees of freedom
+FIELD psfNpix,        PSF_NPIX,     int,            psf number of pixels
+FIELD crNsigma,       CR_NSIGMA,    float,          Nsigma deviation towards CR
+FIELD extNsigma,      EXT_NSIGMA,   float,          Nsigma deviation towards EXT
+
+# model shape parameters
+FIELD FWx,            FWHM_MAJOR,   short,          object fwhm major axis,         1/100 of pixels
+FIELD FWy,            FWHM_MINOR,   short,          object fwhm minor axis,         1/100 of pixels 
+FIELD theta,          PSF_THETA,    short,          angle wrt ccd X dir,            (0xffff/360) deg
+
+# moments
+FIELD Mxx,            MXX,          short,          second moments in pixel coords, 1/100 of pixels
+FIELD Mxy,            MXY,          short,          second moments in pixel coords, 1/100 of pixels
+FIELD Myy,            MYY,          short,          second moments in pixel coords, 1/100 of pixels
+
+# fractional exposure time
+FIELD t_msec,         TIME_MSEC,    unsigned short, time fraction of second,       milliseconds
+FIELD photcode,       PHOTCODE,     unsigned short, photcode
+
+# position errors
+FIELD dXccd,          X_CCD_ERR,    short,          X coord error on chip,          1/100 of pixels
+FIELD dYccd,          Y_CCD_ERR,    short,          Y coord error on chip,          1/100 of pixels
+FIELD dRsys,          POS_SYS_ERR,  short,          systematic error from astrom,   1/100 of pixels
+
+FIELD pad,            PAD,          char[4],        padding
+
+# local astrometry scales
+FIELD posangle,       POSANGLE,     short,          position angle sky to chip,     (0xffff/360) deg
+FIELD pltscale,       PLTSCALE,     float,          plate scale,                    arcsec/pixel
+
+FIELD dbFlags,        DB_FLAGS,     unsigned int,   flags supplied by analysis in database
+FIELD photFlags,      PHOT_FLAGS,   unsigned int,   flags supplied by photometry program
+
+
+# 19 x float
+# 6 x int or unsigned int
+# 11 x short or unsigned short
+# 3 x uint64_t
+
+# = 
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/photcode-ps1-v3.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/photcode-ps1-v3.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/photcode-ps1-v3.d	(revision 34041)
@@ -0,0 +1,33 @@
+STRUCT       PhotCode_PS1_V3
+EXTNAME      DVO_PHOTCODE_PS1_V3
+TYPE         BINTABLE
+SIZE         112
+DESCRIPTION  DVO Photcode Description Table 
+
+# elements of data structure / FITS table
+FIELD  code,         	  CODE,          	 unsigned short, code number (stored in Measure.source) 
+FIELD  name,         	  NAME,          	 char[32],       name for filter combination 
+FIELD  type,         	  TYPE,          	 char,           PRI/SEC/DEP/REF 
+FIELD  dummy,        	  DUMMY,         	 char[3],        padding
+FIELD  C,            	  C_LAM,         	 short,          primary phot calibration terms (millimags) 
+FIELD  dC,           	  C_LAM_ERR,     	 short,          primary phot calibration terms (millimags) 
+FIELD  dX,           	  X_ERR,         	 short,          primary phot calibration terms (millimags) 
+FIELD  K,            	  K,             	 float,          secondary phot calibration terms (millimags) 
+FIELD  c1,           	  C1,            	 int,            color is average.M[c1] - average.M[c2] 
+FIELD  c2,           	  C2,            	 int,            color is average.M[c1] - average.M[c2] 
+FIELD  equiv,        	  EQUIV,         	 int,            this dependent filter is equivalent to equiv PRI/SEC
+FIELD  Nc,           	  NC,            	 int,            number of color terms 
+FIELD  X,            	  X,             	 float[4],       color terms $X[0]*mc + X[1]*mc^2 + X[2]*mc^3$, etc 
+FIELD  astromErrSys,      ASTROM_ERR_SYS,  	 float,          systematic astrometry error (arcsec)
+FIELD  astromErrScale,    ASTROM_ERR_SCALE,  	 float,          astrometric error scale
+FIELD  astromErrMagScale, ASTROM_ERR_MAG_SCALE,  float,          astrometric error / mag error scale
+FIELD  astromPoorMask,    ASTROM_POOR_MASK,      int,            detections matching this mask should only be used in emergencies
+FIELD  astromBadMask,     ASTROM_BAD_MASK,       int,            detections matching this mask should not be used
+FIELD  photomErrSys,   	  PHOTOM_ERR_SYS,  	 float,          systematic photometric error
+FIELD  photomPoorMask, 	  PHOTOM_POOR_MASK,  	 int,            detections matching this mask should only be used in emergencies
+FIELD  photomBadMask,  	  PHOTOM_BAD_MASK,  	 int,            detections matching this mask should not be used
+
+#   dR_total^2 =  dR_sys^2 + AS * dR_obs^2 + MS * dM_obs^2
+#   dR_sys : systematicAstrometryError
+#   AS     : astrometryErrorScale
+#   MS     : astrometryErrorMagScale
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/photcode.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/photcode.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/photcode.d	(revision 34041)
@@ -2,5 +2,5 @@
 EXTNAME      DVO_PHOTCODE_RAW
 TYPE         BINTABLE
-SIZE         104
+SIZE         112
 DESCRIPTION  DVO Photcode Description Table 
 
@@ -22,9 +22,9 @@
 FIELD  astromErrScale,    ASTROM_ERR_SCALE,  	 float,          astrometric error scale
 FIELD  astromErrMagScale, ASTROM_ERR_MAG_SCALE,  float,          astrometric error / mag error scale
-FIELD  astromPoorMask,    ASTROM_POOR_MASK,      short,          detections matching this mask should only be used in emergencies
-FIELD  astromBadMask,     ASTROM_BAD_MASK,       short,          detections matching this mask should not be used
+FIELD  astromPoorMask,    ASTROM_POOR_MASK,      int,            detections matching this mask should only be used in emergencies
+FIELD  astromBadMask,     ASTROM_BAD_MASK,       int,            detections matching this mask should not be used
 FIELD  photomErrSys,   	  PHOTOM_ERR_SYS,  	 float,          systematic photometric error
-FIELD  photomPoorMask, 	  PHOTOM_POOR_MASK,  	 short,          detections matching this mask should only be used in emergencies
-FIELD  photomBadMask,  	  PHOTOM_BAD_MASK,  	 short,          detections matching this mask should not be used
+FIELD  photomPoorMask, 	  PHOTOM_POOR_MASK,  	 int,            detections matching this mask should only be used in emergencies
+FIELD  photomBadMask,  	  PHOTOM_BAD_MASK,  	 int,            detections matching this mask should not be used
 
 #   dR_total^2 =  dR_sys^2 + AS * dR_obs^2 + MS * dM_obs^2
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/secfilt-ps1-v3.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/secfilt-ps1-v3.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/secfilt-ps1-v3.d	(revision 34041)
@@ -0,0 +1,18 @@
+STRUCT       SecFilt_PS1_V3
+EXTNAME      DVO_SECFILT_PS1_V3
+TYPE         BINTABLE
+SIZE         32
+DESCRIPTION  DVO SecFilt : Secondary Filter Data 
+
+# elements of data structure / FITS table
+FIELD  M,     	    MAG,      	  float,      average mag in this band,              mags
+FIELD  Map,    	    MAG_AP,    	  float,      ave aperture mag in this band,         mags
+FIELD  dM,    	    MAG_ERR,  	  float,      formal error on average mag,           mags
+FIELD  Xm,    	    MAG_CHI,  	  float,      chisq on average mag,                  [100*log(value)]
+FIELD  flags, 	    FLAGS,    	  uint32_t,   photometry flags
+FIELD  Ncode, 	    NCODE,    	  short,      number of detections in band
+FIELD  Nused, 	    NUSED,    	  short,      number of detections used in average
+FIELD  M_20,  	    MAG_20,   	  short,      lower 20percent mag,                   millimags
+FIELD  M_80,  	    MAG_80,   	  short,      upper 20percent mag,                   millimags
+FIELD  ubercalDist, UBERCAL_DIST, short,      number of images from an ubercal-image
+FIELD  Mstdev,      MAG_STDEV,    short,      standard deviation of measurements,    millimags
Index: branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/secfilt.d
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/secfilt.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libautocode/def/secfilt.d	(revision 34041)
@@ -2,16 +2,20 @@
 EXTNAME      DVO_SECFILT
 TYPE         BINTABLE
-SIZE         24
+SIZE         32
 DESCRIPTION  DVO SecFilt : Secondary Filter Data 
 
 # elements of data structure / FITS table
-FIELD  M,     MAG,      float,                other mags,       mags
-FIELD  dM,    MAG_ERR,  float,                scatter on mag,   mags
-FIELD  Xm,    MAG_CHI,  float,                chisq on average mag,     [100*log(value)]
-FIELD  flags, FLAGS,    uint32_t,             photometry flags
-FIELD  Ncode, NCODE,    short,                number of detections in band
-FIELD  Nused, NUSED,    short,                number of detections used in average
-FIELD  M_20,  MAG_20,   short,                lower 20percent mag,      millimags
-FIELD  M_80,  MAG_80,   short,                upper 20percent mag,      millimags
+FIELD  M,     	    MAG,      	  float,      average mag in this band,              mags
+FIELD  Map,    	    MAG,      	  float,      average mag in this band,              mags
+FIELD  dM,    	    MAG_ERR,  	  float,      formal error on average mag,           mags
+FIELD  Xm,    	    MAG_CHI,  	  float,      chisq on average mag,                  [100*log(value)]
+FIELD  flags, 	    FLAGS,    	  uint32_t,   photometry flags
+FIELD  Ncode, 	    NCODE,    	  short,      number of detections in band
+FIELD  Nused, 	    NUSED,    	  short,      number of detections used in average
+FIELD  M_20,  	    MAG_20,   	  short,      lower 20percent mag,                   millimags
+FIELD  M_80,  	    MAG_80,   	  short,      upper 20percent mag,                   millimags
+FIELD  ubercalDist, UBERCAL_DIST, short,      number of images from an ubercal-image
+FIELD  Mstdev,      MAG_STDEV,    short,      standard deviation of measurements,    millimags
 
 # *** 20090206 : new fields : M_20, M_80; dropped dummy
+# *** 20120302 : new fields : ubercalDist, Map, dummy[2byte]
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/Makefile	(revision 34041)
@@ -34,4 +34,5 @@
 $(DESTINC)/ps1_v1_defs.h \
 $(DESTINC)/ps1_v2_defs.h \
+$(DESTINC)/ps1_v3_defs.h \
 $(DESTINC)/ps1_ref_defs.h
 
@@ -43,4 +44,5 @@
 $(SRC)/dvosorts.$(ARCH).o	 \
 $(SRC)/dvo_photcode_ops.$(ARCH).o \
+$(SRC)/dvo_photcode_utils.$(ARCH).o \
 $(SRC)/LoadPhotcodes.$(ARCH).o   \
 $(SRC)/LoadPhotcodesText.$(ARCH).o   \
@@ -51,4 +53,5 @@
 $(SRC)/mosaic_astrom.$(ARCH).o   \
 $(SRC)/fits_db.$(ARCH).o	 \
+$(SRC)/dvo_tiny_values.$(ARCH).o       \
 $(SRC)/dvo_image.$(ARCH).o       \
 $(SRC)/dvo_image_raw.$(ARCH).o   \
@@ -69,5 +72,7 @@
 $(SRC)/dvo_convert_PS1_V1.$(ARCH).o \
 $(SRC)/dvo_convert_PS1_V2.$(ARCH).o \
+$(SRC)/dvo_convert_PS1_V3.$(ARCH).o \
 $(SRC)/dvo_convert_PS1_REF.$(ARCH).o \
+$(SRC)/flatcorr_io.$(ARCH).o    \
 $(SRC)/skyregion_io.$(ARCH).o    \
 $(SRC)/skyregion_gsc.$(ARCH).o    \
@@ -94,5 +99,6 @@
 $(SRC)/match_image.$(ARCH).o		\
 $(SRC)/db_utils.$(ARCH).o		\
-$(SRC)/convert.$(ARCH).o
+$(SRC)/convert.$(ARCH).o                \
+$(SRC)/HostTable.$(ARCH).o
 
 
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/include/dvo.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/include/dvo.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/include/dvo.h	(revision 34041)
@@ -26,4 +26,5 @@
   DVO_FORMAT_PS1_V1,
   DVO_FORMAT_PS1_V2,
+  DVO_FORMAT_PS1_V3,
 } DVOTableFormat;
 
@@ -69,4 +70,7 @@
 } DVO_INT_NAN;
 
+// max path length
+# define DVO_MAX_PATH 1024
+
 /* RegImage.flag values */
 # define IMREG_DIST  0x01 /* image distributed, only imregister-3.0 */
@@ -95,34 +99,35 @@
 /* Image.code values -- these values are 32 bit (as of PS1_V1) */
 typedef enum {
-  ID_IMAGE_NEW          = 0x00000000,  /* no calibrations yet attempted */
-  ID_IMAGE_PHOTOM_NOCAL = 0x00000001,  /* user-set value used within relphot: ignore */
-  ID_IMAGE_PHOTOM_POOR  = 0x00000002,  /* relphot says image is bad (dMcal > limit) */
-  ID_IMAGE_PHOTOM_SKIP  = 0x00000004,  /* user-set value: assert that this image has bad photometry */
-  ID_IMAGE_PHOTOM_FEW   = 0x00000008,  /* currently too few measurements for photometry */
-  ID_IMAGE_ASTROM_NOCAL = 0x00000010,  /* user-set value used within relastro: ignore */
-  ID_IMAGE_ASTROM_POOR  = 0x00000020,  /* relastro says image is bad (dR,dD > limit) */
-  ID_IMAGE_ASTROM_FAIL  = 0x00000040,  /* relastro fit diverged, fit not applied */
-  ID_IMAGE_ASTROM_SKIP  = 0x00000080,  /* user-set value: assert that this image has bad astrometry */
-  ID_IMAGE_ASTROM_FEW   = 0x00000100,  /* currently too few measurements for astrometry */
+  ID_IMAGE_NEW            = 0x00000000,  /* no calibrations yet attempted */
+  ID_IMAGE_PHOTOM_NOCAL   = 0x00000001,  /* user-set value used within relphot: ignore */
+  ID_IMAGE_PHOTOM_POOR    = 0x00000002,  /* relphot says image is bad (dMcal > limit) */
+  ID_IMAGE_PHOTOM_SKIP    = 0x00000004,  /* user-set value: assert that this image has bad photometry */
+  ID_IMAGE_PHOTOM_FEW     = 0x00000008,  /* currently too few measurements for photometry */
+  ID_IMAGE_ASTROM_NOCAL   = 0x00000010,  /* user-set value used within relastro: ignore */
+  ID_IMAGE_ASTROM_POOR    = 0x00000020,  /* relastro says image is bad (dR,dD > limit) */
+  ID_IMAGE_ASTROM_FAIL    = 0x00000040,  /* relastro fit diverged, fit not applied */
+  ID_IMAGE_ASTROM_SKIP    = 0x00000080,  /* user-set value: assert that this image has bad astrometry */
+  ID_IMAGE_ASTROM_FEW     = 0x00000100,  /* currently too few measurements for astrometry */
+  ID_IMAGE_PHOTOM_UBERCAL = 0x00000200,  /* externally-supplied photometry zero point from ubercal analysis */
 } DVOImageFlags;
 
 /* Measure.flags values -- these values are 32 bit (as of PS1_V1) */
 typedef enum {
-  ID_MEAS_NOCAL        = 0x00000001,  // detection ignored for this analysis (photcode, time range) -- internal only 
-  ID_MEAS_POOR_PHOTOM  = 0x00000002,  // detection is photometry outlier					     	  
-  ID_MEAS_SKIP_PHOTOM  = 0x00000004,  // detection was ignored for photometry measurement			     	  
-  ID_MEAS_AREA         = 0x00000008,  // detection near image edge						     
-  ID_MEAS_POOR_ASTROM  = 0x00000010,  // detection is astrometry outlier					     	  
-  ID_MEAS_SKIP_ASTROM  = 0x00000020,  // detection was ignored for astrometry measurement			     	  
-  ID_MEAS_USED_OBJ     = 0x00000040,  // detection was used during opdate objects				     
-  ID_MEAS_USED_CHIP    = 0x00000080,  // detection was used during update chips					     
-  ID_MEAS_BLEND_MEAS   = 0x00000100,  // detection is within radius of multiple objects				     
-  ID_MEAS_BLEND_OBJ    = 0x00000200,  // multiple detections within radius of object				     
-  ID_MEAS_UNDEF_3      = 0x00000400,  // unused									     
-  ID_MEAS_UNDEF_4      = 0x00000800,  // unused									     
-  ID_MEAS_BLEND_MEAS_X = 0x00001000,  // detection is within radius of multiple objects across catalogs		     
-  ID_MEAS_ARTIFACT     = 0x00002000,  // detection is thought to be non-astronomical				     
-  ID_MEAS_UNDEF_5      = 0x00004000,  // unused									     
-  ID_MEAS_UNDEF_6      = 0x00008000,  // unused									     
+  ID_MEAS_NOCAL          = 0x00000001,  // detection ignored for this analysis (photcode, time range) -- internal only 
+  ID_MEAS_POOR_PHOTOM    = 0x00000002,  // detection is photometry outlier					     	  
+  ID_MEAS_SKIP_PHOTOM    = 0x00000004,  // detection was ignored for photometry measurement			     	  
+  ID_MEAS_AREA           = 0x00000008,  // detection near image edge						     
+  ID_MEAS_POOR_ASTROM    = 0x00000010,  // detection is astrometry outlier					     	  
+  ID_MEAS_SKIP_ASTROM    = 0x00000020,  // detection was ignored for astrometry measurement			     	  
+  ID_MEAS_USED_OBJ       = 0x00000040,  // detection was used during update objects  
+  ID_MEAS_USED_CHIP      = 0x00000080,  // detection was used during update chips (XXX this probably does not make it into the db)
+  ID_MEAS_BLEND_MEAS     = 0x00000100,  // detection is within radius of multiple objects 
+  ID_MEAS_BLEND_OBJ      = 0x00000200,  // multiple detections within radius of object 
+  ID_MEAS_UNDEF_3        = 0x00000400,  // unused 
+  ID_MEAS_UNDEF_4        = 0x00000800,  // unused 
+  ID_MEAS_BLEND_MEAS_X   = 0x00001000,  // detection is within radius of multiple objects across catalogs		     
+  ID_MEAS_ARTIFACT       = 0x00002000,  // detection is thought to be non-astronomical				     
+  ID_MEAS_UNDEF_5        = 0x00004000,  // unused 
+  ID_MEAS_PHOTOM_UBERCAL = 0x00008000,  // externally-supplied zero point from ubercal analysis
 } DVOMeasureFlags;
 
@@ -141,5 +146,5 @@
 */
 
-/* Average.code values -- these values are 32 bit (as of PS1_V1) */
+/* Average.flags values -- these values are 32 bit (as of PS1_V1) */
 typedef enum {
   ID_STAR_FEW     = 0x00000001, // used within relphot: skip star
@@ -168,4 +173,18 @@
 } DVOAverageFlags;
 
+/* Secfilt.flags values -- these values are 32 bit (as of PS1_V1) */
+typedef enum {
+  ID_SECF_STAR_FEW    = 0x00000001, // used within relphot: skip star
+  ID_SECF_STAR_POOR   = 0x00000002, // used within relphot: skip star
+  ID_SECF_USE_SYNTH   = 0x00000004, // synthetic photometry used in average measurement
+  ID_SECF_USE_UBERCAL = 0x00000008, // synthetic photometry used in average measurement
+  ID_PHOTOM_PASS_0    = 0x00000100, // average magnitude calculated in 0th pass
+  ID_PHOTOM_PASS_1    = 0x00000200, // average magnitude calculated in 1th pass
+  ID_PHOTOM_PASS_2    = 0x00000400, // average magnitude calculated in 2th pass
+  ID_PHOTOM_PASS_3    = 0x00000800, // average magnitude calculated in 3th pass
+  ID_PHOTOM_PASS_4    = 0x00001000, // average magnitude calculated in 4th pass
+  ID_SECF_OBJ_EXT     = 0x01000000, // extended in this band
+} DVOSecfiltFlags;
+
 /*** general dvo structures (internal use only / not IO) ***/
 
@@ -196,4 +215,5 @@
   char **filename;
   SkyRegion *regions;
+  char hosts[80];
 } SkyTable;
 
@@ -203,5 +223,54 @@
   char **filename;
   SkyRegion **regions;
+  char hosts[80];
 } SkyList;
+
+typedef struct {
+  off_t Nimage;
+  FlatCorrectionImage *image;
+  off_t Ncorr;
+  int *IDtoSeq;
+  FlatCorrection *corr;
+  float ***offset; // the correction images represented as a set of arrays (same sequence as *image)
+  int Nseason;
+  e_time *tstart;
+  e_time *tstop;
+} FlatCorrectionTable;
+
+/* definitions for parallel dvo host information 
+   XXX : need better names (safer namespace)
+ */
+
+typedef enum {
+  DATA_ON_TGT  = 0x01,
+  DATA_ON_BCK  = 0x02,
+  DATA_USE_BCK = 0x04,
+
+  DATA_COPY_FAILURE = 0x80,
+} SkyTableDataFlags;
+
+typedef enum {
+  HOST_STDIN = 0,
+  HOST_STDOUT = 1,
+  HOST_STDERR = 2,
+} HostInfoIOfd;
+
+typedef struct {
+  char *hostname;	      // name of remote machine
+  char *pathname;	      // name of directory for this machine's data
+  char *results;	      // name of file machine's result data
+  int hostID;		      // remove machine ID in SkyTable
+  int stdio[3]; 	      // fd's for communication with the remote host
+  int pid;		      // remote process ID
+  int status;		      // job exit status
+  IOBuffer stdout;
+  IOBuffer stderr;
+} HostInfo;
+
+typedef struct {
+  int Nhosts;
+  HostInfo *hosts;
+  short *index;
+} HostTable;
 
 // special-case function:
@@ -218,4 +287,19 @@
 } PhotCodeData;
 
+typedef enum {
+  DVO_TV_MEASURE = 0x01,
+  DVO_TV_AVERAGE = 0x02,
+} DVOTinyValueMode;
+
+// XXX DROP? // a reduced-subset structure for relastro
+// XXX DROP? typedef struct {
+// XXX DROP?   double         R;
+// XXX DROP?   double         D;
+// XXX DROP?   unsigned short Nmeasure;
+// XXX DROP?   int            measureOffset;
+// XXX DROP?   uint32_t       flags;
+// XXX DROP?   int            catID;
+// XXX DROP? } AverageTinyAstro;
+
 // a reduced-subset structure for relphot
 typedef struct {
@@ -225,7 +309,8 @@
   int            measureOffset;
   uint32_t       flags;
+  int            catID;
 } AverageTiny;
 
-// a reduced-subset structure for relphot
+// a reduced-subset structure for relphot & relastro
 typedef struct {
   float          dR;
@@ -242,5 +327,10 @@
   unsigned int   imageID;
   unsigned int   dbFlags;
+  unsigned int   photFlags;
+  int            catID; // unsigned int?
   unsigned short photcode;
+  short          dXccd;
+  short          dYccd;
+  short          dRsys;
 } MeasureTiny;
 
@@ -366,4 +456,9 @@
 float PhotdM (PhotCode *code, Average *average, SecFilt *secfilt);
 
+float PhotMstdev (PhotCode *code, Average *average, SecFilt *secfilt);
+float PhotM20 (PhotCode *code, Average *average, SecFilt *secfilt);
+float PhotM80 (PhotCode *code, Average *average, SecFilt *secfilt);
+float PhotUCdist (PhotCode *code, Average *average, SecFilt *secfilt);
+
 float PhotColorForCode (Average *average, SecFilt *secfilt, Measure *measure, PhotCode *code);
 int PhotColor (Average *average, SecFilt *secfilt, Measure *measure, int c1, int c2, double *color);
@@ -383,9 +478,9 @@
 int PhotColorTiny (AverageTiny *average, SecFilt *secfilt, MeasureTiny *measure, int c1, int c2, double *color);
 
-
 PhotCodeData *GetPhotcodeTable (void);
 void SetPhotcodeTable (PhotCodeData *);
 
 int *GetSecFiltMap(PhotCodeData *ouput, PhotCodeData* input);
+PhotCode **ParsePhotcodeList (char *rawlist, int *nphotcodes, int needAve);
 
 int LoadPhotcodes (char *catdir_file, char *master_file, int readwrite);
@@ -429,4 +524,7 @@
 void dvo_catalog_test (Catalog *catalog, int halt);
 
+int dvo_catalog_backup (Catalog *catalog, int primary);
+int dvo_catalog_unlink_backup (Catalog *catalog, int primary);
+
 /* catmode-specific APIs */
 int dvo_catalog_load_raw (Catalog *catalog, int VERBOSE);
@@ -450,4 +548,6 @@
 int WriteRawSecFilt (FILE *f, SecFilt *secfilt, off_t Nsecfilt, char format);
 
+DVOTableFormat FtableGetFormat (FTable *ftable);
+
 Average *FtableToAverage (FTable *ftable, off_t *Naverage, char *format, SecFilt **primary);
 Measure *FtableToMeasure (FTable *ftable, off_t *Nmeasure, char *format);
@@ -470,4 +570,5 @@
 # include "ps1_v1_defs.h"
 # include "ps1_v2_defs.h"
+# include "ps1_v3_defs.h"
 # include "ps1_ref_defs.h"
 
@@ -484,7 +585,14 @@
 void dvo_image_create (FITS_DB *db, double ZeroPoint);
 
+/* flatcorr APIs */
+FlatCorrectionTable *FlatCorrectionLoad (char *filename, int VERBOSE);
+int FlatCorrectionInternal(FlatCorrectionTable *flatcorrTable);
+int FlatCorrectionSave (FlatCorrectionTable *flatcorrTable, char *filename);
+float FlatCorrectionOffset (FlatCorrectionTable *flatcorr, int ID, int X, int Y);
+
 /* skyregion APIs */
 int        SkyTableSave        	   PROTO((SkyTable *table, char *filename));
 SkyTable  *SkyTableLoad        	   PROTO((char *filename, int VERBOSE));
+char      *SkyTableFilename        PROTO((char *catdir));
 SkyTable  *SkyTableFromGSC     	   PROTO((char *filename, int depth, int VERBOSE));
 SkyTable  *SkyTableLoadOptimal 	   PROTO((char *catdir, char *SKYFILE, char *GSCFILE, int readwrite, int depth, int VERBOSE));
@@ -528,3 +636,16 @@
 #endif
 
-# endif
+// functions for parallel DVO
+HostTable    *HostTableLoad (char *catdir, char *rootname);
+int HostTableWaitJobs (HostTable *table, char *file, int lineno);
+int HostTableWaitJobsGetIO (HostTable *table, char *file, int lineno, int VERBOSE);
+int HostTableTestHost (SkyRegion *region, int hostID);
+
+// functions to support tiny versions of Average and Measure
+void CopyAverageToTiny (AverageTiny *averageT, Average *average);
+void CopyMeasureToTiny (MeasureTiny *measureT, Measure *measure);
+int populate_tiny_values (Catalog *catalog, DVOTinyValueMode mode);
+int free_tiny_values (Catalog *catalog);
+
+# endif // DVO_H
+
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/include/dvodb.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/include/dvodb.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/include/dvodb.h	(revision 34041)
@@ -1,4 +1,6 @@
 # ifndef DVODB_H
 # define DVODB_H
+
+# define MEASURE_HAS_XCCD 1
 
 typedef enum {
@@ -30,4 +32,5 @@
       MAG_REF, 
       MAG_ERR, 
+      MAG_STDEV, 
       MAG_AVE_ERR, 
       MAG_PHOT_FLAGS, 
@@ -35,4 +38,7 @@
       MAG_NCODE,
       MAG_NPHOT,
+      MAG_20, 
+      MAG_80, 
+      MAG_UC_DIST, 
 };
 
@@ -74,4 +80,5 @@
       MEAS_NPOS, 
       MEAS_OBJ_FLAGS, 
+      MEAS_SECFILT_FLAGS, 
       MEAS_MAG, 
       MEAS_MINST, 
@@ -82,8 +89,11 @@
       MEAS_EXPTIME, 
       MEAS_AIRMASS, 
+      MEAS_MEAN_AIRMASS, 
       MEAS_ALT, 
       MEAS_AZ, 
       MEAS_PHOTCODE, 
       MEAS_PHOTCODE_EQUIV, 
+      MEAS_PHOTCODE_KLAM, 
+      MEAS_PHOTCODE_C, 
       MEAS_TIME, 
       MEAS_FWHM, 
@@ -120,4 +130,6 @@
       MEAS_EXT_NSIGMA, 
       MEAS_EXTERN_ID,
+      MEAS_MCAL_OFFSET,
+      MEAS_FLAT,
 };
 
@@ -319,4 +331,5 @@
 
 int dbExtractAveragesInitTransform (CoordTransformSystem target);
+int dbExtractAveragesInitAve (void);
 int dbExtractAveragesInit (void);
 
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/include/ps1_v3_defs.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/include/ps1_v3_defs.h	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/include/ps1_v3_defs.h	(revision 34041)
@@ -0,0 +1,11 @@
+Image 		       	*Image_PS1_V3_ToInternal (Image_PS1_V3 *in, off_t Nvalues);
+Image_PS1_V3    	*ImageInternalTo_PS1_V3 (Image *in, off_t Nvalues);
+Average 	       	*Average_PS1_V3_ToInternal (Average_PS1_V3 *in, off_t Nvalues, SecFilt **primary);
+Average_PS1_V3          *AverageInternalTo_PS1_V3 (Average *in, off_t Nvalues, SecFilt *primary);
+Measure 	       	*Measure_PS1_V3_ToInternal (Measure_PS1_V3 *in, off_t Nvalues);
+Measure_PS1_V3          *MeasureInternalTo_PS1_V3 (Measure *in, off_t Nvalues);
+SecFilt 	       	*SecFilt_PS1_V3_ToInternal (SecFilt_PS1_V3 *in, off_t Nvalues);
+SecFilt_PS1_V3          *SecFiltInternalTo_PS1_V3 (SecFilt *in, off_t Nvalues);
+
+PhotCode                *PhotCode_PS1_V3_To_Internal (PhotCode_PS1_V3 *in, off_t Nvalues);
+PhotCode_PS1_V3         *PhotCode_Internal_To_PS1_V3 (PhotCode *in, off_t Nvalues);
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/HostTable.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/HostTable.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/HostTable.c	(revision 34041)
@@ -0,0 +1,391 @@
+# include "dvo.h"
+# include <sys/types.h>
+# include <sys/wait.h>
+
+void InitHosts (HostInfo *hosts, int Nhosts, int NHOSTS) {
+
+  int i;
+  for (i = Nhosts; i < NHOSTS; i++) {
+    hosts[i].hostname = NULL;
+    hosts[i].pathname = NULL;
+    hosts[i].results = NULL;
+    hosts[i].stdio[HOST_STDIN] = -1;
+    hosts[i].stdio[HOST_STDOUT] = -1;
+    hosts[i].stdio[HOST_STDERR] = -1;
+    hosts[i].pid = 0;
+  }
+  return;
+}
+
+void FreeHosts (HostInfo *hosts, int Nhosts) {
+
+  int i;
+  for (i = 0; i < Nhosts; i++) {
+    free (hosts[i].hostname);
+    free (hosts[i].pathname);
+  }
+  free (hosts);
+  return;
+}
+
+void FreeTable (HostTable *table) {
+
+  if (!table) return;
+  if (table->hosts) {
+    FreeHosts (table->hosts, table->Nhosts);
+  }
+  if (table->index) free (table->index);
+  free (table);
+  return;
+}
+
+HostTable *HostTableLoad (char *catdir, char *rootname) {
+
+  int i, Nline;
+
+  char *filename = NULL;
+
+  ALLOCATE (filename, char, strlen(catdir) + strlen(rootname) + 2); // one slash and one EOL
+  sprintf (filename, "%s/%s", catdir, rootname);
+
+  FILE *f = fopen (filename, "r");
+  if (!f) {
+    fprintf (stderr, "failed to open host table %s\n", filename);
+    free (filename);
+    return NULL;
+  }
+
+  // simple format: ID hostname pathname
+  
+  int NHOSTS = 16;
+  int Nhosts = 0;
+  HostInfo *hosts = NULL;
+  ALLOCATE (hosts, HostInfo, NHOSTS);
+  InitHosts (hosts, Nhosts, NHOSTS);
+
+  int maxID = 0;
+
+  for (Nline = 0; TRUE; Nline ++) {
+    int ID;
+    char tmphost[1024];
+    char tmppath[1024];
+    char line[1024];
+
+    // XXXX use this for safety: int status = scan_line_maxlen (f, line, 1024);
+    int status = scan_line (f, line);
+    if (status == EOF) break;
+
+    // find first non-whitespace char & skip commented lines
+    for (i = 0; OHANA_WHITESPACE (line[i]); i++);
+    if (line[i] == '#') continue;
+    if (line[i] == 0) continue;
+
+    status = sscanf (line, "%d %1023s %1023s", &ID, tmphost, tmppath);
+    if (status != 3) {
+      fprintf (stderr, "error reading line %d of host table %s\n", Nline, filename);
+      FreeHosts (hosts, Nhosts);
+      free (filename);
+      return NULL;
+    }
+
+    // check the validity of ID (0 < ID < MAX_SHORT)
+
+    if (ID < 1) {
+      fprintf (stderr, "invalid host ID %d\n", ID);
+      exit (1);
+    }
+    if (ID > 255) {
+      fprintf (stderr, "invalid host ID %d\n", ID);
+      exit (1);
+    }
+    maxID = MAX(maxID, ID);
+
+    hosts[Nhosts].hostID = ID;
+    hosts[Nhosts].hostname = strcreate(tmphost);
+    hosts[Nhosts].pathname = strcreate(tmppath);
+    
+    InitIOBuffer (&hosts[Nhosts].stdout, 1000);
+    InitIOBuffer (&hosts[Nhosts].stderr, 1000);
+
+    Nhosts ++;
+    if (Nhosts >= NHOSTS) {
+      NHOSTS += 16;
+      REALLOCATE (hosts, HostInfo, NHOSTS);
+      InitHosts (hosts, Nhosts, NHOSTS);
+    }
+  }    
+
+  HostTable *table = NULL;
+  ALLOCATE (table, HostTable, 1);
+  table->Nhosts = Nhosts;
+  table->hosts = hosts;
+
+  ALLOCATE (table->index, short, maxID + 1);
+  for (i = 0; i <= maxID; i++) table->index[i] = -1;
+
+  for (i = 0; i < table->Nhosts; i++) {
+    if (table->index[table->hosts[i].hostID] != -1) {
+      fprintf (stderr, "error: duplicate hostID %d\n", table->hosts[i].hostID);
+      exit (1);
+    }
+    table->index[table->hosts[i].hostID] = i;
+  }
+
+  free (filename);
+  return table;
+}
+
+// wait for all children to complete, report output to stdout
+int HostTableWaitJobs (HostTable *table, char *file, int lineno) {
+
+  int i;
+
+  // we have launched table->Nhosts jobs; wait for all of them to complete...
+  // if one (N) failed to launch, we will get an ECHILD error from the last (N) calls
+  int done = FALSE;
+  for (i = 0; !done  && (i < table->Nhosts); i++) {
+    int status = 0;
+
+    // XXX we'll need to pass in WNOHANG and keep retrying if we want to have a timeout...
+    int pid = waitpid (-1, &status, 0);
+    if (!pid) {
+      // this should only occur if we called waitpid with the WNOHANG option
+      fprintf (stderr, "programming error (1)? %s %d", file, lineno);
+      exit (2);
+    }
+    if (pid == -1) {
+      switch (errno) {
+	case ECHILD:
+	  done = TRUE;
+	  break;
+	default:
+	  fprintf (stderr, "programming error (2)? %s %d", file, lineno);
+	  exit (2);
+      }
+    }
+
+    // when the host has finished, close the open sockets
+
+    // find the host which has finished
+    int Nout, j;
+    int found = FALSE;
+    for (j = 0; j < table->Nhosts; j++) {
+      if (table->hosts[j].pid != pid) continue;
+      found = TRUE;
+      // check on the status of this and report any output?
+      fprintf (stderr, "job finished for %s (%d)\n", table->hosts[j].hostname, pid);
+      // read the stderr and stdout
+      IOBuffer buffer;
+      InitIOBuffer (&buffer, 100);
+      EmptyIOBuffer (&buffer, 100, table->hosts[j].stdio[HOST_STDOUT]);
+      fprintf (stderr, "--- stdout from %s ---\n", table->hosts[j].hostname);
+      Nout = write (STDOUT_FILENO, buffer.buffer, buffer.Nbuffer);
+      if (Nout != buffer.Nbuffer) { fprintf (stderr, "(error writing log?)\n"); }
+      fprintf (stderr, "\n");
+	  
+      InitIOBuffer (&buffer, 100);
+      EmptyIOBuffer (&buffer, 100, table->hosts[j].stdio[HOST_STDERR]);
+      fprintf (stderr, "--- stderr from %s ---\n", table->hosts[j].hostname);
+      Nout = write (STDOUT_FILENO, buffer.buffer, buffer.Nbuffer);
+      if (Nout != buffer.Nbuffer) { fprintf (stderr, "(error writing log?)\n"); }
+      fprintf (stderr, "\n");
+      if (WIFEXITED(status)) {
+	fprintf (stderr, "normal completion, exit status is %d\n", WEXITSTATUS(status));
+	table->hosts[j].status = WEXITSTATUS(status);
+	if (table->hosts[j].status) {
+	  fprintf (stderr, "job failed on %s\n", table->hosts[j].hostname);
+	  continue;
+	}
+      } else {
+	table->hosts[j].status = -1;
+	fprintf (stderr, "job exited abnormally on %s\n", table->hosts[j].hostname);
+	continue;
+      }
+    }
+    if (!found) {
+      fprintf (stderr, "Programming error: failed to matched finished job to known host!\n");
+      exit (2);
+    }
+  }
+  return TRUE;
+}
+
+// wait for all children to complete, report output to stdout
+int HostTableWaitJobsGetIO (HostTable *table, char *file, int lineno, int VERBOSE) {
+
+  // we have launched table->Nhosts jobs; wait for all of them to complete...
+  // if one (N) failed to launch, we will get an ECHILD error from the last (N) calls
+
+  // we need to read any data waiting on stderr or stdout from these jobs, or the overfull
+  // buffers can cause a problem.  we alternate between 'select' and 'waitpid' calls with
+  // timeouts for both
+
+  // add all hosts' sockets to the fd_sets
+  fd_set rdSet, wtSet;
+  FD_ZERO (&rdSet);
+  FD_ZERO (&wtSet);
+
+  // XXX can I set the fd_sets once, since I am not actually closing the fd's?
+
+  int globalStatus = TRUE;
+
+  int i;
+  int Nmax = 0;
+  for (i = 0; i < table->Nhosts; i++) {
+    if (!table->hosts[i].pid) continue; // any unconnected hosts should be skipped
+    FD_SET (table->hosts[i].stdio[HOST_STDIN], &wtSet);
+    Nmax = MAX (Nmax, table->hosts[i].stdio[HOST_STDIN]);
+    FD_SET (table->hosts[i].stdio[HOST_STDOUT], &rdSet);
+    Nmax = MAX (Nmax, table->hosts[i].stdio[HOST_STDOUT]);
+    FD_SET (table->hosts[i].stdio[HOST_STDERR], &rdSet);
+    Nmax = MAX (Nmax, table->hosts[i].stdio[HOST_STDERR]);
+  }    
+  Nmax ++;
+
+  int Nfound = 0;
+
+  // this loop has 2 chunks: (a) check for I/O + (b) check for jobs done
+  while (1) {
+
+    // Wait up to 0.5 second for host to provide I/O
+    // timeout gets mucked: need to reset before each select
+    struct timeval timeout;
+    timeout.tv_sec = 10;
+    timeout.tv_usec = 500000;
+
+    int status = select (Nmax, NULL, &wtSet, NULL, &timeout);
+    if (status == -1) {
+      perror("select()");
+      exit (2);
+    }
+
+    // we have some sockets to check, check sockets for all hosts
+    for (i = 0; (status > 0) && (i < table->Nhosts); i++) {
+      if (FALSE && FD_ISSET (table->hosts[i].stdio[HOST_STDIN], &wtSet)) {
+	// this host is waiting for input : this is an error, so exit
+	fprintf (stderr, "host %s is waiting for input\n", table->hosts[i].hostname);
+	abort();
+      }
+      
+      if (FD_ISSET (table->hosts[i].stdio[HOST_STDOUT], &rdSet)) {
+	// this host has waiting output : read to buffer, and dump if necessary
+	ReadtoIOBuffer (&table->hosts[i].stdout, table->hosts[i].stdio[HOST_STDOUT]);
+	// if (table->hosts[i].stdout.Nbuffer > 0x10000) {
+	if (table->hosts[i].stdout.Nbuffer > 0x1000) {
+	  int printHead = VERBOSE || (table->hosts[i].stdout.Nbuffer > 0);
+	  if (printHead) fprintf (stdout, "--- stdout from %s --- (%d bytes, v1)\n", table->hosts[i].hostname, table->hosts[i].stdout.Nbuffer);
+	  int Nout = write (STDOUT_FILENO, table->hosts[i].stdout.buffer, table->hosts[i].stdout.Nbuffer);
+	  if (Nout != table->hosts[i].stdout.Nbuffer) { fprintf (stderr, "(error writing log?)\n"); }
+	  FlushIOBuffer (&table->hosts[i].stdout);
+	  if (printHead) fprintf (stdout, "\n");
+	}
+      }
+
+      if (FD_ISSET (table->hosts[i].stdio[HOST_STDERR], &rdSet)) {
+	// this host has waiting output : read to buffer, and dump if necessary
+	ReadtoIOBuffer (&table->hosts[i].stderr, table->hosts[i].stdio[HOST_STDERR]);
+	// if (table->hosts[i].stderr.Nbuffer > 0x10000) {
+	if (table->hosts[i].stderr.Nbuffer > 0x1000) {
+	  int printHead = VERBOSE || (table->hosts[i].stderr.Nbuffer > 0);
+	  if (printHead) fprintf (stdout, "--- stderr from %s --- (%d bytes, v1)\n", table->hosts[i].hostname, table->hosts[i].stderr.Nbuffer);
+	  int Nout = write (STDOUT_FILENO, table->hosts[i].stderr.buffer, table->hosts[i].stderr.Nbuffer);
+	  if (Nout != table->hosts[i].stderr.Nbuffer) { fprintf (stderr, "(error writing log?)\n"); }
+	  FlushIOBuffer (&table->hosts[i].stderr);
+	  if (printHead) fprintf (stdout, "\n");
+	}
+      }
+    }
+
+    // now check if any children have finished...
+    while (TRUE) {
+      int status = 0;
+      int pid = waitpid (-1, &status, WNOHANG);
+      if (!pid) {
+	// fprintf (stderr, "no hosts to harvest\n");
+	usleep (500000);
+	break; // no outstanding jobs have finished 
+      }
+      if ((pid == -1) && (errno == ECHILD)) goto escape; // no more jobs on which to wait
+      if ((pid == -1) && (errno != ECHILD)) {
+	fprintf (stderr, "programming error (2)? %s %d", file, lineno);
+	exit (2);
+      }
+
+      // find the host which has finished
+      int found = FALSE;
+      for (i = 0; (i < table->Nhosts) && !found; i++) {
+	if (table->hosts[i].pid != pid) continue;
+	found = TRUE;
+
+	HostInfo *host = &table->hosts[i];
+
+	// check on the status of this and report any output?
+	if (VERBOSE) fprintf (stdout, "job finished for %s (%d)\n", host->hostname, pid);
+
+	// read stdout
+	int printHead;
+	printHead = VERBOSE || (host->stdout.Nbuffer > 0);
+	EmptyIOBuffer (&host->stdout, 100, host->stdio[HOST_STDOUT]);
+	if (printHead) fprintf (stdout, "--- stdout from %s --- (%d bytes, v2)\n", host->hostname, host->stdout.Nbuffer);
+	int Nout = write (STDOUT_FILENO, host->stdout.buffer, host->stdout.Nbuffer);
+	if (Nout != host->stdout.Nbuffer) { fprintf (stderr, "(error writing log?)\n"); }
+	FlushIOBuffer (&host->stdout);
+	if (printHead) fprintf (stdout, "\n");
+	    
+	// read stderr
+	printHead = VERBOSE || (host->stderr.Nbuffer > 0);
+	EmptyIOBuffer (&host->stderr, 100, host->stdio[HOST_STDERR]);
+	if (printHead) fprintf (stdout, "--- stderr from %s --- (%d bytes, v2)\n", host->hostname, host->stderr.Nbuffer);
+	Nout = write (STDOUT_FILENO, host->stderr.buffer, host->stderr.Nbuffer);
+	if (Nout != host->stderr.Nbuffer) { fprintf (stderr, "(error writing log?)\n"); }
+	FlushIOBuffer (&host->stderr);
+	if (printHead) fprintf (stdout, "\n");
+
+	if (WIFEXITED(status)) {
+	  if (VERBOSE) fprintf (stdout, "normal completion, exit status is %d\n", WEXITSTATUS(status));
+	  host->status = WEXITSTATUS(status);
+	  if (host->status) {
+	    fprintf (stdout, "job failed on %s\n", host->hostname);
+	    globalStatus = FALSE;
+	  }
+	} else {
+	  host->status = -1;
+	  fprintf (stdout, "job exited abnormally on %s\n", host->hostname);
+	  globalStatus = FALSE;
+	  continue;
+	}
+      }
+      if (!found) {
+	fprintf (stderr, "Programming error: failed to matched finished job to known host!\n");
+	exit (2);
+      }
+      Nfound ++;
+      if (Nfound == table->Nhosts) goto escape; // we've harvested all jobs
+    }
+  }
+
+escape:
+
+  // close all opened connections
+  for (i = 0; i < table->Nhosts; i++) {
+    if (!table->hosts[i].pid) continue; // any unconnected hosts should be skipped
+    close (table->hosts[i].stdio[HOST_STDIN]);
+    close (table->hosts[i].stdio[HOST_STDOUT]);
+    close (table->hosts[i].stdio[HOST_STDERR]);
+  }
+
+  return globalStatus;
+}
+
+int HostTableTestHost (SkyRegion *region, int hostID) {
+
+  // if hostID is not set, then we are not in a remote client 
+  if (!hostID) return TRUE;
+
+  if (region->hostFlags & DATA_USE_BCK) {
+    if (region->backupID == hostID) return TRUE;
+  } else {
+    if (region->hostID == hostID) return TRUE;
+  }
+  return FALSE;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/LoadImages.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/LoadImages.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/LoadImages.c	(revision 34041)
@@ -73,5 +73,5 @@
     cacheNimage = *Nimage;
     imageCache = image;
-    lastFilename = strdup(filename);
+    lastFilename = strcreate(filename);
     lastModified = getLastModified(filename);
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/LoadPhotcodesFITS.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/LoadPhotcodesFITS.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/LoadPhotcodesFITS.c	(revision 34041)
@@ -41,83 +41,26 @@
   gfits_scan (&db.theader, "EXTNAME", "%s", 1, extname);
 
-  if (!strcmp (extname, "DVO_PHOTCODE")) {
-    PhotCode_Elixir *photcode_elixir = gfits_table_get_PhotCode_Elixir (&db.ftable, &Ncode, &db.swapped);
-    if (!photcode_elixir) {
-      fprintf (stderr, "ERROR: failed to read photcodes\n");
-      exit (2);
-    }
-    photcode = PhotCode_Elixir_To_Internal (photcode_elixir, Ncode);
-    free (photcode_elixir);
-  } 
+# define CONVERT_FORMAT(NAME, FORMAT)					\
+  if (!strcmp (extname, NAME)) {					\
+    PhotCode_##FORMAT *photcode_input = gfits_table_get_PhotCode_##FORMAT (&db.ftable, &Ncode, &db.swapped); \
+    if (!photcode_input) {							\
+      fprintf (stderr, "ERROR: failed to read photcodes in LoadPhotcodesFITS.c\n");		\
+      fprintf (stderr, "file is either corrupted or this is a programming error\n");		\
+      fprintf (stderr, "exiting to avoid damaging dvo db\n");		\
+      exit (2);								\
+    }									\
+    photcode = PhotCode_##FORMAT##_To_Internal (photcode_input, Ncode); \
+    free (photcode_input);						\
+  }
 
-  if (!strcmp (extname, "DVO_PHOTCODE_ELIXIR")) {
-    PhotCode_Elixir *photcode_elixir = gfits_table_get_PhotCode_Elixir (&db.ftable, &Ncode, &db.swapped);
-    if (!photcode_elixir) {
-      fprintf (stderr, "ERROR: failed to read photcodes\n");
-      exit (2);
-    }
-    photcode = PhotCode_Elixir_To_Internal (photcode_elixir, Ncode);
-    free (photcode_elixir);
-  } 
-
-  if (!strcmp (extname, "DVO_PHOTCODE_PS1_DEV_1")) {
-    PhotCode_PS1_DEV_1 *photcode_ps1_dev_1 = gfits_table_get_PhotCode_PS1_DEV_1 (&db.ftable, &Ncode, &db.swapped);
-    if (!photcode_ps1_dev_1) {
-      fprintf (stderr, "ERROR: failed to read photcodes\n");
-      exit (2);
-    }
-    photcode = PhotCode_PS1_DEV_1_To_Internal (photcode_ps1_dev_1, Ncode);
-    free (photcode_ps1_dev_1);
-  } 
-
-  if (!strcmp (extname, "DVO_PHOTCODE_PS1_DEV_2")) {
-    PhotCode_PS1_DEV_2 *photcode_ps1_dev_2 = gfits_table_get_PhotCode_PS1_DEV_2 (&db.ftable, &Ncode, &db.swapped);
-    if (!photcode_ps1_dev_2) {
-      fprintf (stderr, "ERROR: failed to read photcodes\n");
-      exit (2);
-    }
-    photcode = PhotCode_PS1_DEV_2_To_Internal (photcode_ps1_dev_2, Ncode);
-    free (photcode_ps1_dev_2);
-  } 
-
-  if (!strcmp (extname, "DVO_PHOTCODE_PS1_DEV_3")) {
-    PhotCode_PS1_DEV_3 *photcode_ps1_dev_3 = gfits_table_get_PhotCode_PS1_DEV_3 (&db.ftable, &Ncode, &db.swapped);
-    if (!photcode_ps1_dev_3) {
-      fprintf (stderr, "ERROR: failed to read photcodes\n");
-      exit (2);
-    }
-    photcode = PhotCode_PS1_DEV_3_To_Internal (photcode_ps1_dev_3, Ncode);
-    free (photcode_ps1_dev_3);
-  } 
-
-  if (!strcmp (extname, "DVO_PHOTCODE_PS1_V1")) {
-    PhotCode_PS1_V1 *photcode_ps1_v1 = gfits_table_get_PhotCode_PS1_V1 (&db.ftable, &Ncode, &db.swapped);
-    if (!photcode_ps1_v1) {
-      fprintf (stderr, "ERROR: failed to read photcodes\n");
-      exit (2);
-    }
-    photcode = PhotCode_PS1_V1_To_Internal (photcode_ps1_v1, Ncode);
-    free (photcode_ps1_v1);
-  } 
-
-  if (!strcmp (extname, "DVO_PHOTCODE_PS1_V2")) {
-    PhotCode_PS1_V2 *photcode_ps1_v2 = gfits_table_get_PhotCode_PS1_V2 (&db.ftable, &Ncode, &db.swapped);
-    if (!photcode_ps1_v2) {
-      fprintf (stderr, "ERROR: failed to read photcodes\n");
-      exit (2);
-    }
-    photcode = PhotCode_PS1_V2_To_Internal (photcode_ps1_v2, Ncode);
-    free (photcode_ps1_v2);
-  } 
-
-  if (!strcmp (extname, "DVO_PHOTCODE_PS1_REF")) {
-    PhotCode_PS1_REF *photcode_ps1_ref = gfits_table_get_PhotCode_PS1_REF (&db.ftable, &Ncode, &db.swapped);
-    if (!photcode_ps1_ref) {
-      fprintf (stderr, "ERROR: failed to read photcodes\n");
-      exit (2);
-    }
-    photcode = PhotCode_PS1_REF_To_Internal (photcode_ps1_ref, Ncode);
-    free (photcode_ps1_ref);
-  } 
+  CONVERT_FORMAT("DVO_PHOTCODE",           Elixir);
+  CONVERT_FORMAT("DVO_PHOTCODE_ELIXIR",    Elixir);
+  CONVERT_FORMAT("DVO_PHOTCODE_PS1_DEV_1", PS1_DEV_1);
+  CONVERT_FORMAT("DVO_PHOTCODE_PS1_DEV_2", PS1_DEV_2);
+  CONVERT_FORMAT("DVO_PHOTCODE_PS1_DEV_3", PS1_DEV_3);
+  CONVERT_FORMAT("DVO_PHOTCODE_PS1_REF",   PS1_REF);
+  CONVERT_FORMAT("DVO_PHOTCODE_PS1_V1",    PS1_V1);
+  CONVERT_FORMAT("DVO_PHOTCODE_PS1_V2",    PS1_V2);
+  CONVERT_FORMAT("DVO_PHOTCODE_PS1_V3",    PS1_V3);
 
   table = GetPhotcodeTable ();
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/SavePhotcodesFITS.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/SavePhotcodesFITS.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/SavePhotcodesFITS.c	(revision 34041)
@@ -29,9 +29,9 @@
   // for the moment, we simply support the latest photcode format for output
   // XXX update this as needed as new formats are defined
-  PhotCode_PS1_V2 *photcode_output = PhotCode_Internal_To_PS1_V2 (table[0].code, table[0].Ncode);
+  PhotCode_PS1_V3 *photcode_output = PhotCode_Internal_To_PS1_V3 (table[0].code, table[0].Ncode);
 
   /* convert FITS format data to internal format (byteswaps & EXTNAME) */
   if (!gfits_db_create (&db)) return (FALSE);
-  if (!gfits_table_set_PhotCode_PS1_V2 (&db.ftable, photcode_output, table[0].Ncode)) return (FALSE);
+  if (!gfits_table_set_PhotCode_PS1_V3 (&db.ftable, photcode_output, table[0].Ncode)) return (FALSE);
   if (!gfits_db_save (&db)) return (FALSE);
   if (!gfits_db_close (&db)) return (FALSE);
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dbExtractAverages.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dbExtractAverages.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dbExtractAverages.c	(revision 34041)
@@ -40,4 +40,8 @@
 int dbExtractAveragesInit () {
   GetTimeFormat (&TimeReference, &TimeFormat);
+  return (TRUE);
+}
+
+int dbExtractAveragesInitAve () {
   haveGalactic = FALSE;
   haveEcliptic = FALSE;
@@ -200,4 +204,7 @@
 	  }
 	  break;
+	case MAG_STDEV:
+	  value.Flt = PhotMstdev (field->photcode, average, secfilt);
+	  break;
 	case MAG_PHOT_FLAGS:
 	  if ((field->photcode->type == PHOT_REF) || (field->photcode->type == PHOT_DEP)) {
@@ -208,5 +215,7 @@
 	    }
 	  } else {
-	    value.Int = 0;
+	    Nsec = GetPhotcodeNsec (field->photcode->code);
+	    if (Nsec == -1) break;
+	    value.Int = secfilt[Nsec].flags;
 	  }
 	  break;
@@ -224,4 +233,13 @@
 	  break;
 
+	case MAG_20:
+	  value.Flt = PhotM20 (field->photcode, average, secfilt);
+	  break;
+	case MAG_80:
+	  value.Flt = PhotM80 (field->photcode, average, secfilt);
+	  break;
+	case MAG_UC_DIST:
+	  value.Flt = PhotUCdist (field->photcode, average, secfilt);
+	  break;
       }
       break;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dbExtractMeasures.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dbExtractMeasures.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dbExtractMeasures.c	(revision 34041)
@@ -277,4 +277,11 @@
       value.Int = average[0].flags;
       break;
+    case MEAS_SECFILT_FLAGS: /* OK */
+      equiv = GetPhotcodeEquivbyCode (measure[0].photcode);
+      Nsec = GetPhotcodeNsec (equiv->code);
+      if (Nsec == -1) break;
+      value.Int = secfilt[Nsec].flags;
+      break;
+
     // note that these represent the ra displacement relative to the average, not 
     // the error.
@@ -302,4 +309,11 @@
       value.Flt = measure[0].airmass;
       break;
+    case MEAS_MEAN_AIRMASS: /* OK */
+      {
+	Image *image = MatchImageDVO (measure[0].t, measure[0].photcode, measure[0].imageID);
+	if (image == NULL) break;
+	value.Flt = image[0].secz;
+	break;
+      }
     case MEAS_AZ: /* OK */
       value.Flt = measure[0].az;
@@ -317,4 +331,18 @@
       value.Int = measure[0].photcode;
       break;
+    case MEAS_PHOTCODE_KLAM: /* OK */
+      { 
+	PhotCode *code = GetPhotcodebyCode (measure[0].photcode);
+	if (!code) break;
+	value.Flt = code->K;
+	break;
+      }
+    case MEAS_PHOTCODE_C: /* OK */
+      { 
+	PhotCode *code = GetPhotcodebyCode (measure[0].photcode);
+	if (!code) break;
+	value.Flt = code->C;
+	break;
+      }
     case MEAS_TIME: /* OK */
       value.Flt = TimeValue (measure[0].t, TimeReference, TimeFormat);
@@ -351,9 +379,10 @@
       break;
     case MEAS_XCCD: /* OK */
-/* I need to perform this conversion for ELIXIR and LONEOS formats on load */      
-# if 1
+# if MEASURE_HAS_XCCD
       value.Flt = measure[0].Xccd;
 # else
       { 
+	// I'm keeping this code because it gives a way of handing dvo dbs that don't have
+	// measure.xccd if we need it
 	Image *image;
 	ra  = average[0].R - measure[0].dR / 3600.0;
@@ -367,6 +396,5 @@
       break;
     case MEAS_YCCD: /* OK */
-/* I need to perform this conversion for ELIXIR and LONEOS formats on load */      
-# if 1
+# if MEASURE_HAS_XCCD
       value.Flt = measure[0].Yccd;
 # else
@@ -456,4 +484,18 @@
       break;
 
+    case MEAS_MCAL_OFFSET: /* OK */
+      value.Flt = measure[0].Mcal;
+      break;
+
+    case MEAS_FLAT: /* OK */
+      // flat = measure.Mcal - image.Mcal
+      { 
+	Image *image;
+	image = MatchImageDVO (measure[0].t, measure[0].photcode, measure[0].imageID);
+	if (image == NULL) break;
+	value.Flt = measure[0].Mcal - image[0].Mcal;
+      }
+      break;
+
       // add the star/galaxy sep -- 
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dbFields.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dbFields.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dbFields.c	(revision 34041)
@@ -42,7 +42,12 @@
   if (!strcasecmp (string, "aveerr"))    return (MAG_AVE_ERR);
   if (!strcasecmp (string, "photflags")) return (MAG_PHOT_FLAGS);
+  if (!strcasecmp (string, "flags"))     return (MAG_PHOT_FLAGS);
   if (!strcasecmp (string, "chisq"))     return (MAG_CHISQ);
   if (!strcasecmp (string, "ncode"))     return (MAG_NCODE);
   if (!strcasecmp (string, "nphot"))     return (MAG_NPHOT);
+  if (!strcasecmp (string, "stdev"))     return (MAG_STDEV);
+  if (!strcasecmp (string, "20"))        return (MAG_20);
+  if (!strcasecmp (string, "80"))        return (MAG_80);
+  if (!strcasecmp (string, "ucdist"))    return (MAG_UC_DIST);
   return (MAG_NONE);
 }
@@ -169,4 +174,8 @@
   if (!strcasecmp (fieldName, "OBJFLAGS"))   	 ESCAPE (MEAS_OBJ_FLAGS,      MAG_NONE, OPIHI_INT);
   if (!strcasecmp (fieldName, "OBJ_FLAGS"))   	 ESCAPE (MEAS_OBJ_FLAGS,      MAG_NONE, OPIHI_INT);
+  if (!strcasecmp (fieldName, "OBJ_PHOT_FLAGS")) ESCAPE (MEAS_SECFILT_FLAGS,      MAG_NONE, OPIHI_INT);
+  if (!strcasecmp (fieldName, "SECFLAGS"))   	 ESCAPE (MEAS_SECFILT_FLAGS,      MAG_NONE, OPIHI_INT);
+  if (!strcasecmp (fieldName, "SEC_FLAGS"))   	 ESCAPE (MEAS_SECFILT_FLAGS,      MAG_NONE, OPIHI_INT);
+  if (!strcasecmp (fieldName, "SECFILT_FLAGS"))  ESCAPE (MEAS_SECFILT_FLAGS,      MAG_NONE, OPIHI_INT);
   if (!strcasecmp (fieldName, "DB_FLAGS"))   	 ESCAPE (MEAS_DB_FLAGS,       MAG_NONE, OPIHI_INT);
   if (!strcasecmp (fieldName, "PHOT_FLAGS")) 	 ESCAPE (MEAS_PHOT_FLAGS,     MAG_NONE, OPIHI_INT);
@@ -174,8 +183,11 @@
   if (!strcasecmp (fieldName, "PHOTFLAGS")) 	 ESCAPE (MEAS_PHOT_FLAGS,     MAG_NONE, OPIHI_INT);
   if (!strcasecmp (fieldName, "AIRMASS"))    	 ESCAPE (MEAS_AIRMASS,        MAG_NONE, OPIHI_FLT);
+  if (!strcasecmp (fieldName, "MEAN_AIRMASS"))   ESCAPE (MEAS_MEAN_AIRMASS,   MAG_NONE, OPIHI_FLT);
   if (!strcasecmp (fieldName, "ALT"))        	 ESCAPE (MEAS_ALT,            MAG_NONE, OPIHI_FLT);
   if (!strcasecmp (fieldName, "AZ"))         	 ESCAPE (MEAS_AZ,             MAG_NONE, OPIHI_FLT);
   if (!strcasecmp (fieldName, "EXPTIME"))    	 ESCAPE (MEAS_EXPTIME,        MAG_NONE, OPIHI_FLT);
   if (!strcasecmp (fieldName, "PHOTCODE"))   	 ESCAPE (MEAS_PHOTCODE,       MAG_NONE, OPIHI_INT);
+  if (!strcasecmp (fieldName, "PHOTCODE:KLAM"))  ESCAPE (MEAS_PHOTCODE_KLAM,  MAG_NONE, OPIHI_FLT);
+  if (!strcasecmp (fieldName, "PHOTCODE:C"))     ESCAPE (MEAS_PHOTCODE_C,     MAG_NONE, OPIHI_FLT);
   if (!strcasecmp (fieldName, "PHOTCODE:EQUIV")) ESCAPE (MEAS_PHOTCODE_EQUIV, MAG_NONE, OPIHI_INT);
   if (!strcasecmp (fieldName, "TIME"))       	 ESCAPE (MEAS_TIME,           MAG_NONE, OPIHI_FLT);
@@ -215,4 +227,6 @@
   if (!strcasecmp (fieldName, "SKY_ERR"))    	 ESCAPE (MEAS_dSKY,           MAG_NONE, OPIHI_FLT);
   if (!strcasecmp (fieldName, "externID"))    	 ESCAPE (MEAS_EXTERN_ID,      MAG_NONE, OPIHI_INT);
+  if (!strcasecmp (fieldName, "MCAL_OFFSET"))    ESCAPE (MEAS_MCAL_OFFSET,    MAG_NONE, OPIHI_FLT);
+  if (!strcasecmp (fieldName, "FLAT"))    	 ESCAPE (MEAS_FLAT,           MAG_NONE, OPIHI_FLT);
 
   // for words that don't parse, try a photcode
@@ -286,5 +300,5 @@
   if (!strcasecmp (fieldName, "dPAR"))      ESCAPE (AVE_PAR_ERR,   MAG_NONE, OPIHI_FLT);
   if (!strcasecmp (fieldName, "ChiSqPos"))  ESCAPE (AVE_CHISQ_POS, MAG_NONE, OPIHI_FLT);
-  if (!strcasecmp (fieldName, "ChiSqPM"))   ESCAPE (AVE_CHISQ_PM, MAG_NONE, OPIHI_FLT);
+  if (!strcasecmp (fieldName, "ChiSqPM"))   ESCAPE (AVE_CHISQ_PM,  MAG_NONE, OPIHI_FLT);
   if (!strcasecmp (fieldName, "ChiSqPar"))  ESCAPE (AVE_CHISQ_PAR, MAG_NONE, OPIHI_FLT);
   if (!strcasecmp (fieldName, "Tmean"))     ESCAPE (AVE_TMEAN,     MAG_NONE, OPIHI_FLT);
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog.c	(revision 34041)
@@ -54,4 +54,5 @@
   if (!strcasecmp (catformat, "PS1_V1"))          return (DVO_FORMAT_PS1_V1);
   if (!strcasecmp (catformat, "PS1_V2"))          return (DVO_FORMAT_PS1_V2);
+  if (!strcasecmp (catformat, "PS1_V3"))          return (DVO_FORMAT_PS1_V3);
   if (!strcasecmp (catformat, "PS1_REF"))         return (DVO_FORMAT_PS1_REF);
   return (DVO_FORMAT_UNDEF);
@@ -210,5 +211,5 @@
   
   if (!check_file_access (catalog[0].filename, BACKUP, READWRITE, VERBOSE)) {
-    if (VERBOSE) fprintf (stderr, "no permission to access %s\n", catalog[0].filename);
+    fprintf (stderr, "no permission to access %s\n", catalog[0].filename);
     return (FALSE);
   }
@@ -218,13 +219,13 @@
   switch (dvo_catalog_lock (catalog, catalog[0].lockmode)) {
   case DVO_CAT_OPEN_FAIL:
-    if (VERBOSE) fprintf (stderr, "can't lock file %s\n", catalog[0].filename);
+    fprintf (stderr, "can't lock file %s\n", catalog[0].filename);
     return (FALSE);
   case DVO_CAT_OPEN_OK:
     if (!dvo_catalog_load (catalog, VERBOSE)) {
-      if (VERBOSE) fprintf (stderr, "failure loading catalog\n");
+      fprintf (stderr, "failure loading catalog\n");
       return (FALSE);
     }
     if (!dvo_catalog_check (catalog, Nsecfilt, TRUE)) {
-      if (VERBOSE) fprintf (stderr, "can't reduce number of secondary filters\n");
+      fprintf (stderr, "can't reduce number of secondary filters\n");
       return (FALSE);
     }
@@ -250,4 +251,7 @@
 
   dvo_catalog_init (catalog, FALSE);
+
+  // reset the file pointer in case we've already read some data
+  fseeko (catalog[0].f, 0, SEEK_SET);
 
   // load the main catalog header, determine characteristics
@@ -495,2 +499,103 @@
 }
 
+// make a backup of this catalog (including the measure, secfilt, and missing tables as needed)
+int dvo_catalog_backup (Catalog *catalog, int primary) {
+
+  // skip empty cpt files
+  if (primary && !catalog->Naves_disk) {
+    return TRUE;
+  }
+
+  char tmpfilename[DVO_MAX_PATH];
+  int status = snprintf (tmpfilename, DVO_MAX_PATH, "%s~", catalog->filename);
+  if (status >= DVO_MAX_PATH) {
+    fprintf (stderr, "path name too long: %s\n", catalog->filename);
+    return FALSE;
+  }
+      
+  // unlock the catalog here (closes file as well) (also closes subcat files Measure, Secfilt, Missing)
+  if (primary) {
+    status = dvo_catalog_unlock (catalog);
+    if (!status) {
+      fprintf (stderr, "failed to unlock catalog %s\n", catalog->filename);
+      return FALSE;
+    }
+  }
+
+  status = rename (catalog->filename, tmpfilename);
+  if (status) {
+    fprintf (stderr, "failed to rename catalog %s\n", catalog->filename);
+    return FALSE;
+  }
+      
+  // keep the same lockmode
+  int lockmode = catalog->lockmode;
+
+  // lock the new catalog file here (re-opens file as well) (does NOT open/lock the subcat files)
+  status = dvo_catalog_lock (catalog, lockmode);
+  if (!status) {
+    fprintf (stderr, "failed to lock new catalog file %s\n", catalog->filename);
+    return FALSE;
+  }
+
+  if (catalog[0].catmode == DVO_MODE_SPLIT) {
+    if (catalog[0].measure_catalog != NULL) {
+      if (!dvo_catalog_backup (catalog[0].measure_catalog, FALSE)) {
+	return FALSE;
+      }
+    }
+    if (catalog[0].missing_catalog != NULL) {
+      if (!dvo_catalog_backup (catalog[0].missing_catalog, FALSE)) {
+	return FALSE;
+      }
+    }
+    if (catalog[0].secfilt_catalog != NULL) {
+      if (!dvo_catalog_backup (catalog[0].secfilt_catalog, FALSE)) {
+	return FALSE;
+      }
+    }
+  }
+  return TRUE;
+}
+
+// make a backup of this catalog (including the measure, secfilt, and missing tables as needed)
+int dvo_catalog_unlink_backup (Catalog *catalog, int primary) {
+
+  if (primary && !catalog->Naves_disk) {
+    // skip empty files (empty when read, but output may not be empty)
+    return TRUE;
+  }
+
+  char tmpfilename[DVO_MAX_PATH];
+  int status = snprintf (tmpfilename, DVO_MAX_PATH, "%s~", catalog->filename);
+  if (status >= DVO_MAX_PATH) {
+    fprintf (stderr, "path name too long: %s\n", catalog->filename);
+    return FALSE;
+  }
+      
+  status = unlink (tmpfilename);
+  if (status) {
+    fprintf (stderr, "failed to unlink catalog %s\n", catalog->filename);
+    return FALSE;
+  }
+      
+  if (catalog[0].catmode == DVO_MODE_SPLIT) {
+    if (catalog[0].measure_catalog != NULL) {
+      if (!dvo_catalog_unlink_backup (catalog[0].measure_catalog, FALSE)) {
+	return FALSE;
+      }
+    }
+    if (catalog[0].missing_catalog != NULL) {
+      if (!dvo_catalog_unlink_backup (catalog[0].missing_catalog, FALSE)) {
+	return FALSE;
+      }
+    }
+    if (catalog[0].secfilt_catalog != NULL) {
+      if (!dvo_catalog_unlink_backup (catalog[0].secfilt_catalog, FALSE)) {
+	return FALSE;
+      }
+    }
+  }
+  return TRUE;
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog_mef.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog_mef.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog_mef.c	(revision 34041)
@@ -3,24 +3,18 @@
 int dvo_catalog_load_mef (Catalog *catalog, int VERBOSE) {
   
+  off_t Nbytes;
+  off_t Naverage;
+  off_t Nmeasure;
+  off_t Nmissing;
+  off_t Nitems, Nexpect;
   int Nsecfilt;
-  off_t Nitems, Nbytes, Nexpect, Naverage, Nmeasure, Nmissing;
-  FILE *f;
 
   Header header;
-  Matrix matrix;
   FTable ftable;
-  SecFilt *primary;
-
-  f = catalog[0].f;
+
+  SecFilt *primary = NULL;
+
   ftable.header = &header;
 
-  /* move pointer past header -- must be already read (load_catalog) */
-  fseeko (f, catalog[0].header.datasize, SEEK_SET);
-
-  /* matrix should be empty */
-  if (!gfits_fread_matrix (f, &matrix, &catalog[0].header)) {
-    if (VERBOSE) fprintf (stderr, "can't read primary matrix");
-    return (FALSE);
-  }
   /* get the components from the header */
   if (!gfits_scan (&catalog[0].header, "NSTARS",   OFF_T_FMT, 1,  &Naverage)) return (FALSE);
@@ -57,14 +51,22 @@
   catalog[0].secfilt = NULL;
 
-  /* validate table mode */
+  /* validate table mode ?*/
+
+  /*** Average Table ***/
+
+  /* need to read the table header to determine format (whether or not we read averages) */
+  /* move pointer past PHU header -- must be already read (load_catalog) */
+  Nbytes = catalog[0].header.datasize + gfits_data_size (&catalog[0].header);
+  fseeko (catalog[0].f, Nbytes, SEEK_SET);
 
   /* read Average table header */
-  if (!gfits_fread_header (f, &header)) {
+  if (!gfits_fread_header (catalog[0].f, &header)) {
     if (VERBOSE) fprintf (stderr, "can't read table average header");
     return (FALSE);
   }
+
   /* read Average table data (or skip) */
   if (catalog[0].catflags & LOAD_AVES) {
-    if (!gfits_fread_ftable_data (f, &ftable, FALSE)) {
+    if (!gfits_fread_ftable_data (catalog[0].f, &ftable, FALSE)) {
       if (VERBOSE) fprintf (stderr, "can't read table average data");
       return (FALSE);
@@ -78,6 +80,7 @@
     catalog[0].Naves_off = 0;
   } else {
+    catalog[0].catformat = FtableGetFormat (&ftable);
     Nbytes = gfits_data_size (&header);
-    fseeko (f, Nbytes, SEEK_CUR);
+    fseeko (catalog[0].f, Nbytes, SEEK_CUR);
     ALLOCATE (catalog[0].average, Average, 1);
     catalog[0].Naverage = 0;
@@ -88,5 +91,5 @@
 
   /* read Measure table header */
-  if (!gfits_fread_header (f, &header)) {
+  if (!gfits_fread_header (catalog[0].f, &header)) {
     if (VERBOSE) fprintf (stderr, "can't read table measure header");
     return (FALSE);
@@ -94,5 +97,5 @@
   /* read Measure table data */
   if (catalog[0].catflags & LOAD_MEAS) {
-    if (!gfits_fread_ftable_data (f, &ftable, FALSE)) {
+    if (!gfits_fread_ftable_data (catalog[0].f, &ftable, FALSE)) {
       if (VERBOSE) fprintf (stderr, "can't read table measure data");
       return (FALSE);
@@ -106,5 +109,5 @@
   } else {
     Nbytes = gfits_data_size (&header);
-    fseeko (f, Nbytes, SEEK_CUR);
+    fseeko (catalog[0].f, Nbytes, SEEK_CUR);
     ALLOCATE (catalog[0].measure, Measure, 1);
     catalog[0].Nmeasure = 0;
@@ -113,5 +116,5 @@
 
   /* read Missing table header */
-  if (!gfits_fread_header (f, &header)) {
+  if (!gfits_fread_header (catalog[0].f, &header)) {
     if (VERBOSE) fprintf (stderr, "can't read table missing header");
     return (FALSE);
@@ -119,5 +122,5 @@
   /* read Missing table data */
   if (catalog[0].catflags & LOAD_MISS) {
-    if (!gfits_fread_ftable_data (f, &ftable, FALSE)) {
+    if (!gfits_fread_ftable_data (catalog[0].f, &ftable, FALSE)) {
       if (VERBOSE) fprintf (stderr, "can't read table missing data");
       return (FALSE);
@@ -136,5 +139,5 @@
   } else {
     Nbytes = gfits_data_size (&header);
-    fseeko (f, Nbytes, SEEK_CUR);
+    fseeko (catalog[0].f, Nbytes, SEEK_CUR);
     ALLOCATE (catalog[0].missing, Missing, 1);
     catalog[0].Nmissing = 0;
@@ -143,5 +146,5 @@
 
   /* read secfilt table header */
-  if (!gfits_fread_header (f, &header)) {
+  if (!gfits_fread_header (catalog[0].f, &header)) {
     if (VERBOSE) fprintf (stderr, "can't read table secfilt header");
     return (FALSE);
@@ -149,5 +152,5 @@
   /* read secfilt table data */
   if (catalog[0].catflags & LOAD_SECF) {
-    if (!gfits_fread_ftable_data (f, &ftable, FALSE)) {
+    if (!gfits_fread_ftable_data (catalog[0].f, &ftable, FALSE)) {
       if (VERBOSE) fprintf (stderr, "can't read table secfilt data");
       return (FALSE);
@@ -187,5 +190,5 @@
     /* no real need to skip the data array here... */
     Nbytes = gfits_data_size (&header);
-    fseeko (f, Nbytes, SEEK_CUR);
+    fseeko (catalog[0].f, Nbytes, SEEK_CUR);
     if (primary != NULL) {
       free (primary);
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog_raw.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog_raw.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog_raw.c	(revision 34041)
@@ -88,4 +88,5 @@
       FORMAT_CASE (PS1_V1,    PS1_V1);
       FORMAT_CASE (PS1_V2,    PS1_V2);
+      FORMAT_CASE (PS1_V3,    PS1_V3);
       FORMAT_CASE (PS1_REF,   PS1_REF);
 
@@ -280,4 +281,5 @@
   if (catalog[0].catformat == DVO_FORMAT_PS1_V1)          gfits_modify (&catalog[0].header, "FORMAT", "%s", 1, "PS1_V1");
   if (catalog[0].catformat == DVO_FORMAT_PS1_V2)          gfits_modify (&catalog[0].header, "FORMAT", "%s", 1, "PS1_V2");
+  if (catalog[0].catformat == DVO_FORMAT_PS1_V3)          gfits_modify (&catalog[0].header, "FORMAT", "%s", 1, "PS1_V3");
   if (catalog[0].catformat == DVO_FORMAT_PS1_REF)         gfits_modify (&catalog[0].header, "FORMAT", "%s", 1, "PS1_REF");
 
@@ -381,4 +383,5 @@
       FORMAT_CASE (PS1_V1,    PS1_V1);
       FORMAT_CASE (PS1_V2,    PS1_V2);
+      FORMAT_CASE (PS1_V3,    PS1_V3);
       FORMAT_CASE (PS1_REF,   PS1_REF);
 
@@ -430,4 +433,5 @@
       FORMAT_CASE (PS1_V1,    PS1_V1);
       FORMAT_CASE (PS1_V2,    PS1_V2);
+      FORMAT_CASE (PS1_V3,    PS1_V3);
       FORMAT_CASE (PS1_REF,   PS1_REF);
 
@@ -483,4 +487,5 @@
       FORMAT_CASE (PS1_V1,    PS1_V1);
       FORMAT_CASE (PS1_V2,    PS1_V2);
+      FORMAT_CASE (PS1_V3,    PS1_V3);
       FORMAT_CASE (PS1_REF,   PS1_REF);
 
@@ -532,4 +537,5 @@
       FORMAT_CASE (PS1_V1,    PS1_V1);
       FORMAT_CASE (PS1_V2,    PS1_V2);
+      FORMAT_CASE (PS1_V3,    PS1_V3);
       FORMAT_CASE (PS1_REF,   PS1_REF);
 
@@ -585,4 +591,5 @@
       FORMAT_CASE (PS1_V1,    PS1_V1);
       FORMAT_CASE (PS1_V2,    PS1_V2);
+      FORMAT_CASE (PS1_V3,    PS1_V3);
       FORMAT_CASE (PS1_REF,   PS1_REF);
 
@@ -634,4 +641,5 @@
       FORMAT_CASE (PS1_V1,    PS1_V1);
       FORMAT_CASE (PS1_V2,    PS1_V2);
+      FORMAT_CASE (PS1_V3,    PS1_V3);
       FORMAT_CASE (PS1_REF,   PS1_REF);
 
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog_split.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog_split.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_catalog_split.c	(revision 34041)
@@ -80,5 +80,5 @@
   // write PHU header
   if (!gfits_fwrite_header  (catalog->f, &catalog->header)) {
-    fprintf (stderr, "can't write primary header");
+    fprintf (stderr, "can't write primary header\n");
     return (FALSE);
   }
@@ -87,5 +87,5 @@
   gfits_create_matrix (&catalog->header, &matrix);
   if (!gfits_fwrite_matrix  (catalog->f, &matrix)) {
-    fprintf (stderr, "can't write primary matrix");
+    fprintf (stderr, "can't write primary matrix\n");
     gfits_free_matrix (&matrix);
     return (FALSE);
@@ -95,5 +95,5 @@
   // write the table data
   if (!gfits_fwrite_ftable_range (catalog->f, ftable, start, Nrows, Ndisk, Ntotal)) {
-    fprintf (stderr, "can't write table data");
+    fprintf (stderr, "can't write table data\n");
     return (FALSE);
   }
@@ -160,5 +160,7 @@
 
   off_t Nbytes;
-  off_t Naverage, Nmeasure, Nmissing;
+  off_t Naverage;
+  off_t Nmeasure;
+  off_t Nmissing;
   off_t Nitems;
   int status, Nsecfilt;
@@ -209,13 +211,16 @@
 
   /*** Average Table ***/
+
+  /* need to read the table header to determine format (whether or not we read averages) */
+  /* move pointer past PHU header -- must be already read (load_catalog) */
+  Nbytes = catalog[0].header.datasize + gfits_data_size (&catalog[0].header);
+  fseeko (catalog[0].f, Nbytes, SEEK_SET);
+
+  /* read Average table header */
+  if (!gfits_fread_header (catalog[0].f, &header)) { 
+    if (VERBOSE) fprintf (stderr, "can't read table average header");
+    return (FALSE);
+  }
   if (catalog[0].catflags & LOAD_AVES) {
-    /* move pointer past header -- must be already read (load_catalog) */
-    Nbytes = catalog[0].header.datasize + gfits_data_size (&catalog[0].header);
-    fseeko (catalog[0].f, Nbytes, SEEK_SET);
-    /* read Average table header */
-    if (!gfits_fread_header (catalog[0].f, &header)) { 
-      if (VERBOSE) fprintf (stderr, "can't read table average header");
-      return (FALSE);
-    }
     /* read Average table data : format is irrelevant here */
     if (!gfits_fread_ftable_data (catalog[0].f, &ftable, FALSE)) { 
@@ -234,4 +239,5 @@
     catalog[0].Naves_off = 0;
   } else {
+    catalog[0].catformat = FtableGetFormat (&ftable);
     ALLOCATE (catalog[0].average, Average, 1);
     catalog[0].Naverage = 0;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert.c	(revision 34041)
@@ -10,4 +10,40 @@
 /** this file might be more readable if I use macros for the repetative
     constructions below **/
+
+DVOTableFormat FtableGetFormat (FTable *ftable) {
+
+  DVOTableFormat format;
+  char extname[80];
+
+  /* read the format of this table */
+  if (!gfits_scan (ftable[0].header, "EXTNAME", "%s", 1, extname)) {
+    fprintf (stderr, "EXTNAME missing for average table\n");
+    return (DVO_FORMAT_UNDEF);
+  }
+
+  if (!strcmp (extname, "DVO_AVERAGE")) {
+    format = DVO_FORMAT_INTERNAL;
+    return (format);
+  }
+# define CONVERT_FORMAT(NAME, FORMAT)		\
+  if (!strcmp (extname, NAME)) {		\
+    format = DVO_FORMAT_##FORMAT;		\
+    return (format); }
+
+  CONVERT_FORMAT ("DVO_AVERAGE_ELIXIR", 	 ELIXIR);
+  CONVERT_FORMAT ("DVO_AVERAGE_LONEOS", 	 LONEOS);
+  CONVERT_FORMAT ("DVO_AVERAGE_PANSTARRS_DEV_0", PANSTARRS_DEV_0);
+  CONVERT_FORMAT ("DVO_AVERAGE_PANSTARRS_DEV_1", PANSTARRS_DEV_1);
+  CONVERT_FORMAT ("DVO_AVERAGE_PS1_DEV_1",       PS1_DEV_1);
+  CONVERT_FORMAT ("DVO_AVERAGE_PS1_DEV_2",       PS1_DEV_2);
+  CONVERT_FORMAT ("DVO_AVERAGE_PS1_V1",          PS1_V1);
+  CONVERT_FORMAT ("DVO_AVERAGE_PS1_V2",          PS1_V2);
+  CONVERT_FORMAT ("DVO_AVERAGE_PS1_V3",          PS1_V3);
+  CONVERT_FORMAT ("DVO_AVERAGE_PS1_REF",         PS1_REF);
+# undef CONVERT_FORMAT
+
+  fprintf (stderr, "table format unknown: %s\n", extname);
+  return (DVO_FORMAT_UNDEF);
+}
 
 /*** Average / FTable conversion functions ***/
@@ -59,4 +95,5 @@
   CONVERT_FORMAT ("DVO_AVERAGE_PS1_V1",          PS1_V1,          PS1_V1);
   CONVERT_FORMAT ("DVO_AVERAGE_PS1_V2",          PS1_V2,          PS1_V2);
+  CONVERT_FORMAT ("DVO_AVERAGE_PS1_V3",          PS1_V3,          PS1_V3);
   CONVERT_FORMAT ("DVO_AVERAGE_PS1_REF",         PS1_REF,         PS1_REF);
 # undef CONVERT_FORMAT
@@ -92,4 +129,5 @@
       FORMAT_CASE (PS1_V1,          PS1_V1);
       FORMAT_CASE (PS1_V2,          PS1_V2);
+      FORMAT_CASE (PS1_V3,          PS1_V3);
       FORMAT_CASE (PS1_REF,         PS1_REF);
 # undef FORMAT_CASE
@@ -146,4 +184,5 @@
   CONVERT_FORMAT ("DVO_MEASURE_PS1_V1",          PS1_V1,          PS1_V1);
   CONVERT_FORMAT ("DVO_MEASURE_PS1_V2",          PS1_V2,          PS1_V2);
+  CONVERT_FORMAT ("DVO_MEASURE_PS1_V3",          PS1_V3,          PS1_V3);
   CONVERT_FORMAT ("DVO_MEASURE_PS1_REF",         PS1_REF,         PS1_REF);
 # undef CONVERT_FORMAT
@@ -179,4 +218,5 @@
       FORMAT_CASE (PS1_V1,          PS1_V1);
       FORMAT_CASE (PS1_V2,          PS1_V2);
+      FORMAT_CASE (PS1_V3,          PS1_V3);
       FORMAT_CASE (PS1_REF,         PS1_REF);
 # undef FORMAT_CASE
@@ -233,4 +273,5 @@
   CONVERT_FORMAT ("DVO_SECFILT_PS1_V1",          PS1_V1,          PS1_V1);
   CONVERT_FORMAT ("DVO_SECFILT_PS1_V2",          PS1_V2,          PS1_V2);
+  CONVERT_FORMAT ("DVO_SECFILT_PS1_V3",          PS1_V3,          PS1_V3);
   CONVERT_FORMAT ("DVO_SECFILT_PS1_REF",         PS1_REF,         PS1_REF);
 # undef CONVERT_FORMAT
@@ -266,4 +307,5 @@
       FORMAT_CASE (PS1_V1,          PS1_V1);
       FORMAT_CASE (PS1_V2,          PS1_V2);
+      FORMAT_CASE (PS1_V3,          PS1_V3);
       FORMAT_CASE (PS1_REF,         PS1_REF);
 # undef FORMAT_CASE
@@ -344,4 +386,5 @@
   CONVERT_FORMAT ("DVO_IMAGE_PS1_V1",          PS1_V1,          PS1_V1);
   CONVERT_FORMAT ("DVO_IMAGE_PS1_V2",          PS1_V2,          PS1_V2);
+  CONVERT_FORMAT ("DVO_IMAGE_PS1_V3",          PS1_V3,          PS1_V3);
   CONVERT_FORMAT ("DVO_IMAGE_PS1_REF",         PS1_REF,         PS1_REF);
 
@@ -381,4 +424,5 @@
       FORMAT_CASE (PS1_V1,          PS1_V1);
       FORMAT_CASE (PS1_V2,          PS1_V2);
+      FORMAT_CASE (PS1_V3,          PS1_V3);
       FORMAT_CASE (PS1_REF,         PS1_REF);
 
@@ -434,4 +478,5 @@
       FORMAT_CASE (PS1_V1,          PS1_V1);
       FORMAT_CASE (PS1_V2,          PS1_V2);
+      FORMAT_CASE (PS1_V3,          PS1_V3);
       FORMAT_CASE (PS1_REF,         PS1_REF);
 
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_1.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_1.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_1.c	(revision 34041)
@@ -147,4 +147,8 @@
     out[i].Npos       	 = 0.0;
     out[i].extID 	 = 0;
+
+    // added in PS1_V3
+    out[i].photFlagsUpper = 0;
+    out[i].photFlagsLower = 0;
   }
   return (out);
@@ -206,4 +210,9 @@
     // changed or added for PS1_V2
     out[i].flags = 0;
+
+    // added in PS1_V3
+    out[i].Map         = 0;
+    out[i].Mstdev      = 0;
+    out[i].ubercalDist = 0;
  }
   return (out);
@@ -268,5 +277,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].ubercalDist	    = in[i].dummy3; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
@@ -335,5 +344,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].dummy3	    = in[i].ubercalDist; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_2.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_2.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_2.c	(revision 34041)
@@ -141,4 +141,8 @@
     out[i].Npos       	 = 0.0;
     out[i].extID 	 = 0;
+
+    // added in PS1_V3
+    out[i].photFlagsUpper = 0;
+    out[i].photFlagsLower = 0;
   }
   return (out);
@@ -200,4 +204,9 @@
     // changed or added for PS1_V2
     out[i].flags = 0;
+
+    // added in PS1_V3
+    out[i].Map         = 0;
+    out[i].Mstdev      = 0;
+    out[i].ubercalDist = 0;
  }
   return (out);
@@ -264,5 +273,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].ubercalDist	    = in[i].dummy3; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
@@ -329,5 +338,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].dummy3	    = in[i].ubercalDist; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_3.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_3.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_DEV_3.c	(revision 34041)
@@ -48,5 +48,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].ubercalDist	    = in[i].dummy3; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
@@ -107,5 +107,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].dummy3	    = in[i].ubercalDist; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_REF.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_REF.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_REF.c	(revision 34041)
@@ -114,4 +114,8 @@
     out[i].catID 	 = in[i].catID;
     out[i].extID 	 = 0;
+
+    // added in PS1_V3
+    out[i].photFlagsUpper = 0;
+    out[i].photFlagsLower = 0;
   }
   return (out);
@@ -160,4 +164,9 @@
     // changed or added for PS1_V2
     out[i].flags = 0;
+
+    // added in PS1_V3
+    out[i].Map         = 0;
+    out[i].Mstdev      = 0;
+    out[i].ubercalDist = 0;
  }
   return (out);
@@ -223,5 +232,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].ubercalDist	    = in[i].dummy3; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
@@ -285,5 +294,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].dummy3	    = in[i].ubercalDist; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_V1.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_V1.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_V1.c	(revision 34041)
@@ -146,4 +146,8 @@
     out[i].catID 	 = in[i].catID;
     out[i].extID 	 = in[i].extID;
+
+    // added in PS1_V3
+    out[i].photFlagsUpper = 0;
+    out[i].photFlagsLower = 0;
   }
   return (out);
@@ -204,4 +208,9 @@
     // changed or added for PS1_V2
     out[i].flags = 0;
+
+    // added in PS1_V3
+    out[i].Map         = 0;
+    out[i].Mstdev      = 0;
+    out[i].ubercalDist = 0;
  }
   return (out);
@@ -272,5 +281,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].ubercalDist	    = in[i].dummy3;
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
@@ -336,5 +345,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].dummy3	    = in[i].ubercalDist; 
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_V2.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_V2.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_V2.c	(revision 34041)
@@ -147,4 +147,8 @@
     out[i].catID 	 = in[i].catID;
     out[i].extID 	 = in[i].extID;
+
+    // added in PS1_V3
+    out[i].photFlagsUpper = 0;
+    out[i].photFlagsLower = 0;
   }
   return (out);
@@ -207,4 +211,9 @@
     out[i].M_20  = in[i].M_20;      
     out[i].M_80  = in[i].M_80;      
+
+    // added in PS1_V3
+    out[i].Map         = 0;
+    out[i].Mstdev      = 0;
+    out[i].ubercalDist = 0;
  }
   return (out);
@@ -281,5 +290,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].ubercalDist	    = in[i].dummy3; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
@@ -343,5 +352,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].dummy3	    = in[i].ubercalDist; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_V3.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_V3.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_PS1_V3.c	(revision 34041)
@@ -0,0 +1,437 @@
+# include <dvo.h>
+
+/* convert PS1_V3 formats to internal formats */
+
+Measure *Measure_PS1_V3_ToInternal (Measure_PS1_V3 *in, off_t Nvalues) {
+
+  off_t i;
+  Measure *out;
+
+  ALLOCATE_ZERO (out, Measure, Nvalues);
+
+  for (i = 0; i < Nvalues; i++) {
+    out[i].dR         = in[i].dR;
+    out[i].dD         = in[i].dD;
+    out[i].M          = in[i].M;
+    out[i].Mcal       = in[i].Mcal;
+    out[i].Map        = in[i].Map;
+    out[i].dM         = in[i].dM;
+    out[i].dMcal      = in[i].dMcal;
+    out[i].dt         = in[i].dt;
+    out[i].airmass    = in[i].airmass;
+    out[i].az         = in[i].az;
+    out[i].Xccd       = in[i].Xccd;
+    out[i].Yccd       = in[i].Yccd;
+    out[i].Sky        = in[i].Sky;
+    out[i].dSky       = in[i].dSky;
+    out[i].t          = in[i].t;
+    out[i].t_msec     = in[i].t_msec;
+    out[i].averef     = in[i].averef;
+    out[i].detID      = in[i].detID;
+    out[i].imageID    = in[i].imageID;
+    out[i].objID      = in[i].objID;
+    out[i].catID      = in[i].catID;
+    out[i].extID      = in[i].extID;
+    out[i].psfQual    = in[i].psfQual;
+    out[i].psfChisq   = in[i].psfChisq;
+    out[i].psfNdof    = in[i].psfNdof;
+    out[i].psfNpix    = in[i].psfNpix;
+    out[i].crNsigma   = in[i].crNsigma;
+    out[i].extNsigma  = in[i].extNsigma;
+    out[i].FWx 	      = in[i].FWx;
+    out[i].FWy 	      = in[i].FWy;
+    out[i].theta      = in[i].theta;
+    out[i].Mxx 	      = in[i].Mxx;
+    out[i].Mxy 	      = in[i].Mxy;
+    out[i].Myy 	      = in[i].Myy;
+    out[i].dXccd      = in[i].dXccd;
+    out[i].dYccd      = in[i].dYccd;
+    out[i].dRsys      = in[i].dRsys;
+    out[i].posangle   = in[i].posangle;
+    out[i].pltscale   = in[i].pltscale;
+    out[i].photcode   = in[i].photcode;
+    out[i].dbFlags    = in[i].dbFlags;
+    out[i].photFlags  = in[i].photFlags;
+  }
+  return (out);
+}
+
+Measure_PS1_V3 *MeasureInternalTo_PS1_V3 (Measure *in, off_t Nvalues) {
+
+  off_t i;
+  Measure_PS1_V3 *out;
+
+  ALLOCATE_ZERO (out, Measure_PS1_V3, Nvalues);
+
+  for (i = 0; i < Nvalues; i++) {
+    out[i].dR         = in[i].dR;
+    out[i].dD         = in[i].dD;
+    out[i].M          = in[i].M;
+    out[i].Mcal       = in[i].Mcal;
+    out[i].Map        = in[i].Map;
+    out[i].dM         = in[i].dM;
+    out[i].dMcal      = in[i].dMcal;
+    out[i].dt         = in[i].dt;
+    out[i].airmass    = in[i].airmass;
+    out[i].az         = in[i].az;
+    out[i].Xccd       = in[i].Xccd;
+    out[i].Yccd       = in[i].Yccd;
+    out[i].Sky        = in[i].Sky;
+    out[i].dSky       = in[i].dSky;
+    out[i].t          = in[i].t;
+    out[i].t_msec     = in[i].t_msec;
+    out[i].averef     = in[i].averef;
+    out[i].detID      = in[i].detID;
+    out[i].imageID    = in[i].imageID;
+    out[i].objID      = in[i].objID;
+    out[i].catID      = in[i].catID;
+    out[i].extID      = in[i].extID;
+    out[i].psfQual    = in[i].psfQual;
+    out[i].psfChisq   = in[i].psfChisq;
+    out[i].psfNdof    = in[i].psfNdof;
+    out[i].psfNpix    = in[i].psfNpix;
+    out[i].crNsigma   = in[i].crNsigma;
+    out[i].extNsigma  = in[i].extNsigma;
+    out[i].FWx 	      = in[i].FWx;
+    out[i].FWy 	      = in[i].FWy;
+    out[i].theta      = in[i].theta;
+    out[i].Mxx 	      = in[i].Mxx;
+    out[i].Mxy 	      = in[i].Mxy;
+    out[i].Myy 	      = in[i].Myy;
+    out[i].dXccd      = in[i].dXccd;
+    out[i].dYccd      = in[i].dYccd;
+    out[i].dRsys      = in[i].dRsys;
+    out[i].posangle   = in[i].posangle;
+    out[i].pltscale   = in[i].pltscale;
+    out[i].photcode   = in[i].photcode;
+    out[i].dbFlags    = in[i].dbFlags;
+    out[i].photFlags  = in[i].photFlags;
+  }
+  return (out);
+}
+
+// 'primary' is needed to conform with the API for Loneos and Elixir, but is not used
+Average *Average_PS1_V3_ToInternal (Average_PS1_V3 *in, off_t Nvalues, SecFilt **primary) {
+
+  off_t i;
+  Average *out;
+
+  ALLOCATE_ZERO (out, Average, Nvalues);
+
+  for (i = 0; i < Nvalues; i++) {
+    out[i].R        	 = in[i].R;      
+    out[i].D        	 = in[i].D;      
+    out[i].dR       	 = in[i].dR;
+    out[i].dD       	 = in[i].dD;
+    out[i].uR       	 = in[i].uR;
+    out[i].uD       	 = in[i].uD;
+    out[i].duR      	 = in[i].duR;
+    out[i].duD      	 = in[i].duD;
+    out[i].P        	 = in[i].P;
+    out[i].dP       	 = in[i].dP;
+    out[i].Xp       	 = in[i].Xp;     
+    out[i].ChiSqAve    	 = in[i].ChiSqAve;     
+    out[i].ChiSqPM    	 = in[i].ChiSqPM;     
+    out[i].ChiSqPar    	 = in[i].ChiSqPar;     
+    out[i].Tmean    	 = in[i].Tmean;     
+    out[i].Trange   	 = in[i].Trange;     
+    out[i].Npos       	 = in[i].Npos;     
+    out[i].Nmeasure      = in[i].Nmeasure;     
+    out[i].Nmissing      = in[i].Nmissing;     
+    out[i].Nextend       = in[i].Nextend;     
+    out[i].measureOffset = in[i].measureOffset; 
+    out[i].missingOffset = in[i].missingOffset;
+    out[i].extendOffset  = in[i].extendOffset;
+    out[i].flags     	 = in[i].flags;   
+    out[i].photFlagsUpper = in[i].photFlagsUpper;   
+    out[i].photFlagsLower = in[i].photFlagsLower;   
+    out[i].objID 	 = in[i].objID;
+    out[i].catID 	 = in[i].catID;
+    out[i].extID 	 = in[i].extID;
+  }
+  return (out);
+}
+
+// 'primary' is needed to conform with the API for Loneos and Elixir, but is not used
+Average_PS1_V3 *AverageInternalTo_PS1_V3 (Average *in, off_t Nvalues, SecFilt *primary) {
+
+  off_t i;
+  Average_PS1_V3 *out;
+
+  ALLOCATE_ZERO (out, Average_PS1_V3, Nvalues);
+
+  for (i = 0; i < Nvalues; i++) {
+    out[i].R        	 = in[i].R;      
+    out[i].D        	 = in[i].D;      
+    out[i].dR       	 = in[i].dR;
+    out[i].dD       	 = in[i].dD;
+    out[i].uR       	 = in[i].uR;
+    out[i].uD       	 = in[i].uD;
+    out[i].duR      	 = in[i].duR;
+    out[i].duD      	 = in[i].duD;
+    out[i].P        	 = in[i].P;
+    out[i].dP       	 = in[i].dP;
+    out[i].Xp       	 = in[i].Xp;     
+    out[i].ChiSqAve    	 = in[i].ChiSqAve;     
+    out[i].ChiSqPM     	 = in[i].ChiSqPM;     
+    out[i].ChiSqPar   	 = in[i].ChiSqPar;     
+    out[i].Tmean    	 = in[i].Tmean;     
+    out[i].Trange   	 = in[i].Trange;     
+    out[i].Npos       	 = in[i].Npos;     
+    out[i].Nmeasure      = in[i].Nmeasure;     
+    out[i].Nmissing      = in[i].Nmissing;     
+    out[i].Nextend       = in[i].Nextend;     
+    out[i].measureOffset = in[i].measureOffset; 
+    out[i].missingOffset = in[i].missingOffset;
+    out[i].extendOffset  = in[i].extendOffset;
+    out[i].flags     	 = in[i].flags;   
+    out[i].photFlagsUpper = in[i].photFlagsUpper;   
+    out[i].photFlagsLower = in[i].photFlagsLower;   
+    out[i].objID 	 = in[i].objID;
+    out[i].catID 	 = in[i].catID;
+    out[i].extID 	 = in[i].extID;
+  }
+  return (out);
+}
+
+SecFilt *SecFilt_PS1_V3_ToInternal (SecFilt_PS1_V3 *in, off_t Nvalues) {
+
+  off_t i;
+  SecFilt *out;
+
+  ALLOCATE_ZERO (out, SecFilt, Nvalues);
+
+  for (i = 0; i < Nvalues; i++) {
+    out[i].M           = in[i].M;      
+    out[i].Map         = in[i].Map;      
+    out[i].dM          = in[i].dM;      
+    out[i].Xm          = in[i].Xm;     
+    out[i].flags       = in[i].flags;     
+    out[i].Ncode       = in[i].Ncode;
+    out[i].Nused       = in[i].Nused;
+    out[i].M_20        = in[i].M_20;      
+    out[i].M_80        = in[i].M_80;      
+    out[i].Mstdev      = in[i].Mstdev;      
+    out[i].ubercalDist = in[i].ubercalDist;      
+ }
+  return (out);
+}
+
+SecFilt_PS1_V3 *SecFiltInternalTo_PS1_V3 (SecFilt *in, off_t Nvalues) {
+
+  off_t i;
+  SecFilt_PS1_V3 *out;
+
+  ALLOCATE_ZERO (out, SecFilt_PS1_V3, Nvalues);
+
+  for (i = 0; i < Nvalues; i++) {
+    out[i].M           = in[i].M;      
+    out[i].Map         = in[i].Map;      
+    out[i].dM          = in[i].dM;      
+    out[i].Xm          = in[i].Xm;     
+    out[i].flags       = in[i].flags;     
+    out[i].Ncode       = in[i].Ncode;
+    out[i].Nused       = in[i].Nused;
+    out[i].M_20        = in[i].M_20;      
+    out[i].M_80        = in[i].M_80;      
+    out[i].Mstdev      = in[i].Mstdev;      
+    out[i].ubercalDist = in[i].ubercalDist;      
+  }
+  return (out);
+}
+
+Image *Image_PS1_V3_ToInternal (Image_PS1_V3 *in, off_t Nvalues) {
+
+  off_t i;
+  Image *out;
+
+  ALLOCATE_ZERO (out, Image, Nvalues);
+
+  for (i = 0; i < Nvalues; i++) {
+    memcpy (&out[i].coords, &in[i].coords, sizeof(Coords));
+
+    strncpy (out[i].name, in[i].name, 120); // out[121], in[121]
+    out[i].name[120] = 0; // force termination
+
+    out[i].tzero    	    = in[i].tzero;
+    out[i].nstar    	    = in[i].nstar;
+    out[i].secz	    	    = in[i].secz;
+    out[i].NX	    	    = in[i].NX;
+    out[i].NY	    	    = in[i].NY;
+    out[i].apmifit  	    = in[i].apmifit;
+    out[i].dapmifit 	    = in[i].dapmifit;
+    out[i].Mcal	    	    = in[i].Mcal;
+    out[i].dMcal    	    = in[i].dMcal;
+    out[i].Xm	    	    = in[i].Xm;
+    out[i].photcode   	    = in[i].photcode;
+    out[i].exptime  	    = in[i].exptime;
+    out[i].sidtime  	    = in[i].sidtime;
+    out[i].latitude  	    = in[i].latitude;
+
+    out[i].RAo  	    = in[i].RAo;
+    out[i].DECo  	    = in[i].DECo;
+    out[i].Radius  	    = in[i].Radius;
+
+    out[i].detection_limit  = in[i].detection_limit;
+    out[i].saturation_limit = in[i].saturation_limit;
+    out[i].cerror	    = in[i].cerror;
+    out[i].fwhm_x	    = in[i].fwhm_x;
+    out[i].fwhm_y	    = in[i].fwhm_y;
+    out[i].trate	    = in[i].trate;
+    out[i].ccdnum	    = in[i].ccdnum;
+    out[i].flags	    = in[i].flags;
+    out[i].imageID	    = in[i].imageID;
+    out[i].parentID	    = in[i].parentID;
+    out[i].externID	    = in[i].externID;
+    out[i].sourceID	    = in[i].sourceID;
+
+    // as of 2011.02.03, the old Mx,My,..., Mxxxx,Myyyy have been deprecated and replaced
+    // with the following.  (no real databases used those values -- see
+    // libdvo/doc/dvo-images.txt)
+    out[i].nLinkAstrom	    = in[i].nLinkAstrom;
+    out[i].nLinkPhotom	    = in[i].nLinkPhotom;
+    out[i].ubercalDist	    = in[i].ubercalDist;
+    out[i].dXpixSys	    = in[i].dXpixSys;
+    out[i].dYpixSys	    = in[i].dYpixSys;
+    out[i].dMagSys	    = in[i].dMagSys;
+    out[i].nFitAstrom       = in[i].nFitAstrom;
+    out[i].nFitPhotom       = in[i].nFitPhotom;
+    out[i].photom_map_id    = in[i].photom_map_id;
+    out[i].astrom_map_id    = in[i].astrom_map_id;
+  }
+  return (out);
+}
+
+Image_PS1_V3 *ImageInternalTo_PS1_V3 (Image *in, off_t Nvalues) {
+
+  off_t i;
+  Image_PS1_V3 *out;
+
+  ALLOCATE_ZERO (out, Image_PS1_V3, Nvalues);
+
+  for (i = 0; i < Nvalues; i++) {
+    memcpy (&out[i].coords, &in[i].coords, sizeof(Coords));
+
+    strncpy (out[i].name, in[i].name, 120); // out[121], in[121]
+    out[i].name[120] = 0; // force termination
+
+    out[i].tzero    	    = in[i].tzero;
+    out[i].nstar    	    = in[i].nstar;
+    out[i].secz	    	    = in[i].secz;
+    out[i].NX	    	    = in[i].NX;
+    out[i].NY	    	    = in[i].NY;
+    out[i].apmifit  	    = in[i].apmifit;
+    out[i].dapmifit 	    = in[i].dapmifit;
+    out[i].Mcal	    	    = in[i].Mcal;
+    out[i].dMcal    	    = in[i].dMcal;
+    out[i].Xm	    	    = in[i].Xm;
+    out[i].photcode   	    = in[i].photcode;
+    out[i].exptime  	    = in[i].exptime;
+    out[i].sidtime  	    = in[i].sidtime;
+    out[i].latitude  	    = in[i].latitude;
+
+    out[i].RAo  	    = in[i].RAo;
+    out[i].DECo  	    = in[i].DECo;
+    out[i].Radius  	    = in[i].Radius;
+
+    out[i].detection_limit  = in[i].detection_limit;
+    out[i].saturation_limit = in[i].saturation_limit;
+    out[i].cerror	    = in[i].cerror;
+    out[i].fwhm_x	    = in[i].fwhm_x;
+    out[i].fwhm_y	    = in[i].fwhm_y;
+    out[i].trate	    = in[i].trate;
+    out[i].ccdnum	    = in[i].ccdnum;
+    out[i].flags	    = in[i].flags;
+    out[i].imageID	    = in[i].imageID;
+    out[i].parentID	    = in[i].parentID;
+    out[i].externID	    = in[i].externID;
+    out[i].sourceID	    = in[i].sourceID;
+
+    // as of 2011.02.03, the old Mx,My,..., Mxxxx,Myyyy have been deprecated and replaced
+    // with the following.  (no real databases used those values -- see
+    // libdvo/doc/dvo-images.txt)
+    out[i].nLinkAstrom	    = in[i].nLinkAstrom;
+    out[i].nLinkPhotom	    = in[i].nLinkPhotom;
+    out[i].ubercalDist	    = in[i].ubercalDist;
+    out[i].dXpixSys	    = in[i].dXpixSys;
+    out[i].dYpixSys	    = in[i].dYpixSys;
+    out[i].dMagSys	    = in[i].dMagSys;
+    out[i].nFitAstrom       = in[i].nFitAstrom;
+    out[i].nFitPhotom       = in[i].nFitPhotom;
+    out[i].photom_map_id    = in[i].photom_map_id;
+    out[i].astrom_map_id    = in[i].astrom_map_id;
+  }
+  return (out);
+}
+
+PhotCode *PhotCode_PS1_V3_To_Internal (PhotCode_PS1_V3 *in, off_t Nvalues) {
+
+  off_t i;
+  PhotCode *out;
+
+  ALLOCATE_ZERO (out, PhotCode, Nvalues);
+
+  for (i = 0; i < Nvalues; i++) {
+    strncpy (out[i].name, in[i].name, 31); // out[32], in[32]
+    out[i].name[31] = 0; // force termination
+
+    out[i].code  = in[i].code;         
+    out[i].type  = in[i].type;         
+    out[i].C     = in[i].C;            
+    out[i].dC 	 = in[i].dC;           
+    out[i].dX 	 = in[i].dX;           
+    out[i].K  	 = in[i].K;            
+    out[i].c1 	 = in[i].c1;           
+    out[i].c2 	 = in[i].c2;           
+    out[i].equiv = in[i].equiv;        
+    out[i].Nc    = in[i].Nc;           
+    memcpy (out[i].X, in[i].X, 4*sizeof(float));            
+
+    out[i].astromErrSys      = in[i].astromErrSys;
+    out[i].astromErrScale    = in[i].astromErrScale;
+    out[i].astromErrMagScale = in[i].astromErrMagScale;
+    out[i].photomErrSys      = in[i].photomErrSys;
+
+    out[i].photomPoorMask      = in[i].photomPoorMask;
+    out[i].photomBadMask       = in[i].photomBadMask;
+    out[i].astromPoorMask      = in[i].astromPoorMask;
+    out[i].astromBadMask       = in[i].astromBadMask;
+  }
+  return (out);
+}
+
+PhotCode_PS1_V3 *PhotCode_Internal_To_PS1_V3 (PhotCode *in, off_t Nvalues) {
+
+  off_t i;
+  PhotCode_PS1_V3 *out;
+
+  ALLOCATE_ZERO (out, PhotCode_PS1_V3, Nvalues);
+
+  for (i = 0; i < Nvalues; i++) {
+    strncpy (out[i].name, in[i].name, 31); // out[32], in[32]
+    out[i].name[31] = 0; // force termination
+
+    out[i].code  = in[i].code;         
+    out[i].type  = in[i].type;         
+    out[i].C     = in[i].C;            
+    out[i].dC 	 = in[i].dC;           
+    out[i].dX 	 = in[i].dX;           
+    out[i].K  	 = in[i].K;            
+    out[i].c1 	 = in[i].c1;           
+    out[i].c2 	 = in[i].c2;           
+    out[i].equiv = in[i].equiv;        
+    out[i].Nc    = in[i].Nc;           
+    memcpy (out[i].X, in[i].X, 4*sizeof(float));            
+
+    out[i].astromErrSys      = in[i].astromErrSys;
+    out[i].astromErrScale    = in[i].astromErrScale;
+    out[i].astromErrMagScale = in[i].astromErrMagScale;
+    out[i].photomErrSys      = in[i].photomErrSys;
+
+    out[i].photomPoorMask      = in[i].photomPoorMask;
+    out[i].photomBadMask       = in[i].photomBadMask;
+    out[i].astromPoorMask      = in[i].astromPoorMask;
+    out[i].astromBadMask       = in[i].astromBadMask;
+  }
+  return (out);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_elixir.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_elixir.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_elixir.c	(revision 34041)
@@ -158,4 +158,8 @@
     out[i].Npos       	 = 0.0;
     out[i].extID 	 = 0;
+
+    // added in PS1_V3
+    out[i].photFlagsUpper = 0;
+    out[i].photFlagsLower = 0;
   }
   return (out);
@@ -215,4 +219,9 @@
     // changed or added for PS1_V2
     out[i].flags = 0;
+
+    // added in PS1_V3
+    out[i].Map         = 0;
+    out[i].Mstdev      = 0;
+    out[i].ubercalDist = 0;
   }
   return (out);
@@ -271,5 +280,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].ubercalDist	    = in[i].dummy3; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
@@ -341,5 +350,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].dummy3	    = in[i].ubercalDist; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_loneos.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_loneos.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_loneos.c	(revision 34041)
@@ -150,4 +150,8 @@
     out[i].Npos       	 = 0.0;
     out[i].extID 	 = 0;
+
+    // added in PS1_V3
+    out[i].photFlagsUpper = 0;
+    out[i].photFlagsLower = 0;
   }
   return (out);
@@ -208,4 +212,9 @@
     // changed or added for PS1_V2
     out[i].flags = 0;
+
+    // added in PS1_V3
+    out[i].Map         = 0;
+    out[i].Mstdev      = 0;
+    out[i].ubercalDist = 0;
   }
   return (out);
@@ -264,5 +273,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].ubercalDist	    = in[i].dummy3; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
@@ -334,5 +343,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].dummy3	    = in[i].ubercalDist; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_0.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_0.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_0.c	(revision 34041)
@@ -154,4 +154,8 @@
     out[i].Npos       	 = 0.0;
     out[i].extID 	 = 0;
+
+    // added in PS1_V3
+    out[i].photFlagsUpper = 0;
+    out[i].photFlagsLower = 0;
   }
   return (out);
@@ -215,4 +219,9 @@
     // changed or added for PS1_V2
     out[i].flags = 0;
+
+    // added in PS1_V3
+    out[i].Map         = 0;
+    out[i].Mstdev      = 0;
+    out[i].ubercalDist = 0;
  }
   return (out);
@@ -278,5 +287,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].ubercalDist	    = in[i].dummy3; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
@@ -347,5 +356,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].dummy3	    = in[i].ubercalDist; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_1.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_1.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_convert_panstarrs_DEV_1.c	(revision 34041)
@@ -154,4 +154,8 @@
     out[i].Npos       	 = 0.0;
     out[i].extID 	 = 0;
+
+    // added in PS1_V3
+    out[i].photFlagsUpper = 0;
+    out[i].photFlagsLower = 0;
   }
   return (out);
@@ -215,4 +219,9 @@
     // changed or added for PS1_V2
     out[i].flags = 0;
+
+    // added in PS1_V3
+    out[i].Map         = 0;
+    out[i].Mstdev      = 0;
+    out[i].ubercalDist = 0;
  }
   return (out);
@@ -278,5 +287,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].ubercalDist	    = in[i].dummy3; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
@@ -347,5 +356,5 @@
     out[i].nLinkAstrom	    = in[i].nLinkAstrom;
     out[i].nLinkPhotom	    = in[i].nLinkPhotom;
-    out[i].dummy3	    = in[i].dummy3;
+    out[i].dummy3	    = in[i].ubercalDist; // new name PS1_V3
     out[i].dXpixSys	    = in[i].dXpixSys;
     out[i].dYpixSys	    = in[i].dYpixSys;
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_image.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_image.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_image.c	(revision 34041)
@@ -211,4 +211,5 @@
   if (db[0].format == DVO_FORMAT_PS1_V1)          gfits_modify (&db[0].header, "FORMAT", "%s", 1, "PS1_V1");
   if (db[0].format == DVO_FORMAT_PS1_V2)          gfits_modify (&db[0].header, "FORMAT", "%s", 1, "PS1_V2");
+  if (db[0].format == DVO_FORMAT_PS1_V3)          gfits_modify (&db[0].header, "FORMAT", "%s", 1, "PS1_V3");
   if (db[0].format == DVO_FORMAT_PS1_REF)         gfits_modify (&db[0].header, "FORMAT", "%s", 1, "PS1_REF");
   
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_image_raw.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_image_raw.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_image_raw.c	(revision 34041)
@@ -57,4 +57,5 @@
   if (db[0].format == DVO_FORMAT_PS1_V1)          ImageSize = sizeof(Image_PS1_V1);
   if (db[0].format == DVO_FORMAT_PS1_V2)          ImageSize = sizeof(Image_PS1_V2);
+  if (db[0].format == DVO_FORMAT_PS1_V3)          ImageSize = sizeof(Image_PS1_V3);
   if (db[0].format == DVO_FORMAT_PS1_REF)         ImageSize = sizeof(Image_PS1_REF);
 
@@ -85,4 +86,5 @@
   if (db[0].format == DVO_FORMAT_PS1_V1)          gfits_table_mkheader_Image_PS1_V1 (&db[0].theader);
   if (db[0].format == DVO_FORMAT_PS1_V2)          gfits_table_mkheader_Image_PS1_V2 (&db[0].theader);
+  if (db[0].format == DVO_FORMAT_PS1_V3)          gfits_table_mkheader_Image_PS1_V3 (&db[0].theader);
   if (db[0].format == DVO_FORMAT_PS1_REF)         gfits_table_mkheader_Image_PS1_REF (&db[0].theader);
     
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_photcode_ops.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_photcode_ops.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_photcode_ops.c	(revision 34041)
@@ -476,4 +476,52 @@
 }
 
+float PhotMstdev (PhotCode *code, Average *average, SecFilt *secfilt) {
+
+  int Ns;
+  float Mstdev;
+
+  if (code == NULL) return NAN;
+
+  Ns = photcodes[0].hashNsec[code[0].code];
+  Mstdev  = (Ns == -1) ? NAN : 0.001*secfilt[Ns].Mstdev;
+  return (Mstdev);
+}
+
+float PhotM20 (PhotCode *code, Average *average, SecFilt *secfilt) {
+
+  int Ns;
+  float M20;
+
+  if (code == NULL) return NAN;
+
+  Ns = photcodes[0].hashNsec[code[0].code];
+  M20  = (Ns == -1) ? NAN : 0.001*secfilt[Ns].M_20;
+  return (M20);
+}
+
+float PhotM80 (PhotCode *code, Average *average, SecFilt *secfilt) {
+
+  int Ns;
+  float M80;
+
+  if (code == NULL) return NAN;
+
+  Ns = photcodes[0].hashNsec[code[0].code];
+  M80  = (Ns == -1) ? NAN : 0.001*secfilt[Ns].M_80;
+  return (M80);
+}
+
+float PhotUCdist (PhotCode *code, Average *average, SecFilt *secfilt) {
+
+  int Ns;
+  float Muc;
+
+  if (code == NULL) return NAN;
+
+  Ns = photcodes[0].hashNsec[code[0].code];
+  Muc  = (Ns == -1) ? NAN : secfilt[Ns].ubercalDist;
+  return (Muc);
+}
+
 // XXX return NAN or NAN_S_SHORT? (secfilt->Xm is short)
 float PhotXm (PhotCode *code, Average *average, SecFilt *secfilt) {
@@ -857,36 +905,4 @@
 /***********************************************/
 
-// Create a map between the secfilt values from one photcode table to another
-int *GetSecFiltMap(PhotCodeData *output, PhotCodeData *input) {
-  int i, j;
-  int NsecfiltIn  = input[0].Nsecfilt;
-  int NsecfiltOut = output[0].Nsecfilt;
-  int *map;
-  ALLOCATE(map, int, NsecfiltIn);
-
-  // loop over entries in the input table
-  for (i = 0; i < NsecfiltIn; i++) {
-    int code  = input[0].codeNsec[i];
-    int entry = -1;
-    // find the matching entry in the output table
-    for (j = 0; j < NsecfiltOut; j++) {
-      int outcode = output[0].codeNsec[j];
-      if (code == outcode) {
-	 entry = j;
-	 break;
-      }
-    }
-    // if (entry == -1) {
-    //   // entry is missing fail (no printfs in this file)
-    //   free(map);
-    //   return(FALSE);
-    // }
-
-    // if entry is still -1, we will skip this one (not map into the output db)
-    map[i] = entry;
-  }
-
-  return map;
-}
 
 /* photcode table should have the following format: 
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_photcode_utils.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_photcode_utils.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_photcode_utils.c	(revision 34041)
@@ -0,0 +1,68 @@
+# include <dvo.h>
+
+// Create a map between the secfilt values from one photcode table to another
+int *GetSecFiltMap(PhotCodeData *output, PhotCodeData *input) {
+  int i, j;
+  int NsecfiltIn  = input[0].Nsecfilt;
+  int NsecfiltOut = output[0].Nsecfilt;
+  int *map;
+  ALLOCATE(map, int, NsecfiltIn);
+
+  // loop over entries in the input table
+  for (i = 0; i < NsecfiltIn; i++) {
+    int code  = input[0].codeNsec[i];
+    int entry = -1;
+    // find the matching entry in the output table
+    for (j = 0; j < NsecfiltOut; j++) {
+      int outcode = output[0].codeNsec[j];
+      if (code == outcode) {
+	 entry = j;
+	 break;
+      }
+    }
+    // if (entry == -1) {
+    //   // entry is missing fail (no printfs in this file)
+    //   free(map);
+    //   return(FALSE);
+    // }
+
+    // if entry is still -1, we will skip this one (not map into the output db)
+    map[i] = entry;
+  }
+
+  return map;
+}
+
+PhotCode **ParsePhotcodeList (char *rawlist, int *nphotcodes, int needAve) {
+
+  *nphotcodes = 0;
+  if (!rawlist) return NULL;
+
+  int Nphotcodes = 0;
+  int NPHOTCODES = 10;
+  PhotCode **photcodes = NULL;
+  ALLOCATE (photcodes, PhotCode *, NPHOTCODES);
+
+  /* parse the comma-separated list of photcodes */
+  char *myList = strcreate(rawlist);
+  char *list = myList;
+  char *codename = NULL;
+  char *ptr = NULL;
+  while ((codename = strtok_r (list, ",", &ptr)) != NULL) {
+    list = NULL; // pass NULL on successive strtok_r calls
+    if ((photcodes[Nphotcodes] = GetPhotcodebyName (codename)) == NULL) {
+      fprintf (stderr, "ERROR: photcode %s not found in photcode table\n", codename);
+      exit (1);
+    }
+    if (needAve && (photcodes[Nphotcodes][0].type != PHOT_SEC)) {
+      fprintf (stderr, "photcode %s is not an filter type (SEC)\n", codename);
+      exit (1);
+    }
+    Nphotcodes ++;
+    CHECK_REALLOCATE (photcodes, PhotCode *, NPHOTCODES, Nphotcodes, 10);
+  }
+  free (myList);
+
+  *nphotcodes = Nphotcodes;
+  return photcodes;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_tiny_values.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_tiny_values.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/dvo_tiny_values.c	(revision 34041)
@@ -0,0 +1,75 @@
+# include "dvo.h"
+
+void CopyAverageToTiny (AverageTiny *averageT, Average *average) {
+  averageT[0].R     	    = average[0].R;
+  averageT[0].D     	    = average[0].D;
+  averageT[0].flags 	    = average[0].flags;
+  averageT[0].Nmeasure      = average[0].Nmeasure;
+  averageT[0].measureOffset = average[0].measureOffset;
+  averageT[0].catID         = average[0].catID;
+  return;
+}
+
+void CopyMeasureToTiny (MeasureTiny *measureT, Measure *measure) {
+  measureT[0].dR         = measure[0].dR;
+  measureT[0].dD         = measure[0].dD;
+  measureT[0].M          = measure[0].M;
+  measureT[0].Mcal       = measure[0].Mcal;
+  measureT[0].dM         = measure[0].dM;
+  measureT[0].airmass    = measure[0].airmass;
+  measureT[0].Xccd       = measure[0].Xccd;
+  measureT[0].Yccd       = measure[0].Yccd;
+  measureT[0].t          = measure[0].t;
+  measureT[0].dt         = measure[0].dt;
+  measureT[0].averef     = measure[0].averef;
+  measureT[0].imageID    = measure[0].imageID;
+  measureT[0].dbFlags    = measure[0].dbFlags;
+  measureT[0].photFlags  = measure[0].photFlags;
+  measureT[0].photcode   = measure[0].photcode;
+  measureT[0].catID      = measure[0].catID;
+  measureT[0].dXccd      = measure[0].dXccd;
+  measureT[0].dYccd      = measure[0].dYccd;
+  measureT[0].dRsys      = measure[0].dRsys;
+  return ;
+}
+
+// for the cases where we are not using a subset of the data, we still need to have a copy of these fields
+int populate_tiny_values (Catalog *catalog, DVOTinyValueMode mode) {
+
+  off_t i;
+
+  AverageTiny *averageT;
+  Average *average;
+
+  MeasureTiny *measureT;
+  Measure *measure;
+
+  if (mode & DVO_TV_AVERAGE) {
+    ALLOCATE (catalog[0].averageT, AverageTiny, catalog[0].Naverage);
+    average  = catalog[0].average;
+    averageT = catalog[0].averageT;
+
+    for (i = 0; i < catalog[0].Naverage; i++) {
+      CopyAverageToTiny (&catalog[0].averageT[i], &catalog[0].average[i]);
+    }
+  }
+
+  if (mode & DVO_TV_MEASURE) {
+    ALLOCATE (catalog[0].measureT, MeasureTiny, catalog[0].Nmeasure);
+    measure  = catalog[0].measure;
+    measureT = catalog[0].measureT;
+
+    for (i = 0; i < catalog[0].Nmeasure; i++) {
+      CopyMeasureToTiny (&catalog[0].measureT[i], &catalog[0].measure[i]);
+    }
+  }
+  return (TRUE);
+}
+
+int free_tiny_values (Catalog *catalog) {
+
+  if (catalog[0].averageT) free (catalog[0].averageT);
+  if (catalog[0].measureT) free (catalog[0].measureT);
+  return (TRUE);
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/flatcorr_io.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/flatcorr_io.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/flatcorr_io.c	(revision 34041)
@@ -0,0 +1,203 @@
+# include "dvo.h"
+
+// FlatCorrection -- description of a single flat-field correction image
+// a flat-field correction is defined for a specific camera (defined how?) or photcode (this makes some sense)
+// it has a period of validity
+
+/* The flat-field correction is defined by two FITS tables / structures.  The first
+ * (FlatCorrectionImage) describes the layout of the chips and which filters are being
+ * corrected.  The second lists the actual corrections for each of the cells
+ */
+
+FlatCorrectionTable *FlatCorrectionLoad (char *filename, int VERBOSE) {
+
+  FILE *f;
+  Header header;
+  Matrix matrix;
+  Header theader;
+  FTable ftable;
+  FlatCorrectionTable *flatcorrTable;
+  
+  f = fopen (filename, "r");
+  if (f == NULL) {
+    if (VERBOSE) fprintf (stderr, "can't find Flat Correction file %s\n", filename);
+    return (NULL);
+  }
+
+  /* load in table data */
+  ftable.header = &theader;
+  if (!gfits_fread_header (f, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read Flat Correction header\n");
+    fclose (f);
+    return (NULL);
+  }
+  if (!gfits_fread_matrix (f, &matrix, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read Flat Correction matrix\n");
+    gfits_free_header (&header);
+    fclose (f);
+    return (NULL);
+  }
+
+  ALLOCATE (flatcorrTable, FlatCorrectionTable, 1);
+
+  if (!gfits_fread_ftable (f, &ftable, "FLAT_CORRECTION_IMAGE")) {
+    if (VERBOSE) fprintf (stderr, "can't read Flat Correction table\n");
+    gfits_free_header (&header);
+    gfits_free_matrix (&matrix);
+    free (flatcorrTable);
+    fclose (f);
+    return (NULL);
+  }
+  flatcorrTable->image = gfits_table_get_FlatCorrectionImage (&ftable, &flatcorrTable->Nimage, NULL);
+  if (!flatcorrTable->image) {
+    fprintf (stderr, "ERROR: failed to read Flat Correction Images\n");
+    exit (2);
+  }
+  gfits_free_header (&theader);
+  // NOTE: do not free ftable or the data will be freed
+
+  if (!gfits_fread_ftable (f, &ftable, "FLAT_CORRECTION")) {
+    if (VERBOSE) fprintf (stderr, "can't read Flat Correction table\n");
+    gfits_free_header (&header);
+    gfits_free_matrix (&matrix);
+    fclose (f);
+    return (NULL);
+  }
+  flatcorrTable->corr = gfits_table_get_FlatCorrection (&ftable, &flatcorrTable->Ncorr, NULL);
+  if (!flatcorrTable->corr) {
+    fprintf (stderr, "ERROR: failed to read Flat Corrections\n");
+    exit (2);
+  }
+
+  gfits_free_header (&header);
+  gfits_free_matrix (&matrix);
+  gfits_free_header (&theader);
+  // NOTE: do not free ftable or the data will be freed
+
+  // convert the table format to map format:
+  FlatCorrectionInternal (flatcorrTable);
+
+  return (flatcorrTable);
+}
+
+int FlatCorrectionInternal(FlatCorrectionTable *flatcorrTable) {
+
+  int i, j;
+
+  // assert that the internal arrays are not yet allocated?
+
+  // generate the arrays to hold the corrections & initialize
+  ALLOCATE (flatcorrTable->offset, float **, flatcorrTable->Nimage);
+  for (i = 0; i < flatcorrTable->Nimage; i++) {
+    ALLOCATE (flatcorrTable->offset[i], float *, flatcorrTable->image[i].Nx);
+    for (j = 0; j < flatcorrTable->image[i].Nx; j++) {
+      ALLOCATE (flatcorrTable->offset[i][j], float, flatcorrTable->image[i].Ny);
+      memset (flatcorrTable->offset[i][j], 0.0, flatcorrTable->image[i].Ny*sizeof(float));
+    }
+  }
+
+  // create the lookup table (ID -> Seq)
+
+  // find the max value of ID
+  int MaxID = 0;
+  for (i = 0; i < flatcorrTable->Nimage; i++) {
+    MaxID = MAX(flatcorrTable->image[i].ID, MaxID);
+  }
+  MaxID ++; // we want the outer bound, not the last value
+
+  // generate the index and init values to -1
+  ALLOCATE (flatcorrTable->IDtoSeq, int, MaxID);
+  for (i = 0; i < MaxID; i++) {
+    flatcorrTable->IDtoSeq[i] = -1;
+  }
+
+  // assign the ID values for each image
+  for (i = 0; i < flatcorrTable->Nimage; i++) {
+    int ID = flatcorrTable->image[i].ID;
+    assert (flatcorrTable->IDtoSeq[ID] == -1);
+    flatcorrTable->IDtoSeq[ID] = i;
+  }
+
+  // assign the known specific correction values
+  for (i = 0; i < flatcorrTable->Ncorr; i++) {
+    int ID = flatcorrTable->corr[i].ID;
+    int x = flatcorrTable->corr[i].x;
+    int y = flatcorrTable->corr[i].y;
+    int seq = flatcorrTable->IDtoSeq[ID];
+    assert (seq != -1);
+
+    flatcorrTable->offset[seq][x][y] = flatcorrTable->corr[i].offset;      
+  }
+
+  return TRUE;
+}
+
+int FlatCorrectionSave (FlatCorrectionTable *flatcorrTable, char *filename) {
+
+  Header header;
+  Matrix matrix;
+  Header theaderImage;
+  FTable ftableImage;
+
+  Header theaderCorr;
+  FTable ftableCorr;
+  FILE *f;
+
+  FlatCorrectionImage *image;
+  FlatCorrection *corr;
+
+  // these output functions byteswap their buffers. make a copy for output
+  ALLOCATE (image, FlatCorrectionImage, flatcorrTable->Nimage);
+  memcpy (image, flatcorrTable->image, flatcorrTable->Nimage*sizeof(FlatCorrectionImage));
+
+  ALLOCATE (corr, FlatCorrection, flatcorrTable->Ncorr);
+  memcpy (corr, flatcorrTable->corr, flatcorrTable->Ncorr*sizeof(FlatCorrection));
+
+  /* make phu header (no matrix needed) */
+  gfits_init_header (&header);
+  header.extend = TRUE;
+  gfits_create_header (&header);
+  gfits_create_matrix (&header, &matrix);
+
+  ftableImage.header = &theaderImage;
+  gfits_table_set_FlatCorrectionImage (&ftableImage, image, flatcorrTable->Nimage);
+
+  ftableCorr.header = &theaderCorr;
+  gfits_table_set_FlatCorrection (&ftableCorr, corr, flatcorrTable->Ncorr);
+
+  f = fopen (filename, "w");
+  if (f == (FILE *) NULL) { 
+    fprintf (stderr, "cannot open %s for output\n", filename);
+    return (FALSE);
+  }
+  
+  gfits_fwrite_header  (f, &header);
+  gfits_fwrite_matrix  (f, &matrix);
+  gfits_fwrite_Theader (f, &theaderImage);
+  gfits_fwrite_table  (f, &ftableImage);
+  gfits_fwrite_Theader (f, &theaderCorr);
+  gfits_fwrite_table  (f, &ftableCorr);
+  fclose (f);
+
+  return (TRUE);
+}
+
+float FlatCorrectionOffset (FlatCorrectionTable *flatcorr, int ID, int X, int Y) {
+
+  if (!flatcorr) return 0.0;
+
+  // validate the flat_id (not out of range?)
+  int seq = flatcorr->IDtoSeq[ID];
+
+  // convert X,Y to Xbin, Ybin:
+  int Xbin = MAX(MIN(X * flatcorr->image[seq].Nx / flatcorr->image[seq].DX, flatcorr->image[seq].Nx - 1), 0);
+  int Ybin = MAX(MIN(Y * flatcorr->image[seq].Ny / flatcorr->image[seq].DY, flatcorr->image[seq].Ny - 1), 0);
+
+  // XXX warn if X,Y are out of range? not super important unless *way* out of range
+
+  float offset = flatcorr->offset[seq][Xbin][Ybin];
+  return offset;
+}
+
+// other needed operations:
+// * assign an image to a flatcorr (based on photcode and obs_date)
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/skyregion_gsc.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/skyregion_gsc.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/skyregion_gsc.c	(revision 34041)
@@ -91,4 +91,7 @@
   L0.regions[0].childS  =  0;
   L0.regions[0].childE  =  NDECBANDS;
+  L0.regions[0].hostFlags = 0;
+  L0.regions[0].hostID    = 0;
+  L0.regions[0].backupID  = 0;
   strcpy (L0.regions[0].name, "fullsky");
   if (DEBUG) SkyRegionPrint (&L0.regions[0]);
@@ -117,4 +120,7 @@
     L1.regions[i].child    = TRUE;
     L1.regions[i].table    = -1;
+    L1.regions[i].hostFlags = 0;
+    L1.regions[i].hostID    = 0;
+    L1.regions[i].backupID  = 0;
     strcpy (L1.regions[i].name, DecNames[i]);
     if (DEBUG) SkyRegionPrint (&L1.regions[i]);
@@ -152,4 +158,7 @@
   ALLOCATE (skytable[0].regions, SkyRegion, 1);
   skytable[0].Nregions = 0;
+
+  // define the host table filename
+  strcpy (skytable->hosts, "HostTable.dat");
 
   // L0, L1, L2, L3, L4 all have index ranges of 0 -> Nregions and parent values pointing
@@ -417,4 +426,7 @@
     L2[0].regions[Nr].childS   =  0;
     L2[0].regions[Nr].childE   =  0;
+    L2[0].regions[Nr].hostFlags = 0;
+    L2[0].regions[Nr].hostID    = 0;
+    L2[0].regions[Nr].backupID  = 0;
 
     /* define names for L2 regions */
@@ -464,4 +476,7 @@
     L3[0].regions[Nr].childS   =  0;
     L3[0].regions[Nr].childE   =  0;
+    L3[0].regions[Nr].hostFlags = 0;
+    L3[0].regions[Nr].hostID    = 0;
+    L3[0].regions[Nr].backupID  = 0;
 
     if (DEBUG >= 3) SkyRegionPrint (&L3[0].regions[Nr]);
@@ -514,4 +529,7 @@
       L4[0].regions[Nr].childS   =  0;
       L4[0].regions[Nr].childE   =  0;
+      L4[0].regions[Nr].hostFlags = 0;
+      L4[0].regions[Nr].hostID    = 0;
+      L4[0].regions[Nr].backupID  = 0;
 
       sprintf (name, "%s.%02d", L3[0].name, Nbox);
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/skyregion_io.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/skyregion_io.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/skyregion_io.c	(revision 34041)
@@ -39,4 +39,5 @@
 
   ALLOCATE (skytable, SkyTable, 1);
+  memset (skytable->hosts, 0, 80);
   skytable[0].regions = gfits_table_get_SkyRegion (&ftable, &skytable[0].Nregions, NULL);
   if (!skytable[0].regions) {
@@ -50,4 +51,28 @@
   }
   
+  // 2012.02.08 : I updated the schema for SkyTable.dat to add 3 fields by stealing the
+  // last 3 bytes of the 'name' field (going from 21 bytes to 18 bytes).  This was safe
+  // because no files had yet been defined with more than 16 bytes in the names, leave
+  // room for 1 more byte includig the EOF char.
+
+  // When we load old tables, we need to zero out the values of those 3 new fields (they
+  // may have garbage left over).  To distinguish old and new tables, I add the field
+  // 'HOSTS' to the PHU header (which also tells the location of the host table, if used).
+
+  int haveHosts = gfits_scan (&header, "HOSTS", "%s", 1, skytable->hosts);
+  if (!haveHosts) {
+    strcpy (skytable->hosts, "HostTable.dat");
+    for (i = 0; i < skytable[0].Nregions; i++) {
+      if (strlen(skytable[0].regions[i].name) > 17) {
+	fprintf (stderr, "WARNING : this skytable has some names longer than the adjusted size of 17 bytes.\n");
+	fprintf (stderr, "  This is not compatible with the current SkyTable definition\n");
+	exit (1);
+      }
+      skytable[0].regions[i].hostFlags = 0;
+      skytable[0].regions[i].hostID    = 0;
+      skytable[0].regions[i].backupID  = 0;
+    }
+  }
+
   gfits_free_header (&header);
   gfits_free_matrix (&matrix);
@@ -71,4 +96,5 @@
   gfits_create_header (&header);
   gfits_create_matrix (&header, &matrix);
+  gfits_print (&header, "HOSTS", "%s", 1, skytable->hosts);
 
   gfits_table_set_SkyRegion (&ftable, skytable[0].regions, skytable[0].Nregions);
@@ -91,10 +117,10 @@
 SkyTable *SkyTableLoadOptimal (char *catdir, char *skyfile, char *gscfile, int readwrite, int depth, int verbose) {
 
-  char filename[256];
+  char *filename;
   struct stat filestat;
   SkyTable *sky;
 
-  /* first option: CATDIR/SkyTable.fits */
-  sprintf (filename, "%s/SkyTable.fits", catdir);
+  /* first option: in CATDIR */
+  filename = SkyTableFilename (catdir);
   if (stat (filename, &filestat)) goto SKYFILE;
   if (!check_file_access (filename, FALSE, readwrite, verbose)) goto SKYFILE;
@@ -115,4 +141,5 @@
   if (sky == NULL) {
     fprintf (stderr, "error loading sky table\n");
+    free (filename);
     return (NULL);
   }
@@ -121,9 +148,12 @@
 
   /* create CATDIR copy */
-  sprintf (filename, "%s/SkyTable.fits", catdir);
   check_file_access (filename, FALSE, readwrite, verbose);
-  if (!SkyTableSave (sky, filename)) return NULL;
+  if (!SkyTableSave (sky, filename)) {
+    free (filename);
+    return NULL;
+  }
 
   gfits_convert_SkyRegion (sky[0].regions, sizeof (SkyTable), sky[0].Nregions);
+  free (filename);
   return (sky);
 
@@ -134,4 +164,5 @@
   if (gscfile == NULL) {
     fprintf (stderr, "error loading sky table from existing db (%s)\n", catdir);
+    free (filename);
     return (NULL);
   }
@@ -140,13 +171,17 @@
   if (sky == NULL) {
     fprintf (stderr, "error loading sky table\n");
+    free (filename);
     return (NULL);
   }
 
   /* create CATDIR copy */
-  sprintf (filename, "%s/SkyTable.fits", catdir);
   check_file_access (filename, FALSE, readwrite, verbose);
-  if (!SkyTableSave (sky, filename)) return NULL;
+  if (!SkyTableSave (sky, filename)) {
+    free (filename);
+    return NULL;
+  }
 
   gfits_convert_SkyRegion (sky[0].regions, sizeof (SkyRegion), sky[0].Nregions);
+  free (filename);
   return (sky);
 }
@@ -180,2 +215,13 @@
 }
 
+// given a CATDIR, return an allocated string with the full skytable name
+char *SkyTableFilename (char *catdir) {
+
+  if (!catdir) return NULL;
+  
+  char *skyfile;
+  ALLOCATE (skyfile, char, strlen(catdir) + strlen("/SkyTable.fits") + 1);
+  sprintf (skyfile, "%s/SkyTable.fits", catdir);
+
+  return skyfile;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/skyregion_ops.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/skyregion_ops.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libdvo/src/skyregion_ops.c	(revision 34041)
@@ -20,4 +20,5 @@
   list[0].Nregions = 0;
   list[0].ownElements = FALSE; // this list is only holding a view to the elements
+  strcpy (list[0].hosts, table[0].hosts);
 
   region = table[0].regions;
@@ -67,4 +68,5 @@
   list[0].Nregions = N;
   list[0].ownElements = FALSE; // this list is only holding a view to the elements
+  strcpy (list[0].hosts, table[0].hosts);
 
   region = table[0].regions;
@@ -102,4 +104,5 @@
   list[0].Nregions = N;
   list[0].ownElements = FALSE; // this list is only holding a view to the elements
+  strcpy (list[0].hosts, table[0].hosts);
 
   region = table[0].regions;
@@ -261,4 +264,5 @@
   ALLOCATE (list[0].filename, char *, NNEW);
   list[0].ownElements = FALSE; // this list is only holding a view to the elements
+  strcpy (list[0].hosts, table[0].hosts);
 
   region = table[0].regions;
@@ -326,4 +330,5 @@
   list[0].Nregions = 0;
   list[0].ownElements = FALSE; // this list is only holding a view to the elements
+  strcpy (list[0].hosts, inList[0].hosts);
 
   region = inList[0].regions;
@@ -403,4 +408,5 @@
   ALLOCATE (list[0].filename, char *, NNEW);
   list[0].ownElements = FALSE; // this list is only holding a view to the elements
+  strcpy (list[0].hosts, table[0].hosts);
 
   region = table[0].regions;
Index: branches/meh_branches/ppstack_test/Ohana/src/libfits/header/F_modify.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libfits/header/F_modify.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libfits/header/F_modify.c	(revision 34041)
@@ -70,5 +70,7 @@
   /* string value.  Quotes must be at least 18 chars apart */
   if (!strcmp (mode, "%s")) {
-    strncpy (data, va_arg (argp, char *), 68);
+    char *ptr = va_arg (argp, char *);
+    if (!ptr) goto invalid;
+    strncpy (data, ptr, 68);
     snprintf (string, 81, "%-8s= '%-18s' / %-s ", field, data, comment);
     goto found_it;
@@ -76,4 +78,6 @@
 
   /* failed to find mode */
+invalid:
+  va_end (argp);
   return (FALSE);
 
@@ -82,5 +86,4 @@
   va_end (argp);
   return (TRUE);
-
 }
 
@@ -143,5 +146,7 @@
   /* comment type of value.  */
   if (!strcmp (mode, "%S")) {
-    strncpy (data, va_arg (argp, char *), 71);
+    char *ptr = va_arg (argp, char *);
+    if (!ptr) goto invalid;
+    strncpy (data, ptr, 71);
     snprintf (string, 81, "%-8s %-71s", field, data);
   }  
@@ -157,5 +162,8 @@
 
     strncpy (data, qs, MAX (MIN (qe - qs, 71), 0));
-    strncpy (comment, va_arg (argp, char *), 80);
+
+    char *ptr = va_arg (argp, char *);
+    if (!ptr) goto invalid;
+    strncpy (comment, ptr, 80);
     gfits_pad_ending (comment, ' ', 82);  /* comment must contain spaces to the end */
     snprintf (string, 81, "%-8s= %s / %-s", field, data, comment);
@@ -167,4 +175,7 @@
   return (TRUE);
 
+invalid:
+  va_end (argp);
+  return (FALSE);
 }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/libfits/header/F_print.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libfits/header/F_print.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libfits/header/F_print.c	(revision 34041)
@@ -65,9 +65,14 @@
   /* string value.  Quotes must be at least 18 chars apart.  Longer lines will this should be fixed to allow arbitrary string lengths, up to 69 chars */
   if (!strcmp (mode, "%s")) {
-    strcpy (line, va_arg (argp, char *));
+    char *ptr = va_arg (argp, char *);
+    if (!ptr) goto invalid;
+    strcpy (line, ptr);
     line[68] = 0;
     snprintf (string, 81, "%-8s= '%-18s' / %46s ", field, line, blank);
     goto found_it;
   }
+
+invalid:
+  va_end (argp);
   return (FALSE);
 
@@ -76,5 +81,4 @@
   va_end (argp);
   return (TRUE);
-
 }
 
@@ -130,6 +134,8 @@
   if (!strcmp (mode, "%S")) {
     /* we are forcing the entry to be <= 69 char long */
-    strcpy (line, va_arg (argp, char *));
-    line[71] = 0;
+    char *ptr = va_arg (argp, char *);
+    if (!ptr) goto invalid;
+    bzero (line, 80);
+    strncpy (line, ptr, 71);
     snprintf (string, 81, "%-8s %-71s", field, line);
   }  
@@ -146,5 +152,5 @@
 
   /* can't write the comment in gfits_print - use gfits_modify */
-  if (!strcmp (mode, "%C")) return (FALSE);
+  if (!strcmp (mode, "%C")) goto invalid;
 
   strncpy (p, string, 80);
@@ -153,3 +159,6 @@
   return (TRUE);
 
+invalid:
+  va_end (argp);
+  return (FALSE);
 }
Index: branches/meh_branches/ppstack_test/Ohana/src/libfits/include/gfitsio.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libfits/include/gfitsio.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libfits/include/gfitsio.h	(revision 34041)
@@ -184,4 +184,5 @@
 int     gfits_get_bintable_column      PROTO((Header *header, FTable *table, char *label, void **data));
 int     gfits_get_bintable_column_type PROTO((Header *header, char *label, char *type, int *Nval));
+int     gfits_get_bintable_column_type_by_N  PROTO((Header *header, int N, char *type, int *Nval));
 void   *gfits_get_bintable_column_data PROTO((Header *header, FTable *table, char *label, char *type, off_t *Nrow, int *Ncol));
 int     gfits_get_table_column         PROTO((Header *header, FTable *table, char *label, void **data));
@@ -190,4 +191,5 @@
 int     gfits_read_table               PROTO((char *filename, FTable *ftable)); 
 int     gfits_set_bintable_column      PROTO((Header *header, FTable *table, char *label, void *data, off_t Nrow));
+int     gfits_set_bintable_column_reformat PROTO((Header *header, FTable *table, char *label, char *intype, void *data, off_t Nrow));
 int     gfits_set_table_column         PROTO((Header *header, FTable *table, char *label, void *data, off_t Nrow));
 int     gfits_table_column             PROTO((FTable *ftable, char *field, char *mode,...)) OHANA_FORMAT(printf, 3, 4);
Index: branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_compress_M.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_compress_M.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_compress_M.c	(revision 34041)
@@ -424,8 +424,9 @@
 int gfits_byteswap_zdata (char *zdata, int Nzdata, int pixsize) {
 
+# define DOSWAP(A,B) { char tmp = A; A = B; B = tmp; }
+
 # ifdef BYTE_SWAP
 
   int i;
-  char tmp;
 
   switch (pixsize) {
@@ -435,7 +436,5 @@
     case 2:
       for (i = 0; i < 2*Nzdata; i+=2) {
-	tmp = zdata[i];
-	zdata[i] = zdata[i+1];
-	zdata[i+1] = tmp;
+	DOSWAP (zdata[i+0], zdata[i+1]);
       }
       break;
@@ -443,10 +442,6 @@
     case 4:
       for (i = 0; i < 4*Nzdata; i+=4) {
-	tmp = zdata[i+1];
-	zdata[i+1] = zdata[i+2];
-	zdata[i+2] = tmp;
-	tmp = zdata[i];
-	zdata[i] = zdata[i+3];
-	zdata[i+3] = tmp;
+	DOSWAP (zdata[i+0], zdata[i+3]);
+	DOSWAP (zdata[i+1], zdata[i+2]);
       }
       break;
@@ -454,16 +449,8 @@
     case 8:
       for (i = 0; i < 8*Nzdata; i+=8) {
-	tmp = zdata[i+0];
-	zdata[i+0] = zdata[i+7];
-	zdata[i+7] = tmp;
-	tmp = zdata[i+1];
-	zdata[i+1] = zdata[i+6];
-	zdata[i+6] = tmp;
-	tmp = zdata[i+2];
-	zdata[i+2] = zdata[i+5];
-	zdata[i+5] = tmp;
-	tmp = zdata[i+3];
-	zdata[i+3] = zdata[i+4];
-	zdata[i+4] = tmp;
+	DOSWAP (zdata[i+0], zdata[i+7]);
+	DOSWAP (zdata[i+1], zdata[i+6]);
+	DOSWAP (zdata[i+2], zdata[i+5]);
+	DOSWAP (zdata[i+3], zdata[i+4]);
       }
       break;
Index: branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_load_M.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_load_M.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_load_M.c	(revision 34041)
@@ -38,8 +38,10 @@
   }
 
+# define DOSWAP(A,B) { char tmp = A; A = B; B = tmp; }
+
 # ifdef BYTE_SWAP  
  {
   int perpix;
-  unsigned char *byte0, *byte1, *byte2, *byte3, *byte4, *byte5, *byte6, *byte7, tmp;
+  unsigned char *byte0, *byte1, *byte2, *byte3, *byte4, *byte5, *byte6, *byte7;
 
   perpix = abs(header[0].bitpix) / 8;
@@ -55,33 +57,19 @@
     if (perpix == 2) {
       for (i = 0; i < nbytes; i+=2, byte0 += 2, byte1 += 2) {
-	tmp = *byte0;
-	*byte0 = *byte1;
-	*byte1 = tmp;
+	DOSWAP(*byte0, *byte1);
       }
     }
     if (perpix == 4) {
       for (i = 0; i < nbytes; i+=4, byte0 += 4, byte1 += 4, byte2 += 4, byte3 += 4) {
-	tmp = *byte0;
-	*byte0 = *byte3;
-	*byte3 = tmp;
-	tmp = *byte1;
-	*byte1 = *byte2;
-	*byte2 = tmp;
+	DOSWAP (*byte0, *byte3);
+	DOSWAP (*byte1, *byte2);
       }
     }
     if (perpix == 8) {
       for (i = 0; i < nbytes; i+=8, byte0 += 8, byte1 += 8, byte2 += 8, byte3 += 8, byte4 += 8, byte5 += 8, byte6 += 8, byte7 += 8) {
-	tmp = *byte0;
-	*byte0 = *byte7;
-	*byte7 = tmp;
-	tmp = *byte1;
-	*byte1 = *byte6;
-	*byte6 = tmp;
-	tmp = *byte1;
-	*byte2 = *byte5;
-	*byte5 = tmp;
-	tmp = *byte1;
-	*byte3 = *byte4;
-	*byte4 = tmp;
+	DOSWAP (*byte0, *byte7);
+	DOSWAP (*byte1, *byte6);
+	DOSWAP (*byte2, *byte5);
+	DOSWAP (*byte3, *byte4);
       }
     }
Index: branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_read_portion.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_read_portion.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_read_portion.c	(revision 34041)
@@ -52,10 +52,12 @@
   fclose (f);
 
+# define DOSWAP(A,B) { char tmp = A; A = B; B = tmp; }
+
 # ifdef BYTE_SWAP  
   {
     off_t i;
     int perpix;
-    unsigned char *byte0, *byte1, *byte2, *byte3, *byte4, *byte5, *byte6, *byte7, ctmp;
-
+    unsigned char *byte0, *byte1, *byte2, *byte3, *byte4, *byte5, *byte6, *byte7;
+    
     perpix = abs(header.bitpix) / 8;
     if (perpix > 1) {
@@ -70,33 +72,19 @@
       if (perpix == 2) {
 	for (i = 0; i < nbytes; i+=2, byte0 += 2, byte1 += 2) {
-	  ctmp = *byte0;
-	  *byte0 = *byte1;
-	  *byte1 = ctmp;
+	  DOSWAP(*byte0, *byte1);
 	}
       }
       if (perpix == 4) {
 	for (i = 0; i < nbytes; i+=4, byte0 += 4, byte1 += 4, byte2 += 4, byte3 += 4) {
-	  ctmp = *byte0;
-	  *byte0 = *byte3;
-	  *byte3 = ctmp;
-	  ctmp = *byte1;
-	  *byte1 = *byte2;
-	  *byte2 = ctmp;
+	  DOSWAP (*byte0, *byte3);
+	  DOSWAP (*byte1, *byte2);
 	}
       }
       if (perpix == 8) {
 	for (i = 0; i < nbytes; i+=8, byte0 += 8, byte1 += 8, byte2 += 8, byte3 += 8, byte4 += 8, byte5 += 8, byte6 += 8, byte7 += 8) {
-	  ctmp = *byte0;
-	  *byte0 = *byte7;
-	  *byte7 = ctmp;
-	  ctmp = *byte1;
-	  *byte1 = *byte6;
-	  *byte6 = ctmp;
-	  ctmp = *byte1;
-	  *byte2 = *byte5;
-	  *byte5 = ctmp;
-	  ctmp = *byte1;
-	  *byte3 = *byte4;
-	  *byte4 = ctmp;
+	  DOSWAP (*byte0, *byte7);
+	  DOSWAP (*byte1, *byte6);
+	  DOSWAP (*byte2, *byte5);
+	  DOSWAP (*byte3, *byte4);
 	}
       }
Index: branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_read_segment.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_read_segment.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_read_segment.c	(revision 34041)
@@ -95,7 +95,9 @@
   matrix[0].datasize = Nbytes;
 
+# define DOSWAP(A,B) { char tmp = A; A = B; B = tmp; }
+
 # ifdef BYTE_SWAP  
  {
-  unsigned char *byte0, *byte1, *byte2, *byte3, *byte4, *byte5, *byte6, *byte7, ctmp;
+  unsigned char *byte0, *byte1, *byte2, *byte3, *byte4, *byte5, *byte6, *byte7;
   int perpix;
 
@@ -112,33 +114,19 @@
     if (perpix == 2) {
       for (i = 0; i < nbytes; i+=2, byte0 += 2, byte1 += 2) {
-	ctmp = *byte0;
-	*byte0 = *byte1;
-	*byte1 = ctmp;
+	DOSWAP(*byte0, *byte1);
       }
     }
     if (perpix == 4) {
       for (i = 0; i < nbytes; i+=4, byte0 += 4, byte1 += 4, byte2 += 4, byte3 += 4) {
-	ctmp = *byte0;
-	*byte0 = *byte3;
-	*byte3 = ctmp;
-	ctmp = *byte1;
-	*byte1 = *byte2;
-	*byte2 = ctmp;
+	DOSWAP (*byte0, *byte3);
+	DOSWAP (*byte1, *byte2);
       }
     }
     if (perpix == 8) {
       for (i = 0; i < nbytes; i+=8, byte0 += 8, byte1 += 8, byte2 += 8, byte3 += 8, byte4 += 8, byte5 += 8, byte6 += 8, byte7 += 8) {
-	ctmp = *byte0;
-	*byte0 = *byte7;
-	*byte7 = ctmp;
-	ctmp = *byte1;
-	*byte1 = *byte6;
-	*byte6 = ctmp;
-	ctmp = *byte1;
-	*byte2 = *byte5;
-	*byte5 = ctmp;
-	ctmp = *byte1;
-	*byte3 = *byte4;
-	*byte4 = ctmp;
+	DOSWAP (*byte0, *byte7);
+	DOSWAP (*byte1, *byte6);
+	DOSWAP (*byte2, *byte5);
+	DOSWAP (*byte3, *byte4);
       }
     }
Index: branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_write_M.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_write_M.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libfits/matrix/F_write_M.c	(revision 34041)
@@ -36,9 +36,11 @@
     nbytes = FT_RECORD_SIZE * ((off_t) (matrix[0].datasize / FT_RECORD_SIZE));
 
+# define DOSWAP(A,B) { char tmp = A; A = B; B = tmp; }
+
   /* this is a bit cumbersome: swap all words, write out file, then swap back... */
 # ifdef BYTE_SWAP  
   { 
     off_t i;
-    unsigned char *byte0, *byte1, *byte2, *byte3, *byte4, *byte5, *byte6, *byte7, tmp;
+    unsigned char *byte0, *byte1, *byte2, *byte3, *byte4, *byte5, *byte6, *byte7;
     int perpix;
 
@@ -55,33 +57,19 @@
       if (perpix == 2) {
 	for (i = 0; i < nbytes; i+=2, byte0 += 2, byte1 += 2) {
-	  tmp = *byte0;
-	  *byte0 = *byte1;
-	  *byte1 = tmp;
+	  DOSWAP(*byte0, *byte1);
 	}
       }
       if (perpix == 4) {
 	for (i = 0; i < nbytes; i+=4, byte0 += 4, byte1 += 4, byte2 += 4, byte3 += 4) {
-	  tmp = *byte0;
-	  *byte0 = *byte3;
-	  *byte3 = tmp;
-	  tmp = *byte1;
-	  *byte1 = *byte2;
-	  *byte2 = tmp;
+	  DOSWAP (*byte0, *byte3);
+	  DOSWAP (*byte1, *byte2);
 	}
       }
       if (perpix == 8) {
 	for (i = 0; i < nbytes; i+=8, byte0 += 8, byte1 += 8, byte2 += 8, byte3 += 8, byte4 += 8, byte5 += 8, byte6 += 8, byte7 += 8) {
-	  tmp = *byte0;
-	  *byte0 = *byte7;
-	  *byte7 = tmp;
-	  tmp = *byte1;
-	  *byte1 = *byte6;
-	  *byte6 = tmp;
-	  tmp = *byte1;
-	  *byte2 = *byte5;
-	  *byte5 = tmp;
-	  tmp = *byte1;
-	  *byte3 = *byte4;
-	  *byte4 = tmp;
+	  DOSWAP (*byte0, *byte7);
+	  DOSWAP (*byte1, *byte6);
+	  DOSWAP (*byte2, *byte5);
+	  DOSWAP (*byte3, *byte4);
 	}
       }
@@ -98,5 +86,5 @@
   {
     off_t i;
-    unsigned char *byte0, *byte1, *byte2, *byte3, *byte4, *byte5, *byte6, *byte7, tmp;
+    unsigned char *byte0, *byte1, *byte2, *byte3, *byte4, *byte5, *byte6, *byte7;
     int perpix;
 
@@ -113,33 +101,19 @@
       if (perpix == 2) {
 	for (i = 0; i < nbytes; i+=2, byte0 += 2, byte1 += 2) {
-	  tmp = *byte0;
-	  *byte0 = *byte1;
-	  *byte1 = tmp;
+	  DOSWAP(*byte0, *byte1);
 	}
       }
       if (perpix == 4) {
 	for (i = 0; i < nbytes; i+=4, byte0 += 4, byte1 += 4, byte2 += 4, byte3 += 4) {
-	  tmp = *byte0;
-	  *byte0 = *byte3;
-	  *byte3 = tmp;
-	  tmp = *byte1;
-	  *byte1 = *byte2;
-	  *byte2 = tmp;
+	  DOSWAP (*byte0, *byte3);
+	  DOSWAP (*byte1, *byte2);
 	}
       }
       if (perpix == 8) {
 	for (i = 0; i < nbytes; i+=8, byte0 += 8, byte1 += 8, byte2 += 8, byte3 += 8, byte4 += 8, byte5 += 8, byte6 += 8, byte7 += 8) {
-	  tmp = *byte0;
-	  *byte0 = *byte7;
-	  *byte7 = tmp;
-	  tmp = *byte1;
-	  *byte1 = *byte6;
-	  *byte6 = tmp;
-	  tmp = *byte1;
-	  *byte2 = *byte5;
-	  *byte5 = tmp;
-	  tmp = *byte1;
-	  *byte3 = *byte4;
-	  *byte4 = tmp;
+	  DOSWAP (*byte0, *byte7);
+	  DOSWAP (*byte1, *byte6);
+	  DOSWAP (*byte2, *byte5);
+	  DOSWAP (*byte3, *byte4);
 	}
       }
Index: branches/meh_branches/ppstack_test/Ohana/src/libfits/table/F_define_column.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libfits/table/F_define_column.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libfits/table/F_define_column.c	(revision 34041)
@@ -4,4 +4,7 @@
 /***********************/
 int gfits_define_bintable_column (Header *header, char *format, char *label, char *comment, char *unit, double bscale, double bzero) {
+
+  assert (label);
+  assert (format);
 
   off_t Naxis1;
Index: branches/meh_branches/ppstack_test/Ohana/src/libfits/table/F_get_column.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libfits/table/F_get_column.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libfits/table/F_get_column.c	(revision 34041)
@@ -126,8 +126,22 @@
 
 /***********************/
+int gfits_get_bintable_column_type_by_N (Header *header, int N, char *type, int *Nval) {
+
+  int Nbytes;
+  char field[80], format[80];
+
+  assert (N > 0);
+
+  sprintf (field, "TFORM%d", N);
+  if (!gfits_scan (header, field, "%s", 1, format)) return FALSE;
+  if (!gfits_bintable_format (format, type, Nval, &Nbytes)) return (FALSE);
+  return (TRUE);
+}
+
+/***********************/
 int gfits_get_bintable_column_type (Header *header, char *label, char *type, int *Nval) {
 
-  int i, N, Nfields, Nbytes;
-  char tlabel[80], field[80], format[80];
+  int i, N, Nfields;
+  char tlabel[80], field[80];
 
   if (label == (char *) NULL) return (FALSE);
@@ -144,8 +158,5 @@
   N = i - 1;
 
-  sprintf (field, "TFORM%d", N);
-  gfits_scan (header, field, "%s", 1, format);
-
-  if (!gfits_bintable_format (format, type, Nval, &Nbytes)) return (FALSE);
+  if (!gfits_get_bintable_column_type_by_N (header, N, type, Nval)) return FALSE;
   return (TRUE);
 }
Index: branches/meh_branches/ppstack_test/Ohana/src/libfits/table/F_set_column.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libfits/table/F_set_column.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libfits/table/F_set_column.c	(revision 34041)
@@ -40,7 +40,11 @@
   /* interpret format */
   sprintf (field, "TSCAL%d", N);
-  gfits_scan (header, field, "%lf", 1, &Bscale);
+  if (!gfits_scan (header, field, "%lf", 1, &Bscale)) {
+    Bscale = 1.0;
+  }
   sprintf (field, "TZERO%d", N);
-  gfits_scan (header, field, "%lf", 1, &Bzero);
+  if (!gfits_scan (header, field, "%lf", 1, &Bzero)) {
+    Bzero = 0.0;
+  }
   sprintf (field, "TFORM%d", N);
   gfits_scan (header, field, "%s", 1, format);
@@ -126,4 +130,308 @@
   for (i = 0; i < Nrow; i++, Pout += Nx, Pin += Nval*Nbytes) {
     memcpy (Pout, Pin, Nval*Nbytes);
+  }
+
+  free (array);
+  return (TRUE);
+}
+
+/***********************/
+int gfits_set_bintable_column_reformat (Header *header, FTable *table, char *label, char *intype, void *data, off_t Nrow) {
+
+  off_t Nx, Ny, nbytes;
+  int i, N, Nfields;
+  int Nval, NbytesOut, Nstart, Nv, Nb;
+  char tlabel[80], field[80], format[80], outtype[16], tmpline[16];
+  char *Pin, *Pout, *array;
+  double Bscale, Bzero;
+
+  if (label == (char *) NULL) return (FALSE);
+  if (label[0] == 0) return (FALSE);
+
+  /* find label in header */
+  tlabel[0] = 0;
+  gfits_scan (header, "TFIELDS", "%d", 1, &Nfields);
+  for (i = 1; strcasecmp (label, tlabel) && (i < Nfields + 1); i++) {
+    sprintf (field, "TTYPE%d", i);
+    gfits_scan (header, field, "%s", 1, tlabel);
+  }
+  if (strcasecmp (label, tlabel)) return (FALSE);
+  N = i - 1;
+
+  /* interpret format */
+  sprintf (field, "TSCAL%d", N);
+  if (!gfits_scan (header, field, "%lf", 1, &Bscale)) {
+    Bscale = 1.0;
+  }
+  sprintf (field, "TZERO%d", N);
+  if (!gfits_scan (header, field, "%lf", 1, &Bzero)) {
+    Bzero = 0.0;
+  }
+  sprintf (field, "TFORM%d", N);
+  gfits_scan (header, field, "%s", 1, format);
+
+  if (!gfits_bintable_format (format, outtype, &Nval, &NbytesOut)) return (FALSE);
+  
+  /* check existing table dimensions */
+  gfits_scan (header, "NAXIS1", OFF_T_FMT, 1,  &Nx);
+  gfits_scan (header, "NAXIS2", OFF_T_FMT, 1,  &Ny);
+  if (Ny == 0) { 
+    Ny = Nrow;
+    header[0].Naxis[1] = Ny;
+    gfits_modify (header, "NAXIS2", OFF_T_FMT, 1,  Ny);
+
+    nbytes = gfits_data_size (header);
+    REALLOCATE (table[0].buffer, char, MAX (nbytes, 1));
+    bzero (table[0].buffer, nbytes);
+    table[0].datasize = nbytes;
+  }
+  if (Ny != Nrow) return (FALSE);
+
+  /* scan columns to find insert point */
+  Nstart = 0;
+  for (i = 1; i < N; i++) {
+    sprintf (field, "TFORM%d", i);
+    gfits_scan (header, field, "%s", 1, format);
+    gfits_bintable_format (format, tmpline, &Nv, &Nb);
+    Nstart += Nv*Nb;
+  }
+
+  /* make duplicate of data with correct type
+     byte swap and Bzero/Bscale */
+  ALLOCATE (array, char, NbytesOut*Nval*Nrow);
+  Pin = data;
+  Pout = array;
+
+  /** input == char **/
+  if (!strcmp (outtype, "char") && !strcmp (intype, "char")) {
+    int NbytesIn = 1;
+    for (i = 0; i < Nval*Nrow; i++, Pin+=NbytesIn, Pout+=NbytesOut) {
+      *(char *)Pout = (*(char *)Pin - Bzero) / Bscale;
+    }
+  }
+  if (!strcmp (outtype, "short") && !strcmp (intype, "char")) {
+    int NbytesIn = 1;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(short *)Pout = (*(char *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_BYTE;
+# endif
+    }  
+  }
+  if (!strcmp (outtype, "int") && !strcmp (intype, "char")) {
+    int NbytesIn = 1;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(int *)Pout = (*(char *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_WORD;
+# endif
+    }
+  }
+  if (!strcmp (outtype, "float") && !strcmp (intype, "char")) {
+    int NbytesIn = 1;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(float *)Pout = (*(char *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_WORD;
+# endif
+    }
+  }
+  if (!strcmp (outtype, "double") && !strcmp (intype, "char")) {
+    int NbytesIn = 1;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(double *)Pout = (*(char *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_DBLE;
+# endif
+    }
+  }
+
+  /** input == short **/
+  if (!strcmp (outtype, "char") && !strcmp (intype, "short")) {
+    int NbytesIn = 2;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(char *)Pout = (*(short *)Pin - Bzero) / Bscale;
+    }
+  }
+  if (!strcmp (outtype, "short") && !strcmp (intype, "short")) {
+    int NbytesIn = 2;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(short *)Pout = (*(short *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_BYTE;
+# endif
+    }  
+  }
+  if (!strcmp (outtype, "int") && !strcmp (intype, "short")) {
+    int NbytesIn = 2;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(int *)Pout = (*(short *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_WORD;
+# endif
+    }
+  }
+  if (!strcmp (outtype, "float") && !strcmp (intype, "short")) {
+    int NbytesIn = 2;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(float *)Pout = (*(short *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_WORD;
+# endif
+    }
+  }
+  if (!strcmp (outtype, "double") && !strcmp (intype, "short")) {
+    int NbytesIn = 2;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(double *)Pout = (*(short *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_DBLE;
+# endif
+    }
+  }
+
+  /** input == int **/
+  if (!strcmp (outtype, "char") && !strcmp (intype, "int")) {
+    int NbytesIn = 4;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(char *)Pout = (*(int *)Pin - Bzero) / Bscale;
+    }
+  }
+  if (!strcmp (outtype, "short") && !strcmp (intype, "int")) {
+    int NbytesIn = 4;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(short *)Pout = (*(int *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_BYTE;
+# endif
+    }  
+  }
+  if (!strcmp (outtype, "int") && !strcmp (intype, "int")) {
+    int NbytesIn = 4;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(int *)Pout = (*(int *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_WORD;
+# endif
+    }
+  }
+  if (!strcmp (outtype, "float") && !strcmp (intype, "int")) {
+    int NbytesIn = 4;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(float *)Pout = (*(int *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_WORD;
+# endif
+    }
+  }
+  if (!strcmp (outtype, "double") && !strcmp (intype, "int")) {
+    int NbytesIn = 4;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(double *)Pout = (*(int *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_DBLE;
+# endif
+    }
+  }
+
+  /** input == float **/
+  if (!strcmp (outtype, "char") && !strcmp (intype, "float")) {
+    int NbytesIn = 4;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(char *)Pout = (*(float *)Pin - Bzero) / Bscale;
+    }
+  }
+  if (!strcmp (outtype, "short") && !strcmp (intype, "float")) {
+    int NbytesIn = 4;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(short *)Pout = (*(float *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_BYTE;
+# endif
+    }  
+  }
+  if (!strcmp (outtype, "int") && !strcmp (intype, "float")) {
+    int NbytesIn = 4;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(int *)Pout = (*(float *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_WORD;
+# endif
+    }
+  }
+  if (!strcmp (outtype, "float") && !strcmp (intype, "float")) {
+    int NbytesIn = 4;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(float *)Pout = (*(float *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_WORD;
+# endif
+    }
+  }
+  if (!strcmp (outtype, "double") && !strcmp (intype, "float")) {
+    int NbytesIn = 4;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(double *)Pout = (*(float *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_DBLE;
+# endif
+    }
+  }
+
+  /** input == double **/
+  if (!strcmp (outtype, "char") && !strcmp (intype, "double")) {
+    int NbytesIn = 8;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(char *)Pout = (*(double *)Pin - Bzero) / Bscale;
+    }
+  }
+  if (!strcmp (outtype, "short") && !strcmp (intype, "double")) {
+    int NbytesIn = 8;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(short *)Pout = (*(double *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_BYTE;
+# endif
+    }  
+  }
+  if (!strcmp (outtype, "int") && !strcmp (intype, "double")) {
+    int NbytesIn = 8;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(int *)Pout = (*(double *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_WORD;
+# endif
+    }
+  }
+  if (!strcmp (outtype, "float") && !strcmp (intype, "double")) {
+    int NbytesIn = 8;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(float *)Pout = (*(double *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_WORD;
+# endif
+    }
+  }
+  if (!strcmp (outtype, "double") && !strcmp (intype, "double")) {
+    int NbytesIn = 8;
+    for (i = 0; i < Nval*Nrow; i++, Pin += NbytesIn, Pout += NbytesOut) {
+      *(double *)Pout = (*(double *)Pin - Bzero) / Bscale;
+# ifdef BYTE_SWAP
+      SWAP_DBLE;
+# endif
+    }
+  }
+
+  /* check array space */
+  if (Nx*Ny < Nx*(Nrow - 1) + Nstart + Nval*NbytesOut) {
+    fprintf (stderr, "mismatch in array sizes\n");
+    return (FALSE);
+  }
+
+  /* insert bytes from array into appropriate section of buffer */
+  Pout = table[0].buffer + Nstart;
+  Pin  = array;
+  for (i = 0; i < Nrow; i++, Pout += Nx, Pin += Nval*NbytesOut) {
+    memcpy (Pout, Pin, Nval*NbytesOut);
   }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/libkapa/src/bDrawFuncs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libkapa/src/bDrawFuncs.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libkapa/src/bDrawFuncs.c	(revision 34041)
@@ -1,4 +1,3 @@
 # include <kapa_internal.h>
-# define myAssert(LOGIC,MSG) { if (!(LOGIC)) { fprintf (stderr, "%s\n", MSG); abort (); } }
 
 // move these to the bDrawBuffer type
@@ -78,10 +77,9 @@
 
 void bDrawSetStyle (bDrawBuffer *buffer, bDrawColor color, int lw, int lt) {
-  if (color >= 0) {
-    buffer->bColor = color;
-    buffer->bColor_R = buffer->palette[color].red;
-    buffer->bColor_G = buffer->palette[color].green;
-    buffer->bColor_B = buffer->palette[color].blue;
-  }
+  buffer->bColor = color;
+  buffer->bColor_R = buffer->palette[color].red;
+  buffer->bColor_G = buffer->palette[color].green;
+  buffer->bColor_B = buffer->palette[color].blue;
+
   buffer->bWeight = lw;
   buffer->bType = lt;
Index: branches/meh_branches/ppstack_test/Ohana/src/libohana/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libohana/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libohana/Makefile	(revision 34041)
@@ -38,4 +38,6 @@
 $(SRC)/Fread.$(ARCH).o		 \
 $(SRC)/IOBufferOps.$(ARCH).o	 \
+$(SRC)/memstr.$(ARCH).o	 \
+$(SRC)/rconnect.$(ARCH).o	 \
 $(SRC)/CommOps.$(ARCH).o	 \
 $(SRC)/isolate_elements.$(ARCH).o	 \
Index: branches/meh_branches/ppstack_test/Ohana/src/libohana/include/ohana.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libohana/include/ohana.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libohana/include/ohana.h	(revision 34041)
@@ -128,5 +128,5 @@
 # endif
 
-# if defined(darwin_x86) || defined(_DARWIN_C_SOURCE)
+# if defined(darwin_x86) || defined(_DARWIN_C_SOURCE) || defined(__APPLE__)
 # define BYTE_SWAP
 # endif
@@ -164,4 +164,8 @@
 // # endif
 # ifdef darwin_x86
+# define OFF_T_FMT "%lld"
+# endif
+// for mac os x 10.7 (lion): they don't use darwin, and i want to make sure it grabs for 10.7 and 64 bit (are they all 64 bit?)
+# if defined(__APPLE__) && defined(x86_64)
 # define OFF_T_FMT "%lld"
 # endif
@@ -215,4 +219,7 @@
 */
 # define OHANA_WHITESPACE(c)(((c) == 0x09) || ((c) == 0x0a) || ((c) == 0x0b) || ((c) == 0x0b) || ((c) == 0x0c) || ((c) == 0x0d) || ((c) == 0x20))
+# define OHANA_ASSERT(LOGIC,...) { if (!(LOGIC)) { fprintf (stderr, __VA_ARGS__); abort(); } }
+# define myAssert(LOGIC,...) { if (!(LOGIC)) { fprintf (stderr, __VA_ARGS__); abort(); } }
+# define myAbort(MSG) { fprintf (stderr, "%s\n", MSG); abort(); }
 
 // sorting is now defined as a macro call
@@ -236,6 +243,11 @@
 char   *strncreate             PROTO((char *string, int n));
 int     scan_line              PROTO((FILE *f, char *line)); 
+int     scan_line_maxlen       PROTO((FILE *f, char *line, int maxlen)); 
 int     dparse                 PROTO((double *X, int NX, char *line));
 int     dparse_csv             PROTO((double *X, int NX, char *line));
+int     iparse                 PROTO((int *X, int NX, char *line));
+int     iparse_csv             PROTO((int *X, int NX, char *line));
+int     tparse                 PROTO((time_t *X, int NX, char *line));
+int     tparse_csv             PROTO((time_t *X, int NX, char *line));
 int     fparse                 PROTO((float *X, int NX, char *line));
 int     get_argument           PROTO((int argc, char **argv, char *arg));
@@ -256,4 +268,5 @@
 int     check_dir_access       PROTO((char *path, int verbose));
 int     check_file_exec        PROTO((char *filename));
+char   *abspath                PROTO((char *oldpath, int maxlength));
 
 /* in glockfile.c */
@@ -323,4 +336,7 @@
 off_t   Fwrite                 PROTO((void *ptr, off_t size, off_t nitems, FILE *f, char *type));
 
+char   *memstr                 PROTO((char *m1, char *m2, int n));
+int     write_fmt              PROTO((int fd, char *format, ...));
+
 char   **isolate_elements      PROTO((int argc, char **argv, int *nstack));
 
@@ -332,4 +348,15 @@
 // gprint gets a stub implementation in libohana. opihi implements the real one.
 int    gprint (gpDest dest, char *format, ...);
+
+// rconnect is used to run remote programs with a pipe for communication
+typedef enum {
+  RCONNECT_ERR_NONE    = 0,
+  RCONNECT_ERR_EXEC    = 1,
+  RCONNECT_ERR_PIPE    = 2,
+  RCONNECT_ERR_CONNECT = 3,
+} RconnectErrors;
+
+void rconnect_set_timeout (int timeout);
+int rconnect (char *command, char *hostname, char *shell, int *stdio, int *errorInfo, int doHandshake);
 
 /*
Index: branches/meh_branches/ppstack_test/Ohana/src/libohana/include/ohana_allocate.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libohana/include/ohana_allocate.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libohana/include/ohana_allocate.h	(revision 34041)
@@ -12,5 +12,12 @@
 OhanaMemstats ohana_memstats (int mode);
 
+/* EAM 2012.01.18 : comparative tests on my desktop 'pikake' (Intel Core 2 Quad) show a
+ * modest speed loss when using the Ohana memory managment stuff.  the tests runs a ~1.2M
+ * allocations followed by the same number of frees.  with the Ohana memory code, these
+ * ran at ~0.69 sec per block; without the time was ~0.56 sec per block
+ */
+
 /* default is to use basic system memory functions */
+
 # ifdef OHANA_MEMORY
 
Index: branches/meh_branches/ppstack_test/Ohana/src/libohana/include/ohana_sort.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libohana/include/ohana_sort.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libohana/include/ohana_sort.h	(revision 34041)
@@ -73,4 +73,6 @@
 void fsortthree (float *X, float *Y, float *Z, int N);
 void dsortthree (double *X, double *Y, double *Z, int N);
+void fsortfour (float *X, float *Y, float *Z, float *W, int N);
+void dsortfour (double *X, double *Y, double *Z, double *W, int N);
 
 #endif
Index: branches/meh_branches/ppstack_test/Ohana/src/libohana/src/findexec.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libohana/src/findexec.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libohana/src/findexec.c	(revision 34041)
@@ -404,2 +404,29 @@
   return TRUE;
 }
+
+// ohana-based equivalent to 'realpath'.  realpath does not guarantee an absolute path (eg on Solaris), 
+// just a 'cannonical path'.  I don't care about resolving out links, just ensuring an absolute path
+// also, realpath is a bit ambiguous on the maxlength argument
+char *abspath (char *oldpath, int maxlength) {
+
+  if (!oldpath) return NULL;
+
+  if (oldpath[0] == '/') {
+    char *newpath = strcreate (oldpath);
+    return newpath;
+  }
+
+  char *cwd  = getcwd(NULL, maxlength);
+  if (cwd == NULL) {
+    // XXX need an error reporting function...
+    fprintf (stderr, "error getting cwd (longer than %d chars?)\n", maxlength);
+    return NULL;
+  }
+
+  char *newpath = NULL;
+
+  int Nbytes = strlen(cwd) + strlen(oldpath) + 2;
+  ALLOCATE (newpath, char, Nbytes);
+  snprintf (newpath, Nbytes, "%s/%s", cwd, oldpath);
+  return newpath;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/libohana/src/memstr.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libohana/src/memstr.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libohana/src/memstr.c	(revision 34041)
@@ -0,0 +1,35 @@
+# include "ohana.h"
+
+/* memstr returns a view, not an allocated string : don't free */
+/* returns pointer to start of m2 in m1, or NULL if failure */ 
+char *memstr (char *m1, char *m2, int n) {
+
+  int i, N;
+
+  N = strlen (m2);
+  for (i = 0; (i < n - N + 1) && memcmp (m1, m2, N); i++, m1++);
+  if (memcmp (m1, m2, N)) return (NULL);
+  return (m1);
+
+}
+
+/* formatted write statement, with intelligent allocation */
+int write_fmt (int fd, char *format, ...) {
+
+  int Nbyte, status;
+  char tmp, *line;
+  va_list argp;  
+
+  va_start (argp, format);
+  Nbyte = vsnprintf (&tmp, 0, format, argp);
+  va_end (argp);
+
+  va_start (argp, format);
+  ALLOCATE (line, char, Nbyte + 1);
+  vsnprintf (line, Nbyte + 1, format, argp);
+  status = write (fd, line, strlen(line));
+  va_end (argp);
+
+  free (line);
+  return (status);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/libohana/src/rconnect.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libohana/src/rconnect.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libohana/src/rconnect.c	(revision 34041)
@@ -0,0 +1,176 @@
+# include <ohana.h>
+# include <sys/types.h>
+# include <sys/wait.h>
+# include <signal.h>  //man page says include this for kill
+
+# define DEBUG 1
+
+/* connect to host with the command and start the shell: (command) hostname (shell)
+   eg: ssh hostname pclient
+   stdio is an array of file descriptors for the I/O to the remote shell:
+   stdio[3]: 0 == stdin, 1 == stdout, 2 == stderr
+
+   The handshake test assumes that the remote shell can accept an echo command.  If not,
+   the user must do their own handshake test.
+
+   return value is the PID of the remote job, or FALSE on failure
+   in case of failure, the error condition is provided in errorInfo.
+
+   
+*/
+
+/* connection can take a while, allow up to 5 sec by default */
+static int CONNECT_TIMEOUT = 5000;
+
+void rconnect_set_timeout (int timeout) {
+  CONNECT_TIMEOUT = timeout;
+}
+
+int rconnect (char *command, char *hostname, char *shell, int *stdio, int *errorInfo, int doHandshake) {
+
+  int i = 0, stdin_fd[2], stdout_fd[2], stderr_fd[2], status;
+  int result, waitstatus;
+  pid_t pid;
+  char *p;
+  char **argv;
+  IOBuffer buffer;
+  struct timespec request, remain;
+
+  if (errorInfo) *errorInfo = RCONNECT_ERR_NONE;
+
+  myAssert (command != NULL,  "command is NULL");
+  myAssert (hostname != NULL, "hostname is NULL");
+  myAssert (shell != NULL,    "shell is NULL");
+  myAssert (stdio != NULL,    "stdio is NULL");
+
+  bzero (stdin_fd,  2*sizeof(int));
+  bzero (stdout_fd, 2*sizeof(int));
+  bzero (stderr_fd, 2*sizeof(int));
+
+  if (pipe (stdin_fd)  < 0) goto pipe_error;
+  if (pipe (stdout_fd) < 0) goto pipe_error;
+  if (pipe (stderr_fd) < 0) goto pipe_error;
+
+  char *flag = "-x";
+
+  ALLOCATE (argv, char *, 5);
+  argv[0] = command;
+  argv[1] = flag;
+  argv[2] = hostname;
+  argv[3] = shell;
+  argv[4] = 0;
+
+  pid = fork ();
+  if (pid < 0) {
+    perror ("fork:");
+    fprintf (stderr, "error forking child process\n");
+    exit (3);
+  }
+  if (!pid) { /* must be child process */
+    if (DEBUG) fprintf (stderr, "starting remote connection to %s...", hostname);
+
+    /* close the other ends of the pipes */
+    close (stdin_fd[1]);
+    close (stdout_fd[0]);
+    close (stderr_fd[0]);
+
+    /* tie our ends of the pipes to stdin, stdout, stderr */
+    dup2 (stdin_fd[0],  STDIN_FILENO);
+    dup2 (stdout_fd[1], STDOUT_FILENO);
+    dup2 (stderr_fd[1], STDERR_FILENO);
+
+    /* set all three unblocking */
+    setvbuf (stdin,  (char *) NULL, _IONBF, BUFSIZ);
+    setvbuf (stdout, (char *) NULL, _IONBF, BUFSIZ);
+    setvbuf (stderr, (char *) NULL, _IONBF, BUFSIZ);
+
+    status = execvp (argv[0], argv);
+    if (DEBUG) fprintf (stderr, "error starting remote shell process\n");
+    if (errorInfo) *errorInfo = RCONNECT_ERR_EXEC;
+    return FALSE;
+  }
+  free (argv);
+
+  /* close the other ends of the pipes */
+  close (stdin_fd[0]);  stdin_fd[0]  = 0;
+  close (stdout_fd[1]); stdout_fd[1] = 0;
+  close (stderr_fd[1]); stderr_fd[1] = 0;
+
+  /* make the pipes non-blocking */
+  fcntl (stdin_fd[1],  F_SETFL, O_NONBLOCK);
+  fcntl (stdout_fd[0], F_SETFL, O_NONBLOCK);
+  fcntl (stderr_fd[0], F_SETFL, O_NONBLOCK);
+
+  if (doHandshake) {
+    /* perform handshake with shell to verify alive & running */
+    InitIOBuffer (&buffer, 0x100);
+
+    /* send handshake command */
+    status = write_fmt (stdin_fd[1], "echo CONNECTED\n");
+    if ((status == -1) && (errno == EPIPE)) goto connect_error;
+
+    /* try to get evidence connection is alive - wait upto a few seconds */
+    p = NULL;
+    status = -1;
+    for (i = 0; (i < CONNECT_TIMEOUT) && (status != 0) && (p == NULL); i++) {
+      status = ReadtoIOBuffer (&buffer, stdout_fd[0]);
+      p = memstr (buffer.buffer, "CONNECTED", buffer.Nbuffer);
+      usleep (10000); // wait for client to be connected
+    }
+    if (status == 0) goto connect_error;
+    if (status == -1) goto connect_error;
+    if (DEBUG) fprintf (stderr, "%d cycles to connect\n", i);
+    FreeIOBuffer (&buffer);
+  }
+
+  if (DEBUG) fprintf (stderr, "Connected\n");
+
+  stdio[0] = stdin_fd[1];
+  stdio[1] = stdout_fd[0];
+  stdio[2] = stderr_fd[0];
+
+  if (errorInfo) *errorInfo = RCONNECT_ERR_NONE;
+  return (pid);
+
+pipe_error:
+  perror ("pipe error:");
+  if (errorInfo) *errorInfo = RCONNECT_ERR_PIPE;
+  goto close_pipes;
+
+connect_error:
+  if (DEBUG) fprintf (stderr, "error while connecting, status: %d, ncycles: %d\n", status, i);
+
+  /* avoid blocking on waitpid, test every 100 usec, up to 50 msec */
+  request.tv_sec = 0;
+  request.tv_nsec = 100000;
+
+  /* harvest the child process: kill & wait (< 100 ms) for exit */
+  kill (pid, SIGKILL);
+  result = waitpid (pid, &waitstatus, WNOHANG);
+  for (i = 0; (i < 50) && (result == 0); i++) {
+    nanosleep (&request, &remain);
+    result = waitpid (pid, &waitstatus, WNOHANG);
+  }
+
+  if ((result == -1) && (errno != ECHILD)) {
+    fprintf (stderr, "unexpected error from waitpid (%d): programming error\n", errno);
+    abort();
+  }
+  if (result == 0) {
+    if (DEBUG) fprintf (stderr, "child did not exit (rconnect)??");
+  }
+  if (result > 0) {
+    myAssert (result == pid, "waitpid error: mis-matched PID (%d vs %d).  programming error", result, pid);
+    myAssert (!WIFSTOPPED(waitstatus), "waitpid returns 'stopped': programming error");
+  }
+  if (errorInfo) *errorInfo = RCONNECT_ERR_CONNECT;
+
+close_pipes:
+  if (stdin_fd[0]  != 0) close (stdin_fd[0]);
+  if (stdin_fd[1]  != 0) close (stdin_fd[1]);
+  if (stdout_fd[0] != 0) close (stdout_fd[0]);
+  if (stdout_fd[1] != 0) close (stdout_fd[1]);
+  if (stderr_fd[0] != 0) close (stderr_fd[0]);
+  if (stderr_fd[1] != 0) close (stderr_fd[1]);
+  return (FALSE);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/libohana/src/sorts.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libohana/src/sorts.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libohana/src/sorts.c	(revision 34041)
@@ -120,2 +120,36 @@
 
 }
+
+void fsortfour (float *X, float *Y, float *Z, float *W, int N) {
+
+# define SWAPFUNC(A,B){ float tmp; \
+  tmp = X[A]; X[A] = X[B]; X[B] = tmp; \
+  tmp = Y[A]; Y[A] = Y[B]; Y[B] = tmp; \
+  tmp = Z[A]; Z[A] = Z[B]; Z[B] = tmp; \
+  tmp = W[A]; W[A] = W[B]; W[B] = tmp; \
+}
+# define COMPARE(A,B)(X[A] < X[B])
+
+  OHANA_SORT (N, COMPARE, SWAPFUNC);
+
+# undef SWAPFUNC
+# undef COMPARE
+
+}
+
+void dsortfour (double *X, double *Y, double *Z, double *W, int N) {
+
+# define SWAPFUNC(A,B){ double tmp; \
+  tmp = X[A]; X[A] = X[B]; X[B] = tmp; \
+  tmp = Y[A]; Y[A] = Y[B]; Y[B] = tmp; \
+  tmp = Z[A]; Z[A] = Z[B]; Z[B] = tmp; \
+  tmp = W[A]; W[A] = W[B]; W[B] = tmp; \
+}
+# define COMPARE(A,B)(X[A] < X[B])
+
+  OHANA_SORT (N, COMPARE, SWAPFUNC);
+
+# undef SWAPFUNC
+# undef COMPARE
+
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/libohana/src/string.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libohana/src/string.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/libohana/src/string.c	(revision 34041)
@@ -134,4 +134,28 @@
     line[i] = c;
   }
+  if (ferror(f)) {
+    perror("scan_line: ");
+    return EOF;
+  }
+  line[i - 1] = 0;  /* this could make things crash! */
+
+  if (i > 1) {
+    status = EOF + 1;
+  }
+
+  return (status);
+}
+
+int scan_line_maxlen (FILE *f, char *line, int maxlen) {
+
+  int i, status;
+  char c;
+  
+  status = EOF + 1;
+  
+  for (i = 0, c = 0; (c != '\n') && (status != EOF) && (i < maxlen); i++) {
+    status = fscanf (f, "%c", &c);
+    line[i] = c;
+  }
   line[i - 1] = 0;  /* this could make things crash! */
 
@@ -203,4 +227,76 @@
   if (word[0] == '-') return (-1);
   return (1);
+}
+
+int iparse (int *X, int NX, char *line) {
+
+  int i;
+  char *word;
+  char *ptr;
+
+  word = line;
+  for (i = 0; i < NX - 1; i++)
+    word = _parse_nextword (word);
+
+  *X = strtol (word, &ptr, 0);
+  if (ptr == word) return (FALSE);
+  if (word[0] == '-') return (-1);
+  return (1);
+}
+
+int iparse_csv (int *X, int NX, char *line) {
+
+  int i;
+  char *word;
+  char *ptr;
+
+  word = line;
+  for (i = 0; i < NX - 1; i++)
+    word = _parse_nextword_csv (word);
+  
+  if (word[0] == '"') word[0] = ' ';
+  if (word[0] == ',') {
+      *X = 0;
+      return 1;
+  }
+
+  *X = strtol (word, &ptr, 0);
+  if (ptr == word) return (FALSE);
+  if (word[0] == '-') return (-1);
+  return (1);
+}
+
+int tparse (time_t *X, int NX, char *line) {
+
+  int i, status;
+  char *word;
+
+  word = line;
+  for (i = 0; i < NX - 1; i++)
+    word = _parse_nextword (word);
+
+  status = ohana_str_to_time (word, X);
+  if (!status) return (FALSE);
+  return (TRUE);
+}
+
+int tparse_csv (time_t *X, int NX, char *line) {
+
+  int i, status;
+  char *word;
+
+  word = line;
+  for (i = 0; i < NX - 1; i++)
+    word = _parse_nextword_csv (word);
+  
+  if (word[0] == '"') word[0] = ' ';
+  if (word[0] == ',') {
+      *X = 0;
+      return 1;
+  }
+
+  status = ohana_str_to_time (word, X);
+  if (!status) return (FALSE);
+  return (TRUE);
 }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/libohana/test/memspeed.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/libohana/test/memspeed.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/libohana/test/memspeed.c	(revision 34041)
@@ -0,0 +1,86 @@
+
+# define TIMESTAMP(TIME) \
+    gettimeofday (&stop, (void *) NULL);	\
+    dtime = DTIME (stop, start);		\
+    TIME += dtime;				\
+    gettimeofday (&start, (void *) NULL);
+
+
+  // XXX quick and stupid test:
+  if (1) {
+    int i, j; 
+    off_t *Nlist, *NLIST, **mlist;
+    off_t *NlistI, *NLISTI, **mlistI;
+    int **clist;
+    int **clistI;
+    float dtime;
+    float time1 = 0.0;
+    float time2 = 0.0;
+
+    int Nmosaic = 10000;
+    int Nimage = 600000;
+
+    for (j = 0; j < 19000; j++) {
+
+      // mosaic indexes
+      ALLOCATE (Nlist, off_t,   Nmosaic);
+      ALLOCATE (NLIST, off_t,   Nmosaic);
+      ALLOCATE (clist, int *,   Nmosaic);
+      ALLOCATE (mlist, off_t *, Nmosaic);
+    
+      for (i = 0; i < Nmosaic; i++) {
+	Nlist[i] = 0;
+	NLIST[i] = 100;
+	ALLOCATE (clist[i], int,   NLIST[i]);
+	ALLOCATE (mlist[i], off_t, NLIST[i]);
+      }
+
+      // image indexes
+      ALLOCATE (NlistI, off_t,   Nimage);
+      ALLOCATE (NLISTI, off_t,   Nimage);
+      ALLOCATE (clistI, int *,   Nimage);
+      ALLOCATE (mlistI, off_t *, Nimage);
+    
+      for (i = 0; i < Nimage; i++) {
+	NlistI[i] = 0;
+	NLISTI[i] = 100;
+	ALLOCATE (clistI[i], int,   NLISTI[i]);
+	ALLOCATE (mlistI[i], off_t, NLISTI[i]);
+      }
+
+      TIMESTAMP(time1);
+
+      // free mosaic indexes
+      for (i = 0; i < Nmosaic; i++) {
+	free (clist[i]);
+	free (mlist[i]);
+      }
+      free (Nlist);
+      free (NLIST);
+      free (clist);
+      free (mlist);
+
+      // free image indexes
+      for (i = 0; i < Nimage; i++) {
+	free (clistI[i]);
+	free (mlistI[i]);
+      }
+      free (NlistI);
+      free (NLISTI);
+      free (clistI);
+      free (mlistI);
+
+      TIMESTAMP(time2);
+
+      if (j % 10 == 0) {
+	fprintf (stderr, "done with %d\n", j);
+	fprintf (stderr, "time1  %f : init mosaic\n", time1);
+	fprintf (stderr, "time2  %f : free mosaic\n", time2);
+      }
+    }
+    
+    fprintf (stderr, "time1  %f : init mosaic\n", time1);
+    fprintf (stderr, "time2  %f : free mosaic\n", time2);
+    exit (1);
+  }
+
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/Makefile	(revision 34041)
@@ -9,4 +9,5 @@
 dimm:     	 lib.data lib.shell cmd.basic cmd.data cmd.astro
 dvo:      	 lib.data lib.shell cmd.basic cmd.data cmd.astro
+dvo_client:    	 lib.data lib.shell cmd.basic cmd.data cmd.astro
 pantasks: 	 lib.data lib.shell cmd.basic cmd.data cmd.astro
 pantasks_server: lib.data lib.shell cmd.basic cmd.data cmd.astro
@@ -18,5 +19,5 @@
 
 PROGRAM = mana dvo pantasks pclient pcontrol
-SPECIAL = pantasks_client pantasks_server
+SPECIAL = pantasks_client pantasks_server dvo_client
 
 EXTRAS = dimm
@@ -24,6 +25,4 @@
 all:
 	for i in $(PROGRAM) $(SPECIAL); do $(MAKE) $$i || exit; done
-	$(MAKE) pantasks_client
-	$(MAKE) pantasks_server
 
 libs:
@@ -35,6 +34,4 @@
 install:
 	for i in $(PROGRAM) $(SPECIAL); do $(MAKE) $$i.install || exit; done
-	$(MAKE) pantasks_client.install
-	$(MAKE) pantasks_server.install
 
 extras-install:
@@ -63,4 +60,10 @@
 	if [ -d pantasks ]; then (cd pantasks && $(MAKE) $@); fi
 
+dvo_client:
+	if [ -d dvo ]; then (cd dvo && $(MAKE) $@); fi
+
+dvo_client.install: dvo_client
+	if [ -d dvo ]; then (cd dvo && $(MAKE) $@); fi
+
 $(PROGRAM) $(LIBS) $(EXTRAS):
 	if [ -d "$@" ]; then (cd $@ && $(MAKE)); fi
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/Makefile	(revision 34041)
@@ -32,7 +32,8 @@
 $(SRC)/fixwrap.$(ARCH).o	   \
 $(SRC)/fixcols.$(ARCH).o	   \
+$(SRC)/fiximage.$(ARCH).o	   \
 $(SRC)/gauss.$(ARCH).o		   \
-$(SRC)/getvel.$(ARCH).o	   \
-$(SRC)/getlst.$(ARCH).o	   \
+$(SRC)/getvel.$(ARCH).o	           \
+$(SRC)/getlst.$(ARCH).o	           \
 $(SRC)/medianmap.$(ARCH).o	   \
 $(SRC)/mkgauss.$(ARCH).o	   \
@@ -45,4 +46,5 @@
 $(SRC)/ringflux.$(ARCH).o	   \
 $(SRC)/petrosian.$(ARCH).o	   \
+$(SRC)/kronflux.$(ARCH).o	   \
 $(SRC)/multifit.$(ARCH).o	   \
 $(SRC)/objload.$(ARCH).o	   \
@@ -51,12 +53,17 @@
 $(SRC)/precess.$(ARCH).o	   \
 $(SRC)/profile.$(ARCH).o	   \
-$(SRC)/radec.$(ARCH).o	   \
-$(SRC)/region.$(ARCH).o	   \
+$(SRC)/radec.$(ARCH).o	           \
+$(SRC)/region.$(ARCH).o	           \
 $(SRC)/rotcurve.$(ARCH).o	   \
 $(SRC)/scale.$(ARCH).o		   \
 $(SRC)/sexigesimal.$(ARCH).o	   \
 $(SRC)/spec.$(ARCH).o		   \
+$(SRC)/specpairfit.$(ARCH).o	   \
+$(SRC)/spexseq.$(ARCH).o	   \
+$(SRC)/spex1dgas.$(ARCH).o	   \
+$(SRC)/spex2dgas.$(ARCH).o	   \
+$(SRC)/mkclusters.$(ARCH).o	   \
 $(SRC)/star.$(ARCH).o		   \
-$(SRC)/transform.$(ARCH).o        \
+$(SRC)/transform.$(ARCH).o         \
 $(SRC)/imsub.$(ARCH).o		   \
 $(SRC)/imfit.$(ARCH).o		   \
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/coords.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/coords.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/coords.c	(revision 34041)
@@ -83,4 +83,5 @@
     }
     if (mode == PIXEL) {
+      Xin = ohana_normalize_angle_to_midpoint (Xin, coords.crval1);
       RD_to_XY (&Xout, &Yout, Xin, Yin, &coords);
       if (!Quiet) gprint (GP_LOG, "%7.2f %7.2f\n", Xout, Yout);
@@ -92,5 +93,9 @@
   if (mode == SKY) {
     for (i = 0; i < xvec[0].Nelements; i++) {
-      XY_to_RD (&xvec[0].elements.Flt[i], &yvec[0].elements.Flt[i], xvec[0].elements.Flt[i], yvec[0].elements.Flt[i], &coords);
+      double Xin = xvec[0].elements.Flt[i];
+      double Yin = yvec[0].elements.Flt[i];
+      xvec[0].elements.Flt[i] = NAN;
+      yvec[0].elements.Flt[i] = NAN;
+      XY_to_RD (&xvec[0].elements.Flt[i], &yvec[0].elements.Flt[i], Xin, Yin, &coords);
     }
     return (TRUE);
@@ -98,5 +103,10 @@
   if (mode == PIXEL) {
     for (i = 0; i < xvec[0].Nelements; i++) {
-      RD_to_XY (&xvec[0].elements.Flt[i], &yvec[0].elements.Flt[i], xvec[0].elements.Flt[i], yvec[0].elements.Flt[i], &coords);
+      double Xin = xvec[0].elements.Flt[i];
+      double Yin = yvec[0].elements.Flt[i];
+      xvec[0].elements.Flt[i] = NAN;
+      yvec[0].elements.Flt[i] = NAN;
+      Xin = ohana_normalize_angle_to_midpoint (Xin, coords.crval1);
+      RD_to_XY (&xvec[0].elements.Flt[i], &yvec[0].elements.Flt[i], Xin, Yin, &coords);
     }
     return (TRUE);
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/fiximage.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/fiximage.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/fiximage.c	(revision 34041)
@@ -0,0 +1,95 @@
+# include "astro.h"
+
+int fiximage (int argc, char **argv) {
+
+  int ix, iy, N;
+  Buffer *in, *ct, *mask;
+
+  int VERBOSE = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    VERBOSE = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  if (argc != 4) {
+    gprint (GP_ERR, "USAGE: fiximage <data> <count> (mask)\n");
+    return (FALSE);
+  }
+
+  if ((in   = SelectBuffer (argv[1], OLDBUFFER, TRUE)) == NULL) return (FALSE);
+  if ((ct   = SelectBuffer (argv[2], OLDBUFFER, TRUE)) == NULL) return (FALSE);
+  if ((mask = SelectBuffer (argv[3], ANYBUFFER, TRUE)) == NULL) return (FALSE);
+
+  int Nx = in[0].matrix.Naxis[0];
+  int Ny = in[0].matrix.Naxis[1];
+
+  gfits_free_matrix (&mask[0].matrix);
+  gfits_free_header (&mask[0].header);
+  CreateBuffer (mask, Nx, Ny, -32, 0.0, 1.0);
+  strcpy (mask[0].file, "(empty)");
+  memset (mask[0].matrix.buffer, 0, Nx*Ny*sizeof(float));
+  // 0 -- init, cannot be repaired
+  // 1 -- does not need to be repaired
+  // 2 -- repair x only
+  // 4 -- repair y only
+  // 6 -- repair x & y only
+
+  float *inB = (float *) in[0].matrix.buffer;
+  float *ctB = (float *) ct[0].matrix.buffer;
+  float *mkB = (float *) mask[0].matrix.buffer;
+
+  // loop over input ct and find pixels that can be repaired.
+  for (iy = 1; iy < Ny - 1; iy++) {
+    for (ix = 1; ix < Nx - 1; ix++) {
+
+      int Npix = ix + Nx*iy;
+
+      // does not need to be repaired
+      if (ctB[Npix]) { mkB[Npix] = 1.0; continue; }
+
+      // if we have all 4 valid neighbors, we can fix
+      if (ctB[Npix - 1 ] && ctB[Npix + 1 ]) mkB[Npix] += 2.0;
+      if (ctB[Npix - Nx] && ctB[Npix + Nx]) mkB[Npix] += 4.0;
+    }
+  }
+
+  // loop over input ct and repair the reparable pixels
+  for (iy = 1; iy < Ny - 1; iy++) {
+    for (ix = 1; ix < Nx - 1; ix++) {
+
+      int Npix = ix + Nx*iy;
+
+      if (mkB[Npix] == 0.0) continue; // cannot be repaired
+      if (mkB[Npix] == 1.0) continue; // does not need to be repaired
+
+      float Vxm = 0.0;
+      float Vxp = 0.0;
+      float Vym = 0.0;
+      float Vyp = 0.0;
+      float Value = 0.0;
+      if ((mkB[Npix] == 2) || (mkB[Npix] == 6)) {
+        Vxm = inB[Npix - 1 ] / ctB[Npix - 1 ];
+        Vxp = inB[Npix + 1 ] / ctB[Npix + 1 ];
+      }
+      if ((mkB[Npix] == 4) || (mkB[Npix] == 6)) {
+        Vym = inB[Npix - Nx] / ctB[Npix - Nx];
+        Vyp = inB[Npix + Nx] / ctB[Npix + Nx];
+      }
+
+      if (mkB[Npix] == 2) {
+        Value = 0.5*(Vxm + Vxp);
+      }
+      if (mkB[Npix] == 4) {
+        Value = 0.5*(Vym + Vyp);
+      }
+      if (mkB[Npix] == 6) {
+        Value = 0.25*(Vxm + Vxp + Vym + Vyp);
+      }
+
+      ctB[Npix] = 1;
+      inB[Npix] = Value;
+    }
+  }
+
+  return TRUE;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/init.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/init.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/init.c	(revision 34041)
@@ -15,4 +15,5 @@
 int flux                    PROTO((int, char **));
 int fixwrap                 PROTO((int, char **));
+int fiximage                PROTO((int, char **));
 int fixcols                 PROTO((int, char **));
 int fixrows                 PROTO((int, char **));
@@ -31,4 +32,5 @@
 int ringflux                PROTO((int, char **));
 int petrosian               PROTO((int, char **));
+int kronflux                PROTO((int, char **));
 int mkgauss                 PROTO((int, char **));
 int mksersic                PROTO((int, char **));
@@ -45,4 +47,9 @@
 int sexigesimal             PROTO((int, char **));
 int spec                    PROTO((int, char **));
+int specpairfit             PROTO((int, char **));
+int spexseq                 PROTO((int, char **));
+int spex1dgas               PROTO((int, char **));
+int spex2dgas               PROTO((int, char **));
+int mkclusters              PROTO((int, char **));
 int star                    PROTO((int, char **));
 int times                   PROTO((int, char **));
@@ -64,4 +71,5 @@
   {1, "flux",        flux,         "flux in a convex contour"},
   {1, "fixwrap",     fixwrap,      "fix megacam over-wrapped pixels"},
+  {1, "fiximage",    fiximage,     "fix pixels in an image by interpolation"},
   {1, "fixcols",     fixcols,      "fix bad columns by comparing with others"},
   {1, "fixrows",     fixrows,      "fix bad rows by comparing with others"},
@@ -81,4 +89,5 @@
   {1, "ringflux",    ringflux,     "mean flux in a ring"},
   {1, "petrosian",   petrosian,    "petrosian parameters given radial bins"},
+  {1, "kronflux",    kronflux,     "measure kronflux stats"},
   {1, "multifit",    multifit,     "fit multi-order spectrum"},
   {1, "objload",     objload,      "plot obj data on Ximage "},
@@ -93,4 +102,9 @@
   {1, "sexigesimal", sexigesimal,  "convert to/from sexigesimal/decimal"},
   {1, "spec",        spec,         "extract a spectrum"},
+  {1, "specpairfit", specpairfit,  "fit spectrum to another spectrum"},
+  {1, "spexseq",     spexseq,      "generate the spectral sequence"},
+  {1, "spex1dgas",   spex1dgas,    "minimize distances in 1D"},
+  {1, "spex2dgas",   spex2dgas,    "minimize distances in 2D"},
+  {1, "mkclusters",  mkclusters,   "group spectra by distance"},
   {1, "star",        star,         "star stats at rough coords"},
   {1, "transform",   transform,    "geometric transformation of image"},
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/kronflux.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/kronflux.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/kronflux.c	(revision 34041)
@@ -0,0 +1,173 @@
+# include "astro.h"
+int kronflux_stats (Matrix *matrix, int X, int Y, int radius, int maxradius, int border, float alpha);
+
+int VERBOSE = TRUE;
+
+// manual calculation of the Kron parameters  
+int kronflux (int argc, char **argv) {
+
+  int x, y, N, radius, border, maxradius;
+  float alpha;
+  Buffer *buf;
+
+  radius = 5;
+  if ((N = get_argument (argc, argv, "-radius"))) {
+    remove_argument (N, &argc, argv);
+    radius  = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  maxradius = 100;
+  if ((N = get_argument (argc, argv, "-maxradius"))) {
+    remove_argument (N, &argc, argv);
+    maxradius  = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  border = 5;
+  if ((N = get_argument (argc, argv, "-border"))) {
+    remove_argument (N, &argc, argv);
+    border  = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  
+  alpha = 2.5;
+  if ((N = get_argument (argc, argv, "-alpha"))) {
+    remove_argument (N, &argc, argv);
+    alpha  = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  
+  VERBOSE = TRUE;
+  if ((N = get_argument (argc, argv, "-q"))) {
+    remove_argument (N, &argc, argv);
+    VERBOSE = FALSE;
+  }
+  
+  if (argc != 4) {
+    gprint (GP_ERR, "USAGE: kronflux (buffer) x y [-radius N] [-border N] [-alpha F] [-q]\n");
+    gprint (GP_ERR, " -radius is the radius of the initial window (default 5)\n");
+    gprint (GP_ERR, " -border is the size of the sky annulus (default 5)\n");
+    gprint (GP_ERR, " -alpha  is the scale factor for kron radius vs 1st radial moment (default 2.5)\n");
+    return (FALSE);
+  }
+  if ((buf = SelectBuffer (argv[1], OLDBUFFER, TRUE)) == NULL) return (FALSE);
+  x = atof (argv[2]);
+  y = atof (argv[3]);
+
+  kronflux_stats (&buf[0].matrix, x, y, radius, maxradius, border, alpha);
+
+  return TRUE;
+}
+
+// I'd like to be able to skip the sky measurement
+// if Nborder > 0, calculate local sky as the median of the pixels in the region between radius and border
+int kronflux_stats (Matrix *matrix, int X, int Y, int radius, int maxradius, int border, float alpha) {
+
+  int i, j;
+
+  double gain;
+  char *string = get_variable ("GAIN");
+  if (string == (char *) NULL) {
+    if (VERBOSE) gprint (GP_ERR, "assuming a value of 1.0\n");
+    gain = 1.0;
+  } else {
+    gain = atof (string);
+  }
+
+  float *data = (float *) matrix->buffer;
+  int Nx = matrix->Naxis[0];
+  int Ny = matrix->Naxis[1];
+  
+  double sky = 0.0;
+  double dsky2 = 0.0;
+  if (border > 0) {
+    int radius2 = radius + border;
+
+    // allocate enough space for all pixels in the 2*radius2 + 1 square
+    int NRING = SQ(2*radius2 + 1);
+    double *ring = NULL;
+    ALLOCATE (ring, double, NRING);
+    bzero (ring, sizeof(double)*NRING);
+
+    int Nring = 0;  
+    for (j = -radius2; j <= radius2; j++) {
+      int iy = j + Y;
+      if (iy < 0) continue;
+      if (iy >= Ny) continue;
+      for (i = -radius2; i <= radius2; i++) {
+	if (hypot(i, j) <= radius) continue;
+	int ix = i + X;
+	if (ix < 0) continue;
+	if (ix >= Nx) continue;
+	ring[Nring] = data[ix + iy*Nx];
+	Nring ++;
+      }
+    }
+    dsort (ring, Nring);
+
+    int Npts = 0;
+    for (i = 0.25*Nring; i < 0.75*Nring; i++, Npts += 1.0) {
+      sky += ring[i];
+      dsky2 += ring[i]*ring[i];
+    }
+    sky = sky / Npts;
+    dsky2 = dsky2 / Npts - sky*sky;
+    free (ring);
+  }
+
+  // find the 1st radial moment
+  float flux1 = 0.0;
+  float Srf = 0.0;
+  for (j = -radius; j <= radius; j++) {
+    int iy = j + Y;
+    if (iy < 0) continue;
+    if (iy >= Ny) continue;
+    for (i = -radius; i <= radius; i++) {
+      float r = hypot(i, j);
+      if (r > radius) continue;
+      int ix = i + X;
+      if (ix < 0) continue;
+      if (ix >= Nx) continue;
+      float value = data[ix + iy*Nx] - sky;
+	
+      flux1 += value;
+      Srf += value * r;
+    }
+  }
+
+  float r1 = Srf / flux1;
+  float rK = r1 * alpha;
+
+  rK = MIN(MAX(rK, 5.0), maxradius);
+
+  // measure the flux within A*r1
+  float fluxK = 0.0;
+  for (j = -rK; j <= rK; j++) {
+    int iy = j + Y;
+    if (iy < 0) continue;
+    if (iy >= Ny) continue;
+    for (i = -rK; i <= rK; i++) {
+      float r = hypot(i, j);
+      if (r > rK) continue;
+      int ix = i + X;
+      if (ix < 0) continue;
+      if (ix >= Nx) continue;
+      float value = data[ix + iy*Nx] - sky;
+	
+      fluxK += value;
+    }
+  }
+
+  float magK = -2.5*log10(fluxK);
+  set_variable ("KronFlux", fluxK);
+  set_variable ("KronRadius", rK);
+  set_variable ("KronMag", magK);
+  set_variable ("KronF1", flux1);
+  set_variable ("KronR1", r1);
+  
+  if (VERBOSE) gprint (GP_LOG, "%f %f %f %f %f\n", magK, fluxK, rK, flux1, r1);
+
+  return TRUE;
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/mkclusters.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/mkclusters.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/mkclusters.c	(revision 34041)
@@ -0,0 +1,233 @@
+# include "astro.h"
+
+typedef struct {
+  int *friend; // indices for all tested relationships
+  float *dist; // distance for this relationship
+  int Ndist;   // number of tested relationships
+  int NDIST;   // number of allocated relationships
+  int group;   // assigned group
+  int Nfriend; // number of friends brought into group
+} Object;
+
+typedef struct {
+  int *entry;
+  int Nentry;
+  int NENTRY;
+} Group;
+
+static Group  *group = NULL;
+static int Ngroup = 0;
+static int NGROUP = 0;
+
+static Object *object = NULL;
+static int Nobject = 0;
+// static int NOBJECT = 0;
+
+void add_to_group (int Nobj, float scale, int Nfriends) {
+
+  int j;
+
+  // fprintf (stderr, "add object %d to group %d\n", Nobj, Ngroup);
+
+  object[Nobj].group = Ngroup;
+
+  // add to this group
+  int N = group[Ngroup].Nentry;
+  group[Ngroup].entry[N] = Nobj;
+  group[Ngroup].Nentry ++;
+  CHECK_REALLOCATE (group[Ngroup].entry, int, group[Ngroup].NENTRY, group[Ngroup].Nentry, 100);
+
+  // add all friends of this object (up to Nfriensd)
+  // friends are already sorted by distance, so we add closest friends first
+  for (j = 0; (object[Nobj].Nfriend < Nfriends) && (j < object[Nobj].Ndist); j++) {
+    if (object[Nobj].dist[j] > scale) continue;
+
+    int Nnew = object[Nobj].friend[j];
+
+    if (object[Nnew].group != -1) continue;
+
+    // found a friend : 
+    object[Nobj].Nfriend ++;
+    add_to_group (Nnew, scale, Nfriends);
+  }
+  return;
+}
+
+void sortvecset (opihi_flt *X, opihi_int *IDX1, opihi_int *IDX2, int N) {
+
+# define SWAPFUNC(A,B){ opihi_flt tmp; opihi_int itmp; \
+  tmp  = X[A];    X[A]    = X[B];    X[B]    = tmp; \
+  itmp = IDX1[A]; IDX1[A] = IDX1[B]; IDX1[B] = itmp; \
+  itmp = IDX2[A]; IDX2[A] = IDX2[B]; IDX2[B] = itmp; \
+}
+
+# define COMPARE(A,B)(X[A] < X[B])
+
+  OHANA_SORT (N, COMPARE, SWAPFUNC);
+
+# undef SWAPFUNC
+# undef COMPARE
+
+}
+
+void sortfriends (float *X, int *IDX1, int N) {
+
+# define SWAPFUNC(A,B){ float tmp; int itmp; \
+  tmp  = X[A];    X[A]    = X[B];    X[B]    = tmp; \
+  itmp = IDX1[A]; IDX1[A] = IDX1[B]; IDX1[B] = itmp; \
+}
+
+# define COMPARE(A,B)(X[A] < X[B])
+
+  OHANA_SORT (N, COMPARE, SWAPFUNC);
+
+# undef SWAPFUNC
+# undef COMPARE
+
+}
+
+int mkclusters (int argc, char **argv) {
+  
+  int i, j;
+  Vector *index1, *index2, *distance;
+
+  if (argc != 6) goto usage;
+
+  if ((index1   = SelectVector (argv[1], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((index2   = SelectVector (argv[2], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((distance = SelectVector (argv[3], OLDVECTOR, TRUE)) == NULL) goto escape;
+  float scale = atof (argv[4]);
+  int Nfriends = atoi (argv[5]);
+
+  // XXX enforce matching lengths on the three vectors
+
+  CastVector (index1, OPIHI_INT);
+  CastVector (index2, OPIHI_INT);
+
+  Nobject = 0;
+  for (i = 0; i < index1->Nelements; i++) {
+    Nobject = MAX (Nobject, index1->elements.Int[i]);
+    Nobject = MAX (Nobject, index2->elements.Int[i]);
+  }
+  Nobject ++;  // after the loop, Nobject has the value of the highest index, not the count
+
+  // allocate the list of Object -- these list the possible friends of the given object[i] 
+  ALLOCATE (object, Object, Nobject);
+  for (i = 0; i < Nobject; i++) {
+    ALLOCATE (object[i].friend, int, Nobject);
+    memset (object[i].friend, 0, Nobject*sizeof(int));
+    ALLOCATE (object[i].dist, float, Nobject);
+    memset (object[i].dist, 0, Nobject*sizeof(float));
+    object[i].NDIST = Nobject;
+    object[i].Ndist = 0;
+    object[i].group = -1; // unassigned
+    object[i].Nfriend = 0; // no friends yet
+  }
+
+  // generate the set of vectors of all distances for each entry
+  // the object seq number (object[i]) will be used to match the index1 and index2 values
+  for (i = 0; i < index1->Nelements; i++) {
+    int N, m;
+    N = index1->elements.Int[i];
+    if (N >= Nobject) abort();
+    m = object[N].Ndist;
+    object[N].friend[m] = index2->elements.Int[i];
+    object[N].dist[m] = distance->elements.Flt[i];
+    object[N].Ndist ++;
+    if (object[N].Ndist == object[N].NDIST) {
+      object[N].NDIST += 100;
+      REALLOCATE (object[N].dist, float, object[N].NDIST);
+      REALLOCATE (object[N].friend, int, object[N].NDIST);
+    }
+
+    N = index2->elements.Int[i];
+    if (N >= Nobject) abort();
+    m = object[N].Ndist;
+    object[N].friend[m] = index1->elements.Int[i];
+    object[N].dist[m] = distance->elements.Flt[i];
+    object[N].Ndist ++;
+    if (object[N].Ndist == object[N].NDIST) {
+      object[N].NDIST += 100;
+      REALLOCATE (object[N].dist, float, object[N].NDIST);
+      REALLOCATE (object[N].friend, int, object[N].NDIST);
+    }
+  }
+
+  for (i = 0; i < Nobject; i++) {
+    sortfriends (object[i].dist, object[i].friend, object[i].Ndist);
+  }
+
+  // generate the set of groups. each group is a list of friends and their friends
+  Ngroup = 0;
+  NGROUP = Nobject;
+  ALLOCATE (group, Group, NGROUP);
+  for (i = 0; i < NGROUP; i++) {
+    group[i].Nentry = 0;
+    group[i].NENTRY = 100;
+    ALLOCATE (group[i].entry, int, group[i].NENTRY);
+  }
+
+  sortvecset (distance->elements.Flt, index1->elements.Int, index2->elements.Int, index2->Nelements);
+  
+  for (i = 0; i < distance->Nelements; i++) {
+    int Nnew;
+    int found;
+
+    if (distance->elements.Flt[i] > scale) continue;
+
+    found = FALSE;
+
+    Nnew = index1->elements.Int[i];
+    if (object[Nnew].group == -1) {
+      add_to_group (Nnew, scale, Nfriends);
+      // fprintf (stderr, "new group %d part 1 with %d elements\n", Ngroup, group[Ngroup].Nentry);
+      found = TRUE;
+    }
+
+    Nnew = index2->elements.Int[i];
+    if (object[Nnew].group == -1) {
+      add_to_group (Nnew, scale, Nfriends);
+      // fprintf (stderr, "new group %d part 1 with %d elements\n", Ngroup, group[Ngroup].Nentry);
+      found = TRUE;
+    }
+
+    if (found) {
+      fprintf (stderr, "group %d with %d elements\n", Ngroup, group[Ngroup].Nentry);
+      Ngroup ++;
+      if (Ngroup >= NGROUP) abort();
+    }
+  }
+
+  if (1) {
+    int Nmiss = 0;
+    for (i = 0; i < Nobject; i++) {
+      if (object[i].group > -1) continue;
+      Nmiss ++;
+      // fprintf (stderr, "object %d not assigned\n", i);
+      for (j = 0; FALSE && j < object[i].Ndist; j++) {
+	fprintf (stderr, "friend %d, dist %f\n", object[i].friend[j], object[i].dist[j]);
+      }
+    }
+    fprintf (stderr, "%d objects not assigned\n", Nmiss);
+  } 
+
+  return TRUE;
+  
+ escape: 
+  gprint (GP_ERR, "invalid vector\n");
+  return FALSE;
+  
+usage:
+  gprint (GP_ERR, "USAGE: mkclusters (index1) (index2) (distance) scale\n");
+  return FALSE;
+}
+
+/* this function takes 3 vectors: a set of distances and a pair of indicies identifying the end points.  
+   
+   the goal is to generate groups of the end points that are relatively closer.
+
+   note that the distances may not be Euclidean: nothing can be assumed about relationships between d(1,2), d(2,3), and d(1,3)
+
+   the indicies should be sequential.  the algorithm does not require it, but storage is much cleaner if it is
+
+*/
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/specpairfit.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/specpairfit.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/specpairfit.c	(revision 34041)
@@ -0,0 +1,61 @@
+# include "astro.h"
+
+int specpairfit (int argc, char **argv) {
+  
+  int i;
+  Vector *flux1, *flux2, *dflux1, *dflux2, *window;
+
+  if (argc != 7) goto usage;
+
+  if ((flux1  = SelectVector (argv[1], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((dflux1 = SelectVector (argv[2], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((flux2  = SelectVector (argv[3], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((dflux2 = SelectVector (argv[4], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((window = SelectVector (argv[5], OLDVECTOR, TRUE)) == NULL) goto escape;
+  
+  // XXX enforce matching lengths on the 6 vectors
+
+  int mask = atoi (argv[6]);
+  CastVector (window, OPIHI_INT);
+
+  // minimize (flux1 - flux2*alpha) in window defined by mask
+  // note that the mask is a SELECTION mask not an EXCLUSION mask
+
+  double F12 = 0.0; 
+  double F22 = 0.0;
+  for (i = 0; i < flux1->Nelements; i++) {
+    if ((mask & window->elements.Int[i]) == 0) continue;
+    double weight = 1.0 / (SQ(dflux1->elements.Flt[i]) + SQ(dflux2->elements.Flt[i]));
+    F12 += flux1->elements.Flt[i] * flux2->elements.Flt[i] * weight;
+    F22 += flux2->elements.Flt[i] * flux2->elements.Flt[i] * weight;
+  }
+
+  double Ao = F12 / F22;
+  double dA = sqrt(1.0 / F22);
+
+  int Ndof = -1; // 1 parameter fit
+  double chisq = 0.0;
+  for (i = 0; i < flux1->Nelements; i++) {
+    if ((mask & window->elements.Int[i]) == 0) continue;
+    double weight = 1.0 / (SQ(dflux1->elements.Flt[i]) + SQ(dflux2->elements.Flt[i]));
+    chisq += SQ(flux1->elements.Flt[i] - Ao * flux2->elements.Flt[i]) * weight;
+    Ndof ++;
+  }
+
+  double chisqNu = chisq / Ndof;
+
+  // fprintf (stderr, "Ao: %f +/- %f, chisq: %f, chisq_nu : %f for %d dof\n", Ao, dA, chisq, chisqNu, Ndof);
+  set_variable ("Ao", Ao);
+  set_variable ("dA", dA);
+  set_variable ("Xv", chisqNu);
+  set_variable ("Nd", Ndof);
+  return (TRUE);
+  
+ escape: 
+  gprint (GP_ERR, "invalid vector\n");
+  return (FALSE);
+  
+usage:
+  gprint (GP_ERR, "USAGE: specpairfit (flux1) (dflux1) (flux2) (dflux2) (window) (mask) [options]\n");
+  return FALSE;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/spex1dgas.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/spex1dgas.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/spex1dgas.c	(revision 34041)
@@ -0,0 +1,438 @@
+# include "astro.h"
+
+/* We have N objects with N(N-1)/2 paired distances.  We want to find the 1D distribution that
+   best describes the observed distances.  Assume the distances are in a 1D space, though in
+   principle it could be N-D or even non-euclidean.
+
+   Model the points as a gas under pressure.  
+
+   Start with the a guess for positions of the objects at some locations in 2D
+
+   P = (d_now - d_tru)
+
+   Iterate over the points and move in X,Y
+
+   Find (dP/dX,dP/dY) for modest moves in X,Y
+
+   Move based on dP
+
+   USAGE: spex1dgas incdex1 index2 distance
+
+   outline:
+
+   * load data
+   * generate the unique objects
+   * determine the max distance needed
+   * place each object in the 2D space
+
+   * iterate:
+   ** calculate dP/dX,dPdY for each object
+   ** move each object proportionally to the pressure gradient
+
+   */
+
+typedef struct {
+  int Nindex;   // number of tested relationships
+  int NINDEX;   // number of allocated relationships
+  int *index;  // indices for all other objects
+  float *Dtgt; // target distance for this relationship
+  float *Dcur; // current distance for this relationship
+  float Xo,Yo; // current X,Y position of this object
+  float dPdX;  // pressure in X
+  float dPdY;  // pressure in Y
+} Object;
+
+static Object *object = NULL;
+static int Nobject = 0;
+// static int NOBJECT = 0;
+
+void sortfriends (float *X, int *IDX1, int N);
+
+static void get_pressure_gradient (int iObj, int nCloseMax, float farFrac, int nearNeighbors, float maxPressure) {
+
+  int i;
+  
+  float dPdX = 0.0;
+
+  // only use the first N friends
+  for (i = 0; (i < object[iObj].Nindex); i++) {
+    int jObj = object[iObj].index[i];
+
+    // some options:
+    // if the iterations are small, we should only worry about getting the near neighbors right
+    // if the iterations are large, we should add in more distant objects
+    if (nearNeighbors && (i >= nCloseMax)) break;
+    if (!nearNeighbors && (i >= nCloseMax)) {
+      if (drand48() > farFrac) continue;
+    }
+
+    float Dtgt = object[iObj].Dtgt[i];
+    float dX = object[jObj].Xo - object[iObj].Xo;
+    float Dcur = dX;
+
+    // the force law as a function of (Dcur - Dtgt) : if Dcur is too large, dF is negative
+    // float dF = (Dcur < 0.01*Dtgt) ? -100.0 : (Dcur - Dtgt) / Dcur; XXX modified spring constant : too crazy
+    float dF = (Dcur - Dtgt);
+    dF = MIN (maxPressure, MAX (-maxPressure, dF));
+
+    float dPdXi;
+    if (fabs(Dcur) < 1e-6) {
+      dPdXi = 0.0;
+    } else {
+      dPdXi = dF;
+    }
+
+    if (isnan(Dtgt) || isnan(dX) || isnan(Dcur) || isnan(dF) || isnan(dPdXi)) abort();
+    dPdX += dPdXi;
+  }
+  object[iObj].dPdX = dPdX;
+  object[iObj].dPdY = 0.0;
+
+  return;
+}
+
+static void move_object (int iObj) {
+
+  object[iObj].Xo += 0.25*object[iObj].dPdX;
+  return;
+}
+
+int spex1dgas (int argc, char **argv) {
+  
+  int i, j, iter;
+  Vector *index1, *index2, *distance;
+  float *XoList;
+  int *IDList, *MidObj;
+
+  MidObj = NULL;
+  IDList = NULL;
+  XoList = NULL;
+  { 
+    // init random numbers
+    long A, B;
+    A = time(NULL);
+    for (B = 0; A == time(NULL); B++);
+    srand48(B);
+  }
+ 
+  if (argc != 11) goto usage;
+
+  // XXX enforce matching lengths on the three vectors
+  if ((index1   = SelectVector (argv[1], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((index2   = SelectVector (argv[2], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((distance = SelectVector (argv[3], OLDVECTOR, TRUE)) == NULL) goto escape;
+
+  int Niter = atoi (argv[4]);
+  int nCloseMax = atoi (argv[5]);
+  int nCloseIter = atoi (argv[6]);
+  float farFrac = atof (argv[7]);
+  float maxPressure = atof (argv[8]);
+
+  int idx1 = atoi(argv[9]);
+  int idx2 = atoi(argv[10]);
+
+  CastVector (index1, OPIHI_INT);
+  CastVector (index2, OPIHI_INT);
+
+  // how many objects do we have?
+  Nobject = 0;
+  for (i = 0; i < index1->Nelements; i++) {
+    Nobject = MAX (Nobject, index1->elements.Int[i]);
+    Nobject = MAX (Nobject, index2->elements.Int[i]);
+  }
+  Nobject ++;  // after the loop, Nobject has the value of the highest index, not the count
+
+  // allocate the list of Object -- these list the possible friends of the given object[i] 
+  ALLOCATE (object, Object, Nobject);
+  for (i = 0; i < Nobject; i++) {
+    ALLOCATE (object[i].index, int, Nobject);
+    memset (object[i].index, 0, Nobject*sizeof(int));
+    ALLOCATE (object[i].Dtgt, float, Nobject);
+    memset (object[i].Dtgt, 0, Nobject*sizeof(float));
+    ALLOCATE (object[i].Dcur, float, Nobject);
+    memset (object[i].Dcur, 0, Nobject*sizeof(float));
+    object[i].NINDEX = Nobject;
+    object[i].Nindex = 0;
+  }
+
+  // generate the set of vectors of all distances for each entry
+  // the object seq number (object[i]) will be used to match the index1 and index2 values
+  for (i = 0; i < index1->Nelements; i++) {
+    int N, m;
+
+    N = index1->elements.Int[i];
+    if (N >= Nobject) abort();
+    m = object[N].Nindex;
+    object[N].index[m] = index2->elements.Int[i];
+    object[N].Dtgt[m] = distance->elements.Flt[i];
+    object[N].Dcur[m] = 0.0;
+    object[N].Nindex ++;
+    if (object[N].Nindex == object[N].NINDEX) {
+      object[N].NINDEX += 100;
+      REALLOCATE (object[N].Dtgt, float, object[N].NINDEX);
+      REALLOCATE (object[N].Dcur, float, object[N].NINDEX);
+      REALLOCATE (object[N].index, int, object[N].NINDEX);
+    }
+
+    // Above we used the set (N,M,D_N,M) to assigned the distance of obj M to obj N.
+    // Below we use that set to assign the distance of obj N to obj M.  IF we supply all
+    // pairwise distances, then this duplicates all entries, so we need to skip that step
+    // in such a case.
+
+    // XX N = index2->elements.Int[i];
+    // XX if (N >= Nobject) abort();
+    // XX m = object[N].Nindex;
+    // XX object[N].index[m] = index1->elements.Int[i];
+    // XX object[N].Dtgt[m] = distance->elements.Flt[i];
+    // XX object[N].Dcur[m] = 0.0;
+    // XX object[N].Nindex ++;
+    // XX if (object[N].Nindex == object[N].NINDEX) {
+    // XX   object[N].NINDEX += 100;
+    // XX   REALLOCATE (object[N].Dtgt, float, object[N].NINDEX);
+    // XX   REALLOCATE (object[N].Dcur, float, object[N].NINDEX);
+    // XX   REALLOCATE (object[N].index, int, object[N].NINDEX);
+    // XX }
+  }
+
+  for (i = 0; i < Nobject; i++) {
+    // sort so closest friends are first
+    sortfriends (object[i].Dtgt, object[i].index, object[i].Nindex);
+  }
+
+  // find and save the max distance
+  float Dmax = 0;
+  for (i = 0; i < distance->Nelements; i++) {
+    Dmax = MAX (Dmax, distance->elements.Flt[i]);
+  }
+
+  // place the objects at the initial guess locations
+  // XXX let's try with just a simple grid dividing up the max range
+  // int Ngrid = sqrt(Nobject);
+  // float dgrid = 1.5 * Dmax / Ngrid; // XXX remove the fudge factor
+  // XXX for (i = 0; i < Nobject; i++) {
+  // XXX   // object[i].Xo = dgrid * (int) (i % Ngrid);
+  // XXX   // object[i].Yo = dgrid * (int) (i / Ngrid);
+  // XXX   object[i].Xo = Dmax*drand48();
+  // XXX   object[i].Yo = Dmax*drand48();
+  // XXX   object[i].dPdX = 0.0;
+  // XXX   object[i].dPdY = 0.0;
+  // XXX }
+
+  // place the objects at the initial guess locations
+  // use object 0 and its most distant friend to constrain:
+
+  // we are going to use the projected X distance as the location in X, and ignore the Y
+  // coordinate
+  
+  // need to get pretty close to a good starting point.  start with a guess using the first entry & its extremum
+  // int idx1 = object[0].index[(int)(0.75*object[0].Nindex)];
+  // int idx2 = object[idx1].index[(int)(0.75*object[idx1].Nindex)];
+  float A = NAN;
+  for (i = 0; isnan (A) && (i < object[idx2].Nindex); i++) {
+      if (object[idx2].index[i] == idx1) {
+	  A = object[idx2].Dtgt[i];
+      }
+  }
+  fprintf (stderr, "idx1: %d, idx2: %d, A: %f\n", idx1, idx2, A);
+  set_variable ("SP1D_A", A);
+  object[idx1].Xo = 0.0;
+  object[idx1].Yo = 0.0;
+  object[idx1].dPdX = 0.0;
+  object[idx1].dPdY = 0.0;
+
+  object[idx2].Xo = A;
+  object[idx2].Yo = 0.0;
+  object[idx2].dPdX = 0.0;
+  object[idx2].dPdY = 0.0;
+		 
+  Vector *tmpB = SelectVector ("sp1d_B", ANYVECTOR, TRUE); 
+  Vector *tmpC = SelectVector ("sp1d_C", ANYVECTOR, TRUE); 
+  ResetVector (tmpB, OPIHI_FLT, Nobject);
+  ResetVector (tmpC, OPIHI_FLT, Nobject);
+
+  for (i = 0; i < Nobject; i++) {
+    if (i == idx1) continue;
+    if (i == idx2) continue;
+    float B = NAN;
+    float C = NAN;
+    for (j = 0; (isnan(B) || isnan(C)) && (j < object[i].Nindex); j++) {
+      if (object[i].index[j] == idx1) { B = object[i].Dtgt[j]; }
+      if (object[i].index[j] == idx2) { C = object[i].Dtgt[j]; }
+    }
+    if (isnan(B) || isnan(C)) abort();
+
+    // C^2 = A^2 + B^2 - 2AB cos(t)
+    // Xo = B cos(t)
+    // Xo = A^2 + B^2 - C^2 / 2 A
+    float Xo = (SQ(A) + SQ(B) - SQ(C)) / (2*A);
+
+    object[i].Xo = Xo;
+    object[i].dPdX = 0.0;
+    object[i].Yo = 0.0;
+    object[i].dPdY = 0.0;
+    tmpB->elements.Flt[i] = B;
+    tmpC->elements.Flt[i] = C;
+  }
+  tmpB->elements.Flt[idx1] = 0;
+  tmpB->elements.Flt[idx2] = A;
+  tmpC->elements.Flt[idx1] = A;
+  tmpC->elements.Flt[idx2] = 0;
+
+  if (Niter >= -1) {
+    // now choose several in the middle of the range, and find the mean distance for each relative to that group
+    ALLOCATE (XoList, float, Nobject);
+    ALLOCATE (IDList, int, Nobject);
+    for (i = 0; i < Nobject; i++) {
+      XoList[i] = object[i].Xo;
+      IDList[i] = i;
+    }
+    sortfriends (XoList, IDList, Nobject);
+    float XoMid = XoList[(int)(Nobject/2)];
+
+# define NMID 5
+    ALLOCATE (MidObj, int, NMID);
+    MidObj[0] = IDList[(int)(Nobject/2) + 0];
+    MidObj[1] = IDList[(int)(Nobject/2) + 1];
+    MidObj[2] = IDList[(int)(Nobject/2) - 1];
+    MidObj[3] = IDList[(int)(Nobject/2) + 2];
+    MidObj[4] = IDList[(int)(Nobject/2) - 2];
+
+    for (i = 0; i < Nobject; i++) {
+      for (j = 0; j < NMID; j++) {
+	if (MidObj[j] == i) goto skip_object;
+      }
+      float Dmean = 0.0;
+      for (j = 0; j < NMID; j++) {
+	Dmean += object[i].Dtgt[MidObj[j]]; // desired distance between object (i) and object in middle section
+      }
+      Dmean = Dmean / NMID;
+      if (object[i].Xo < XoMid) {
+	object[i].Xo = XoMid - Dmean;
+      } else {
+	object[i].Xo = XoMid + Dmean;
+      }
+    skip_object:
+      continue;
+    }
+  }
+
+  if (Niter >= 0) {
+    float XoMean = 0.0;
+    // now choose one end of the range, and find the mean distance for each relative to THAT group
+    for (i = 0; i < Nobject; i++) {
+      XoList[i] = object[i].Xo;
+      IDList[i] = i;
+      XoMean += object[i].Xo;
+    }
+    XoMean = XoMean / Nobject;
+    sortfriends (XoList, IDList, Nobject);
+    float XoMin = XoList[0];
+
+    MidObj[0] = IDList[0];
+    MidObj[1] = IDList[1];
+    MidObj[2] = IDList[2];
+    MidObj[3] = IDList[3];
+    MidObj[4] = IDList[4];
+
+    for (i = 0; i < Nobject; i++) {
+      for (j = 0; j < NMID; j++) {
+	if (MidObj[j] == i) goto skip_object_p2;
+      }
+      float Dmean = 0.0;
+      for (j = 0; j < NMID; j++) {
+	Dmean += object[i].Dtgt[MidObj[j]]; // desired distance between object (i) and object in middle section
+      }
+      Dmean = Dmean / NMID;
+      if (object[i].Xo < XoMin) {
+	object[i].Xo = XoMin - Dmean;
+      } else {
+	object[i].Xo = XoMin + Dmean;
+      }
+    skip_object_p2:
+      continue;
+    }
+  }
+
+  for (iter = 0; iter < Niter; iter ++) {
+    fprintf (stderr, "iter %d\n", iter);
+
+    int nearNeighbors = (iter < nCloseIter);
+
+    // save the result
+    if (0) {
+      char name[64];
+      snprintf (name, 64, "output.%02d.dat", iter);
+      FILE *output = fopen (name, "w");
+      for (i = 0; i < Nobject; i++) {
+	fprintf (output, "%f %f : %f %f\n", object[i].Xo, object[i].Yo, object[i].dPdX, object[i].dPdY);
+      }
+      fclose (output);
+    }
+
+    // measure (dP/dX) & move object
+    for (i = 0; i < Nobject; i++) {
+      get_pressure_gradient (i, nCloseMax, farFrac, nearNeighbors, maxPressure);
+      move_object (i);
+    }
+  }
+
+  // find the mean Xo, Yo positions for all objects
+  float XoSum = 0.0;
+  for (i = 0; i < Nobject; i++) {
+    float dY2sum = 0.0;
+    int Npts = 0;
+    for (j = 0; (j < nCloseMax) && (j < object[i].Nindex); j++) {
+      int idx = object[i].index[j];
+      float dR2 = SQ(object[i].Dtgt[j]);
+      float dX2 = SQ(object[i].Xo - object[idx].Xo);
+      float dY2 = dR2 - dX2;
+      dY2sum += dY2;
+      Npts ++;
+    }
+    XoSum += object[i].Xo;
+    object[i].Yo = (dY2sum > 0.0) ? sqrt(fabs(dY2sum / Npts)) : -sqrt(fabs(dY2sum / Npts));
+  }
+  float XoMean = XoSum / Nobject;
+
+  // remove the mean Xo (uninteresting)
+  for (i = 0; i < Nobject; i++) {
+    object[i].Xo -= XoMean;
+  }
+
+  // save the result
+  {
+    Vector *outindex = SelectVector ("sp1d_idx", ANYVECTOR, TRUE); if (!outindex) goto escape;
+    Vector *outXo    = SelectVector ("sp1d_Xo",  ANYVECTOR, TRUE); if (!outXo) goto escape;
+    Vector *outYo    = SelectVector ("sp1d_Yo",  ANYVECTOR, TRUE); if (!outYo) goto escape;
+
+    ResetVector (outindex, OPIHI_INT, Nobject);
+    ResetVector (outXo, OPIHI_FLT, Nobject);
+    ResetVector (outYo, OPIHI_FLT, Nobject);
+
+    for (i = 0; i < Nobject; i++) {
+      outindex->elements.Int[i] = i;
+      outXo->elements.Flt[i] = object[i].Xo;
+      outYo->elements.Flt[i] = object[i].Yo;
+    }
+  }
+
+  return TRUE;
+  
+escape: 
+  gprint (GP_ERR, "invalid vector\n");
+  return FALSE;
+  
+usage:
+  gprint (GP_ERR, "USAGE: spex2dgas (index1) (index2) (distance) (Niter) (nCloseMax) (nCloseIter) (farFrac) (maxPressure) (idx1) (idx2)\n");
+  return FALSE;
+}
+
+/* this function takes 3 vectors: a set of distances and a pair of indicies identifying the end points.  
+   
+   the goal is to generate groups of the end points that are relatively closer.
+
+   note that the distances may not be Euclidean: nothing can be assumed about relationships between d(1,2), d(2,3), and d(1,3)
+
+   the indicies should be sequential.  the algorithm does not require it, but storage is much cleaner if it is
+
+*/
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/spex2dgas.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/spex2dgas.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/spex2dgas.c	(revision 34041)
@@ -0,0 +1,344 @@
+# include "astro.h"
+
+/* We have N objects with N(N-1)/2 paired distances.  We want to find the 2D distribution that
+   best describes the observed distances.  Assume the distances are in a 2D space, though in
+   principle it could be N-D or even non-euclidean.
+
+   Model the points as a gas under pressure.  
+
+   Start with the a guess for positions of the objects at some locations in 2D
+
+   P = (d_now - d_tru)
+
+   Iterate over the points and move in X,Y
+
+   Find (dP/dX,dP/dY) for modest moves in X,Y
+
+   Move based on dP
+
+   USAGE: spex2dgas incdex1 index2 distance
+
+   outline:
+
+   * load data
+   * generate the unique objects
+   * determine the max distance needed
+   * place each object in the 2D space
+
+   * iterate:
+   ** calculate dP/dX,dPdY for each object
+   ** move each object proportionally to the pressure gradient
+
+   */
+
+typedef struct {
+  int Nindex;   // number of tested relationships
+  int NINDEX;   // number of allocated relationships
+  int *index;  // indices for all other objects
+  float *Dtgt; // target distance for this relationship
+  float *Dcur; // current distance for this relationship
+  float Xo,Yo; // current X,Y position of this object
+  float dPdX;  // pressure in X
+  float dPdY;  // pressure in Y
+} Object;
+
+static Object *object = NULL;
+static int Nobject = 0;
+// static int NOBJECT = 0;
+
+void sortfriends (float *X, int *IDX1, int N);
+
+static void get_pressure_gradient (int iObj, int nCloseMax, float farFrac, int nearNeighbors, float maxPressure) {
+
+  int i;
+  
+  float dPdX = 0.0;
+  float dPdY = 0.0;
+
+  // only use the first N friends
+  for (i = 0; (i < object[iObj].Nindex); i++) {
+    int jObj = object[iObj].index[i];
+
+    // some options:
+    // if the iterations are small, we should only worry about getting the near neighbors right
+    // if the iterations are large, we should add in more distant objects
+    if (nearNeighbors && (i >= nCloseMax)) break;
+    if (!nearNeighbors && (i >= nCloseMax)) {
+      if (drand48() > farFrac) continue;
+    }
+
+    float Dtgt = object[iObj].Dtgt[i];
+    float dX = object[jObj].Xo - object[iObj].Xo;
+    float dY = object[jObj].Yo - object[iObj].Yo;
+    float Dcur = hypot(dX,dY);
+
+    // the force law as a function of (Dcur - Dtgt) : if Dcur is too large, dF is negative
+    // float dF = (Dcur < 0.01*Dtgt) ? -100.0 : (Dcur - Dtgt) / Dcur; XXX modified spring constant : too crazy
+    float dF = (Dcur - Dtgt);
+    dF = MIN (maxPressure, MAX (-maxPressure, dF));
+
+    float dPdXi, dPdYi;
+    if (fabs(Dcur) < 1e-6) {
+      dPdXi = 0.0;
+      dPdYi = 0.0;
+    } else {
+      dPdXi = dF * dX / Dcur;
+      dPdYi = dF * dY / Dcur;
+    }
+
+    if (isnan(Dtgt) || isnan(dX) || isnan(dY) || isnan(Dcur) || isnan(dF) || isnan(dPdXi) || isnan(dPdYi)) abort();
+
+    // if we are too close, then dX/Dcur is too ill-defined, just jump away by 5% of Dtgt
+    if (Dcur < 0.01*Dtgt) {
+      dPdXi = (drand48() - 0.5)*0.1*Dtgt;
+      dPdYi = (drand48() - 0.5)*0.1*Dtgt;
+    }
+
+    if (i >= nCloseMax) {
+      fprintf (stderr, "Dcur,Dtgt : %f %f : dX,dY,dP : %f %f : %f : %f %f\n", Dcur, Dtgt, dX, dY, dF, dPdXi, dPdYi);
+    }
+    dPdX += dPdXi;
+    dPdY += dPdYi;
+  }
+  object[iObj].dPdX = dPdX;
+  object[iObj].dPdY = dPdY;
+
+  return;
+}
+
+static void move_object (int iObj) {
+
+  object[iObj].Xo += 0.25*object[iObj].dPdX;
+  object[iObj].Yo += 0.25*object[iObj].dPdY;
+  return;
+}
+
+int spex2dgas (int argc, char **argv) {
+  
+  int i, j, iter, IoMax;
+  Vector *index1, *index2, *distance;
+  float XoMax, YoMax;
+
+  { 
+    // init random numbers
+    long A, B;
+    A = time(NULL);
+    for (B = 0; A == time(NULL); B++);
+    srand48(B);
+  }
+ 
+  if (argc != 9) goto usage;
+
+  if ((index1   = SelectVector (argv[1], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((index2   = SelectVector (argv[2], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((distance = SelectVector (argv[3], OLDVECTOR, TRUE)) == NULL) goto escape;
+  int Niter = atoi (argv[4]);
+  int nCloseMax = atoi (argv[5]);
+  int nCloseIter = atoi (argv[6]);
+  float farFrac = atof (argv[7]);
+  float maxPressure = atof (argv[8]);
+  // XXX enforce matching lengths on the three vectors
+
+  CastVector (index1, OPIHI_INT);
+  CastVector (index2, OPIHI_INT);
+
+  // how many objects do we have?
+  Nobject = 0;
+  for (i = 0; i < index1->Nelements; i++) {
+    Nobject = MAX (Nobject, index1->elements.Int[i]);
+    Nobject = MAX (Nobject, index2->elements.Int[i]);
+  }
+  Nobject ++;  // after the loop, Nobject has the value of the highest index, not the count
+
+  // allocate the list of Object -- these list the possible friends of the given object[i] 
+  ALLOCATE (object, Object, Nobject);
+  for (i = 0; i < Nobject; i++) {
+    ALLOCATE (object[i].index, int, Nobject);
+    memset (object[i].index, 0, Nobject*sizeof(int));
+    ALLOCATE (object[i].Dtgt, float, Nobject);
+    memset (object[i].Dtgt, 0, Nobject*sizeof(float));
+    ALLOCATE (object[i].Dcur, float, Nobject);
+    memset (object[i].Dcur, 0, Nobject*sizeof(float));
+    object[i].NINDEX = Nobject;
+    object[i].Nindex = 0;
+  }
+
+  // generate the set of vectors of all distances for each entry
+  // the object seq number (object[i]) will be used to match the index1 and index2 values
+  for (i = 0; i < index1->Nelements; i++) {
+    int N, m;
+
+    N = index1->elements.Int[i];
+    if (N >= Nobject) abort();
+    m = object[N].Nindex;
+    object[N].index[m] = index2->elements.Int[i];
+    object[N].Dtgt[m] = distance->elements.Flt[i];
+    object[N].Dcur[m] = 0.0;
+    object[N].Nindex ++;
+    if (object[N].Nindex == object[N].NINDEX) {
+      object[N].NINDEX += 100;
+      REALLOCATE (object[N].Dtgt, float, object[N].NINDEX);
+      REALLOCATE (object[N].Dcur, float, object[N].NINDEX);
+      REALLOCATE (object[N].index, int, object[N].NINDEX);
+    }
+
+    N = index2->elements.Int[i];
+    if (N >= Nobject) abort();
+    m = object[N].Nindex;
+    object[N].index[m] = index1->elements.Int[i];
+    object[N].Dtgt[m] = distance->elements.Flt[i];
+    object[N].Dcur[m] = 0.0;
+    object[N].Nindex ++;
+    if (object[N].Nindex == object[N].NINDEX) {
+      object[N].NINDEX += 100;
+      REALLOCATE (object[N].Dtgt, float, object[N].NINDEX);
+      REALLOCATE (object[N].Dcur, float, object[N].NINDEX);
+      REALLOCATE (object[N].index, int, object[N].NINDEX);
+    }
+  }
+
+  for (i = 0; i < Nobject; i++) {
+    // sort so closest friends are first
+    sortfriends (object[i].Dtgt, object[i].index, object[i].Nindex);
+  }
+
+  // find and save the max distance
+  float Dmax = 0;
+  for (i = 0; i < distance->Nelements; i++) {
+    Dmax = MAX (Dmax, distance->elements.Flt[i]);
+  }
+
+  // place the objects at the initial guess locations
+  // XXX let's try with just a simple grid dividing up the max range
+  // int Ngrid = sqrt(Nobject);
+  // float dgrid = 1.5 * Dmax / Ngrid; // XXX remove the fudge factor
+  // XXX for (i = 0; i < Nobject; i++) {
+  // XXX   // object[i].Xo = dgrid * (int) (i % Ngrid);
+  // XXX   // object[i].Yo = dgrid * (int) (i / Ngrid);
+  // XXX   object[i].Xo = Dmax*drand48();
+  // XXX   object[i].Yo = Dmax*drand48();
+  // XXX   object[i].dPdX = 0.0;
+  // XXX   object[i].dPdY = 0.0;
+  // XXX }
+
+  // place the objects at the initial guess locations
+  // use object 0 and its most distant friend to constrain:
+  
+  int idx1 = 0;
+  int idx2 = object[idx1].index[object[idx1].Nindex-1];
+  float A = object[idx1].Dtgt[object[idx1].Nindex-1];
+  object[idx1].Xo = 0.0;
+  object[idx1].Yo = 0.0;
+  object[idx1].dPdX = 0.0;
+  object[idx1].dPdY = 0.0;
+
+  object[idx2].Xo = A;
+  object[idx2].Yo = 0.0;
+  object[idx2].dPdX = 0.0;
+  object[idx2].dPdY = 0.0;
+		 
+  // choose the correct Y side by comparing to the distance from the most deviant
+  YoMax = 0;
+  XoMax = 0;
+  IoMax = 0;
+
+  for (i = 0; i < Nobject; i++) {
+    if (i == idx1) continue;
+    if (i == idx2) continue;
+    float B = NAN;
+    float C = NAN;
+    for (j = 0; (isnan(B) || isnan(C)) && (j < object[i].Nindex); j++) {
+      if (object[i].index[j] == idx1) { B = object[i].Dtgt[j]; }
+      if (object[i].index[j] == idx2) { C = object[i].Dtgt[j]; }
+    }
+    if (isnan(B) || isnan(C)) abort();
+
+    float Xo = (SQ(A) + SQ(B) - SQ(C)) / (2*A);
+    float Y2 = SQ(B) - SQ(Xo);
+
+    float Yo = (Y2 < 0) ? 0.0 : sqrt(Y2);
+    if (isnan(Yo)) abort();
+
+    object[i].Xo = Xo;
+    object[i].Yo = Yo;
+    object[i].dPdX = 0.0;
+    object[i].dPdY = 0.0;
+    if (Yo > YoMax) {
+      YoMax = Yo;
+      XoMax = Xo;
+      IoMax = i;
+    }
+  }
+
+  for (i = 0; i < Nobject; i++) {
+    if (i == idx1) continue;
+    if (i == idx2) continue;
+    if (i == IoMax) continue;
+    for (j = 0; j < object[i].Nindex; j++) {
+      if (object[i].index[j] == IoMax) { 
+	float d02 = SQ(object[i].Dtgt[j]);
+	float dX  = XoMax - object[i].Xo;
+	float dY1 = YoMax - object[i].Yo;
+	float dY2 = YoMax + object[i].Yo;
+	float d12 = SQ(dX) + SQ(dY1);
+	float d22 = SQ(dX) + SQ(dY2);
+	if (fabs(d12 - d02) > fabs(d22 - d02)) {
+	  object[i].Yo = -object[i].Yo;
+	  break;
+	}
+      }
+    }
+  }
+
+  for (iter = 0; iter < Niter; iter ++) {
+    fprintf (stderr, "iter %d\n", iter);
+
+    int nearNeighbors = (iter < nCloseIter);
+
+    // save the result
+    char name[64];
+    snprintf (name, 64, "output.%02d.dat", iter);
+    FILE *output = fopen (name, "w");
+    for (i = 0; i < Nobject; i++) {
+      fprintf (output, "%f %f : %f %f\n", object[i].Xo, object[i].Yo, object[i].dPdX, object[i].dPdY);
+    }
+    fclose (output);
+
+    // measure (dP/dX),(dP/dY) for all objects
+    for (i = 0; i < Nobject; i++) {
+      get_pressure_gradient (i, nCloseMax, farFrac, nearNeighbors, maxPressure);
+      move_object (i);
+    }
+
+    // given (dP/dX),(dP/dY), move each object 
+    // for (i = 0; i < Nobject; i++) {
+    // }
+  }
+
+  // save the result
+  FILE *output = fopen ("output.dat", "w");
+  for (i = 0; i < Nobject; i++) {
+    fprintf (output, "%f %f : %f %f\n", object[i].Xo, object[i].Yo, object[i].dPdX, object[i].dPdY);
+  }
+  fclose (output);
+
+  return TRUE;
+  
+escape: 
+  gprint (GP_ERR, "invalid vector\n");
+  return FALSE;
+  
+usage:
+  gprint (GP_ERR, "USAGE: spex2dgas (index1) (index2) (distance) (Niter) (nCloseMax) (nCloseIter) (farFrac) (maxPressure)\n");
+  return FALSE;
+}
+
+/* this function takes 3 vectors: a set of distances and a pair of indicies identifying the end points.  
+   
+   the goal is to generate groups of the end points that are relatively closer.
+
+   note that the distances may not be Euclidean: nothing can be assumed about relationships between d(1,2), d(2,3), and d(1,3)
+
+   the indicies should be sequential.  the algorithm does not require it, but storage is much cleaner if it is
+
+*/
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/spexseq.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/spexseq.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.astro/spexseq.c	(revision 34041)
@@ -0,0 +1,381 @@
+# include "astro.h"
+
+/* We have N objects with N(N-1)/2 paired chisq.  We want to find the 1D sequence / index that
+   best describes the observed distances.  
+
+   A sequence is best described by the distances from objects which are only modestly close.
+   If we get too close to the reference, we (a) hit a non-euclidean (or N-D) minimum (A-B ~ A-C
+   ~ B-C) and (b) the positive and negative sides of the sequence are ambiguous.  If we get too
+   far away, the distances are all either equivalent or less consistent
+
+   1) find the dynamic range of distances
+
+   2) choose object (1) and select a friend (2) > a fixed fraction of the full dynamic range (say,
+   10-20%)
+
+   3) all nearby friends of (1) (D < f MaxDist) have sequences assigned based on the distance
+   to (2).  center based on the distance (1)-(2) ie, (1) gets a sequence value of 0.0
+
+   4) choose another object (1') and repeat [need to choose (2') on the same side as (2)?]
+
+   ** reconciliation is a bit tricky
+   ** edge effects imply that we prefer to start in the center
+   ** is this well-defined? 
+
+   */
+
+typedef struct {
+  int Nindex;   // number of tested relationships
+  int NINDEX;   // number of allocated relationships
+  int *index;  // index for distances to other objects: object[i].Dtgt[j] is distance from object[i] to object[idx] where idx = object[i].index[j] (sorted by Dtgt)
+  int *rindex;  // reverse index for Dtgt: distance from object[i] to object[idx] is object[i].Dtgt[j] where object[i].rindex[idx] = j
+  int shifted; // has this object already had the sequence adjusted?
+  float *Dtgt; // target distance for this relationship
+  float *seq;  // sequence value for this friend
+  float So, dSo;
+  float Xo, dXo;
+  float Yo, dYo;
+  float Srange;
+  int nSeq;
+} Object;
+
+void sortfriends (float *X, int *IDX1, int N);
+
+void get_sequence (Object *object, int Nobject, int idx1, float Dmax, float f1, float f2, int pin1, int pin2) {
+
+  int i, j, N;
+
+  // object (1) is provided above; choose object (2)
+  int idx2 = -1;
+  float A = NAN;
+  for (i = 0; (idx2 == -1) && (i < object[idx1].Nindex); i++) {
+    if (object[idx1].Dtgt[i] > f1*Dmax) {
+      idx2 = object[idx1].index[i];
+    }
+    A = object[idx1].Dtgt[i];
+  }
+  // fprintf (stderr, "idx1: %d, idx2: %d, A: %f\n", idx1, idx2, A);
+  // set_variable ("SP1D_A", A);
+
+  // is idx2 closer to pin1 or pin2?
+  // XX N = object[idx2].rindex[pin1];
+  // XX float D1 = object[idx2].Dtgt[N];
+  // XX N = object[idx2].rindex[pin2];
+  // XX float D2 = object[idx2].Dtgt[N];
+  // XX int parity = (D1 < D2) ? +1 : -1;
+
+  int Nfriends = 0;
+  for (i = 0; (object[idx1].Dtgt[i] < f2*Dmax) && (i < object[idx1].Nindex); i++) {
+    // what is the distance from this friend to object (2)?
+    N = object[idx1].index[i];
+    j = object[idx2].rindex[N];
+    assert (object[idx2].index[j] == N);
+    // XX object[idx1].seq[i] = parity*(object[idx2].Dtgt[j] - A);
+    object[idx1].seq[i] = (object[idx2].Dtgt[j] - A);
+    Nfriends ++;
+  }
+  assert (Nfriends <= object[idx1].Nindex);
+  assert (Nfriends <= Nobject);
+  fprintf (stderr, "object %d sequenced by object %d, %d friends sequenced\n", idx1, idx2, Nfriends);
+  return;
+}
+
+int spexseq (int argc, char **argv) {
+  
+  int i, j, k;
+  Vector *index1, *index2, *distance;
+  Object *object = NULL;
+  int Nobject = 0;
+
+  { 
+    // init random numbers
+    long A, B;
+    A = time(NULL);
+    for (B = 0; A == time(NULL); B++);
+    srand48(B);
+  }
+ 
+  if (argc != 6) goto usage;
+
+  // XXX enforce matching lengths on the three vectors
+  if ((index1   = SelectVector (argv[1], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((index2   = SelectVector (argv[2], OLDVECTOR, TRUE)) == NULL) goto escape;
+  if ((distance = SelectVector (argv[3], OLDVECTOR, TRUE)) == NULL) goto escape;
+
+  float f1 = atof (argv[4]);
+  float f2 = atof (argv[5]);
+
+  // int idx1 = atoi(argv[9]);
+  // int idx2 = atoi(argv[10]);
+
+  CastVector (index1, OPIHI_INT);
+  CastVector (index2, OPIHI_INT);
+
+  // how many objects do we have?
+  Nobject = 0;
+  for (i = 0; i < index1->Nelements; i++) {
+    Nobject = MAX (Nobject, index1->elements.Int[i]);
+    Nobject = MAX (Nobject, index2->elements.Int[i]);
+  }
+  Nobject ++;  // after the loop, Nobject has the value of the highest index, not the count
+
+  // allocate the list of Object -- these list the possible friends of the given object[i] 
+  ALLOCATE (object, Object, Nobject);
+  for (i = 0; i < Nobject; i++) {
+    ALLOCATE (object[i].index, int, Nobject);
+    memset (object[i].index, 0, Nobject*sizeof(int));
+    ALLOCATE (object[i].Dtgt, float, Nobject);
+    memset (object[i].Dtgt, 0, Nobject*sizeof(float));
+    object[i].NINDEX = Nobject;
+    object[i].Nindex = 0;
+  }
+
+  // generate the set of vectors of all distances for each entry
+  // the object seq number (object[i]) will be used to match the index1 and index2 values
+  for (i = 0; i < index1->Nelements; i++) {
+    int N, m;
+
+    N = index1->elements.Int[i];
+    if (N >= Nobject) abort();
+    m = object[N].Nindex;
+    object[N].index[m] = index2->elements.Int[i];
+    object[N].Dtgt[m] = distance->elements.Flt[i];
+    object[N].Nindex ++;
+    if (object[N].Nindex == object[N].NINDEX) {
+      object[N].NINDEX += 100;
+      REALLOCATE (object[N].Dtgt, float, object[N].NINDEX);
+      REALLOCATE (object[N].index, int, object[N].NINDEX);
+    }
+
+    // Above we used the set (N,M,D_N,M) to assigned the distance of obj M to obj N.
+    // Below we use that set to assign the distance of obj N to obj M.  IF we supply all
+    // pairwise distances, then this duplicates all entries, so we need to skip that step
+    // in such a case.
+
+    // XX N = index2->elements.Int[i];
+    // XX if (N >= Nobject) abort();
+    // XX m = object[N].Nindex;
+    // XX object[N].index[m] = index1->elements.Int[i];
+    // XX object[N].Dtgt[m] = distance->elements.Flt[i];
+    // XX object[N].Nindex ++;
+    // XX if (object[N].Nindex == object[N].NINDEX) {
+    // XX   object[N].NINDEX += 100;
+    // XX   REALLOCATE (object[N].Dtgt, float, object[N].NINDEX);
+    // XX   REALLOCATE (object[N].index, int, object[N].NINDEX);
+    // XX }
+  }
+
+  for (i = 0; i < Nobject; i++) {
+    // sort so closest friends are first
+    sortfriends (object[i].Dtgt, object[i].index, object[i].Nindex);
+    object[i].shifted = FALSE;
+    object[i].So = NAN;
+    object[i].dSo = NAN;
+    object[i].Xo = NAN;
+    object[i].dXo = NAN;
+    // generate the reverse index
+    REALLOCATE (object[i].rindex, int, object[i].Nindex);
+    REALLOCATE (object[i].seq, float, object[i].Nindex);
+    for (j = 0; j < object[i].Nindex; j++) {
+      int N = object[i].index[j];
+      object[i].rindex[N] = j;
+      object[i].seq[j] = NAN;
+    }
+  }
+
+  // find and save the max distance
+  float Dmax = 0;
+  for (i = 0; i < distance->Nelements; i++) {
+    Dmax = MAX (Dmax, distance->elements.Flt[i]);
+  }
+
+  // find two objects at the opposite extremes
+  float Dm1 = object[0].Dtgt[object[0].Nindex - 1];
+  for (i = 0; (object[0].Dtgt[i] < 0.75*Dm1) && (i < object[0].Nindex); i++);
+  int pin1 = object[0].index[i];
+  assert (pin1 >= 0);
+  assert (pin1 < Nobject);
+
+  float Dm2 = object[pin1].Dtgt[object[pin1].Nindex - 1];
+  for (i = 0; (object[pin1].Dtgt[i] < 0.75*Dm2) && (i < object[pin1].Nindex); i++);
+  int pin2 = object[pin1].index[i];
+  assert (pin2 >= 0);
+  assert (pin2 < Nobject);
+
+  // generate sequences for the near friends of all objects based on a somewhat distant friend
+  for (i = 0; i < Nobject; i++) {
+    get_sequence (object, Nobject, i, Dmax, f1, f2, pin1, pin2);
+  }
+
+  // now we need to reconcile these sequences.
+  // start with object 0, find shift of all friends relative to 0
+  object[0].shifted = TRUE;
+  for (i = 0; i < Nobject; i++) {
+
+    // don't use unreconciled objects as a reference (we'll catch them eventually)
+    if (!object[i].shifted) continue;
+
+    int Nfixed = 0;
+
+    // shift all of the close friends of object (i) wrt object (i)
+    for (j = 0; (j < object[i].Nindex) && (object[i].Dtgt[j] < f2*Dmax); j++) {
+
+      // loop over the sequence for object Nj
+      int Nj = object[i].index[j];
+
+      // only reconcile once
+      if (object[Nj].shifted == TRUE) continue;
+
+      float dS1p = 0.0;
+      float dS2p = 0.0;
+      float dS1m = 0.0;
+      float dS2m = 0.0;
+      int nS = 0;
+
+      float Smin = +1000.0;
+      float Smax = -1000.0;
+
+      for (k = 0; k < object[Nj].Nindex; k++) {
+	int Nsj = object[Nj].index[k];
+	int Nsi = object[i].rindex[Nsj];
+	
+	if (isnan(object[Nj].seq[k])) continue;
+	if (isnan(object[i].seq[Nsi])) continue;
+	
+	Smin = MIN(object[Nj].seq[k], Smin);
+	Smax = MAX(object[Nj].seq[k], Smax);
+
+	float dSp = object[Nj].seq[k] - object[i].seq[Nsi];
+	float dSm = -object[Nj].seq[k] - object[i].seq[Nsi];
+	dS1p += dSp;
+	dS2p += dSp*dSp;
+	dS1m += dSm;
+	dS2m += dSm*dSm;
+	nS ++;
+      }
+      float Sp = dS1p / nS;
+      float Sm = dS1m / nS;
+      float dSp = sqrt(dS2p / nS - Sp*Sp);
+      float dSm = sqrt(dS2m / nS - Sm*Sm);
+      fprintf (stderr, "%d: %f +/- %f or %f +/- %f : %f range, %d matches\n", Nj, Sp, dSp, Sm, dSm, Smax - Smin, nS);
+
+      if (dSm > dSp) {
+	// parity is always 1 if we use the pins (but it does not seem to work)
+	for (k = 0; k < object[Nj].Nindex; k++) {
+	  if (isnan(object[Nj].seq[k])) continue;
+	  object[Nj].seq[k] -= Sp;
+	}
+	object[Nj].So = Sp;
+	object[Nj].dSo = dSp;
+      } else {
+	// flip the sequence and offset
+	for (k = 0; k < object[Nj].Nindex; k++) {
+	  if (isnan(object[Nj].seq[k])) continue;
+	  object[Nj].seq[k] = -object[Nj].seq[k] - Sm; 
+	}
+	object[Nj].So = Sm;
+	object[Nj].dSo = dSm;
+      }
+      object[Nj].Srange = Smax - Smin;
+      object[Nj].nSeq = nS;
+      object[Nj].shifted = TRUE;
+      Nfixed ++;
+    }
+    // fprintf (stderr, "%d used to reconcile %d friends\n", i, Nfixed);
+  }
+
+  int Nfixed = 0;
+  int Nunfix = 0;
+  for (i = 0; i < Nobject; i++) {
+    if (object[i].shifted) { 
+      Nfixed ++;
+    } else {
+      Nunfix ++;
+    }
+  }
+  fprintf (stderr, "%d fixed, %d unfixed\n", Nfixed, Nunfix);
+      
+
+  // calculate the mean Xo for each object using the values of the sequences calculated
+  for (i = 0; i < Nobject; i++) {
+
+    if (!object[i].shifted) {
+      fprintf (stderr, "this object was not reconciled\n");
+    }
+    float XoSum = 0.0;
+    float XoS2 = 0.0;
+    int XoNum = 0;
+
+    // find all the measurements of this object's sequence (from its friends values)
+    for (j = 0; j < Nobject; j++) {
+      int Ns = object[j].rindex[i];
+      if (isnan(object[j].seq[Ns])) continue;
+      XoSum += object[j].seq[Ns];
+      XoS2  += SQ(object[j].seq[Ns]);
+      XoNum ++;
+    }
+    float Xo = XoSum / XoNum;
+    float dXo = sqrt(XoS2 / XoNum - Xo*Xo);
+    object[i].Xo = Xo;
+    object[i].dXo = dXo;
+  }
+
+  // XXX seq is effectively Xo, calculate Yo for the objects based on the local 
+  // objects
+
+  // save the result
+  {
+    Vector *outindex = SelectVector ("sp1d_idx", ANYVECTOR, TRUE); if (!outindex) goto escape;
+    Vector *outXo    = SelectVector ("sp1d_Xo",  ANYVECTOR, TRUE); if (!outXo) goto escape;
+    Vector *outYo    = SelectVector ("sp1d_Yo",  ANYVECTOR, TRUE); if (!outYo) goto escape;
+
+    Vector *outSo    = SelectVector ("sp1d_So",  ANYVECTOR, TRUE); if (!outXo) goto escape;
+    Vector *outdSo   = SelectVector ("sp1d_dSo", ANYVECTOR, TRUE); if (!outYo) goto escape;
+    Vector *outdXo   = SelectVector ("sp1d_dXo", ANYVECTOR, TRUE); if (!outXo) goto escape;
+
+    Vector *outSr   = SelectVector ("sp1d_Sr", ANYVECTOR, TRUE); if (!outSr) goto escape;
+    Vector *outSn   = SelectVector ("sp1d_nS", ANYVECTOR, TRUE); if (!outSn) goto escape;
+
+    ResetVector (outindex, OPIHI_INT, Nobject);
+    ResetVector (outXo, OPIHI_FLT, Nobject);
+    ResetVector (outYo, OPIHI_FLT, Nobject);
+
+    ResetVector (outSo, OPIHI_FLT, Nobject);
+    ResetVector (outdSo, OPIHI_FLT, Nobject);
+    ResetVector (outdXo, OPIHI_FLT, Nobject);
+
+    ResetVector (outSr, OPIHI_FLT, Nobject);
+    ResetVector (outSn, OPIHI_INT, Nobject);
+
+    for (i = 0; i < Nobject; i++) {
+      outindex->elements.Int[i] = i;
+      outXo->elements.Flt[i] = object[i].Xo;
+      outYo->elements.Flt[i] = object[i].Yo;
+      outSo->elements.Flt[i] = object[i].So;
+      outdSo->elements.Flt[i] = object[i].dSo;
+      outdXo->elements.Flt[i] = object[i].dXo;
+      outSr->elements.Flt[i] = object[i].Srange;
+      outSn->elements.Int[i] = object[i].nSeq;
+    }
+  }
+
+  return TRUE;
+  
+escape: 
+  gprint (GP_ERR, "invalid vector\n");
+  return FALSE;
+  
+usage:
+  gprint (GP_ERR, "USAGE: spexseq (index1) (index2) (distance) (Niter) (nCloseMax) (nCloseIter) (farFrac) (maxPressure) (idx1) (idx2)\n");
+  return FALSE;
+}
+
+/* this function takes 3 vectors: a set of distances and a pair of indicies identifying the end points.  
+   
+   the goal is to generate groups of the end points that are relatively closer.
+
+   note that the distances may not be Euclidean: nothing can be assumed about relationships between d(1,2), d(2,3), and d(1,3)
+
+   the indicies should be sequential.  the algorithm does not require it, but storage is much cleaner if it is
+
+*/
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/Makefile	(revision 34041)
@@ -44,4 +44,5 @@
 $(SRC)/quit.$(ARCH).o	     \
 $(SRC)/run_for.$(ARCH).o    \
+$(SRC)/run_foreach.$(ARCH).o    \
 $(SRC)/run_if.$(ARCH).o     \
 $(SRC)/run_while.$(ARCH).o  \
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/init.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/init.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/init.c	(revision 34041)
@@ -31,4 +31,5 @@
 int quit            PROTO((int, char **));
 int run_for         PROTO((int, char **));
+int run_foreach     PROTO((int, char **));
 int run_if          PROTO((int, char **));
 int run_while       PROTO((int, char **));
@@ -81,4 +82,5 @@
   {1, "quit",          quit,               "exit program *"},
   {1, "for",           run_for,            "for loop"}, 
+  {1, "foreach",       run_foreach,        "foreach loop"}, 
   {1, "if",            run_if,             "logical cases *"}, 
   {1, "while",         run_while,          "while loop"}, 
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/input.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/input.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/input.c	(revision 34041)
@@ -40,4 +40,6 @@
   fclose (infile);
 
+  if (!inlist.Nlines) gprint (GP_ERR, "WARNING: input file (%s) was empty\n", argv[1]);
+
   /* process this list */
   status = exec_loop (&inlist);
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/list.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/list.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/list.c	(revision 34041)
@@ -19,4 +19,24 @@
     remove_argument (N, &argc, argv);
     RunCommand = TRUE;
+  }
+
+  if ((N = get_argument (argc, argv, "-vectors"))) {
+    remove_argument (N, &argc, argv);
+    if (argc != 2) {
+      gprint (GP_ERR, "USAGE: list (root) -vectors\n");
+      return (FALSE);
+    }
+    ListVectorsToList (argv[1]);
+    return TRUE;
+  }
+
+  if ((N = get_argument (argc, argv, "-buffers"))) {
+    remove_argument (N, &argc, argv);
+    if (argc != 2) {
+      gprint (GP_ERR, "USAGE: list (root) -buffers\n");
+      return (FALSE);
+    }
+    ListBuffersToList (argv[1]);
+    return TRUE;
   }
 
@@ -85,6 +105,14 @@
     }
     
+    // old list must exist, or give an error
     sprintf (line, "%s:n", argv[3]);
     N = get_int_variable (line, &found);
+    if (!found) {
+      gprint (GP_ERR, "USAGE: list (newlist) -copy (oldlist) ...\n");
+      gprint (GP_ERR, "ERROR: missing input list\n");
+      return (FALSE);
+    }
+      
+
     sprintf (line, "%s:n", argv[1]);
     set_int_variable (line, N);
@@ -118,5 +146,4 @@
 
   // remove the single named entry from the list (finds entry with given name, reduces list length by one)
-  // return an error if -add is given with no other args
   if ((argc > 2) && (!strcmp (argv[2], "-del"))) {
     if (argc != 4) {
@@ -155,8 +182,13 @@
 
   if (argc != 2) {
-    gprint (GP_ERR, "USAGE: list (root)                : supply list data, terminate with 'END'\n");
-    gprint (GP_ERR, "USAGE: list (root) -x (command)   : create list from shell output\n");
-    gprint (GP_ERR, "USAGE: list (root) -split (words) : create list from words\n");
-    gprint (GP_ERR, "USAGE: list (root) -add (words)   : extend a list\n");
+    gprint (GP_ERR, "USAGE: list (root)                			       : supply list data, terminate with 'END'\n");
+    gprint (GP_ERR, "USAGE: list (root) -x (command)   			       : create list from shell output\n");
+    gprint (GP_ERR, "USAGE: list (root) -vectors   			       : create list from vector names\n");
+    gprint (GP_ERR, "USAGE: list (root) -buffers   			       : create list from buffer names\n");
+    gprint (GP_ERR, "USAGE: list (root) -split (words) 			       : create list from words\n");
+    gprint (GP_ERR, "USAGE: list (root) -splitbychar (char) (word) [(words)..] : create list from words\n");
+    gprint (GP_ERR, "USAGE: list (root) -add (words)   			       : extend a list\n");    
+    gprint (GP_ERR, "USAGE: list (root) -copy (list)   			       : copy a list to a new name\n");
+    gprint (GP_ERR, "USAGE: list (root) -del (word)   			       : delete the entry by value\n");
     return (FALSE);
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/run_for.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/run_for.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/run_for.c	(revision 34041)
@@ -5,9 +5,15 @@
 int run_for (int argc, char **argv) {
 
-  int ThisList, depth, i, done, status, found, NLINES, j;
+  int N, ThisList, depth, i, done, status, found, NLINES, j;
   double start, end, delta;
   char *input, *endptr;
   double value, sign;
   Macro loop;
+
+  int Inclusive = FALSE;
+  if ((N = get_argument (argc, argv, "-incl"))) {
+    remove_argument (N, &argc, argv);
+    Inclusive = TRUE;
+  }
 
   if ((argc != 4) && (argc != 5)) {
@@ -95,4 +101,6 @@
   REALLOCATE (loop.line, char *, MAX (loop.Nlines, 1));
 
+  if (Inclusive) end += 0.01*delta;
+
   status = TRUE;
   interrupt = FALSE;
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/run_foreach.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/run_foreach.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/run_foreach.c	(revision 34041)
@@ -0,0 +1,114 @@
+# include "basic.h"
+# define D_NLINES 100
+static char prompt[] = ">> ";
+
+int run_foreach (int argc, char **argv) {
+
+  int ThisList, depth, i, done, status, NLINES, j;
+  char *input;
+  Macro loop;
+
+  if (argc < 2) {
+    gprint (GP_ERR, "USAGE: foreach (var) value [value value ...] -- terminate with 'END'\n");
+    return (FALSE);
+  }
+
+  NLINES = D_NLINES;
+  ALLOCATE (loop.line, char *, NLINES);
+
+  /* read in loop */
+  depth = 0;
+  ThisList = current_list_depth();
+  for (i = 0, done = FALSE; !done; ) {
+
+    /* get the next line (from correct place) */
+    if (ThisList == 0) 
+      input = opihi_readline (prompt);
+    else 
+      input = get_next_listentry (ThisList);
+    stripwhite (input);
+
+    /* check for end-of-data syntax error */
+    if (input == NULL) {
+      if (ThisList == 0)  {
+	gprint (GP_ERR, "end loop with 'END'\n");
+	continue;
+      } else {
+	gprint (GP_ERR, "misbalanced loop\n");
+	for (j = 0; j < loop.Nlines; j++) {
+	  free (loop.line[j]);
+	}
+	free (loop.line);
+	return (FALSE);
+      }	
+    }
+
+    /* test for new macro (or other list, in the future?) */
+    if (is_list (input)) depth ++;
+
+    /* test for end of nested list -- if not nested, END refers to this macro */
+    if (!strncasecmp (input, "END", 3)) {
+      depth --;
+      if (depth < 0) { 
+	free (input);
+	break;
+      }
+    }
+
+    /* if line has data, add to loop list */
+    if (*input) { 
+      loop.line[i] = input;
+      i++;
+      if (i == NLINES - 1) {
+	NLINES += D_NLINES;
+	REALLOCATE (loop.line, char *, NLINES);
+      }
+    }
+  }
+
+  /* cleanup loop data */
+  loop.Nlines = i;
+  REALLOCATE (loop.line, char *, MAX (loop.Nlines, 1));
+
+  status = TRUE;
+  interrupt = FALSE;
+  for (i = 2; (i < argc) && !interrupt; i++) {
+    set_str_variable (argv[1], argv[i]);
+    status = exec_loop (&loop);
+    if (loop_next) continue;
+    if (loop_last) break;
+    if (loop_break) break;
+  }
+  /* 'last' and 'next' should only affect one loop */
+  loop_last = loop_next = FALSE; 
+
+  /* break should propagate up if auto_break is set */
+  loop_break = FALSE;
+  if (auto_break && !status) loop_break = TRUE;
+
+  /* cleanup list */
+  for (j = 0; j < loop.Nlines; j++) {
+    free (loop.line[j]);
+  }
+  free (loop.line);
+
+  if (loop_break) return (FALSE);
+  return (TRUE);
+}
+
+/*
+  If we are entering at the keyboard (ThisList == 0), use readline.
+  Otherwise, read from the current list, remove list lines.
+  execute when we hit the final "END" (the true END -- we count macro defines!!) 
+*/
+     
+/* while processing the loop, the loop status variables may be set
+   by the loop commands, or the loop may quite on a failed command,
+   setting the exec_loop return status to false. the loop status variables
+   are:
+   loop_next : stop this loop, but try another loop
+   loop_last : stop loop processing, but return true so external loop may continue
+   loop_break : stop loop processing, and return false so external loop will break
+   interrupt : external interrupt signal
+*/
+
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/shell.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/shell.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.basic/shell.c	(revision 34041)
@@ -13,5 +13,5 @@
   int exit_status;
   int wait_status;
-  int result, length;
+  int result;
   char **args, *shell;
   struct timeval start, now;
@@ -33,16 +33,5 @@
   args[0] = shell;
   args[1] = cmdflag;
-
-  length = 0;
-  for (i = 1; i < argc; i++) {
-    length += strlen(argv[i]) + 1;
-  }
-  
-  ALLOCATE (args[2], char, length);
-  args[2][0] = 0;
-  for (i = 1; i < argc; i++) {
-    strcat (args[2], argv[i]);
-    if (i < argc - 1) strcat (args[2], " ");
-  }
+  args[2] = paste_args (argc - 1, &argv[1]);
   args[3] = NULL;
 
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/Makefile	(revision 34041)
@@ -123,4 +123,5 @@
 $(SRC)/swapbytes.$(ARCH).o	   \
 $(SRC)/textline.$(ARCH).o	   \
+$(SRC)/threshold.$(ARCH).o		\
 $(SRC)/tv.$(ARCH).o		   \
 $(SRC)/tvchannel.$(ARCH).o	   \
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/cumulative.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/cumulative.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/cumulative.c	(revision 34041)
@@ -23,4 +23,6 @@
     opihi_flt *Vi = ivec[0].elements.Flt;
     *Vo = *Vi;
+    Vi++; 
+    Vo++;
     for (i = 1; i < ivec[0].Nelements; i++, Vi++, Vo++) {
       *Vo = Vo[-1] + *Vi;
@@ -29,4 +31,6 @@
     opihi_int *Vi = ivec[0].elements.Int;
     *Vo = *Vi;
+    Vi++;
+    Vo++;
     for (i = 1; i < ivec[0].Nelements; i++, Vi++, Vo++) {
       *Vo = Vo[-1] + *Vi;
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/cursor.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/cursor.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/cursor.c	(revision 34041)
@@ -4,5 +4,5 @@
 
   char string[20], key[20], *name;
-  int i, N, kapa;
+  int i, N, kapa, VERBOSE;
   double X, Y, R, D, Z;
   void *oldsignal;
@@ -13,4 +13,9 @@
   // if ((N = get_argument (argc, argv, "-g"))) {
   // if ((N = get_argument (argc, argv, "-i"))) {
+
+  VERBOSE = TRUE;
+  if ((N = get_argument (argc, argv, "-a"))) {
+    VERBOSE = FALSE;
+  }
 
   name = NULL;
@@ -53,5 +58,5 @@
     set_str_variable ("KEY", key);
     
-    gprint (GP_LOG, "%s %f %f %f %f %f\n", key, X, Y, Z, R, D);
+    if (VERBOSE) gprint (GP_LOG, "%s %f %f %f %f %f\n", key, X, Y, Z, R, D);
 
     if (!strcasecmp (key, "Q")) break;
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/cut.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/cut.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/cut.c	(revision 34041)
@@ -48,6 +48,6 @@
   case 'X':
     /* create output vectors */
-    ResetVector (xvec, OPIHI_FLT, MAX (nx, 1));
-    ResetVector (yvec, OPIHI_FLT, MAX (nx, 1));
+    ResetVector (xvec, OPIHI_FLT, nx);
+    ResetVector (yvec, OPIHI_FLT, nx);
     bzero (yvec[0].elements.Flt, nx*sizeof(opihi_flt));
     for (i = 0; i < nx; i++) {
@@ -80,6 +80,6 @@
   case 'y':
   case 'Y':
-    ResetVector (xvec, OPIHI_FLT, MAX (ny, 1));
-    ResetVector (yvec, OPIHI_FLT, MAX (ny, 1));
+    ResetVector (xvec, OPIHI_FLT, ny);
+    ResetVector (yvec, OPIHI_FLT, ny);
     bzero (yvec[0].elements.Flt, ny*sizeof(opihi_flt));
     for (i = 0; i < ny; i++) {
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/dot.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/dot.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/dot.c	(revision 34041)
@@ -3,9 +3,16 @@
 int dot (int argc, char **argv) {
   
-  int kapa;
+  int kapa, N;
   Graphdata graphmode;
   float x, y;
 
   if (!style_args (&graphmode, &argc, argv, &kapa)) return FALSE;
+
+  /* FracPositions uses coordinates of 0-1 relative to axis range */
+  int FracPositions = FALSE;
+  if ((N = get_argument (argc, argv, "-frac"))) {
+    remove_argument (N, &argc, argv);
+    FracPositions = TRUE;
+  } 
 
   if (argc != 3) {
@@ -15,4 +22,9 @@
   x = atof(argv[1]);
   y = atof(argv[2]);
+
+  if (FracPositions) {
+    x =  x * (graphmode.xmax - graphmode.xmin) + graphmode.xmin;
+    y =  y * (graphmode.ymax - graphmode.ymin) + graphmode.ymin;
+  }    
 
   /* set point style and errorbar mode (these are NOT sticky) */
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/gridify.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/gridify.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/gridify.c	(revision 34041)
@@ -5,9 +5,11 @@
   int i, Nx, Ny, Xb, Yb, Normalize, N;
   float Xmin, Xmax, dX, Ymin, Ymax, dY, initValue;
-  float *buf, *val;
+  float *buf, *val, *cnt;
   int *Nval;
-  Buffer *bf;
   Vector *vx, *vy, *vz;
   opihi_flt *x, *y, *z;
+
+  Buffer *bf = NULL;
+  Buffer *ct = NULL;
 
   Normalize = TRUE;
@@ -15,4 +17,6 @@
     remove_argument (N, &argc, argv);
     Normalize = FALSE;
+    if ((ct = SelectBuffer (argv[N], ANYBUFFER, TRUE)) == NULL) return (FALSE);
+    remove_argument (N, &argc, argv);
   }
 
@@ -24,6 +28,28 @@
   }
 
-  if (argc != 11) {
-    gprint (GP_ERR, "USAGE: gridify x y z buffer Xmin Xmax dX Ymin Ymax dY\n");
+  Xmin = Xmax = dX = NAN;
+  if ((N = get_argument (argc, argv, "-x"))) {
+    remove_argument (N, &argc, argv);
+    Xmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    Xmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    dX   = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+  }    
+
+  Ymin = Ymax = dY = NAN;
+  if ((N = get_argument (argc, argv, "-y"))) {
+    remove_argument (N, &argc, argv);
+    Ymin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    Ymax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    dY   = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+  }    
+
+  if (argc != 5) {
+    gprint (GP_ERR, "USAGE: gridify x y z buffer [-x Xmin Xmax dX] [-y Ymin Ymax dY] [-init-value value] [-raw]\n");
     return (FALSE);
   }
@@ -41,19 +67,25 @@
   REQUIRE_VECTOR_FLT (vz, FALSE); 
 
-  Xmin = atof (argv[5]);
-  Xmax = atof (argv[6]);
-  dX   = atof (argv[7]);
+  if (isnan(dX)) {
+    Xmin = 0;
+    Xmax = bf[0].matrix.Naxis[0];
+    dX = 1;
+  }
 
-  Ymin = atof (argv[8]);
-  Ymax = atof (argv[9]);
-  dY   = atof (argv[10]);
+  if (isnan(dY)) {
+    Ymin = 0;
+    Ymax = bf[0].matrix.Naxis[1];
+    dY = 1;
+  }
 
-  Nx = (Xmax - Xmin) / dX + 1;
-  Ny = (Ymax - Ymin) / dY + 1;
+  Nx = (Xmax - Xmin) / dX;
+  Ny = (Ymax - Ymin) / dY;
   
-  gfits_free_matrix (&bf[0].matrix);
-  gfits_free_header (&bf[0].header);
-  CreateBuffer (bf, Nx, Ny, -32, 0.0, 1.0);
-  strcpy (bf[0].file, "(empty)");
+  if ((Nx != bf[0].matrix.Naxis[0]) || (Ny != bf[0].matrix.Naxis[1])) {
+    gfits_free_matrix (&bf[0].matrix);
+    gfits_free_header (&bf[0].header);
+    CreateBuffer (bf, Nx, Ny, -32, 0.0, 1.0);
+    strcpy (bf[0].file, "(empty)");
+  }
 
   ALLOCATE (val, float, Nx*Ny);
@@ -68,4 +100,6 @@
     Xb = (*x - Xmin) / dX;
     Yb = (*y - Ymin) / dY;
+    if (Xb < 0) continue;
+    if (Yb < 0) continue;
     if (Xb >= Nx) continue;
     if (Yb >= Ny) continue;
@@ -74,15 +108,27 @@
   }
 
+  if (!Normalize) {
+    gfits_free_matrix (&ct[0].matrix);
+    gfits_free_header (&ct[0].header);
+    CreateBuffer (ct, Nx, Ny, -32, 0.0, 1.0);
+    strcpy (ct[0].file, "(empty)");
+
+    buf = (float *) bf[0].matrix.buffer;
+    cnt = (float *) ct[0].matrix.buffer;
+    for (i = 0; i < Nx*Ny; i++) {
+      if (Nval[i] == 0) continue;
+      buf[i] = val[i];
+      cnt[i] = Nval[i];
+    }
+    free (val);
+    free (Nval);
+    return TRUE;
+  }
+
   buf = (float *) bf[0].matrix.buffer;
   for (i = 0; i < Nx*Ny; i++) {
     buf[i] = initValue;
-    if (Normalize) {
-      if (Nval[i] == 0) {
-	continue;
-      }
-      buf[i] = val[i] / Nval[i];
-    } else {
-      buf[i] = val[i];
-    }
+    if (Nval[i] == 0) continue;
+    buf[i] = val[i] / Nval[i];
   }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/imcut.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/imcut.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/imcut.c	(revision 34041)
@@ -37,6 +37,6 @@
   dY = dY / L;
 
-  ResetVector (xvec, OPIHI_FLT, MAX (L, 1));
-  ResetVector (yvec, OPIHI_FLT, MAX (L, 1));
+  ResetVector (xvec, OPIHI_FLT, L);
+  ResetVector (yvec, OPIHI_FLT, L);
 
   V = (float *)buf[0].matrix.buffer;
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/init.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/init.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/init.c	(revision 34041)
@@ -61,4 +61,5 @@
 int header           PROTO((int, char **));
 int list_vectors     PROTO((int, char **));
+int vtype            PROTO((int, char **));
 int load             PROTO((int, char **));
 int lookup           PROTO((int, char **));
@@ -111,4 +112,5 @@
 int swapbytes        PROTO((int, char **));
 int textline         PROTO((int, char **));
+int threshold        PROTO((int, char **));
 int tv               PROTO((int, char **));
 int tvchannel        PROTO((int, char **));
@@ -138,4 +140,8 @@
 int zplot            PROTO((int, char **));
 int zcplot            PROTO((int, char **));
+
+// ???
+// int mtype            PROTO((int, char **));
+//  {1, "mtype",        mtype,            "return the type of the defined buffer"},
 
 static Command cmds[] = {  
@@ -257,4 +263,5 @@
   {1, "swapbytes",    swapbytes,        "byte swap thing"},
   {1, "textline",     textline,         "write text line on graph"},
+  {1, "threshold",    threshold,        "find (interpolate) location of transition"},
   {1, "tv",           tv,               "display an image on the Kii window"},
   {1, "tvchannel",    tvchannel,        "set the current tv channel"},
@@ -269,4 +276,5 @@
   {1, "vclip",        vclip,            "clip values in a vector to be within a range"},
   {1, "vectors",      list_vectors,     "list vectors"},
+  {1, "vtype",        vtype,            "return the vector type (FLT or INT)"},
   {1, "vgauss",       vgauss,           "fit a Gaussian to a vector"},
   {1, "vellipse",     vellipse,         "fit a Ellipse to a vector pair"},
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/line.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/line.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/line.c	(revision 34041)
@@ -3,7 +3,14 @@
 int line (int argc, char **argv) {
   
-  int kapa;
+  int kapa, N;
   Graphdata graphmode;
   float x[2], y[2];
+
+  /* FracPositions uses coordinates of 0-1 relative to axis range */
+  int FracPositions = FALSE;
+  if ((N = get_argument (argc, argv, "-frac"))) {
+    remove_argument (N, &argc, argv);
+    FracPositions = TRUE;
+  } 
 
   if (!style_args (&graphmode, &argc, argv, &kapa)) return FALSE;
@@ -18,4 +25,11 @@
   y[1] = atof(argv[5]);
 
+  if (FracPositions) {
+    x[0] =  x[0] * (graphmode.xmax - graphmode.xmin) + graphmode.xmin;
+    y[0] =  y[0] * (graphmode.ymax - graphmode.ymin) + graphmode.ymin;
+    x[1] =  x[1] * (graphmode.xmax - graphmode.xmin) + graphmode.xmin;
+    y[1] =  y[1] * (graphmode.ymax - graphmode.ymin) + graphmode.ymin;
+  }    
+
   /* set point style and errorbar mode (these are NOT sticky) */
   graphmode.style = 0;
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/list_buffers.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/list_buffers.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/list_buffers.c	(revision 34041)
@@ -9,2 +9,43 @@
 
 }
+
+# if (0) 
+int mtype (int argc, char **argv) {
+
+  Variable = (char *) NULL;
+  if ((N = get_argument (argc, argv, "-var"))) {
+    remove_argument (N, &argc, argv);
+    Variable = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  if (argc != 2) {
+    gprint (GP_ERR, "USAGE: mtype (buffer) [-var out]\n");
+    return (FALSE);
+  }
+
+  Buffer *buf = SelectBuffer (argv[1], OLDBUFFER, FALSE);
+  if (!buf) {
+    gprint (GP_ERR, "unknown buffer %s\n", argv[1]);
+    free (Variable);
+    return FALSE;
+  }
+
+  if (buf->type == OPIHI_FLT) {
+    if (Variable) {
+      set_str_variable (Variable, "FLT");
+    } else {
+      gprint (GP_LOG, "%s : FLT\n", argv[1]);
+    }
+  } else {
+    if (Variable) {
+      set_str_variable (Variable, "INT");
+    } else {
+      gprint (GP_LOG, "%s : INT\n", argv[1]);
+    }
+  }
+  if (Variable) free (Variable);
+
+  return (TRUE);
+}
+# endif
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/list_vectors.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/list_vectors.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/list_vectors.c	(revision 34041)
@@ -7,2 +7,43 @@
 }
 
+int vtype (int argc, char **argv) {
+
+  int N;
+
+  char *Variable = (char *) NULL;
+  if ((N = get_argument (argc, argv, "-var"))) {
+    remove_argument (N, &argc, argv);
+    Variable = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  if (argc != 2) {
+    gprint (GP_ERR, "USAGE: vtype (vector) [-var out]\n");
+    return (FALSE);
+  }
+
+  Vector *vec = SelectVector (argv[1], OLDVECTOR, FALSE);
+  if (!vec) {
+    gprint (GP_ERR, "unknown vector %s\n", argv[1]);
+    free (Variable);
+    return FALSE;
+  }
+
+  if (vec->type == OPIHI_FLT) {
+    if (Variable) {
+      set_str_variable (Variable, "FLT");
+    } else {
+      gprint (GP_LOG, "%s : FLT\n", argv[1]);
+    }
+  } else {
+    if (Variable) {
+      set_str_variable (Variable, "INT");
+    } else {
+      gprint (GP_LOG, "%s : INT\n", argv[1]);
+    }
+  }
+  if (Variable) free (Variable);
+
+  return (TRUE);
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/match2d.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/match2d.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/match2d.c	(revision 34041)
@@ -167,4 +167,6 @@
   NMATCH = X1->Nelements;
   ResetVector (index, OPIHI_INT, NMATCH);
+
+  for (i = 0; i < index->Nelements; i++) { index->elements.Int[i] = -1; }
 
   ALLOCATE (N1, off_t, X1->Nelements);
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/read_vectors.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/read_vectors.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/read_vectors.c	(revision 34041)
@@ -21,19 +21,23 @@
 }
 
+// vector types
+enum {COLTYPE_NONE, COLTYPE_FLT, COLTYPE_INT, COLTYPE_TIME};
+
 int read_vectors (int argc, char **argv) {
   
-    int i, j, Nskip, Nvec, *col, done, status, IsCSV, VERBOSE;
-  int Nbytes, nbytes, Nstart, NELEM, N, nread;
+  int TimeFormat;
+  time_t TimeReference;
+  int i, j, Nskip, Narg, Nvec, *col, IsCSV, VERBOSE;
+  int Nbytes, Nstart, NELEM, Nelem, nread, *coltype;
   char *colstr, *c0, *c1, *buffer, *extname;
-  double value;
   Vector **vec;
 
   /* auto-sense table type */
-  if ((N = get_argument (argc, argv, "-fits"))) {
-    remove_argument (N, &argc, argv);
-    extname = strcreate (argv[N]);
+  if ((Narg = get_argument (argc, argv, "-fits"))) {
+    remove_argument (Narg, &argc, argv);
+    extname = strcreate (argv[Narg]);
     if (extname == (char *) NULL) return (FALSE);
-    remove_argument (N, &argc, argv);
-    status = read_table_vectors (argc, argv, extname);
+    remove_argument (Narg, &argc, argv);
+    int status = read_table_vectors (argc, argv, extname);
     free (extname);
     return (status);
@@ -41,19 +45,19 @@
 
   Nskip = 0;
-  if ((N = get_argument (argc, argv, "-skip"))) {
-    remove_argument (N, &argc, argv);
-    Nskip = atof (argv[N]);
-    remove_argument (N, &argc, argv);
+  if ((Narg = get_argument (argc, argv, "-skip"))) {
+    remove_argument (Narg, &argc, argv);
+    Nskip = atof (argv[Narg]);
+    remove_argument (Narg, &argc, argv);
   }
 
   IsCSV = FALSE;
-  if ((N = get_argument (argc, argv, "-csv"))) {
-    remove_argument (N, &argc, argv);
+  if ((Narg = get_argument (argc, argv, "-csv"))) {
+    remove_argument (Narg, &argc, argv);
     IsCSV = TRUE;
   }
 
   VERBOSE = FALSE;
-  if ((N = get_argument (argc, argv, "-v"))) {
-    remove_argument (N, &argc, argv);
+  if ((Narg = get_argument (argc, argv, "-v"))) {
+    remove_argument (Narg, &argc, argv);
     VERBOSE = TRUE;
   }
@@ -65,4 +69,7 @@
   /* read name N name N  */
 
+  // do this only optionally?
+  GetTimeFormat (&TimeReference, &TimeFormat);
+
   if (f == (FILE *) NULL) {
     gprint (GP_ERR, "no open file for read\n");
@@ -71,14 +78,31 @@
   fseeko (f, 0LL, SEEK_SET);
 
-//  if (IsCSV) {
-//    status = read_vectors_csv (argc, argv, Nskip, f);
-//    return status;
-//  }
-
   Nvec = (argc - 1) / 2;
   ALLOCATE (vec, Vector *, Nvec);
   ALLOCATE (col, int, Nvec);
+  ALLOCATE (coltype, int, Nvec);
 
   for (i = 0; i < Nvec; i++) {
+
+    // interpret the column names including type flags
+    // XXX review the grammar before releasing this : is foo:type best, or is something else needed?
+    // Note the conflict wrt list entries
+    // the name may be of the form foo:type, where type may be one of : int, float, time
+    
+    coltype[i] = COLTYPE_FLT;
+    char *colname = argv[2*i + 1];
+    char *ptr = strchr (colname, ':');
+    if (ptr) {
+      // split out colname and type
+      *ptr = 0;
+      ptr ++;
+      if (!ptr) goto bad_colname;
+      coltype[i] = COLTYPE_NONE;
+      if (!strcasecmp(ptr, "float")) { coltype[i] = COLTYPE_FLT; }
+      if (!strcasecmp(ptr, "int"))   { coltype[i] = COLTYPE_INT; }
+      if (!strcasecmp(ptr, "time"))  { coltype[i] = COLTYPE_TIME; }
+      if (!coltype[i]) goto bad_colname;
+    }
+
     if ((vec[i] = SelectVector (argv[2*i + 1], ANYVECTOR, TRUE)) == NULL) {
       gprint (GP_ERR, "USAGE: read name N name N ...\n");
@@ -87,5 +111,5 @@
       return (FALSE);    
     }
-    // XXX we could allow flags (eg, N.i) to specify INT vs FLT types vectors...
+
     colstr = argv[2*i+2];
     for (j = 0; j < strlen (colstr); j++) {
@@ -119,5 +143,10 @@
   NELEM = 1000;
   for (i = 0; i < Nvec; i++) {
-    ResetVector (vec[i], OPIHI_FLT, NELEM);
+    if (coltype[i] == COLTYPE_INT) {
+      ResetVector (vec[i], OPIHI_INT, NELEM);
+    } else {
+      // note that COLTYPE_TIME is a type of float
+      ResetVector (vec[i], OPIHI_FLT, NELEM);
+    }
   }
   
@@ -128,8 +157,11 @@
   }
 
-  Nstart = 0;
-  N = 0;
-  done = FALSE;
-  while (!done) {
+  // we have a working buffer read from the file. we parse the lines in the working buffer
+  // until we reach the last chunk without an EOL char.  at that point, we shift the start
+  // of the last (partial) line to the start of the buffer and re-fill.
+
+  Nstart = 0; // location of the last valid byte in the buffer (start filling here)
+  Nelem = 0; // number of valid rows read (vector elements)
+  while (TRUE) {
     Nbytes = 0x10000 - Nstart;
     bzero (&buffer[Nstart], Nbytes);
@@ -139,61 +171,83 @@
       break;
     }
-    if (nread == 0) break;
-    nbytes = nread + Nstart;
+    if (nread == 0) break; // end of the file
+    // nbytes = nread + Nstart;
     
-    status = TRUE;
-    c0 = buffer; 
-    while (status) {
-      c1 = strchr (c0, '\n');
+    int bufferStatus = TRUE; 
+    c0 = buffer; // c0 always marks the start of a line
+    while (bufferStatus) {
+      c1 = strchr (c0, '\n'); // find the end of this current line
       if (c1 == (char *) NULL) {
 	Nstart = strlen (c0);
 	memmove (buffer, c0, Nstart);
-	status = FALSE;
-      } else {
-	*c1 = 0;
-      }      
-      if ((*c0 != '#') && (*c0 != '!')) {
-	for (i = 0; (i < Nvec) && status; i++) {
+	bufferStatus = FALSE;
+	continue;
+      }
+      *c1 = 0; // mark the end of the line 
+
+      if (*c0 == '#') {	c0 = c1 + 1; continue; }
+      if (*c0 == '!') {	c0 = c1 + 1; continue; }
+
+      // parse the vectors in this line.  this code is a bit inefficient: each column
+      // requires a separate pass through the line.
+
+      int lineStatus = TRUE;
+      for (i = 0; i < Nvec; i++) {
+	int ivalue;
+	double dvalue;
+	time_t tvalue;
+	int readStatus = FALSE;
+	// need to make the if cases for coltype[i]
+	switch (coltype[i]) {
+	  case COLTYPE_INT:
+	    readStatus = IsCSV ? iparse_csv (&ivalue, col[i], c0) : iparse (&ivalue, col[i], c0);
+	    vec[i][0].elements.Int[Nelem] = readStatus ? ivalue : 0;
+	    break;
+	  case COLTYPE_FLT:
+	    readStatus = IsCSV ? dparse_csv (&dvalue, col[i], c0) : dparse (&dvalue, col[i], c0);
+	    vec[i][0].elements.Flt[Nelem] = readStatus ? dvalue : NAN;
+	    break;
+	  case COLTYPE_TIME:
+	    readStatus = IsCSV ? tparse_csv (&tvalue, col[i], c0) : tparse (&tvalue, col[i], c0);
+	    dvalue = TimeValue (tvalue, TimeReference, TimeFormat);
+	    vec[i][0].elements.Flt[Nelem] = readStatus ? dvalue : NAN;
+	    break;
+	}
+	if (!readStatus && VERBOSE) {
 	  if (IsCSV) {
-	    status = dparse_csv (&value, col[i], c0);
+	    gprint (GP_ERR, "suspect field: %d (%s) in %s\n", col[i], argv[2*i+2], c0);
 	  } else {
-	    status = dparse (&value, col[i], c0);
+	    gprint (GP_ERR, "suspect field: %d in %s\n", col[i], c0);
 	  }
-	  if (status) {
-	      vec[i][0].elements.Flt[N] = value;
-	  } else {
-	      vec[i][0].elements.Flt[N] = NAN;
-	      if (VERBOSE) {
-		  if (IsCSV) {
-		      gprint (GP_ERR, "suspect field: %d (%s) in %s\n", col[i], argv[2*i+2], c0);
-		  } else {
-		      gprint (GP_ERR, "suspect field: %d in %s\n", col[i], c0);
-		  }
-	      }
-	  }
-	}
-	if (status) {
-	    N++;
-	} else {
-	    if (VERBOSE && FALSE) {
-		char temp[32];
-		strncpy (temp, c0, 32);
-		temp[31] = 0;
-		gprint (GP_ERR, "skip line %s\n\n", temp);
-	    }
-	}
-      }
-      c0 = c1 + 1;
-      if (N == NELEM) {
+	}
+	lineStatus &= readStatus;
+      }
+      if (!lineStatus && VERBOSE) {
+	char temp[32];
+	strncpy (temp, c0, 32);
+	temp[31] = 0;
+	gprint (GP_ERR, "skip line %s\n\n", temp);
+      }
+      Nelem ++;
+      if (Nelem == NELEM) {
 	NELEM += 1000;
 	for (i = 0; i < Nvec; i++) {
-	  REALLOCATE (vec[i][0].elements.Flt, opihi_flt, NELEM);
-	}
-      }
+	  if (coltype[i] == COLTYPE_INT) {
+	    REALLOCATE (vec[i][0].elements.Int, opihi_int, NELEM);
+	  } else {
+	    REALLOCATE (vec[i][0].elements.Flt, opihi_flt, NELEM);
+	  }
+	}
+      }
+      c0 = c1 + 1;
     }
   }
   for (i = 0; i < Nvec; i++) {
-    REALLOCATE (vec[i][0].elements.Flt, opihi_flt, MAX (N,1));
-    vec[i][0].Nelements = N;
+    if (coltype[i] == COLTYPE_INT) {
+      REALLOCATE (vec[i][0].elements.Int, opihi_int, MAX (Nelem,1));
+    } else {
+      REALLOCATE (vec[i][0].elements.Flt, opihi_flt, MAX (Nelem,1));
+    }
+    vec[i][0].Nelements = Nelem;
   }
   
@@ -242,4 +296,12 @@
     Nextend = atoi (extname);
   }
+
+  // XXX ReadAll needs: deal with Extnum vs Extname, save vectors, etc
+  // ReadAll = FALSE;
+  // if ((N = get_argument (argc, argv, "-all"))) {
+  //   remove_argument (N, &argc, argv);
+  //   ReadAll = atoi (extname);
+  //   if (argc != 1) ESCAPE ("-all option cannot be mixed with selected field");
+  // }
 
   if (argc < 2) ESCAPE ("USAGE: read -fits extension [-extnum] [-keyword key] name name ...");
@@ -314,9 +376,4 @@
   for (i = 1; i < argc; i++) {
     void   *data;
-    char   *Pc;
-    short  *Ps;
-    int    *Pi;
-    float  *Pf;
-    double *Pd;
     int Nval;
     char name[80];
@@ -345,44 +402,52 @@
 	sprintf (name, "%s:%d", argv[i], j);
       if ((vec[j] = SelectVector (name, ANYVECTOR, TRUE)) == NULL) ESCAPE ("bad vector name");
-      ResetVector (vec[j], vecType, MAX (Ny,1));
-    }
-
+      ResetVector (vec[j], vecType, Ny);
+    }
+
+    if (!strcmp (type, "char")) {
+      char *Ptr = data;
+      for (j = 0; j < Ny; j++) {
+	for (k = 0; k < Nval; k++, Ptr++) {
+	  vec[k][0].elements.Int[j] = *Ptr;
+	}
+      }
+    }
+    if (!strcmp (type, "short")) {
+      short *Ptr = data;
+      for (j = 0; j < Ny; j++) {
+	for (k = 0; k < Nval; k++, Ptr++) {
+	  vec[k][0].elements.Int[j] = *Ptr;
+	}
+      }
+    }
+    if (!strcmp (type, "int")) {
+      int *Ptr = data;
+      for (j = 0; j < Ny; j++) {
+	for (k = 0; k < Nval; k++, Ptr++) {
+	  vec[k][0].elements.Int[j] = *Ptr;
+	}
+      }
+    }
+    if (!strcmp (type, "int64_t")) {
+      int64_t *Ptr = data;
+      for (j = 0; j < Ny; j++) {
+	for (k = 0; k < Nval; k++, Ptr++) {
+	  vec[k][0].elements.Int[j] = *Ptr;
+	}
+      }
+    }
+    if (!strcmp (type, "float")) {
+      float *Ptr = data;
+      for (j = 0; j < Ny; j++) {
+	for (k = 0; k < Nval; k++, Ptr++) {
+	  vec[k][0].elements.Flt[j] = *Ptr;
+	}
+      }
+    }
     if (!strcmp (type, "double")) {
-      Pd = (double *) data;
-      for (j = 0; j < Ny; j++) {
-	for (k = 0; k < Nval; k++, Pd++) {
-	  vec[k][0].elements.Flt[j] = *Pd;
-	}
-      }
-    }
-    if (!strcmp (type, "float")) {
-      Pf = (float *) data;
-      for (j = 0; j < Ny; j++) {
-	for (k = 0; k < Nval; k++, Pf++) {
-	  vec[k][0].elements.Flt[j] = *Pf;
-	}
-      }
-    }
-    if (!strcmp (type, "int")) {
-      Pi = (int *) data;
-      for (j = 0; j < Ny; j++) {
-	for (k = 0; k < Nval; k++, Pi++) {
-	  vec[k][0].elements.Int[j] = *Pi;
-	}
-      }
-    }
-    if (!strcmp (type, "short")) {
-      Ps = (short *) data;
-      for (j = 0; j < Ny; j++) {
-	for (k = 0; k < Nval; k++, Ps++) {
-	  vec[k][0].elements.Int[j] = *Ps;
-	}
-      }
-    }
-    if (!strcmp (type, "char")) {
-      Pc = (char *) data;
-      for (j = 0; j < Ny; j++) {
-	for (k = 0; k < Nval; k++, Pc++) {
-	  vec[k][0].elements.Int[j] = *Pc;
+      double *Ptr = data;
+      for (j = 0; j < Ny; j++) {
+	for (k = 0; k < Nval; k++, Ptr++) {
+	  vec[k][0].elements.Flt[j] = *Ptr;
 	}
       }
@@ -396,104 +461,2 @@
   return (TRUE);
 }
-
-# if (0)
-int read_vectors_csv (int argc, char **argv, int Nskip, FILE *f) {
-  
-  int i, j, Nvec, *col, done, status;
-  int Nbytes, nbytes, Nstart, NELEM, N, nread;
-  char *colstr, *c0, *c1, *buffer, *extname;
-  double value;
-  Vector **vec;
-
-  Nvec = (argc - 1) / 2;
-  ALLOCATE (vec, Vector *, Nvec);
-  ALLOCATE (col, int, Nvec);
-
-  for (i = 0; i < Nvec; i++) {
-    if ((vec[i] = SelectVector (argv[2*i + 1], ANYVECTOR, TRUE)) == NULL) {
-      gprint (GP_ERR, "USAGE: read name N name N ...\n");
-      free (vec);
-      free (col);
-      return (FALSE);    
-    }
-    // XXX we could allow flags (eg, N.i) to specify INT vs FLT types vectors...
-    colstr = argv[2*i+2];
-    for (j = 0; j < strlen (colstr); j++) {
-      if (!isdigit(colstr[j])) {
-	gprint (GP_ERR, "USAGE: read name N name N ...\n");
-	free (vec);
-	free (col);
-	return (FALSE);    
-      }
-    }
-    col[i] = atof (colstr);
-  }
-
-  // currently, all read vectors are forced to be type FLT
-  NELEM = 1000;
-  for (i = 0; i < Nvec; i++) {
-    ResetVector (vec[i], OPIHI_FLT, NELEM);
-  }
-  
-  ALLOCATE (buffer, char, 0x10001);
-  bzero (buffer, 0x10001);
-  for (i = 0; i < Nskip; i++) {
-    scan_line (f, buffer);
-  }
-
-  Nstart = 0;
-  N = 0;
-  done = FALSE;
-  while (!done) {
-    Nbytes = 0x10000 - Nstart;
-    bzero (&buffer[Nstart], Nbytes);
-    nread = fread (&buffer[Nstart], 1, Nbytes, f);
-    if (ferror (f)) {
-      perror ("error reading data file");
-      break;
-    }
-    if (nread == 0) break;
-    nbytes = nread + Nstart;
-    
-    status = TRUE;
-    c0 = buffer; 
-    while (status) {
-      c1 = strchr (c0, '\n');
-      if (c1 == (char *) NULL) {
-	Nstart = strlen (c0);
-	memmove (buffer, c0, Nstart);
-	status = FALSE;
-      } else {
-	*c1 = 0;
-      }      
-      if ((*c0 != '#') && (*c0 != '!')) {
-	for (i = 0; (i < Nvec) && status; i++) {
-	  status = dparse_csv (&value, col[i], c0);
-	  vec[i][0].elements.Flt[N] = value;
-	  if (!status) vec[i][0].elements.Flt[N] = NAN;
-	}
-	if (status) N++;
-      }
-      c0 = c1 + 1;
-      if (N == NELEM) {
-	NELEM += 1000;
-	for (i = 0; i < Nvec; i++) {
-	  REALLOCATE (vec[i][0].elements.Flt, opihi_flt, NELEM);
-	}
-      }
-	
-    }
-  }
-  for (i = 0; i < Nvec; i++) {
-    REALLOCATE (vec[i][0].elements.Flt, opihi_flt, MAX (N,1));
-    vec[i][0].Nelements = N;
-  }
-  
-  free (vec);
-  free (col);
-  free (buffer);
-  return (TRUE);
-
-}
-
-# endif
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/reindex.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/reindex.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/reindex.c	(revision 34041)
@@ -22,5 +22,5 @@
 
   // ovec matches ivec in type and xvec in size (xvec need not have all ivec elements, and may have duplicates
-  ResetVector (ovec, ivec->type, MAX (xvec[0].Nelements, 1));
+  ResetVector (ovec, ivec->type, xvec[0].Nelements);
 
   Nmax = ivec[0].Nelements - 1;
@@ -51,5 +51,5 @@
 
   // free up unused memory
-  ResetVector (ovec, ivec->type, MAX (Npts, 1));
+  ResetVector (ovec, ivec->type, Npts);
   return (TRUE);
 
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/select.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/select.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/select.c	(revision 34041)
@@ -28,7 +28,7 @@
 
   if ((in1->type == OPIHI_INT) && (in2->type == OPIHI_INT)) {
-    ResetVector (ovec, OPIHI_INT, MAX (tvec[0].Nelements, 1));
+    ResetVector (ovec, OPIHI_INT, tvec[0].Nelements);
   } else {
-    ResetVector (ovec, OPIHI_FLT, MAX (tvec[0].Nelements, 1));
+    ResetVector (ovec, OPIHI_FLT, tvec[0].Nelements);
   }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.sh
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.sh	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.sh	(revision 34041)
@@ -0,0 +1,145 @@
+
+list tests
+ #test1
+ #test2
+ #test3
+ #test4
+ test5
+ test6
+end
+
+# basic read
+macro test1
+ 
+ $PASS = 1
+
+ data read.t1.dat
+ read t1 1 t2 2 t3 3
+
+ if (t1[0] != 1) set PASS = 0
+ if (t1[1] != 2) set PASS = 0
+ if (t1[2] != 4) set PASS = 0
+
+ if (t2[0] != 5) set PASS = 0
+ if (t2[1] != 3) set PASS = 0
+ if (t2[2] != 5) set PASS = 0
+
+ if (t3[0] != 8) set PASS = 0
+ if (t3[1] != 9) set PASS = 0
+ if (t3[2] != 7) set PASS = 0
+end
+
+# basic read with int types
+macro test2
+ 
+ $PASS = 1
+
+ data read.t1.dat
+ read t1:int 1 t2:int 2 t3:int 3
+
+ # note: no way to verify the mode of a vector
+ vectors
+
+ if (t1[0] != 1) set PASS = 0
+ if (t1[1] != 2) set PASS = 0
+ if (t1[2] != 4) set PASS = 0
+
+ if (t2[0] != 5) set PASS = 0
+ if (t2[1] != 3) set PASS = 0
+ if (t2[2] != 5) set PASS = 0
+
+ if (t3[0] != 8) set PASS = 0
+ if (t3[1] != 9) set PASS = 0
+ if (t3[2] != 7) set PASS = 0
+end
+
+# basic read with comments
+macro test3
+ 
+ $PASS = 1
+
+ data read.t2.dat
+ read t1 1 t2 2 t3 3
+
+ if (t1[0] != 1) set PASS = 0
+ if (t1[1] != 2) set PASS = 0
+ if (t1[2] != 4) set PASS = 0
+
+ if (t2[0] != 5) set PASS = 0
+ if (t2[1] != 3) set PASS = 0
+ if (t2[2] != 5) set PASS = 0
+
+ if (t3[0] != 8) set PASS = 0
+ if (t3[1] != 9) set PASS = 0
+ if (t3[2] != 7) set PASS = 0
+end
+
+# basic read with comments & int types
+macro test4
+ 
+ $PASS = 1
+
+ data read.t2.dat
+ read t1:int 1 t2:int 2 t3:int 3
+
+ # note: no way to verify the mode of a vector
+ vectors
+
+ if (t1[0] != 1) set PASS = 0
+ if (t1[1] != 2) set PASS = 0
+ if (t1[2] != 4) set PASS = 0
+
+ if (t2[0] != 5) set PASS = 0
+ if (t2[1] != 3) set PASS = 0
+ if (t2[2] != 5) set PASS = 0
+
+ if (t3[0] != 8) set PASS = 0
+ if (t3[1] != 9) set PASS = 0
+ if (t3[2] != 7) set PASS = 0
+end
+
+# read with invalid entries
+macro test5
+ 
+ $PASS = 1
+
+ data read.t3.dat
+ read t1 1 t2 2 t3 3
+
+ if (t1[0] != 1) set PASS = 0
+ if (t1[1] != 2) set PASS = 0
+ if (t1[2] != 4) set PASS = 0
+
+ if (t2[0] != 5) set PASS = 0
+ if (not(isnan(t2[1]))) set PASS = 0
+ if (t2[2] != 5) set PASS = 0
+
+ if (t3[0] != 8) set PASS = 0
+ if (t3[1] != 9) set PASS = 0
+ if (not(isnan(t3[2]))) set PASS = 0
+end
+
+# read with invalid entries & int types
+macro test6
+ 
+ $PASS = 1
+
+ data read.t3.dat
+ read t1:int 1 t2:int 2 t3:int 3
+
+ # note: no way to verify the mode of a vector
+ vectors
+
+ if (t1[0] != 1) set PASS = 0
+ if (t1[1] != 2) set PASS = 0
+ if (t1[2] != 4) set PASS = 0
+
+ if (t2[0] != 5) set PASS = 0
+ if (t2[1] != 0) set PASS = 0
+ if (t2[2] != 5) set PASS = 0
+
+ if (t3[0] != 8) set PASS = 0
+ if (t3[1] != 9) set PASS = 0
+ if (t3[2] != 0) set PASS = 0
+end
+
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t1.dat
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t1.dat	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t1.dat	(revision 34041)
@@ -0,0 +1,3 @@
+1 5 8
+2 3 9
+4 5 7
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t2.dat
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t2.dat	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t2.dat	(revision 34041)
@@ -0,0 +1,5 @@
+# comment line
+1 5 8
+2 3 9
+! comment line 2
+4 5 7
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t3.dat
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t3.dat	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t3.dat	(revision 34041)
@@ -0,0 +1,3 @@
+1 5 8
+2 X 9
+4 5 Y
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t4.dat
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t4.dat	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/test/read.t4.dat	(revision 34041)
@@ -0,0 +1,7 @@
+1 5 8 2000/01/01,00:00:00
+2 3 9 2000/01/01,01:00:00
+4 5 7 2000/01/01,02:00:00
+4 5 7 now
+4 5 7 today
+4 5 7 2451544.750000j
+4 5 7 51544.500000J
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/threshold.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/threshold.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/threshold.c	(revision 34041)
@@ -0,0 +1,96 @@
+# include "data.h"
+
+int threshold (int argc, char **argv) {
+  
+  int N, QUIET;
+  double value;
+  Vector *vecx, *vecy;
+
+  QUIET = FALSE;
+  if ((N = get_argument (argc, argv, "-q"))) {
+    QUIET = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  if (argc != 4) {
+    gprint (GP_ERR, "USAGE: threshold <x> <y> (value)\n");
+    gprint (GP_ERR, "  find the x coordinate at which we pass the specified value\n");
+    gprint (GP_ERR, "  by default, y must be monotonically increasing\n");
+    return (FALSE);
+  }
+  
+  if ((vecx = SelectVector (argv[1], OLDVECTOR, TRUE)) == NULL) return (FALSE);
+  if ((vecy = SelectVector (argv[2], OLDVECTOR, TRUE)) == NULL) return (FALSE);
+  
+  value = atof (argv[3]);
+  
+  // if (argc == 6) {
+  //   start = atof (argv[4]);
+  //   end   = atof (argv[5]);
+  // } else {
+  //   start = (vecx[0].type == OPIHI_FLT) ? vecx[0].elements.Flt[0] : vecx[0].elements.Int[0];
+  //   end   = (vecx[0].type == OPIHI_FLT) ? vecx[0].elements.Flt[vecx[0].Nelements - 1] : vecx[0].elements.Int[vecx[0].Nelements - 1];
+  // }
+
+  int isFltX = (vecx[0].type == OPIHI_FLT);
+  int isFltY = (vecy[0].type == OPIHI_FLT);
+
+  // use bisection to find the value
+  int Nlo, Nhi;
+  int Nelements = vecx[0].Nelements;
+
+  // find the last entry before start
+  Nlo = 0;
+  Nhi = Nelements - 1;
+  while (Nhi - Nlo > 10) {
+    N = 0.5*(Nlo + Nhi);
+    double testval = isFltY ? vecy[0].elements.Flt[N] : vecy[0].elements.Int[N];
+    if (testval < value) {
+      Nlo = MAX(N, 0);
+    } else {
+      Nhi = MIN(N, Nelements - 1);
+    }
+  }
+  // v[Nlo] < value <= v[Nhi]
+  for (N = Nlo; N <= Nhi; N++) {
+    double testval = isFltY ? vecy[0].elements.Flt[N] : vecy[0].elements.Int[N];
+    if (testval > value) {
+      Nhi = N;
+      break;
+    }
+  }
+  // v[Nhi] is transition bin
+  
+  double x0, x1, y0, y1, Xvalue;
+  if (Nhi == 0) {
+    // interpolate to value:
+    y0 = isFltY ? vecy[0].elements.Flt[Nhi] : vecy[0].elements.Int[Nhi];
+    y1 = isFltY ? vecy[0].elements.Flt[Nhi+1]   : vecy[0].elements.Int[Nhi+1];
+    x0 = isFltX ? vecx[0].elements.Flt[Nhi] : vecy[0].elements.Int[Nhi];
+    x1 = isFltX ? vecx[0].elements.Flt[Nhi+1]   : vecy[0].elements.Int[Nhi+1];
+    if (y0 == y1) {
+      Xvalue = 0.5*(x0 + x1);
+    } else {
+      Xvalue = (value - y0) * (x1 - x0) / (y1 - y0) + x0;
+    }    
+  } else {
+    // interpolate to value:
+    y0 = isFltY ? vecy[0].elements.Flt[Nhi-1] : vecy[0].elements.Int[Nhi-1];
+    y1 = isFltY ? vecy[0].elements.Flt[Nhi]   : vecy[0].elements.Int[Nhi];
+    x0 = isFltX ? vecx[0].elements.Flt[Nhi-1] : vecy[0].elements.Int[Nhi-1];
+    x1 = isFltX ? vecx[0].elements.Flt[Nhi]   : vecy[0].elements.Int[Nhi];
+    if (y0 == y1) {
+      Xvalue = 0.5*(x0 + x1);
+    } else {
+      Xvalue = (value - y0) * (x1 - x0) / (y1 - y0) + x0;
+    }
+  }
+
+  set_variable ("threshval", y1);
+  set_int_variable ("threshbin", Nhi);
+  set_variable ("threshold", Xvalue);
+
+  if (!QUIET) gprint (GP_LOG, "theshold %f (bin %d is %f)\n", Xvalue, Nhi, y1);
+
+  return (TRUE);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/vgroup.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/vgroup.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/vgroup.c	(revision 34041)
@@ -1,3 +1,5 @@
 # include "data.h"
+
+enum {USE_MEDIAN, USE_COUNT, USE_SUM, USE_MEAN};
 
 int vgroup (int argc, char **argv) {
@@ -23,14 +25,42 @@
   // }
 
+  int mode = USE_MEDIAN;
+  if ((N = get_argument (argc, argv, "-sum"))) {
+    remove_argument (N, &argc, argv);
+    mode = USE_SUM;
+  }
+  if ((N = get_argument (argc, argv, "-mean"))) {
+    remove_argument (N, &argc, argv);
+    mode = USE_MEAN;
+  }
+
+  float binsize = NAN;
+  if ((N = get_argument (argc, argv, "-binsize"))) {
+    remove_argument (N, &argc, argv);
+    binsize = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
   if (argc != 5) {
-    gprint (GP_ERR, "USAGE: vbin <xin> <yin> <xout> <yout>\n");
+    gprint (GP_ERR, "USAGE: vgroup <xin> <yin> <xout> <yout>\n");
     gprint (GP_ERR, " group x,y values in bins defined by <xout>\n");
+    gprint (GP_ERR, " by default, yout has the median of the associated input values\n");
+    gprint (GP_ERR, " use -sum to add values in the bin\n");
+    gprint (GP_ERR, " use <yin> = histogram count matching values\n");
+    gprint (GP_ERR, " use -binsize to specify a fixed bin width (<xout> will define the bin center)\n");
     return (FALSE);
   }
 
   if ((xin  = SelectVector (argv[1], OLDVECTOR, TRUE)) == NULL) return (FALSE);
-  if ((yin  = SelectVector (argv[2], OLDVECTOR, TRUE)) == NULL) return (FALSE);
   if ((xout = SelectVector (argv[3], OLDVECTOR, TRUE)) == NULL) return (FALSE);
   if ((yout = SelectVector (argv[4], ANYVECTOR, TRUE)) == NULL) return (FALSE);
+  yin = NULL;
+
+  // this should conflict with the -sum option...
+  if (!strcmp(argv[2], "histogram")) {
+    mode = USE_COUNT;
+  } else {
+    if ((yin  = SelectVector (argv[2], OLDVECTOR, TRUE)) == NULL) return (FALSE);
+  }
 
   // re-binning creates a float vector
@@ -41,6 +71,11 @@
 
   for (i = 0; i < xout[0].Nelements - 1; i++) {
-    xmin = xout[0].elements.Flt[i];
-    xmax = xout[0].elements.Flt[i+1];
+    if (isnan(binsize)) {
+      xmin = xout[0].elements.Flt[i];
+      xmax = xout[0].elements.Flt[i+1];
+    } else {
+      xmin = xout[0].elements.Flt[i] - 0.5*binsize;
+      xmax = xout[0].elements.Flt[i] + 0.5*binsize;
+    }
 
     N = 0;
@@ -48,21 +83,40 @@
       if (xin[0].elements.Flt[j] < xmin) continue;
       if (xin[0].elements.Flt[j] > xmax) continue;
-      values[N] = yin[0].elements.Flt[j];
+      if (yin) {
+	values[N] = yin[0].elements.Flt[j];
+      }
       N++;
     }
     
-    dsort (values, N);
-    if (N > 1) {
-      sum = (N % 2) ? values[(int)(0.5*N)] : 0.5*(values[N/2] + values[N/2 + 1]);
-    } else {
-      sum = values[0];
+    sum = NAN;
+    switch (mode) {
+      case USE_MEDIAN:
+	dsort (values, N);
+	if (N > 1) {
+	  sum = (N % 2) ? values[(int)(0.5*N)] : 0.5*(values[N/2] + values[N/2 + 1]);
+	} else {
+	  sum = values[0];
+	}
+	break;
+
+      case USE_SUM:
+	sum = 0.0;
+	for (j = 0; j < N; j++) {
+	  sum += values[j];
+	}
+	break;
+	
+      case USE_COUNT:
+	sum = N;
+	break;
+
+      case USE_MEAN:
+	sum = 0.0;
+	for (j = 0; j < N; j++) {
+	  sum += values[j];
+	}
+	sum /= N;
+	break;
     }
-
-    // measure the stat for this bin
-    // sum = 0.0;
-    // for (j = 0; j < N; j++) {
-    //   sum += values[j];
-    // }
-    // sum /= N;
     yout[0].elements.Flt[i] = sum;
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/vstats.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/vstats.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/vstats.c	(revision 34041)
@@ -144,5 +144,5 @@
       }      
     }
-    stdev = sqrt (var / N);
+    stdev = sqrt (var / (N - 1));
 
     Nmode = 0;
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/write_vectors.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/write_vectors.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/cmd.data/write_vectors.c	(revision 34041)
@@ -7,5 +7,5 @@
   FILE *f;
   char **fmtlist, *fmttype;
-  char *p0, *p1, *p2, *format;
+  char *p0, *p1, *p2, *format, *FITS;
   Vector **vec;
 
@@ -18,8 +18,44 @@
   }
 
+  /* option generate a FITS output table */
+  FITS = NULL;
+  if ((N = get_argument (argc, argv, "-fits"))) {
+    if (format) {
+      gprint (GP_ERR, "ERROR: do not mix -fits and -format\n");
+      free (format);
+      return (FALSE);
+    }
+    remove_argument (N, &argc, argv);
+    FITS = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  /* option generate a FITS output table */
+  int CSV = FALSE;
+  if ((N = get_argument (argc, argv, "-csv"))) {
+    if (format) {
+      gprint (GP_ERR, "ERROR: do not mix -csv and -format\n");
+      free (format);
+      return (FALSE);
+    }
+    if (FITS) {
+      gprint (GP_ERR, "ERROR: do not mix -csv and -fits\n");
+      free (FITS);
+      return (FALSE);
+    }
+    remove_argument (N, &argc, argv);
+    CSV = TRUE;
+  }
+
   append = FALSE;
   if ((N = get_argument (argc, argv, "-append"))) {
     remove_argument (N, &argc, argv);
     append = TRUE;
+  }
+
+  int ADD_HEADER = FALSE;
+  if ((N = get_argument (argc, argv, "-header"))) {
+    remove_argument (N, &argc, argv);
+    ADD_HEADER = TRUE;
   }
 
@@ -29,22 +65,9 @@
   }
 
-  /* open file for outuput */
-  if (append) {
-      f = fopen (argv[1], "a");
-  } else {
-      f = fopen (argv[1], "w");
-  }
-  if (f == (FILE *) NULL) {
-    gprint (GP_ERR, "can't open file for write\n");
-    return (FALSE);
-  }
-
   /* find number of output vectors */
   Nvec = (argc - 2);
   if (Nvec < 1) {
-      gprint (GP_ERR, "USAGE: write (file) vector vector ...\n");
-      fclose (f);
-  fflush (f);
-      return (FALSE);
+    gprint (GP_ERR, "USAGE: write (file) vector vector ...\n");
+    return (FALSE);
   }
   ALLOCATE (vec, Vector *, Nvec);
@@ -56,6 +79,4 @@
       gprint (GP_ERR, "USAGE: write (file) vector vector ...\n");
       free (vec);
-      fclose (f);
-  fflush (f);
       return (FALSE);    
     }
@@ -68,8 +89,36 @@
       gprint (GP_ERR, "error: vectors must all be the same size\n");
       free (vec);
-      fclose (f);
-  fflush (f);
       return (FALSE);    
     }
+  }
+
+  if (FITS) {
+    int status = WriteVectorTableFITS (argv[1], FITS, vec, Nvec, append, format);
+    free (vec);
+    return status;
+  }
+
+  /* open file for outuput */
+  if (append) {
+    f = fopen (argv[1], "a");
+  } else {
+    f = fopen (argv[1], "w");
+  }
+  if (f == (FILE *) NULL) {
+    gprint (GP_ERR, "can't open file for write\n");
+    return (FALSE);
+  }
+
+  /* default output format */
+  if (ADD_HEADER) {
+    for (j = 0; j < Nvec; j++) {
+      if (CSV) {
+	fprintf (f, "%s,", vec[j][0].name);
+      } else {
+	if (j == 0) fprintf (f, "# ");
+	fprintf (f, "%s ", vec[j][0].name);
+      }
+    }
+    fprintf (f, "\n");
   }
 
@@ -79,7 +128,15 @@
       for (j = 0; j < Nvec; j++) {
 	if (vec[j][0].type == OPIHI_FLT) {
-	  fprintf (f, "%.12g ", vec[j][0].elements.Flt[i]);
+	  if (CSV) {
+	    fprintf (f, "%.12g,", vec[j][0].elements.Flt[i]);
+	  } else {
+	    fprintf (f, "%.12g ", vec[j][0].elements.Flt[i]);
+	  }
 	} else {
-	  fprintf (f, "%d ", vec[j][0].elements.Int[i]);
+	  if (CSV) {
+	    fprintf (f, "%d,", vec[j][0].elements.Int[i]);
+	  } else {
+	    fprintf (f, "%d ", vec[j][0].elements.Int[i]);
+	  }
 	}
       }
@@ -88,5 +145,5 @@
     fclose (f);
     free (vec);
-  fflush (f);
+    fflush (f);
     return (TRUE);
   }
@@ -111,5 +168,5 @@
       free (format);
       fclose (f);
-  fflush (f);
+      fflush (f);
       return (FALSE);
     }
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/doc/dvo.parallel.txt
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/doc/dvo.parallel.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/doc/dvo.parallel.txt	(revision 34041)
@@ -0,0 +1,12 @@
+
+2012.02.17
+
+ To parallelize dvo queries, like mextract, I need a version of dvo
+ that takes acts as the remote client.  It should take a single dvo
+ command on the command line and operate on it on the remote host.
+ eg:
+
+dvo_client mextract (reset of line)
+
+it would dump out a result table somewhere (what is loaded?)
+
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/Makefile	(revision 34041)
@@ -23,8 +23,8 @@
 $(SRC)/compare.$(ARCH).o                \
 $(SRC)/dvomisc.$(ARCH).o		\
+$(SRC)/dvo_host_utils.$(ARCH).o		\
 $(SRC)/region_list.$(ARCH).o		\
 $(SRC)/find_matches.$(ARCH).o		\
-$(SRC)/photometry.$(ARCH).o             \
-$(SRC)/dvo.$(ARCH).o
+$(SRC)/photometry.$(ARCH).o             
 
 cmds = \
@@ -50,6 +50,8 @@
 $(SRC)/fitsed.$(ARCH).o                \
 $(SRC)/gcat.$(ARCH).o		  	\
+$(SRC)/catlist.$(ARCH).o		  	\
 $(SRC)/gimages.$(ARCH).o	  	\
 $(SRC)/gstar.$(ARCH).o		  	\
+$(SRC)/hosts.$(ARCH).o	  	\
 $(SRC)/images.$(ARCH).o	  	\
 $(SRC)/imbox.$(ARCH).o		  	\
@@ -71,4 +73,5 @@
 $(SRC)/paverage.$(ARCH).o	  	\
 $(SRC)/procks.$(ARCH).o	  	\
+$(SRC)/remote.$(ARCH).o	  	\
 $(SRC)/skycat.$(ARCH).o	  	\
 $(SRC)/skycoverage.$(ARCH).o	  	\
@@ -88,5 +91,12 @@
 dvo: $(BIN)/dvo.$(ARCH)
 $(SRC)/dvo.$(ARCH).o : $(libs)
-$(BIN)/dvo.$(ARCH)   : $(funcs) $(cmds)
+$(BIN)/dvo.$(ARCH)   : $(funcs) $(cmds) $(SRC)/dvo.$(ARCH).o
+
+dvo_client: $(BIN)/dvo_client.$(ARCH)
+$(SRC)/dvo_client.$(ARCH).o : $(libs)
+$(BIN)/dvo_client.$(ARCH)   : $(funcs) $(cmds) $(SRC)/dvo_client.$(ARCH).o
+
+dvo.install: $(DESTBIN)/dvo
+dvo_client.install: $(DESTBIN)/dvo_client
 
 install: $(DESTBIN)/dvo help modules
@@ -98,5 +108,5 @@
 modules: dvo.modules
 
-.PHONY: dvo
+.PHONY: dvo dvo_client
 
 # deprecated functions: verify & delete
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/avextract.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/avextract.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/avextract.c	(revision 34041)
@@ -37,4 +37,50 @@
   }
 
+  int VERBOSE2 = FALSE;
+  if ((N = get_argument (argc, argv, "-vv"))) {
+    remove_argument (N, &argc, argv);
+    VERBOSE = TRUE;
+    VERBOSE2 = TRUE;
+  }
+
+  int PARALLEL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel"))) {
+    remove_argument (N, &argc, argv);
+    PARALLEL = TRUE;
+  }
+
+  // use remote tables, but not dvo_client..
+  int PARALLEL_LOCAL = FALSE;
+  HostTable *table = NULL;
+  if ((N = get_argument (argc, argv, "-parallel-local"))) {
+    remove_argument (N, &argc, argv);
+    PARALLEL_LOCAL = TRUE;
+
+    char *CATDIR = GetCATDIR();
+    if (!CATDIR) {
+      gprint (GP_ERR, "CATDIR is not set\n");
+      return FALSE;
+    }
+    SkyTable *sky = GetSkyTable();
+    if (!sky) {
+      gprint (GP_ERR, "failed to load sky table for database\n");
+      return FALSE;
+    }
+    table = HostTableLoad (CATDIR, sky->hosts);
+    if (!table) {
+      gprint (GP_ERR, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+      return FALSE;
+    }    
+  }
+
+  // this is used to NOT save the results in the results file
+  // use this option when mextract is used in a script which does its
+  // own job of packaging the results
+  int SKIP_RESULTS = FALSE;
+  if ((N = get_argument (argc, argv, "-skip-results"))) {
+    remove_argument (N, &argc, argv);
+    SKIP_RESULTS = TRUE;
+  }
+
   dvo_catalog_init (&catalog, TRUE);
 
@@ -43,9 +89,14 @@
   Nsecfilt = GetPhotcodeNsecfilt ();
 
-  // parse skyregion options
+  // parse skyregion options.  NOTE: this is stripped off in parallel operation and always
+  // defined for the client via the -skyregion option.  The dvo_client parses this
+  // argument in the main program, before it is passed to the command (like mextract)
   if ((selection = SetRegionSelection (&argc, argv)) == NULL) {
     print_error(); 
     goto escape; 
   }
+
+  // init locally static variables (time refs)
+  dbExtractAveragesInit (); 
 
   // command-line is of the form: avextract field,field, field [where (field op value)...]
@@ -85,4 +136,17 @@
   /* load region corresponding to selection above */
   if ((skylist = SelectRegions (selection)) == NULL) goto escape;
+
+  // this does all the work of re-packaging the command, calling it on the remote machines, then loading in the results
+  if (PARALLEL && !HOST_ID) {
+    int status = HostTableParallelOps (argc, argv, RESULT_FILE, 0, VERBOSE);
+
+    dbFreeFields (fields, Nfields);
+    dbFreeStack (stack, Nstack);
+    free (stack);
+    FreeSkyRegionSelection (selection);
+    dvo_catalog_free (&catalog);
+
+    return status;
+  }
 
   /* create output storage vectors */
@@ -114,10 +178,19 @@
   interrupt = FALSE;
   for (i = 0; (i < skylist[0].Nregions) && !interrupt; i++) {
+
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], HOST_ID)) continue;
+
     /* lock, load, unlock catalog */
-    catalog.filename = skylist[0].filename[i];
+    char hostfile[1024];
+    if (PARALLEL_LOCAL) {
+      int hostID = (skylist[0].regions[i]->hostFlags & DATA_USE_BCK) ? skylist[0].regions[i]->backupID : skylist[0].regions[i]->hostID;
+      int seq = table->index[hostID];
+      HOSTDIR = table->hosts[seq].pathname;
+    }
+    snprintf (hostfile, 1024, "%s/%s.cpt", HOSTDIR, skylist[0].regions[i]->name);
+    catalog.filename = (HOST_ID || PARALLEL_LOCAL) ? hostfile : skylist[0].filename[i];
     catalog.catflags = LOAD_AVES | LOAD_SECF;
-    if (needMeasures) {
-      catalog.catflags |= LOAD_MEAS;
-    }
+    catalog.catflags |= needMeasures ? LOAD_MEAS : SKIP_MEAS;
     catalog.Nsecfilt = 0;
 
@@ -125,5 +198,5 @@
       
     // an error exit status here is a significant error
-    if (!dvo_catalog_open (&catalog, NULL, FALSE, "r")) {
+    if (!dvo_catalog_open (&catalog, NULL, VERBOSE2, "r")) {
       gprint (GP_ERR, "ERROR: failure to open catalog file %s\n", catalog.filename);
       exit (2);
@@ -137,6 +210,6 @@
       m = catalog.average[j].measureOffset;
 
-      // reset counters for saved fields, extract fields
-      dbExtractAveragesInit (); 
+      dbExtractAveragesInitAve ();  // reset counters for saved fields (costs very little)
+
       for (n = 0; n < Nfields; n++) {
 	values[n] = dbExtractAverages (&catalog.average[j], &catalog.secfilt[j*Nsecfilt], &catalog.measure[m], &fields[n]);
@@ -169,12 +242,16 @@
   interrupt = FALSE;
   for (n = 0; n < Nreturn; n++) {
-    vec[n][0].Nelements = Npts;
-    if (vec[n][0].type == OPIHI_FLT) {
-      REALLOCATE (vec[n][0].elements.Flt, opihi_flt, MAX(1,Npts));
-    } else {
-      REALLOCATE (vec[n][0].elements.Int, opihi_int, MAX(1,Npts));
-    }
-  }
-
+    ResetVector (vec[n], fields[n].type, Npts);
+  }
+
+  // write vectors to a table (this is used by parallel dvo operations, but can be used elsewhere)
+  if (RESULT_FILE && !SKIP_RESULTS) {
+    int status = WriteVectorTableFITS (RESULT_FILE, "RESULT", vec, Nreturn, FALSE, NULL);
+    if (!status) {
+      goto escape;
+    }
+  }
+
+  if (table) free (table);
   if (vec) free (vec);
   if (values) free (values);
@@ -187,4 +264,5 @@
 
  escape:
+  if (table) free (table);
   if (vec) free (vec);
   if (values) free (values);
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/avmatch.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/avmatch.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/avmatch.c	(revision 34041)
@@ -14,7 +14,7 @@
   
   off_t i, j, n, m, *index;
-  int N, Ncat, Npts, NPTS, last, Nfields, Nsecfilt;
+  int N, Ncat, Npts, NPTS, last, Nfields, Nsecfilt, Ninvec;
   int VERBOSE;
-  char name[1024];
+  char name[1024], *found;
   void *Signal;
   float RADIUS;
@@ -22,5 +22,5 @@
   Catalog catalog;
 
-  Vector **vec, *RAvec, *DECvec;
+  Vector **vec, **invec, *RAvec, *DECvec;
   dbField *fields;
   dbValue *values;
@@ -29,11 +29,12 @@
   /* defaults */
   vec = NULL;
+  invec = NULL;
   fields = NULL;
   values = NULL;
   skylist = NULL;
+  Ninvec = 0;
 
   if ((N = get_argument (argc, argv, "-h"))) goto help;
   if ((N = get_argument (argc, argv, "--help"))) goto help;
-  if (argc < 5) goto help;
 
   VERBOSE = FALSE;
@@ -43,4 +44,21 @@
   }
 
+  int PARALLEL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel"))) {
+    remove_argument (N, &argc, argv);
+    PARALLEL = TRUE;
+  }
+
+  // dump results directly to fits file (esp for parallel dvo)
+  char *CoordsFile = NULL;
+  if ((N = get_argument (argc, argv, "-coords"))) {
+    remove_argument (N, &argc, argv);
+    CoordsFile = strcreate(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  if (!CoordsFile && (argc < 5)) goto help;
+  if ( CoordsFile && (argc < 3)) goto help;
+
   dvo_catalog_init (&catalog, TRUE);
 
@@ -49,12 +67,58 @@
   Nsecfilt = GetPhotcodeNsecfilt ();
 
+  // init locally static variables (time refs)
+  dbExtractAveragesInit (); 
+
+  // this does all the work of re-packaging the command, calling it on the remote machines, then loading in the results
+  RAvec  = NULL;
+  DECvec = NULL;
+  if (PARALLEL && !HOST_ID) {
+    if (!CoordsFile) {
+      // get vectors corresponding to coordinates of interest
+      if ((RAvec  = SelectVector (argv[1], ANYVECTOR, TRUE)) == NULL) goto help;
+      if ((DECvec = SelectVector (argv[2], ANYVECTOR, TRUE)) == NULL) goto help;
+      
+      ALLOCATE (vec, Vector *, 2);
+      vec[0] = RAvec;
+      vec[1] = DECvec;
+
+      CoordsFile = abspath("coords.fits", 1024);
+      int status = WriteVectorTableFITS (CoordsFile, "COORDS", vec, 2, FALSE, NULL);
+      if (!status) goto escape;
+    }
+
+    char *targv1 = argv[1];
+    char *targv2 = argv[2];
+    argv[1] = strcreate ("-coords");
+    argv[2] = strcreate (CoordsFile);
+    free (CoordsFile);
+
+    // I need to pass the RA & DEC vectors to the remote clients...
+    int status = HostTableParallelOps (argc, argv, RESULT_FILE, RAvec->Nelements, VERBOSE);
+    if (vec) free (vec);
+    
+    free (argv[1]);
+    free (argv[2]);
+    argv[1] = targv1;
+    argv[2] = targv2;
+
+    return status;
+  }
+
   // get vectors corresponding to coordinates of interest
-  if ((RAvec  = SelectVector (argv[1], ANYVECTOR, TRUE)) == NULL) goto help;
-  if ((DECvec = SelectVector (argv[2], ANYVECTOR, TRUE)) == NULL) goto help;
-  RADIUS = atof (argv[3]);
-
-  // strip off RA, DEC, RADIUS arguments
-  remove_argument (1, &argc, argv);
-  remove_argument (1, &argc, argv);
+  if (CoordsFile) {
+    // read RAvec, DECvec from coords file (1st 2 fields?)
+    Ninvec = 0;
+    invec = ReadVectorTableFITS (CoordsFile, "COORDS", &Ninvec);
+    RAvec = invec[0];
+    DECvec = invec[1];
+  } else {
+    if ((RAvec  = SelectVector (argv[1], ANYVECTOR, TRUE)) == NULL) goto help;
+    if ((DECvec = SelectVector (argv[2], ANYVECTOR, TRUE)) == NULL) goto help;
+    // strip off RA & DEC
+    remove_argument (1, &argc, argv);
+    remove_argument (1, &argc, argv);
+  }
+  RADIUS = atof (argv[1]);
   remove_argument (1, &argc, argv);
 
@@ -66,4 +130,13 @@
     dvo_catalog_free (&catalog);
     goto help;
+  }
+
+  // check the requested fields : are all average/secfilt entries, or do we need measures?
+  int needMeasures = FALSE;
+  for (i = 0; !needMeasures && (i < Nfields); i++) {
+    if (fields[i].magMode == MAG_NONE) continue;
+    if (fields[i].photcode == NULL) continue; // assert this?
+    if (fields[i].photcode[0].type == PHOT_REF) needMeasures = TRUE;
+    if (fields[i].photcode[0].type == PHOT_DEP) needMeasures = TRUE;
   }
 
@@ -92,4 +165,6 @@
   }
   ALLOCATE (index, off_t, NPTS);
+  ALLOCATE (found, char, NPTS);
+  memset (found, 0, NPTS*sizeof(char));
 
   // grab data from all selected sky regions
@@ -97,7 +172,14 @@
   interrupt = FALSE;
   for (i = 0; (i < skylist[0].Nregions) && !interrupt; i++) {
+
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], HOST_ID)) continue;
+
     /* lock, load, unlock catalog */
-    catalog.filename = skylist[0].filename[i];
-    catalog.catflags = LOAD_AVES | LOAD_MEAS | LOAD_SECF;
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", HOSTDIR, skylist[0].regions[i]->name);
+    catalog.filename = HOST_ID ? hostfile : skylist[0].filename[i];
+    catalog.catflags = LOAD_AVES | LOAD_SECF;
+    catalog.catflags |= needMeasures ? LOAD_MEAS : SKIP_MEAS;
     catalog.Nsecfilt = 0;
 
@@ -124,9 +206,8 @@
       if (Ncat == -2) continue;
 
-      // XXX set a 'found' vector to double check we catch everything?
       m = catalog.average[Ncat].measureOffset;
 
       // reset counters for saved fields, extract fields
-      dbExtractAveragesInit (); 
+      dbExtractAveragesInitAve (); 
       for (n = 0; n < Nfields; n++) {
 	values[n] = dbExtractAverages (&catalog.average[Ncat], &catalog.secfilt[Ncat*Nsecfilt], &catalog.measure[m], &fields[n]);
@@ -141,4 +222,5 @@
 	}
       }
+      found[Npts] = TRUE;
     }
     dvo_catalog_free (&catalog);
@@ -147,6 +229,61 @@
   interrupt = FALSE;
 
+  // write vectors to a table (this is used by parallel dvo operations, but can be used elsewhere)
+  // only write the fields which were in a valid catalog
+  if (RESULT_FILE) {
+    // extend the array by one to hold index array
+    REALLOCATE (vec, Vector *, Nfields + 1);
+    vec[Nfields] = InitVector();
+    strcpy (vec[Nfields]->name, "index");
+    ResetVector (vec[Nfields], OPIHI_INT, NPTS);
+    Vector *idxVec = vec[Nfields];
+
+    // only write out the rows which were found
+    Npts = 0;
+    for (i = 0; i < NPTS; i++) {
+      if (!found[i]) continue;
+      idxVec->elements.Int[Npts] = i;
+      Npts ++;
+    }
+    int Nfound = Npts;
+    idxVec->Nelements = Nfound;
+
+    fprintf (stderr, "found %d of %d pts\n", Nfound, NPTS);
+
+    for (i = 0; i < Nfields; i++) {
+      if (vec[i][0].type == OPIHI_FLT) {
+	opihi_flt *tmp = NULL;
+	ALLOCATE (tmp, opihi_flt, Nfound);
+	Npts = 0;
+	for (j = 0; j < NPTS; j++) {
+	  if (!found[j]) continue;
+	  tmp[Npts] = vec[i][0].elements.Flt[j];
+	  Npts++;
+	}
+	free (vec[i][0].elements.Flt);
+	vec[i][0].elements.Flt = tmp;
+      } else {
+	opihi_int *tmp = NULL;
+	ALLOCATE (tmp, opihi_int, Nfound);
+	Npts = 0;
+	for (j = 0; j < NPTS; j++) {
+	  if (!found[j]) continue;
+	  tmp[Npts] = vec[i][0].elements.Int[j];
+	  Npts++;
+	}
+	free (vec[i][0].elements.Int);
+	vec[i][0].elements.Int = tmp;
+      }
+      vec[i][0].Nelements = Nfound;
+    }
+    int status = WriteVectorTableFITS (RESULT_FILE, "RESULT", vec, Nfields + 1, FALSE, NULL);
+    free (vec[Nfields]->elements.Int);
+    free (vec[Nfields]);
+    if (!status) goto escape;
+  }
+
   if (vec) free (vec);
   if (values) free (values);
+  if (invec) FreeVectorArray (invec, Ninvec);
   dbFreeFields (fields, Nfields);
   SkyListFree (skylist);
@@ -156,4 +293,5 @@
   if (vec) free (vec);
   if (values) free (values);
+  if (invec) FreeVectorArray (invec, Ninvec);
   dbFreeFields (fields, Nfields);
   SkyListFree (skylist);
@@ -162,4 +300,5 @@
  help:
   gprint (GP_ERR, "USAGE: avmatch (RA) (DEC) (RADIUS) field[,field,field...]\n");
+  gprint (GP_ERR, "   OR: avmatch -coords (filename.fits) (RADIUS) field[,field,field...]\n");
 
   if ((argc > N + 1) && !strcasecmp (argv[N+1], "fields")) {
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/catlist.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/catlist.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/catlist.c	(revision 34041)
@@ -0,0 +1,105 @@
+# include "dvoshell.h"
+
+// find the catalog files which are in a given region, possibly only by host
+int catlist (int argc, char **argv) {
+  
+  int i, N;
+  struct stat filestat;
+
+  int VERBOSE = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    remove_argument (N, &argc, argv);
+    VERBOSE = TRUE;
+  }
+  int ShowAll = FALSE;
+  if ((N = get_argument (argc, argv, "-all"))) {
+    remove_argument (N, &argc, argv);
+    ShowAll = TRUE;
+  }
+  int Depth = -1;
+  if ((N = get_argument (argc, argv, "-depth"))) {
+    remove_argument (N, &argc, argv);
+    Depth = atoi (argv[N]);
+    remove_argument (N, &argc, argv);    
+  }
+  int ThisHost = FALSE;
+  if ((N = get_argument (argc, argv, "-this-host"))) {
+    remove_argument (N, &argc, argv);
+    ThisHost = TRUE;
+  }
+
+  // use remote tables, but not dvo_client..
+  int PARALLEL_LOCAL = FALSE;
+  HostTable *table = NULL;
+  if ((N = get_argument (argc, argv, "-parallel-local"))) {
+    remove_argument (N, &argc, argv);
+    PARALLEL_LOCAL = TRUE;
+  }
+
+  if (argc != 5) {
+    gprint (GP_ERR, "USAGE: catlist Rmin Rmax Dmin Dmax\n");
+    return (FALSE);
+  }
+
+  float Rmin = atof(argv[1]);
+  float Rmax = atof(argv[2]);
+  float Dmin = atof(argv[3]);
+  float Dmax = atof(argv[4]);
+
+  SkyTable *sky = GetSkyTable ();
+  SkyList *skylist = SkyListByBounds (sky, Depth, Rmin, Rmax, Dmin, Dmax);
+  
+  SkyRegion **regions = skylist[0].regions;
+
+
+  if (PARALLEL_LOCAL) {
+    char *CATDIR = GetCATDIR();
+    if (!CATDIR) {
+      gprint (GP_ERR, "CATDIR is not set\n");
+      return FALSE;
+    }
+    table = HostTableLoad (CATDIR, sky->hosts);
+    if (!table) {
+      gprint (GP_ERR, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+      return FALSE;
+    }    
+  }
+
+  int Nregion = 0;
+  for (i = 0; i < skylist[0].Nregions; i++) {
+
+    // skip tables that are not on this host (if -this-host supplied)
+    if (ThisHost && !HostTableTestHost (regions[i], HOST_ID)) continue;
+
+    if (PARALLEL_LOCAL) {
+      int hostID = (skylist[0].regions[i]->hostFlags & DATA_USE_BCK) ? skylist[0].regions[i]->backupID : skylist[0].regions[i]->hostID;
+      int seq = table->index[hostID];
+      HOSTDIR = table->hosts[seq].pathname;
+    }
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", HOSTDIR, skylist[0].regions[i]->name);
+    char *filename = (HOST_ID || PARALLEL_LOCAL) ? hostfile : skylist[0].filename[i];
+
+    if (ShowAll || (stat (filename, &filestat) != -1)) {
+      if (VERBOSE) gprint (GP_ERR, "%3d %s %6.2f - %6.2f, %6.2f - %6.2f\n", i, regions[i][0].name, 
+			   regions[i][0].Rmin, regions[i][0].Rmax, regions[i][0].Dmin, regions[i][0].Dmax);
+      
+      char name[64], nameRmin[64], nameRmax[64], nameDmin[64], nameDmax[64];
+      snprintf (name, 64, "region:%d", Nregion);
+      snprintf (nameRmin, 64, "region_Rmin:%d", Nregion);
+      snprintf (nameRmax, 64, "region_Rmax:%d", Nregion);
+      snprintf (nameDmin, 64, "region_Dmin:%d", Nregion);
+      snprintf (nameDmax, 64, "region_Dmax:%d", Nregion);
+      set_str_variable (name,     regions[i][0].name);
+      set_variable (nameRmin, regions[i][0].Rmin);
+      set_variable (nameRmax, regions[i][0].Rmax);
+      set_variable (nameDmin, regions[i][0].Dmin);
+      set_variable (nameDmax, regions[i][0].Dmax);
+      Nregion ++;
+    }
+  }
+  set_int_variable ("region:n", Nregion);
+
+  if (table) free (table);
+  return (TRUE);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/catstats.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/catstats.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/catstats.c	(revision 34041)
@@ -0,0 +1,91 @@
+# include "dvoshell.h"
+
+// return some stats on the specified catalog files
+int catstats (int argc, char **argv) {
+  
+  int i, N;
+  struct stat filestat;
+
+  int VERBOSE = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    remove_argument (N, &argc, argv);
+    VERBOSE = TRUE;
+  }
+  int ShowAll = FALSE;
+  if ((N = get_argument (argc, argv, "-all"))) {
+    remove_argument (N, &argc, argv);
+    ShowAll = TRUE;
+  }
+  int Depth = -1;
+  if ((N = get_argument (argc, argv, "-depth"))) {
+    remove_argument (N, &argc, argv);
+    Depth = atoi (argv[N]);
+    remove_argument (N, &argc, argv);    
+  }
+  int ThisHost = FALSE;
+  if ((N = get_argument (argc, argv, "-this-host"))) {
+    remove_argument (N, &argc, argv);
+    ThisHost = TRUE;
+  }
+
+  // use remote tables, but not dvo_client..
+  int PARALLEL_LOCAL = FALSE;
+  HostTable *table = NULL;
+  if ((N = get_argument (argc, argv, "-parallel-local"))) {
+    remove_argument (N, &argc, argv);
+    PARALLEL_LOCAL = TRUE;
+  }
+
+  if (argc != 5) {
+    gprint (GP_ERR, "USAGE: catstats (name)\n");
+    return (FALSE);
+  }
+
+  SkyTable *sky = GetSkyTable ();
+  SkyList *skylist = SkyListByBounds (sky, Depth, Rmin, Rmax, Dmin, Dmax);
+  SkyRegion **regions = skylist[0].regions;
+
+
+  if (PARALLEL_LOCAL) {
+    char *CATDIR = GetCATDIR();
+    if (!CATDIR) {
+      gprint (GP_ERR, "CATDIR is not set\n");
+      return FALSE;
+    }
+    table = HostTableLoad (CATDIR, sky->hosts);
+    if (!table) {
+      gprint (GP_ERR, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+      return FALSE;
+    }    
+  }
+
+  int Nregion = 0;
+  for (i = 0; i < skylist[0].Nregions; i++) {
+
+    // skip tables that are not on this host (if -this-host supplied)
+    if (ThisHost && !HostTableTestHost (regions[i], HOST_ID)) continue;
+
+    if (PARALLEL_LOCAL) {
+      int hostID = (skylist[0].regions[i]->hostFlags & DATA_USE_BCK) ? skylist[0].regions[i]->backupID : skylist[0].regions[i]->hostID;
+      int seq = table->index[hostID];
+      HOSTDIR = table->hosts[seq].pathname;
+    }
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", HOSTDIR, skylist[0].regions[i]->name);
+    char *filename = (HOST_ID || PARALLEL_LOCAL) ? hostfile : skylist[0].filename[i];
+
+    if (ShowAll || (stat (filename, &filestat) != -1)) {
+      if (VERBOSE) gprint (GP_ERR, "%3d %s %6.2f - %6.2f, %6.2f - %6.2f\n", i, regions[i][0].name, 
+			   regions[i][0].Rmin, regions[i][0].Rmax, regions[i][0].Dmin, regions[i][0].Dmax);
+      
+      char name[64];
+      snprintf (name, 64, "region:%d", Nregion);
+      set_str_variable (name, regions[i][0].name);
+      Nregion ++;
+    }
+  }
+  set_int_variable ("region:n", Nregion);
+
+  if (table) free (table);
+  return (TRUE);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/dvo.c.in
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/dvo.c.in	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/dvo.c.in	(revision 34041)
@@ -29,4 +29,5 @@
   set_str_variable ("PROMPT", opihi_prompt);
   set_str_variable ("RCFILE", opihi_rcfile);
+  set_int_variable ("DVO_CLIENT", FALSE);
 
   {
@@ -44,4 +45,9 @@
     free (modules);
   }
+
+  // dvo_client uses the following; they should be NULL for dvo
+  HOST_ID = 0;
+  HOSTDIR = NULL;
+  RESULT_FILE = NULL;
 
   return;
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/dvo_client.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/dvo_client.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/dvo_client.c	(revision 34041)
@@ -0,0 +1,137 @@
+# include "dvoshell.h"
+
+int input PROTO((int, char **));
+
+/* program-dependent initialization */
+void program_init (int *argc, char **argv) {
+  
+  int N;
+
+  /* load the commands used by this implementation */
+  InitBasic ();
+  InitData ();
+  InitAstro ();
+  InitDVO ();
+
+  {
+    char *helpdir;
+    char *modules;
+    static char *datadir = "@DATADIR@";
+    ALLOCATE (helpdir, char, strlen(datadir) + strlen("/help") + 2);
+    sprintf (helpdir, "%s/help", datadir);
+    set_str_variable ("HELPDIR", helpdir);
+    free (helpdir);
+    ALLOCATE (modules, char, strlen(datadir) + strlen("/modules") + 2);
+    sprintf (modules, "%s/modules", datadir);
+    set_str_variable ("MODULES:0", modules);
+    set_int_variable ("MODULES:n", 1);
+    free (modules);
+  }
+
+  set_int_variable ("DVO_CLIENT", TRUE);
+  set_int_variable ("SCRIPT", FALSE);
+
+  // dvo_client should have 2 standard arguments: -hostID and -hostdir
+  HOST_ID = 0;
+  if ((N = get_argument (*argc, argv, "-hostID"))) {
+    remove_argument (N, argc, argv);
+    HOST_ID = atoi (argv[N]);;
+    remove_argument (N, argc, argv);
+  }
+
+  HOSTDIR = NULL;
+  if ((N = get_argument (*argc, argv, "-hostdir"))) {
+    remove_argument (N, argc, argv);
+    HOSTDIR = strcreate (argv[N]);;
+    remove_argument (N, argc, argv);
+  }
+
+  RESULT_FILE = NULL;
+  if ((N = get_argument (*argc, argv, "-result"))) {
+    remove_argument (N, argc, argv);
+    RESULT_FILE = strcreate (argv[N]);;
+    remove_argument (N, argc, argv);
+  }
+
+  // parse -skyregion option (used by most commands)
+  set_skyregion (0.0, 360.0, -90.0, +90.0);
+  if ((N = get_argument (*argc, argv, "-skyregion"))) {
+    if (N + 4 >= *argc) {
+      gprint (GP_ERR, "USAGE: -skyregion (RA) (RA) (DEC) (DEC)\n");
+      exit (1);
+    }
+    remove_argument (N, argc, argv);
+    set_skyregion (atof(argv[N]), atof(argv[N+1]), atof(argv[N+2]), atof(argv[N+3]));
+    remove_argument (N, argc, argv);
+    remove_argument (N, argc, argv);
+    remove_argument (N, argc, argv);
+    remove_argument (N, argc, argv);
+  }    
+
+  // parse -time option
+  if ((N = get_argument (*argc, argv, "-time"))) {
+    if (N + 2 >= *argc) {
+      gprint (GP_ERR, "USAGE: -time (TimeRef) (TimeFormat)\n");
+      exit (1);
+    }
+    remove_argument (N, argc, argv);
+    set_str_variable ("TIMEREF", argv[N]);
+    remove_argument (N, argc, argv);
+    set_str_variable ("TIMEFORMAT", argv[N]);
+    remove_argument (N, argc, argv);
+  }
+
+  return;
+}
+
+// dvo_client should be called like a dvo command;
+int main (int argc, char **argv) {
+  
+  // parse out whatever might be needed up front
+  general_init (&argc, argv);
+  program_init (&argc, argv);
+
+  if (argc < 2) {
+    fprintf (stderr, "USAGE: dvo_client (command) (options)\n");
+    exit (3);
+  }
+
+  int status = input (2, &argv[0]);
+  if (!status) {
+    fprintf (stderr, "WARNING: exit status 2 %d (%s)\n", HOST_ID, HOSTDIR);
+    exit (2);
+  }
+  exit (0);
+
+# if (0)
+  // identiy the comm
+  Command *cmd = MatchCommand (argv[1], TRUE, TRUE);
+  if (cmd == NULL) {
+    fprintf (stderr, "unknown command %s\n", argv[1]);
+    exit (1);
+  }
+
+  // argv[0] is dvo_client; we want to pass in argv[1].. as argv[0]
+  int status = (*cmd[0].func) (argc - 1, argv + 1);
+  if (!status) exit (2);
+  exit (0);
+# endif
+}
+
+/* standard welcome message */
+void welcome () {
+  gprint (GP_ERR, "starting dvo_client...\n");
+}
+
+/* add program-dependent exit functions here */
+void cleanup () {
+  QuitKapa ();
+  ConfigFree ();
+
+  FreeBasic ();
+  FreeData ();
+  FreeAstro ();
+  FreeDVO ();
+  return;
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/dvo_host_utils.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/dvo_host_utils.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/dvo_host_utils.c	(revision 34041)
@@ -0,0 +1,267 @@
+# include "dvoshell.h"
+
+# define DEBUG 0
+# define PARALLEL_MANUAL 0
+# define PARALLEL_SERIAL 0
+# define DVO_MAX_PATH 1024
+
+# define DIE(WHO,MSG) { perror(WHO); myAbort(MSG); }
+
+int HostTableLaunchJobs (HostTable *table, char *basecmd, char *options, int VERBOSE) {
+
+  char uniquer[12];
+  int TIME = time(NULL);
+  int PID = getpid();
+  snprintf (uniquer, 12, "%05d.%05d", PID, TIME % 100000);
+
+  int top_status = TRUE;
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    // need to save the results filename with the uniquer
+    // XXX a bit of a waste (but only 1024 * 60 bytes or so
+    ALLOCATE (table->hosts[i].results, char, DVO_MAX_PATH);
+    snprintf (table->hosts[i].results, DVO_MAX_PATH, "%s/dvo.results.%s.fits", table->hosts[i].pathname, uniquer);
+
+    char commandBase[DVO_MAX_PATH];
+    snprintf (commandBase, DVO_MAX_PATH, "dvo.command.%s.txt", uniquer);
+    char *commandFile = abspath(commandBase, DVO_MAX_PATH);
+
+    FILE *f = fopen (commandFile, "w");
+    fprintf (f, "%s\n", basecmd);
+    if (fflush (f)) DIE("flush", "failed to flush");
+
+    int fd = fileno (f);
+    if (fsync (fd)) DIE("fsync", "failed to fsync");
+
+    if (fclose (f)) DIE("close", "failed to close");
+
+    // force NFS to write the file to disk
+    int state;
+    f = fsetlockfile (commandFile, 0.5, LCK_XCLD, &state);
+    fclearlockfile (commandFile, f, LCK_XCLD, &state);
+
+    char command[1024];
+    snprintf (command, 1024, "dvo_client %s -result %s %s -hostID %d -hostdir %s", commandFile, table->hosts[i].results, options, table->hosts[i].hostID, table->hosts[i].pathname);
+    free (commandFile);
+
+    if (VERBOSE) gprint (GP_ERR, "command: %s\n", command);
+
+    if (PARALLEL_MANUAL) {
+      continue;
+    }
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	gprint (GP_ERR, "ERROR running relphot_client\n");
+	top_status = FALSE;
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	gprint (GP_ERR, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	top_status = FALSE;
+	continue;
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+  return top_status;
+}
+
+// bundle the arguments into a command and pass to dvo_client.  this implementation
+// expects there to be a result file from the clients, and to load this into vectors in
+// the main shell.  'Nelements' is a temp hack : for most commands, the result vectors are
+// concatenated, but for avmatch, the vectors are merged by index into a pre-known
+// length.  this is probably not a solution to a general problem..
+int HostTableParallelOps (int argc, char **argv, char *ResultFile, int Nelements, int VERBOSE) {
+
+  int i;
+
+  // load the list of hosts
+  SkyTable *sky = GetSkyTable();
+  if (!sky) {
+    gprint (GP_ERR, "failed to load sky table for database\n");
+    return FALSE;
+  }
+
+  char *tmppath = GetCATDIR ();
+  if (!tmppath) {
+    gprint (GP_ERR, "failed to get CATDIR for database\n");
+    return FALSE;
+  }
+
+  char *CATDIR = abspath (tmppath, DVO_MAX_PATH);
+  if (!CATDIR) {
+    gprint (GP_ERR, "failed to make an absolute path from %s (too long)\n", tmppath);
+    return FALSE;
+  }
+
+  HostTable *table = HostTableLoad (CATDIR, sky->hosts);
+  if (!table) {
+    gprint (GP_ERR, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+    return FALSE;
+  }    
+
+  // other things I need to append?
+  char *basecmd = paste_args (argc, argv);
+
+  // determine the sky region 
+  double Rmin, Rmax, Dmin, Dmax;
+  get_skyregion (&Rmin, &Rmax, &Dmin, &Dmax);
+
+  // determine time reference and format
+  char *TimeRef = get_variable ("TIMEREF");
+  if (!TimeRef) {
+    gprint (GP_ERR, "failed to find TIMEREF variable\n");
+    return FALSE;
+  }
+
+  char *TimeFormat = get_variable ("TIMEFORMAT");
+  if (!TimeFormat) {
+    gprint (GP_ERR, "failed to find TIMEFORMAT variable\n");
+    return FALSE;
+  }
+
+  char tmp;
+  char *options = NULL;
+  int length = snprintf (&tmp, 0, "-D CATDIR %s -time %s %s -skyregion %f %f %f %f", CATDIR, TimeRef, TimeFormat, Rmin, Rmax, Dmin, Dmax);
+
+  ALLOCATE (options, char, length);
+  snprintf (options, length, "-D CATDIR %s -time %s %s -skyregion %f %f %f %f", CATDIR, TimeRef, TimeFormat, Rmin, Rmax, Dmin, Dmax);
+
+  // launch this command remotely
+  HostTableLaunchJobs (table, basecmd, options, VERBOSE);
+  free (options);
+  free (basecmd);
+
+  if (PARALLEL_MANUAL) {
+    gprint (GP_ERR, "run the relphot_client commands above.  when these are done, hit return\n");
+    getchar();
+  }
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+  }
+
+  // load fields from file
+  int    Nvec = 0;
+  Vector **vec = NULL;
+  for (i = 0; i < table->Nhosts; i++) {
+    if (table->hosts[i].status) continue; 
+
+    int    Ninvec = 0;
+    Vector **invec = ReadVectorTableFITS (table->hosts[i].results, "RESULT", &Ninvec);
+    if (!invec) {
+      // failed to read the file, now what?
+      gprint (GP_ERR, "failed to read remote result file : %s\n", table->hosts[i].results);
+      free (table->hosts[i].results);
+      table->hosts[i].results = NULL;
+      continue;
+    }
+    free (table->hosts[i].results);
+    table->hosts[i].results = NULL;
+
+    if (Nelements == 0) {
+      vec = MergeVectors (vec, &Nvec, invec, Ninvec);
+      if (vec != invec) {
+	FreeVectorArray (invec, Ninvec);
+      }
+    } else {
+      vec = MergeVectorsByIndex (vec, &Nvec, invec, Ninvec, Nelements);
+      FreeVectorArray (invec, Ninvec);
+    }
+  }
+
+  // write vectors to a table (this is used by parallel dvo operations, but can be used elsewhere)
+  if (ResultFile) {
+    int status = WriteVectorTableFITS (ResultFile, "RESULT", vec, Nvec, FALSE, NULL);
+    if (!status) {
+      gprint (GP_ERR, "failed to write result file %s\n", ResultFile);
+      return FALSE;
+    }
+  }
+
+  for (i = 0; i < Nvec; i++) {
+    AssignVector (vec[i], vec[i]->name, ANYVECTOR, TRUE);
+  }
+  free (vec);
+
+  free (table);
+  return TRUE;
+}
+
+// re-gather the remote results files: this can be used in case one of the clients failed,
+// and has since been re-run
+int HostTableReloadResults (char *uniquer, int VERBOSE) {
+
+  int i;
+
+  // load the list of hosts
+  SkyTable *sky = GetSkyTable();
+  if (!sky) {
+    gprint (GP_ERR, "failed to load sky table for database\n");
+    return FALSE;
+  }
+
+  char *CATDIR = GetCATDIR ();
+  if (!CATDIR) {
+    gprint (GP_ERR, "failed to get CATDIR for database\n");
+    return FALSE;
+  }
+
+  HostTable *table = HostTableLoad (CATDIR, sky->hosts);
+  if (!table) {
+    gprint (GP_ERR, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+    return FALSE;
+  }    
+
+  // load fields from file
+  int    Nvec = 0;
+  Vector **vec = NULL;
+  for (i = 0; i < table->Nhosts; i++) {
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    // need to save the results filename with the uniquer
+    // XXX a bit of a waste (but only 1024 * 60 bytes or so
+    ALLOCATE (table->hosts[i].results, char, DVO_MAX_PATH);
+    snprintf (table->hosts[i].results, DVO_MAX_PATH, "%s/dvo.results.%s.fits", table->hosts[i].pathname, uniquer);
+
+    int    Ninvec = 0;
+    Vector **invec = ReadVectorTableFITS (table->hosts[i].results, "RESULT", &Ninvec);
+    if (!invec) {
+      // failed to read the file, now what?
+      gprint (GP_ERR, "failed to read remote result file : %s\n", table->hosts[i].results);
+      free (table->hosts[i].results);
+      table->hosts[i].results = NULL;
+      continue;
+    }
+    free (table->hosts[i].results);
+    table->hosts[i].results = NULL;
+
+    // fprintf (stderr, "%s : %d\n", table->hosts[i].pathname, invec[0]->Nelements);
+
+    vec = MergeVectors (vec, &Nvec, invec, Ninvec);
+    if (vec != invec) {
+      FreeVectorArray (invec, Ninvec);
+    }
+  }
+
+  for (i = 0; i < Nvec; i++) {
+    AssignVector (vec[i], vec[i]->name, ANYVECTOR, TRUE);
+  }
+  free (vec);
+
+  free (table);
+  return TRUE;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/gcat.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/gcat.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/gcat.c	(revision 34041)
@@ -3,5 +3,5 @@
 int gcat (int argc, char **argv) {
   
-  int i;
+  int i, N;
   struct stat filestat;
   double Ra, Dec, Radius;
@@ -10,6 +10,22 @@
   void *Signal;
 
+  int ShowHost = FALSE;
+  if ((N = get_argument (argc, argv, "-host"))) {
+    remove_argument (N, &argc, argv);
+    ShowHost = TRUE;
+  }
+  int ShowBackup = FALSE;
+  if ((N = get_argument (argc, argv, "-backup"))) {
+    remove_argument (N, &argc, argv);
+    ShowBackup = TRUE;
+  }
+  int ShowFlags = FALSE;
+  if ((N = get_argument (argc, argv, "-flags"))) {
+    remove_argument (N, &argc, argv);
+    ShowFlags = TRUE;
+  }
+
   if ((argc != 3) && (argc != 4)) {
-    gprint (GP_ERR, "USAGE: gcat RA DEC [Radius]\n");
+    gprint (GP_ERR, "USAGE: gcat RA DEC [Radius] [-host] [-backup] [-flags]\n");
     return (FALSE);
   }
@@ -31,9 +47,26 @@
 
   for (i = 0; (i < skylist[0].Nregions) && !interrupt; i++) {
+    gprint (GP_ERR, "%3d %s", i, skylist[0].regions[i][0].name);
     if (stat (skylist[0].filename[i], &filestat) != -1) {
-      gprint (GP_ERR, "%3d %s *\n", i, skylist[0].regions[i][0].name);
+      gprint (GP_ERR, " *");
     } else {
-      gprint (GP_ERR, "%3d %s\n", i, skylist[0].regions[i][0].name);
+      gprint (GP_ERR, "  ");
     } 
+    if (ShowHost) {
+      gprint (GP_ERR, "  %3d", skylist[0].regions[i][0].hostID);
+    } else {
+      gprint (GP_ERR, "     ");
+    }
+    if (ShowBackup) {
+      gprint (GP_ERR, "  %3d", skylist[0].regions[i][0].backupID);
+    } else {
+      gprint (GP_ERR, "     ");
+    }
+    if (ShowFlags) {
+      gprint (GP_ERR, "  0x%04x", skylist[0].regions[i][0].hostFlags);
+    } else {
+      gprint (GP_ERR, "        ");
+    }
+    gprint (GP_ERR, "\n");
     set_str_variable ("CATNAME", skylist[0].filename[i]);
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/gstar.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/gstar.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/gstar.c	(revision 34041)
@@ -68,4 +68,10 @@
   }
 
+  int PARALLEL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel"))) {
+    remove_argument (N, &argc, argv);
+    PARALLEL = TRUE;
+  }
+
   if (argc != 4) {
     gprint (GP_ERR, "USAGE: gstar RA DEC Radius [-m]\n");
@@ -89,7 +95,27 @@
   }
 
+  HostTable *table = NULL;  
+  if (PARALLEL) {
+    char *CATDIR = GetCATDIR();
+    table = HostTableLoad (CATDIR, sky->hosts);
+    if (!table) {
+      gprint (GP_ERR, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+      return FALSE;
+    }    
+
+    SkyRegion *region = skylist[0].regions[0];
+    int hostID = (region->hostFlags & DATA_USE_BCK) ? region->backupID : region->hostID;
+    int index = table->index[hostID];
+    
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", table->hosts[index].pathname, region->name);
+    catalog.filename = hostfile;
+  } else {
+    catalog.filename = skylist[0].filename[0];
+  }
+
   /* lock, load, unlock catalog */
-  catalog.filename = skylist[0].filename[0];
-  catalog.catflags = GetMeasures ? LOAD_AVES | LOAD_MEAS | LOAD_SECF : LOAD_AVES | LOAD_SECF;
+  catalog.catflags = LOAD_AVES | LOAD_SECF;
+  catalog.catflags |= GetMeasures ? LOAD_MEAS : SKIP_MEAS;
   catalog.Nsecfilt = 0;
 
@@ -177,5 +203,13 @@
 	    gprint (GP_LOG, "%f ",     catalog.average[k].duD);
 	    gprint (GP_LOG, "%f ",     catalog.average[k].P);
-	    gprint (GP_LOG, "%f ",     catalog.average[k].dP);
+	    gprint (GP_LOG, "%f   ",     catalog.average[k].dP);
+
+	    gprint (GP_LOG, "%f   ",     catalog.average[k].ChiSqAve);
+	    gprint (GP_LOG, "%f   ",     catalog.average[k].ChiSqPM);
+	    gprint (GP_LOG, "%f   ",     catalog.average[k].ChiSqPar);
+
+	    date = ohana_sec_to_date (catalog.average[k].Tmean);
+	    gprint (GP_LOG, "%20s ",     date);
+	    gprint (GP_LOG, "%f   ",     catalog.average[k].Trange / 86400.0);
 	}
 
@@ -197,6 +231,24 @@
 	for (j = 0; j < Nsecfilt; j++) printPhotcodeSequence (&catalog.average[k], &catalog.secfilt[Nsecfilt*k], j, 2);
 	gprint (GP_LOG, "\n");
-      }
-
+
+	if (FULL_OUTPUT) {
+	  /* Map */
+	  for (j = 0; j < Nsecfilt; j++) printPhotcodeSequence (&catalog.average[k], &catalog.secfilt[Nsecfilt*k], j, 5);
+	  gprint (GP_LOG, "\n");
+
+	  /* M_20 */
+	  for (j = 0; j < Nsecfilt; j++) printPhotcodeSequence (&catalog.average[k], &catalog.secfilt[Nsecfilt*k], j, 6);
+	  gprint (GP_LOG, "\n");
+
+	  /* M_80 */
+	  for (j = 0; j < Nsecfilt; j++) printPhotcodeSequence (&catalog.average[k], &catalog.secfilt[Nsecfilt*k], j, 7);
+	  gprint (GP_LOG, "\n");
+
+	  /* secfilt flags */
+	  for (j = 0; j < Nsecfilt; j++) printPhotcodeSequence (&catalog.average[k], &catalog.secfilt[Nsecfilt*k], j, 4);
+	  gprint (GP_LOG, "\n");
+
+	}
+      }
       if (GetMeasures || SaveVectors) {
 	m = catalog.average[k].measureOffset;
@@ -218,6 +270,6 @@
 	    gprint (GP_LOG, "%7.4f ",  catalog.measure[m].dR);
 	    gprint (GP_LOG, "%7.4f ",  catalog.measure[m].dD);
-	    gprint (GP_LOG, "%4x ",    catalog.measure[m].photFlags);
-	    gprint (GP_LOG, "%3x ",    catalog.measure[m].dbFlags);
+	    gprint (GP_LOG, "0x%08x ", catalog.measure[m].photFlags);
+	    gprint (GP_LOG, "0x%08x ", catalog.measure[m].dbFlags);
 	    gprint (GP_LOG, "%5d ",    catalog.measure[m].photcode);
 	    gprint (GP_LOG, "%-20s ",  GetPhotcodeNamebyCode (catalog.measure[m].photcode));
@@ -226,23 +278,23 @@
 
 	    if (FULL_OUTPUT) {
-		gprint (GP_LOG, "%f ", catalog.measure[m].Mcal);
-		gprint (GP_LOG, "%f ", catalog.measure[m].Map);
-		gprint (GP_LOG, "%f ", pow(10.0, 0.4*catalog.measure[m].dt));
-		gprint (GP_LOG, "%f ", 1.0 + catalog.measure[m].airmass);
-		gprint (GP_LOG, "%f ", catalog.measure[m].az);
-		gprint (GP_LOG, "%f ", catalog.measure[m].Xccd);
-		gprint (GP_LOG, "%f ", catalog.measure[m].Yccd);
-		gprint (GP_LOG, "%f ", FromShortPixels(catalog.measure[m].dXccd));
-		gprint (GP_LOG, "%f ", FromShortPixels(catalog.measure[m].dYccd));
-		gprint (GP_LOG, "%f ", catalog.measure[m].Sky);
-		gprint (GP_LOG, "%f ", catalog.measure[m].dSky);
-		gprint (GP_LOG, "%d ", catalog.measure[m].averef);
-		gprint (GP_LOG, "%d ", catalog.measure[m].detID);
-		gprint (GP_LOG, "%d ", catalog.measure[m].imageID);
-		gprint (GP_LOG, "%f ", catalog.measure[m].psfQual);
-		gprint (GP_LOG, "%f ", catalog.measure[m].psfChisq);
-		gprint (GP_LOG, "%f ", catalog.measure[m].crNsigma);
-		gprint (GP_LOG, "%f ", catalog.measure[m].extNsigma);
-		gprint (GP_LOG, "%f ", FromShortDegrees(catalog.measure[m].theta));
+		gprint (GP_LOG, "%6.3f ", catalog.measure[m].Mcal);
+		gprint (GP_LOG, "%6.3f ", catalog.measure[m].Map);
+		gprint (GP_LOG, "%5.1f ", pow(10.0, 0.4*catalog.measure[m].dt));
+		gprint (GP_LOG, "%5.3f ", catalog.measure[m].airmass);
+		gprint (GP_LOG, "%6.1f ", catalog.measure[m].az);
+		gprint (GP_LOG, "%6.1f ", catalog.measure[m].Xccd);
+		gprint (GP_LOG, "%6.1f ", catalog.measure[m].Yccd);
+		gprint (GP_LOG, "%3.1f ", FromShortPixels(catalog.measure[m].dXccd));
+		gprint (GP_LOG, "%3.1f ", FromShortPixels(catalog.measure[m].dYccd));
+		gprint (GP_LOG, "%6.1f ", catalog.measure[m].Sky);
+		gprint (GP_LOG, "%5.1f ", catalog.measure[m].dSky);
+		gprint (GP_LOG, "%8d ", catalog.measure[m].averef);
+		gprint (GP_LOG, "0x%08x ", catalog.measure[m].detID);
+		gprint (GP_LOG, "0x%08x ", catalog.measure[m].imageID);
+		gprint (GP_LOG, "%.3f ", catalog.measure[m].psfQual);
+		gprint (GP_LOG, "%.1f ", catalog.measure[m].psfChisq);
+		gprint (GP_LOG, "%.1f ", catalog.measure[m].crNsigma);
+		gprint (GP_LOG, "%.1f ", catalog.measure[m].extNsigma);
+		gprint (GP_LOG, "%.1f ", FromShortDegrees(catalog.measure[m].theta));
 	    }
 	    gprint (GP_LOG, "\n");
@@ -295,14 +347,14 @@
 void print_double (double value) {
   if (isnan(value)) 
-    gprint (GP_LOG, "NaN    ");
+    gprint (GP_LOG, "  NaN    ");
   else 
-    gprint (GP_LOG, "%6.3f ", value);
+    gprint (GP_LOG, "  %6.3f ", value);
 }
 
 void print_short (double value, short int ival) {
   if (ival == NAN_S_SHORT) 
-    gprint (GP_LOG, "NaN    ");
+    gprint (GP_LOG, "  NaN    ");
   else 
-    gprint (GP_LOG, "%6.3f ", value);
+    gprint (GP_LOG, "  %6.3f ", value);
 }
 
@@ -370,6 +422,39 @@
     case 3: /* filter names */
       code = GetPhotcodebyNsec (seq);
-      gprint (GP_LOG, "%-6s ", code[0].name);
-      break;
-  }
-}
+      gprint (GP_LOG, "  %-6s ", code[0].name);
+      break;
+
+    case 4: /* secfilt flags */
+      if (seq == -1) {
+	gprint (GP_LOG, "%08x ", 0);
+      } else {
+	gprint (GP_LOG, "%08x ", secfilt[seq].flags);
+      }
+      break;
+
+    case 5: /* average ap mags */
+      if (seq == -1) {
+	print_double (NAN);
+      } else {
+	print_double (secfilt[seq].Map);
+      }
+      break;
+
+    case 6: /* average ap mags */
+      if (seq == -1) {
+	print_double (NAN);
+      } else {
+	print_short (0.001*secfilt[seq].M_20, secfilt[seq].M_20);
+      }
+      break;
+
+    case 7: /* average ap mags */
+      if (seq == -1) {
+	print_double (NAN);
+      } else {
+	print_short (0.001*secfilt[seq].M_20, secfilt[seq].M_80);
+      }
+      break;
+
+  }
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/hosts.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/hosts.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/hosts.c	(revision 34041)
@@ -0,0 +1,103 @@
+# include "dvoshell.h"
+# include <glob.h>
+# define DVO_MAX_PATH 1024
+
+// functions to manage the remote hosts
+int hosts (int argc, char **argv) {
+  
+  if (argc < 2) {
+    gprint (GP_ERR, "USAGE: hosts (command) [options]\n");
+    gprint (GP_ERR, "  commands:\n");
+    gprint (GP_ERR, "    purge-temp : delete all tempfiles for this shell\n");
+    return FALSE;
+  }
+
+  if (!strncmp(argv[1], "purge-temp", MAX(strlen(argv[1]), 3))) {
+    glob_t pglob;
+    int PID = getpid();
+    int N;
+    if ((N = get_argument (argc, argv, "-old-pid"))) {
+      remove_argument (N, &argc, argv);
+      PID = atoi(argv[N]);
+      remove_argument (N, &argc, argv);
+    }
+    
+    int VERBOSE = FALSE;
+    if ((N = get_argument (argc, argv, "-v"))) {
+      remove_argument (N, &argc, argv);
+      VERBOSE = TRUE;
+    }
+    if ((N = get_argument (argc, argv, "-verbose"))) {
+      remove_argument (N, &argc, argv);
+      VERBOSE = TRUE;
+    }
+    
+    int DRYRUN = TRUE;
+    if ((N = get_argument (argc, argv, "-commit"))) {
+      remove_argument (N, &argc, argv);
+      DRYRUN = FALSE;
+    }
+    
+    // XXX wrap this up in a function:
+    char *CATDIR = GetCATDIR();
+    if (!CATDIR) {
+      gprint (GP_ERR, "CATDIR is not set\n");
+      return FALSE;
+    }
+    SkyTable *sky = GetSkyTable();
+    if (!sky) {
+      gprint (GP_ERR, "failed to load sky table for database\n");
+      return FALSE;
+    }
+    HostTable *table = HostTableLoad (CATDIR, sky->hosts);
+    if (!table) {
+      gprint (GP_ERR, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+      return FALSE;
+    }    
+    
+    int i;
+    for (i = 0; i < table->Nhosts; i++) {
+      pglob.gl_offs = 0;
+      char name[DVO_MAX_PATH];
+      snprintf (name, DVO_MAX_PATH, "%s/dvo.results.%05d.*.fits", table->hosts[i].pathname, PID);
+      if (VERBOSE) gprint (GP_ERR, "checking %s\n", name);
+      glob (name, 0, NULL, &pglob);
+      int j;
+      for (j = 0; j < pglob.gl_pathc; j++) {
+	if (VERBOSE) gprint (GP_ERR, "unlink %s\n", pglob.gl_pathv[j]);
+	if (!DRYRUN) unlink (pglob.gl_pathv[j]);
+      }
+      globfree (&pglob);
+    }
+    return TRUE;
+  }
+
+  if (!strncmp(argv[1], "get.results", MAX(strlen(argv[1]), 3))) {
+    int N;
+
+    char *varname = NULL;
+    if ((N = get_argument (argc, argv, "-var"))) {
+      remove_argument (N, &argc, argv);
+      varname = strcreate(argv[N]);
+      remove_argument (N, &argc, argv);
+    }
+
+    if (argc < 2) {
+      gprint (GP_ERR, "USAGE: hosts get.results [-var var]\n");
+      return FALSE;
+    }
+
+    if (varname) {
+      set_str_variable (varname, RESULT_FILE);
+      free (varname);
+    } else {
+      gprint (GP_LOG, "results: %s\n", RESULT_FILE);
+    }
+    return TRUE; 
+  }
+
+  
+
+  gprint (GP_ERR, "error: unknown hosts command %s\n", argv[1]);
+  return FALSE;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/init.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/init.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/init.c	(revision 34041)
@@ -23,8 +23,10 @@
 int fitsed          PROTO((int, char **));
 int gcat            PROTO((int, char **));
+int catlist         PROTO((int, char **));
 int getxtra         PROTO((int, char **));
 int gimages         PROTO((int, char **));
 int gstar           PROTO((int, char **));
 int gtypes          PROTO((int, char **));
+int hosts           PROTO((int, char **));
 int images          PROTO((int, char **));
 int imbox           PROTO((int, char **));
@@ -47,4 +49,5 @@
 int paverage        PROTO((int, char **));
 int procks          PROTO((int, char **));
+int remote          PROTO((int, char **));
 int showtile        PROTO((int, char **));
 int skycat          PROTO((int, char **));
@@ -77,6 +80,8 @@
   {1, "fitsed",      fitsed,       "fit stellar SEDs to objects"},
   {1, "gcat",        gcat,         "get catalog at location"},
+  {1, "catlist",     catlist,      "get list of catalogs for region / host"},
   {1, "gimages",     gimages,      "get images at location"},
   {1, "gstar",       gstar,        "get star statistics"},
+  {1, "hosts",       hosts,        "remote host support functions"},
   {1, "images",      images,       "plot image boxes"},
   {1, "imbox",       imbox,        "plot expected image box"},
@@ -99,4 +104,5 @@
   {1, "paverage",    paverage,     "plot average magnitude"},
   {1, "procks",      procks,       "plot rocks"},
+  {1, "remote",      remote,       "generic remote dvo client operation"},
   {1, "showtile",    showtile,     "plot tile pattern"},
   {1, "skycat",      skycat,       "show sky catalog boundaries"},
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/mextract.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/mextract.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/mextract.c	(revision 34041)
@@ -25,4 +25,5 @@
   selection = NULL;
 
+  // fprintf (stderr, "start...");
   if ((N = get_argument (argc, argv, "-h"))) goto help;
   if ((N = get_argument (argc, argv, "--help"))) goto help;
@@ -34,4 +35,20 @@
   }
 
+  int PARALLEL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel"))) {
+    remove_argument (N, &argc, argv);
+    PARALLEL = TRUE;
+  }
+
+  // this is used to NOT save the results in the results file
+  // use this option when mextract is used in a script which does its
+  // own job of packaging the results
+  int SKIP_RESULTS = FALSE;
+  if ((N = get_argument (argc, argv, "-skip-results"))) {
+    remove_argument (N, &argc, argv);
+    SKIP_RESULTS = TRUE;
+  }
+
+  // init here so free in 'escape' block does not crash
   dvo_catalog_init (&catalog, TRUE);
 
@@ -40,11 +57,16 @@
   Nsecfilt = GetPhotcodeNsecfilt ();
   
+  // parse skyregion options.  NOTE: this is stripped off in parallel operation and always
+  // defined for the client via the -skyregion option.  The dvo_client parses this
+  // argument in the main program, before it is passed to the command (like mextract)
+  if ((selection = SetRegionSelection (&argc, argv)) == NULL) {
+    print_error();
+    goto escape;
+  }
+
   // init locally static variables (time refs)
   dbExtractMeasuresInit();
 
-  // parse skyregion options
-  if ((selection = SetRegionSelection (&argc, argv)) == NULL) goto escape;
-
-  // command-line is of the form: avextract field,field, field [where (field op value)...]
+  // command-line is of the form: mextract field,field, field [where (field op value)...]
 
   // parse the fields to be extracted and returned
@@ -84,13 +106,31 @@
   if ((skylist = SelectRegions (selection)) == NULL) goto escape;
 
+  // this does all the work of re-packaging the command, calling it on the remote machines, then loading in the results
+  if (PARALLEL && !HOST_ID) {
+    int status = HostTableParallelOps (argc, argv, RESULT_FILE, 0, VERBOSE);
+
+    dbFreeFields (fields, Nfields);
+    dbFreeStack (stack, Nstack);
+    free (stack);
+    FreeSkyRegionSelection (selection);
+    dvo_catalog_free (&catalog);
+
+    return status;
+  }
+
   // load image data if needed (for fields listed below)
   loadImages = FALSE;
   mosaicMode = FALSE;
   for (i = 0; !loadImages && (i < Nfields); i++) {
-    if (fields[i].ID == MEAS_XCCD) loadImages = TRUE;   // Are these still needed? Xccd and Yccd are in measurement
-    if (fields[i].ID == MEAS_YCCD) loadImages = TRUE;   // and dbExtractMeasures doesn't look at the image for these
-    if (fields[i].ID == MEAS_XMOSAIC) loadImages = mosaicMode = TRUE;
-    if (fields[i].ID == MEAS_YMOSAIC) loadImages = mosaicMode = TRUE;
+    if (!MEASURE_HAS_XCCD) {
+      // I'm keeping this code because it gives a way of handling dvo dbs that don't have
+      // measure.xccd if we need it
+      if (fields[i].ID == MEAS_XCCD) loadImages = TRUE;
+      if (fields[i].ID == MEAS_YCCD) loadImages = TRUE;
+    }
+    if (fields[i].ID == MEAS_XMOSAIC) 	loadImages = mosaicMode = TRUE;
+    if (fields[i].ID == MEAS_YMOSAIC) 	loadImages = mosaicMode = TRUE;
     if (fields[i].ID == MEAS_EXTERN_ID) loadImages = mosaicMode = TRUE;
+    if (fields[i].ID == MEAS_FLAT)      loadImages = mosaicMode = TRUE;
   }
   if (loadImages && !SetImageSelection (mosaicMode, selection)) goto escape;
@@ -115,7 +155,15 @@
   interrupt = FALSE;
 
+  // fprintf (stderr, "done setup...");
+
   for (i = 0; (i < skylist[0].Nregions) && !interrupt; i++) {
+
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], HOST_ID)) continue;
+
     /* lock, load, unlock catalog */
-    catalog.filename = skylist[0].filename[i];
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", HOSTDIR, skylist[0].regions[i]->name);
+    catalog.filename = HOST_ID ? hostfile : skylist[0].filename[i];
     catalog.catflags = LOAD_AVES | LOAD_MEAS | LOAD_SECF;
     catalog.Nsecfilt = Nsecfilt;
@@ -126,5 +174,5 @@
     if (!dvo_catalog_open (&catalog, NULL, FALSE, "r")) {
       gprint (GP_ERR, "ERROR: failure to open catalog file %s\n", catalog.filename);
-      exit (2);
+      return FALSE;
     }
     dvo_catalog_unlock (&catalog);
@@ -132,12 +180,23 @@
     /* XXX need to call dvo_catalog_chipcoords here passing the loaded images */
 
+    // fprintf (stderr, "done read...");
+
     for (j = 0; (j < catalog.Naverage) && !interrupt; j++) {
       m = catalog.average[j].measureOffset;
-      dbExtractMeasuresInitAve (); // reset counters for saved fields 
+      if (m > catalog.Nmeasure) {
+	gprint (GP_ERR, "ERROR: inconsistent average->measure offset.  Unsorted database?\n");
+	goto escape;
+      }
+
+      dbExtractMeasuresInitAve (); // reset counters for saved fields (costs very little)
 
       for (k = 0; (k < catalog.average[j].Nmeasure); k++, m++) {
+	if (catalog.measure[m].averef != j) {
+	  gprint (GP_ERR, "ERROR: inconsistent measure->average link.  Unsorted database?\n");
+	  goto escape;
+	}
 
 	// extract the relevant values for this measurement
-	dbExtractMeasuresInitMeas (); // reset counters for saved fields 
+	dbExtractMeasuresInitMeas (); // reset counters for saved fields  (costs very little
 	for (n = 0; n < Nfields; n++) {
 	  values[n] = dbExtractMeasures (&catalog.average[j], &catalog.secfilt[j*Nsecfilt], &catalog.measure[m], &fields[n]);
@@ -173,6 +232,14 @@
   interrupt = FALSE;
 
+  // fprintf (stderr, "done load...");
+
   for (n = 0; n < Nreturn; n++) {
-    ResetVector (vec[n], fields[n].type, MAX(1,Npts));
+    ResetVector (vec[n], fields[n].type, Npts);
+  }
+
+  // write vectors to a table (this is used by parallel dvo operations, but can be used elsewhere)
+  if (RESULT_FILE && !SKIP_RESULTS) {
+    int status = WriteVectorTableFITS (RESULT_FILE, "RESULT", vec, Nreturn, FALSE, NULL);
+    if (!status) goto escape;
   }
 
@@ -185,4 +252,6 @@
   SkyListFree (skylist);
   FreeSkyRegionSelection (selection);
+
+  // fprintf (stderr, "done extr...\n");
   return (TRUE);
 
@@ -307,4 +376,7 @@
     gprint (GP_ERR, "  imageID : ID of source image (32 bit)\n");
     gprint (GP_ERR, "  externID : externID of source image (32 bit)\n");
+
+    gprint (GP_ERR, "  Mcal_offset : difference wrt nominal zero point (clouds are positive)\n");
+    gprint (GP_ERR, "  flat : flat-field correction (measure.Mcal - image.Mcal)\n");
     return (FALSE);
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/region_list.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/region_list.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/region_list.c	(revision 34041)
@@ -113,5 +113,5 @@
   /* check for Region selection from display */
   if ((N = get_argument (*argc, argv, "-skyregion"))) {
-    if (N + 5 >= *argc) {
+    if (N + 4 >= *argc) {
       gprint (GP_ERR, "USAGE: -skyregion (RA) (RA) (DEC) (DEC)\n");
       FreeSkyRegionSelection (selection);
@@ -134,4 +134,47 @@
 
 /* given possible options (by name, by list, by graph region), select SkyRegions */
+int SetSkyRegions (SkyRegionSelection *selection) {
+
+  if (selection->name != NULL) {
+    gprint (GP_ERR, "name-based selection not yet implemented (in parallel mode)\n");
+    return FALSE;
+  } 
+
+  if (selection->list != NULL) {
+    gprint (GP_ERR, "list-based selection not yet implemented (in parallel mode)\n");
+    return FALSE;
+  } 
+
+  if (selection->useDisplay) {
+    double Rmin, Rmax, Dmin, Dmax, Radius;
+    Graphdata graphsky;
+
+    if (!GetGraphdata (&graphsky, NULL, NULL)) {
+      gprint (GP_ERR, "region display not available\n");
+      return FALSE;
+    }
+    Radius = MAX (fabs(graphsky.xmax), fabs(graphsky.ymax));
+    Dmin = graphsky.coords.crval2 - Radius;
+    Dmax = graphsky.coords.crval2 + Radius;
+    
+    if ((Dmin <= -89) || (Dmax >= 89)) {
+      Rmin = 0;
+      Rmax = 360;
+    } else {
+      double Rmod = MAX (Radius / (cos(Dmin*RAD_DEG)), Radius / (cos(Dmax*RAD_DEG)));
+      Rmin = graphsky.coords.crval1 - Rmod;
+      Rmax = graphsky.coords.crval1 + Rmod;
+    }
+
+    set_skyregion (Rmin, Rmax, Dmin, Dmax);
+    return TRUE;
+  }
+  if (selection->useSkyregion) {
+    return TRUE;
+  }
+  return FALSE;
+}
+
+/* given possible options (by name, by list, by graph region), select SkyRegions */
 SkyList *SelectRegions (SkyRegionSelection *selection) {
 
@@ -140,16 +183,5 @@
   /* determine region-file names */
   if (selection->name != NULL) {
-    char filename[256];
-    char *CATDIR = dvo_get_catdir();
-
-    ALLOCATE (skylist, SkyList, 1);
-    ALLOCATE (skylist[0].regions, SkyRegion *, 1);
-    ALLOCATE (skylist[0].regions[0], SkyRegion, 1);
-    ALLOCATE (skylist[0].filename, char *, 1);
-    skylist[0].ownElements = TRUE; // free these elements when freeing the list
-    
-    strcpy (skylist[0].regions[0][0].name, selection->name);
-    sprintf (filename, "%s/%s.cpt", CATDIR, selection->name);
-    skylist[0].filename[0] = strcreate (filename);
+    skylist = SkyListByName (sky, selection->name);
     return (skylist);
   } 
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/remote.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/remote.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/remote.c	(revision 34041)
@@ -0,0 +1,47 @@
+# include "dvoshell.h"
+# include <glob.h>
+# define DVO_MAX_PATH 1024
+
+// functions to manage the remote hosts
+int remote (int argc, char **argv) {
+  
+  int N;
+
+  int VERBOSE = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    remove_argument (N, &argc, argv);
+    VERBOSE = TRUE;
+  }
+
+  if (argc < 2) {
+    gprint (GP_ERR, "USAGE: remote (command)\n");
+    gprint (GP_ERR, "  launch (command) on the parallel hosts\n");
+    gprint (GP_ERR, "  options:\n");
+    gprint (GP_ERR, "  -v : verbose mode:\n");
+    gprint (GP_ERR, "OR:    remote -reload (uniquer)\n");
+    return FALSE;
+  }
+
+  // we can call any command remotely, but the collection of macros will
+  // not automatically be passed along.  if we want to run a specific macro,
+  // need to point at the relevant input file and have that get loaded
+
+  // if we specified a remote result file, the function above assumes that this is a FITS table
+  // with a set of vectors to load.
+
+  if ((N = get_argument (argc, argv, "-reload"))) {
+    remove_argument (N, &argc, argv);
+    if (argc != 2) {
+      gprint (GP_ERR, "USAGE: remote -reload (uniquer)\n");
+      gprint (GP_ERR, " (uniquer) is the element in the middle of the results file\n");
+      gprint (GP_ERR, " eg: dvo.results.XXXXX.YYYYY.fits\n");
+      return FALSE;
+    }
+    int status = HostTableReloadResults (argv[1], VERBOSE);
+    return status;
+  }
+
+  // strip of the 'remote' and send the remaining arguments to the remote machine
+  int status = HostTableParallelOps (argc - 1, &argv[1], NULL, 0, VERBOSE);
+  return status;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/skycoverage.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/skycoverage.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/skycoverage.c	(revision 34041)
@@ -1,9 +1,12 @@
 # include "dvoshell.h"
 
+// enum to define possible modes
+enum {COVERAGE, DENSITY, MIN_UBERCAL, MIN_DMAG_SYS, MIN_MCAL, MAX_MCAL, MIN_TIME, MAX_TIME};
+
 int wordhash (char *word);
 
 int skycoverage (int argc, char **argv) {
 
-  int WITH_MOSAIC, SOLO_MOSAIC, ShowDensity;
+  int WITH_MOSAIC, SOLO_MOSAIC, mode;
   off_t i, Nimage;
   int N, status, TimeSelect, ByName, xs, ys;
@@ -20,4 +23,9 @@
   PhotCode *PhotcodeValue;
 
+  time_t TimeReference;
+  int TimeFormat;
+
+  GetTimeFormat (&TimeReference, &TimeFormat);
+
   WITH_MOSAIC = FALSE;
   if ((N = get_argument (argc, argv, "+mosaic"))) {
@@ -60,8 +68,32 @@
   }
 
-  ShowDensity = FALSE;
+  mode = COVERAGE;
   if ((N = get_argument (argc, argv, "-density"))) {
     remove_argument (N, &argc, argv);
-    ShowDensity = TRUE;
+    mode = DENSITY;
+  }
+  if ((N = get_argument (argc, argv, "-min-ubercal"))) {
+    remove_argument (N, &argc, argv);
+    mode = MIN_UBERCAL;
+  }
+  if ((N = get_argument (argc, argv, "-min-time"))) {
+    remove_argument (N, &argc, argv);
+    mode = MIN_TIME;
+  }
+  if ((N = get_argument (argc, argv, "-max-time"))) {
+    remove_argument (N, &argc, argv);
+    mode = MAX_TIME;
+  }
+  if ((N = get_argument (argc, argv, "-min-dmag-sys"))) {
+    remove_argument (N, &argc, argv);
+    mode = MIN_DMAG_SYS;
+  }
+  if ((N = get_argument (argc, argv, "-min-mcal"))) {
+    remove_argument (N, &argc, argv);
+    mode = MIN_MCAL;
+  }
+  if ((N = get_argument (argc, argv, "-max-mcal"))) {
+    remove_argument (N, &argc, argv);
+    mode = MAX_MCAL;
   }
 
@@ -194,4 +226,5 @@
   V = (float *)buf[0].matrix.buffer;
 
+  // init the V array (depends on mode)
   for (ys = 0; ys < Ny; ys++) {
     for (xs = 0; xs < Nx; xs++) {
@@ -199,8 +232,39 @@
       status &= (r >= 0);
       status &= (r <= 360);
+      // are we in a part of the projection covering the sky or not?
       if (status) {
-	V[ys*Nx + xs] = ShowDensity ?  0 : 2;
+	switch (mode) {
+	  case COVERAGE:
+	    V[ys*Nx + xs] = 2;
+	    break;
+	  case DENSITY:
+	    V[ys*Nx + xs] = 0;
+	    break;
+	  case MIN_UBERCAL:
+	  case MIN_DMAG_SYS:
+	  case MIN_MCAL:
+	  case MIN_TIME:
+	    V[ys*Nx + xs] = 1E9;
+	    break;
+	  case MAX_MCAL:
+	  case MAX_TIME:
+	    V[ys*Nx + xs] = -1E9;
+	    break;
+	}
       } else {
-	V[ys*Nx + xs] = ShowDensity ? NAN : 0;
+	switch (mode) {
+	  case COVERAGE:
+	    V[ys*Nx + xs] = 0;
+	    break;
+	  case DENSITY:
+	  case MIN_UBERCAL:
+	  case MIN_DMAG_SYS:
+	  case MIN_MCAL:
+	  case MAX_MCAL:
+	  case MIN_TIME:
+	  case MAX_TIME:
+	    V[ys*Nx + xs] = NAN;
+	    break;
+	}
       }
     }
@@ -257,8 +321,31 @@
 	  xs = (int)Xs;
 	  ys = (int)Ys;
-	  if (ShowDensity) {
+	  switch (mode) {
+	    case COVERAGE:
+	      V[ys*Nx + xs] = 1;
+	      break;
+	    case DENSITY:
 	      V[ys*Nx + xs] += 1;
-	  } else {
-	      V[ys*Nx + xs] = 1;
+	      break;
+	    case MIN_UBERCAL:
+	      V[ys*Nx + xs] = MIN(V[ys*Nx + xs], image[i].ubercalDist);
+	      break;
+	    case MIN_DMAG_SYS:
+	      V[ys*Nx + xs] = MIN(V[ys*Nx + xs], image[i].dMagSys);
+	      break;
+	    case MIN_MCAL:
+	      V[ys*Nx + xs] = MIN(V[ys*Nx + xs], image[i].Mcal);
+	      break;
+	    case MAX_MCAL:
+	      V[ys*Nx + xs] = MAX(V[ys*Nx + xs], image[i].Mcal);
+	      break;
+	    case MIN_TIME: {
+	      double timeVal = TimeValue (image[i].tzero, TimeReference, TimeFormat);
+	      V[ys*Nx + xs] = MIN(V[ys*Nx + xs], timeVal);
+	      break; }
+	    case MAX_TIME: {
+	      double timeVal = TimeValue (image[i].tzero, TimeReference, TimeFormat);
+	      V[ys*Nx + xs] = MAX(V[ys*Nx + xs], timeVal);
+	      break; }
 	  }
 	}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/skyregion.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/skyregion.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/dvo/skyregion.c	(revision 34041)
@@ -1,21 +1,31 @@
 # include "dvoshell.h"
-
-#ifdef NO_MOVED_TO_DVO
-static double RAs = 0.0;
-static double RAe = 0.0;
-static double DECs = 0.0;
-static double DECe = 0.0;
-#endif
 
 // define the sky region for which extractions are limited
 int skyregion (int argc, char **argv) {
   
+  int N;
+
+  // dvo_client should have 2 standard arguments: -hostID and -hostdir
+  int SaveRegion = FALSE;
+  if ((N = get_argument (argc, argv, "-save"))) {
+    remove_argument (N, &argc, argv);
+    SaveRegion = TRUE;
+  }
+
   if (argc == 1) {
-    double RAs, RAe, DECs, DECe;
-    get_skyregion(&RAs, &RAe, &DECs, &DECe);
+    double Rmin, Rmax, Dmin, Dmax;
+    get_skyregion(&Rmin, &Rmax, &Dmin, &Dmax);
 
-    gprint (GP_ERR, "current skyregion: %f - %f : %f - %f\n", RAs, RAe, DECs, DECe);
-    gprint (GP_ERR, "USAGE:  skyregion (min RA) (max RA) (min DEC) (max DEC)\n");
-    return (FALSE);
+    if (SaveRegion) {
+      set_variable ("Rmin", Rmin);
+      set_variable ("Rmax", Rmax);
+      set_variable ("Dmin", Dmin);
+      set_variable ("Dmax", Dmax);
+      return TRUE;
+    } else {
+      gprint (GP_ERR, "current skyregion: %f - %f : %f - %f\n", Rmin, Rmax, Dmin, Dmax);
+      gprint (GP_ERR, "USAGE:  skyregion (min RA) (max RA) (min DEC) (max DEC)\n");
+      return FALSE;
+    }
   }
 
@@ -29,25 +39,4 @@
   return (TRUE);
 }
-#ifdef NOT_MOVED_TO_LIBDVO
-int get_skyregion (double *Rs, double *Re, double *Ds, double *De) {
-
-  *Rs = RAs;
-  *Re = RAe;
-  *Ds = DECs;
-  *De = DECe;
-
-  return TRUE;
-}
-
-int set_skyregion (double Rs, double Re, double Ds, double De) {
-
-  RAs  = Rs;
-  RAe  = Re;
-  DECs = Ds;
-  DECe = De;
-
-  return TRUE;
-}
-#endif
 
 /* find region which overlaps c at given depth (-1 : populated ) */
@@ -107,4 +96,6 @@
   ALLOCATE (new[0].regions,  SkyRegion *, 1);
   ALLOCATE (new[0].filename,  char *, 1);
+  new[0].Nregions = 0;
+  new[0].ownElements = FALSE; // this list is only holding a view to the elements
 
   // output list
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/include/dvomath.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/include/dvomath.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/include/dvomath.h	(revision 34041)
@@ -111,6 +111,8 @@
 
 /* vector handling */
+void          InitVectors           PROTO((void));
+void          FreeVectors           PROTO((void));
 Vector       *InitVector            PROTO((void));
-void          InitVectors           PROTO((void));
+void          FreeVectorArray       PROTO((Vector **vec, int Nvec));
 int           CopyVector            PROTO((Vector *out, Vector *in));
 int           ResetVector           PROTO((Vector *vec, char type, int Nelements));
@@ -126,5 +128,13 @@
 int           IsVectorPtr           PROTO((Vector *vec));
 int           ListVectors           PROTO((void));
+int           ListVectorsToList     PROTO((char *name));
 Vector       *SelectVector          PROTO((char *name, int mode, int verbose));
+int           AssignVector          PROTO((Vector *vec, char *name, int mode, int verbose));
+Vector      **MergeVectors          PROTO((Vector **vec, int *Nvec, Vector **invec, int Ninvec));
+Vector      **MergeVectorsByIndex   PROTO((Vector **vec, int *Nvec, Vector **invec, int Ninvec, int Nelements));
+
+/* vector IO functions */
+int           WriteVectorTableFITS  PROTO((char *filename, char *extname, Vector **vec, int Nvec, int append, char *format));
+Vector      **ReadVectorTableFITS   PROTO((char *filename, char *extname, int *Nvec));
 
 /* buffer handling */
@@ -140,4 +150,5 @@
 int           IsBufferPtr           PROTO((Buffer *buf));
 int           PrintBuffers          PROTO((int Long));
+int           ListBuffersToList     PROTO((char *name));
 int           CreateBuffer          PROTO((Buffer *buf, int Nx, int Ny, int bitpix, float bzero, float bscale));
 Buffer       *SelectBuffer          PROTO((char *name, int mode, int verbose));
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/include/dvoshell.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/include/dvoshell.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/include/dvoshell.h	(revision 34041)
@@ -6,269 +6,4 @@
 # ifndef DVOSHELL_H
 # define DVOSHELL_H
-
-#ifdef NOT_MOVED_TO_LIBDVO
-typedef enum {
-  DB_STACK_NONE  = 0,
-  DB_STACK_INT   = 0x01,
-  DB_STACK_FIELD = 0x02,
-  DB_STACK_TEMP  = 0x04,
-  DB_STACK_VALUE = 0x08,
-  DB_STACK_CLOSE_PAR = 0x10,
-  DB_STACK_OPEN_PAR,
-  DB_STACK_LOGIC,
-  DB_STACK_COMPARE,
-  DB_STACK_BITWISE,
-  DB_STACK_SUM,
-  DB_STACK_MULTIPLY,
-  DB_STACK_POWER,
-  DB_STACK_UNARY,
-} dbStackTypes;
-
-/* magnitude types */
-enum {MAG_NONE, 
-      MAG_INST, 
-      MAG_CAT, 
-      MAG_APER, 
-      MAG_SYS, 
-      MAG_REL, 
-      MAG_CAL, 
-      MAG_AVE, 
-      MAG_REF, 
-      MAG_ERR, 
-      MAG_AVE_ERR, 
-      MAG_PHOT_FLAGS, 
-      MAG_CHISQ,
-      MAG_NCODE,
-      MAG_NPHOT,
-};
-
-/* measure fields */
-enum {MEAS_ZERO, 
-      MEAS_GLON, 
-      MEAS_GLAT, 
-      MEAS_GLON_AVE, 
-      MEAS_GLAT_AVE,
-      MEAS_ELON, 
-      MEAS_ELAT, 
-      MEAS_ELON_AVE, 
-      MEAS_ELAT_AVE,
-      MEAS_RA, 
-      MEAS_DEC, 
-      MEAS_RA_AVE, 
-      MEAS_DEC_AVE,
-      MEAS_RA_AVE_ERR, 
-      MEAS_DEC_AVE_ERR, 
-      MEAS_U_RA, 
-      MEAS_U_DEC, 
-      MEAS_U_RA_ERR, 
-      MEAS_U_DEC_ERR, 
-      MEAS_PAR, 
-      MEAS_PAR_ERR, 
-      MEAS_RA_OFFSET, 
-      MEAS_DEC_OFFSET, 
-      MEAS_RA_FIT_OFFSET, 
-      MEAS_DEC_FIT_OFFSET, 
-      MEAS_RA_OFFSET_ERR, 
-      MEAS_DEC_OFFSET_ERR, 
-      MEAS_CHISQ_POS, 
-      MEAS_CHISQ_PM,  
-      MEAS_CHISQ_PAR, 
-      MEAS_TMEAN, 
-      MEAS_TRANGE, 
-      MEAS_NMEAS, 
-      MEAS_NMISS, 
-      MEAS_NPOS, 
-      MEAS_OBJ_FLAGS, 
-      MEAS_MAG, 
-      MEAS_MINST, 
-      MEAS_MCAT, 
-      MEAS_MSYS, 
-      MEAS_MREL, 
-      MEAS_MCAL, 
-      MEAS_EXPTIME, 
-      MEAS_AIRMASS, 
-      MEAS_ALT, 
-      MEAS_AZ, 
-      MEAS_PHOTCODE, 
-      MEAS_PHOTCODE_EQUIV, 
-      MEAS_TIME, 
-      MEAS_FWHM, 
-      MEAS_FWHM_MAJ, 
-      MEAS_FWHM_MIN, 
-      MEAS_THETA, 
-      MEAS_POSANGLE, 
-      MEAS_PLATESCALE, 
-      MEAS_MXX, 
-      MEAS_MXY, 
-      MEAS_MYY, 
-      MEAS_DOPHOT, 
-      MEAS_DB_FLAGS, 
-      MEAS_PHOT_FLAGS, 
-      MEAS_XCCD, 
-      MEAS_YCCD, 
-      MEAS_XCCD_ERR, 
-      MEAS_YCCD_ERR, 
-      MEAS_POS_SYS_ERR, 
-      MEAS_XMOSAIC, 
-      MEAS_YMOSAIC, 
-      MEAS_SKY, 
-      MEAS_dSKY, 
-      MEAS_DET_ID, 
-      MEAS_OBJ_ID, 
-      MEAS_CAT_ID, 
-      MEAS_IMAGE_ID, 
-      MEAS_PSF_QF, 
-      MEAS_PSF_QF_PERFECT, 
-      MEAS_PSF_CHISQ, 
-      MEAS_PSF_NDOF,
-      MEAS_PSF_NPIX,
-      MEAS_CR_NSIGMA, 
-      MEAS_EXT_NSIGMA, 
-      MEAS_EXTERN_ID,
-};
-
-/* average fields */
-enum {AVE_ZERO, 
-      AVE_RA, 
-      AVE_DEC, 
-      AVE_RA_ERR, 
-      AVE_DEC_ERR, 
-      AVE_GLON, 
-      AVE_GLAT, 
-      AVE_ELON, 
-      AVE_ELAT, 
-      AVE_U_RA, 
-      AVE_U_DEC, 
-      AVE_U_RA_ERR, 
-      AVE_U_DEC_ERR, 
-      AVE_PAR, 
-      AVE_PAR_ERR, 
-      AVE_CHISQ_POS, 
-      AVE_CHISQ_PM, 
-      AVE_CHISQ_PAR, 
-      AVE_TMEAN,
-      AVE_TRANGE, 
-      AVE_Xp, 
-      AVE_NMEAS, 
-      AVE_NMISS, 
-      AVE_NPOS, 
-      AVE_NPHOT, 
-      AVE_NCODE, 
-      AVE_MAG, 
-      AVE_dMAG, 
-      AVE_Xm, 
-      AVE_OBJ_FLAGS, 
-      AVE_TYPE, 
-      AVE_TYPEFRAC,
-      AVE_OBJID,
-      AVE_CATID,
-      AVE_EXTID_HI,
-      AVE_EXTID_LO,
-};
-
-enum {IMAGE_ZERO, 
-      IMAGE_RA, 
-      IMAGE_DEC, 
-      IMAGE_GLON, 
-      IMAGE_GLAT, 
-      IMAGE_ELON, 
-      IMAGE_ELAT, 
-      IMAGE_XM, 
-      IMAGE_AIRMASS, 
-      IMAGE_MCAL, 
-      IMAGE_dMCAL, 
-      IMAGE_PHOTCODE, 
-      IMAGE_TIME, 
-      IMAGE_FWHM, 
-      IMAGE_FWHM_MEDIAN, 
-      IMAGE_EXPTIME, 
-      IMAGE_NSTAR, 
-      IMAGE_NCAL, 
-      IMAGE_SKY, 
-      IMAGE_FLAGS, 
-      IMAGE_CCDNUM, 
-      IMAGE_NX_PIX, 
-      IMAGE_NY_PIX, 
-      IMAGE_THETA, 
-      IMAGE_SKEW, 
-      IMAGE_SCALE, 
-      IMAGE_DSCALE, 
-      IMAGE_APRESID,
-      IMAGE_DAPRESID,
-      IMAGE_SIDTIME,
-      IMAGE_LATITUDE,
-      IMAGE_DET_LIMIT,
-      IMAGE_SAT_LIMIT,
-      IMAGE_CERROR,
-      IMAGE_FWHM_MAJ,
-      IMAGE_FWHM_MIN,
-      IMAGE_FWHM_MAJ_MEDIAN,
-      IMAGE_FWHM_MIN_MEDIAN,
-      IMAGE_TRATE,
-      IMAGE_IMAGE_ID,
-      IMAGE_EXTERN_ID,
-      IMAGE_SOURCE_ID,
-      IMAGE_X_LL_CHIP,
-      IMAGE_X_LR_CHIP,
-      IMAGE_X_UL_CHIP,
-      IMAGE_X_UR_CHIP,
-      IMAGE_Y_LL_CHIP,
-      IMAGE_Y_LR_CHIP,
-      IMAGE_Y_UL_CHIP,
-      IMAGE_Y_UR_CHIP,
-      IMAGE_X_LL_FP,
-      IMAGE_X_LR_FP,
-      IMAGE_X_UL_FP,
-      IMAGE_X_UR_FP,
-      IMAGE_Y_LL_FP,
-      IMAGE_Y_LR_FP,
-      IMAGE_Y_UL_FP,
-      IMAGE_Y_UR_FP,
-      IMAGE_X_ERR_SYS,
-      IMAGE_Y_ERR_SYS,
-      IMAGE_MAG_ERR_SYS,
-      IMAGE_NFIT_PHOTOM,
-      IMAGE_NFIT_ASTROM,
-      IMAGE_NLINK_PHOTOM,
-      IMAGE_NLINK_ASTROM
-};
-
-enum {DVO_TABLE_AVERAGE, DVO_TABLE_MEASURE, DVO_TABLE_IMAGE};
-enum {DVO_DB_CMDLINE_ERROR, DVO_DB_CMDLINE_IS_END, DVO_DB_CMDLINE_IS_WHERE, DVO_DB_CMDLINE_IS_MATCH}; 
-
-// options for selecting the ra,dec limits of the db selections
-typedef struct {
-  char *name;
-  char *list;
-  int useDisplay;
-  int useSkyregion;
-} SkyRegionSelection;
-
-// a single db field 
-typedef struct {
-  char *name;
-  int extract;
-  int table;
-  int ID;
-  int magMode;
-  char type;
-  PhotCode *photcode;
-} dbField;
-
-// db boolean operations
-typedef struct {
-  char   *name;
-  char    type;
-  int     field;
-  opihi_flt FltValue;
-  opihi_int IntValue;
-} dbStack;
-
-typedef struct {
-  opihi_flt Flt;
-  opihi_int Int;
-} dbValue;
-
-#endif // notdef MOVED_TO_LIBDVO
 
 typedef struct {
@@ -291,4 +26,9 @@
   e_time t;
 } CMPstars;
+
+/** some globals used particularly by DVO_CLIENT **/
+int   HOST_ID;
+char *HOSTDIR;
+char *RESULT_FILE;
 
 /*** dvo prototypes ***/
@@ -316,13 +56,9 @@
 void          FreeDVO               PROTO((void));
 int           InitPhotcodes         PROTO((void));
-#ifdef NOT_MOVED_TO_DVO
-Image        *LoadImages            PROTO((off_t *Nimage));
-void          FreeImages            PROTO((Image *images));
-Image        *MatchImage            PROTO((unsigned int time, short int source, unsigned int imageID));
-#endif
 Coords       *MatchMosaic           PROTO((unsigned int time, short int source));
 int           Quality               PROTO((Measure *measure, int IsDophot));
 int           SelectMags            PROTO((int Nphot, int Tphot, int Ns, Average *average, Measure *measure, SecFilt *secfilt, int UL));
 
+int           SetSkyRegions         PROTO((SkyRegionSelection *selection));
 SkyList      *SelectRegions         PROTO((SkyRegionSelection *selection));
 SkyList      *SkyListLoadFile       PROTO((char *filename));
@@ -352,21 +88,5 @@
 CMPstars     *cmpReadText           PROTO((FILE *f, off_t *nstars));
 int           RD_to_XYpic           PROTO((double *x, double *y, double r, double d, Coords *coords, double Rmin, double Rmax, double Rmid, int *leftside));
-int wordhash (char *word);
-
-#ifdef NOT_MOVED_TO_LIBDVO
-// dvo DB field functions
-dbField     *dbCmdlineFields        PROTO((int argc, char **argv, int table, int *last, int *nfields));
-int          dbCmdlineConditions    PROTO((int argc, char **argv, int first, int *nextField));
-dbStack     *dbRPN                  PROTO((int argc, char **argv, int *nstack));
-int          dbCheckStack           PROTO((dbStack *stack, int Nstack, int table, dbField **inFields, int *Nfields));
-int          dbBooleanCond          PROTO((dbStack *inStack, int NinStack, dbValue *fields));
-void         dbInitStack            PROTO((dbStack *stack));
-void 	     dbFreeStack            PROTO((dbStack *stack, int Nstack));
-void 	     dbFreeEntry            PROTO((dbStack *stack));
-void         dbFreeTempEntry        PROTO((dbStack *stack));
-
-dbStack     *dbBinary               PROTO((dbStack *V1, dbStack *V2, char *op, dbValue *fields));
-dbStack     *dbUnary                PROTO((dbStack *V1, char *op, dbValue *fields));
-#endif
+int           wordhash              PROTO((char *word));
 
 int          GetMagMode             PROTO((char *string));
@@ -378,31 +98,8 @@
 dbValue      dbExtractMeasures      PROTO((Average *average, SecFilt *secfilt, Measure *measure, dbField *field));
 dbValue      dbExtractImages        PROTO((Image *image, off_t Nimage, off_t N, dbField *field));
-#ifdef NOT_MOVED_TO_LIBDVO
-dbValue      dbExtractAverages      PROTO((Average *average, SecFilt *secfilt, Measure *measure, dbField *field));
 
-void 	     dbInitField            PROTO((dbField *field));
-void 	     dbFreeFields           PROTO((dbField *fields, int Nfields));
-int          dbAstroRegionLimits    PROTO((dbStack **stack, int *nstack, SkyRegionSelection *selection, int table));
-int get_skyregion (double *Rs, double *Re, double *Ds, double *De);
-int set_skyregion (double Rs, double Re, double Ds, double De);
-void FreeImageSelection (void);
-char        *strfloat               PROTO((float value));
+int          HostTableLaunchJobs    PROTO((HostTable *table, char *basecmd, char *options, int VERBOSE));
+int          HostTableParallelOps   PROTO((int argc, char **argv, char *ResultFile, int Nelements, int VERBOSE));
+int          HostTableReloadResults PROTO((char *uniquer, int VERBOSE));
 
-
-void FreeSkyRegionSelection (SkyRegionSelection *selection);
-
-
-int dbExtractMeasuresInitTransform (CoordTransformSystem target);
-int dbExtractMeasuresInitAve (void);
-int dbExtractMeasuresInitMeas (void);
-int dbExtractMeasuresInit (void);
-
-int dbExtractAveragesInitTransform (CoordTransformSystem target);
-int dbExtractAveragesInit (void);
-
-int dbExtractImagesInitTransform (CoordTransformSystem target);
-int dbExtractImagesInit (void);
-int dbExtractImagesReset (void);
-#endif // NOT_MOVED_TO_LIBDVO
-
-# endif
+# endif // DVOSHELL_H
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/include/pcontrol.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/include/pcontrol.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/include/pcontrol.h	(revision 34041)
@@ -252,5 +252,4 @@
 int CheckDoneJob (Job *job, Host *host);
 int GetJobOutput (char *command, Host *host, JobOutput *output);
-int rconnect (char *command, char *hostname, char *shell, int *stdio);
 
 int PclientCommand (Host *host, char *command, char *response, HostResp response_state);
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/include/shell.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/include/shell.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/include/shell.h	(revision 34041)
@@ -148,4 +148,5 @@
 char         *opihi_append              PROTO((char *output, int *Noutput, char *start, char *stop));
 void          interpolate_slash         PROTO((char *line));
+char         *paste_args                PROTO((int argc, char **argv));
 
 /* macro functions (mapped to commands) */
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/BufferOps.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/BufferOps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/BufferOps.c	(revision 34041)
@@ -256,2 +256,16 @@
   return (TRUE);
 }
+
+int ListBuffersToList (char *name) {
+
+  int i;
+  char line[1024];
+
+  for (i = 0; i < Nbuffers; i++) {
+    sprintf (line, "%s:%d", name, i);
+    set_str_variable (line, buffers[i][0].name);
+  }
+  sprintf (line, "%s:n", name);
+  set_int_variable (line, Nbuffers);
+  return (Nbuffers);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/ListOps.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/ListOps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/ListOps.c	(revision 34041)
@@ -120,4 +120,17 @@
 }
 
+int is_foreach_loop (char *line) {
+
+  int status;
+  char *comm;
+
+  comm = thisword (line);
+  if (comm == (char *) NULL) return (FALSE);
+  
+  status = !strcmp (comm, "foreach");
+  free (comm);
+  return (status);
+}
+
 int is_macro_create (char *line) {
 
@@ -193,4 +206,6 @@
       if (!strcmp (temp, "-add")) goto escape;
       if (!strcmp (temp, "-del")) goto escape;
+      if (!strcmp (temp, "-vectors")) goto escape;
+      if (!strcmp (temp, "-buffers")) goto escape;
   }
 
@@ -264,4 +279,5 @@
   status |= is_macro_create (line);
   status |= is_for_loop (line);
+  status |= is_foreach_loop (line);
   status |= is_list_data (line);
   status |= is_loop (line);
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/Makefile	(revision 34041)
@@ -24,4 +24,5 @@
 $(SDIR)/VariableOps.$(ARCH).o	   	\
 $(SDIR)/VectorOps.$(ARCH).o             \
+$(SDIR)/VectorIO.$(ARCH).o             \
 $(SDIR)/check_stack.$(ARCH).o           \
 $(SDIR)/command.$(ARCH).o               \
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/VectorIO.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/VectorIO.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/VectorIO.c	(revision 34041)
@@ -0,0 +1,233 @@
+# include "opihi.h"
+  
+// write a set of vectors to a FITS file (vectors names become fits column names)
+int WriteVectorTableFITS (char *filename, char *extname, Vector **vec, int Nvec, int append, char *format) {
+  
+  char *tformat = NULL;
+  Header header;
+  Matrix matrix;
+  Header theader;
+  FTable ftable;
+
+  int j;
+  FILE *f = NULL;
+
+  /* open file for outuput */
+  if (append) {
+    f = fopen (filename, "a");
+  } else {
+    f = fopen (filename, "w");
+  }
+  if (f == (FILE *) NULL) {
+    gprint (GP_ERR, "can't open file for write : %s\n", filename);
+    return (FALSE);
+  }
+
+  if (!append) {
+    gfits_init_header (&header);
+    header.extend = TRUE;
+    gfits_create_header (&header);
+    gfits_create_matrix (&header, &matrix);
+  }
+
+  gfits_create_table_header (&theader, "BINTABLE", extname);
+
+  ALLOCATE (tformat, char, 2*Nvec);
+  if (format) {
+    // the bintable format string can only define the byte-width of each field.  valid output columns are currently:
+    // B (char), I (16 bit short), J (32 bit int), E (32 bit float), D (64 bit double).
+    // the format string is just the sequence of types, eg: LIIJEED
+    // validate the format string
+    char *ptr = format;
+    for (j = 0; j < Nvec; j++) {
+      while (*ptr && OHANA_WHITESPACE (*ptr)) ptr++;
+      if (*ptr == 0) {
+	gprint (GP_ERR, "error in binary table format %s (insufficient format chars)\n", format);
+	goto escape;
+      }
+      if ((*ptr != 'B') && (*ptr != 'I') && (*ptr != 'J') && (*ptr != 'D') && (*ptr != 'E')) {
+	gprint (GP_ERR, "error in binary table format %s: invalid character %c\n", format, *ptr);
+	goto escape;
+      }
+      tformat[2*j + 0] = *ptr;
+      tformat[2*j + 1] = 0; // a bit sleazy : use a 2xN string to store N 1-byte strings
+      ptr ++;
+    }
+    while (*ptr && OHANA_WHITESPACE (*ptr)) ptr++;
+    if (*ptr) {
+      gprint (GP_ERR, "error in binary table format %s (extra characters in format)\n", format);
+      goto escape;
+    }
+  } else {
+    for (j = 0; j < Nvec; j++) {
+      // if the format is not defined, just use the native byte-widths
+      tformat[2*j + 0] = (vec[j][0].type == OPIHI_FLT) ? 'D' : 'J';
+      tformat[2*j + 1] = 0;
+    }
+  }
+
+  // define the columns of the table.  XXX NOTE: we cannot have duplicate names in
+  // output table (because the data goes to the named column below).  need to enforce
+  // this somehow
+  for (j = 0; j < Nvec; j++) {
+    gfits_define_bintable_column (&theader, &tformat[2*j], vec[j][0].name, NULL, NULL, 1.0, 0.0);
+  }
+  free (tformat);
+
+  // generate the output array that carries the data
+  gfits_create_table (&theader, &ftable);
+
+  // add the vectors to the output array
+  for (j = 0; j < Nvec; j++) {
+    if (vec[j][0].type == OPIHI_FLT) {
+      gfits_set_bintable_column_reformat (&theader, &ftable, vec[j][0].name, "double", vec[j][0].elements.Flt, vec[j][0].Nelements);
+    } else {
+      gfits_set_bintable_column_reformat (&theader, &ftable, vec[j][0].name, "int", vec[j][0].elements.Int, vec[j][0].Nelements);
+    }
+  }
+
+  if (!append) {
+    gfits_fwrite_header  (f, &header);
+    gfits_fwrite_matrix  (f, &matrix);
+    gfits_free_header (&header);
+    gfits_free_matrix (&matrix);
+  }
+  gfits_fwrite_Theader (f, &theader);
+  gfits_fwrite_table  (f, &ftable);
+
+  gfits_free_header (&theader);
+  gfits_free_table (&ftable);
+
+  fclose (f);
+  fflush (f);
+  return (TRUE);
+
+ escape:
+  if (!append) {
+    gfits_free_header (&header);
+    gfits_free_matrix (&matrix);
+  }
+  gfits_free_header (&theader);
+  gfits_free_table (&ftable);
+
+  if (tformat) free (tformat);
+  fclose (f);
+  fflush (f);
+  return (FALSE);
+}
+  
+// read the complete set of vectors from the given FITS file & extension
+// XXX not quite right : I need to merge multiple vectors together:
+// do not associate with an Opihi vector until later in mextract
+Vector **ReadVectorTableFITS (char *filename, char *extname, int *nvec) {
+  
+  Header header;
+  FTable ftable;
+
+  int i, j, k;
+  FILE *f = NULL;
+
+  /* open file for input */
+  f = fopen (filename, "r");
+  if (f == (FILE *) NULL) {
+    gprint (GP_ERR, "can't open file for read\n");
+    return NULL;
+  }
+
+  ftable.header = &header;
+
+  // read the full table data into a buffer
+  if (!gfits_fread_ftable (f, &ftable, extname)) {
+    fclose (f);
+    return NULL;
+  }
+
+  // XXX handle binary and ascii tables (see read_vectors.c)
+  // find the columns in the table
+  int Nfields;
+  gfits_scan (&header, "TFIELDS", "%d", 1, &Nfields);
+  int Nrows = header.Naxis[1];
+
+  // how many output vectors do we need?  depends on number of columns per field, but min is Nfields
+  int Nvec = 0;
+  int NVEC = Nfields;
+  Vector **vec = NULL;
+  ALLOCATE (vec, Vector *, NVEC);
+  
+  for (i = 0; i < Nfields; i++) {
+    int Nval;
+    char type[16], label[16], name[80];
+
+    // determine the column name, data type, and number of sub-fields
+    sprintf (label, "TTYPE%d", i + 1);
+    int status = gfits_scan (&header, label, "%s", 1, name);
+    assert (status);
+
+    status = gfits_get_bintable_column_type_by_N (&header, i + 1, type, &Nval);
+    assert (status);
+
+    if (Nvec + Nval >= NVEC) {
+      NVEC = Nvec + Nval + 16;
+      REALLOCATE (vec, Vector *, NVEC);
+    }
+
+    int vecType = OPIHI_INT;
+    if (!strcmp (type, "double") || !strcmp (type, "float")) {
+      vecType = OPIHI_FLT;
+    }
+
+    // generate the needed vectors
+    for (j = 0; j < Nval; j++) {
+      vec[Nvec + j] = InitVector();
+      if (Nval == 1) {
+	strcpy (vec[Nvec + j]->name, name);
+      } else {
+	snprintf (vec[Nvec + j]->name, OPIHI_NAME_SIZE, "%s:%d", name, j);
+      }
+      ResetVector (vec[Nvec + j], vecType, Nrows);
+    }
+
+    // read the actual table data into a column
+    void *data;
+    status = gfits_get_bintable_column (&header, &ftable, name, &data);
+    assert (status);
+
+# define ASSIGN_DATA(TYPE,OPTYPE) \
+    /* assign the data to the actual vector */ \
+    if (!strcmp (type, #TYPE)) { \
+      TYPE *Ptr = data;	    \
+      for (k = 0; k < Nrows; k++) { \
+	for (j = 0; j < Nval; j++, Ptr++) { \
+	  vec[Nvec + j][0].elements.OPTYPE[k] = *Ptr; \
+	} } }
+
+    // assign the data to the actual vector
+    ASSIGN_DATA(char,    Int);
+    ASSIGN_DATA(short,   Int);
+    ASSIGN_DATA(int,     Int);
+    ASSIGN_DATA(int64_t, Int);
+    ASSIGN_DATA(float,   Flt);
+    ASSIGN_DATA(double,  Flt);
+
+    free (data);
+    Nvec += Nval;
+  }
+
+  gfits_free_header (&header);
+  gfits_free_table (&ftable);
+
+  fclose (f);
+
+  *nvec = Nvec;
+  return vec;
+
+//escape:
+//  gfits_free_header (&header);
+//  gfits_free_matrix (&matrix);
+//  gfits_free_header (&theader);
+//  gfits_free_table (&ftable);
+//
+//  fclose (f);
+//  fflush (f);
+//  return (FALSE);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/VectorOps.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/VectorOps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/VectorOps.c	(revision 34041)
@@ -15,15 +15,22 @@
 
 // this function is NOT thread protected : it is only used in startup and/or shutdown
+void FreeVectorArray (Vector **vec, int Nvec) {
+
+  int i;
+
+  if (!vec) return;
+  for (i = 0; i < Nvec; i++) {
+    if (!vec[i]) continue;
+    if (vec[i]->elements.Int) {
+      free (vec[i]->elements.Int);
+    }
+    free (vec[i]);
+  }
+  free (vec);
+}
+
+// this function is NOT thread protected : it is only used in startup and/or shutdown
 void FreeVectors () {
-
-  int i;
-
-  for (i = 0; i < Nvectors; i++) {
-    if (vectors[i][0].elements.Int) {
-      free (vectors[i][0].elements.Int);
-    }
-    free (vectors[i]);
-  }
-  free (vectors);
+  FreeVectorArray (vectors, Nvectors);
 }
 
@@ -93,4 +100,38 @@
 }
   
+// Assign the given Vector to the internal array of vectors by name
+int AssignVector (Vector *vec, char *name, int mode, int verbose) {
+
+  int i;
+
+  if (name == NULL) goto error;
+  if (ISNUM(name[0])) goto error;
+  if (IsBuffer(name)) goto error;
+
+  for (i = 0; (i < Nvectors) && (strcmp(vectors[i][0].name, name)); i++);
+  /* is a new vector */
+  if (i == Nvectors) { 
+    if (mode == OLDVECTOR) goto error;
+    pthread_mutex_lock (&mutex);
+    Nvectors ++;
+    REALLOCATE (vectors, Vector *, Nvectors);
+    vectors[i] = vec;
+    pthread_mutex_unlock (&mutex);
+    return TRUE;
+  } 
+  /* is an old vector */
+  if (mode == NEWVECTOR) goto error;
+  if (vectors[i]) {
+    if (vectors[i][0].elements.Ptr) free (vectors[i][0].elements.Ptr);
+    free (vectors[i]);
+  }
+  vectors[i] = vec;
+  return TRUE;
+
+ error:
+  if (verbose) gprint (GP_ERR, "invalid vector %s\n", name);
+  return FALSE;
+}
+  
 /* delete by pointer */
 int DeleteVector (Vector *vec) {
@@ -148,9 +189,9 @@
   if (in[0].elements.Ptr) {
     if (in[0].type == OPIHI_FLT) {
-      ALLOCATE (out[0].elements.Flt, opihi_flt, out[0].Nelements);
+      ALLOCATE (out[0].elements.Flt, opihi_flt, MAX(1,out[0].Nelements));
       memcpy (out[0].elements.Flt, in[0].elements.Flt, out[0].Nelements*sizeof(opihi_flt));
       out[0].type = OPIHI_FLT;
     } else {
-      ALLOCATE (out[0].elements.Int, opihi_int, out[0].Nelements);
+      ALLOCATE (out[0].elements.Int, opihi_int, MAX(1,out[0].Nelements));
       memcpy (out[0].elements.Int, in[0].elements.Int, out[0].Nelements*sizeof(opihi_int));
       out[0].type = OPIHI_INT;
@@ -164,8 +205,8 @@
   out[0].Nelements = in[0].Nelements;
   if (type == OPIHI_FLT) {
-    ALLOCATE (out[0].elements.Flt, opihi_flt, out[0].Nelements);
+    ALLOCATE (out[0].elements.Flt, opihi_flt, MAX(1,out[0].Nelements));
     out[0].type = OPIHI_FLT;
   } else {
-    ALLOCATE (out[0].elements.Int, opihi_int, out[0].Nelements);
+    ALLOCATE (out[0].elements.Int, opihi_int, MAX(1,out[0].Nelements));
     out[0].type = OPIHI_INT;
   }
@@ -173,8 +214,8 @@
 }
 
-// ResetVector (vecx, OPIHI_FLT, MAX (Npts, 1));
 int ResetVector (Vector *vec, char type, int Nelements) {
 
-  vec[0].Nelements = Nelements;
+  // a vector can only have >= 0 elements
+  vec[0].Nelements = MAX(Nelements,0);
   if (type == OPIHI_FLT) {
     REALLOCATE (vec[0].elements.Flt, opihi_flt, MAX(1, Nelements));
@@ -190,10 +231,10 @@
 int SetVector (Vector *vec, char type, int Nelements) {
 
-  vec[0].Nelements = Nelements;
+  vec[0].Nelements = MAX(Nelements,0);
   if (type == OPIHI_FLT) {
-    ALLOCATE (vec[0].elements.Flt, opihi_flt, Nelements);
+    ALLOCATE (vec[0].elements.Flt, opihi_flt, MAX(1,Nelements));
     vec[0].type = OPIHI_FLT;
   } else {
-    ALLOCATE (vec[0].elements.Int, opihi_int, Nelements);
+    ALLOCATE (vec[0].elements.Int, opihi_int, MAX(1,Nelements));
     vec[0].type = OPIHI_INT;
   }
@@ -287,3 +328,108 @@
   return (TRUE);
 }
+
+int ListVectorsToList (char *name) {
+
+  int i;
+  char line[1024];
+
+  for (i = 0; i < Nvectors; i++) {
+    sprintf (line, "%s:%d", name, i);
+    set_str_variable (line, vectors[i][0].name);
+  }
+  sprintf (line, "%s:n", name);
+  set_int_variable (line, Nvectors);
+  return (Nvectors);
+}
+
+// Take two arrays of vectors and merge equal named vectors.
+// Output is a single array in (vec), with vectors lengths of len(vec) + len(invec)
+// For ease, require that the order of the names match & number of vectors match
+Vector **MergeVectors (Vector **vec, int *Nvec, Vector **invec, int Ninvec) {
+
+  int i, j;
+
+  if (vec == NULL) {
+    *Nvec = Ninvec;
+    return invec;
+  }
+
+  myAssert (*Nvec == Ninvec, "programming error (1) %d vs %d", *Nvec, Ninvec);
+
+  for (i = 0; i < Ninvec; i++) {
+    myAssert (!strcmp(vec[i]->name, invec[i]->name), "programming error (2) %s vs %s", vec[i]->name, invec[i]->name);
+    myAssert (vec[i]->type == invec[i]->type, "programming error (3), %d vs %d", vec[i]->type, invec[i]->type);
+
+    int N = vec[i]->Nelements;
+    if (vec[i]->type == OPIHI_FLT) {
+      REALLOCATE (vec[i]->elements.Flt, opihi_flt, vec[i]->Nelements + invec[i]->Nelements);
+      for (j = 0; j < invec[i]->Nelements; j++) {
+	vec[i]->elements.Flt[N+j] = invec[i]->elements.Flt[j];
+      }
+    } else {
+      REALLOCATE (vec[i]->elements.Int, opihi_int, vec[i]->Nelements + invec[i]->Nelements);
+      for (j = 0; j < invec[i]->Nelements; j++) {
+	vec[i]->elements.Int[N+j] = invec[i]->elements.Int[j];
+      }
+    }
+    vec[i]->Nelements += invec[i]->Nelements;
+  }
+  return vec;
+}
+
+// Take two arrays of vectors and merge equal named vectors, where the last vector
+// specifies the element in the output vector.  All input vectors must have a max sequence
+// value of Nelements.  Output is a single array in (vec), with vector lengths of
+// Nelements for ease, require that the order of the names match & number of vectors match
+Vector **MergeVectorsByIndex (Vector **vec, int *Nvec, Vector **invec, int Ninvec, int Nelements) {
+
+  int i, j;
+
+  // on first call, allocate a new vector, excluding the index
+  int newArray = FALSE;
+  if (vec == NULL) {
+    ALLOCATE (vec, Vector *, Ninvec - 1);
+    *Nvec = Ninvec - 1;
+    newArray = TRUE;
+  } 
+
+  myAssert (*Nvec == Ninvec - 1, "programming error (1)");
+
+  // find the index vector
+  int idx = Ninvec - 1;
+  myAssert (!strcmp(invec[idx]->name, "index"), "failed to find index vector");
   
+  for (i = 0; i < Ninvec - 1; i++) {
+    // on first call, create the output vector
+    if (newArray) {
+      vec[i] = InitVector();
+      strcpy (vec[i]->name, invec[i]->name);
+      ResetVector (vec[i], invec[i]->type, Nelements);
+      for (j = 0; j < Nelements; j++) {
+	if (vec[i][0].type == OPIHI_FLT) {
+	  vec[i][0].elements.Flt[j] = NAN;
+	} else {
+	  vec[i][0].elements.Int[j] = 0; // or NAN_INT?
+	}
+      }
+    }
+
+    myAssert (!strcmp(vec[i]->name, invec[i]->name), "programming error (2)");
+    myAssert (vec[i]->type == invec[i]->type, "programming error (2)");
+
+    // copy vector elements from input to output, matching location
+    if (vec[i]->type == OPIHI_FLT) {
+      for (j = 0; j < invec[i]->Nelements; j++) {
+	int seq = invec[idx]->elements.Int[j];
+	vec[i]->elements.Flt[seq] = invec[i]->elements.Flt[j];
+      }
+    } else {
+      for (j = 0; j < invec[i]->Nelements; j++) {
+	int seq = invec[idx]->elements.Int[j];
+	vec[i]->elements.Int[seq] = invec[i]->elements.Int[j];
+      }
+    }
+  }
+  return vec;
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/parse.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/parse.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/parse.c	(revision 34041)
@@ -101,5 +101,9 @@
     V1 ++;
     while (isspace (*V1)) V1++;
-    if (*V1 == 0) goto error;
+    if (*V1 == 0) {
+      // assign empty vector
+      set_str_variable (V0, "");
+      goto escape;
+    }
 
     /* command replacement.  execute the line, place answer in val. */
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/parse.cleanup.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/parse.cleanup.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/parse.cleanup.c	(revision 34041)
@@ -0,0 +1,428 @@
+# include "opihi.h"
+
+enum {OP_SET_SCALAR, OP_INCR_SCALAR, OP_DECR_SCALAR, OP_ADD_SCALAR, OP_SUB_SCALAR, OP_SET_VECTOR, OP_INCR_VECTOR, OP_DECR_VECTOR, OP_ADD_VECTOR, OP_SUB_VECTOR};
+
+char *parse (int *status, char *line) {
+
+  double fval;
+  float *fptr;
+  char *newline, *N, *L, *val, *B, *V, *V0, *V1, *c1, *c2, *p, *px, *py;
+  int Nx, Ny, Nbytes, filestatus, size, NLINE, isBuffer, inRange;
+  FILE *f;
+  Vector *vec;
+  Buffer *buf;
+
+  *status = TRUE; 
+
+  Ny = 0;
+  val = V0 = NULL;
+
+  if (line == (char *) NULL) goto error;
+
+  // what are we trying to do here?
+  /* case 1: $var = expression */
+  if (line[0] == '$') {  
+    /* find the target variable name and the rest of the line */
+    interpolate_slash (line);
+    V0 = thisvar (line);
+    if (V0 == NULL) goto error;
+    V1 = aftervar (line);
+    if (V1 == NULL) goto error;
+ 
+    if (!strcmp  (V1, "++"))    { mode = OP_INCR_SCALAR; }
+    if (!strcmp  (V1, "--"))    { mode = OP_DECR_SCALAR; }
+    if (!strncmp (V1, "+=", 2)) { mode = OP_ADD_SCALAR;  }
+    if (!strncmp (V1, "-=", 2)) { mode = OP_SUB_SCALAR;  }
+    if (!strcmp  (V1, "="))     { mode = OP_SET_SCALAR;  }
+  }
+
+  /* case 2: vect[N] = value or buff[N][M] = value */
+  V0 = thiscomm (line);
+  px = py = NULL;
+  if (strchr(V0, '[') != (char *) NULL) { 
+    isBuffer = FALSE;
+
+    N = strchr (V0, '[');
+    if (N == V0) goto error;
+
+    // find end of 1st bracket
+    L = strchr (V0, ']');
+    if (!L) goto error;
+    px = N + 1;
+
+    // is there a second bracket?
+    N = L + 1;
+    if (*N == '[') {
+      isBuffer = TRUE;
+
+      // find end of 2nd bracket
+      L = strchr (N, ']');
+      if (!L) goto error;
+      py = N + 1;
+    }
+
+    V1 = nextcomm (line);
+
+    if (!strcmp  (V1, "++"))    { mode = OP_INCR_VECTOR; }
+    if (!strcmp  (V1, "--"))    { mode = OP_DECR_VECTOR; }
+    if (!strncmp (V1, "+=", 2)) { mode = OP_ADD_VECTOR;  }
+    if (!strncmp (V1, "-=", 2)) { mode = OP_SUB_VECTOR;  }
+    if (!strcmp  (V1, "="))     { mode = OP_SET_VECTOR;  }
+  }
+  free (V0); V0 = (char *) NULL;
+
+  
+
+  /* case 1: $var = expression */
+  if (line[0] == '$') {  
+    /* find the target variable name and the rest of the line */
+    interpolate_slash (line);
+    V0 = thisvar (line);
+    if (V0 == NULL) goto error;
+    V1 = aftervar (line);
+    if (V1 == NULL) goto error;
+ 
+    /* increment operator */
+    if (!strcmp (V1, "++")) {
+      val = get_variable (V0);
+      if (val == NULL) {
+	fval = 1.0;
+      } else {
+	fval = atof (val) + 1.0;
+      }
+      set_variable (V0, fval);
+      goto escape;
+    }
+
+    /* decrement operator */
+    if (!strcmp (V1, "--")) {
+      val = get_variable (V0);
+      if (val == NULL) {
+	fval = -1.0;
+      } else {
+	fval = atof (val) - 1.0;
+      }
+      set_variable (V0, fval);
+      goto escape;
+    }
+
+    if (!strncmp (V1, "+=", 2)) {
+	V1 ++;
+	if (*V1 == 0) goto error;
+	V1 ++;
+	if (*V1 == 0) goto error;
+
+	val = get_variable (V0);
+	if (val == NULL) {
+	    fval = 0.0;
+	} else {
+	    fval = atof (val);
+	}
+
+	/* dvomath returns a new string, or NULL, with the result of the expression */
+	val = dvomath (1, &V1, &size, 0);
+	if (val == NULL) goto error;
+	fval += atof(val);
+	// save the result
+	set_variable (V0, fval);
+	goto escape;
+    }
+
+    if (!strncmp (V1, "-=", 2)) {
+	V1 ++;
+	if (*V1 == 0) goto error;
+	V1 ++;
+	if (*V1 == 0) goto error;
+
+	val = get_variable (V0);
+	if (val == NULL) {
+	    fval = 0.0;
+	} else {
+	    fval = atof (val);
+	}
+
+	/* dvomath returns a new string, or NULL, with the result of the expression */
+	val = dvomath (1, &V1, &size, 0);
+	if (val == NULL) goto error;
+	fval -= atof(val);
+	// save the result
+	set_variable (V0, fval);
+	goto escape;
+    }
+
+    /* not an assignement, syntax error */
+    if (*V1 != '=') goto error;
+
+    /* find first non-WHITESPACE character after = */
+    V1 ++;
+    while (isspace (*V1)) V1++;
+    if (*V1 == 0) {
+      // assign empty vector
+      set_str_variable (V0, "");
+      goto escape;
+    }
+
+    /* command replacement.  execute the line, place answer in val. */
+    if (*V1 == '`') {
+
+      /* look for end of line, must be ` */
+      B = V1 + strlen (V1) - 1;
+      if (*B != '`') goto error;
+
+      /* val will hold the result */
+      // XXX this is limiting!!!
+      ALLOCATE (val, char, 1024);
+
+      /* B is the command to be executed */
+      B = strncreate (V1 + 1, strlen(V1) - 2);
+      f = popen (B, "r");
+      Nbytes = fread (val, 1, 1023, f);
+      val[Nbytes] = 0;
+      filestatus = pclose (f);
+      free (B);
+
+      if (filestatus) gprint (GP_ERR, "warning: exit status of command %d\n", filestatus);
+
+      /* convert all but last return to ' '.  drop last return */
+      for (B = val; *B != 0; B++) {
+	if (*B == '\n') {
+	  if (B[1]) {
+	    *B = ' ';
+	  } else {
+	    *B = 0;
+	  }
+	}
+      }
+      // save the resulting value
+      set_str_variable (V0, val);
+      goto escape;  /* frees temp variables */
+    }
+
+    /* simple variable assignment */
+    /* dvomath returns a new string, or NULL, with the result of the expression */
+    val = dvomath (1, &V1, &size, 0);
+    if (val == NULL) { 
+      while (OHANA_WHITESPACE (*V1)) V1++;
+      val = strcreate (V1);
+    } 
+    // save the result
+    set_str_variable (V0, val);
+    goto escape;  /* frees temp variables */
+  }
+
+  /* case 2: vect[N] = value or buff[N][M] = value */
+  V0 = thiscomm (line);
+  if (strchr(V0, '[') != (char *) NULL) { 
+    /* get vector name (left in V0) */
+    N = strchr (V0, '[');
+    if (N == V0) goto error;
+
+    /* get bracket contents (left in V) */
+    L = strchr (V0, ']');
+    if (L == (char *) NULL) goto error;
+
+    *N = 0;
+    V = strncreate (N+1, L - N - 1);
+
+    /* expand value in brackets */
+    val = dvomath (1, &V, &size, 0);
+    if (val == NULL) {
+      print_error ();
+      goto error;
+    }
+    Nx = atoi (val);
+    free (val); val = NULL;
+    free (V);
+
+    isBuffer = FALSE;
+    N = L + 1;
+    if (*N == '[') {
+      isBuffer = TRUE;
+      L = strchr (N, ']');
+
+      V = strncreate (N+1, L - N - 1);
+
+      /* expand value in brackets */
+      val = dvomath (1, &V, &size, 0);
+      if (val == NULL) {
+	print_error ();
+	goto error;
+      }
+      Ny = atoi (val);
+      free (val); val = NULL;
+      free (V);
+    }
+
+    /* find value for assignment */
+    V1 = nextcomm (line);
+    if (V1 == (char *) NULL) goto error;
+    if (V1[0] != '=') goto error;
+    V1 ++;
+
+    /*** assign vector element to value ***/
+    val = dvomath (1, &V1, &size, 0); 
+    if (val == (char *) NULL) {
+      print_error ();
+      goto error;
+    }
+
+    /* find vector */
+    if (isBuffer) {
+      if ((buf = SelectBuffer (V0, OLDBUFFER, TRUE)) == NULL) goto error;
+      free (V0); V0 = (char *) NULL;
+
+      inRange = TRUE;
+      inRange &= (Nx <  +1*buf[0].header.Naxis[0]);
+      inRange &= (Nx >= -1*buf[0].header.Naxis[0]);
+      inRange &= (Ny <  +1*buf[0].header.Naxis[1]);
+      inRange &= (Ny >= -1*buf[0].header.Naxis[1]);
+      if (!inRange) {
+	gprint (GP_ERR, "no element %d,%d\n", Nx, Ny);
+	goto error;
+      }
+      if (Nx < 0) Nx += buf[0].header.Naxis[0];
+      if (Ny < 0) Ny += buf[0].header.Naxis[1];
+
+      fptr = (float *) buf[0].matrix.buffer;
+      fptr[Nx + Ny*buf[0].header.Naxis[0]] = atof (val);
+    } else {
+      if ((vec = SelectVector (V0, OLDVECTOR, TRUE)) == NULL) goto error;
+      free (V0); V0 = (char *) NULL;
+
+      inRange = TRUE;
+      inRange &= (Nx <  +1*vec[0].Nelements);
+      inRange &= (Nx >= -1*vec[0].Nelements);
+      if (!inRange) {
+	gprint (GP_ERR, "no element %d\n", Nx);
+	goto error;
+      }
+      if (Nx < 0) Nx += vec[0].Nelements;
+      if (vec[0].type == OPIHI_FLT) {
+	vec[0].elements.Flt[Nx] = atof (val);
+      } else {
+	vec[0].elements.Int[Nx] = atol (val);
+      }
+    }
+    goto escape;
+  }
+  free (V0); V0 = (char *) NULL;
+
+  /* case 3: {expression} */
+  NLINE = MAX (128, strlen (line));
+  ALLOCATE (newline, char, NLINE);
+  memset (newline, 0, NLINE);
+  for (L = line; *L != 0; ) { 
+
+    // copy elements from L (line) to newline up to first '{'
+    p = strchr (L, '{');
+    newline = opihi_append (newline, &NLINE, L, p);
+    if (p == NULL) break;
+    L = p + 1;
+
+    // check for \{ at this point, replace \ in newline with {
+    if ((p > line) && (*(p - 1) == 0x5c)) {
+      N = newline + strlen(newline) - 1;
+      *N = '{'; // replace \ with {
+      continue;
+    }
+
+    /* check on the syntax of the line */
+    L = p + 1;
+    c1 = strchr (L, '}');
+    if (c1 == NULL) {
+      gprint (GP_ERR, "no close brackets!\n");
+      goto error;
+    }
+    c2 = strchr (L, '{');
+    if ((c2 != NULL) && (c2 < c1)) {
+      gprint (GP_ERR, "can't nest brackets!\n");
+      goto error;
+    }
+    *c1 = 0;
+
+    /* value in brackets must be a math expression of some sort.
+       isolated words are not valid here */
+    val = dvomath (1, &L, &size, -1);
+    if (val == NULL) {
+      print_error ();
+      goto error;
+    } 
+
+    /* interpolate vector element into newline (being accumulated) */
+    newline = opihi_append (newline, &NLINE, val, NULL);
+
+    /* copy val to outline */
+    L = c1 + 1;
+    free (val); val = (char *) NULL;
+  }
+
+  free (line); line = (char *) NULL;
+
+  /* \ protects next character */
+  interpolate_slash (newline);
+  
+  REALLOCATE (newline, char, strlen (newline) + 1);
+  *status = TRUE;
+  return (newline); 
+
+error:
+  gprint (GP_ERR, "syntax error\n");
+  // assignment or increment operation: free line and return NULL
+  if (line != (char *) NULL) free (line);
+  if (val != (char *) NULL) free (val);
+  if (V0 != (char *) NULL) free (V0);
+  *status = FALSE;
+  return NULL;
+
+escape:
+  // assignment or increment operation: free line and return NULL
+  if (line != (char *) NULL) free (line);
+  if (val != (char *) NULL) free (val);
+  if (V0 != (char *) NULL) free (V0);
+  *status = TRUE;
+  return (NULL);
+}
+
+/* this routine looks for math and/or logic expressions that 
+   need to be evaluated and passes them on to "parenthesis",
+   which evaluates the expression */
+
+/* There are two situations now which define an expression to 
+   be evaluated:
+   1) $var = expression   -- everything after the = must be a math expression or a string
+   2) {expression}        -- everything within the {} must be a math expression
+*/
+
+/* case 1: $var = expression.  test that
+   a) there is a $ as the first character
+   b) the variable defined by that $ is not null
+   c) there is an = sign following the variable
+   d) there is something following the = sign
+*/
+  
+/* case 2: vect[N] = expression. check syntax:
+   a) last char must be ]
+   b) word must contain [
+   c) between [ & ] must be an integer
+   d) vector must exist
+   e) there is an = sign following the first word
+   f) there is something following the = sign
+*/
+     
+
+/* case 3: we hunt for '{', and then the first '}' and pass everything
+   inbetween.  no nested {{}}s are allowed! */
+  
+/* thisword ALLOCATES
+   thisvar  ALLOCATES
+   thiscomm ALLOCATES
+   
+   nextword !ALLOCATE
+   nextcomm !ALLOCATE
+   
+   lastword !ALLOCATE
+   lastvar !ALLOCATE
+   
+   aftervar !ALLOCATE
+*/   
+
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/startup.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/startup.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/startup.c	(revision 34041)
@@ -138,4 +138,5 @@
     if (is_script) {
       /* first argument in input script, rest are argv */
+      set_str_variable ("SCRIPT_NAME", argv[1]);
       list[Nlist] = strcreate (argv[1]);
       Nlist ++;
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/string.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/string.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/lib.shell/string.c	(revision 34041)
@@ -301,2 +301,23 @@
   *out = *in;
 }
+
+// paste together argv[0] .. argv[N] into a single string
+char *paste_args (int argc, char **argv) {
+
+  int i;
+
+  int length = 0;
+  for (i = 0; i < argc; i++) {
+    length += strlen(argv[i]) + 1;
+  }
+  
+  char *string = NULL;
+  ALLOCATE (string, char, length);
+  string[0] = 0;
+  for (i = 0; i < argc; i++) {
+    strcat (string, argv[i]);
+    if (i < argc - 1) strcat (string, " ");
+  }
+  return string;
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/mana/findpeaks.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/mana/findpeaks.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/mana/findpeaks.c	(revision 34041)
@@ -76,7 +76,7 @@
   }
 
-  ResetVector (vecx, OPIHI_FLT, MAX (Npeak, 1));
-  ResetVector (vecy, OPIHI_FLT, MAX (Npeak, 1));
-  ResetVector (vecz, OPIHI_FLT, MAX (Npeak, 1));
+  ResetVector (vecx, OPIHI_FLT, Npeak);
+  ResetVector (vecy, OPIHI_FLT, Npeak);
+  ResetVector (vecz, OPIHI_FLT, Npeak);
 
   /* eliminate non-local peaks */
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/mana/starcontour.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/mana/starcontour.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/mana/starcontour.c	(revision 34041)
@@ -22,6 +22,6 @@
   N = 0;
   Npts = 100;
-  ResetVector (vecx, OPIHI_FLT, MAX (Npts, 1));
-  ResetVector (vecy, OPIHI_FLT, MAX (Npts, 1));
+  ResetVector (vecx, OPIHI_FLT, Npts);
+  ResetVector (vecy, OPIHI_FLT, Npts);
 
   Nx = buf[0].matrix.Naxis[0];
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/pcontrol/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/pcontrol/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/pcontrol/Makefile	(revision 34041)
@@ -24,5 +24,4 @@
 $(SRC)/init.$(ARCH).o \
 $(SRC)/pcontrol.$(ARCH).o \
-$(SRC)/rconnect.$(ARCH).o \
 $(SRC)/CheckBusyJob.$(ARCH).o \
 $(SRC)/CheckDoneHost.$(ARCH).o \
Index: branches/meh_branches/ppstack_test/Ohana/src/opihi/pcontrol/StartHost.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/opihi/pcontrol/StartHost.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/opihi/pcontrol/StartHost.c	(revision 34041)
@@ -14,10 +14,11 @@
   if (VarConfig ("SHELL", "%s", shell)     == NULL) strcpy (shell, "pclient");
 
-  if (VerboseMode()) gprint (GP_ERR, "starting host within thread\n");
+  if (VerboseMode()) gprint (GP_ERR, "starting remote connection to %s...", host[0].hostname);
 
-  pid = rconnect (command, host[0].hostname, shell, stdio);
+  int errorInfo;
+  pid = rconnect (command, host[0].hostname, shell, stdio, &errorInfo, TRUE);
   if (!pid) {     
     /** failure to start: extend retry period **/
-    if (VerboseMode()) gprint (GP_ERR, "failure to start %s\n", host[0].hostname);
+    if (VerboseMode()) gprint (GP_ERR, "failure to start %s (error %d)\n", host[0].hostname, errorInfo);
     gettimeofday (&now, (void *) NULL);
     if (ZTIME(host[0].next_start_try) || ZTIME(host[0].last_start_try)) {
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/Makefile	(revision 34041)
@@ -1,5 +1,5 @@
-default: photdbc
+default: photdbc photdbc_client dvodist
 help:
-	@echo "make options: photdbc (default)"
+	@echo "make options: photdbc photdbc_client dvodist"
 
 include ../../Makefile.System
@@ -18,8 +18,13 @@
 
 photdbc: $(BIN)/photdbc.$(ARCH)
-install: $(DESTBIN)/photdbc
+photdbc_client: $(BIN)/photdbc_client.$(ARCH)
+
+dvodist: $(BIN)/dvodist.$(ARCH)
+
+install: $(DESTBIN)/photdbc $(DESTBIN)/photdbc_client $(DESTBIN)/dvodist
 
 PHOTDBC = \
 $(SRC)/photdbc.$(ARCH).o	   \
+$(SRC)/photdbc_catalogs.$(ARCH).o  \
 $(SRC)/initialize.$(ARCH).o	   \
 $(SRC)/ConfigInit.$(ARCH).o	   \
@@ -29,4 +34,32 @@
 $(SRC)/join_stars.$(ARCH).o        \
 $(SRC)/make_subcatalog.$(ARCH).o        
+
+PHOTDBC_CLIENT = \
+$(SRC)/photdbc_client.$(ARCH).o	   \
+$(SRC)/photdbc_catalogs.$(ARCH).o  \
+$(SRC)/initialize.$(ARCH).o	   \
+$(SRC)/ConfigInit.$(ARCH).o	   \
+$(SRC)/args.$(ARCH).o		   \
+$(SRC)/copy_images.$(ARCH).o	   \
+$(SRC)/Shutdown.$(ARCH).o          \
+$(SRC)/join_stars.$(ARCH).o        \
+$(SRC)/make_subcatalog.$(ARCH).o        
+
+DVODIST = \
+$(SRC)/dvodist.$(ARCH).o	    	\
+$(SRC)/initialize_dvodist.$(ARCH).o 	\
+$(SRC)/Shutdown_dvodist.$(ARCH).o     	\
+$(SRC)/SetSignals.$(ARCH).o             \
+$(SRC)/md5_ops.$(ARCH).o                \
+$(SRC)/md5.$(ARCH).o                    \
+$(SRC)/memstr.$(ARCH).o                 \
+$(SRC)/HostTableLoad.$(ARCH).o          \
+$(SRC)/AssignSkyToHost.$(ARCH).o        \
+$(SRC)/CopyBackupToHost.$(ARCH).o     \
+$(SRC)/UseBackupForHost.$(ARCH).o     \
+$(SRC)/CopyToHostLocation.$(ARCH).o     \
+$(SRC)/CopyFromHostLocation.$(ARCH).o   \
+$(SRC)/FixSkyForHost.$(ARCH).o   \
+$(SRC)/PclientCommands.$(ARCH).o
 
 OLD = \
@@ -50,5 +83,10 @@
 $(SRC)/wcatalog.$(ARCH).o
 
-
 $(PHOTDBC): $(INC)/photdbc.h
 $(BIN)/photdbc.$(ARCH): $(PHOTDBC)
+
+$(PHOTDBC_CLIENT): $(INC)/photdbc.h
+$(BIN)/photdbc_client.$(ARCH): $(PHOTDBC_CLIENT)
+
+$(DVODIST): $(INC)/dvodist.h
+$(BIN)/dvodist.$(ARCH): $(DVODIST)
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/doc/dvodist.txt
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/doc/dvodist.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/doc/dvodist.txt	(revision 34041)
@@ -0,0 +1,20 @@
+
+dvodist manages the parallel distribution of DVO databases.  The basic
+concept of the parallel DVO system is that the spatially distinct
+tables (the 'catalog files', ie, the cpt, cpm, cps, cpn tables) are
+distributed to a set of remote hosts.  Operations which interact with
+those tables fork remote jobs on those remote hosts, perform a local
+operation on the relevant tables, and return results to the main dvo
+programs.  
+
+dvodist is used to ship the tables out to the remote hosts, pull them
+back together to the central host, or make copies for backup.
+
+Currently, this program is implemented to use its own remote copy
+process, which is not very effective.  I would like to switch it to
+use rsync for the actual copies.  
+
+--
+
+new mode: dvodist -duplicate
+
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/include/dvodist.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/include/dvodist.h	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/include/dvodist.h	(revision 34041)
@@ -0,0 +1,61 @@
+# include <ohana.h>
+# include <dvo.h>
+# include <signal.h>
+# include <md5.h>
+# include <unistd.h> // needed?
+
+# define PCLIENT_PROMPT "pclient:"
+
+// used by the md5 stuff
+# define NDIGEST  16
+
+typedef enum {
+    MODE_NONE = 0,
+    MODE_OUT  = 1,
+    MODE_IN   = 2,
+    MODE_FIX  = 3,
+    MODE_OUT_BACKUP = 4,
+    MODE_USE_BACKUP = 5,
+} ModeType;
+
+/* global variables */
+int       VERBOSE;
+SkyRegion UserPatch;
+ModeType  MODE;
+
+char     *srcHostname;
+char     *dstHostname;
+
+# define DVO_MAX_PATH 1024
+
+void          usage();
+int           args (int argc, char **argv); 
+void          initialize (int argc, char **argv); 
+
+void          LockDatabase (char *catdir);
+int           CheckHostsAndPaths (HostTable *table);
+
+int           AssignSkyToHost (SkyList *skylist, HostTable *table);
+int           CopyToHostLocation (char *catdir, SkyList *skylist, HostTable *table);
+int           CopyFromHostLocation(char *catdir, SkyList *skylist, HostTable *table);
+
+int           Shutdown (char *format, ...) OHANA_FORMAT(printf, 1, 2);
+void 	      lock_image_db (FITS_DB *db, char *filename);
+void 	      TrapSignal (int sig);
+void 	      SetProtect (int mode);
+int 	      SetSignals (void);
+
+int           get_md5_with_copy (char *input, char *output, md5_byte_t *digest);
+int hexchar_to_int (char input);
+int get_md5_from_pclient (HostInfo *host, char *filename, md5_byte_t *digest);
+int get_md5_from_remote (HostInfo *host, char *filename, md5_byte_t *digest);
+
+int CheckBusyJob (HostInfo *host, IOBuffer *stdout_buf, IOBuffer *stderr_buf);
+int GetJobOutput (char *command, HostInfo *host, IOBuffer *output, int size);
+int PclientResponse (HostInfo *host, char *response, IOBuffer *buffer);
+int PclientCommand (HostInfo *host, char *command, IOBuffer *buffer);
+
+int FixSkyForHost (char *catdir, SkyList *skylist, HostTable *table);
+
+int UseBackupForHost (char *catdir, SkyList *skylist, HostTable *table);
+int CopyBackupToHost (char *catdir, SkyList *skylist, HostTable *table);
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/include/md5.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/include/md5.h	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/include/md5.h	(revision 34041)
@@ -0,0 +1,94 @@
+/*
+  Copyright (C) 1999, 2002 Aladdin Enterprises.  All rights reserved.
+
+  This software is provided 'as-is', without any express or implied
+  warranty.  In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+  3. This notice may not be removed or altered from any source distribution.
+
+  L. Peter Deutsch
+  ghost@aladdin.com
+
+ */
+/* $Id: md5.h,v 1.1 2007-03-20 01:13:54 price Exp $ */
+/*
+  Independent implementation of MD5 (RFC 1321).
+
+  This code implements the MD5 Algorithm defined in RFC 1321, whose
+  text is available at
+        http://www.ietf.org/rfc/rfc1321.txt
+  The code is derived from the text of the RFC, including the test suite
+  (section A.5) but excluding the rest of Appendix A.  It does not include
+  any code or documentation that is identified in the RFC as being
+  copyrighted.
+
+  The original and principal author of md5.h is L. Peter Deutsch
+  <ghost@aladdin.com>.  Other authors are noted in the change history
+  that follows (in reverse chronological order):
+
+  2007-03-19 pap Fixing types for wider acceptance; incorporating into psLib.
+  2002-04-13 lpd Removed support for non-ANSI compilers; removed
+        references to Ghostscript; clarified derivation from RFC 1321;
+        now handles byte order either statically or dynamically.
+  1999-11-04 lpd Edited comments slightly for automatic TOC extraction.
+  1999-10-18 lpd Fixed typo in header comment (ansi2knr rather than md5);
+        added conditionalization for C++ compilation from Martin
+        Purschke <purschke@bnl.gov>.
+  1999-05-03 lpd Original version.
+ */
+
+#ifndef md5_INCLUDED
+#  define md5_INCLUDED
+
+/*
+ * This package supports both compile-time and run-time determination of CPU
+ * byte order.  If ARCH_IS_BIG_ENDIAN is defined as 0, the code will be
+ * compiled to run only on little-endian CPUs; if ARCH_IS_BIG_ENDIAN is
+ * defined as non-zero, the code will be compiled to run only on big-endian
+ * CPUs; if ARCH_IS_BIG_ENDIAN is not defined, the code will be compiled to
+ * run on either big- or little-endian CPUs, but will run slightly less
+ * efficiently on either one than if ARCH_IS_BIG_ENDIAN is defined.
+ */
+
+#include <inttypes.h>
+
+typedef uint8_t md5_byte_t; /* 8-bit byte */
+typedef uint32_t md5_word_t; /* 32-bit word */
+
+/* Define the state of the MD5 Algorithm. */
+typedef struct md5_state_s {
+    md5_word_t count[2];        /* message length in bits, lsw first */
+    md5_word_t abcd[4];         /* digest buffer */
+    md5_byte_t buf[64];         /* accumulate block */
+} md5_state_t;
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/* Initialize the algorithm. */
+void md5_init(md5_state_t *pms);
+
+/* Append a string to the message. */
+void md5_append(md5_state_t *pms, const md5_byte_t *data, int nbytes);
+
+/* Finish the message and return the digest. */
+void md5_finish(md5_state_t *pms, md5_byte_t digest[16]);
+
+#ifdef __cplusplus
+}  /* end extern "C" */
+#endif
+
+#endif /* md5_INCLUDED */
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/include/photdbc.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/include/photdbc.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/include/photdbc.h	(revision 34041)
@@ -21,5 +21,14 @@
 } StatType;
 
+int    PARALLEL;
+int    PARALLEL_MANUAL;
+int    PARALLEL_SERIAL;
+
+int          HOST_ID;
+char        *HOSTDIR;
+
 // need to get RADIUS from Config 
+
+# define DVO_MAX_PATH 1024
 
 /* global variables */
@@ -29,10 +38,10 @@
 double UNIQ_RADIUS;
 double DMCAL_MIN;;
-char   ImageCat[256];
-char   GSCFILE[256];
-char   CATDIR[256];
-char   CATMODE[16];    /* raw, mef, split, mysql */
-char   CATFORMAT[16];  /* internal, elixir, loneos, panstarrs */
-char   PhotCodeFile[256];
+char   ImageCat[DVO_MAX_PATH];
+char   GSCFILE[DVO_MAX_PATH];
+char   CATDIR[DVO_MAX_PATH];
+char  *CATMODE;    /* raw, mef, split, mysql */
+char  *CATFORMAT;  /* internal, elixir, loneos, panstarrs */
+char   PhotCodeFile[DVO_MAX_PATH];
 
 double RMIN;
@@ -124,2 +133,7 @@
 int copy_images (char *outdir);
 void usage();
+
+int photdbc_catalogs (char *outroot, SkyList *skylist, int hostID);
+int photdbc_parallel (char *outroot, SkyList *skylist);
+int args_client (int argc, char **argv);
+void initialize_client (int argc, char **argv);
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/AssignSkyToHost.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/AssignSkyToHost.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/AssignSkyToHost.c	(revision 34041)
@@ -0,0 +1,40 @@
+# include "dvodist.h"
+# define DEBUG 1
+
+int AssignSkyToHost (SkyList *skylist, HostTable *table) {
+
+  int i;
+  long A, B;
+
+  // init rnd seed
+  A = time(NULL);
+  for (B = 0; A == time(NULL); B++);
+  srand48(B);
+
+  for (i = 0; i < skylist->Nregions; i++) {
+    
+    // assign or re-assign? if a region is already assigned, do we keep it?
+
+    // XXX some options;
+# if (0)
+    if (CLEAR_ERRORS && (skylist->regions[i]->hostFlags & DATA_COPY_FAILURE)) {
+      skylist->regions[i]->hostID = 0;
+    }
+# endif
+
+    // do not reassign tables; this lets us run this program multiple times for different regions
+    // tables already assigned are left where they are
+    if (skylist->regions[i]->hostID) {
+      continue;
+    }
+
+    // assign all regions to one of the Nhost hosts
+    float f = drand48();
+    float n = table->Nhosts * f;
+    int N = MIN(table->Nhosts - 1, n);
+    skylist->regions[i]->hostID = table->hosts[N].hostID;
+    // fprintf  (stderr, "%f  %f  %d  %d\n", f, n, N, skylist->regions[i]->hostID);
+  }    
+
+  return (TRUE);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/ConfigInit.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/ConfigInit.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/ConfigInit.c	(revision 34041)
@@ -52,8 +52,12 @@
   ScanConfig (config, "NMEAS_MIN_FILTERED",     "%d",  0, &NMEAS_MIN_FILTERED);
 
-  WarnConfig (config, "GSCFILE",                "%s",  0, GSCFILE);
+  // do not apply this limit for now
+  NCODE_MIN = 0;
+
   WarnConfig (config, "CATDIR",                 "%s",  0, CATDIR);
-  ScanConfig (config, "CATMODE",                "%s",  0, CATMODE);
-  ScanConfig (config, "CATFORMAT",              "%s",  0, CATFORMAT);
+  char *tmpcatdir = abspath (CATDIR, DVO_MAX_PATH);
+  strcpy (CATDIR, tmpcatdir);
+  free (tmpcatdir);
+
   ScanConfig (config, "PHOTCODE_FILE",         	"%s",  0, MasterPhotcodeFile);
 
@@ -67,11 +71,8 @@
   }
 
-  if (*CATMODE == 0) strcpy (CATMODE, "RAW");
-  if (*CATFORMAT == 0) strcpy (CATFORMAT, "ELIXIR");
-
   /* XXX this does not yet write out the master photcode table */
   sprintf (CatdirPhotcodeFile, "%s/Photcodes.dat", CATDIR);
-  if (!LoadPhotcodes (CatdirPhotcodeFile, MasterPhotcodeFile, TRUE)) {
-    fprintf (stderr, "error loading photcode table %s or master file %s\n", CatdirPhotcodeFile, MasterPhotcodeFile);
+  if (!LoadPhotcodes (CatdirPhotcodeFile, NULL, TRUE)) {
+    fprintf (stderr, "error loading photcode table %s\n", CatdirPhotcodeFile);
     exit (1);
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/CopyBackupToHost.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/CopyBackupToHost.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/CopyBackupToHost.c	(revision 34041)
@@ -0,0 +1,188 @@
+# include "dvodist.h"
+
+# define DEBUG 1
+# define DELETE_ORIGINAL 0
+// make this a user option
+
+// copy all *.bck currently on the srcHost to dstHost
+int CopyBackupToHost (char *catdir, SkyList *skylist, HostTable *table) {
+
+  int i, j, k;
+  struct stat filestat;
+  char srcname[1024];
+  char tgtname[1024];
+  char outdir[1024];
+
+  md5_byte_t srcDigest[NDIGEST];
+  md5_byte_t tgtDigest[NDIGEST];
+    
+  uid_t uid = getuid();
+  gid_t gid = getgid();
+
+  // get the IDs for the src and dst machines
+  int srcID = 0;
+  int srcIndex = 0;
+  int dstID = 0;
+  int dstIndex = 0;
+  for (i = 0; i < table->Nhosts; i++) {
+    if (!strcmp (table->hosts[i].hostname, srcHostname)) { srcID = table->hosts[i].hostID; srcIndex = i; }
+    if (!strcmp (table->hosts[i].hostname, dstHostname)) { dstID = table->hosts[i].hostID; dstIndex = i; }
+  }
+  if (!srcID) {
+    fprintf (stderr, "failed to find source host %s\n", srcHostname);
+    exit (1);
+  }
+  if (!dstID) {
+    fprintf (stderr, "failed to find destination host %s\n", dstHostname);
+    exit (1);
+  }
+  if (srcID == dstID) {
+    fprintf (stderr, "invalid destination host %s : matches source host %s\n", dstHostname, srcHostname);
+    exit (1);
+  }
+
+  HostInfo *dstHost = &table->hosts[dstIndex];
+
+  int Nfailure = 0;
+  for (i = 0; i < skylist->Nregions; i++) {
+    // skip unassigned tables
+    if (skylist->regions[i]->hostID != srcID) continue;
+
+    // skip catalogs which have already been copied
+    if (skylist->regions[i]->hostFlags & DATA_ON_BCK) continue;
+
+    // skip catalogs which have an uncleared error
+    if (skylist->regions[i]->hostFlags & DATA_COPY_FAILURE) continue;
+
+    // assign the dstHost to the backup ID
+    skylist->regions[i]->backupID = dstID;
+
+    // we are copying CATDIR/*.bck to dstHost/pathname/*
+
+    // have to succeed on all 4 tables; if we fail on any one, mark it as failed
+    int success = TRUE;
+
+    char *subdir = pathname (skylist->regions[i]->name);
+    sprintf (outdir, "%s/%s", dstHost->pathname, subdir);
+    free (subdir);
+
+    int status = check_dir_access (outdir, DEBUG);
+    if (!status) {
+      fprintf (stderr, "failed to find / create target path\n");
+      exit (2);
+    }
+
+    char extname[4][16] = {"cpm", "cpt", "cps", "cpn"};
+    for (j = 0; success && (j < 4); j++) {
+
+      // set the in and out table names
+      sprintf (srcname, "%s/%s.%s.bck", catdir, skylist->regions[i]->name, extname[j]);
+      sprintf (tgtname, "%s/%s.%s", dstHost->pathname, skylist->regions[i]->name, extname[j]);
+
+      // does srcname exist & can it be read?
+
+      // check permission to read file 
+      status = stat (srcname, &filestat);
+      if (status) {
+	if (errno == ENOENT) continue;  // file does not exist (handle broken table with cpt + cpm but no cpn,cps?)
+	perror ("stat:");
+	fprintf (stderr, "failure to access file %s\n", srcname);
+	success = FALSE;
+	continue;
+      }
+    
+      // can we read the file?
+      if (uid == filestat.st_uid) {
+	if (filestat.st_mode & S_IRUSR) goto valid;
+      }
+      if (gid == filestat.st_gid) {
+	if (filestat.st_mode & S_IRGRP) goto valid;
+      }
+      if (filestat.st_mode & S_IROTH) goto valid;
+    
+      fprintf (stderr, "cannot read file %s, skipping\n", srcname);
+      success = FALSE;
+      continue;
+
+    valid:
+      if (j == 0) {
+	fprintf (stderr, "copying %s to %s\n", skylist->regions[i]->name, dstHost->pathname);
+      }
+
+      // read srcname, write to tgtname, get MD5 sum for srcname as we go:
+      // XXX files that fail here should be skipped (but don't give up)
+      if (!get_md5_with_copy (srcname, tgtname, srcDigest)) {
+	fprintf (stderr, "error reading %s, getting md5, or writing %s\n", srcname, tgtname);
+	success = FALSE;
+	continue;
+      }
+	
+      // need to re-open and re-read tgtname to check md5sum
+      // XXX files that fail here need to be checked
+      // char *absname = abspath (tgtname, 1024);
+      // if (!get_md5_from_pclient (host, absname, tgtDigest)) {
+      if (!get_md5_with_copy (tgtname, NULL, tgtDigest)) {
+	fprintf (stderr, "error reading %s or getting md5\n", tgtname);
+	success = FALSE;
+	continue;
+      }
+
+      // compare the two digest values
+      int match = TRUE;
+      for (k = 0; match && (k < NDIGEST); k++) {
+	match &= (tgtDigest[k] == srcDigest[k]);
+      }
+
+      if (!match) {
+	if (DEBUG) {
+	  fprintf (stderr, "failed to copy %s to %s\n", srcname, tgtname);
+	}
+	success = FALSE;
+      }
+    }	 
+
+    if (!success) {
+      // if we failed to make a copy, remove the failure, mark the failure so we can retry
+      skylist->regions[i]->hostFlags |= DATA_COPY_FAILURE;
+      for (j = 0; success && (j < 4); j++) {
+	sprintf (tgtname, "%s/%s.%s", dstHost->pathname, skylist->regions[i]->name, extname[j]);
+	if (!DEBUG) unlink (tgtname);
+      }
+      Nfailure ++;
+    } else {
+      skylist->regions[i]->hostFlags |= DATA_ON_BCK;
+    }
+  }
+  
+  if (!Nfailure) {
+    fprintf (stderr, "all tables successfully moved\n");
+  } else {
+    fprintf (stderr, "%d tables were not moved\n", Nfailure);
+  }
+
+  return (TRUE);
+}
+
+/* state table for copy to/from location 
+
+   data on src (local catdir)  : 00.hostID
+   data on tgt (remote catdir) : 10.hostID
+   failure to copy to tgt      : 01.hostID
+   failure to copy to src      : 11.hostID
+*/
+
+/*** 
+
+     hostID, backupID, and hostFlags:
+
+     hostID gives the primary location of the data
+     backupID gives the second location of the data
+     
+     DATA_ON_TGT  : 0x01 : file exists on hostID
+     DATA_ON_BCK  : 0x02 : file exists on backupID
+     DATA_USE_BCK : 0x04 : read from backupID, not hostID
+
+     DATA_COPY_FAILURE : error copying data to TGT (set for retry)
+
+
+ ***/
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/CopyFromHostLocation.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/CopyFromHostLocation.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/CopyFromHostLocation.c	(revision 34041)
@@ -0,0 +1,174 @@
+# include "dvodist.h"
+
+# define DEBUG 1
+# define DELETE_ORIGINAL 0
+// make this a user option
+
+// XXX collapse this and CopyToHostLocation (only difference is name of src/tgt and bits set on success)
+int CopyFromHostLocation (char *catdir, SkyList *skylist, HostTable *table) {
+
+  int i, j, k;
+  struct stat filestat;
+  char srcname[1024];
+  char tgtname[1024];
+  char outdir[1024];
+    
+  md5_byte_t srcDigest[NDIGEST];
+  md5_byte_t tgtDigest[NDIGEST];
+    
+  uid_t uid = getuid();
+  gid_t gid = getgid();
+
+  int Nfailure = 0;
+  for (i = 0; i < skylist->Nregions; i++) {
+    if (VERBOSE) fprintf (stderr, "%s\n", skylist[0].regions[i][0].name);
+    
+    // move each table from table->hosts[].pathname/name to CATDIR/name
+
+    // skip unassigned tables
+    if (!skylist->regions[i]->hostID) continue;
+
+    // skip catalogs which are not on remote location
+    if (!(skylist->regions[i]->hostFlags & DATA_ON_TGT)) continue;
+
+    // skip catalogs which have an uncleared error
+    if (skylist->regions[i]->hostFlags & DATA_COPY_FAILURE) continue;
+
+    // find the host for the table
+    int realID = skylist->regions[i]->hostID;
+    short index = table->index[realID];
+    HostInfo *host = &table->hosts[index];
+
+    // have to succeed on all 4 tables; if we fail on any one, 
+    int success = TRUE;
+
+    char *subdir = pathname (skylist->regions[i]->name);
+    sprintf (outdir, "%s/%s", host->pathname, subdir);
+    free (subdir);
+
+    int status = check_dir_access (outdir, DEBUG);
+    if (!status) {
+      fprintf (stderr, "failed to find / create target path\n");
+      exit (2);
+    }
+
+    char extname[4][16] = {"cpm", "cpt", "cps", "cpn"};
+    for (j = 0; success && (j < 4); j++) {
+
+      // set the in and out table names
+      sprintf (srcname, "%s/%s.%s", host->pathname, skylist->regions[i]->name, extname[j]);
+      sprintf (tgtname, "%s/%s.%s", catdir, skylist->regions[i]->name, extname[j]);
+
+      // does srcname exist & can it be read?
+
+      // check permission to read file 
+      status = stat (srcname, &filestat);
+      if (status) {
+	if (errno == ENOENT) continue;  // file does not exist (handle broken table with cpt + cpm but no cpn,cps?)
+	perror ("stat:");
+	fprintf (stderr, "failure to access file %s\n", srcname);
+	success = FALSE;
+	continue;
+      }
+    
+      // can we read the file?
+      if (uid == filestat.st_uid) {
+	if (filestat.st_mode & S_IRUSR) goto valid;
+      }
+      if (gid == filestat.st_gid) {
+	if (filestat.st_mode & S_IRGRP) goto valid;
+      }
+      if (filestat.st_mode & S_IROTH) goto valid;
+    
+      fprintf (stderr, "cannot read file %s, skipping\n", srcname);
+      success = FALSE;
+      continue;
+
+    valid:
+
+      // the output (tgtname) could exist and be a link to the same file; delete it if it exists
+      status = stat (tgtname, &filestat);
+      if (!status) {
+	// a tgtfile already exists; get rid of it
+	if (unlink (tgtname)) {
+	  fprintf (stderr, "failed to remove CATDIR file %s\n", tgtname);
+	  success = FALSE;
+	  continue;
+	}
+      }
+
+      // read srcname, write to tgtname, get MD5 sum for srcname as we go:
+      if (!get_md5_with_copy (srcname, tgtname, srcDigest)) {
+	fprintf (stderr, "error reading %s, getting md5, or writing %s\n", srcname, tgtname);
+	success = FALSE;
+	continue;
+      }
+	
+      // need to re-open and re-read tgtname to check md5sum
+      if (!get_md5_with_copy (tgtname, NULL, tgtDigest)) {
+	fprintf (stderr, "error reading %s or getting md5\n", tgtname);
+	success = FALSE;
+	continue;
+      }
+
+      // compare the two digest values
+      int match = TRUE;
+      for (k = 0; match && (k < NDIGEST); k++) {
+	match &= (tgtDigest[k] == srcDigest[k]);
+      }
+
+      if (!match) {
+	if (DEBUG) {
+	  fprintf (stderr, "failed to copy %s to %s\n", srcname, tgtname);
+	}
+	success = FALSE;
+      }
+    }
+
+    if (!success) {
+      // let's use the upper 2 bits of the hostID for informational purposes. this
+      // leaves us with up to 16383 hosts.
+
+      // data on src  = (hostID & 0x8000) >> 15
+      // copy failed  = (hostID & 0x4000) >> 14
+      // if we failed to make a copy, 
+	  
+      skylist->regions[i]->hostFlags |= DATA_COPY_FAILURE;
+      for (j = 0; success && (j < 4); j++) {
+	sprintf (tgtname, "%s/%s.%s", catdir, skylist->regions[i]->name, extname[j]);
+	if (!DEBUG) unlink (tgtname);
+      }
+      Nfailure ++;
+    } else {
+      skylist->regions[i]->hostFlags &= ~DATA_ON_TGT;
+      for (j = 0; success && (j < 4); j++) {
+	sprintf (srcname, "%s/%s.%s", host->pathname, skylist->regions[i]->name, extname[j]);
+	if (!DEBUG && DELETE_ORIGINAL) unlink (srcname);
+      }
+    }
+  }
+  
+  if (!Nfailure) {
+    fprintf (stderr, "all tables successfully moved\n");
+  } else {
+    fprintf (stderr, "%d tables were not moved\n", Nfailure);
+  }
+
+  return (TRUE);
+}
+
+/* state table for copy to/from location 
+
+   data on src (local catdir)  : 00.hostID
+   data on tgt (remote catdir) : 10.hostID
+   failure to copy to tgt      : 01.hostID
+   failure to copy to src      : 11.hostID
+*/
+
+/* need to think a bit about behavior in the context of SPLIT vs MEF:
+
+ * SPLIT : all 4 tables either exist or none do
+ * MEF only cpt table exists
+
+ * read the SPLIT headers to see if MEASURE, MISSING, SECFILT fields exist?
+ */
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/CopyToHostLocation.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/CopyToHostLocation.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/CopyToHostLocation.c	(revision 34041)
@@ -0,0 +1,195 @@
+# include "dvodist.h"
+
+# define DEBUG 1
+# define DELETE_ORIGINAL 0
+// make this a user option
+
+// XXX collapse this and CopyFromHostLocation (only difference is name of src/tgt and bits set on success)
+int CopyToHostLocation (char *catdir, SkyList *skylist, HostTable *table) {
+
+  int i, j, k;
+  struct stat filestat;
+  char srcname[1024];
+  char newname[1024];
+  char tgtname[1024];
+  char outdir[1024];
+
+  md5_byte_t srcDigest[NDIGEST];
+  md5_byte_t tgtDigest[NDIGEST];
+    
+  uid_t uid = getuid();
+  gid_t gid = getgid();
+
+  int Nfailure = 0;
+  for (i = 0; i < skylist->Nregions; i++) {
+    if (VERBOSE) fprintf (stderr, "%s\n", skylist[0].regions[i][0].name);
+    
+    // move each table from CATDIR/name to table->hosts[].pathname/name
+
+    // skip unassigned tables
+    if (!skylist->regions[i]->hostID) continue;
+
+    // skip catalogs which have already been copied
+    if (skylist->regions[i]->hostFlags & DATA_ON_TGT) continue;
+
+    // skip catalogs which have an uncleared error
+    if (skylist->regions[i]->hostFlags & DATA_COPY_FAILURE) continue;
+
+    // find the host for the table
+    int realID = skylist->regions[i]->hostID;
+    short index = table->index[realID];
+    HostInfo *host = &table->hosts[index];
+
+    // have to succeed on all 4 tables; if we fail on any one, 
+    int success = TRUE;
+
+    char *subdir = pathname (skylist->regions[i]->name);
+    sprintf (outdir, "%s/%s", host->pathname, subdir);
+    free (subdir);
+
+    int status = check_dir_access (outdir, DEBUG);
+    if (!status) {
+      fprintf (stderr, "failed to find / create target path\n");
+      exit (2);
+    }
+
+    char extname[4][16] = {"cpm", "cpt", "cps", "cpn"};
+    for (j = 0; success && (j < 4); j++) {
+
+      // set the in and out table names
+      sprintf (srcname, "%s/%s.%s", catdir, skylist->regions[i]->name, extname[j]);
+      sprintf (tgtname, "%s/%s.%s", host->pathname, skylist->regions[i]->name, extname[j]);
+
+      // does srcname exist & can it be read?
+
+      // check permission to read file 
+      status = stat (srcname, &filestat);
+      if (status) {
+	if (errno == ENOENT) continue;  // file does not exist (handle broken table with cpt + cpm but no cpn,cps?)
+	perror ("stat:");
+	fprintf (stderr, "failure to access file %s\n", srcname);
+	success = FALSE;
+	continue;
+      }
+    
+      // can we read the file?
+      if (uid == filestat.st_uid) {
+	if (filestat.st_mode & S_IRUSR) goto valid;
+      }
+      if (gid == filestat.st_gid) {
+	if (filestat.st_mode & S_IRGRP) goto valid;
+      }
+      if (filestat.st_mode & S_IROTH) goto valid;
+    
+      fprintf (stderr, "cannot read file %s, skipping\n", srcname);
+      success = FALSE;
+      continue;
+
+    valid:
+      // read srcname, write to tgtname, get MD5 sum for srcname as we go:
+      // XXX files that fail here should be skipped (but don't give up)
+      if (!get_md5_with_copy (srcname, tgtname, srcDigest)) {
+	fprintf (stderr, "error reading %s, getting md5, or writing %s\n", srcname, tgtname);
+	success = FALSE;
+	continue;
+      }
+	
+      // need to re-open and re-read tgtname to check md5sum
+      // XXX files that fail here need to be checked
+      // char *absname = abspath (tgtname, 1024);
+      // if (!get_md5_from_pclient (host, absname, tgtDigest)) {
+      if (!get_md5_with_copy (tgtname, NULL, tgtDigest)) {
+	fprintf (stderr, "error reading %s or getting md5\n", tgtname);
+	success = FALSE;
+	continue;
+      }
+
+      // compare the two digest values
+      int match = TRUE;
+      for (k = 0; match && (k < NDIGEST); k++) {
+	match &= (tgtDigest[k] == srcDigest[k]);
+      }
+
+      if (!match) {
+	if (DEBUG) {
+	  fprintf (stderr, "failed to copy %s to %s\n", srcname, tgtname);
+	}
+	success = FALSE;
+      }
+    }	 
+
+    if (!success) {
+      // let's use the upper 2 bits of the hostID for informational purposes. this
+      // leaves us with up to 16383 hosts.
+
+      // data on src  = (hostID & 0x8000) >> 15
+      // copy failed  = (hostID & 0x4000) >> 14
+      // if we failed to make a copy, 
+	  
+      skylist->regions[i]->hostFlags |= DATA_COPY_FAILURE;
+      for (j = 0; success && (j < 4); j++) {
+	sprintf (tgtname, "%s/%s.%s", host->pathname, skylist->regions[i]->name, extname[j]);
+	if (!DEBUG) unlink (tgtname);
+      }
+      Nfailure ++;
+    } else {
+      skylist->regions[i]->hostFlags |= DATA_ON_TGT;
+      for (j = 0; success && (j < 4); j++) {
+	sprintf (tgtname, "%s/%s.%s", host->pathname, skylist->regions[i]->name, extname[j]);
+	sprintf (srcname, "%s/%s.%s", catdir, skylist->regions[i]->name, extname[j]);
+ 
+ 	// do not rename or unlink original if it does not exist..
+ 	status = stat (srcname, &filestat);
+ 	if (status && (errno == ENOENT)) continue;  
+
+	if (!DEBUG && DELETE_ORIGINAL) {
+	  unlink (srcname);
+	} else {
+	  sprintf (newname, "%s/%s.%s.bck", catdir, skylist->regions[i]->name, extname[j]);
+	  status = stat (newname, &filestat);
+	  if (!status) {
+	    // a backup file already exists; get rid of it
+	    if (unlink (newname)) {
+	      fprintf (stderr, "failed to remove old backup file %s\n", newname);
+	      continue;
+	    }
+	  }
+	  if (rename (srcname, newname)) {
+	    fprintf (stderr, "failed to rename %s to %s\n", srcname, newname);
+	    continue;
+	  }
+	  char *absname = abspath (tgtname, 1024);
+	  if (symlink (absname, srcname)) {
+	    fprintf (stderr, "failed to make symlink from %s to %s\n", absname, srcname);
+	  }
+	  free (absname);
+	}
+      }
+    }
+  }
+  
+  if (!Nfailure) {
+    fprintf (stderr, "all tables successfully moved\n");
+  } else {
+    fprintf (stderr, "%d tables were not moved\n", Nfailure);
+  }
+
+  return (TRUE);
+}
+
+/* state table for copy to/from location 
+
+   data on src (local catdir)  : 00.hostID
+   data on tgt (remote catdir) : 10.hostID
+   failure to copy to tgt      : 01.hostID
+   failure to copy to src      : 11.hostID
+*/
+
+/* need to think a bit about behavior in the context of SPLIT vs MEF:
+
+ * SPLIT : all 4 tables either exist or none do
+ * MEF only cpt table exists
+
+ * read the SPLIT headers to see if MEASURE, MISSING, SECFILT fields exist?
+ */
+
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/FixSkyForHost.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/FixSkyForHost.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/FixSkyForHost.c	(revision 34041)
@@ -0,0 +1,52 @@
+# include "dvodist.h"
+# define DEBUG 0
+
+// examine all of the filenames in the catdir directories and update the host table to note the correct locations
+int FixSkyForHost (char *catdir, SkyList *skylist, HostTable *table) {
+
+  int i, j;
+
+  for (i = 0; i < skylist->Nregions; i++) {
+    
+    if (i && (i % 1000 == 0)) fprintf (stderr, ".");
+
+    struct stat filestat;
+
+    // filename of copy at CATDIR
+    char rawfile[1024];
+    snprintf (rawfile, 1024, "%s/%s.cpt", catdir, skylist[0].regions[i]->name);
+    
+    int status = lstat (rawfile, &filestat);
+    if (status == -1) {
+      if (errno == ENOENT) continue;
+      fprintf (stderr, "failed to STAT file %s\n", rawfile);
+      continue;
+    }
+
+    if (!S_ISLNK(filestat.st_mode)) continue;
+
+    char linkfile[1024];
+    ssize_t Nbytes = readlink (rawfile, linkfile, 1024);
+    if  (Nbytes == -1) {
+      fprintf (stderr, "error reading link %s\n", rawfile);
+      continue;
+    }
+       
+    int found = FALSE;
+    for (j = 0; !found && (j < table->Nhosts); j++) {
+      if (strncmp (linkfile, table->hosts[j].pathname, strlen(table->hosts[j].pathname))) continue;
+      // found the host
+      HostInfo *host = &table->hosts[j];
+      skylist->regions[i]->hostID = host->hostID;
+      skylist->regions[i]->hostFlags |= DATA_ON_TGT;
+      found = TRUE;
+
+      if (DEBUG) fprintf (stderr, "found %s on %s\n", rawfile, host->hostname);
+    }  
+      
+    if (!found) {
+      fprintf (stderr, "failed to find host for %s (%s)\n", rawfile, linkfile);
+    }
+  }      
+  return (TRUE);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/HostTableLoad.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/HostTableLoad.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/HostTableLoad.c	(revision 34041)
@@ -0,0 +1,37 @@
+# include "dvodist.h"
+# define DEBUG 1
+
+int CheckHostsAndPaths (HostTable *table) {
+
+  int i;
+  char command[64];
+  char shell[64];
+
+  strcpy (command, "ssh");
+  strcpy (shell, "pclient");
+
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // verify that I can ssh to this machine
+    if (DEBUG) fprintf (stderr, "starting host within thread\n");
+
+    int errorInfo;
+    int pid = rconnect (command, table->hosts[i].hostname, shell, table->hosts[i].stdio, &errorInfo, TRUE);
+    if (!pid) {     
+      /** failure to start: extend retry period **/
+      if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+      exit (1);
+    }
+    table->hosts[i].pid = pid;
+    // keep the connection open to use for md5sum check
+
+    int status = check_dir_access (table->hosts[i].pathname, DEBUG);
+    if (!status) {
+      fprintf (stderr, "failed to find / create target path\n");
+      exit (2);
+    }
+
+    fprintf (stderr, "success : %s, %s\n", table->hosts[i].hostname, table->hosts[i].pathname);
+  }
+  return (TRUE);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/PclientCommands.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/PclientCommands.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/PclientCommands.c	(revision 34041)
@@ -0,0 +1,208 @@
+# include "dvodist.h"
+# define PCLIENT_TIMEOUT 1000
+# define DEBUG 0
+
+// send a command and check for errors; ignore output
+int PclientCommand (HostInfo *host, char *command, IOBuffer *buffer) {
+
+  int status;
+
+  // flush the stdout and stderr buffers here
+  ReadtoIOBuffer (buffer, host->stdio[1]);
+  FlushIOBuffer (buffer);
+  ReadtoIOBuffer (buffer, host->stdio[2]);
+  FlushIOBuffer (buffer);
+
+  /* send command to client (adding on \n) */
+  status = write_fmt (host->stdio[0], "%s\n", command);
+
+  /* is pipe still open? */
+  if ((status == -1) && (errno == EPIPE)) {
+    fprintf (stderr, "pclient read gives pipe error for %s\n", command);
+    return FALSE;
+  }
+
+  FlushIOBuffer (buffer);
+
+  return TRUE;
+}
+  
+// check for response; message must end with specified string.
+// accumulate the response in the buffer
+int PclientResponse (HostInfo *host, char *response, IOBuffer *buffer) {
+
+  int i;
+  int status;
+  char *line;
+  struct timespec request, remain;
+
+  /* avoid blocking very long on read, test every 100 usec, up to 0.1 sec */
+  request.tv_sec = 0;
+  request.tv_nsec = 100000;
+
+  /* watch for response - wait up to 1 second */
+  line = NULL;
+  status = -1;
+
+  // how long does each cycle really take?
+  for (i = 0; (i < PCLIENT_TIMEOUT) && (status != 0) && (line == NULL); i++) {
+    status = ReadtoIOBuffer (buffer, host->stdio[1]);
+    line = memstr (buffer->buffer, response, buffer->Nbuffer);
+    if (status == -1) nanosleep (&request, &remain);
+  }
+  if (status ==  0) {
+    fprintf (stderr, "pclient read returns 0 for %s\n", response);
+    return FALSE;
+  }
+  if (!line) {
+      fprintf (stderr, "client hung\n");
+      return FALSE;
+  }
+  if (status == -1) {
+      fprintf (stderr, "client hung\n");
+      return FALSE;
+  }
+
+  // fprintf (stderr, "response: %s\n", buffer->buffer);
+
+  return TRUE;
+}
+
+int GetJobOutput (char *command, HostInfo *host, IOBuffer *output, int size) {
+  
+    char *line;
+    int i, status;
+    struct timespec request, remain;
+
+    /* avoid blocking on waitpid, test every 100 usec, up to 10 msec */
+    request.tv_sec = 0;
+    request.tv_nsec = 100000;
+
+    status = write_fmt (host->stdio[0], "%s\n", command);
+
+    if ((status == -1) && (errno == EPIPE)) {
+	fprintf (stderr, "host crashed?\n");
+	goto escape;
+    }
+
+    // attempt to read the output->size bytes from the host 
+    for (i = 0; (i < PCLIENT_TIMEOUT) && (status != 0) && (output->Nbuffer < size); i++) {
+	status = ReadtoIOBuffer (output, host->stdio[1]);
+	if (status == -1) nanosleep (&request, &remain);
+    }
+    if (DEBUG) fprintf (stderr, "Read %d of %d bytes so far\n", output->Nbuffer, size);
+    if (status == 0) {
+	fprintf (stderr, "client down\n");
+	goto escape;
+    }
+    if (output->Nbuffer < size) {
+	fprintf (stderr, "client hung\n");
+	goto escape;
+    }
+
+    // keep trying to read until we get the prompt
+    line = NULL;
+    status = -1;
+    for (i = 0; (i < PCLIENT_TIMEOUT) && (status != 0) && (line == NULL); i++) {
+	status = ReadtoIOBuffer (output, host->stdio[1]);
+	line = memstr (output->buffer, PCLIENT_PROMPT, output->Nbuffer);
+	if (status == -1) nanosleep (&request, &remain);
+    }
+    if (DEBUG) fprintf (stderr, "Read %d of %d bytes so far\n", output->Nbuffer, size);
+    if (!status) {
+	fprintf (stderr, "pclient down?\n");	      // return PCLIENT_DOWN;
+	goto escape;
+    }
+    if (!line) {
+	fprintf (stderr, "pclient hung?\n");		      // return PCLIENT_HUNG;
+	goto escape;
+    }
+    return TRUE;
+
+escape:
+    return FALSE;
+}
+
+int CheckBusyJob (HostInfo *host, IOBuffer *stdout_buf, IOBuffer *stderr_buf) {
+
+  int status;
+  char *p;
+  char string[64];
+  IOBuffer buffer;
+
+  InitIOBuffer (&buffer, 100);
+  status = PclientCommand (host, "status", &buffer);
+  status = PclientResponse (host, PCLIENT_PROMPT, &buffer);
+
+  /** need to parse message **/
+  p = memstr (buffer.buffer, "STATUS", buffer.Nbuffer);
+  if (p == NULL) {
+    if (DEBUG) fprintf (stderr, "missing STATUS in response; try again?\n");
+    FreeIOBuffer (&buffer);
+    return FALSE;
+  }
+
+  sscanf (p, "%*s %s", string);
+  if (!strcmp(string, "NONE")) {
+    if (DEBUG) fprintf (stderr, "not started?\n");
+    FreeIOBuffer (&buffer);
+    return FALSE;
+  }
+  
+  /** no status change, return to BUSY stack **/
+  if (!strcmp(string, "BUSY")) {
+    if (DEBUG) fprintf (stderr, "not yet done...\n");
+    FreeIOBuffer (&buffer);
+    return FALSE;
+  }
+  
+  /* exit status better be either EXIT or CRASH */
+  if (!strcmp(string, "CRASH")) {
+    fprintf (stderr, "crash on host...\n");
+    FreeIOBuffer (&buffer);
+    return FALSE;
+  }
+
+  if (strcmp(string, "EXIT")) {
+    fprintf (stderr, "error in status string?\n");
+    FreeIOBuffer (&buffer);
+    return FALSE;
+  }
+
+  int exit_status, stdout_buf_size, stderr_buf_size;
+
+  /* parse the exit status and sizes of output buffers */
+  p = memstr (buffer.buffer, "EXITST", buffer.Nbuffer);
+  sscanf (p, "%*s %d", &exit_status);
+  p = memstr (buffer.buffer, "STDOUT", buffer.Nbuffer);
+  sscanf (p, "%*s %d", &stdout_buf_size);
+  p = memstr (buffer.buffer, "STDERR", buffer.Nbuffer);
+  sscanf (p, "%*s %d", &stderr_buf_size);
+
+  // XXX runaway job if output too large?
+  if (stdout_buf_size > 0x1000000) abort();
+  if (stderr_buf_size > 0x1000000) abort();
+
+  if (stdout_buf_size) {
+    GetJobOutput ("stdout", host, stdout_buf, stdout_buf_size);
+  } else {
+    ReadtoIOBuffer (&buffer, host->stdio[1]);
+  }
+  if (stderr_buf_size) {
+    GetJobOutput ("stderr", host, stderr_buf, stderr_buf_size);
+  } else {
+    ReadtoIOBuffer (&buffer, host->stdio[2]);
+  } 
+
+  FreeIOBuffer (&buffer);
+  return TRUE;
+}
+
+/* memstr returns a view, not an allocated string : don't free */
+/* ReadtoIOBuffer returns : 
+    0 - pipe closed
+   -1 - no more data in pipe, data not ready
+   -2 - serious error reading from pipe
+   >0 - data read from pipe
+*/
+
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/Shutdown_dvodist.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/Shutdown_dvodist.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/Shutdown_dvodist.c	(revision 34041)
@@ -0,0 +1,49 @@
+# include "dvodist.h"
+
+static FITS_DB db;
+
+void LockDatabase (char *catdir) {
+
+  char ImageCat[1024];
+
+  // lock image table
+  snprintf (ImageCat, 1024, "%s/Images.dat", catdir);
+
+  // lock the image db table 
+  int status = dvo_image_lock (&db, ImageCat, 60.0, LCK_XCLD);
+  if (!status) {
+    Shutdown ("ERROR: failure to lock image catalog %s", db.filename);
+  }
+
+  // if the file is missing, the function above will succeed, but the db.dbstate will have
+  // a value of either: LCK_EMPTY or LCK_MISSING
+  if ((db.dbstate == LCK_EMPTY) || (db.dbstate == LCK_MISSING)) {
+    Shutdown ("no images?");
+  }
+
+  // XXX this program should be able to operate on a dvo database without any images (like
+  // 2MASS).  but, we still need to lock the database when moving the files around to
+  // avoid collisions.  So, we probably need to create an empty image table and lock it if
+  // there are no images at this time.
+}
+
+/* clean up open / locked ImageCat before shutting down */
+int Shutdown (char *format, ...) {  
+  va_list argp;
+  char *formatplus;
+  
+  ALLOCATE (formatplus, char, strlen(format));
+  strcpy (formatplus, format);
+  strcat (formatplus, "\n");
+
+  va_start (argp, format);
+  vfprintf (stderr, formatplus, argp);
+  free (formatplus);
+  va_end (argp);
+
+  // XXX this is in SetSignals.c, which includes photdbc.h
+  SetProtect (TRUE);
+  gfits_db_close (&db);
+  fprintf (stderr, "ERROR: dvodist halted\n");
+  exit (1);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/UseBackupForHost.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/UseBackupForHost.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/UseBackupForHost.c	(revision 34041)
@@ -0,0 +1,57 @@
+# include "dvodist.h"
+
+# define DEBUG 1
+# define DELETE_ORIGINAL 0
+// make this a user option
+
+// set DATA_USE_BCK for all tables with DATA_ON_BCK and host matches srcHost
+int UseBackupForHost (char *catdir, SkyList *skylist, HostTable *table) {
+
+  int i;
+  int srcID, srcIndex;
+
+  // get the IDs for the src and dst machines
+  srcID = srcIndex = 0;
+  for (i = 0; i < table->Nhosts; i++) {
+    if (!strcmp (table->hosts[i].hostname, srcHostname)) { 
+      srcID = table->hosts[i].hostID; 
+      srcIndex = i; 
+    }
+  }
+  if (!srcID) {
+    fprintf (stderr, "failed to find source host %s\n", srcHostname);
+    exit (1);
+  }
+
+  for (i = 0; i < skylist->Nregions; i++) {
+    // skip unassigned tables
+    if (skylist->regions[i]->hostID != srcID) continue;
+
+    // skip catalogs which have not been copied
+    if (!(skylist->regions[i]->hostFlags & DATA_ON_BCK)) continue;
+
+    // skip catalogs which have an uncleared error
+    if (skylist->regions[i]->hostFlags & DATA_COPY_FAILURE) continue;
+
+    // set the USE_BCK flag
+    skylist->regions[i]->hostFlags |= DATA_USE_BCK;
+  }
+  
+  return (TRUE);
+}
+
+/*** 
+
+     hostID, backupID, and hostFlags:
+
+     hostID gives the primary location of the data
+     backupID gives the second location of the data
+     
+     DATA_ON_TGT  : 0x01 : file exists on hostID
+     DATA_ON_BCK  : 0x02 : file exists on backupID
+     DATA_USE_BCK : 0x04 : read from backupID, not hostID
+
+     DATA_COPY_FAILURE : error copying data to TGT (set for retry)
+
+
+ ***/
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/args.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/args.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/args.c	(revision 34041)
@@ -40,4 +40,20 @@
     remove_argument (N, &argc, argv);
     MAX_MIN_MAG = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  // override input catalog format (PS1_V1, PS1_REF, etc)
+  CATFORMAT = NULL;
+  if ((N = get_argument (argc, argv, "-set-format"))) {
+    remove_argument (N, &argc, argv);
+    CATFORMAT = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  // override input catalog mode (raw, mef, split, mysql)
+  CATMODE = NULL;
+  if ((N = get_argument (argc, argv, "-set-mode"))) {
+    remove_argument (N, &argc, argv);
+    CATMODE = strcreate (argv[N]);
     remove_argument (N, &argc, argv);
   }
@@ -80,4 +96,32 @@
     remove_argument (N, &argc, argv);
     PHOTCODE_SKIP_LIST = strcreate(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  // XXX for the moment, make this selection manual.  it needs to be automatic 
+  // based on the state of the SkyTable
+  PARALLEL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel"))) {
+    PARALLEL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  // this is a test mode : rather than launching the remote jobs and waiting for completion,
+  // relphot will simply list the remote command and wait for the user to signal completion
+  PARALLEL_MANUAL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel-manual"))) {
+    PARALLEL = TRUE; // -parallel-manual implies -parallel
+    PARALLEL_MANUAL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  // this is a test mode : rather than launching the relphot_client jobs remotely, they are 
+  // run in serial via 'system'
+  PARALLEL_SERIAL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel-serial"))) {
+    if (PARALLEL_MANUAL) {
+      fprintf (stderr, "ERROR: cannot mix -parallel-manual and -parallel-serial\n");
+      exit (1);
+    }
+    PARALLEL = TRUE; // -parallel-serial implies -parallel
+    PARALLEL_SERIAL = TRUE;
     remove_argument (N, &argc, argv);
   }
@@ -99,4 +143,138 @@
 }
 
+int args_client (int argc, char **argv) {
+
+  int N;
+
+  PARALLEL = FALSE;
+  PARALLEL_MANUAL = FALSE;
+  PARALLEL_SERIAL = FALSE;
+
+  HOST_ID = 0;
+  if ((N = get_argument (argc, argv, "-hostID"))) {
+    remove_argument (N, &argc, argv);
+    HOST_ID = atoi (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!HOST_ID) usage();
+
+  HOSTDIR = NULL;
+  if ((N = get_argument (argc, argv, "-hostdir"))) {
+    remove_argument (N, &argc, argv);
+    HOSTDIR = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!HOSTDIR) usage();
+
+  VERBOSE = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    VERBOSE = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  SHOW_PARAMS = FALSE;
+  if ((N = get_argument (argc, argv, "-params"))) {
+    remove_argument (N, &argc, argv);
+    SHOW_PARAMS = TRUE;
+  }
+
+  ExcludeByInstMag = FALSE;
+  if ((N = get_argument (argc, argv, "-instmag"))) {
+    ExcludeByInstMag = TRUE;
+    remove_argument (N, &argc, argv);
+    INST_MAG_MIN = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+    INST_MAG_MAX = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  ExcludeByMinSigma = FALSE;
+  if ((N = get_argument (argc, argv, "-min-sigma"))) {
+    ExcludeByMinSigma = TRUE;
+    remove_argument (N, &argc, argv);
+    SIGMA_MIN_KEEP = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  ExcludeByMaxMinMag = FALSE;
+  if ((N = get_argument (argc, argv, "-maxminmag"))) {
+    ExcludeByMaxMinMag = TRUE;
+    remove_argument (N, &argc, argv);
+    MAX_MIN_MAG = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  // override input catalog format (PS1_V1, PS1_REF, etc)
+  CATFORMAT = NULL;
+  if ((N = get_argument (argc, argv, "-set-format"))) {
+    remove_argument (N, &argc, argv);
+    CATFORMAT = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  // override input catalog mode (raw, mef, split, mysql)
+  CATMODE = NULL;
+  if ((N = get_argument (argc, argv, "-set-mode"))) {
+    remove_argument (N, &argc, argv);
+    CATMODE = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  /* specify portion of the sky */
+  REGION.Rmin = 0;
+  REGION.Rmax = 360;
+  REGION.Dmin = -90;
+  REGION.Dmax = +90;
+  if ((N = get_argument (argc, argv, "-region"))) {
+    remove_argument (N, &argc, argv);
+    REGION.Rmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    REGION.Rmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    REGION.Dmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    REGION.Dmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+
+    if (REGION.Rmin == REGION.Rmax) {
+      fprintf (stderr, "ERROR: selected region is ill-defined: Rmin == Rmax\n");
+      exit (2);
+    }
+    if (REGION.Dmin == REGION.Dmax) {
+      fprintf (stderr, "ERROR: selected region is ill-defined: Dmin == Dmax\n");
+      exit (2);
+    }
+  }
+
+  PHOTCODE_DROP_LIST = NULL;
+  if ((N = get_argument (argc, argv, "-photcode-drop"))) {
+    remove_argument (N, &argc, argv);
+    PHOTCODE_DROP_LIST = strcreate(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  PHOTCODE_SKIP_LIST = NULL;
+  if ((N = get_argument (argc, argv, "-photcode-skip"))) {
+    remove_argument (N, &argc, argv);
+    PHOTCODE_SKIP_LIST = strcreate(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  if (argc != 2) usage();
+
+  if ((REGION.Rmin == 0) && (REGION.Rmax == 360) && (REGION.Dmin == -90) && (REGION.Dmax == +90)) {
+    int i;
+    fprintf (stderr, "you have requested a copy of the entire sky in one pass\n");
+    fprintf (stderr, "this could be a time consuming operation.  type Ctrl-C within 5 seconds to cancel\n");
+    for (i = 5; i > 0; i--) {
+      fprintf (stderr, "%d.. ", i);
+      usleep (1000000);
+    }
+    fprintf (stderr, "\n");
+  }
+
+  return (TRUE);
+}
+
 void usage() {
 
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/copy_images.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/copy_images.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/copy_images.c	(revision 34041)
@@ -41,6 +41,6 @@
   if (out.dbstate != LCK_EMPTY) Shutdown ("ERROR: image table exists %s", ImageOut);
 
-  out.mode   = dvo_catalog_catmode (CATMODE);
-  out.format = dvo_catalog_catformat (CATFORMAT);
+  out.mode   = CATMODE   ? dvo_catalog_catmode (CATMODE)     : in.mode;
+  out.format = CATFORMAT ? dvo_catalog_catformat (CATFORMAT) : in.format;
   dvo_image_create (&out, ZERO_POINT);
     
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/dvodist.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/dvodist.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/dvodist.c	(revision 34041)
@@ -0,0 +1,60 @@
+# include "dvodist.h"
+
+// dvodist (-out | -in) (catdir)
+// dvodist -out : copy catalog tables to distributed locations in host table (from catdir)
+// dvodist -in  : copy catalog tables to catdir (from distributed locations in host table)
+
+int main (int argc, char **argv) {
+
+  SkyTable *sky;
+  SkyList *skylist;
+
+  /* get configuration info, args, lockfile */
+  SetSignals ();
+  initialize (argc, argv);
+  char *catdir = strcreate (argv[1]);
+
+  // LockDatabase (catdir);
+  
+  // load the current SkyTable. If SkyTable does not exist, we must fail
+  sky = SkyTableLoadOptimal (catdir, NULL, NULL, TRUE, SKY_DEPTH_HST, VERBOSE);
+  SkyTableSetFilenames (sky, catdir, "cpt");
+  skylist = SkyListByPatch (sky, -1, &UserPatch);
+
+  HostTable *hosts = HostTableLoad (catdir, sky->hosts);
+  if (!hosts) {
+    Shutdown ("failed to load Host Table %s for %s\n", catdir, sky->hosts);
+  }
+
+  // XXX I would like to do something so a big dvodist operation is easy to recover
+  // XXX BUT, I cannot save the table here without some caution (byteswap to and fro)
+
+  switch (MODE) {
+    case MODE_OUT:
+      CheckHostsAndPaths(hosts);
+      AssignSkyToHost (skylist, hosts);
+      CopyToHostLocation (catdir, skylist, hosts);
+      break;
+    case MODE_IN:
+      CheckHostsAndPaths(hosts);
+      CopyFromHostLocation (catdir, skylist, hosts);
+      break;
+    case MODE_FIX:
+      FixSkyForHost (catdir, skylist, hosts);
+      break;
+    case MODE_OUT_BACKUP:
+      CopyBackupToHost (catdir, skylist, hosts);
+      break;
+    case MODE_USE_BACKUP:
+      UseBackupForHost (catdir, skylist, hosts);
+      break;
+    default:
+      fprintf (stderr, "impossible!");
+      abort();
+  }
+
+  char *skyfile = SkyTableFilename (catdir);
+  SkyTableSave (sky, skyfile);
+
+  exit (0);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/initialize.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/initialize.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/initialize.c	(revision 34041)
@@ -2,7 +2,4 @@
 
 void initialize (int argc, char **argv) {
-
-  int NPHOTCODES;
-  char *codename, *ptr, *list;
 
   /* are these set correctly? */
@@ -15,45 +12,6 @@
   args (argc, argv);
 
-  NphotcodesDrop = 0;
-  photcodesDrop = NULL;
-  if (PHOTCODE_DROP_LIST != NULL) {
-    NPHOTCODES = 10;
-    ALLOCATE (photcodesDrop, PhotCode *, NPHOTCODES);
-
-    /* parse the comma-separated list of photcodesDrop */
-    list = PHOTCODE_DROP_LIST;
-    while ((codename = strtok_r (list, ",", &ptr)) != NULL) {
-      list = NULL; // pass NULL on successive strtok_r calls
-      fprintf (stderr, "PHOTCODE_LIST: %s\n", PHOTCODE_DROP_LIST);
-      fprintf (stderr, "codename: %s\n", codename);
-      if ((photcodesDrop[NphotcodesDrop] = GetPhotcodebyName (codename)) == NULL) {
-        fprintf (stderr, "ERROR: photcode %s not found in photcode table\n", codename);
-        exit (1);
-      }
-      NphotcodesDrop ++;
-      CHECK_REALLOCATE (photcodesDrop, PhotCode *, NPHOTCODES, NphotcodesDrop, 10);
-    }
-  }
-
-  NphotcodesSkip = 0;
-  photcodesSkip = NULL;
-  if (PHOTCODE_SKIP_LIST != NULL) {
-    NPHOTCODES = 10;
-    ALLOCATE (photcodesSkip, PhotCode *, NPHOTCODES);
-
-    /* parse the comma-separated list of photcodesSkip */
-    list = PHOTCODE_SKIP_LIST;
-    while ((codename = strtok_r (list, ",", &ptr)) != NULL) {
-      list = NULL; // pass NULL on successive strtok_r calls
-      fprintf (stderr, "PHOTCODE_LIST: %s\n", PHOTCODE_SKIP_LIST);
-      fprintf (stderr, "codename: %s\n", codename);
-      if ((photcodesSkip[NphotcodesSkip] = GetPhotcodebyName (codename)) == NULL) {
-        fprintf (stderr, "ERROR: photcode %s not found in photcode table\n", codename);
-        exit (1);
-      }
-      NphotcodesSkip ++;
-      CHECK_REALLOCATE (photcodesSkip, PhotCode *, NPHOTCODES, NphotcodesSkip, 10);
-    }
-  }
+  photcodesDrop = ParsePhotcodeList (PHOTCODE_DROP_LIST, &NphotcodesDrop, FALSE);
+  photcodesSkip = ParsePhotcodeList (PHOTCODE_SKIP_LIST, &NphotcodesSkip, FALSE);
 
   if (SHOW_PARAMS) {
@@ -84,2 +42,42 @@
 }
 
+void initialize_client (int argc, char **argv) {
+
+  /* are these set correctly? */
+  if (get_argument (argc, argv, "-h")) usage();
+  if (get_argument (argc, argv, "--h")) usage();
+  if (get_argument (argc, argv, "-help")) usage();
+  if (get_argument (argc, argv, "--help")) usage();
+
+  ConfigInit (&argc, argv);
+  args_client (argc, argv);
+
+  photcodesDrop = ParsePhotcodeList (PHOTCODE_DROP_LIST, &NphotcodesDrop, FALSE);
+  photcodesSkip = ParsePhotcodeList (PHOTCODE_SKIP_LIST, &NphotcodesSkip, FALSE);
+
+  if (SHOW_PARAMS) {
+    fprintf (stderr, "current parameter settings:\n");
+    fprintf (stderr, "VERBOSE:                %d\n", VERBOSE);
+    fprintf (stderr, "JOIN_RADIUS:           %lf\n", JOIN_RADIUS);
+    fprintf (stderr, "UNIQ_RADIUS:           %lf\n", UNIQ_RADIUS);
+						     
+    fprintf (stderr, "XMIN:                  %lf\n", XMIN);
+    fprintf (stderr, "XMAX:                  %lf\n", XMAX);
+    fprintf (stderr, "YMIN:                  %lf\n", YMIN);
+    fprintf (stderr, "YMAX:                  %lf\n", YMAX);
+    fprintf (stderr, "MMIN:                  %lf\n", MMIN);
+    fprintf (stderr, "MMAX:                  %lf\n", MMAX);
+    fprintf (stderr, "DMCAL_MIN:             %lf\n", DMCAL_MIN);
+    fprintf (stderr, "DMSYS:                 %lf\n", DMSYS);
+						     
+    fprintf (stderr, "CHISQ_MAX:             %lf\n", CHISQ_MAX);
+    fprintf (stderr, "NMEAS_MIN:             %d\n",  NMEAS_MIN);
+
+    fprintf (stderr, "IMAGE_CATALOG          %s\n",  ImageCat);
+    fprintf (stderr, "GSCFILE                %s\n",  GSCFILE);
+    fprintf (stderr, "CATDIR                 %s\n",  CATDIR);
+    fprintf (stderr, "PHOTCODE_FILE          %s\n",  PhotCodeFile);
+
+    exit (0);
+  }
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/initialize_dvodist.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/initialize_dvodist.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/initialize_dvodist.c	(revision 34041)
@@ -0,0 +1,116 @@
+# include "dvodist.h"
+
+void initialize (int argc, char **argv) {
+
+  /* are these set correctly? */
+  if (get_argument (argc, argv, "-h")) usage();
+  if (get_argument (argc, argv, "--h")) usage();
+  if (get_argument (argc, argv, "-help")) usage();
+  if (get_argument (argc, argv, "--help")) usage();
+
+  args (argc, argv);
+}
+
+void usage() {
+
+  fprintf (stderr, "USAGE: dvodist (-out | -in) (catdir)\n\n");
+  fprintf (stderr, " this program takes an existing DVO database and distributes it to the remote machine locations\n");
+
+  fprintf (stderr, " optional options:\n");
+  fprintf (stderr, " -v : verbose mode\n");
+  fprintf (stderr, " -params : list the current parameters\n\n");
+
+  fprintf (stderr, " -out-backup (host1) to (host2) : move *.bck files for host1 to host2\n");
+  fprintf (stderr, " -use-backup (host1) : use the backup file for host1\n");
+
+  exit (2);
+}
+
+int args (int argc, char **argv) {
+
+  int N;
+
+  VERBOSE = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    VERBOSE = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  /* specify portion of the sky */
+  UserPatch.Rmin = 0;
+  UserPatch.Rmax = 360;
+  UserPatch.Dmin = -90;
+  UserPatch.Dmax = +90;
+  if ((N = get_argument (argc, argv, "-region"))) {
+    remove_argument (N, &argc, argv);
+    UserPatch.Rmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Rmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Dmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Dmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+
+    if (UserPatch.Rmin == UserPatch.Rmax) {
+      fprintf (stderr, "ERROR: selected region is ill-defined: Rmin == Rmax\n");
+      exit (2);
+    }
+    if (UserPatch.Dmin == UserPatch.Dmax) {
+      fprintf (stderr, "ERROR: selected region is ill-defined: Dmin == Dmax\n");
+      exit (2);
+    }
+  }
+
+  MODE = MODE_NONE;
+  if ((N = get_argument (argc, argv, "-in"))) {
+    MODE = MODE_IN;
+    remove_argument (N, &argc, argv);
+  }
+  if ((N = get_argument (argc, argv, "-out"))) {
+    if (MODE) {
+      fprintf (stderr, "ERROR: cannot use both -in and -out options!\n");
+      usage();
+    }
+    MODE = MODE_OUT;
+    remove_argument (N, &argc, argv);
+  }
+  if ((N = get_argument (argc, argv, "-fix"))) {
+    if (MODE) {
+      fprintf (stderr, "ERROR: cannot use -fix with -in or -out options!\n");
+      usage();
+    }
+    MODE = MODE_FIX;
+    remove_argument (N, &argc, argv);
+  }
+  if ((N = get_argument (argc, argv, "-out-backup"))) {
+    if (MODE) {
+      fprintf (stderr, "ERROR: cannot use -fix with -in or -out options!\n");
+      usage();
+    }
+    // usage dvodist -out-backup (srcHost) to (dstHost)
+    MODE = MODE_OUT_BACKUP;
+    remove_argument (N, &argc, argv);
+    srcHostname = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+    remove_argument (N, &argc, argv); // remove 'to'
+    dstHostname = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if ((N = get_argument (argc, argv, "-use-backup"))) {
+    if (MODE) {
+      fprintf (stderr, "ERROR: cannot use -fix with -in or -out options!\n");
+      usage();
+    }
+    // usage dvodist -out-backup (srcHost) to (dstHost)
+    MODE = MODE_USE_BACKUP;
+    remove_argument (N, &argc, argv);
+    srcHostname = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!MODE) usage();
+
+  if (argc != 2) usage();
+
+  return (TRUE);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/md5.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/md5.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/md5.c	(revision 34041)
@@ -0,0 +1,386 @@
+/*
+  Copyright (C) 1999, 2000, 2002 Aladdin Enterprises.  All rights reserved.
+
+  This software is provided 'as-is', without any express or implied
+  warranty.  In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+  3. This notice may not be removed or altered from any source distribution.
+
+  L. Peter Deutsch
+  ghost@aladdin.com
+
+ */
+/* $Id: md5.c,v 1.1 2007-03-20 01:13:54 price Exp $ */
+/*
+  Independent implementation of MD5 (RFC 1321).
+
+  This code implements the MD5 Algorithm defined in RFC 1321, whose
+  text is available at
+        http://www.ietf.org/rfc/rfc1321.txt
+  The code is derived from the text of the RFC, including the test suite
+  (section A.5) but excluding the rest of Appendix A.  It does not include
+  any code or documentation that is identified in the RFC as being
+  copyrighted.
+
+  The original and principal author of md5.c is L. Peter Deutsch
+  <ghost@aladdin.com>.  Other authors are noted in the change history
+  that follows (in reverse chronological order):
+
+  2007-03-19 pap Added support for autoconf; incorporating into psLib.
+  2002-04-13 lpd Clarified derivation from RFC 1321; now handles byte order
+        either statically or dynamically; added missing #include <string.h>
+        in library.
+  2002-03-11 lpd Corrected argument list for main(), and added int return
+        type, in test program and T value program.
+  2002-02-21 lpd Added missing #include <stdio.h> in test program.
+  2000-07-03 lpd Patched to eliminate warnings about "constant is
+        unsigned in ANSI C, signed in traditional"; made test program
+        self-checking.
+  1999-11-04 lpd Edited comments slightly for automatic TOC extraction.
+  1999-10-18 lpd Fixed typo in header comment (ansi2knr rather than md5).
+  1999-05-03 lpd Original version.
+ */
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include "md5.h"
+#include <string.h>
+
+#undef BYTE_ORDER       /* 1 = big-endian, -1 = little-endian, 0 = unknown */
+#ifdef WORDS_BIGENDIAN                  // Comes from autoconf
+#  define BYTE_ORDER (WORDS_BIGENDIAN ? 1 : -1)
+#else
+#  define BYTE_ORDER 0
+#endif
+
+#define T_MASK ((md5_word_t)~0)
+#define T1 /* 0xd76aa478 */ (T_MASK ^ 0x28955b87)
+#define T2 /* 0xe8c7b756 */ (T_MASK ^ 0x173848a9)
+#define T3    0x242070db
+#define T4 /* 0xc1bdceee */ (T_MASK ^ 0x3e423111)
+#define T5 /* 0xf57c0faf */ (T_MASK ^ 0x0a83f050)
+#define T6    0x4787c62a
+#define T7 /* 0xa8304613 */ (T_MASK ^ 0x57cfb9ec)
+#define T8 /* 0xfd469501 */ (T_MASK ^ 0x02b96afe)
+#define T9    0x698098d8
+#define T10 /* 0x8b44f7af */ (T_MASK ^ 0x74bb0850)
+#define T11 /* 0xffff5bb1 */ (T_MASK ^ 0x0000a44e)
+#define T12 /* 0x895cd7be */ (T_MASK ^ 0x76a32841)
+#define T13    0x6b901122
+#define T14 /* 0xfd987193 */ (T_MASK ^ 0x02678e6c)
+#define T15 /* 0xa679438e */ (T_MASK ^ 0x5986bc71)
+#define T16    0x49b40821
+#define T17 /* 0xf61e2562 */ (T_MASK ^ 0x09e1da9d)
+#define T18 /* 0xc040b340 */ (T_MASK ^ 0x3fbf4cbf)
+#define T19    0x265e5a51
+#define T20 /* 0xe9b6c7aa */ (T_MASK ^ 0x16493855)
+#define T21 /* 0xd62f105d */ (T_MASK ^ 0x29d0efa2)
+#define T22    0x02441453
+#define T23 /* 0xd8a1e681 */ (T_MASK ^ 0x275e197e)
+#define T24 /* 0xe7d3fbc8 */ (T_MASK ^ 0x182c0437)
+#define T25    0x21e1cde6
+#define T26 /* 0xc33707d6 */ (T_MASK ^ 0x3cc8f829)
+#define T27 /* 0xf4d50d87 */ (T_MASK ^ 0x0b2af278)
+#define T28    0x455a14ed
+#define T29 /* 0xa9e3e905 */ (T_MASK ^ 0x561c16fa)
+#define T30 /* 0xfcefa3f8 */ (T_MASK ^ 0x03105c07)
+#define T31    0x676f02d9
+#define T32 /* 0x8d2a4c8a */ (T_MASK ^ 0x72d5b375)
+#define T33 /* 0xfffa3942 */ (T_MASK ^ 0x0005c6bd)
+#define T34 /* 0x8771f681 */ (T_MASK ^ 0x788e097e)
+#define T35    0x6d9d6122
+#define T36 /* 0xfde5380c */ (T_MASK ^ 0x021ac7f3)
+#define T37 /* 0xa4beea44 */ (T_MASK ^ 0x5b4115bb)
+#define T38    0x4bdecfa9
+#define T39 /* 0xf6bb4b60 */ (T_MASK ^ 0x0944b49f)
+#define T40 /* 0xbebfbc70 */ (T_MASK ^ 0x4140438f)
+#define T41    0x289b7ec6
+#define T42 /* 0xeaa127fa */ (T_MASK ^ 0x155ed805)
+#define T43 /* 0xd4ef3085 */ (T_MASK ^ 0x2b10cf7a)
+#define T44    0x04881d05
+#define T45 /* 0xd9d4d039 */ (T_MASK ^ 0x262b2fc6)
+#define T46 /* 0xe6db99e5 */ (T_MASK ^ 0x1924661a)
+#define T47    0x1fa27cf8
+#define T48 /* 0xc4ac5665 */ (T_MASK ^ 0x3b53a99a)
+#define T49 /* 0xf4292244 */ (T_MASK ^ 0x0bd6ddbb)
+#define T50    0x432aff97
+#define T51 /* 0xab9423a7 */ (T_MASK ^ 0x546bdc58)
+#define T52 /* 0xfc93a039 */ (T_MASK ^ 0x036c5fc6)
+#define T53    0x655b59c3
+#define T54 /* 0x8f0ccc92 */ (T_MASK ^ 0x70f3336d)
+#define T55 /* 0xffeff47d */ (T_MASK ^ 0x00100b82)
+#define T56 /* 0x85845dd1 */ (T_MASK ^ 0x7a7ba22e)
+#define T57    0x6fa87e4f
+#define T58 /* 0xfe2ce6e0 */ (T_MASK ^ 0x01d3191f)
+#define T59 /* 0xa3014314 */ (T_MASK ^ 0x5cfebceb)
+#define T60    0x4e0811a1
+#define T61 /* 0xf7537e82 */ (T_MASK ^ 0x08ac817d)
+#define T62 /* 0xbd3af235 */ (T_MASK ^ 0x42c50dca)
+#define T63    0x2ad7d2bb
+#define T64 /* 0xeb86d391 */ (T_MASK ^ 0x14792c6e)
+
+
+static void
+md5_process(md5_state_t *pms, const md5_byte_t *data /*[64]*/)
+{
+    md5_word_t
+        a = pms->abcd[0], b = pms->abcd[1],
+        c = pms->abcd[2], d = pms->abcd[3];
+    md5_word_t t;
+#if BYTE_ORDER > 0
+    /* Define storage only for big-endian CPUs. */
+    md5_word_t X[16];
+#else
+    /* Define storage for little-endian or both types of CPUs. */
+    md5_word_t xbuf[16];
+    const md5_word_t *X;
+#endif
+
+    {
+#if BYTE_ORDER == 0
+        /*
+         * Determine dynamically whether this is a big-endian or
+         * little-endian machine, since we can use a more efficient
+         * algorithm on the latter.
+         */
+        static const int w = 1;
+
+        if (*((const md5_byte_t *)&w)) /* dynamic little-endian */
+#endif
+#if BYTE_ORDER <= 0             /* little-endian */
+        {
+            /*
+             * On little-endian machines, we can process properly aligned
+             * data without copying it.
+             */
+            if (!((data - (const md5_byte_t *)0) & 3)) {
+                /* data are properly aligned */
+                X = (const md5_word_t *)data;
+            } else {
+                /* not aligned */
+                memcpy(xbuf, data, 64);
+                X = xbuf;
+            }
+        }
+#endif
+#if BYTE_ORDER == 0
+        else                    /* dynamic big-endian */
+#endif
+#if BYTE_ORDER >= 0             /* big-endian */
+        {
+            /*
+             * On big-endian machines, we must arrange the bytes in the
+             * right order.
+             */
+            const md5_byte_t *xp = data;
+            int i;
+
+#  if BYTE_ORDER == 0
+            X = xbuf;           /* (dynamic only) */
+#  else
+#    define xbuf X              /* (static only) */
+#  endif
+            for (i = 0; i < 16; ++i, xp += 4)
+                xbuf[i] = xp[0] + (xp[1] << 8) + (xp[2] << 16) + (xp[3] << 24);
+        }
+#endif
+    }
+
+#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32 - (n))))
+
+    /* Round 1. */
+    /* Let [abcd k s i] denote the operation
+       a = b + ((a + F(b,c,d) + X[k] + T[i]) <<< s). */
+#define F(x, y, z) (((x) & (y)) | (~(x) & (z)))
+#define SET(a, b, c, d, k, s, Ti)\
+  t = a + F(b,c,d) + X[k] + Ti;\
+  a = ROTATE_LEFT(t, s) + b
+    /* Do the following 16 operations. */
+    SET(a, b, c, d,  0,  7,  T1);
+    SET(d, a, b, c,  1, 12,  T2);
+    SET(c, d, a, b,  2, 17,  T3);
+    SET(b, c, d, a,  3, 22,  T4);
+    SET(a, b, c, d,  4,  7,  T5);
+    SET(d, a, b, c,  5, 12,  T6);
+    SET(c, d, a, b,  6, 17,  T7);
+    SET(b, c, d, a,  7, 22,  T8);
+    SET(a, b, c, d,  8,  7,  T9);
+    SET(d, a, b, c,  9, 12, T10);
+    SET(c, d, a, b, 10, 17, T11);
+    SET(b, c, d, a, 11, 22, T12);
+    SET(a, b, c, d, 12,  7, T13);
+    SET(d, a, b, c, 13, 12, T14);
+    SET(c, d, a, b, 14, 17, T15);
+    SET(b, c, d, a, 15, 22, T16);
+#undef SET
+
+     /* Round 2. */
+     /* Let [abcd k s i] denote the operation
+          a = b + ((a + G(b,c,d) + X[k] + T[i]) <<< s). */
+#define G(x, y, z) (((x) & (z)) | ((y) & ~(z)))
+#define SET(a, b, c, d, k, s, Ti)\
+  t = a + G(b,c,d) + X[k] + Ti;\
+  a = ROTATE_LEFT(t, s) + b
+     /* Do the following 16 operations. */
+    SET(a, b, c, d,  1,  5, T17);
+    SET(d, a, b, c,  6,  9, T18);
+    SET(c, d, a, b, 11, 14, T19);
+    SET(b, c, d, a,  0, 20, T20);
+    SET(a, b, c, d,  5,  5, T21);
+    SET(d, a, b, c, 10,  9, T22);
+    SET(c, d, a, b, 15, 14, T23);
+    SET(b, c, d, a,  4, 20, T24);
+    SET(a, b, c, d,  9,  5, T25);
+    SET(d, a, b, c, 14,  9, T26);
+    SET(c, d, a, b,  3, 14, T27);
+    SET(b, c, d, a,  8, 20, T28);
+    SET(a, b, c, d, 13,  5, T29);
+    SET(d, a, b, c,  2,  9, T30);
+    SET(c, d, a, b,  7, 14, T31);
+    SET(b, c, d, a, 12, 20, T32);
+#undef SET
+
+     /* Round 3. */
+     /* Let [abcd k s t] denote the operation
+          a = b + ((a + H(b,c,d) + X[k] + T[i]) <<< s). */
+#define H(x, y, z) ((x) ^ (y) ^ (z))
+#define SET(a, b, c, d, k, s, Ti)\
+  t = a + H(b,c,d) + X[k] + Ti;\
+  a = ROTATE_LEFT(t, s) + b
+     /* Do the following 16 operations. */
+    SET(a, b, c, d,  5,  4, T33);
+    SET(d, a, b, c,  8, 11, T34);
+    SET(c, d, a, b, 11, 16, T35);
+    SET(b, c, d, a, 14, 23, T36);
+    SET(a, b, c, d,  1,  4, T37);
+    SET(d, a, b, c,  4, 11, T38);
+    SET(c, d, a, b,  7, 16, T39);
+    SET(b, c, d, a, 10, 23, T40);
+    SET(a, b, c, d, 13,  4, T41);
+    SET(d, a, b, c,  0, 11, T42);
+    SET(c, d, a, b,  3, 16, T43);
+    SET(b, c, d, a,  6, 23, T44);
+    SET(a, b, c, d,  9,  4, T45);
+    SET(d, a, b, c, 12, 11, T46);
+    SET(c, d, a, b, 15, 16, T47);
+    SET(b, c, d, a,  2, 23, T48);
+#undef SET
+
+     /* Round 4. */
+     /* Let [abcd k s t] denote the operation
+          a = b + ((a + I(b,c,d) + X[k] + T[i]) <<< s). */
+#define I(x, y, z) ((y) ^ ((x) | ~(z)))
+#define SET(a, b, c, d, k, s, Ti)\
+  t = a + I(b,c,d) + X[k] + Ti;\
+  a = ROTATE_LEFT(t, s) + b
+     /* Do the following 16 operations. */
+    SET(a, b, c, d,  0,  6, T49);
+    SET(d, a, b, c,  7, 10, T50);
+    SET(c, d, a, b, 14, 15, T51);
+    SET(b, c, d, a,  5, 21, T52);
+    SET(a, b, c, d, 12,  6, T53);
+    SET(d, a, b, c,  3, 10, T54);
+    SET(c, d, a, b, 10, 15, T55);
+    SET(b, c, d, a,  1, 21, T56);
+    SET(a, b, c, d,  8,  6, T57);
+    SET(d, a, b, c, 15, 10, T58);
+    SET(c, d, a, b,  6, 15, T59);
+    SET(b, c, d, a, 13, 21, T60);
+    SET(a, b, c, d,  4,  6, T61);
+    SET(d, a, b, c, 11, 10, T62);
+    SET(c, d, a, b,  2, 15, T63);
+    SET(b, c, d, a,  9, 21, T64);
+#undef SET
+
+     /* Then perform the following additions. (That is increment each
+        of the four registers by the value it had before this block
+        was started.) */
+    pms->abcd[0] += a;
+    pms->abcd[1] += b;
+    pms->abcd[2] += c;
+    pms->abcd[3] += d;
+}
+
+void
+md5_init(md5_state_t *pms)
+{
+    pms->count[0] = pms->count[1] = 0;
+    pms->abcd[0] = 0x67452301;
+    pms->abcd[1] = /*0xefcdab89*/ T_MASK ^ 0x10325476;
+    pms->abcd[2] = /*0x98badcfe*/ T_MASK ^ 0x67452301;
+    pms->abcd[3] = 0x10325476;
+}
+
+void
+md5_append(md5_state_t *pms, const md5_byte_t *data, int nbytes)
+{
+    const md5_byte_t *p = data;
+    int left = nbytes;
+    int offset = (pms->count[0] >> 3) & 63;
+    md5_word_t nbits = (md5_word_t)(nbytes << 3);
+
+    if (nbytes <= 0)
+        return;
+
+    /* Update the message length. */
+    pms->count[1] += nbytes >> 29;
+    pms->count[0] += nbits;
+    if (pms->count[0] < nbits)
+        pms->count[1]++;
+
+    /* Process an initial partial block. */
+    if (offset) {
+        int copy = (offset + nbytes > 64 ? 64 - offset : nbytes);
+
+        memcpy(pms->buf + offset, p, copy);
+        if (offset + copy < 64)
+            return;
+        p += copy;
+        left -= copy;
+        md5_process(pms, pms->buf);
+    }
+
+    /* Process full blocks. */
+    for (; left >= 64; p += 64, left -= 64)
+        md5_process(pms, p);
+
+    /* Process a final partial block. */
+    if (left)
+        memcpy(pms->buf, p, left);
+}
+
+void
+md5_finish(md5_state_t *pms, md5_byte_t digest[16])
+{
+    static const md5_byte_t pad[64] = {
+        0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+    };
+    md5_byte_t data[8];
+    int i;
+
+    /* Save the length before padding. */
+    for (i = 0; i < 8; ++i)
+        data[i] = (md5_byte_t)(pms->count[i >> 2] >> ((i & 3) << 3));
+    /* Pad to 56 bytes mod 64. */
+    md5_append(pms, pad, ((55 - (pms->count[0] >> 3)) & 63) + 1);
+    /* Append the length. */
+    md5_append(pms, data, 8);
+    for (i = 0; i < 16; ++i)
+        digest[i] = (md5_byte_t)(pms->abcd[i >> 2] >> ((i & 3) << 3));
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/md5_ops.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/md5_ops.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/md5_ops.c	(revision 34041)
@@ -0,0 +1,189 @@
+# include "dvodist.h"
+
+// these are md5 operations that could probably be moved to libohana
+
+# define NBUFFER 512
+
+// read a file, get the md5 sum, optionally write to 'output'
+int get_md5_with_copy (char *input, char *output, md5_byte_t *digest) {
+
+  // open the src file
+  FILE *fInput = fopen (input, "r");
+  int fdInput = fileno (fInput);
+	
+  // open the tgt file
+  FILE *fOutput = NULL;
+  int fdOutput = 0;
+  if (output) {
+    fOutput = fopen (output, "w");
+    fdOutput = fileno (fOutput);
+  }
+
+  int nbytes;
+  md5_state_t state;
+  md5_byte_t buffer[NBUFFER];
+
+  md5_init (&state);
+  while ((nbytes = read (fdInput, buffer, NBUFFER)) > 0) {
+    md5_append (&state, buffer, nbytes);
+    if (output) {
+      int nbytesOut = write (fdOutput, buffer, nbytes);
+      if (nbytesOut != nbytes) {
+	return FALSE;
+      }
+    }
+  }
+  md5_finish (&state, digest);
+
+# if (0)
+  int i;
+  for (i = 0; i < NDIGEST; i++) {
+    fprintf (stderr, "%02x", digest[i]);
+  }
+  fprintf (stderr, " : %s\n", input);
+# endif
+	
+  fclose (fInput);
+  fflush (fInput);
+
+  if (output) {
+    fclose (fOutput);
+    fflush (fOutput);
+  }
+  return TRUE;
+}
+
+// XXX this would be better controlled if we used a remote pclient.  then we could
+// check things like the exit status and 
+int get_md5_from_remote (HostInfo *host, char *filename, md5_byte_t *digest) {
+
+  IOBuffer buffer;
+
+  char line[DVO_MAX_PATH];
+  int Nline = snprintf (line, DVO_MAX_PATH, "md5sum %s\n", filename);
+  assert (Nline < DVO_MAX_PATH);
+
+  int Nout = write (host->stdio[0], line, Nline);
+  if (Nout != Nline) {
+    fprintf (stderr, "failed to execute md5sum\n");
+    return FALSE;
+  } 
+
+  InitIOBuffer (&buffer, 100);
+  int status = EmptyIOBuffer (&buffer, 10000, host->stdio[1]);
+  fprintf (stderr, "md5sum status: %d\n", status);
+      
+  fprintf (stderr, "buffer: %s\n", buffer.buffer);
+
+  char result[DVO_MAX_PATH], fileout[DVO_MAX_PATH];
+  int Nscan = sscanf (buffer.buffer, "%s %s", result, fileout);
+  assert (Nscan == 2);
+  assert (strlen(result) == NDIGEST);
+  
+  memcpy (digest, result, NDIGEST);
+  return TRUE;
+}
+
+// pclient version of remote client
+int get_md5_from_pclient (HostInfo *host, char *filename, md5_byte_t *digest) {
+
+  IOBuffer buffer, stdout_buf, stderr_buf;
+
+  char line[DVO_MAX_PATH];
+  int Nline = snprintf (line, DVO_MAX_PATH, "job md5sum %s\n", filename);
+  assert (Nline < DVO_MAX_PATH);
+
+  // fprintf (stderr, "command: %s\n", line);
+
+  InitIOBuffer (&buffer, 100);
+  InitIOBuffer (&stdout_buf, 100);
+  InitIOBuffer (&stderr_buf, 100);
+
+  // need to reset pclient for next command...
+  if (!PclientCommand (host, "reset", &buffer)) goto escape;
+  if (!PclientResponse (host, PCLIENT_PROMPT, &buffer)) goto escape;
+  FlushIOBuffer (&buffer);
+
+  // start the md5sum command
+  if (!PclientCommand (host, line, &buffer)) goto escape;
+  if (!PclientResponse (host, PCLIENT_PROMPT, &buffer)) goto escape;
+  // XXX for the moment, abort if anything goes wrong
+
+  // wait for result
+  while (!CheckBusyJob (host, &stdout_buf, &stderr_buf)) {
+    FlushIOBuffer (&stdout_buf);
+    FlushIOBuffer (&stdout_buf);
+    usleep (10000);
+  }
+  if (stderr_buf.Nbuffer) {
+    fprintf (stderr, "error in md5sum: %s\n", stderr_buf.buffer);
+    goto escape;
+  }
+
+  // fprintf (stderr, "result from md5sum: %s\n", stdout_buf.buffer);
+
+  char result[DVO_MAX_PATH], fileout[DVO_MAX_PATH];
+  int Nscan = sscanf (stdout_buf.buffer, "%s %s", result, fileout);
+  if (Nscan != 2) {
+    fprintf (stderr, "error reading md5sum: %s\n", stdout_buf.buffer);
+    goto escape;
+  }
+  if (strlen(result) != 2*NDIGEST) {
+    fprintf (stderr, "error reading md5sum: %s\n", stdout_buf.buffer);
+    goto escape;
+  }
+  
+  // result is the set of 0-f nibbles, convert to the digest
+  int i;
+  for (i = 0; i < NDIGEST; i++) {
+    int value1 = hexchar_to_int (result[2*i+0]);
+    int value2 = hexchar_to_int (result[2*i+1]);
+    digest[i] = (value1 << 4) + value2;
+    // fprintf (stderr, "%02x %c %c\n", digest[i], result[2*i], result[2*i+1]);
+  }
+  
+  // need to reset pclient for next command...
+  if (!PclientCommand (host, "reset", &buffer)) goto escape;
+  if (!PclientResponse (host, PCLIENT_PROMPT, &buffer)) goto escape;
+
+  return TRUE;
+
+escape:
+  FreeIOBuffer (&buffer);
+  FreeIOBuffer (&stdout_buf);
+  FreeIOBuffer (&stderr_buf);
+  return FALSE;
+}
+
+int hexchar_to_int (char input) {
+
+  switch (input) {
+    case '0':
+    case '1':
+    case '2':
+    case '3':
+    case '4':
+    case '5':
+    case '6':
+    case '7':
+    case '8':
+    case '9':
+      return input - '0';
+    case 'a':
+    case 'b':
+    case 'c':
+    case 'd':
+    case 'e':
+    case 'f':
+      return input - 'a' + 10;
+    case 'A':
+    case 'B':
+    case 'C':
+    case 'D':
+    case 'E':
+    case 'F':
+      return input - 'A' + 10;
+    default:
+      abort();
+  }
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/memstr.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/memstr.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/memstr.c	(revision 34041)
@@ -0,0 +1,37 @@
+# include "dvodist.h"
+
+// XXX move these to libohana?
+
+/* memstr returns a view, not an allocated string : don't free */
+/* returns pointer to start of m2 in m1, or NULL if failure */ 
+char *memstr (char *m1, char *m2, int n) {
+
+  int i, N;
+
+  N = strlen (m2);
+  for (i = 0; (i < n - N + 1) && memcmp (m1, m2, N); i++, m1++);
+  if (memcmp (m1, m2, N)) return (NULL);
+  return (m1);
+
+}
+
+/* formatted write statement, with intelligent allocation */
+int write_fmt (int fd, char *format, ...) {
+
+  int Nbyte, status;
+  char tmp, *line;
+  va_list argp;  
+
+  va_start (argp, format);
+  Nbyte = vsnprintf (&tmp, 0, format, argp);
+  va_end (argp);
+
+  va_start (argp, format);
+  ALLOCATE (line, char, Nbyte + 1);
+  vsnprintf (line, Nbyte + 1, format, argp);
+  status = write (fd, line, strlen(line));
+  va_end (argp);
+
+  free (line);
+  return (status);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/photdbc.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/photdbc.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/photdbc.c	(revision 34041)
@@ -3,8 +3,4 @@
 int main (int argc, char **argv) {
 
-  int i;
-  char *skyfile;
-  Catalog incatalog;
-  Catalog outcatalog;
   SkyTable *sky;
   SkyList *skylist;
@@ -17,70 +13,12 @@
 
   // the output catalog needs to inherit the SKY_DEPTH of the input catalog
-  sky = SkyTableLoadOptimal (CATDIR, NULL, GSCFILE, TRUE, SKY_DEPTH_HST, VERBOSE);
+  sky = SkyTableLoadOptimal (CATDIR, NULL, NULL, TRUE, 0, VERBOSE);
   SkyTableSetFilenames (sky, CATDIR, "cpt");
   skylist = SkyListByPatch (sky, -1, &REGION);
-  for (i = 0; i < skylist[0].Nregions; i++) {
-    if (VERBOSE) fprintf (stderr, "%s\n", skylist[0].regions[i][0].name);
 
-    // set the parameters which guide catalog open/load/create
-    incatalog.filename = skylist[0].filename[i];
-    incatalog.Nsecfilt = GetPhotcodeNsecfilt ();
-    incatalog.catflags = LOAD_AVES | LOAD_MEAS | LOAD_SECF;
+  // hostID is 0 for master program
+  photdbc_catalogs (argv[1], skylist, 0);
 
-    // an error exit status here is a significant error
-    if (!dvo_catalog_open (&incatalog, skylist[0].regions[i], VERBOSE, "r")) {
-      fprintf (stderr, "ERROR: failure to open/create catalog file %s\n", incatalog.filename);
-      exit (2);
-    }
-    // skip empty input catalogs
-    if (!incatalog.Naves_disk) {
-      dvo_catalog_unlock (&incatalog);
-      dvo_catalog_free (&incatalog);
-      continue;
-    }
-
-    // create output catalog filename
-    outcatalog.filename = strsubs (incatalog.filename, CATDIR, argv[1]);
-    if (outcatalog.filename == NULL) Shutdown ("error with input catalog name");
-
-    // define outcatalog open parameters
-    outcatalog.catformat = dvo_catalog_catformat (CATFORMAT);  // set the default catformat from config data
-    outcatalog.catmode   = dvo_catalog_catmode (CATMODE);      // set the default catmode from config data
-    outcatalog.Nsecfilt  = incatalog.Nsecfilt;                 // inherit from the incatalog
-    outcatalog.catflags  = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
-
-    // output catalogs always represent the same skyregions as the input catalogs
-    if (!dvo_catalog_open (&outcatalog, skylist[0].regions[i], VERBOSE, "w")) {
-      fprintf (stderr, "ERROR: failure to open/create catalog file %s\n", outcatalog.filename);
-      exit (2);
-    }
-
-    // the output catalog needs to have the same values for 'objID' and 'sorted' as the input
-    outcatalog.objID = incatalog.objID;
-    outcatalog.sorted = incatalog.sorted;
-    if (!incatalog.sorted) {
-      fprintf (stderr, "ERROR: input db must be sorted: %s\n", incatalog.filename);
-      exit (2);
-    }
-
-    /* limit number of measures based on selections */
-    make_subcatalog (&outcatalog, &incatalog, skylist[0].regions[i]);
-	
-    // XXX add other filters here:
-    // join_stars (&outcatalog);
-    // unique_measures (catalog);
-    // flag_measures (&db, catalog);
-    // get_mags (catalog);
-
-    dvo_catalog_save (&outcatalog, VERBOSE);
-    dvo_catalog_unlock (&outcatalog);
-    dvo_catalog_free (&outcatalog);
-
-    dvo_catalog_unlock (&incatalog);
-    dvo_catalog_free (&incatalog);
-  }
-
-  ALLOCATE (skyfile, char, strlen(argv[1]) + strlen("/SkyTable.fits") + 1);
-  sprintf (skyfile, "%s/SkyTable.fits", argv[1]);
+  char *skyfile = SkyTableFilename (argv[1]);
   SkyTableSave (sky, skyfile);
   exit (0);
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/photdbc_catalogs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/photdbc_catalogs.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/photdbc_catalogs.c	(revision 34041)
@@ -0,0 +1,157 @@
+# include "photdbc.h"
+# define DEBUG 1
+
+int photdbc_catalogs (char *outroot, SkyList *skylist, int hostID) {
+
+  int i;
+  Catalog incatalog;
+  Catalog outcatalog;
+
+  if (PARALLEL && !hostID) {
+    photdbc_parallel (outroot, skylist);
+    return FALSE;
+  }
+
+  for (i = 0; i < skylist[0].Nregions; i++) {
+    if (VERBOSE) fprintf (stderr, "%s\n", skylist[0].regions[i][0].name);
+
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+
+    // set the parameters which guide catalog open/load/create
+    char hostfile[DVO_MAX_PATH];
+    snprintf (hostfile, DVO_MAX_PATH, "%s/%s.cpt", HOSTDIR, skylist[0].regions[i]->name);
+    incatalog.filename  = hostID ? hostfile : skylist[0].filename[i];
+    incatalog.Nsecfilt = GetPhotcodeNsecfilt ();
+    incatalog.catflags = LOAD_AVES | LOAD_MEAS | LOAD_SECF;
+
+    // an error exit status here is a significant error
+    if (!dvo_catalog_open (&incatalog, skylist[0].regions[i], VERBOSE, "r")) {
+      fprintf (stderr, "ERROR: failure to open/create catalog file %s\n", incatalog.filename);
+      exit (2);
+    }
+    // skip empty input catalogs
+    if (!incatalog.Naves_disk) {
+      dvo_catalog_unlock (&incatalog);
+      dvo_catalog_free (&incatalog);
+      continue;
+    }
+
+    // create output catalog filename
+    char outfile[DVO_MAX_PATH];
+    snprintf (outfile, DVO_MAX_PATH, "%s/%s.cpt", outroot, skylist[0].regions[i]->name);
+    outcatalog.filename = outfile;
+    if (outcatalog.filename == NULL) Shutdown ("error with input catalog name");
+
+    // define outcatalog open parameters
+    outcatalog.catformat = CATFORMAT ? dvo_catalog_catformat (CATFORMAT) : incatalog.catformat;
+    outcatalog.catmode   = CATMODE   ? dvo_catalog_catmode (CATMODE)     : incatalog.catmode;
+    outcatalog.Nsecfilt  = incatalog.Nsecfilt;                 // inherit from the incatalog
+    outcatalog.catflags  = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
+
+    // output catalogs always represent the same skyregions as the input catalogs
+    if (!dvo_catalog_open (&outcatalog, skylist[0].regions[i], VERBOSE, "w")) {
+      fprintf (stderr, "ERROR: failure to open/create catalog file %s\n", outcatalog.filename);
+      exit (2);
+    }
+
+    // the output catalog needs to have the same values for 'objID' and 'sorted' as the input
+    outcatalog.objID = incatalog.objID;
+    outcatalog.sorted = incatalog.sorted;
+    if (!incatalog.sorted) {
+      fprintf (stderr, "ERROR: input db must be sorted: %s\n", incatalog.filename);
+      exit (2);
+    }
+
+    /* limit number of measures based on selections */
+    make_subcatalog (&outcatalog, &incatalog, skylist[0].regions[i]);
+	
+    // XXX add other filters here:
+    // join_stars (&outcatalog);
+    // unique_measures (catalog);
+    // flag_measures (&db, catalog);
+    // get_mags (catalog);
+
+    dvo_catalog_save (&outcatalog, VERBOSE);
+    dvo_catalog_unlock (&outcatalog);
+    dvo_catalog_free (&outcatalog);
+
+    dvo_catalog_unlock (&incatalog);
+    dvo_catalog_free (&incatalog);
+  }
+
+  return TRUE;
+}
+
+int photdbc_parallel (char *outroot, SkyList *skylist) {
+
+  // launch the photdbo_client jobs to the parallel hosts
+
+  // load the list of hosts
+  HostTable *table = HostTableLoad (CATDIR, skylist->hosts);
+  if (!table) {
+    fprintf (stderr, "ERROR: failure reading Host Table %s for database %s\n", skylist->hosts, CATDIR);
+    exit (1);
+  }    
+
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    // ensure that the paths are absolute path names
+    char *tmproot = abspath (outroot, DVO_MAX_PATH);
+
+    // options / arguments that can affect relastro_client -update-objects:
+    char command[DVO_MAX_PATH];
+    snprintf (command, DVO_MAX_PATH, "photdbc_client %s -hostID %d -D CATDIR %s -hostdir %s -region %f %f %f %f -D NMEAS_MIN %d -D NMEAS_MIN_FILTERED %d -D AVE_SIGMA_LIM %f -D SIGMA_MAX %f", 
+	      tmproot, table->hosts[i].hostID, CATDIR, table->hosts[i].pathname, 
+	      REGION.Rmin, REGION.Rmax, REGION.Dmin, REGION.Dmax,
+	      NMEAS_MIN, NMEAS_MIN_FILTERED, AVE_SIGMA_LIM, SIGMA_MAX
+      );
+
+    char tmpline[DVO_MAX_PATH];
+    if (VERBOSE)            { snprintf (tmpline, DVO_MAX_PATH, "%s -v",                command);                             strcpy (command, tmpline); }
+    if (ExcludeByInstMag)   { snprintf (tmpline, DVO_MAX_PATH, "%s -instmag %f %f",    command, INST_MAG_MIN, INST_MAG_MAX); strcpy (command, tmpline); }
+    if (ExcludeByMinSigma)  { snprintf (tmpline, DVO_MAX_PATH, "%s -min-sigma %f",     command, SIGMA_MIN_KEEP); 	        strcpy (command, tmpline); }
+    if (ExcludeByMaxMinMag) { snprintf (tmpline, DVO_MAX_PATH, "%s -maxminmag %f",     command, MAX_MIN_MAG);    	        strcpy (command, tmpline); }
+    if (PHOTCODE_DROP_LIST) { snprintf (tmpline, DVO_MAX_PATH, "%s -photcode-drop %s", command, PHOTCODE_DROP_LIST); 	strcpy (command, tmpline); }
+    if (PHOTCODE_SKIP_LIST) { snprintf (tmpline, DVO_MAX_PATH, "%s -photcode-skip %s", command, PHOTCODE_SKIP_LIST); 	strcpy (command, tmpline); }
+    if (CATFORMAT)          { snprintf (tmpline, DVO_MAX_PATH, "%s -set-format %s",    command, CATFORMAT); 	                strcpy (command, tmpline); }
+    if (CATMODE)            { snprintf (tmpline, DVO_MAX_PATH, "%s -set-mode %s",      command, CATMODE);        	        strcpy (command, tmpline); }
+
+    fprintf (stderr, "command: %s\n", command);
+
+    if (PARALLEL_MANUAL) continue;
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	fprintf (stderr, "ERROR running photdbc_client\n");
+	exit (2);
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	exit (1);
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+
+  if (PARALLEL_MANUAL) {
+    fprintf (stderr, "run the photdbc_client commands above.  when these are done, hit return\n");
+    getchar();
+  }
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+  }
+
+  return TRUE;
+}      
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/photdbc_client.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/photdbc_client.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/photdbc_client.c	(revision 34041)
@@ -0,0 +1,25 @@
+# include "photdbc.h"
+
+int main (int argc, char **argv) {
+
+  initialize_client (argc, argv);
+
+  // load the current sky table (layout of all SkyRegions) 
+  SkyTable *sky = SkyTableLoadOptimal (CATDIR, NULL, NULL, TRUE, -1, VERBOSE);
+  if (!sky) {
+      fprintf (stderr, "ERROR running loading sky table from %s\n", CATDIR);
+      exit (2);
+  }
+  SkyTableSetFilenames (sky, CATDIR, "cpt");
+
+  SkyList *skylist = SkyListByPatch (sky, -1, &REGION);
+  if (!skylist) {
+      fprintf (stderr, "ERROR setting up skylist for %s\n", CATDIR);
+      exit (2);
+  }
+  
+  // hostID is 0 for master program
+  photdbc_catalogs (argv[1], skylist, HOST_ID);
+
+  exit (0);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/rconnect.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/rconnect.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/photdbc/src/rconnect.c	(revision 34041)
@@ -0,0 +1,150 @@
+# include "dvodist.h"
+# include <sys/types.h>
+# include <sys/wait.h>
+
+/* connection can take a while, allow up to 2 sec */
+# define CONNECT_TIMEOUT 5000
+
+/* connect to host, start the shell: ssh hostname pclient -> command hostname shell
+   stdio is an array of file descriptors (stdio[3])
+*/
+
+int rconnect (char *command, char *hostname, char *shell, int *stdio) {
+
+  int i = 0, stdin_fd[2], stdout_fd[2], stderr_fd[2], status;
+  int result, waitstatus;
+  pid_t pid;
+  char *p;
+  char **argv;
+  IOBuffer buffer;
+  struct timespec request, remain;
+
+  myAssert (command != NULL, "command is NULL");
+  myAssert (hostname != NULL, "hostname is NULL");
+  myAssert (shell != NULL, "shell is NULL");
+  myAssert (stdio != NULL, "stdio is NULL");
+
+  bzero (stdin_fd,  2*sizeof(int));
+  bzero (stdout_fd, 2*sizeof(int));
+  bzero (stderr_fd, 2*sizeof(int));
+
+  if (pipe (stdin_fd)  < 0) goto pipe_error;
+  if (pipe (stdout_fd) < 0) goto pipe_error;
+  if (pipe (stderr_fd) < 0) goto pipe_error;
+
+  ALLOCATE (argv, char *, 4);
+  argv[0] = command;
+  argv[1] = hostname;
+  argv[2] = shell;
+  argv[3] = 0;
+
+  pid = fork ();
+  if (!pid) { /* must be child process */
+    if (VERBOSE) fprintf (stderr, "starting remote connection to %s...", hostname);
+
+    /* close the other ends of the pipes */
+    close (stdin_fd[1]);
+    close (stdout_fd[0]);
+    close (stderr_fd[0]);
+
+    /* tie our ends of the pipes to stdin, stdout, stderr */
+    dup2 (stdin_fd[0],  STDIN_FILENO);
+    dup2 (stdout_fd[1], STDOUT_FILENO);
+    dup2 (stderr_fd[1], STDERR_FILENO);
+
+    /* set all three unblocking */
+    setvbuf (stdin,  (char *) NULL, _IONBF, BUFSIZ);
+    setvbuf (stdout, (char *) NULL, _IONBF, BUFSIZ);
+    setvbuf (stderr, (char *) NULL, _IONBF, BUFSIZ);
+
+    status = execvp (argv[0], argv);
+    fprintf (stderr, "error starting remote shell process\n");
+    exit (60);
+  }
+  free (argv);
+
+  /* close the other ends of the pipes */
+  close (stdin_fd[0]);  stdin_fd[0]  = 0;
+  close (stdout_fd[1]); stdout_fd[1] = 0;
+  close (stderr_fd[1]); stderr_fd[1] = 0;
+
+  /* make the pipes non-blocking */
+  fcntl (stdin_fd[1],  F_SETFL, O_NONBLOCK);
+  fcntl (stdout_fd[0], F_SETFL, O_NONBLOCK);
+  fcntl (stderr_fd[0], F_SETFL, O_NONBLOCK);
+
+  /* perform handshake with pclient to verify alive & running */
+  /** this handshake is similar to PclientCommand, but has important differences **/
+  InitIOBuffer (&buffer, 0x100);
+
+  /* send handshake command */
+  status = write_fmt (stdin_fd[1], "echo CONNECTED\n");
+  if ((status == -1) && (errno == EPIPE)) goto connect_error;
+
+  /* try to get evidence connection is alive - wait upto a few seconds */
+  p = NULL;
+  status = -1;
+  for (i = 0; (i < CONNECT_TIMEOUT) && (status != 0) && (p == NULL); i++) {
+    status = ReadtoIOBuffer (&buffer, stdout_fd[0]);
+    p = memstr (buffer.buffer, "CONNECTED", buffer.Nbuffer);
+    usleep (10000); // wait for client to be connected
+  }
+  if (status == 0) goto connect_error;
+  if (status == -1) goto connect_error;
+  if (VERBOSE) fprintf (stderr, "%d cycles to connect\n", i);
+  FreeIOBuffer (&buffer);
+
+  if (VERBOSE) fprintf (stderr, "Connected\n");
+
+  stdio[0] = stdin_fd[1];
+  stdio[1] = stdout_fd[0];
+  stdio[2] = stderr_fd[0];
+
+  return (pid);
+
+pipe_error:
+  perror ("pipe error:");
+  goto close_pipes;
+
+connect_error:
+  if (VERBOSE) fprintf (stderr, "error while connecting, status: %d, ncycles: %d\n", status, i);
+
+  /* avoid blocking on waitpid, test every 100 usec, up to 50 msec */
+  request.tv_sec = 0;
+  request.tv_nsec = 100000;
+
+  /* harvest the child process: kill & wait (< 100 ms) for exit */
+  kill (pid, SIGKILL);
+  result = waitpid (pid, &waitstatus, WNOHANG);
+  for (i = 0; (i < 50) && (result == 0); i++) {
+    nanosleep (&request, &remain);
+    result = waitpid (pid, &waitstatus, WNOHANG);
+  }
+
+  if ((result == -1) && (errno != ECHILD)) {
+    fprintf (stderr, "unexpected error from waitpid (%d): programming error\n", errno);
+    exit (61);
+  }
+  if (result == 0) {
+    if (VERBOSE) fprintf (stderr, "child did not exit (rconnect)??");
+  }
+  if (result > 0) {
+    if (result != pid) {
+      fprintf (stderr, "waitpid error: mis-matched PID (%d vs %d).  programming error\n", result, pid);
+      exit (62);
+    }
+    if (WIFSTOPPED(waitstatus)) {
+      fprintf (stderr, "waitpid returns 'stopped': programming error\n");
+      exit (63);
+    }
+  }
+
+close_pipes:
+  if (stdin_fd[0]  != 0) close (stdin_fd[0]);
+  if (stdin_fd[1]  != 0) close (stdin_fd[1]);
+  if (stdout_fd[0] != 0) close (stdout_fd[0]);
+  if (stdout_fd[1] != 0) close (stdout_fd[1]);
+  if (stderr_fd[0] != 0) close (stderr_fd[0]);
+  if (stderr_fd[1] != 0) close (stderr_fd[1]);
+  return (FALSE);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/Makefile	(revision 34041)
@@ -1,3 +1,3 @@
-default: relastro
+default: relastro relastro_client
 help:
 	@echo "make options: relastro (default)"
@@ -18,5 +18,7 @@
 
 relastro: $(BIN)/relastro.$(ARCH)
-install: $(DESTBIN)/relastro
+relastro_client: $(BIN)/relastro_client.$(ARCH)
+
+install: $(DESTBIN)/relastro $(DESTBIN)/relastro_client $(DESTBIN)/testparallax
 
 RELASTRO = \
@@ -53,7 +55,7 @@
 $(SRC)/select_images.$(ARCH).o	     \
 $(SRC)/relastro.$(ARCH).o	     \
+$(SRC)/relastro_images.$(ARCH).o    \
 $(SRC)/relastro_objects.$(ARCH).o    \
 $(SRC)/save_catalogs.$(ARCH).o       \
-$(SRC)/write_coords.$(ARCH).o        \
 $(SRC)/CoordOps.$(ARCH).o            \
 $(SRC)/FixProblemImages.$(ARCH).o    \
@@ -64,6 +66,72 @@
 $(SRC)/relastro_merge_source.$(ARCH).o  \
 $(SRC)/resort_catalog.$(ARCH).o  \
+$(SRC)/BrightCatalog.$(ARCH).o  \
 $(SRC)/relastroVisual.$(ARCH).o
 
-$(RELASTRO): $(INC)/relastro.h $(KAPA_INCS)
-$(BIN)/relastro.$(ARCH): $(RELASTRO) $(KAPA_LIBS)
+#$(SRC)/write_coords.$(ARCH).o        \
+
+$(RELASTRO): $(INC)/relastro.h
+$(BIN)/relastro.$(ARCH): $(RELASTRO)
+
+RELASTRO_CLIENT = \
+$(SRC)/ConfigInit.$(ARCH).o	     \
+$(SRC)/FitPM.$(ARCH).o               \
+$(SRC)/FitPar.$(ARCH).o              \
+$(SRC)/FitPMandPar.$(ARCH).o         \
+$(SRC)/FitSimple.$(ARCH).o           \
+$(SRC)/ImageOps.$(ARCH).o	     \
+$(SRC)/MosaicOps.$(ARCH).o	     \
+$(SRC)/ParFactor.$(ARCH).o           \
+$(SRC)/SetSignals.$(ARCH).o 	     \
+$(SRC)/Shutdown.$(ARCH).o 	     \
+$(SRC)/UpdateObjects.$(ARCH).o       \
+$(SRC)/UpdateObjectOffsets.$(ARCH).o \
+$(SRC)/UpdateMeasures.$(ARCH).o      \
+$(SRC)/GetAstromError.$(ARCH).o      \
+$(SRC)/args.$(ARCH).o		     \
+$(SRC)/bcatalog.$(ARCH).o	     \
+$(SRC)/dvo_astrom_ops.$(ARCH).o      \
+$(SRC)/fitpoly.$(ARCH).o             \
+$(SRC)/initialize.$(ARCH).o	     \
+$(SRC)/liststats.$(ARCH).o	     \
+$(SRC)/load_catalogs.$(ARCH).o	     \
+$(SRC)/load_images.$(ARCH).o	     \
+$(SRC)/mkpolyterm.$(ARCH).o          \
+$(SRC)/select_images.$(ARCH).o	     \
+$(SRC)/relastro_client.$(ARCH).o	\
+$(SRC)/relastro_objects.$(ARCH).o    \
+$(SRC)/save_catalogs.$(ARCH).o       \
+$(SRC)/CoordOps.$(ARCH).o            \
+$(SRC)/high_speed_catalogs.$(ARCH).o  \
+$(SRC)/high_speed_objects.$(ARCH).o  \
+$(SRC)/high_speed_utils.$(ARCH).o  \
+$(SRC)/relastro_merge_source.$(ARCH).o  \
+$(SRC)/resort_catalog.$(ARCH).o  \
+$(SRC)/plot_scatter.$(ARCH).o	     \
+$(SRC)/plotstuff.$(ARCH).o	     \
+$(SRC)/relastroVisual.$(ARCH).o \
+$(SRC)/BrightCatalog.$(ARCH).o 
+
+#$(SRC)/FitChip.$(ARCH).o             \
+#$(SRC)/FitMosaic.$(ARCH).o           \
+#$(SRC)/UpdateChips.$(ARCH).o         \
+#$(SRC)/UpdateMosaic.$(ARCH).o        \
+#$(SRC)/UpdateSimple.$(ARCH).o        \
+#$(SRC)/write_coords.$(ARCH).o        \
+#$(SRC)/FixProblemImages.$(ARCH).o    \
+#$(SRC)/StarMaps.$(ARCH).o    \
+
+$(RELASTRO_CLIENT): $(INC)/relastro.h
+$(BIN)/relastro_client.$(ARCH): $(RELASTRO_CLIENT)
+
+testparallax: $(BIN)/testparallax.$(ARCH)
+
+TESTPAR = \
+$(SRC)/FitPMandPar.$(ARCH).o         \
+$(SRC)/ParFactor.$(ARCH).o           \
+$(SRC)/fitpoly.$(ARCH).o             \
+$(SRC)/mkpolyterm.$(ARCH).o            \
+$(SRC)/testparallax.$(ARCH).o
+
+$(TESTPAR): $(INC)/relastro.h
+$(BIN)/testparallax.$(ARCH): $(TESTPAR)
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/doc/parallel.txt
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/doc/parallel.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/doc/parallel.txt	(revision 34041)
@@ -0,0 +1,91 @@
+
+2012.03.05 
+
+ Notes on parallel relastro modifications
+
+ relastro has 4 major modes:  
+
+ * relastro_objects
+ * high_speed_catalogs
+ * relastro_merge_source
+ * standard relastro (update chips, etc)
+
+ Of these:
+ * relastro_merge_source can be skipped for not (not interesting for parallel analysis)
+ * relastro_objects, high_speed_catalogs, and standard relastro all call UpdateObjects, one way or another.
+
+ The big question is if / how we can use MeasureTiny (or if we need a separate astrometry version)
+
+  * average.d fields we are NOT using in UpdateObjects (28 / 120 bytes)
+  FIELD Nmissing,       NMISSING,    unsigned short,  number of missings
+  FIELD Nextend,        NEXTEND,     unsigned short,  number of extended measurements
+  FIELD missingOffset,  OFF_MISSING, int,             offset to first missing obs
+  FIELD extendOffset,   OFF_EXTEND,  int,             offset to first extended measurement
+  FIELD photFlagsUpper, PHOTFLAGS_U, uint32_t,        upper bit of 2 bit summary of per-measure photflags
+  FIELD photFlagsLower, PHOTFLAGS_L, uint32_t,        lower bit of 2 bit summary of per-measure photflags
+  FIELD extID,          EXT_ID,      uint64_t,        external ID for object (eg PSPS objID)
+
+  * measure.d fields in use in UpdateObjects
+* measure[m].t
+* measure[m].dbFlags
+* measure[m].dt
+* measure[0].dR
+* measure[0].dD
+* measure[0].M
+* measure[0].dM
+* measure[0].photcode
+* measure[0].photFlags
+* measure[m].Xccd;
+* measure[m].Yccd;
+* measure[m].averef;
+* measure[0].imageID;
+* measure[0].airmass
+* measure[0].Mcal (only used in PhotRelTiny)
++ measure[0].dXccd
++ measure[0].dYccd
++ measure[m].dRsys
+
+  float          dR;
+  float          dD;
+  float          M;
+  float          Mcal;
+  float          dM;
+  float          airmass;
+  float          Xccd;
+  float          Yccd;
+  float          dt;
+  int   	 t;
+  unsigned int   averef;
+  unsigned int   imageID;
+  unsigned int   dbFlags;
+  unsigned int   photFlags;
+- int            catID; // unsigned int?
+  unsigned short photcode;
+
+maybe
+FIELD Map,            M_APER,       float,          aperture mag,		    mag
+FIELD psfQual,        PSF_QF,       float,          psf coverage/quality factor
+
+not used
+FIELD dMcal,          MAG_CAL_ERR,  float,          systematic calibration error,   mag
+FIELD az,             AZ,           float,          telescope azimuth
+FIELD Sky,            SKY_FLUX,     float,          local estimate of sky flux,     counts/sec
+FIELD dSky,           SKY_FLUX_ERR, float,          local estimate of sky flux,     counts/sec
+FIELD t_msec,         TIME_MSEC,    unsigned short, time fraction of second,        milliseconds
+FIELD detID,          DET_ID,       unsigned int,   detection ID
+FIELD objID,          OBJ_ID,       unsigned int,   unique ID for object in table
+FIELD catID,          CAT_ID,       unsigned int,   unique ID for table in which object was first realized
+FIELD psfChisq,       PSF_CHISQ,    float,          psf fit chisq
+FIELD psfNdof,        PSF_NDOF,     int,            psf degrees of freedom
+FIELD psfNpix,        PSF_NPIX,     int,            psf number of pixels
+FIELD crNsigma,       CR_NSIGMA,    float,          Nsigma deviation towards CR
+FIELD extNsigma,      EXT_NSIGMA,   float,          Nsigma deviation towards EXT
+FIELD FWx,            FWHM_MAJOR,   short,          object fwhm major axis,         1/100 of pixels 
+FIELD FWy,            FWHM_MINOR,   short,          object fwhm minor axis,         1/100 of pixels 
+FIELD theta,          PSF_THETA,    short,          angle wrt ccd X dir,            (0xffff/360) deg
+FIELD Mxx,            MXX,          short,          second moments in pixel coords, 1/100 of pixels^2
+FIELD Mxy,            MXY,          short,          second moments in pixel coords, 1/100 of pixels^2
+FIELD Myy,            MYY,          short,          second moments in pixel coords, 1/100 of pixels^2
+FIELD posangle,       POSANGLE,     short,          position angle sky to chip,     (0xffff/360) deg
+FIELD pltscale,       PLTSCALE,     float,          plate scale,                    arcsec/pixel
+
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/doc/plx_factor.pro
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/doc/plx_factor.pro	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/doc/plx_factor.pro	(revision 34041)
@@ -0,0 +1,116 @@
+;+
+;
+; PLX_FACTOR
+;
+; Given a Julian date (scalar or vector), this returns the parallax
+; factor for a set of equatorial coordinates (RA,Dec).  User must have
+; an appropriate Earth ephemeris savefile in the path specified at the
+; top of the procedure.  The savefile should return the variables:
+;
+;  jd, x, y, z
+;
+; that specify the position of the Earth in the coordinate system of
+; solar system's barycenter.  For my savefile, I computed this from
+; the JPL ephemeris DE405.
+;
+; INPUT:
+;
+;  epoch (JD) -- julian date(s) for which to compute the parallax
+;                factor
+;
+;  ra (deg) -- "catalog" RA of object (unperturbed by parallax,
+;              aberration, etc.)
+;
+;  de (deg) -- "catalog" Dec of object (unperturbed by parallax,
+;              aberration, etc.)
+;
+;  NOTE: Epoch input can be an array, with RA and Dec input as
+;  scalars.  However, if RA and Dec are input as arrays (i.e., the
+;  parallax factor is to be computed for multiple objects), then they
+;  must have the same dimensions as the epoch array.
+;
+; OUTPUT:
+;
+;  The output produced by this program are two arrays of parallax
+;  factors (f_ra, f_de) such that:
+;
+;    RA  = RA_0 + f_ra * parallax
+;    Dec = Dec_0 + f_de * parallax
+;
+;  Note that f_ra and f_de have dimensionless units.  Also note that
+;  the RA correction factor includes a factor of cos(Dec) such that:
+;   f_ra * parallax = delta(RA) * cos(Dec)
+;
+;              Written by Trent J. Dupuy -- 2010 Jul 14
+;
+; REVISIONS
+; ---------
+;  2011 Jan 25: Added /SPITZER keyword that uses the Spitzer ephemeris
+;    instead of the Earth ephemeris.
+;-
+pro plx_factor, epoch, ra_in, de_in, f_ra, f_de, spitzer=spitzer
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;;;;;;;;;;;; SPECIFY PATH FOR EPHEMERIS SAVEFILE HERE ;;;;;;;;;;;;;;;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+savefile = '/Users/tdupuy/data/jpl/'+$
+           'JPL_DE405_EARTH-SOLARBARYCENTER.sav'
+if keyword_set(spitzer) then begin
+   savefile = '/Users/tdupuy/data/jpl/'+$
+              'JPL_SPITZER-SOLARBARYCENTER.sav'
+   message,'Using spitzer ephemeris.',/continue
+endif
+restore, savefile
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+;
+; check inputs
+;
+if n_params() lt 5 then begin
+   print, 'PLX_FACTOR, epoch (JD), ra (deg), dec (deg), f_ra, f_de'
+   return
+endif
+if total(size(ra_in,/dim) ne size(de_in,/dim)) ne 0 then $
+   message, 'input RA and Dec dimensions must match each other'
+if (size(ra_in,/dim))[0] ne 0 and $
+   total(size(ra_in,/dim) ne size(epoch,/dim)) ne 0 then $
+      message, '(RA, Dec) not specified as scalars, so their '+$
+               'dimensions must match the input epoch array'
+
+;
+; convert to radians and compute trig functions
+;
+radeg = 180d/!dpi
+ra = ra_in/radeg
+de = de_in/radeg
+sina = sin(ra)
+cosa = cos(ra)
+sind = sin(de)
+cosd = cos(de)
+
+;
+; interpolate the Earth ephemeris at the input epochs
+;
+x_in = interpol( x, jd, double(epoch) )
+y_in = interpol( y, jd, double(epoch) )
+z_in = interpol( z, jd, double(epoch) )
+if min(epoch) lt min(jd) or max(epoch) gt max(jd) then $
+   message, /continue, 'inputs epochs extend beyond the range '+$
+            'of the ephemeris being used.'
+
+;
+; could also apply an offset here due to the position of the observer
+; on the earth being slightly different than the geocenter.  as
+; described in Sec 6.2.3 of Kovalesky & Seidelmann this effect is
+; about 4 uas for a parallax of 0.1" -- i.e., negligible
+;
+
+;
+; compute parallax factor (from pg. B28 of Astronomical Almanac 2010,
+; also see Sec 6.2.1 of Kovalesky & Seidelmann's Fundamentals
+; of Astrometry for a derivation)
+;
+f_ra = x_in*sina - y_in*cosa
+f_de = x_in*cosa*sind + y_in*sina*sind - z_in*cosd
+
+end
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/include/relastro.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/include/relastro.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/include/relastro.h	(revision 34041)
@@ -4,4 +4,9 @@
 # include <signal.h>
 # include <assert.h>
+# include <pthread.h>
+
+// choose off_t or int depending on full-scale relphot analysis resources
+// # define IDX_T off_t
+# define IDX_T int 
 
 typedef enum {
@@ -15,5 +20,34 @@
 typedef enum {FIT_NONE, FIT_AVERAGE, FIT_PM_ONLY, FIT_PAR_ONLY, FIT_PM_AND_PAR} FitMode;
 
-typedef enum {TARGET_NONE, TARGET_OBJECTS, TARGET_SIMPLE, TARGET_CHIPS, TARGET_MOSAICS, TARGET_HIGH_SPEED, TARGET_MERGE_SOURCE} FitTarget;
+typedef enum {TARGET_NONE, TARGET_SIMPLE, TARGET_CHIPS, TARGET_MOSAICS, TARGET_HIGH_SPEED, TARGET_MERGE_SOURCE, TARGET_UPDATE_OBJECTS, TARGET_UPDATE_OFFSETS, TARGET_LOAD_OBJECTS} FitTarget;
+
+typedef enum {
+  MARK_MEAS_DEFAULT  = 0x0000,
+  MARK_TOO_FEW_MEAS  = 0x0001,
+  MARK_NAN_POS_ERROR = 0x0002,
+  MARK_NAN_MAG_ERROR = 0x0004,
+  MARK_BIG_MAG_ERROR = 0x0008,
+  MARK_BIG_OFFSET    = 0x0010,
+} MeasurementMask;
+
+typedef struct {
+  Average     *average;	      // array of (minimal) average data
+  MeasureTiny *measure;	      // array of (minimal) measure data 
+  SecFilt     *secfilt;	      // array of secfilt data (matched to average by Nsecfilt)
+  off_t       Naverage;
+  off_t       Nmeasure;
+} BrightCatalog;
+
+typedef struct {
+  Catalog *catalog;	      // array of catalogs generated
+  int NCATALOG;		      // number of catalogs allocated
+  int Ncatalog;		      // number of catalogs generated
+  int Nsecfilt;		      // number of catalogs generated
+  off_t *NAVERAGE; 	      // allocated Averages per catalog
+  off_t *NMEASURE;	      // allocated Measures per catalog
+  int   *index;		      // lookup table catID -> catalog[i]
+  int   *catIDs;	      // lookup table catID <- catalog[i]
+  int    maxID;		      // max catID value to date
+} CatalogSplitter;
 
 typedef struct {
@@ -86,12 +120,17 @@
 
 /* global variables set in parameter file */
-char   ImageCat[256];
-char   GSCFILE[256];
-char   CATDIR[256];
+# define DVO_MAX_PATH 1024
+char   ImageCat[DVO_MAX_PATH];
+char   GSCFILE[DVO_MAX_PATH];
+char   CATDIR[DVO_MAX_PATH];
 char   *HIGH_SPEED_DIR;
 char   CATMODE[16];    /* raw, mef, split, mysql */
 char   CATFORMAT[16];  /* internal, elixir, loneos, panstarrs */
-char   SKY_TABLE[256];
+char   SKY_TABLE[DVO_MAX_PATH];
 int    SKY_DEPTH;  /** XXX EAM : depth of catalog tables, fix usage */
+
+int          HOST_ID;
+char        *HOSTDIR;
+char        *BCATALOG;
 
 unsigned int OBJ_ID_SRC;
@@ -110,4 +149,10 @@
 double RADIUS; // match radius for high-speed objects
 
+int    PARALLEL;
+int    PARALLEL_MANUAL;
+int    PARALLEL_SERIAL;
+
+int    PARALLEL_OUTPUT;
+
 int    VERBOSE;
 int    VERBOSE2;
@@ -115,4 +160,5 @@
 int    RESET;
 int    NLOOP;
+int    NTHREADS;
 int    UPDATE;
 int    PLOTSTUFF;
@@ -123,4 +169,5 @@
 int    PM_TOOFEW;
 double PM_DT_MIN;
+double PAR_FACTOR_MIN;
 int    PLOTDELAY;
 int    CHIPORDER;
@@ -128,7 +175,4 @@
 int MaxDensityUse;
 double MaxDensityValue;
-
-int UserCatalog;
-double UserCatalogRA, UserCatalogDEC;
 
 char          *PHOTCODE_KEEP_LIST, *PHOTCODE_SKIP_LIST;
@@ -142,12 +186,9 @@
 SkyRegionSelection SELECTION;
 
-int AreaSelect;
-double AreaXmin, AreaXmax, AreaYmin, AreaYmax;
-
-int ImagSelect, ImagMin, ImagMax;
+int ImagSelect;
+double ImagMin, ImagMax;
 
 double  PlotMmin, PlotMmax, PlotdMmin, PlotdMmax;
 
-int DophotSelect, DophotValue;
 int PhotFlagSelect, PhotFlagPoor, PhotFlagBad;
 
@@ -181,6 +222,7 @@
 char         *GetPhotnamebyCode   PROTO((PhotCodeData *photcodes, int code));
 void          InterpolateGrid     PROTO((float *buffer, int Nx, int Ny, Coords *ccd, Coords *gcoords));
-off_t          *SelectRefMosaic     PROTO((Mosaic **refmosaic, off_t *Nimage));
+off_t        *SelectRefMosaic     PROTO((Mosaic **refmosaic, off_t *Nimage));
 int           args                PROTO((int argc, char **argv));
+int           args_client         PROTO((int argc, char **argv));
 int           bcatalog            PROTO((Catalog *subcatalog, Catalog *catalog));
 void          clean_images        PROTO((void));
@@ -226,8 +268,9 @@
 void          initMrel            PROTO((Catalog *catalog, int Ncatalog));
 void          initialize          PROTO((int argc, char **argv));
+void          initialize_client   PROTO((int argc, char **argv));
 void          initstats           PROTO((char *mode));
 int           liststats           PROTO((double *value, double *dvalue, int N, StatType *stats));
-Catalog      *load_catalogs       PROTO((SkyList *skylist, int *Ncatalog, int subselect));
-SkyList      *load_images         PROTO((FITS_DB *db, SkyRegion *region));
+Catalog      *load_catalogs       PROTO((SkyList *skylist, int *Ncatalog, int subselect, int hostID, char *hostpath));
+int           load_images         PROTO((FITS_DB *db, SkyList *skylist));
 Image        *select_images       PROTO((SkyList *skylist, Image *timage, off_t Ntimage, off_t **LineNumber, off_t *Nimage));
 
@@ -314,4 +357,5 @@
 void FlagOutliers(Catalog *catalog);
 int MeasFilterTest(Measure *measure, int applySigmaLim);
+int MeasFilterTestTiny(MeasureTiny *measure, int applySigmaLim);
 
 int sun_ecliptic (double jd, double *lambda, double *beta, double *epsilon, double *Radius);
@@ -333,12 +377,16 @@
 Mosaic *getMosaicForImage (off_t im);
 
-double getMeanR (Measure *measure, Average *average, SecFilt *secfilt);
-double getMeanD (Measure *measure, Average *average, SecFilt *secfilt);
-int setMeanR (double ra_fit, Measure *measure, Average *average, SecFilt *secfilt);
-int setMeanD (double dec_fit, Measure *measure, Average *average, SecFilt *secfilt);
+double getMeanR (MeasureTiny *measure, Average *average, SecFilt *secfilt);
+double getMeanD (MeasureTiny *measure, Average *average, SecFilt *secfilt);
+int setMeanR (double ra_fit, MeasureTiny *measure, Average *average, SecFilt *secfilt);
+int setMeanD (double dec_fit, MeasureTiny *measure, Average *average, SecFilt *secfilt);
+int setMeanR_Big (double ra_fit, Measure *measure, Average *average, SecFilt *secfilt);
+int setMeanD_Big (double dec_fit, Measure *measure, Average *average, SecFilt *secfilt);
 
 float GetAstromError (Measure *measure, int mode);
-int relastro_objects (void);
-int UpdateObjectOffsets (SkyList *skylist);
+float GetAstromErrorTiny (MeasureTiny *measure, int mode);
+int relastro_objects (SkyList *skylist, int hostID, char *hostpath);
+int relastro_images (SkyList *skylist);
+int UpdateObjectOffsets (SkyList *skylist, int hostID, char *hostpath);
 
 int relastroVisualPlotChipFit(StarData *raw, StarData *ref, double dRmax, int numObj);
@@ -361,5 +409,5 @@
 void resetImageRaw (Catalog *catalog, int Ncatalog, off_t im);
 
-int high_speed_catalogs ();
+int high_speed_catalogs (SkyTable *sky, SkyList *skylist, int hostID, char *hostpath);
 int high_speed_objects (SkyRegion *region, Catalog *catalog);
 int MeasMatchesPhotcode(Measure *measure, PhotCode **photcodeSet, int Nset);
@@ -369,7 +417,9 @@
 int createStarMapPoints();
 int checkStarMap(int N);
+int createStarMap (Catalog *catalog, int Ncatalog);
 
 int GetScatterRawRef(float *dLsig, float *dMsig, float *dRsig, int *nKeep, StarData *raw, StarData *ref, int Nstars, float SigmaLimit);
-int LimitDensityCatalog (Catalog *subcatalog, Catalog *catalog);
+int LimitDensityCatalog_ByNmeasure (Catalog *subcatalog, Catalog *catalog);
+int LimitDensityCatalog_RandomSample (Catalog *subcatalog, Catalog *catalog);
 
 int initializeConstraints();
@@ -378,4 +428,13 @@
 void setupAreaSelection(SkyRegion *region);
 
-int relastro_merge_source ();
+int relastro_merge_source (SkyTable *sky);
 void resort_catalog (Catalog *catalog);
+
+BrightCatalog *BrightCatalogLoad(char *filename);
+int BrightCatalogSave(char *filename, BrightCatalog *catalog);
+BrightCatalog *BrightCatalogMerge (Catalog *catalog, int Ncatalog);
+CatalogSplitter *BrightCatalogSplitInit (int Nsecfilt);
+int BrightCatalogSplit (CatalogSplitter *catalogs, BrightCatalog *bcatalog);
+int BrightCatalogSplitFree (CatalogSplitter *catalogs);
+
+PhotCode **ParsePhotcodeList (char *rawlist, int *nphotcodes, int needAve);
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/BrightCatalog.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/BrightCatalog.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/BrightCatalog.c	(revision 34041)
@@ -0,0 +1,890 @@
+# include "relastro.h"
+
+// NOTE: this file is nearly identical to relphot/src/BrightCatalog.c, but here we use Average, not AverageTiny
+
+// relastro_client -load reads from the local catalogs and generates a set of bright, subset catalogs
+// we are going to save these as a single big FITS file, with only 3 extensions:
+
+// measure, average, secfilt.  these only need to contain the fields relevant to the
+// MeasureTiny, Average, and Secfilt tables, but with cat_id appended to each row so we can
+// reassign correctly on read
+
+# define GET_COLUMN(OUT,NAME,TYPE)					\
+  TYPE *OUT = gfits_get_bintable_column_data (&theader, &ftable, NAME, type, &Nrow, &Ncol); \
+  myAssert (!strcmp(type, #TYPE), "wrong column type");
+
+// XXX double check the header extname values for each table
+// XXX make sure we free things as we can
+// XXX make sure we close files as we can
+// XXX handle free and close on error return as well
+BrightCatalog *BrightCatalogLoad(char *filename) {
+
+  int i, Ncol;
+  off_t Nrow;
+  char type[16];
+  Header header;
+  Header theader;
+  Matrix matrix;
+  FTable ftable;
+
+  header.buffer = NULL;
+  matrix.buffer = NULL;
+  ftable.buffer = NULL;
+  theader.buffer = NULL;
+  BrightCatalog *catalog = NULL;
+
+  FILE *f = fopen (filename, "r");
+  if (!f) {
+    fprintf (stderr, "ERROR: cannot open image subset file %s\n", filename);
+    goto escape;
+  }
+
+  /* load in PHU segment (ignore) */
+  if (!gfits_fread_header (f, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read image subset header\n");
+    fclose (f);
+    goto escape;
+  }
+  if (!gfits_fread_matrix (f, &matrix, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read image subset matrix\n");
+    gfits_free_header (&header);
+    fclose (f);
+    goto escape;
+  }
+
+  ALLOCATE (catalog, BrightCatalog, 1);
+  catalog->Naverage = 0;
+  catalog->Nmeasure = 0;
+
+  ftable.header = &theader;
+
+  // *** Measure Data *** 
+  { 
+    // load data for this header 
+    if (!gfits_load_header (f, &theader)) goto escape;
+
+    // read the fits table bytes
+    if (!gfits_fread_ftable_data (f, &ftable, FALSE)) goto escape;
+ 
+    // need to create and assign to flat-field correction
+    GET_COLUMN(dR,        "RA_OFF",   	float);
+    GET_COLUMN(dD,        "DEC_OFF",  	float);
+    GET_COLUMN(M,         "MAG_SYS",  	float);
+    GET_COLUMN(Mcal,      "MAG_CAL",  	float);
+    GET_COLUMN(dM,        "MAG_ERR",  	float);
+    GET_COLUMN(airmass,   "AIRMASS",  	float);
+    GET_COLUMN(Xccd,      "X_CCD",    	float);
+    GET_COLUMN(Yccd,      "Y_CCD",    	float);
+    GET_COLUMN(dt,        "EXPTIME",  	float);
+    GET_COLUMN(t,         "TIME",     	int);
+    GET_COLUMN(averef,    "AVE_REF",  	int); // XXX signed vs unsigned?
+    GET_COLUMN(imageID,   "IMAGE_ID", 	int);
+    GET_COLUMN(dbFlags,   "DB_FLAGS", 	int);
+    GET_COLUMN(photFlags, "PHOT_FLAGS", int);
+    GET_COLUMN(catID,     "CAT_ID",     int);
+    GET_COLUMN(photcode,  "PHOTCODE",   short);
+    gfits_free_header (&theader);
+    gfits_free_table  (&ftable);
+
+    MeasureTiny *measure = NULL;
+    ALLOCATE (measure, MeasureTiny, Nrow);
+    for (i = 0; i < Nrow; i++) {
+      measure[i].dR        = dR[i];
+      measure[i].dD        = dD[i];
+      measure[i].M         = M[i];
+      measure[i].Mcal      = Mcal[i];
+      measure[i].dM        = dM[i];
+      measure[i].airmass   = airmass[i];
+      measure[i].Xccd      = Xccd[i];
+      measure[i].Yccd      = Yccd[i];
+      measure[i].dt        = dt[i];
+      measure[i].t         = t[i];
+      measure[i].averef    = averef[i];
+      measure[i].imageID   = imageID[i];
+      measure[i].dbFlags   = dbFlags[i];
+      measure[i].photFlags = photFlags[i];
+      measure[i].catID     = catID[i];
+      measure[i].photcode  = photcode[i];
+    }
+    // fprintf (stderr, "loaded data for %lld measures\n", (long long) Nrow);
+
+    free (dR      );
+    free (dD      );
+    free (M       );
+    free (Mcal    );
+    free (dM      );
+    free (airmass );
+    free (Xccd    );
+    free (Yccd    );
+    free (dt      );
+    free (t       );
+    free (averef  );
+    free (imageID );
+    free (dbFlags );
+    free (photFlags );
+    free (catID   );
+    free (photcode);
+
+    catalog->measure = measure;
+    catalog->Nmeasure = Nrow;
+  }
+
+  /*** load Average values ***/
+  { 
+
+    // load data for this header 
+    if (!gfits_load_header (f, &theader)) goto escape;
+
+    // read the fits table bytes
+    if (!gfits_fread_ftable_data (f, &ftable, FALSE)) goto escape;
+
+    GET_COLUMN(R,              "RA",          double);
+    GET_COLUMN(D,              "DEC",         double);
+    GET_COLUMN(dR,             "RA_ERR",      float);
+    GET_COLUMN(dD,             "DEC_ERR",     float);
+    GET_COLUMN(uR,             "U_RA",        float);
+    GET_COLUMN(uD,             "U_DEC",       float);
+    GET_COLUMN(duR,            "V_RA_ERR",    float);
+    GET_COLUMN(duD,            "V_DEC_ERR",   float);
+    GET_COLUMN(P,              "PAR",         float);
+    GET_COLUMN(dP,             "PAR_ERR",     float);
+    GET_COLUMN(ChiSqAve,       "CHISQ_POS",   float);
+    GET_COLUMN(ChiSqPM,        "CHISQ_PM",    float);
+    GET_COLUMN(ChiSqPar,       "CHISQ_PAP",   float);
+    GET_COLUMN(Tmean,          "MEAN_EPOCH",  int);
+    GET_COLUMN(Trange,         "TIME_RANGE",  int);
+    GET_COLUMN(Xp,             "SIGMA_POS",   float);
+    GET_COLUMN(Npos,           "NUMBER_POS",  short);
+    GET_COLUMN(Nmeasure,       "NMEASURE",    short);
+    GET_COLUMN(Nmissing,       "NMISSING",    short);
+    GET_COLUMN(Nextend,        "NEXTEND",     short);
+    GET_COLUMN(measureOffset,  "OFF_MEASURE", int);
+    GET_COLUMN(missingOffset,  "OFF_MISSING", int);
+    GET_COLUMN(extendOffset,   "OFF_EXTEND",  int);
+    GET_COLUMN(flags,          "FLAGS",       int);
+    GET_COLUMN(photFlagsUpper, "PHOTFLAGS_U", int);
+    GET_COLUMN(photFlagsLower, "PHOTFLAGS_L", int);
+    GET_COLUMN(objID,          "OBJ_ID",      int);
+    GET_COLUMN(catID,          "CAT_ID",      int);
+    GET_COLUMN(extID,          "EXT_ID",      int64_t);
+    gfits_free_header (&theader);
+    gfits_free_table  (&ftable);
+
+    Average *average = NULL;
+    ALLOCATE (average, Average, Nrow);
+    for (i = 0; i < Nrow; i++) {
+      average[i].R               = R[i]               ;
+      average[i].D               = D[i]               ;
+      average[i].dR              = dR[i]              ;
+      average[i].dD              = dD[i]              ;
+      average[i].uR              = uR[i]              ;
+      average[i].uD              = uD[i]              ;
+      average[i].duR             = duR[i]             ;
+      average[i].duD             = duD[i]             ;
+      average[i].P               = P[i]               ;
+      average[i].dP              = dP[i]              ;
+      average[i].ChiSqAve        = ChiSqAve[i]        ;
+      average[i].ChiSqPM         = ChiSqPM[i]         ;
+      average[i].ChiSqPar        = ChiSqPar[i]        ;
+      average[i].Tmean           = Tmean[i]           ;
+      average[i].Trange          = Trange[i]          ;
+      average[i].Xp              = Xp[i]              ;
+      average[i].Npos            = Npos[i]            ;
+      average[i].Nmeasure        = Nmeasure[i]        ;
+      average[i].Nmissing        = Nmissing[i]        ;
+      average[i].Nextend         = Nextend[i]         ;
+      average[i].measureOffset   = measureOffset[i]   ; 
+      average[i].missingOffset   = missingOffset[i]   ; 
+      average[i].extendOffset    = extendOffset[i]    ;  
+      average[i].flags           = flags[i]           ;
+      average[i].photFlagsUpper  = photFlagsUpper[i]  ;
+      average[i].photFlagsLower  = photFlagsLower[i]  ;
+      average[i].objID           = objID[i]           ;
+      average[i].catID           = catID[i]           ;
+      average[i].extID           = extID[i]           ;
+    }
+    fprintf (stderr, "loaded data for %lld averages\n", (long long) Nrow);
+
+    free (R);
+    free (D);
+    free (dR);
+    free (dD);
+    free (uR);
+    free (uD);
+    free (duR);
+    free (duD);
+    free (P);
+    free (dP);
+    free (ChiSqAve);
+    free (ChiSqPM);
+    free (ChiSqPar);
+    free (Tmean);
+    free (Trange);
+    free (Xp);
+    free (Npos);
+    free (Nmeasure);
+    free (Nmissing);
+    free (Nextend);
+    free (measureOffset);
+    free (missingOffset);
+    free (extendOffset);
+    free (flags);
+    free (photFlagsUpper);
+    free (photFlagsLower);
+    free (objID);
+    free (catID);
+    free (extID);
+
+    catalog->average = average;
+    catalog->Naverage = Nrow;
+  }
+
+  /*** load Secfilt values ***/
+  {
+
+    // load data for this header 
+    if (!gfits_load_header (f, &theader)) goto escape;
+
+    // read the fits table bytes
+    if (!gfits_fread_ftable_data (f, &ftable, FALSE)) goto escape;
+ 
+    // need to create and assign to flat-field correction
+    GET_COLUMN(M,     "MAG",      float);
+    GET_COLUMN(dM,    "MAG_ERR",  float);
+    GET_COLUMN(Xm,    "MAG_CHI",  float);
+    GET_COLUMN(flags, "FLAGS",    int);
+    GET_COLUMN(Ncode, "NCODE",    short);
+    GET_COLUMN(Nused, "NUSED",    short);
+    GET_COLUMN(M_20,  "MAG_20",   short);
+    GET_COLUMN(M_80,  "MAG_80",   short);
+    gfits_free_header (&theader);
+    gfits_free_table  (&ftable);
+
+    SecFilt *secfilt = NULL;
+    ALLOCATE (secfilt, SecFilt, Nrow);
+    for (i = 0; i < Nrow; i++) {
+      secfilt[i].M     = M[i];         
+      secfilt[i].dM    = dM[i];
+      secfilt[i].Xm    = Xm[i];
+      secfilt[i].flags = flags[i];
+      secfilt[i].Ncode = Ncode[i];
+      secfilt[i].Nused = Nused[i];
+      secfilt[i].M_20  = M_20[i];
+      secfilt[i].M_80  = M_80[i];
+    }
+    fprintf (stderr, "loaded data for %lld averages\n", (long long) Nrow);
+
+    free (M    );
+    free (dM   );
+    free (Xm   );
+    free (flags);
+    free (Ncode);
+    free (Nused);
+    free (M_20 );
+    free (M_80 );
+    catalog->secfilt = secfilt;
+    // assert Nsecfilt * Naverage = Nrow?
+  }
+
+
+  gfits_free_header (&header);
+  gfits_free_matrix (&matrix);
+  fclose (f);
+
+  return catalog;
+
+escape:
+  gfits_free_header (&header);
+  gfits_free_matrix (&matrix);
+  gfits_free_header (&theader);
+  gfits_free_table  (&ftable);
+  if (catalog) free (catalog);
+
+  fclose (f);
+  return NULL;
+}
+
+// we are passed a BrightCatalog structure, write it to a FITS table (3 ext)
+int BrightCatalogSave(char *filename, BrightCatalog *catalog) {
+
+  int i;
+  Header header;
+  Header theader;
+  Matrix matrix;
+  FTable ftable;
+
+  gfits_init_header (&header);
+  header.extend = TRUE;
+  gfits_create_header (&header);
+  gfits_create_matrix (&header, &matrix);
+
+  FILE *f = fopen (filename, "w");
+  if (!f) {
+    fprintf (stderr, "ERROR: cannot open image subset file for output %s\n", filename);
+    return FALSE;
+  }
+ 
+  gfits_fwrite_header  (f, &header);
+  gfits_fwrite_matrix  (f, &matrix);
+  gfits_free_header (&header);
+  gfits_free_matrix (&matrix);
+
+  /*** MeasureTiny ***/
+  {
+    gfits_create_table_header (&theader, "BINTABLE", "MEASURE_TINY");
+
+    gfits_define_bintable_column (&theader, "E", "RA_OFF",   "ra offset",                  "arcsec", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "DEC_OFF",  "dec offset",                 "arcsec", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "MAG_SYS",  "magnitude (sys)",             NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "MAG_CAL",  "magnitude (cal)",             NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "MAG_ERR",  "magnitude (err)",             NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "AIRMASS",  "airmass",                	    NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "X_CCD",    "ccd x coord",            	   "pix",    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "Y_CCD",    "ccd y coord",            	   "pix",    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "EXPTIME",  "-2.5 * log (exposure time)", "sec",    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "J", "TIME",     "time of exp",                "sec",    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "AVE_REF",  "pointer to average table",    NULL,    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "IMAGE_ID", "image",                       NULL,    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "DB_FLAGS", "flags",                       NULL,    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "PHOT_FLAGS", "photflags",                 NULL,    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "CAT_ID",   "catalog",                     NULL,    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "I", "PHOTCODE", "photcode",                    NULL,    1.0, 1.0*0x80);
+
+    // generate the output array that carries the data
+    gfits_create_table (&theader, &ftable);
+
+    // create intermediate storage arrays
+    float *dR        ; ALLOCATE (dR       ,  float, catalog->Nmeasure);
+    float *dD        ; ALLOCATE (dD       ,  float, catalog->Nmeasure);
+    float *M         ; ALLOCATE (M        ,  float, catalog->Nmeasure);
+    float *Mcal      ; ALLOCATE (Mcal     ,  float, catalog->Nmeasure);
+    float *dM        ; ALLOCATE (dM       ,  float, catalog->Nmeasure);
+    float *airmass   ; ALLOCATE (airmass  ,  float, catalog->Nmeasure);
+    float *Xccd      ; ALLOCATE (Xccd     ,  float, catalog->Nmeasure);
+    float *Yccd      ; ALLOCATE (Yccd     ,  float, catalog->Nmeasure);
+    float *dt        ; ALLOCATE (dt       ,  float, catalog->Nmeasure);
+    int   *t         ; ALLOCATE (t        ,  int  , catalog->Nmeasure);
+    int   *averef    ; ALLOCATE (averef   ,  int  , catalog->Nmeasure);
+    int   *imageID   ; ALLOCATE (imageID  ,  int  , catalog->Nmeasure);
+    int   *dbFlags   ; ALLOCATE (dbFlags  ,  int  , catalog->Nmeasure);
+    int   *photFlags ; ALLOCATE (photFlags,  int  , catalog->Nmeasure);
+    int   *catID     ; ALLOCATE (catID    ,  int  , catalog->Nmeasure);
+    short *photcode  ; ALLOCATE (photcode ,  short, catalog->Nmeasure);
+
+    // assign the storage arrays
+    MeasureTiny *measure = catalog->measure;
+    for (i = 0; i < catalog->Nmeasure; i++) {
+      dR[i]       = measure[i].dR       ;
+      dD[i]       = measure[i].dD       ;
+      M[i]  	  = measure[i].M        ;
+      Mcal[i]     = measure[i].Mcal     ;
+      dM[i]       = measure[i].dM       ;
+      airmass[i]  = measure[i].airmass  ;
+      Xccd[i]     = measure[i].Xccd     ;
+      Yccd[i]     = measure[i].Yccd     ;
+      dt[i]       = measure[i].dt       ;
+      t[i] 	  = measure[i].t        ;
+      averef[i]   = measure[i].averef   ;
+      catID[i]    = measure[i].catID    ;
+      imageID[i]  = measure[i].imageID  ;
+      dbFlags[i]  = measure[i].dbFlags  ;
+      photFlags[i]= measure[i].photFlags;
+      photcode[i] = measure[i].photcode ;
+    }
+
+    // add the columns to the output array
+    gfits_set_bintable_column (&theader, &ftable, "RA_OFF",   	dR,        catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "DEC_OFF",  	dD,        catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_SYS",  	M,         catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_CAL",  	Mcal,      catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_ERR",  	dM,        catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "AIRMASS",  	airmass,   catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "X_CCD",    	Xccd,      catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "Y_CCD",    	Yccd,      catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "EXPTIME",  	dt,        catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "TIME",     	t,         catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "AVE_REF",  	averef,    catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "IMAGE_ID", 	imageID,   catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "DB_FLAGS", 	dbFlags,   catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "PHOT_FLAGS", photFlags, catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "CAT_ID",     catID,     catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "PHOTCODE",   photcode,  catalog->Nmeasure);
+
+    free (dR      );
+    free (dD      );
+    free (M       );
+    free (Mcal    );
+    free (dM      );
+    free (airmass );
+    free (Xccd    );
+    free (Yccd    );
+    free (dt      );
+    free (t       );
+    free (averef  );
+    free (imageID );
+    free (dbFlags );
+    free (photFlags );
+    free (catID   );
+    free (photcode);
+
+    gfits_fwrite_Theader (f, &theader);
+    gfits_fwrite_table  (f, &ftable);
+    gfits_free_header (&theader);
+    gfits_free_table (&ftable);
+  }
+
+  /*** Average ***/
+  {
+    gfits_create_table_header (&theader, "BINTABLE", "AVERAGE");
+
+    gfits_define_bintable_column (&theader, "D", "RA",          "RA", 	         	  	         		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "D", "DEC",         "DEC", 	         	 	         		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "RA_ERR",      "RA error", 	         	         		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "DEC_ERR",     "DEC error", 	         	         		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "U_RA",        "RA*cos(D) proper-motion", 	         		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "U_DEC",       "DEC proper-motion", 	         	 		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "V_RA_ERR",    "RA*cos(D) p-m error", 	         	 		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "V_DEC_ERR",   "DEC p-m error", 	         	 		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "PAR",         "parallax", 	                         		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "PAR_ERR",     "parallax error", 	                 		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "CHISQ_POS",   "astrometry analysis chisq", 	         		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "CHISQ_PM",    "astrometry analysis chisq", 	         		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "CHISQ_PAP",   "astrometry analysis chisq", 	         		  "", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "J", "MEAN_EPOCH",  "mean epoch (PM-PAR ref)", 	         		  "", 1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "TIME_RANGE",  "mean epoch (PM-PAR ref)", 	         		  "", 1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "E", "SIGMA_POS",   "position scatter", 	                 		  "", 1.0, 0.0);   
+    gfits_define_bintable_column (&theader, "I", "NUMBER_POS",  "number of detections used for astrometry", 	          "", 1.0, 1.0*0x80);
+    gfits_define_bintable_column (&theader, "I", "NMEASURE",    "number of psf measurements", 	                          "", 1.0, 1.0*0x80);
+    gfits_define_bintable_column (&theader, "I", "NMISSING",    "number of missings", 	          	                  "", 1.0, 1.0*0x80);
+    gfits_define_bintable_column (&theader, "I", "NEXTEND",     "number of extended measurements", 	                  "", 1.0, 1.0*0x80);
+    gfits_define_bintable_column (&theader, "J", "OFF_MEASURE", "offset to first psf measurement", 	 	          "", 1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "OFF_MISSING", "offset to first missing obs", 	         	          "", 1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "OFF_EXTEND",  "offset to first extended measurement", 	          "", 1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "FLAGS",       "average object flags (star; ghost; etc)", 	          "", 1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "PHOTFLAGS_U", "upper bit of 2 bit summary of per-measure photflags", 	  "", 1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "PHOTFLAGS_L", "lower bit of 2 bit summary of per-measure photflags", 	  "", 1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "OBJ_ID",      "unique ID for object in table", 	                  "", 1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "CAT_ID",      "unique ID for table in which object was first realized", "", 1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "K", "EXT_ID",      "external ID for object (eg PSPS objID)", 	          "", 1.0, 1.0*0x80000000);
+
+    // generate the output array that carries the data
+    gfits_create_table (&theader, &ftable);
+
+    // create intermediate storage arrays
+    double   *R             ; ALLOCATE (R             , double  , catalog->Naverage);
+    double   *D             ; ALLOCATE (D             , double  , catalog->Naverage);
+    float    *dR            ; ALLOCATE (dR            , float   , catalog->Naverage);
+    float    *dD            ; ALLOCATE (dD            , float   , catalog->Naverage);
+    float    *uR            ; ALLOCATE (uR            , float   , catalog->Naverage);
+    float    *uD            ; ALLOCATE (uD            , float   , catalog->Naverage);
+    float    *duR           ; ALLOCATE (duR           , float   , catalog->Naverage);
+    float    *duD           ; ALLOCATE (duD           , float   , catalog->Naverage);
+    float    *P             ; ALLOCATE (P             , float   , catalog->Naverage);
+    float    *dP            ; ALLOCATE (dP            , float   , catalog->Naverage);
+    float    *ChiSqAve      ; ALLOCATE (ChiSqAve      , float   , catalog->Naverage);
+    float    *ChiSqPM       ; ALLOCATE (ChiSqPM       , float   , catalog->Naverage);
+    float    *ChiSqPar      ; ALLOCATE (ChiSqPar      , float   , catalog->Naverage);
+    int      *Tmean         ; ALLOCATE (Tmean         , int     , catalog->Naverage);
+    int      *Trange        ; ALLOCATE (Trange        , int     , catalog->Naverage);
+    float    *Xp            ; ALLOCATE (Xp            , float   , catalog->Naverage);
+    short    *Npos          ; ALLOCATE (Npos          , short   , catalog->Naverage);
+    short    *Nmeasure      ; ALLOCATE (Nmeasure      , short   , catalog->Naverage);
+    short    *Nmissing      ; ALLOCATE (Nmissing      , short   , catalog->Naverage);
+    short    *Nextend       ; ALLOCATE (Nextend       , short   , catalog->Naverage);
+    int      *measureOffset ; ALLOCATE (measureOffset , int     , catalog->Naverage);
+    int      *missingOffset ; ALLOCATE (missingOffset , int     , catalog->Naverage);
+    int      *extendOffset  ; ALLOCATE (extendOffset  , int     , catalog->Naverage);
+    int      *flags         ; ALLOCATE (flags         , int     , catalog->Naverage);
+    int      *photFlagsUpper; ALLOCATE (photFlagsUpper, int     , catalog->Naverage);
+    int      *photFlagsLower; ALLOCATE (photFlagsLower, int     , catalog->Naverage);
+    int      *objID         ; ALLOCATE (objID         , int     , catalog->Naverage);
+    int      *catID         ; ALLOCATE (catID         , int     , catalog->Naverage);
+    uint64_t *extID         ; ALLOCATE (extID         , uint64_t, catalog->Naverage);
+
+    // assign the storage arrays
+    Average *average = catalog->average;
+    for (i = 0; i < catalog->Naverage; i++) {
+      R[i]               = average[i].R               ;
+      D[i]               = average[i].D               ;
+      dR[i]              = average[i].dR              ;
+      dD[i]              = average[i].dD              ;
+      uR[i]              = average[i].uR              ;
+      uD[i]              = average[i].uD              ;
+      duR[i]             = average[i].duR             ;
+      duD[i]             = average[i].duD             ;
+      P[i]               = average[i].P               ;
+      dP[i]              = average[i].dP              ;
+      ChiSqAve[i]        = average[i].ChiSqAve        ;
+      ChiSqPM[i]         = average[i].ChiSqPM         ;
+      ChiSqPar[i]        = average[i].ChiSqPar        ;
+      Tmean[i]           = average[i].Tmean           ;
+      Trange[i]          = average[i].Trange          ;
+      Xp[i]              = average[i].Xp              ;
+      Npos[i]            = average[i].Npos            ;
+      Nmeasure[i]        = average[i].Nmeasure        ;
+      Nmissing[i]        = average[i].Nmissing        ;
+      Nextend[i]         = average[i].Nextend         ;
+      measureOffset[i]   = average[i].measureOffset   ; 
+      missingOffset[i]   = average[i].missingOffset   ; 
+      extendOffset[i]    = average[i].extendOffset    ;  
+      flags[i]           = average[i].flags           ;
+      photFlagsUpper[i]  = average[i].photFlagsUpper  ;
+      photFlagsLower[i]  = average[i].photFlagsLower  ;
+      objID[i]           = average[i].objID           ;
+      catID[i]           = average[i].catID           ;
+      extID[i]           = average[i].extID           ;
+    }
+
+    // add the columns to the output array
+    gfits_set_bintable_column (&theader, &ftable, "RA",          R,               catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "DEC",         D,               catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "RA_ERR",      dR,              catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "DEC_ERR",     dD,              catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "U_RA",        uR,              catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "U_DEC",       uD,              catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "V_RA_ERR",    duR,             catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "V_DEC_ERR",   duD,             catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "PAR",         P,               catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "PAR_ERR",     dP,              catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "CHISQ_POS",   ChiSqAve,        catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "CHISQ_PM",    ChiSqPM,         catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "CHISQ_PAP",   ChiSqPar,        catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "MEAN_EPOCH",  Tmean,           catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "TIME_RANGE",  Trange,          catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "SIGMA_POS",   Xp,              catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "NUMBER_POS",  Npos,            catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "NMEASURE",    Nmeasure,        catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "NMISSING",    Nmissing,        catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "NEXTEND",     Nextend,         catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "OFF_MEASURE", measureOffset,   catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "OFF_MISSING", missingOffset,   catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "OFF_EXTEND",  extendOffset,    catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "FLAGS",       flags,           catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "PHOTFLAGS_U", photFlagsUpper,  catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "PHOTFLAGS_L", photFlagsLower,  catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "OBJ_ID",      objID,           catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "CAT_ID",      catID,           catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "EXT_ID",      extID,           catalog->Naverage);
+
+    free (R);
+    free (D);
+    free (dR);
+    free (dD);
+    free (uR);
+    free (uD);
+    free (duR);
+    free (duD);
+    free (P);
+    free (dP);
+    free (ChiSqAve);
+    free (ChiSqPM);
+    free (ChiSqPar);
+    free (Tmean);
+    free (Trange);
+    free (Xp);
+    free (Npos);
+    free (Nmeasure);
+    free (Nmissing);
+    free (Nextend);
+    free (measureOffset);
+    free (missingOffset);
+    free (extendOffset);
+    free (flags);
+    free (photFlagsUpper);
+    free (photFlagsLower);
+    free (objID);
+    free (catID);
+    free (extID);
+
+    gfits_fwrite_Theader (f, &theader);
+    gfits_fwrite_table  (f, &ftable);
+    gfits_free_header (&theader);
+    gfits_free_table (&ftable);
+  }
+
+  /*** SecFilt ***/
+  {
+    gfits_create_table_header (&theader, "BINTABLE", "SECFILT");
+
+    gfits_define_bintable_column (&theader, "E", "MAG",      "ra offset",                "arcsec", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "MAG_ERR",  "dec offset",               "arcsec", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "MAG_CHI",  "magnitude (sys)",           NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "J", "FLAGS",    "magnitude (cal)",           NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "I", "NCODE",    "magnitude (err)",           NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "I", "NUSED",    "airmass",                   NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "I", "MAG_20",   "ccd x coord",              "pix",    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "I", "MAG_80",   "ccd y coord",              "pix",    1.0, 0.0);
+
+    // generate the output array that carries the data
+    gfits_create_table (&theader, &ftable);
+
+    // Nsecfilt is number of average filters, Nsec is total number of values
+    int Nsecfilt = GetPhotcodeNsecfilt();
+    int Nsec = Nsecfilt * catalog->Naverage;
+
+    // create intermediate storage arrays
+    float *M        ; ALLOCATE (M      ,  float, Nsec);
+    float *dM       ; ALLOCATE (dM     ,  float, Nsec);
+    float *Xm       ; ALLOCATE (Xm     ,  float, Nsec);
+    int   *flags    ; ALLOCATE (flags  ,  int,   Nsec);
+    short *Ncode    ; ALLOCATE (Ncode  ,  short, Nsec);
+    short *Nused    ; ALLOCATE (Nused  ,  short, Nsec);
+    short *M_20     ; ALLOCATE (M_20   ,  short, Nsec);
+    short *M_80     ; ALLOCATE (M_80   ,  short, Nsec);
+
+    // assign the storage arrays
+    SecFilt *secfilt = catalog->secfilt;
+    for (i = 0; i < Nsec; i++) {
+      M     [i]       = secfilt[i]. M      ;
+      dM    [i]       = secfilt[i]. dM     ;
+      Xm    [i]       = secfilt[i]. Xm     ;
+      flags [i]       = secfilt[i]. flags  ;
+      Ncode [i]       = secfilt[i]. Ncode  ;
+      Nused [i]       = secfilt[i]. Nused  ;
+      M_20  [i]       = secfilt[i]. M_20   ;
+      M_80  [i]       = secfilt[i]. M_80   ;
+    }
+
+    // add the columns to the output array
+    gfits_set_bintable_column (&theader, &ftable, "MAG",      M    , Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_ERR",  dM   , Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_CHI",  Xm   , Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "FLAGS",    flags, Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "NCODE",    Ncode, Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "NUSED",    Nused, Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_20",   M_20 , Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_80",   M_80 , Nsec);
+
+    free (M      );
+    free (dM     );
+    free (Xm     );
+    free (flags  );
+    free (Ncode  );
+    free (Nused  );
+    free (M_20   );
+    free (M_80   );
+
+    gfits_fwrite_Theader (f, &theader);
+    gfits_fwrite_table  (f, &ftable);
+    gfits_free_header (&theader);
+    gfits_free_table (&ftable);
+  }
+  return TRUE;
+}
+
+// merge a list of catalogs into a single BrightCatalog array set
+BrightCatalog *BrightCatalogMerge (Catalog *catalog, int Ncatalog) {
+
+  off_t i, j, k;
+
+  BrightCatalog *bcatalog = NULL;
+  ALLOCATE (bcatalog, BrightCatalog, 1);
+  
+  int Nmeas = 0;
+  int Naves = 0;
+  for (i = 0; i < Ncatalog; i++) {
+    Nmeas += catalog[i].Nmeasure;
+    Naves += catalog[i].Naverage;
+  }
+    
+  // XXX this prevents different catalogs from having different Nsecfilt values
+  int Nsecfilt = GetPhotcodeNsecfilt();
+
+  ALLOCATE (bcatalog[0].measure, MeasureTiny, Nmeas);
+  ALLOCATE (bcatalog[0].average, Average,     Naves);
+  ALLOCATE (bcatalog[0].secfilt, SecFilt,     Naves*Nsecfilt);
+  
+  int Nm = 0;
+  int Na = 0;
+  for (i = 0; i < Ncatalog; i++) {
+    if (!catalog[i].Naverage) continue;
+    for (j = 0; j < catalog[i].Naverage; j++) {
+      bcatalog[0].average[Na] = catalog[i].average[j];
+      for (k = 0; k < Nsecfilt; k++) {
+	bcatalog[0].secfilt[Nsecfilt*Na + k] = catalog[i].secfilt[Nsecfilt*j + k];
+      }
+      Na++;
+      assert (Na <= Naves);
+    }
+    for (j = 0; j < catalog[i].Nmeasure; j++) {
+      bcatalog[0].measure[Nm] = catalog[i].measureT[j];
+      Nm++;
+      assert (Nm <= Nmeas);
+    }
+  }
+  bcatalog->Naverage = Na;
+  bcatalog->Nmeasure = Nm;
+  return bcatalog;
+}
+
+// distribute a bright catalog across separate catalogs
+CatalogSplitter *BrightCatalogSplitInit (int Nsecfilt) {
+
+  int i;
+
+  CatalogSplitter *catalogs = NULL;
+
+  ALLOCATE (catalogs, CatalogSplitter, 1);
+
+  // as we see new BrightCatalogs, we will update maxID and extend this array
+  catalogs->maxID = 0;
+  ALLOCATE (catalogs->index, int, catalogs->maxID + 1);
+  for (i = 0; i <= catalogs->maxID; i++) catalogs->index[i] = -1;
+
+  catalogs->Nsecfilt = Nsecfilt;
+
+  catalogs->Ncatalog =  0;
+  catalogs->NCATALOG = 16;
+  catalogs->catalog = NULL;
+  ALLOCATE (catalogs->catalog, Catalog, catalogs->NCATALOG);
+
+  ALLOCATE (catalogs->catIDs,   int,   catalogs->NCATALOG);
+  ALLOCATE (catalogs->NAVERAGE, off_t, catalogs->NCATALOG);
+  ALLOCATE (catalogs->NMEASURE, off_t, catalogs->NCATALOG);
+
+  for (i = 0; i < catalogs->NCATALOG; i++) {
+    dvo_catalog_init (&catalogs->catalog[i], TRUE);
+    catalogs->catIDs[i] = 0;
+    catalogs->NAVERAGE[i] = 100;
+    catalogs->NMEASURE[i] = 100;
+    catalogs->catalog[i].Naverage = 0;
+    catalogs->catalog[i].Nmeasure = 0;
+    ALLOCATE (catalogs->catalog[i].average,  Average,     catalogs->NAVERAGE[i]);
+    ALLOCATE (catalogs->catalog[i].measureT, MeasureTiny, catalogs->NMEASURE[i]);
+    ALLOCATE (catalogs->catalog[i].secfilt,  SecFilt,     catalogs->NAVERAGE[i]*Nsecfilt);
+  }
+  return catalogs;
+}
+
+// distribute a bright catalog across separate catalogs
+int BrightCatalogSplitFree (CatalogSplitter *catalogs) {
+
+  free (catalogs->catIDs);
+  free (catalogs->NAVERAGE);
+  free (catalogs->NMEASURE);
+  free (catalogs->index);
+  free (catalogs);
+  return TRUE;
+}
+
+// distribute a bright catalog across separate catalogs
+int BrightCatalogSplit (CatalogSplitter *catalogs, BrightCatalog *bcatalog) {
+
+  int i;
+
+  int Nsecfilt = catalogs->Nsecfilt;
+
+  // find the max value of catID in this BrightCatalog
+  int catIDmax = 0;
+  for (i = 0; i < bcatalog->Naverage; i++) {
+    catIDmax = MAX(catIDmax, bcatalog->average[i].catID);
+  }
+  // XXX validate the measure ID range here
+    
+  int maxIDold = catalogs->maxID;
+  catalogs->maxID = MAX (maxIDold, catIDmax);
+    
+  // extend the index array and init
+  REALLOCATE (catalogs->index, int, catalogs->maxID + 1);
+  for (i = maxIDold + 1; i <= catalogs->maxID; i++) catalogs->index[i] = -1;
+
+  // identify the new catID values
+  for (i = 0; i < bcatalog->Naverage; i++) {
+    int catID = bcatalog->average[i].catID;
+    assert (catID > 0);
+    assert (catID < catalogs->maxID + 1);
+    int idx = catalogs->index[catID];
+    if (idx != -1) continue; // already have seen this one
+
+    // a new catID value
+    int Ncat = catalogs->Ncatalog; // the next available slot
+    catalogs->catIDs[Ncat] = catID;
+    assert (Ncat >= 0);
+    assert (Ncat < catalogs->NCATALOG);
+
+    catalogs->catalog[Ncat].Nsecfilt = Nsecfilt;
+    catalogs->catalog[Ncat].catID = catID;
+
+    catalogs->index[catID] = Ncat;
+    assert (catID > 0);
+    assert (catID < catalogs->maxID + 1);
+
+    catalogs->Ncatalog ++;
+
+    if (catalogs->Ncatalog >= catalogs->NCATALOG) {
+      catalogs->NCATALOG += 16;
+      // fprintf (stderr, "realloc catalogs->catalog: old: %llx  ", (long long) catalogs->catalog);
+      REALLOCATE (catalogs->catalog, Catalog, catalogs->NCATALOG);
+      // fprintf (stderr, "new: %llx  -  %llx\n", (long long) catalogs->catalog, (long long) (catalogs->catalog + sizeof(Catalog)*catalogs->NCATALOG));
+
+      // fprintf (stderr, "realloc catalogs->NAVERAGE: old: %llx  ", (long long) catalogs->NAVERAGE);
+      REALLOCATE (catalogs->NAVERAGE, off_t,  catalogs->NCATALOG);
+      // fprintf (stderr, "new: %llx  -  %llx\n", (long long) catalogs->NAVERAGE, (long long) (catalogs->NAVERAGE + sizeof(off_t)*catalogs->NCATALOG));
+
+      // fprintf (stderr, "realloc catalogs->NMEASURE: old: %llx  ", (long long) catalogs->NMEASURE);
+      REALLOCATE (catalogs->NMEASURE, off_t,  catalogs->NCATALOG);
+      // fprintf (stderr, "new: %llx  -  %llx\n", (long long) catalogs->NMEASURE, (long long) (catalogs->NMEASURE + sizeof(off_t)*catalogs->NCATALOG));
+
+      REALLOCATE (catalogs->catIDs,   int,   catalogs->NCATALOG);
+
+      int j;
+      for (j = catalogs->NCATALOG - 16; j < catalogs->NCATALOG; j++) {
+	dvo_catalog_init (&catalogs->catalog[j], TRUE);
+	catalogs->catIDs[j] = 0;
+	catalogs->NAVERAGE[j] = 100;
+	catalogs->NMEASURE[j] = 100;
+	catalogs->catalog[j].Naverage = 0;
+	catalogs->catalog[j].Nmeasure = 0;
+	ALLOCATE (catalogs->catalog[j].average,  Average,     catalogs->NAVERAGE[j]);
+	ALLOCATE (catalogs->catalog[j].measureT, MeasureTiny, catalogs->NMEASURE[j]);
+	ALLOCATE (catalogs->catalog[j].secfilt,  SecFilt,     catalogs->NAVERAGE[j]*Nsecfilt);
+      }
+    }
+  }
+
+  // each bcatalog (from each host) has a different set of catID ranges
+  // they also (probably) have contiguous ranges.  But, it is a bit tricky to be sure I
+  // can use that info, so perhaps ignore it
+
+  // assign the averages to the corresponding catalog
+  for (i = 0; i < bcatalog->Naverage; i++) {
+    int ID = bcatalog->average[i].catID;
+    int Nc = catalogs->index[ID];
+    assert (Nc > -1);
+    assert (Nc < catalogs->NCATALOG);
+
+    int Na = catalogs->catalog[Nc].Naverage;
+    catalogs->catalog[Nc].average[Na] = bcatalog->average[i];
+
+    // secfilt entries are grouped in blocks for each average
+    int k;
+    for (k = 0; k < Nsecfilt; k++) {
+      catalogs->catalog[Nc].secfilt[Na*Nsecfilt + k] = bcatalog->secfilt[i*Nsecfilt + k];
+    }      
+
+    catalogs->catalog[Nc].Naverage ++;
+    if (catalogs->catalog[Nc].Naverage >= catalogs->NAVERAGE[Nc]) {
+      catalogs->NAVERAGE[Nc] += 100;
+      REALLOCATE (catalogs->catalog[Nc].average,  Average, catalogs->NAVERAGE[Nc]);
+      REALLOCATE (catalogs->catalog[Nc].secfilt,  SecFilt, catalogs->NAVERAGE[Nc]*Nsecfilt);
+    }	       
+  }
+
+  // assign the measures to the corresponding catalog
+  // XXX what about averef and related links?  Do I need them?
+  for (i = 0; i < bcatalog->Nmeasure; i++) {
+    int ID = bcatalog->measure[i].catID;
+    int Nc = catalogs->index[ID];
+    assert (Nc > -1);
+    assert (Nc < catalogs->NCATALOG);
+    int Na = catalogs->catalog[Nc].Nmeasure;
+    catalogs->catalog[Nc].measureT[Na] = bcatalog->measure[i];
+    catalogs->catalog[Nc].Nmeasure ++;
+    if (catalogs->catalog[Nc].Nmeasure >= catalogs->NMEASURE[Nc]) {
+      catalogs->NMEASURE[Nc] += 100;
+      REALLOCATE (catalogs->catalog[Nc].measureT, MeasureTiny, catalogs->NMEASURE[Nc]);
+    }	       
+  }
+
+  return TRUE;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/ConfigInit.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/ConfigInit.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/ConfigInit.c	(revision 34041)
@@ -26,14 +26,9 @@
   if (!ScanConfig (config, "RELASTRO_IMFIT_SYS_SIGMA_LIM", "%lf", 0, &IMFIT_SYS_SIGMA_LIM)) IMFIT_SYS_SIGMA_LIM = 0.01;
 
-  // XXX these are used in relphot to identify poor stars / images -- define
-  // an equivalent concept here?
-  // GetConfig (config, "STAR_SCATTER",           "%lf", 0, &STAR_SCATTER);
-  // GetConfig (config, "IMAGE_SCATTER",          "%lf", 0, &IMAGE_SCATTER);
-  // GetConfig (config, "IMAGE_OFFSET",           "%lf", 0, &IMAGE_OFFSET);
-  // GetConfig (config, "STAR_CHISQ",             "%lf", 0, &STAR_CHISQ);
-
   GetConfig (config, "PM_DT_MIN",              "%lf", 0, &PM_DT_MIN);
   GetConfig (config, "PM_TOOFEW",              "%d",  0, &PM_TOOFEW);
   GetConfig (config, "POS_TOOFEW",             "%d",  0, &POS_TOOFEW);
+
+  GetConfig (config, "PAR_FACTOR_MIN",         "%lf", 0, &PAR_FACTOR_MIN);
 
   GetConfig (config, "RELASTRO_MAP_NX",        "%d",  0, &NX_MAP);
@@ -42,6 +37,11 @@
   GetConfig (config, "ADDSTAR_RADIUS",         "%lf", 0, &ADDSTAR_RADIUS);
 
+  // force CATDIR to be absolute (so parallel mode will work)
+  GetConfig (config, "CATDIR",                 "%s",  0, CATDIR);
+  char *tmpcatdir = abspath (CATDIR, DVO_MAX_PATH);
+  strcpy (CATDIR, tmpcatdir);
+  free (tmpcatdir);
+
   GetConfig (config, "GSCFILE",                "%s",  0, GSCFILE);
-  GetConfig (config, "CATDIR",                 "%s",  0, CATDIR);
   ScanConfig(config, "CATMODE",                "%s",  0, CATMODE);
   ScanConfig(config, "CATFORMAT",              "%s",  0, CATFORMAT);
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/FitChip.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/FitChip.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/FitChip.c	(revision 34041)
@@ -4,5 +4,5 @@
 int FitChip (StarData *raw, StarData *ref, int Nmatch, Image *image) {
 
-  int i, NstatFull, Nstat, Niter, skip;
+  int i, NstatFull, Nstat, Niter;
   float dLsig, dMsig, dRsig;
   float dLsigFull, dMsigFull, dRsigFull;
@@ -27,9 +27,9 @@
       if (raw[i].mask) continue;
       if (isnan(raw[i].dMag)) { 
-	raw[i].mask |= 0x0004; 
+	raw[i].mask |= MARK_NAN_MAG_ERROR; 
 	continue; 
       }
       if (raw[i].dMag > SIGMA_LIM) { 
-	raw[i].mask |= 0x0008; 
+	raw[i].mask |= MARK_BIG_MAG_ERROR; 
 	continue; 
       } // is this redundant with ImageOps.c:915?
@@ -39,5 +39,5 @@
       dR = hypot (dL, dM);
       if (dR > dRmax) {
-	raw[i].mask |= 0x0010;
+	raw[i].mask |= MARK_BIG_OFFSET;
 	continue;
       }
@@ -52,6 +52,15 @@
     // fit the requested order polynomial
     if (CHIPORDER > 0) {
-      image[0].coords.Npolyterms = CHIPORDER;
-    }
+      int Ndof_min = 3;
+      int order_max = 0.5*(sqrt(4*Nmatch - 4*Ndof_min + 1) - 3);
+      int order_use = MIN (CHIPORDER, order_max);
+      if (order_use < 1) {
+	if (VERBOSE2) fprintf (stderr, "insufficient measurements (%d) for linear fit\n", Nmatch);
+	image[0].flags |= ID_IMAGE_ASTROM_FEW;
+	return FALSE;
+      }
+      image[0].coords.Npolyterms = order_use;
+    }
+
     if (fit) fit_free (fit);
     fit = fit_init (image[0].coords.Npolyterms);
@@ -63,4 +72,5 @@
     }
 
+# if (0)
     // check if the fit has enough data points for the polynomial order
     skip = FALSE;
@@ -86,4 +96,5 @@
       return FALSE;
     }
+# endif
 
     // measure the fit, update the coords & object coordinates
@@ -91,4 +102,5 @@
       fprintf (stderr, "failed to fit new model\n");
       image[0].flags |= ID_IMAGE_ASTROM_FAIL;
+      if (fit) fit_free (fit);
       return FALSE;
     }
@@ -97,4 +109,5 @@
       fprintf (stderr, "failed to fit new model\n");
       image[0].flags |= ID_IMAGE_ASTROM_FAIL;
+      if (fit) fit_free (fit);
       return FALSE;
     }
@@ -114,13 +127,13 @@
   for (i = 0; i < Nmatch; i++) {
     if (!raw[i].mask) continue;
-    if (raw[i].mask & 0x01) nMask1 ++;
-    if (raw[i].mask & 0x02) nMask2 ++;
-    if (raw[i].mask & 0x04) nMask3 ++;
-    if (raw[i].mask & 0x08) nMask4 ++;
-    if (raw[i].mask & 0x10) nMask5 ++;
+    if (raw[i].mask & MARK_TOO_FEW_MEAS ) nMask1 ++;
+    if (raw[i].mask & MARK_NAN_POS_ERROR) nMask2 ++;
+    if (raw[i].mask & MARK_NAN_MAG_ERROR) nMask3 ++;
+    if (raw[i].mask & MARK_BIG_MAG_ERROR) nMask4 ++;
+    if (raw[i].mask & MARK_BIG_OFFSET   ) nMask5 ++;
   }
 
   GetScatterRawRef(&dLsigFull, &dMsigFull, &dRsigFull, &NstatFull, raw, ref, Nmatch, SIGMA_LIM);
-  GetScatterRawRef(&dLsig, &dMsig, &dRsig, &Nstat, raw, ref, Nmatch, IMFIT_SYS_SIGMA_LIM);
+  GetScatterRawRef(&dLsig,     &dMsig,     &dRsig,     &Nstat,     raw, ref, Nmatch, IMFIT_SYS_SIGMA_LIM);
 
   int Nm = 0;
@@ -133,5 +146,5 @@
   image[0].nLinkAstrom = (Nm / Ns);
 
-  if (VERBOSE) fprintf (stderr, "fit sigma: %f (%f, %f) : full: %f (%f, %f), scatter limit: %f (%d full, %d bright, %d fit, %d all) (%d %d %d %d %d)\n", dRsig, dLsig, dMsig, dRsigFull, dLsigFull, dMsigFull, dRmax, NstatFull, Nstat, fit[0].Npts, Nmatch, nMask1, nMask2, nMask3, nMask4, nMask5);
+  if (VERBOSE2) fprintf (stderr, "fit sigma: %f (%f, %f) : full: %f (%f, %f), scatter limit: %f (%d full, %d bright, %d fit, %d all) (%d %d %d %d %d)\n", dRsig, dLsig, dMsig, dRsigFull, dLsigFull, dMsigFull, dRmax, NstatFull, Nstat, fit[0].Npts, Nmatch, nMask1, nMask2, nMask3, nMask4, nMask5);
 
   image[0].dXpixSys = dLsig;
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/FixProblemImages.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/FixProblemImages.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/FixProblemImages.c	(revision 34041)
@@ -5,4 +5,7 @@
 
 int FixProblemImages (SkyList *skylist) {
+
+    fprintf (stderr, "this function is currently not used : check on change from measure -> measureT in load_catalogs\n");
+    abort();
 
   int Nbad;
@@ -64,5 +67,6 @@
     }
 
-    catalog = load_catalogs (&sublist, &Ncat, FALSE);
+    // XXX use a different function here
+    // catalog = load_catalogs (&sublist, &Ncat, FALSE);
     assert (Ncat == Ncatlist);
 
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/GetAstromError.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/GetAstromError.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/GetAstromError.c	(revision 34041)
@@ -1,4 +1,46 @@
 # include "relastro.h"
 # define WEIGHTED_ERRORS 1
+
+float GetAstromErrorTiny (MeasureTiny *measure, int mode) {
+
+  PhotCode *code;
+  float dPobs, dPsys, dPtotal, dM, AS, MS, dX, dY;
+
+  if (!WEIGHTED_ERRORS) {
+    // if we don't understand the errors at all, this at least lets us get things roughly
+    // right:
+    return 0.1;
+  }
+
+  switch (mode) {
+    case ERROR_MODE_RA:
+      dPobs = FromShortPixels(measure[0].dXccd);  // dXccd is a value in pixels
+      break;
+    case ERROR_MODE_DEC:
+      dPobs = FromShortPixels(measure[0].dYccd);  // dYccd is a value in pixels
+      break;
+    case ERROR_MODE_POS:
+      dX = FromShortPixels(measure[0].dXccd);  // dXccd is a value in pixels
+      dY = FromShortPixels(measure[0].dYccd);  // dYccd is a value in pixels
+      dPobs = hypot (dX, dY);
+      break;
+    default:
+      abort();
+  }
+
+  code 	= GetPhotcodebyCode (measure[0].photcode);
+
+  // do not raise an exception, just send back the result
+  if (isnan(code[0].astromErrSys)) return NAN;
+
+  AS   	= code[0].astromErrScale;
+  MS   	= code[0].astromErrMagScale;
+  dPsys = code[0].astromErrSys;
+  dM    = measure[0].dM;
+  dPtotal = sqrt(SQ(dPsys) + SQ(AS*dPobs) + SQ(MS*dM));
+
+  dPtotal = MAX (dPtotal, MIN_ERROR);
+  return (dPtotal);
+}
 
 float GetAstromError (Measure *measure, int mode) {
@@ -30,4 +72,8 @@
 
   code 	= GetPhotcodebyCode (measure[0].photcode);
+
+  // do not raise an exception, just send back the result
+  if (isnan(code[0].astromErrSys)) return NAN;
+
   AS   	= code[0].astromErrScale;
   MS   	= code[0].astromErrMagScale;
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/ImageOps.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/ImageOps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/ImageOps.c	(revision 34041)
@@ -3,17 +3,22 @@
 # define USE_IMAGE_ID 1
 
-static off_t       **bin;     // link from catalog,measure to image
-static int         **clist;   // catalog which supplied measurement on image
-static off_t       **mlist;   // measure reference for measurement on image
-static off_t        *Nlist;   // number of measurements on image
-static off_t        *NLIST;   // allocated number of measurements on image   
-
+// we have an array of images: image[ImageIndex] (ImageIndex : 0 < Nimage)
 static Image        *image;   // list of available images
 static off_t        Nimage;   // number of available images
+
+// if we read only a subset of the rows from the Image FITS, LineNumber tells us to which row
+// each image belongs
 static off_t       *LineNumber; // match of subset to full image table
 
-static int         *Ncatlist;  // catalogs associated with each image
-static int         *NCATLIST;  // catalogs associated with each image
+static off_t        *N_onImage;   // number of measurements on image
+static off_t        *N_ONIMAGE;   // allocated number of measurements on image   
+
+static int          *Ncatlist;  // catalogs associated with each image
+static int          *NCATLIST;  // catalogs associated with each image
 static int         **catlist;  // catalogs associated with each image
+
+static IDX_T       **MeasureToImage;     // link from catalog,measure to image
+static IDX_T       **ImageToCatalog;   // catalog which supplied measurement on image
+static IDX_T       **ImageToMeasure;   // measure reference for measurement on image
 
 // if we search by image ID, we sort (imageIDs, imageIdx) by imageIDs to get a sorted
@@ -28,4 +33,11 @@
 # endif
 
+// MeasureToImage was 'bin'
+// ImageToCatalog was 'clist'
+// ImageToMeasure was 'mlist'
+
+// N_onImage was 'Nlist'
+// N_ONIMAGE was 'NLIST'
+
 Image *getimages (off_t *N, off_t **line_number) {
 
@@ -105,20 +117,20 @@
   off_t i, j;
 
-  ALLOCATE (bin, off_t *, Ncatalog);
+  ALLOCATE (MeasureToImage, IDX_T *, Ncatalog);
   for (i = 0; i < Ncatalog; i++) {
-    ALLOCATE (bin[i], off_t, MAX (catalog[i].Nmeasure, 1));
-    for (j = 0; j < catalog[i].Nmeasure; j++) bin[i][j] = -1;
-  }
-
-  ALLOCATE (Nlist, off_t,   Nimage);
-  ALLOCATE (NLIST, off_t,   Nimage);
-  ALLOCATE (clist, int *,   Nimage);
-  ALLOCATE (mlist, off_t *, Nimage);
+    ALLOCATE (MeasureToImage[i], IDX_T, MAX (catalog[i].Nmeasure, 1));
+    for (j = 0; j < catalog[i].Nmeasure; j++) MeasureToImage[i][j] = -1;
+  }
+
+  ALLOCATE (N_onImage, off_t,   Nimage);
+  ALLOCATE (N_ONIMAGE, off_t,   Nimage);
+  ALLOCATE (ImageToCatalog, IDX_T *,   Nimage);
+  ALLOCATE (ImageToMeasure, IDX_T *, Nimage);
 
   for (i = 0; i < Nimage; i++) {
-    Nlist[i] =   0;
-    NLIST[i] = 100;
-    clist[i] = NULL;  // we allocate these iff they are needed in matchImage
-    mlist[i] = NULL;  // we allocate these iff they are needed in matchImage
+    N_onImage[i] =   0;
+    N_ONIMAGE[i] =  30;
+    ImageToCatalog[i] = NULL;  // we allocate these iff they are needed in matchImage
+    ImageToMeasure[i] = NULL;  // we allocate these iff they are needed in matchImage
   }
 
@@ -141,15 +153,15 @@
 
   for (i = 0; i < Ncatalog; i++) {
-    free (bin[i]);
-  }
-  free (bin);
+    free (MeasureToImage[i]);
+  }
+  free (MeasureToImage);
   for (i = 0; i < Nimage; i++) {
-    if (clist[i]) { free (clist[i]); }
-    if (mlist[i]) { free (mlist[i]); }
-  }
-  free (clist);
-  free (mlist);
-  free (Nlist);
-  free (NLIST);
+    if (ImageToCatalog[i]) { free (ImageToCatalog[i]); }
+    if (ImageToMeasure[i]) { free (ImageToMeasure[i]); }
+  }
+  free (ImageToCatalog);
+  free (ImageToMeasure);
+  free (N_onImage);
+  free (N_ONIMAGE);
 }
 
@@ -169,9 +181,26 @@
   }
 
-  for (i = 0; VERBOSE2 && (i < Nimage); i++) {
-    name = GetPhotcodeNamebyCode (image[i].photcode);
-    fprintf (stderr, "image "OFF_T_FMT" has "OFF_T_FMT" measures (%s, %s)\n",  i,  Nlist[i],
-             ohana_sec_to_date(image[i].tzero), name);
-  }
+  // watch for chips with few stars
+  int Nfew = 0;
+  int Nbad = 0;
+  for (i = 0; i < Nimage; i++) {
+    // ignore the PHU entries
+    if (!strcmp(&image[i].coords.ctype[4], "-DIS")) continue;
+    if (VERBOSE2 || (MATCHCAT && (N_onImage[i] < 20))) {
+      name = GetPhotcodeNamebyCode (image[i].photcode);
+      fprintf (stderr, "image "OFF_T_FMT" (%d, %s) has "OFF_T_FMT" of %d measures (%s, %s)",  i,  image[i].imageID, image[i].name, N_onImage[i], image[i].nstar,
+	       ohana_sec_to_date(image[i].tzero), name);
+      if (N_onImage[i] < 20) {
+	fprintf (stderr, "*");
+	Nfew ++;
+      } 
+      if (N_onImage[i] < 15) {
+	fprintf (stderr, "*** warning ***");
+	Nbad ++;
+      } 
+      fprintf (stderr, "\n");
+    }
+  }
+  fprintf (stderr, OFF_T_FMT" total images, %d with < 20 measurements, %d with < 15\n", Nimage, Nfew, Nbad);
 }
 
@@ -181,8 +210,8 @@
 
   off_t idx, ID;
-  Measure *measure;
+  MeasureTiny *measure;
   int i, found;
 
-  measure = &catalog[cat].measure[meas];
+  measure = &catalog[cat].measureT[meas];
 
   ID = measure[0].imageID;
@@ -194,25 +223,25 @@
 
   // index for (catalog, measure) -> image
-  bin[cat][meas] = idx;
+  MeasureToImage[cat][meas] = idx;
 
   // if we need to allocate an image index table, do so here
-  if (!clist[idx]) {
-      ALLOCATE (clist[idx], int, NLIST[idx]);
-  }
-  if (!mlist[idx]) {
-      ALLOCATE (mlist[idx], off_t, NLIST[idx]);
+  if (!ImageToCatalog[idx]) {
+      ALLOCATE (ImageToCatalog[idx], IDX_T, N_ONIMAGE[idx]);
+  }
+  if (!ImageToMeasure[idx]) {
+      ALLOCATE (ImageToMeasure[idx], IDX_T, N_ONIMAGE[idx]);
   }
 
   // index for image, Nentry -> catalog
-  clist[idx][Nlist[idx]] = cat;
+  ImageToCatalog[idx][N_onImage[idx]] = cat;
 
   // index for image, Nentry -> measure
-  mlist[idx][Nlist[idx]] = meas;
-  Nlist[idx] ++;
-
-  if (Nlist[idx] == NLIST[idx]) {
-    NLIST[idx] += 100;
-    REALLOCATE (clist[idx], int,   NLIST[idx]);
-    REALLOCATE (mlist[idx], off_t, NLIST[idx]);
+  ImageToMeasure[idx][N_onImage[idx]] = meas;
+  N_onImage[idx] ++;
+
+  if (N_onImage[idx] == N_ONIMAGE[idx]) {
+    N_ONIMAGE[idx] += 30;
+    REALLOCATE (ImageToCatalog[idx], IDX_T, N_ONIMAGE[idx]);
+    REALLOCATE (ImageToMeasure[idx], IDX_T, N_ONIMAGE[idx]);
   }
 
@@ -241,7 +270,7 @@
 
   off_t i;
-  Measure *measure;
-
-  measure = &catalog[cat].measure[meas];
+  MeasureTiny *measure;
+
+  measure = &catalog[cat].measureT[meas];
 
   /* find the image that supplied this measurement */
@@ -255,17 +284,17 @@
 
     // index for (catalog, measure) -> image
-    bin[cat][meas] = i;
+    MeasureToImage[cat][meas] = i;
 
     // index for image, Nentry -> catalog
-    clist[i][Nlist[i]] = cat;
+    ImageToCatalog[i][N_onImage[i]] = cat;
 
     // index for image, Nentry -> measure
-    mlist[i][Nlist[i]] = meas;
-    Nlist[i] ++;
-
-    if (Nlist[i] == NLIST[i]) {
-      NLIST[i] += 100;
-      REALLOCATE (clist[i], int,   NLIST[i]);
-      REALLOCATE (mlist[i], off_t, NLIST[i]);
+    ImageToMeasure[i][N_onImage[i]] = meas;
+    N_onImage[i] ++;
+
+    if (N_onImage[i] == N_ONIMAGE[i]) {
+      N_ONIMAGE[i] += 30;
+      REALLOCATE (ImageToCatalog[i], IDX_T, N_ONIMAGE[i]);
+      REALLOCATE (ImageToMeasure[i], IDX_T, N_ONIMAGE[i]);
     }
     return;
@@ -281,5 +310,5 @@
   off_t i;
 
-  i = bin[cat][meas];
+  i = MeasureToImage[cat][meas];
   if (i == -1) return (NULL);
   return (&image[i].coords);
@@ -333,5 +362,5 @@
 }
 
-void dump_measures(Average *average, Measure *measure) {
+void dump_measures (Average *average, Measure *measure) {
 
   off_t j, off;
@@ -402,11 +431,16 @@
   }      
 
-  for (i = 0; i < Nlist[im]; i++) {
-    m = mlist[im][i];
-    c = clist[im][i];
-
-    X = catalog[c].measure[m].Xccd;
-    Y = catalog[c].measure[m].Yccd;
-    n = catalog[c].measure[m].averef;
+  int NoffRAave = 0;  int NoffRAori = 0; 
+  int NoffDECave = 0; int NoffDECori = 0;
+
+  for (i = 0; i < N_onImage[im]; i++) {
+    m = ImageToMeasure[im][i];
+    c = ImageToCatalog[im][i];
+
+    Measure *measure = &catalog[c].measure[m];
+
+    X = measure[0].Xccd;
+    Y = measure[0].Yccd;
+    n = measure[0].averef;
 
     if (moscoords == NULL) {
@@ -428,47 +462,60 @@
     // NOTE: This should never happen, or our StarMap tests are not working
     if (fabs(dR) > 3.0*ADDSTAR_RADIUS) {
-      fprintf (stderr, "measurement is far from average location (R): %f %f (%f %f)\n", catalog[c].average[n].R, catalog[c].average[n].D, dR, dD);
-      dump_measures (&catalog[c].average[n], catalog[c].measure);
+      NoffRAave ++;
+      if (VERBOSE2) {
+	fprintf (stderr, "measurement is far from average location (R): %f %f (%f %f)\n", catalog[c].average[n].R, catalog[c].average[n].D, dR, dD);
+	dump_measures (&catalog[c].average[n], catalog[c].measure);
+      }
       // abort ();
     }
     if (fabs(dD) > 3.0*ADDSTAR_RADIUS) {
-      fprintf (stderr, "measurement is far from average location (D): %f %f (%f %f)\n", catalog[c].average[n].R, catalog[c].average[n].D, dR, dD);
-      dump_measures (&catalog[c].average[n], catalog[c].measure);
+      NoffDECave ++;
+      if (VERBOSE2) {
+	fprintf (stderr, "measurement is far from average location (D): %f %f (%f %f)\n", catalog[c].average[n].R, catalog[c].average[n].D, dR, dD);
+	dump_measures (&catalog[c].average[n], catalog[c].measure);
+      }
       // abort ();
     }
 
     // complain if the new location is far from the old location
-    if (fabs(catalog[c].measure[m].dR - dR) > DPOS_MAX_ASEC) {
-      fprintf (stderr, "measurement is far from original location (R): %f %f (%f %f)\n", catalog[c].average[n].R, catalog[c].average[n].D, dR, dD);
-      dump_measures (&catalog[c].average[n], catalog[c].measure);
+    if (fabs(catalog[c].measureT[m].dR - dR) > DPOS_MAX_ASEC) {
+      NoffRAori ++;
+      if (VERBOSE2) {
+	fprintf (stderr, "measurement is far from original location (R): %f %f (%f %f)\n", catalog[c].average[n].R, catalog[c].average[n].D, dR, dD);
+	dump_measures (&catalog[c].average[n], catalog[c].measure);
+      }
       // abort();
     }
-    if (fabs(catalog[c].measure[m].dD - dD) > DPOS_MAX_ASEC) {
-      fprintf (stderr, "measurement is far from original location (D): %f %f (%f %f)\n", catalog[c].average[n].R, catalog[c].average[n].D, dR, dD);
-      dump_measures (&catalog[c].average[n], catalog[c].measure);
-      // abort();
-    }
-
-    dPos += SQ(catalog[c].measure[m].dR - dR) + SQ(catalog[c].measure[m].dD - dD);
+    if (fabs(measure[0].dD - dD) > DPOS_MAX_ASEC) {
+      NoffDECori ++;
+      if (VERBOSE2) {
+	fprintf (stderr, "measurement is far from original location (D): %f %f (%f %f)\n", catalog[c].average[n].R, catalog[c].average[n].D, dR, dD);
+	dump_measures (&catalog[c].average[n], catalog[c].measure);
+      }      // abort();
+    }
+
+    dPos += SQ(measure[0].dR - dR) + SQ(measure[0].dD - dD);
     nPos ++;
 
-    catalog[c].measure[m].dR = dR;
-    catalog[c].measure[m].dD = dD;
+    measure[0].dR = dR;
+    measure[0].dD = dD;
     
-    if (catalog[c].measure[m].dR > +180.0*3600.0) {
+    if (measure[0].dR > +180.0*3600.0) {
       // average on high end of boundary, move star up
       R += 360.0;
-      catalog[c].measure[m].dR = 3600.0*(catalog[c].average[n].R - R);
-    }
-    if (catalog[c].measure[m].dR < -180.0*3600.0) {
+      measure[0].dR = 3600.0*(catalog[c].average[n].R - R);
+    }
+    if (measure[0].dR < -180.0*3600.0) {
       // average on low end of boundary, move star down
       R -= 360.0;
-      catalog[c].measure[m].dR = 3600.0*(catalog[c].average[n].R - R);
+      measure[0].dR = 3600.0*(catalog[c].average[n].R - R);
     }
 
     // set the systematic error for this image:
-    catalog[c].measure[m].dRsys = ToShortPixels(dPosSys);
-  }
-
+    measure[0].dRsys = ToShortPixels(dPosSys);
+  }
+
+  int Noff = NoffRAave + NoffDECave + NoffRAori + NoffDECori;
+  if (VERBOSE && (Noff > 0)) fprintf (stderr, "Noff ave RA %d, Noff ave DEC %d, Noff ori RA %d, Noff ori DEC %d\n", NoffRAave, NoffDECave, NoffRAori, NoffDECori);
   saveOffsets (dPos, nPos, im);
 
@@ -487,4 +534,7 @@
   Mosaic *mosaic;
   Coords *moscoords, *imcoords, *oldcoords;
+
+  fprintf (stderr, "fix resetImageRaw wrt MeasureTiny\n");
+  abort();
 
   // check if this image is bad and should be skipped
@@ -507,11 +557,14 @@
   imcoords = &image[im].coords;
 
-  for (i = 0; i < Nlist[im]; i++) {
-    m = mlist[im][i];
-    c = clist[im][i];
-
-    X = catalog[c].measure[m].Xccd;
-    Y = catalog[c].measure[m].Yccd;
-    n = catalog[c].measure[m].averef;
+  for (i = 0; i < N_onImage[im]; i++) {
+    m = ImageToMeasure[im][i];
+    c = ImageToCatalog[im][i];
+
+    // XXX unclear if this should use Measure or MeasureTiny; it is only called by FixProblemImages, which has not been updated
+    Measure *measure = &catalog[c].measure[m];
+
+    X = measure[0].Xccd;
+    Y = measure[0].Yccd;
+    n = measure[0].averef;
 
     dR = dD = 0.0;
@@ -527,16 +580,16 @@
     }
 
-    catalog[c].measure[m].dR = dR;
-    catalog[c].measure[m].dD = dD;
-
-    if (catalog[c].measure[m].dR > +180.0*3600.0) {
+    measure[0].dR = dR;
+    measure[0].dD = dD;
+
+    if (measure[0].dR > +180.0*3600.0) {
       // average on high end of boundary, move star up
       R += 360.0;
-      catalog[c].measure[m].dR = 3600.0*(catalog[c].average[n].R - R);
-    }
-    if (catalog[c].measure[m].dR < -180.0*3600.0) {
+      measure[0].dR = 3600.0*(catalog[c].average[n].R - R);
+    }
+    if (measure[0].dR < -180.0*3600.0) {
       // average on low end of boundary, move star down
       R -= 360.0;
-      catalog[c].measure[m].dR = 3600.0*(catalog[c].average[n].R - R);
+      measure[0].dR = 3600.0*(catalog[c].average[n].R - R);
     }
   }
@@ -567,28 +620,30 @@
   }
 
-  ALLOCATE (raw, StarData, Nlist[im]);
-
-  for (i = 0; i < Nlist[im]; i++) {
-    m = mlist[im][i];
-    c = clist[im][i];
+  ALLOCATE (raw, StarData, N_onImage[im]);
+
+  for (i = 0; i < N_onImage[im]; i++) {
+    m = ImageToMeasure[im][i];
+    c = ImageToCatalog[im][i];
+
+    MeasureTiny *measure = &catalog[c].measureT[m];
 
     /* apply the current image transformation or use the current value of R+dR, D+dD? */
-    raw[i].X = catalog[c].measure[m].Xccd;
-    raw[i].Y = catalog[c].measure[m].Yccd;
-
-    raw[i].Mag  = catalog[c].measure[m].M;
-    raw[i].dMag = catalog[c].measure[m].dM;
-    raw[i].dPos = GetAstromError (&catalog[c].measure[m], ERROR_MODE_POS);
-
-    n = catalog[c].measure[m].averef;
+    raw[i].X = measure[0].Xccd;
+    raw[i].Y = measure[0].Yccd;
+
+    raw[i].Mag  = measure[0].M;
+    raw[i].dMag = measure[0].dM;
+    raw[i].dPos = GetAstromErrorTiny (&measure[0], ERROR_MODE_POS);
+
+    n = measure[0].averef;
 
     // an object with only one detection provides no information about the image calibration
     // XXX this is already taken care of in bcatalog
-    raw[i].mask = 0x0000;
+    raw[i].mask = MARK_MEAS_DEFAULT;
     if (catalog[c].average[n].Nmeasure <= SRC_MEAS_TOOFEW) {
-      raw[i].mask |= 0x0001;
-    }
-    if (!finite(catalog[c].measure[m].dR) || !finite(catalog[c].measure[m].dD)) {
-      raw[i].mask |= 0x0002;
+      raw[i].mask |= MARK_TOO_FEW_MEAS;
+    }
+    if (!finite(measure[0].dR) || !finite(measure[0].dD)) {
+      raw[i].mask |= MARK_NAN_POS_ERROR;
     }
     raw[i].Nmeas = catalog[c].average[n].Nmeasure; // record so we can check how well connected an image is
@@ -613,5 +668,5 @@
   }
 
-  *Nstars = Nlist[im];
+  *Nstars = N_onImage[im];
   return (raw);
 }
@@ -639,10 +694,12 @@
   }
 
-  ALLOCATE (ref, StarData, Nlist[im]);
-
-  for (i = 0; i < Nlist[im]; i++) {
-    m = mlist[im][i];
-    c = clist[im][i];
-    n = catalog[c].measure[m].averef;
+  ALLOCATE (ref, StarData, N_onImage[im]);
+
+  for (i = 0; i < N_onImage[im]; i++) {
+    m = ImageToMeasure[im][i];
+    c = ImageToCatalog[im][i];
+
+    MeasureTiny *measure = &catalog[c].measureT[m];
+    n = measure[0].averef;
 
     /* apply the current image transformation or use the current value of R+dR, D+dD? */
@@ -650,7 +707,7 @@
     ref[i].D = catalog[c].average[n].D;
 
-    ref[i].Mag  = catalog[c].measure[m].M;
-    ref[i].dMag = catalog[c].measure[m].dM;
-    ref[i].dPos = GetAstromError (&catalog[c].measure[m], ERROR_MODE_POS);
+    ref[i].Mag  = measure[0].M;
+    ref[i].dMag = measure[0].dM;
+    ref[i].dPos = GetAstromErrorTiny (&measure[0], ERROR_MODE_POS);
 
     ref[i].mask = FALSE;
@@ -675,5 +732,5 @@
   }
 
-  *Nstars = Nlist[im];
+  *Nstars = N_onImage[im];
   return (ref);
 }
@@ -682,6 +739,8 @@
 void FlagOutliers2D(Catalog *catalog);
 
+// operates on Full values (not tiny)
 void FlagOutliers (Catalog *catalog) {
-  // XXX FlagOutliers is just using FlagOutliers2D
+
+  // XXX FlagOutliers is now just using FlagOutliers2D
   FlagOutliers2D(catalog);
   return;
@@ -696,5 +755,5 @@
   assert(catalog[0].Nsecfilt == Nsecfilt);
 
-  if (VERBOSE) fprintf (stderr, "marking poor measures\n");
+  if (VERBOSE2) fprintf (stderr, "marking poor measures\n");
   Nmax = 0;
   for (i = 0; i < catalog[0].Naverage; i++) {
@@ -716,15 +775,17 @@
   for (j = 0; j < catalog[0].Naverage; j++) {
     
+    // pointer to this set of measurements
+    m = catalog[0].average[j].measureOffset;
+    Measure *measure = &catalog[0].measure[m];
+
     /* accumulate list of valid measurements */
-    m = catalog[0].average[j].measureOffset;
     N = 0;
-    for (k = 0; k < catalog[0].average[j].Nmeasure; k++, m++) {
-      
+    for (k = 0; k < catalog[0].average[j].Nmeasure; k++) {
       // skip measurements based on user selected criteria
-      if (!MeasFilterTest(&catalog[0].measure[m], FALSE)) continue;
-      R[N] = catalog[0].measure[m].dR;
-      D[N] = catalog[0].measure[m].dD;
-      dR[N] = GetAstromError( &catalog[0].measure[m], ERROR_MODE_RA);
-      dD[N] = GetAstromError( &catalog[0].measure[m], ERROR_MODE_DEC);
+      if (!MeasFilterTest(&measure[k], FALSE)) continue;
+      R[N] = measure[k].dR;
+      D[N] = measure[k].dD;
+      dR[N] = GetAstromError (&measure[k], ERROR_MODE_RA);
+      dD[N] = GetAstromError (&measure[k], ERROR_MODE_DEC);
       if (isnan(R[N]) || isnan(D[N])) continue;
       N++;
@@ -741,19 +802,18 @@
     
     /* compare per-object distance to this standard deviation, and flag outliers*/
-    m = catalog[0].average[j].measureOffset;
     N = 0;
-    for (k = 0; k < catalog[0].average[j].Nmeasure; k++, m++) {
+    for (k = 0; k < catalog[0].average[j].Nmeasure; k++) {
       //reset flag on each invocation
-      catalog[0].measure[m].dbFlags &= ~ID_MEAS_POOR_ASTROM;
+      measure[k].dbFlags &= ~ID_MEAS_POOR_ASTROM;
 
       // skip measurements based on user selected criteria
-      if (!MeasFilterTest(&catalog[0].measure[m], FALSE)) continue;
+      if (!MeasFilterTest(&measure[k], FALSE)) continue;
       
-      x = catalog[0].measure[m].dR - statsR.median;
-      y = catalog[0].measure[m].dD - statsD.median;
+      x = measure[k].dR - statsR.median;
+      y = measure[k].dD - statsD.median;
       theta = atan2(y,x);
       if ((x*x + y*y) > (SQR(statsR.sigma * Ns * cos(theta)) + 
 			 SQR(statsD.sigma * Ns * sin(theta)))) {   
-	catalog[0].measure[m].dbFlags |= ID_MEAS_POOR_ASTROM;
+	measure[k].dbFlags |= ID_MEAS_POOR_ASTROM;
 	Ndel++;
       }
@@ -787,5 +847,5 @@
   assert(catalog[0].Nsecfilt == Nsecfilt);
 
-  if (VERBOSE) fprintf (stderr, "marking poor measures\n");
+  if (VERBOSE2) fprintf (stderr, "marking poor measures\n");
   Nmax = 0;
   for (i = 0; i < catalog[0].Naverage; i++) {
@@ -809,19 +869,21 @@
   for (j = 0; j < catalog[0].Naverage; j++) {
     
+    // pointer to this set of measurements
+    m = catalog[0].average[j].measureOffset;
+    Measure *measure = &catalog[0].measure[m];
+
     /* accumulate list of valid measurements */
-    m = catalog[0].average[j].measureOffset;
     N = 0;
-    
-    for (k = 0; k < catalog[0].average[j].Nmeasure; k++, m++) {
-      
-      //reset flag on each invocation
-      catalog[0].measure[m].dbFlags &= ~ID_MEAS_POOR_ASTROM;
+    for (k = 0; k < catalog[0].average[j].Nmeasure; k++) {
+
+      // reset flag on each invocation
+      measure[k].dbFlags &= ~ID_MEAS_POOR_ASTROM;
       
       // skip measurements based on user selected criteria
-      if (!MeasFilterTest(&catalog[0].measure[m], FALSE)) continue;
-      R[N] = catalog[0].measure[m].dR;
-      D[N] = catalog[0].measure[m].dD;
-      dR[N] = GetAstromError( &catalog[0].measure[m], ERROR_MODE_RA);
-      dD[N] = GetAstromError( &catalog[0].measure[m], ERROR_MODE_DEC);
+      if (!MeasFilterTest(&measure[k], FALSE)) continue;
+      R[N] = measure[k].dR;
+      D[N] = measure[k].dD;
+      dR[N] = GetAstromError(&measure[k], ERROR_MODE_RA);
+      dD[N] = GetAstromError(&measure[k], ERROR_MODE_DEC);
       if (isnan(R[N]) || isnan(D[N])) continue;
       N++;
@@ -837,15 +899,14 @@
     
     /* calculate deviations of all points*/
-    m = catalog[0].average[j].measureOffset;
     N = 0;
-    for (k = 0; k < catalog[0].average[j].Nmeasure; k++, m++) {
-      //skip bad measurements
-      if (!MeasFilterTest(&catalog[0].measure[m], FALSE)) continue;  
-      x = catalog[0].measure[m].dR - statsR.median;
-      y = catalog[0].measure[m].dD - statsD.median;
+    for (k = 0; k < catalog[0].average[j].Nmeasure; k++) {
+      // skip bad measurements
+      if (!MeasFilterTest(&measure[k], FALSE)) continue;  
+      x = measure[k].dR - statsR.median;
+      y = measure[k].dD - statsD.median;
       theta = atan2(y,x);
       d2[N] = (x*x + y*y) / (SQR(statsR.sigma * Ns * cos(theta)) + 
 			     SQR(statsD.sigma * Ns * sin(theta)));      
-      index[N] = m;
+      index[N] = k;
       N++;
     }
@@ -856,10 +917,10 @@
 
     // recalculate image center, sigma based on closest 50% of points
-    for(k = 0;  k < N; k++) {
+    for (k = 0;  k < N; k++) {
       off_t ind = (off_t) index[k];
-      R[k] = catalog[0].measure[ind].dR;
-      D[k] = catalog[0].measure[ind].dD;
-      dR[k] = GetAstromError( &catalog[0].measure[ind], ERROR_MODE_RA);
-      dD[k] = GetAstromError( &catalog[0].measure[ind], ERROR_MODE_DEC);
+      R[k] = measure[ind].dR;
+      D[k] = measure[ind].dD;
+      dR[k] = GetAstromError(&measure[ind], ERROR_MODE_RA);
+      dD[k] = GetAstromError(&measure[ind], ERROR_MODE_DEC);
     }
     liststats (R, dR, N, &statsR);
@@ -869,26 +930,25 @@
     
     // use these new statistics to flag outliers 
-    m = catalog[0].average[j].measureOffset;
     N = 0;
-    for (k = 0; k < catalog[0].average[j].Nmeasure; k++, m++) {
+    for (k = 0; k < catalog[0].average[j].Nmeasure; k++) {
       //skip bad measurements
-      if (!MeasFilterTest(&catalog[0].measure[m], FALSE)) continue;  
-      x = catalog[0].measure[m].dR - statsR.median;
-      y = catalog[0].measure[m].dD - statsD.median;
+      if (!MeasFilterTest(&measure[k], FALSE)) continue;  
+      x = measure[k].dR - statsR.median;
+      y = measure[k].dD - statsD.median;
       theta = atan2(y,x);
       d2[N] = (x*x + y*y) / (SQR(statsR.sigma * Ns * cos(theta)) + 
 			     SQR(statsD.sigma * Ns * sin(theta)));      
       if ((d2[N]) > 1) {
-	catalog[0].measure[m].dbFlags |= ID_MEAS_POOR_ASTROM;
+	measure[k].dbFlags |= ID_MEAS_POOR_ASTROM;
 	Ndel ++;
       }
       N++;
       Nave++;
-    }  //done rejecting outliers
+    }  // done rejecting outliers
 
     // examine results
     // relastroVisualPlotOutliers(catalog, catalog[0].average[j].measureOffset, catalog[0].average[j].Nmeasure, statsR, statsD, Ns);
     
-  } //done looping over objects
+  } // done looping over objects
   
   if (VERBOSE) fprintf (stderr, "%d measures marked poor, %d total\n", Ndel, Nave);
@@ -901,5 +961,65 @@
 }
 
-
+/** Determine whether a measurement should be included in the analysis, based on supplied filter criteria */ 
+// we only optionally apply the sigma limit: for object averages, this should not be used (should it?)
+int MeasFilterTestTiny(MeasureTiny *measure, int applySigmaLim) {
+  int found, k;
+  long mask;
+  PhotCode *code;
+  float mag;
+
+  if (!finite(measure[0].dR) || !finite(measure[0].dD)) return FALSE;
+  if (!finite(measure[0].M)) return FALSE; //XXX is this necessary for all relastro tasks?
+  if (!finite(measure[0].dM)) return FALSE; //XXX is this necessary for all relastro tasks?
+  
+  /* select measurements by photcode, or equiv photcode, if specified */
+  if (NphotcodesKeep > 0) {
+    found = FALSE;
+    for (k = 0; (k < NphotcodesKeep) && !found; k++) {
+      if (photcodesKeep[k][0].code == measure[0].photcode) found = TRUE;
+      if (photcodesKeep[k][0].code == GetPhotcodeEquivCodebyCode(measure[0].photcode)) found = TRUE;
+    }
+    if (!found) return FALSE;
+  }
+  
+  if (NphotcodesSkip > 0) {
+    found = FALSE;
+    for (k = 0; (k < NphotcodesSkip) && !found; k++) {
+      if (photcodesSkip[k][0].code == measure[0].photcode) found = TRUE;
+      if (photcodesSkip[k][0].code == GetPhotcodeEquivCodebyCode(measure[0].photcode)) found = TRUE;
+    }
+    if (found) return FALSE;
+  }  
+  
+  /* select measurements by time */
+  if (TimeSelect) {
+    if (measure[0].t < TSTART) return FALSE;
+    if (measure[0].t > TSTOP) return FALSE;
+  }
+  
+  /* select measurements by quality */
+  if (PhotFlagSelect) {
+    if (PhotFlagBad) {
+      mask = PhotFlagBad;
+    } else {
+      code = GetPhotcodebyCode (measure[0].photcode);
+      mask = code[0].astromBadMask;
+    }
+    if (mask & measure[0].photFlags) return FALSE;
+  }
+
+  /* select measurements by measurement error */
+  if (applySigmaLim && (SIGMA_LIM > 0) && (measure[0].dM > SIGMA_LIM)) {
+    return FALSE;
+  }
+  
+  /* select measurements by mag limit */
+  if (ImagSelect) {
+    mag = PhotInstTiny (measure);
+    if (mag < ImagMin || mag > ImagMax) return FALSE;
+  }
+  
+  return TRUE;
+}
 
 /** Determine whether a measurement should be included in the analysis, based on supplied filter criteria */ 
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/ParFactor.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/ParFactor.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/ParFactor.c	(revision 34041)
@@ -1,3 +1,4 @@
 # include "relastro.h"
+# define J2000 2451545.       /* Julian date at standard epoch */
 
 # if (0)
@@ -31,5 +32,4 @@
   double n, L, g;
 
-# define J2000 2451545.       /* Julian date at standard epoch */
 
   n = jd - J2000;
@@ -46,6 +46,4 @@
 int sun_ecliptic (double jd, double *lambda, double *beta, double *epsilon, double *Radius) {
 
-# define J2000 2451545.       /* Julian date at standard epoch */
-
   double n = jd - J2000;	      // day number
   double L = 280.460 + 0.9856474 * n; // mean solar longitute (corr. for aberration)
@@ -60,4 +58,5 @@
 
 /* given RA, DEC, Time, calculate the parallax factor */
+// Time is relative to Tmean, Tmean is years relative to J2000
 int ParFactor (double *pR, double *pD, double RA, double DEC, double Time, double Tmean) {
 
@@ -66,5 +65,8 @@
   /* given a time T in UNIX seconds, determine the solar longitude S */
 
-  jd = ohana_sec_to_jd (365.25*86400.0*(Time + Tmean));
+  // jd = ohana_sec_to_jd (365.25*86400.0*(Time + Tmean));
+  jd = 365.25*(Time + Tmean) + J2000;
+  // fprintf (stderr, "Time: %f, jd: %f\n", Time, jd);
+
   sun_ecliptic (jd, &lambda, &beta, &epsilon, &Radius);
 
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/StarMaps.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/StarMaps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/StarMaps.c	(revision 34041)
@@ -68,9 +68,11 @@
   for (i = 0; i < catalog[0].Nmeasure; i++) {
     
-    N = getImageByID(catalog[0].measure[i].imageID);
+    MeasureTiny *measure = &catalog[0].measureT[i];
+
+    N = getImageByID(measure[0].imageID);
     if (N < 0) continue;
 
-    xbin = catalog[0].measure[i].Xccd / starmap[N].Nx;
-    ybin = catalog[0].measure[i].Yccd / starmap[N].Ny;
+    xbin = measure[0].Xccd / starmap[N].Nx;
+    ybin = measure[0].Yccd / starmap[N].Ny;
 
     xbin = MAX(0, MIN(NX_MAP-1, xbin));
@@ -82,4 +84,19 @@
 
   return (TRUE);
+}
+
+int createStarMap (Catalog *catalog, int Ncatalog) {
+
+  int i;
+
+  initStarMaps();
+
+  for (i = 0; i < Ncatalog; i++) {
+    // check coverage per chip (operates on (Average, MeasureTiny, Secfilt)
+    updateStarMaps (&catalog[i]);
+  }
+
+  createStarMapPoints();
+  return TRUE;
 }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateChips.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateChips.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateChips.c	(revision 34041)
@@ -1,13 +1,38 @@
 # include "relastro.h"
+
 int plotChipFits (double *Ro, double *Do, char *mode, int Nimage);
 int saveCenter (Image *image, double *Ro, double *Do, int im);
-
+off_t getNextImageForThread ();
+int UpdateChips_threaded (Catalog *catalog, int Ncatalog);
+void *UpdateChips_worker (void *data);
+
+enum {THREAD_RUN, THREAD_DONE};
+
+typedef struct {
+  int entry;
+  int state;
+  double *Ro;
+  double *Do;
+  char *mode;
+  off_t Nskip;
+  off_t Nmosaic;
+  off_t NnewFit;
+  off_t NoldFit;
+  Catalog *catalog;
+  int Ncatalog;
+} ThreadInfo;
+
+static Image *image = NULL;
+static off_t Nimage = 0;
+static off_t nextImage = 0;
+
+// update astrometry of all chips relative to the average positions
+// if NTHREADS is non-zero, call the threaded version of this function
 int UpdateChips (Catalog *catalog, int Ncatalog) {
 
-  int Nskip, Nmosaic, NnewFit, NoldFit;
+  off_t Nskip, Nmosaic, NnewFit, NoldFit;
 
   /* we can measure new image parameters for each non-mosaic chip independently */
-  off_t i, Nimage, Nraw, Nref, nFitAstr;
-  Image *image;
+  off_t i, Nraw, Nref, nFitAstr;
   StarData *raw, *ref;
   Coords *oldCoords;
@@ -16,4 +41,9 @@
   char *mode;
 
+  if (NTHREADS) {
+    UpdateChips_threaded (catalog, Ncatalog);
+    return TRUE;
+  }
+
   Nskip = Nmosaic = NnewFit = NoldFit = 0;
 
@@ -25,5 +55,10 @@
   ALLOCATE (mode, char, Nimage);
 
+  // XXX for faster processing in the future, this can be easily run in parallel
+  // each chip is fitted independently, so we could do N at once in parallel
   for (i = 0; i < Nimage; i++) {
+
+    // XXX looks like everything below is thread safe : we can unroll this into a set of
+    // helper functions that grab the next available chip....
 
     /* skip all except WRP images */
@@ -47,4 +82,5 @@
       Nskip ++;
       mode[i] = 0;
+      free (raw);
       continue;
     }
@@ -62,5 +98,5 @@
     // fprintf (stderr, "image "OFF_T_FMT" : Nstars: "OFF_T_FMT"\n",  i,  Nraw);
     if (!FitChip (raw, ref, Nraw, &image[i])) {
-      if (VERBOSE) fprintf (stderr, "reject fit for image %s ("OFF_T_FMT") : Nstars: "OFF_T_FMT"\n", image[i].name,  i,  Nraw);
+      if (VERBOSE) fprintf (stderr, "reject fit for image %s ("OFF_T_FMT") : Nstars: "OFF_T_FMT" of %d\n", image[i].name,  i,  Nraw, image[i].nstar);
 
       // restore status quo ante
@@ -105,9 +141,216 @@
 
   plotChipFits (Ro, Do, mode, Nimage);
-
-  fprintf (stderr, "UpdateChips: %d fitted, %d keep old, %d skipped, %d mosaic (skipped)\n", NnewFit, NoldFit, Nskip, Nmosaic);
+  free (Ro);
+  free (Do);
+  free (mode);
+
+  fprintf (stderr, "UpdateChips: %d fitted, %d keep old, %d skipped, %d mosaic (skipped)\n", 
+	   (int) NnewFit, (int) NoldFit, (int) Nskip, (int) Nmosaic);
   return (TRUE);
 }
 
+int UpdateChips_threaded (Catalog *catalog, int Ncatalog) {
+
+  int i;
+  off_t Nskip, Nmosaic, NnewFit, NoldFit;
+  double *Ro, *Do;
+  char *mode;
+
+  image = getimages (&Nimage, NULL);
+  nextImage = 0;
+
+  // save fit results for summary plot
+  ALLOCATE (Ro, double, Nimage);
+  ALLOCATE (Do, double, Nimage);
+  ALLOCATE (mode, char, Nimage);
+
+  pthread_attr_t attr;
+  pthread_attr_init (&attr);
+  pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED);
+  
+  pthread_t *threads;
+  ALLOCATE (threads, pthread_t, NTHREADS);
+
+  ThreadInfo *threadinfo;
+  ALLOCATE (threadinfo, ThreadInfo, NTHREADS);
+
+  // launch N worker threads
+  for (i = 0; i < NTHREADS; i++) {
+    threadinfo[i].entry = i;
+    threadinfo[i].state = THREAD_RUN;
+    threadinfo[i].Ro = Ro;
+    threadinfo[i].Do = Do;
+    threadinfo[i].mode = mode;
+    threadinfo[i].Nskip = 0;
+    threadinfo[i].Nmosaic = 0;
+    threadinfo[i].NnewFit = 0;
+    threadinfo[i].NoldFit = 0;
+    threadinfo[i].catalog  =  catalog;
+    threadinfo[i].Ncatalog = Ncatalog;
+    pthread_create (&threads[i], NULL, UpdateChips_worker, &threadinfo[i]);
+  }
+  pthread_attr_destroy (&attr);
+
+  // wait until all threads have finished
+  while (1) {
+    int allDone = TRUE;
+    for (i = 0; i < NTHREADS; i++) {
+      if (threadinfo[i].state == THREAD_RUN) allDone = FALSE;
+    }
+    if (allDone) {
+      break;
+    }
+    usleep (500000);
+  }
+
+  // all threads are done, free the threads array and grab the info
+  free (threads);
+  
+  plotChipFits (Ro, Do, mode, Nimage);
+  free (Ro);
+  free (Do);
+  free (mode);
+
+  // report stats & summary from the threads
+  Nskip = Nmosaic = NnewFit = NoldFit = 0;
+  for (i = 0; i < NTHREADS; i++) {
+    fprintf (stderr, "UpdateChips thread %d : %d fitted, %d keep old, %d skipped, %d mosaic (skipped)\n", 
+	     i, (int) threadinfo[i].NnewFit, (int) threadinfo[i].NoldFit, (int) threadinfo[i].Nskip, (int) threadinfo[i].Nmosaic);
+
+    NnewFit += threadinfo[i].NnewFit;
+    NoldFit += threadinfo[i].NoldFit;
+    Nskip   += threadinfo[i].Nskip;
+    Nmosaic += threadinfo[i].Nmosaic;
+  }
+  free (threadinfo);
+
+  fprintf (stderr, "UpdateChips: %d fitted, %d keep old, %d skipped, %d mosaic (skipped)\n", 
+	   (int) NnewFit, (int) NoldFit, (int) Nskip, (int) Nmosaic);
+  return (TRUE);
+}
+
+void *UpdateChips_worker (void *data) {
+
+  /* we can measure new image parameters for each non-mosaic chip independently */
+  off_t Nraw, Nref, nFitAstr;
+  StarData *raw, *ref;
+  Coords *oldCoords;
+  float dXpixSys, dYpixSys;
+
+  ThreadInfo *threadinfo = data;
+
+  while (1) {
+
+    off_t i = getNextImageForThread();
+    if (i == -1) {
+      threadinfo->state = THREAD_DONE;
+      return NULL;
+    }
+
+    /* skip all except WRP images */
+    if (strcmp(&image[i].coords.ctype[4], "-WRP")) {
+      threadinfo->Nmosaic ++;
+      threadinfo->mode[i] = 0;
+      continue;
+    }
+
+    /* convert measure coordinates to raw entries */
+    raw = getImageRaw (threadinfo->catalog, threadinfo->Ncatalog, i, &Nraw, MODE_MOSAIC);
+    if (!raw) {
+      threadinfo->Nskip ++;
+      threadinfo->mode[i] = 0;
+      continue;
+    }
+
+    /* convert average coordinates to ref entries */
+    ref = getImageRef (threadinfo->catalog, threadinfo->Ncatalog, i, &Nref, MODE_MOSAIC);
+    if (!ref) {
+      threadinfo->Nskip ++;
+      threadinfo->mode[i] = 0;
+      free (raw);
+      continue;
+    }
+
+    // note that Nraw & Nref must be equal: if not, we made a programming error in one of these two functions.
+    assert (Nraw == Nref);
+
+    // save these in case of failure
+    saveCoords (&image[i].coords, i);
+    dXpixSys = image[i].dXpixSys;
+    dYpixSys = image[i].dYpixSys;
+    nFitAstr = image[i].nFitAstrom;
+
+    // FitChip does iterative, clipped fitting
+    // fprintf (stderr, "image "OFF_T_FMT" : Nstars: "OFF_T_FMT"\n",  i,  Nraw);
+    if (!FitChip (raw, ref, Nraw, &image[i])) {
+      if (VERBOSE) fprintf (stderr, "reject fit for image %s ("OFF_T_FMT") : Nstars: "OFF_T_FMT" of %d\n", image[i].name,  i,  Nraw, image[i].nstar);
+
+      // restore status quo ante
+      oldCoords = getCoords (i);
+      memcpy (&image[i].coords, oldCoords, sizeof(Coords));
+      image[i].dXpixSys = dXpixSys;
+      image[i].dYpixSys = dYpixSys; 
+      image[i].nFitAstrom = nFitAstr;
+
+      saveCenter (image, &threadinfo->Ro[i], &threadinfo->Do[i], i);
+      threadinfo->mode[i] = 1;
+      threadinfo->NoldFit ++;
+      free (raw);
+      free (ref);
+      continue;
+    }
+
+    if (!checkStarMap (i)) {
+      if (VERBOSE) fprintf (stderr, "fit diverges too much for image %s ("OFF_T_FMT") : Nstars: "OFF_T_FMT"\n", image[i].name,  i,  Nraw);
+      // restore status quo ante
+      oldCoords = getCoords (i);
+      memcpy (&image[i].coords, oldCoords, sizeof(Coords));
+      image[i].dXpixSys = dXpixSys;
+      image[i].dYpixSys = dYpixSys; 
+      image[i].nFitAstrom = nFitAstr;
+
+      saveCenter (image, &threadinfo->Ro[i], &threadinfo->Do[i], i);
+      threadinfo->mode[i] = 2;
+      image[i].flags |= ID_IMAGE_ASTROM_POOR;
+      threadinfo->NoldFit ++;
+      free (raw);
+      free (ref);
+      continue;
+    } 
+
+    saveCenter (image, &threadinfo->Ro[i], &threadinfo->Do[i], i);
+    threadinfo->mode[i] = 3;
+    threadinfo->NnewFit ++;
+    free (raw);
+    free (ref);
+  }
+  
+  // we should never reach here...
+  return NULL;
+}
+
+// mutex to lock UpdateChips_worker operations 
+static pthread_mutex_t UpdateChips_mutex = PTHREAD_MUTEX_INITIALIZER;
+
+// we have an array of chips (image, Nimage).  we need to hand out images one at a time to
+// the worker threads as they need
+off_t getNextImageForThread () {
+
+  pthread_mutex_lock (&UpdateChips_mutex);
+  if (nextImage >= Nimage) {
+    pthread_mutex_unlock (&UpdateChips_mutex);
+    return (-1);
+  }
+  off_t thisImage = nextImage;
+  nextImage ++;
+
+  pthread_mutex_unlock (&UpdateChips_mutex);
+  return (thisImage);
+}
+
+// This function uses the mosaic array in MosaicOps.c to associate PHU + CHIP this is
+// thread safe : the lookup (getMosaicForImage) is selecting an element of a previously
+// allocated and assigned static array.  This function does NOT use the thread-unsafe (and
+// somewhat slower) functions in libdvo/src/mosaic_astrom.c to associate CHIP and PHU
 int saveCenter (Image *image, double *Ro, double *Do, int im) {
 
@@ -136,17 +379,12 @@
     // note that for a Simple image, L,M = P,Q
     XY_to_LM (&L, &M, X, Y, imcoords);
-    LM_to_RD (&R, &D, L, M, imcoords);
+    LM_to_RD (&R, &D, L, M, imcoords); // because of the block above, ctype is not -WRP 
   } else {
     XY_to_LM (&L, &M, X, Y, imcoords);
     XY_to_LM (&P, &Q, L, M, moscoords);
-    LM_to_RD (&R, &D, P, Q, moscoords);
-  }
-
-  double Rmid;
-  if (UserCatalog) {
-      Rmid = UserCatalogRA;
-  } else {
-      Rmid = 0.5*(UserPatch.Rmin + UserPatch.Rmax);
-  }
+    LM_to_RD (&R, &D, P, Q, moscoords); // moscoords.ctype is -DIS
+  }
+
+  double Rmid = 0.5*(UserPatch.Rmin + UserPatch.Rmax);
 
   R = ohana_normalize_angle_to_midpoint (R, Rmid);
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateMeasures.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateMeasures.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateMeasures.c	(revision 34041)
@@ -1,4 +1,5 @@
 # include "relastro.h"
 
+// this function operates on Measure, not MeasureTiny
 int UpdateMeasures (Catalog *catalog, int Ncatalog) {
 
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateObjectOffsets.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateObjectOffsets.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateObjectOffsets.c	(revision 34041)
@@ -7,14 +7,29 @@
 //   original coordinates
 
-int UpdateObjectOffsets (SkyList *skylist) {
+int UpdateObjectOffsets_parallel (SkyList *sky);
+
+int UpdateObjectOffsets (SkyList *skylist, int hostID, char *hostpath) {
 
   int i;
   Catalog catalog;
 
+  // XXX need to decide how to determine PARALLEL mode...
+  if (PARALLEL && !hostID) {
+    UpdateObjectOffsets_parallel (skylist);
+    return TRUE;
+  }
+
   // load data from each region file, only use bright stars
   for (i = 0; i < skylist[0].Nregions; i++) {
 
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+
+    // define the catalog file name
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", hostpath, skylist[0].regions[i]->name);
+    catalog.filename = hostID ? hostfile : skylist[0].filename[i];
+
     // set up the basic catalog info
-    catalog.filename  = skylist[0].filename[i];
     catalog.catformat = dvo_catalog_catformat (CATFORMAT);    // set the default catformat from config data
     catalog.catmode   = dvo_catalog_catmode (CATMODE);        // set the default catmode from config data
@@ -22,14 +37,17 @@
     catalog.Nsecfilt  = GetPhotcodeNsecfilt ();
 
-    if (!dvo_catalog_open (&catalog, skylist[0].regions[i], VERBOSE, "w")) {
+    if (!dvo_catalog_open (&catalog, skylist[0].regions[i], VERBOSE2, "w")) {
       fprintf (stderr, "ERROR: failure reading catalog %s\n", catalog.filename);
       exit (1);
     }
     if (!catalog.Naves_disk) {
-      if (VERBOSE) fprintf (stderr, "no data in %s, skipping\n", catalog.filename);
+      if (VERBOSE2) fprintf (stderr, "no data in %s, skipping\n", catalog.filename);
       dvo_catalog_unlock (&catalog);
       dvo_catalog_free (&catalog);
       continue;
     }
+
+    // set the values in MeasureTiny needed by UpdateObjects
+    populate_tiny_values(&catalog, DVO_TV_MEASURE);
 
     // match measurements with images
@@ -40,4 +58,5 @@
     UpdateMeasures (&catalog, 1);
 
+    // uses MeasureTiny values, but will also update Measure values when populated
     UpdateObjects (&catalog, 1);
 
@@ -50,2 +69,97 @@
   return (TRUE);
 }
+
+// CATDIR is supplied globally
+# define DEBUG 1
+int UpdateObjectOffsets_parallel (SkyList *sky) {
+
+  // launch the setphot_client jobs to the parallel hosts
+
+  // load the list of hosts
+  HostTable *table = HostTableLoad (CATDIR, sky->hosts);
+  if (!table) {
+    fprintf (stderr, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+    exit (1);
+  }    
+
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    // options / arguments that can affect relastro_client -load:
+    // VERBOSE, VERBOSE2
+    // RESET (-reset)
+    // TimeSelect -time
+    // (note that psfQual is applied rigidly at 0.85, as is the galaxy test)
+    // ImagSelect, ImagMin, ImagMax
+    // MaxDensityUse, MaxDensityValue
+
+    char command[1024];
+    snprintf (command, 1024, "relastro_client -update-offsets -hostID %d -D CATDIR %s -hostdir %s -region %f %f %f %f -statmode %s -minerror %f", 
+	      table->hosts[i].hostID, CATDIR, table->hosts[i].pathname, UserPatch.Rmin, UserPatch.Rmax, UserPatch.Dmin, UserPatch.Dmax, STATMODE, MIN_ERROR);
+
+    char tmpline[1024];
+    if (FIT_MODE == FIT_PM_ONLY)  	 { snprintf (tmpline, 1024, "%s -pm",    command);           strcpy (command, tmpline); }
+    if (FIT_MODE == FIT_PAR_ONLY) 	 { snprintf (tmpline, 1024, "%s -par",   command);           strcpy (command, tmpline); }
+    if (FIT_MODE == FIT_PM_AND_PAR)      { snprintf (tmpline, 1024, "%s -pmpar", command);           strcpy (command, tmpline); }
+
+    if (VERBOSE)       { snprintf (tmpline, 1024, "%s -v",              command);                    strcpy (command, tmpline); }
+    if (VERBOSE2)      { snprintf (tmpline, 1024, "%s -vv",             command); 		     strcpy (command, tmpline); }
+    if (RESET)         { snprintf (tmpline, 1024, "%s -reset",          command); 		     strcpy (command, tmpline); }
+    if (ImagSelect)    { snprintf (tmpline, 1024, "%s -instmag %f %f",  command, ImagMin, ImagMax);  strcpy (command, tmpline); }
+    if (MaxDensityUse) { snprintf (tmpline, 1024, "%s -max-density %f", command, MaxDensityValue);   strcpy (command, tmpline); }
+    
+    if (USE_BASIC_CHECK) { snprintf (tmpline, 1024, "%s -basic-image-search", command);              strcpy (command, tmpline); }
+    if (FlagOutlier)   { snprintf (tmpline, 1024, "%s -clip %d",        command, CLIP_THRESH);       strcpy (command, tmpline); }
+    
+    if (PHOTCODE_KEEP_LIST) { snprintf (tmpline, 1024, "%s +photcode %s", command, PHOTCODE_KEEP_LIST); strcpy (command, tmpline); }
+    if (PHOTCODE_SKIP_LIST) { snprintf (tmpline, 1024, "%s -photcode %s", command, PHOTCODE_SKIP_LIST); strcpy (command, tmpline); }
+    if (PhotFlagSelect)    { snprintf (tmpline, 1024, "%s +photflags",   command);                     strcpy (command, tmpline); }
+    if (PhotFlagBad)       { snprintf (tmpline, 1024, "%s +photflagbad %d", command, PhotFlagBad);     strcpy (command, tmpline); }
+    if (PhotFlagPoor)      { snprintf (tmpline, 1024, "%s +photflagpoor %d", command, PhotFlagPoor);   strcpy (command, tmpline); }
+    // XXX note that the above pass in the flag as decimal -- also note that args.c cannot handle 0xHEX values
+
+    if (TimeSelect) { 
+      char *tstart = ohana_sec_to_date (TSTART);
+      char *tstop  = ohana_sec_to_date (TSTOP);
+      snprintf (tmpline, 1024, "%s -time %s %s", command, tstart, tstop); 
+      free (tstart);
+      free (tstop);
+      strcpy (command, tmpline); 
+    }
+    fprintf (stderr, "command: %s\n", command);
+
+    if (PARALLEL_MANUAL) continue;
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	fprintf (stderr, "ERROR running relastro_client\n");
+	exit (2);
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	exit (1);
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+
+  if (PARALLEL_MANUAL) {
+    fprintf (stderr, "run the relastro_client commands above.  when these are done, hit return\n");
+    getchar();
+  }
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+  }
+
+  return TRUE;
+}      
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateObjects.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateObjects.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/UpdateObjects.c	(revision 34041)
@@ -38,4 +38,6 @@
 }  
 
+// This function operates on both Measure and MeasureTiny.  In the big stages, this should
+// be called with just MeasureTiny set and Measure == NULL
 int UpdateObjects (Catalog *catalog, int Ncatalog) {
 
@@ -72,11 +74,14 @@
   T2000 = ohana_date_to_sec ("2000/01/01");
   // XXX in the future, use catalog[0].Nsecfilt only?  allow catalogs to have variable Nsecfilt?
+
   Nsecfilt = GetPhotcodeNsecfilt ();
-  assert (catalog[0].Nsecfilt == Nsecfilt);
+  if (Ncatalog) {
+    assert (catalog[0].Nsecfilt == Nsecfilt);
+  }
 
   NaveSum = NparSum = NpmSum = NskipSum = 0;
   for (i = 0; i < Ncatalog; i++) {
 
-    if (VERBOSE) fprintf (stderr, "astrometrize catalog %d : "OFF_T_FMT" ave, "OFF_T_FMT" meas\n", i,  catalog[i].Naverage,  catalog[i].Nmeasure);
+    if (VERBOSE2) fprintf (stderr, "astrometrize catalog %d : "OFF_T_FMT" ave, "OFF_T_FMT" meas\n", i,  catalog[i].Naverage,  catalog[i].Nmeasure);
 
     Nave = Npar = Npm = Nskip = 0;
@@ -86,13 +91,4 @@
       XVERB = FALSE;
 
-      // skip objects which are known to be problematic
-      // XXX include this code or not?
-# if (0)
-      if (catalog[i].average[j].code & STAR_BAD) {
-	Nskip ++;
-	continue;  
-      }
-# endif
-
       if (catalog[i].average[j].Nmeasure == 0) {
 	  continue;
@@ -101,50 +97,56 @@
       N = 0;
       m = catalog[i].average[j].measureOffset;
-      Tmin = Tmax = (catalog[i].measure[m].t - T2000) / (86400*365.25);
+      MeasureTiny *measure = &catalog[i].measureT[m];
+      Measure *measureBig = catalog[i].measure ? &catalog[i].measure[m] : NULL;
+      // when we update the output measure values, we need to do it here
+
       mode = FIT_MODE;
 
       // find the basic properties of the detections for this object (Tmin, Tmax, Tmean)
-      Tmean = 0;
-      for (k = 0; k < catalog[i].average[j].Nmeasure; k++, m++) {
-
-	//does the measurement pass the supplied filtering constraints?
-	if (!MeasFilterTest(&catalog[i].measure[m], FALSE)) {
-	  catalog[i].measure[m].dbFlags &= ~ID_MEAS_USED_OBJ;
+      for (k = 0; k < catalog[i].average[j].Nmeasure; k++) {
+
+	// does the measurement pass the supplied filtering constraints?
+	if (!MeasFilterTestTiny(&measure[k], FALSE)) {
+	  measure[k].dbFlags &= ~ID_MEAS_USED_OBJ;
+	  if (measureBig) { measureBig[k].dbFlags &= ~ID_MEAS_USED_OBJ; }
 	  continue;
 	}
 
 	//outlier rejection
-	if (FlagOutlier && (catalog[i].measure[m].dbFlags & ID_MEAS_POOR_ASTROM)) {
-	  catalog[i].measure[m].dbFlags &= ~ID_MEAS_USED_OBJ;
+	if (FlagOutlier && (measure[k].dbFlags & ID_MEAS_POOR_ASTROM)) {
+	  measure[k].dbFlags &= ~ID_MEAS_USED_OBJ;
+	  if (measureBig) { measureBig[k].dbFlags &= ~ID_MEAS_USED_OBJ; }
 	  continue;
 	}
 
-	// exclude measurements by previous outlier detection
-	// XXX include this code or not?
-# if (0)
-	if (catalog[i].measure[m].dbFlags & MEAS_BAD) { 
-	  catalog[i].measure[m].dbFlags |= ID_MEAS_SKIP_ASTROM;
+	measure[k].dbFlags |= ID_MEAS_USED_OBJ;
+	if (measureBig) { measureBig[k].dbFlags |= ID_MEAS_USED_OBJ; }
+
+	R[N] = getMeanR (&measure[k], &catalog[i].average[j], &catalog[i].secfilt[j*Nsecfilt]);
+	D[N] = getMeanD (&measure[k], &catalog[i].average[j], &catalog[i].secfilt[j*Nsecfilt]);
+
+	// XXX I think this is a problem: T[] is time in years relative to J2000, but ParFactor expects
+	// to get Time in years relative to UNIX Tzero (1970/01/01)
+	T[N] = (measure[k].t - T2000) / (86400*365.25) ; // time relative to J2000 in years
+
+	// dX, dY : error in arcsec -- 
+	dX[N] = GetAstromErrorTiny (&measure[k], ERROR_MODE_RA);
+	dY[N] = GetAstromErrorTiny (&measure[k], ERROR_MODE_DEC);
+
+	// allow a given photcode or measurement to be
+	// ignored if the error is NAN (for photcode, set astromErrSys to NaN)
+	if (isnan(dX[N])) {
+	  measure[k].dbFlags &= ~ID_MEAS_USED_OBJ;
 	  continue;
 	}
-# endif
-
-	catalog[i].measure[m].dbFlags |= ID_MEAS_USED_OBJ;
-
-	R[N] = getMeanR (&catalog[i].measure[m], &catalog[i].average[j], &catalog[i].secfilt[j*Nsecfilt]);
-	D[N] = getMeanD (&catalog[i].measure[m], &catalog[i].average[j], &catalog[i].secfilt[j*Nsecfilt]);
-	T[N] = (catalog[i].measure[m].t - T2000) / (86400*365.25) ; // time relative to J2000 in years
-
-	Tmin = MIN(Tmin, T[N]);
-	Tmax = MAX(Tmax, T[N]);
-	Tmean += T[N];
-
-	// dX, dY : error in arcsec -- 
-	dX[N] = GetAstromError (&catalog[i].measure[m], ERROR_MODE_RA);
-	dY[N] = GetAstromError (&catalog[i].measure[m], ERROR_MODE_DEC);
+	if (isnan(dY[N])) {
+	  measure[k].dbFlags &= ~ID_MEAS_USED_OBJ;
+	  continue;
+	}
 
 	// add systematic error in quadrature, if desired
 	// only do this after the fit has converged (or you will never improve the poor images)
 	// if (INCLUDE_SYS_ERR) {
-	// float dRsys = FromShortPixels(catalog[i].measure[m].dRsys);
+	// float dRsys = FromShortPixels(measure[k].dRsys);
 	// dX[N] = hypot(dX[N], dRsys);
 	// dY[N] = hypot(dY[N], dRsys);
@@ -154,5 +156,5 @@
 	// dY[N] = 0.1;
 
-	dT[N] = catalog[i].measure[m].dt;
+	dT[N] = measure[k].dt;
 
 	// XXX this is (slightly) inconsistent: dX,dY are the X and Y direction errors in
@@ -172,8 +174,22 @@
       catalog[i].average[j].flags &= ~ID_STAR_FEW;
 
+      // find Tmin & Tmax from the list of accepted measurements
+      Tmean = 0;
+      Tmin = Tmax = T[0];
+      for (k = 0; k < N; k++) {
+	Tmin = MIN(Tmin, T[k]);
+	Tmax = MAX(Tmax, T[k]);
+	Tmean += T[k];
+      }
       // XXX add the parallax factor range as a criterion as well
       Trange = Tmax - Tmin;
       if (Trange < PM_DT_MIN) mode = FIT_AVERAGE;
       if ((mode == FIT_PM_ONLY) && (N < PM_TOOFEW)) mode = FIT_AVERAGE;
+
+      if (FIT_TARGET == TARGET_HIGH_SPEED) {
+	  Tmean = 0.5*(Tmax - Tmin);
+      } else {
+	  Tmean /= (float) N;
+      }
 
       // too few measurements for average position (require 2 values)
@@ -192,14 +208,7 @@
       coords.crval2 = D[0];
 
-      if (FIT_TARGET == TARGET_HIGH_SPEED) {
-	  Tmean = 0.5*(Tmax - Tmin);
-      } else {
-	  Tmean /= (float) N;
-      }
-      
       // XVERB |= (catalog[i].averge[j].objID == 0xc90) && (catalog[i].average[j].catID == 0x2a1e);
       XVERB |= (catalog[i].average[j].objID == OBJ_ID_SRC) && (catalog[i].average[j].catID == CAT_ID_SRC);
       XVERB |= (catalog[i].average[j].objID == OBJ_ID_DST) && (catalog[i].average[j].catID == CAT_ID_DST);
-      // XVERB = (catalog[i].measure[m].dM < 0.01) && (N == 6) && (mode == FIT_PM_ONLY);
 
       // to judge the quality of the PM and PAR fits, we need to fit all three models and compare Chisq
@@ -232,11 +241,25 @@
 	// fprintf (stderr, "parallax fitting is still untested (%s, %d)\n", __FILE__, __LINE__);
 
+	float pXmin = +2.0;
+	float pXmax = -2.0;
+	float pYmin = +2.0;
+	float pYmax = -2.0;
 	for (k = 0; k < N; k++) {
 	  ParFactor (&pX[k], &pY[k], R[k], D[k], T[k], Tmean);
-	}
-	FitPMandPar (&fitPAR, X, dX, Y, dY, T, pX, pY, N, XVERB);
-	XY_to_RD (&fitPAR.Ro, &fitPAR.Do, fitPAR.Ro, fitPAR.Do, &coords);
-	catalog[i].average[j].flags |= ID_STAR_FIT_PAR;
-	Npar ++;
+	  pXmin = MIN (pXmin, pX[k]);
+	  pXmax = MAX (pXmax, pX[k]);
+	  pYmin = MIN (pYmin, pY[k]);
+	  pYmax = MAX (pYmax, pY[k]);
+	}
+	float dXRange = pXmax - pXmin;
+	float dYRange = pYmax - pYmin;
+	float parRange = hypot (dXRange, dYRange);
+	
+	if (parRange >= PAR_FACTOR_MIN) {
+	  FitPMandPar (&fitPAR, X, dX, Y, dY, T, pX, pY, N, XVERB);
+	  XY_to_RD (&fitPAR.Ro, &fitPAR.Do, fitPAR.Ro, fitPAR.Do, &coords);
+	  catalog[i].average[j].flags |= ID_STAR_FIT_PAR;
+	  Npar ++;
+	}
       }	  
 
@@ -307,8 +330,11 @@
 
       // the measure fields must be updated before the average fields
-      m = catalog[i].average[j].measureOffset;
-      for (k = 0; k < catalog[i].average[j].Nmeasure; k++, m++) {
-	setMeanR (fit.Ro, &catalog[i].measure[m], &catalog[i].average[j], &catalog[i].secfilt[j*Nsecfilt]);
-	setMeanD (fit.Do, &catalog[i].measure[m], &catalog[i].average[j], &catalog[i].secfilt[j*Nsecfilt]);
+      for (k = 0; k < catalog[i].average[j].Nmeasure; k++) {
+	setMeanR (fit.Ro, &measure[k], &catalog[i].average[j], &catalog[i].secfilt[j*Nsecfilt]);
+	setMeanD (fit.Do, &measure[k], &catalog[i].average[j], &catalog[i].secfilt[j*Nsecfilt]);
+	if (measureBig) {
+	  setMeanR_Big (fit.Ro, &measureBig[k], &catalog[i].average[j], &catalog[i].secfilt[j*Nsecfilt]);
+	  setMeanD_Big (fit.Do, &measureBig[k], &catalog[i].average[j], &catalog[i].secfilt[j*Nsecfilt]);
+	}
       }      
 
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/args.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/args.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/args.c	(revision 34041)
@@ -1,4 +1,5 @@
 # include "relastro.h"
 void usage (void);
+void usage_client (void);
 void usage_merge_source (void);
 void usage_merge_source_id (char *name);
@@ -42,5 +43,10 @@
   if ((N = get_argument (argc, argv, "-update-objects"))) {
     remove_argument (N, &argc, argv);
-    FIT_TARGET = TARGET_OBJECTS;
+    FIT_TARGET = TARGET_UPDATE_OBJECTS;
+  }
+
+  if ((N = get_argument (argc, argv, "-update-offsets"))) {
+    remove_argument (N, &argc, argv);
+    FIT_TARGET = TARGET_UPDATE_OFFSETS;
   }
 
@@ -92,6 +98,16 @@
     RADIUS = atof(argv[N]);
     remove_argument (N, &argc, argv);
-    HIGH_SPEED_DIR = strcreate(argv[N]);
-    remove_argument (N, &argc, argv);
+    HIGH_SPEED_DIR = abspath(argv[N], DVO_MAX_PATH);
+    remove_argument (N, &argc, argv);
+  }
+
+  PARALLEL_OUTPUT = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel-output"))) {
+    remove_argument (N, &argc, argv);
+    PARALLEL_OUTPUT = TRUE;
+    if (FIT_TARGET != TARGET_HIGH_SPEED) {
+      fprintf (stderr, "-parallel-output only valid for -high-speed mode\n");
+      exit (1);
+    }
   }
 
@@ -118,14 +134,4 @@
 
   if (FIT_TARGET == TARGET_NONE) usage();
-
-  UserCatalog = FALSE;
-  if ((N = get_argument (argc, argv, "-catalog"))) {
-    remove_argument (N, &argc, argv);
-    UserCatalogRA = atof(argv[N]);
-    remove_argument (N, &argc, argv);
-    UserCatalogDEC = atof(argv[N]);
-    remove_argument (N, &argc, argv);
-    UserCatalog = TRUE;
-  }
 
   /* specify portion of the sky : allow default of all sky? */
@@ -144,8 +150,41 @@
     UserPatch.Dmax = atof (argv[N]);
     remove_argument (N, &argc, argv);
-  } else {
-    if (!UserCatalog) {
-      usage ();
+  } 
+  if ((N = get_argument (argc, argv, "-catalog"))) {
+    remove_argument (N, &argc, argv);
+    UserPatch.Rmin = atof (argv[N]);
+    UserPatch.Rmax = UserPatch.Rmin + 0.001;
+    remove_argument (N, &argc, argv);
+    UserPatch.Dmin = atof (argv[N]);
+    UserPatch.Dmax = UserPatch.Dmin + 0.001;
+    remove_argument (N, &argc, argv);
+  }
+
+  // XXX for the moment, make this selection manual.  it needs to be automatic 
+  // based on the state of the SkyTable
+  PARALLEL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel"))) {
+    PARALLEL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  // this is a test mode : rather than launching the remote jobs and waiting for completion,
+  // relastro will simply list the remote command and wait for the user to signal completion
+  PARALLEL_MANUAL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel-manual"))) {
+    PARALLEL = TRUE; // -parallel-manual implies -parallel
+    PARALLEL_MANUAL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  // this is a test mode : rather than launching the relastro_client jobs remotely, they are 
+  // run in serial via 'system'
+  PARALLEL_SERIAL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel-serial"))) {
+    if (PARALLEL_MANUAL) {
+      fprintf (stderr, "ERROR: cannot mix -parallel-manual and -parallel-serial\n");
+      exit (1);
     }
+    PARALLEL = TRUE; // -parallel-serial implies -parallel
+    PARALLEL_SERIAL = TRUE;
+    remove_argument (N, &argc, argv);
   }
 
@@ -290,18 +329,4 @@
   }  
 
-  AreaSelect = FALSE;
-  if ((N = get_argument (argc, argv, "-area"))) {
-    remove_argument (N, &argc, argv);
-    AreaXmin = atof (argv[N]);
-    remove_argument (N, &argc, argv);
-    AreaXmax = atof (argv[N]);
-    remove_argument (N, &argc, argv);
-    AreaYmin = atof (argv[N]);
-    remove_argument (N, &argc, argv);
-    AreaYmax = atof (argv[N]);
-    remove_argument (N, &argc, argv);
-    AreaSelect = TRUE;
-  }
-
   ImagSelect = FALSE;
   if ((N = get_argument (argc, argv, "-instmag"))) {
@@ -336,17 +361,15 @@
   }
 
-  /* XXX drop this? */
-  DophotSelect = FALSE;
-  if ((N = get_argument (argc, argv, "-dophot"))) {
-    remove_argument (N, &argc, argv);
-    DophotValue = atof (argv[N]);
-    remove_argument (N, &argc, argv);
-    DophotSelect = TRUE;
-  }
-
   NLOOP = 4;
   if ((N = get_argument (argc, argv, "-nloop"))) {
     remove_argument (N, &argc, argv);
     NLOOP = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  NTHREADS = 0;
+  if ((N = get_argument (argc, argv, "-threads"))) {
+    remove_argument (N, &argc, argv);
+    NTHREADS = atof (argv[N]);
     remove_argument (N, &argc, argv);
   }
@@ -356,9 +379,284 @@
 }
 
+int args_client (int argc, char **argv) {
+
+  int N;
+  double trange;
+  char *endptr;
+
+  /* possible operations */
+  FIT_TARGET = TARGET_NONE;
+  FIT_MODE = FIT_AVERAGE;
+
+  // by definition, the client is not parallel 
+  PARALLEL = FALSE;
+  PARALLEL_MANUAL = FALSE;
+  PARALLEL_SERIAL = FALSE;
+
+  BCATALOG = NULL;
+
+  HOST_ID = 0;
+  if ((N = get_argument (argc, argv, "-hostID"))) {
+    remove_argument (N, &argc, argv);
+    HOST_ID = atoi (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!HOST_ID) usage_client();
+
+  HOSTDIR = NULL;
+  if ((N = get_argument (argc, argv, "-hostdir"))) {
+    remove_argument (N, &argc, argv);
+    HOSTDIR = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!HOSTDIR) usage_client();
+
+  if ((N = get_argument (argc, argv, "-load-objects"))) {
+    remove_argument (N, &argc, argv);
+    BCATALOG = strcreate(argv[N]);
+    remove_argument (N, &argc, argv);
+    FIT_TARGET = TARGET_LOAD_OBJECTS;
+  }
+
+  if ((N = get_argument (argc, argv, "-update-objects"))) {
+    remove_argument (N, &argc, argv);
+    FIT_TARGET = TARGET_UPDATE_OBJECTS;
+  }
+
+  if ((N = get_argument (argc, argv, "-update-offsets"))) {
+    remove_argument (N, &argc, argv);
+    FIT_TARGET = TARGET_UPDATE_OFFSETS;
+  }
+
+  // check for object fitting modes
+  if ((N = get_argument (argc, argv, "-pm"))) {
+    remove_argument (N, &argc, argv);
+    FIT_MODE = FIT_PM_ONLY;
+  }
+  if ((N = get_argument (argc, argv, "-par"))) {
+    remove_argument (N, &argc, argv);
+    FIT_MODE = FIT_PAR_ONLY;
+  }
+  if ((N = get_argument (argc, argv, "-pmpar"))) {
+    remove_argument (N, &argc, argv);
+    FIT_MODE = FIT_PM_AND_PAR;
+  }
+
+  if ((N = get_argument (argc, argv, "-high-speed"))) {
+    // XXX include a parallax / no-parallax option
+    if (N >= argc - 3) usage_client();
+    FIT_TARGET = TARGET_HIGH_SPEED;
+    remove_argument (N, &argc, argv);
+    PHOTCODE_A_LIST = strcreate(argv[N]);
+    remove_argument (N, &argc, argv);
+    PHOTCODE_B_LIST = strcreate(argv[N]);
+    remove_argument (N, &argc, argv);
+    RADIUS = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+    HIGH_SPEED_DIR = strcreate(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  if ((N = get_argument (argc, argv, "-testobj1"))) {
+    if (N > argc - 3) usage ();
+    remove_argument (N, &argc, argv);
+    OBJ_ID_SRC = strtol(argv[N], &endptr, 0);
+    if (*endptr) usage ();
+    remove_argument (N, &argc, argv);
+    CAT_ID_SRC = strtol(argv[N], &endptr, 0);
+    if (*endptr) usage (); 
+    remove_argument (N, &argc, argv);
+  }
+
+  if ((N = get_argument (argc, argv, "-testobj2"))) {
+    if (N > argc - 3) usage ();
+    remove_argument (N, &argc, argv);
+    OBJ_ID_DST = strtol(argv[N], &endptr, 0);
+    if (*endptr) usage ();
+    remove_argument (N, &argc, argv);
+    CAT_ID_DST = strtol(argv[N], &endptr, 0);
+    if (*endptr) usage (); 
+    remove_argument (N, &argc, argv);
+  }
+
+  FlagOutlier = FALSE;
+  if ((N = get_argument (argc, argv, "-clip"))) {
+    remove_argument (N, &argc, argv);
+    CLIP_THRESH = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    FlagOutlier = TRUE;
+  }
+
+  if (FIT_TARGET == TARGET_NONE) usage_client();
+
+  /* specify portion of the sky : allow default of all sky? */
+  UserPatch.Rmin = 0;
+  UserPatch.Rmax = 360;
+  UserPatch.Dmin = -90;
+  UserPatch.Dmax = +90;
+  if ((N = get_argument (argc, argv, "-region"))) {
+    remove_argument (N, &argc, argv);
+    UserPatch.Rmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Rmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Dmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Dmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+  } 
+  if ((N = get_argument (argc, argv, "-catalog"))) {
+    remove_argument (N, &argc, argv);
+    UserPatch.Rmin = atof (argv[N]);
+    UserPatch.Rmax = UserPatch.Rmin + 0.001;
+    remove_argument (N, &argc, argv);
+    UserPatch.Dmin = atof (argv[N]);
+    UserPatch.Dmax = UserPatch.Dmin + 0.001;
+    remove_argument (N, &argc, argv);
+  }
+
+  USE_BASIC_CHECK = FALSE;
+  if ((N = get_argument (argc, argv, "-basic-image-search"))) {
+    remove_argument (N, &argc, argv);
+    USE_BASIC_CHECK = TRUE;
+  }
+
+  MaxDensityUse = FALSE;
+  if ((N = get_argument (argc, argv, "-max-density"))) {
+    remove_argument (N, &argc, argv);
+    MaxDensityValue = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+    MaxDensityUse = TRUE;
+  }
+
+  /* define time */
+  TimeSelect = FALSE;
+  if ((N = get_argument (argc, argv, "-time"))) {
+    remove_argument (N, &argc, argv);
+    if (!ohana_str_to_time (argv[N], &TSTART)) { 
+      fprintf (stderr, "ERROR: syntax error\n");
+      return (FALSE);
+    }
+    remove_argument (N, &argc, argv);
+    if (!ohana_str_to_dtime (argv[N], &trange)) { 
+      if (!ohana_str_to_time (argv[N], &TSTOP)) { 
+	fprintf (stderr, "ERROR: syntax error\n");
+	return (FALSE);
+      }
+    } else {
+      if (trange < 0) {
+	trange = fabs (trange);
+	TSTOP = TSTART;
+	TSTART -= trange;
+      } else {
+	TSTOP = TSTART + trange;
+      }
+    }
+    remove_argument (N, &argc, argv);
+    TimeSelect = TRUE;
+  }
+
+  PHOTCODE_KEEP_LIST = NULL;
+  if ((N = get_argument (argc, argv, "+photcode"))) {
+    remove_argument (N, &argc, argv);
+    PHOTCODE_KEEP_LIST = strcreate(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  PHOTCODE_SKIP_LIST = NULL;
+  if ((N = get_argument (argc, argv, "-photcode"))) {
+    remove_argument (N, &argc, argv);
+    PHOTCODE_SKIP_LIST = strcreate(argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  VERBOSE = VERBOSE2 = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    VERBOSE = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  if ((N = get_argument (argc, argv, "-vv"))) {
+    VERBOSE = VERBOSE2 = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  // by default, require > 10pts to clip
+  strcpy (STATMODE, "CHI_INNER_80_WTMEAN");
+  if ((N = get_argument (argc, argv, "-statmode"))) {
+    remove_argument (N, &argc, argv);
+    strcpy (STATMODE, argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  RESET = FALSE;
+  if ((N = get_argument (argc, argv, "-reset"))) {
+    remove_argument (N, &argc, argv);
+    RESET = TRUE;
+  }
+
+  UPDATE = FALSE;
+  if ((N = get_argument (argc, argv, "-update"))) {
+    remove_argument (N, &argc, argv);
+    UPDATE = TRUE;
+  }
+
+  // do not hold the lock on the Image table for relastro_client -update-offsets
+  if (FIT_TARGET == TARGET_UPDATE_OFFSETS) {
+    UPDATE = FALSE;
+  }
+
+  /* XXX update this */
+  MIN_ERROR = 0.001;
+  if ((N = get_argument (argc, argv, "-minerror"))) {
+    remove_argument (N, &argc, argv);
+    MIN_ERROR = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    /* require MIN_ERROR > 0 */
+  }  
+
+  ImagSelect = FALSE;
+  if ((N = get_argument (argc, argv, "-instmag"))) {
+    remove_argument (N, &argc, argv);
+    ImagMin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    ImagMax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    ImagSelect = TRUE;
+  }
+  
+  // for now, make the default to ignore the photflags
+  // XXX make it true by default instead?
+  PhotFlagSelect = FALSE;
+  if ((N = get_argument (argc, argv, "+photflags"))) {
+    remove_argument (N, &argc, argv);
+    PhotFlagSelect = TRUE;
+  }
+
+  PhotFlagBad = 0;
+  if ((N = get_argument (argc, argv, "-photflagbad"))) {
+    remove_argument (N, &argc, argv);
+    PhotFlagBad = atoi (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  PhotFlagPoor = 0;
+  if ((N = get_argument (argc, argv, "-photflagpoor"))) {
+    remove_argument (N, &argc, argv);
+    PhotFlagPoor = atoi (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  if (argc != 1) usage_client ();
+  return TRUE;
+}
+
 void usage () {
-  fprintf (stderr, "ERROR: USAGE: relastro -region RA RA DEC DEC\n");
-  fprintf (stderr, "       OR:    relastro -catalog (ra) (dec)\n\n");
-  fprintf (stderr, "       OR:    relastro -high-speed [options]\n\n");
+  fprintf (stderr, "ERROR: USAGE: relastro -update-simple [options]\n");
+  fprintf (stderr, "       OR:    relastro -update-chips [options]\n");
+  fprintf (stderr, "       OR:    relastro -update-mosaic [options]\n");
+  fprintf (stderr, "       OR:    relastro -update-objects [options]\n");
+  fprintf (stderr, "       OR:    relastro -high-speed [options]\n");
   fprintf (stderr, "       OR:    relastro -merge-source [options]\n\n");
+
   fprintf (stderr, "  specify one of the following modes: \n");
   fprintf (stderr, "  -update-objects\n");
@@ -369,6 +667,10 @@
   fprintf (stderr, "  -update-chips\n");
   fprintf (stderr, "  -update-mosaics\n");
-  fprintf (stderr, "  -high-speed (code[,code,code]) (code[,code,code]) (radius) (output catdir)\n\n");
-  fprintf (stderr, "  additional options: \n");
+  fprintf (stderr, "  -high-speed (code[,code,code]) (code[,code,code]) (radius) (output catdir)\n");
+  fprintf (stderr, "  -merge-source (objID) (catID) into (objID) (catID)\n\n");
+
+  fprintf (stderr, " additional options: \n");
+  fprintf (stderr, "  -region RA RA DEC DEC\n");
+  fprintf (stderr, "  -catalog (ra) (dec)\n\n");
   fprintf (stderr, "  -time (start)(stop)\n");
   fprintf (stderr, "  +photcode (code)[,code,code...]\n");
@@ -383,6 +685,4 @@
   fprintf (stderr, "  -plrange\n");
   fprintf (stderr, "  -minerror\n");
-  fprintf (stderr, "  -area\n");
-  fprintf (stderr, "  -area Xmin Xmax Ymin Ymax\n");
   fprintf (stderr, "  -instmag min max\n\n");
   fprintf (stderr, "  +photflags\n");
@@ -394,4 +694,38 @@
 } 
 
+void usage_client () {
+  fprintf (stderr, "ERROR: USAGE: relastro_client -load\n");
+  fprintf (stderr, "       OR:    relastro_client -update-offsets\n");
+  fprintf (stderr, "       OR:    relastro_client -update-objects\n");
+  fprintf (stderr, "       OR:    relastro_client -high-speed\n\n");
+
+  fprintf (stderr, "  specify one of the following modes: \n");
+  fprintf (stderr, "  -load : load the bright source detections for analysis\n");
+  fprintf (stderr, "  -update-offsets : apply the updated image parameters\n");
+  fprintf (stderr, "  -update-objects : calculate average astrometric properties of objects\n");
+  fprintf (stderr, "  -high-speed (code[,code,code]) (code[,code,code]) (radius) (output catdir)\n");
+  fprintf (stderr, "    support for the special high-speed mode\n");
+
+  fprintf (stderr, " additional options: \n");
+  fprintf (stderr, "  -pm : calculate proper motions\n");
+  fprintf (stderr, "  -par : calculate parallaxes\n");
+  fprintf (stderr, "  -pmpar : calculate motions and parallaxes\n");
+  fprintf (stderr, "  -region Rmin Rmax Dmin Dmax");
+  fprintf (stderr, "  -catalog RA DEC");
+  fprintf (stderr, "  -time (start)(stop)\n");
+  fprintf (stderr, "  +photcode (code)[,code,code...]\n");
+  fprintf (stderr, "  -photcode (code)[,code,code...]\n");
+  fprintf (stderr, "  -statmode (mode)\n");
+  fprintf (stderr, "  -reset\n");
+  fprintf (stderr, "  -minerror\n");
+  fprintf (stderr, "  -instmag min max\n\n");
+  fprintf (stderr, "  +photflags\n");
+  fprintf (stderr, "  -photflagbad\n");
+  fprintf (stderr, "  -photflagpoor\n");
+  fprintf (stderr, "  -v\n");
+  fprintf (stderr, "  \n");
+  exit (2);
+} 
+
 void usage_merge_source_id (char *name) {
 
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/bcatalog.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/bcatalog.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/bcatalog.c	(revision 34041)
@@ -1,3 +1,8 @@
 # include "relastro.h"
+
+static int Nskip1 = 0;
+static int Nskip2 = 0;
+static unsigned int Tref = 1323353985;
+static short Cref = 10355;
 
 int bcatalog (Catalog *subcatalog, Catalog *catalog) {
@@ -12,10 +17,21 @@
 
   /* we are moving only the subset of measurements from catalog[0] to subcatalog[0] */
+  memset(subcatalog, 0, sizeof(Catalog));
   NAVERAGE = 50;
   NMEASURE = 1000;
-  ALLOCATE (subcatalog[0].average, Average, NAVERAGE);
-  ALLOCATE (subcatalog[0].secfilt, SecFilt, NAVERAGE*Nsecfilt);
-  ALLOCATE (subcatalog[0].measure, Measure, NMEASURE);
+  ALLOCATE (subcatalog[0].average,  Average,     NAVERAGE);
+  ALLOCATE (subcatalog[0].secfilt,  SecFilt,     NAVERAGE*Nsecfilt);
+  ALLOCATE (subcatalog[0].measureT, MeasureTiny, NMEASURE);
   Nmeasure = Naverage = 0;
+
+  DVOAverageFlags averageBits = 
+    ID_STAR_FEW     |
+    ID_STAR_POOR    |
+    ID_STAR_FIT_AVE |
+    ID_STAR_FIT_PM  |
+    ID_STAR_FIT_PAR |
+    ID_STAR_USE_AVE |
+    ID_STAR_USE_PM  |
+    ID_STAR_USE_PAR; 
 
   /* exclude stars not in range or with too few measurements */
@@ -23,4 +39,5 @@
     if (catalog[0].average[i].Nmeasure <= SRC_MEAS_TOOFEW) {
       continue;
+      // XXX can't (easily) count this for a given chip
     }
     
@@ -33,9 +50,5 @@
 
     if (RESET) {
-      // XXX reset the ra,dec coords?
-      // XXX define astrometry vs photometry average.dbFlags
-      // XXX put photometry flags in secfilt (ie, per average mag?)
-      subcatalog[0].average[Naverage].flags &= ~ID_STAR_FEW;
-      subcatalog[0].average[Naverage].flags &= ~ID_STAR_POOR;
+      subcatalog[0].average[Naverage].flags &= ~averageBits;
     }
 
@@ -48,4 +61,7 @@
       if (!MeasFilterTest(&catalog[0].measure[offset], TRUE)) {
 	catalog[0].measure[offset].dbFlags &= ~ID_MEAS_USED_CHIP;
+	if (FALSE && (abs(catalog[0].measure[offset].t - Tref) < 10) && (catalog[0].measure[offset].photcode == Cref)) {
+	  Nskip1 ++;
+	}
 	continue;
       }
@@ -54,4 +70,7 @@
       if (FlagOutlier && (catalog[0].measure[offset].dbFlags & ID_MEAS_POOR_ASTROM)) {
 	catalog[0].measure[offset].dbFlags &= ~ID_MEAS_USED_CHIP;
+	if (FALSE && (abs(catalog[0].measure[offset].t - Tref) < 10) && (catalog[0].measure[offset].photcode == Cref)) {
+	  Nskip2 ++;
+	}
 	continue;
       }
@@ -70,13 +89,12 @@
       // allowed.
 
-      // CopyMeasureTiny (&subcatalog[0].measureT[Nmeasure], &catalog[0].measure[offset]);
-
-      subcatalog[0].measure[Nmeasure] = catalog[0].measure[offset];
-      subcatalog[0].measure[Nmeasure].dbFlags &= ~ID_MEAS_SKIP_ASTROM;
-      subcatalog[0].measure[Nmeasure].dbFlags &= ~ID_MEAS_NOCAL;
-      subcatalog[0].measure[Nmeasure].averef   = Naverage;
+      CopyMeasureToTiny (&subcatalog[0].measureT[Nmeasure], &catalog[0].measure[offset]);
+      // subcatalog[0].measure[Nmeasure] = catalog[0].measure[offset];
+      subcatalog[0].measureT[Nmeasure].dbFlags &= ~ID_MEAS_SKIP_ASTROM;
+      subcatalog[0].measureT[Nmeasure].dbFlags &= ~ID_MEAS_NOCAL;
+      subcatalog[0].measureT[Nmeasure].averef   = Naverage;
       if (RESET) {
-        subcatalog[0].measure[Nmeasure].dbFlags &= ~ID_MEAS_POOR_ASTROM;
-        subcatalog[0].measure[Nmeasure].dbFlags &= ~ID_MEAS_AREA;
+        subcatalog[0].measureT[Nmeasure].dbFlags &= ~ID_MEAS_POOR_ASTROM;
+        subcatalog[0].measureT[Nmeasure].dbFlags &= ~ID_MEAS_AREA;
       }
 
@@ -85,5 +103,5 @@
       if (Nmeasure == NMEASURE) {
         NMEASURE += 1000;
-        REALLOCATE (subcatalog[0].measure, Measure, NMEASURE);
+        REALLOCATE (subcatalog[0].measureT, MeasureTiny, NMEASURE);
       }
     }
@@ -96,26 +114,50 @@
     }
   }
-  REALLOCATE (subcatalog[0].average, Average, MAX (Naverage, 1));
-  REALLOCATE (subcatalog[0].measure, Measure, MAX (Nmeasure, 1));
-  REALLOCATE (subcatalog[0].secfilt, SecFilt, MAX (Naverage, 1)*Nsecfilt);
+  REALLOCATE (subcatalog[0].average,  Average,     MAX (Naverage, 1));
+  REALLOCATE (subcatalog[0].measureT, MeasureTiny, MAX (Nmeasure, 1));
+  REALLOCATE (subcatalog[0].secfilt,  SecFilt,     MAX (Naverage, 1)*Nsecfilt);
   subcatalog[0].Naverage = Naverage;
   subcatalog[0].Nmeasure = Nmeasure;
   subcatalog[0].Nsecfilt = catalog[0].Nsecfilt;
-  subcatalog[0].Nsecf_mem = Naverage * Nsecfilt;
+  subcatalog[0].Nsecfilt = catalog[0].Nsecfilt;
+  subcatalog[0].catID    = catalog[0].catID;
   assert (Nsecfilt == catalog[0].Nsecfilt);
 
   // limit the total number of stars in the catalog
   if (MaxDensityUse) {
-    LimitDensityCatalog (subcatalog, catalog);
-  }
-
-  if (VERBOSE) {
-    fprintf (stderr, OFF_T_FMT": using "OFF_T_FMT" stars ("OFF_T_FMT" measures) for catalog\n",  i,  subcatalog[0].Naverage,  subcatalog[0].Nmeasure);
-   }
+    LimitDensityCatalog_ByNmeasure (subcatalog, catalog);
+  } else {
+    if (VERBOSE2) {
+      char *basename = filebasename (catalog[0].filename);
+      fprintf (stderr, "subset of "OFF_T_FMT" ("OFF_T_FMT" total) stars, "OFF_T_FMT" ("OFF_T_FMT" total) measures for catalog %s\n", 
+	       subcatalog[0].Naverage, catalog[0].Naverage, subcatalog[0].Nmeasure, catalog[0].Nmeasure, basename);
+      free (basename);
+    }
+  }
   return (TRUE);
 }
 
+void bcatalog_show_skips () {
+  fprintf (stderr, "Nskip: %d, %d\n", Nskip1, Nskip2);
+}
+
+// sort by decreasing Nmeasure (X)
+void sort_by_Nmeasure (int *X, off_t *Y, off_t N) {
+
+# define SWAPFUNC(A,B){ int tmpI; off_t tmpT;	\
+  tmpI = X[A]; X[A] = X[B]; X[B] = tmpI; \
+  tmpT = Y[A]; Y[A] = Y[B]; Y[B] = tmpT; \
+}
+# define COMPARE(A,B)(X[A] > X[B])
+
+  OHANA_SORT (N, COMPARE, SWAPFUNC);
+
+# undef SWAPFUNC
+# undef COMPARE
+
+}
+
 /* this version does NOT use AverageTiny, MeasureTiny */ 
-int LimitDensityCatalog (Catalog *subcatalog, Catalog *catalog) {
+int LimitDensityCatalog_ByNmeasure (Catalog *subcatalog, Catalog *oldcatalog) {
 
   Catalog tmpcatalog;
@@ -125,8 +167,8 @@
   int Nsecfilt = GetPhotcodeNsecfilt ();
 
-  gfits_scan (&catalog[0].header, "RA0",  "%lf", 1, &Rmin);
-  gfits_scan (&catalog[0].header, "DEC0", "%lf", 1, &Dmin);
-  gfits_scan (&catalog[0].header, "RA1",  "%lf", 1, &Rmax);
-  gfits_scan (&catalog[0].header, "DEC1", "%lf", 1, &Dmax);
+  gfits_scan (&oldcatalog[0].header, "RA0",  "%lf", 1, &Rmin);
+  gfits_scan (&oldcatalog[0].header, "DEC0", "%lf", 1, &Dmin);
+  gfits_scan (&oldcatalog[0].header, "RA1",  "%lf", 1, &Rmax);
+  gfits_scan (&oldcatalog[0].header, "DEC1", "%lf", 1, &Dmax);
 
   if (VERBOSE2) fprintf (stderr, "extracting from catalog covering region %f,%f to %f,%f\n", Rmin, Dmin, Rmax, Dmax);
@@ -147,16 +189,14 @@
   // select a random subset of Nmax stars from subcatalog using Fisher-Yates
 
-  // we are going to select Nmax entries by generating a random-sorted index list
-  off_t *index, tmp, i, j, ave;
+  // we are going to select Nmax entries by choosing the brightest objects
+  int *value;
+  off_t *index, i, j, ave;
   ALLOCATE (index, off_t, Naverage);
+  ALLOCATE (value, int, Naverage);
   for (i = 0; i < Naverage; i++) {
     index[i] = i;
-  }
-  for (i = 0; i < Naverage; i++) {
-    j = (Naverage - i) * drand48() + i; // a number between i and Naverage
-    tmp = index[j];
-    index[j] = index[i];
-    index[i] = tmp;
-  }
+    value[i] = subcatalog[0].average[i].Nmeasure;
+  }
+  sort_by_Nmeasure (value, index, Naverage);
 
   // count the number of measurements this selection will yield
@@ -168,7 +208,7 @@
 
   // allocate the output data 
-  ALLOCATE (tmpcatalog.average, Average, Nmax);
-  ALLOCATE (tmpcatalog.measure, Measure, NMEASURE);
-  ALLOCATE (tmpcatalog.secfilt, SecFilt, Nmax * Nsecfilt);
+  ALLOCATE (tmpcatalog.average,  Average,     Nmax);
+  ALLOCATE (tmpcatalog.measureT, MeasureTiny, NMEASURE);
+  ALLOCATE (tmpcatalog.secfilt,  SecFilt,     Nmax * Nsecfilt);
 
   off_t Nmeasure = 0;
@@ -181,11 +221,112 @@
     for (j = 0; j < tmpcatalog.average[i].Nmeasure; j++) {
       off_t offset = subcatalog[0].average[ave].measureOffset + j;
-      tmpcatalog.measure[Nmeasure] = subcatalog[0].measure[offset];
-      tmpcatalog.measure[Nmeasure].averef = i;
+      tmpcatalog.measureT[Nmeasure] = subcatalog[0].measureT[offset];
+      tmpcatalog.measureT[Nmeasure].averef = i;
       Nmeasure ++;
     }
-  }
-
-  if (VERBOSE) {
+    for (j = 0; j < Nsecfilt; j++) {
+      tmpcatalog.secfilt[i*Nsecfilt + j] = subcatalog[0].secfilt[ave*Nsecfilt + j];
+    }
+  }
+
+  if (VERBOSE2) {
+    char *basename = filebasename (oldcatalog[0].filename);
+    fprintf (stderr, "limited to "OFF_T_FMT" ("OFF_T_FMT" subset, "OFF_T_FMT" total) stars, "OFF_T_FMT" ("OFF_T_FMT" subset, "OFF_T_FMT" total) measures for catalog %s\n", 
+	     Nmax, subcatalog[0].Naverage, oldcatalog[0].Naverage, Nmeasure, subcatalog[0].Nmeasure,  oldcatalog[0].Nmeasure, basename);
+    free (basename);
+  }
+
+  free (index);
+  free (value);
+  free (subcatalog[0].average);
+  free (subcatalog[0].measureT);
+  free (subcatalog[0].secfilt);
+
+  subcatalog[0].average = tmpcatalog.average;
+  subcatalog[0].measureT = tmpcatalog.measureT;
+  subcatalog[0].secfilt = tmpcatalog.secfilt;
+  subcatalog[0].Naverage = Nmax;
+  subcatalog[0].Nmeasure = Nmeasure;
+  subcatalog[0].Nsecfilt = oldcatalog[0].Nsecfilt;
+  subcatalog[0].Nsecf_mem = Naverage * oldcatalog[0].Nsecfilt;
+
+  return (TRUE);
+}
+
+/* this version does NOT use AverageTiny, MeasureTiny */ 
+int LimitDensityCatalog_RandomSample (Catalog *subcatalog, Catalog *catalog) {
+
+  Catalog tmpcatalog;
+
+  double Rmin, Rmax, Dmin, Dmax;
+
+  int Nsecfilt = GetPhotcodeNsecfilt ();
+
+  gfits_scan (&catalog[0].header, "RA0",  "%lf", 1, &Rmin);
+  gfits_scan (&catalog[0].header, "DEC0", "%lf", 1, &Dmin);
+  gfits_scan (&catalog[0].header, "RA1",  "%lf", 1, &Rmax);
+  gfits_scan (&catalog[0].header, "DEC1", "%lf", 1, &Dmax);
+
+  if (VERBOSE2) fprintf (stderr, "extracting from catalog covering region %f,%f to %f,%f\n", Rmin, Dmin, Rmax, Dmax);
+
+  float AREA = fabs(Dmax - Dmin) * fabs(Rmax - Rmin) * cos (0.5*RAD_DEG*(Dmax + Dmin));
+  assert (AREA > 0);
+
+  off_t Nmax = MaxDensityValue * AREA;
+  if (subcatalog[0].Naverage <= Nmax) {
+    if (VERBOSE2) {
+      fprintf (stderr, "subcatalog has less than the max density\n");
+    }
+    return (TRUE);
+  }
+
+  off_t Naverage = subcatalog[0].Naverage;
+
+  // select a random subset of Nmax stars from subcatalog using Fisher-Yates
+
+  // we are going to select Nmax entries by generating a random-sorted index list
+  off_t *index, tmp, i, j, ave;
+  ALLOCATE (index, off_t, Naverage);
+  for (i = 0; i < Naverage; i++) {
+    index[i] = i;
+  }
+  for (i = 0; i < Naverage; i++) {
+    j = (Naverage - i) * drand48() + i; // a number between i and Naverage
+    tmp = index[j];
+    index[j] = index[i];
+    index[i] = tmp;
+  }
+
+  // count the number of measurements this selection will yield
+  off_t NMEASURE = 0;
+  for (i = 0; i < Nmax; i++) {
+    ave = index[i];
+    NMEASURE += subcatalog[0].average[ave].Nmeasure;
+  }
+
+  // allocate the output data 
+  ALLOCATE (tmpcatalog.average,  Average,     Nmax);
+  ALLOCATE (tmpcatalog.measureT, MeasureTiny, NMEASURE);
+  ALLOCATE (tmpcatalog.secfilt,  SecFilt,     Nmax * Nsecfilt);
+
+  off_t Nmeasure = 0;
+
+  // copy the Nmax selected entries from subcatalog to tmpcatalog (adjusting links)
+  for (i = 0; i < Nmax; i++) {
+    ave = index[i];
+    tmpcatalog.average[i] = subcatalog[0].average[ave];
+    tmpcatalog.average[i].measureOffset = Nmeasure;
+    for (j = 0; j < tmpcatalog.average[i].Nmeasure; j++) {
+      off_t offset = subcatalog[0].average[ave].measureOffset + j;
+      tmpcatalog.measureT[Nmeasure] = subcatalog[0].measureT[offset];
+      tmpcatalog.measureT[Nmeasure].averef = i;
+      Nmeasure ++;
+    }
+    for (j = 0; j < Nsecfilt; j++) {
+      tmpcatalog.secfilt[i*Nsecfilt + j] = subcatalog[0].secfilt[ave*Nsecfilt + j];
+    }
+  }
+
+  if (VERBOSE2) {
     fprintf (stderr, "limited to "OFF_T_FMT" of "OFF_T_FMT" stars ("OFF_T_FMT" of "OFF_T_FMT" measures) for catalog %s\n", 
 	     Nmax, subcatalog[0].Naverage, Nmeasure, subcatalog[0].Nmeasure,  catalog[0].filename);
@@ -193,9 +334,9 @@
 
   free (subcatalog[0].average);
-  free (subcatalog[0].measure);
+  free (subcatalog[0].measureT);
   free (subcatalog[0].secfilt);
 
   subcatalog[0].average = tmpcatalog.average;
-  subcatalog[0].measure = tmpcatalog.measure;
+  subcatalog[0].measureT = tmpcatalog.measureT;
   subcatalog[0].secfilt = tmpcatalog.secfilt;
   subcatalog[0].Naverage = Nmax;
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/dvo_astrom_ops.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/dvo_astrom_ops.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/dvo_astrom_ops.c	(revision 34041)
@@ -1,5 +1,5 @@
 # include "relastro.h"
 
-double getMeanR (Measure *measure, Average *average, SecFilt *secfilt) {
+double getMeanR (MeasureTiny *measure, Average *average, SecFilt *secfilt) {
 
   double ra;
@@ -21,5 +21,5 @@
 }
 
-double getMeanD (Measure *measure, Average *average, SecFilt *secfilt) {
+double getMeanD (MeasureTiny *measure, Average *average, SecFilt *secfilt) {
 
   double dec;
@@ -41,5 +41,5 @@
 }
 
-int setMeanR (double ra_fit, Measure *measure, Average *average, SecFilt *secfilt) {
+int setMeanR (double ra_fit, MeasureTiny *measure, Average *average, SecFilt *secfilt) {
 
   /* math to get from new fitted position to new measure offset
@@ -66,5 +66,5 @@
 }
 
-int setMeanD (double dec_fit, Measure *measure, Average *average, SecFilt *secfilt) {
+int setMeanD (double dec_fit, MeasureTiny *measure, Average *average, SecFilt *secfilt) {
 
   /* math to get from new fitted position to new measure offset
@@ -90,2 +90,56 @@
   return (TRUE);
 }
+
+int setMeanR_Big (double ra_fit, Measure *measure, Average *average, SecFilt *secfilt) {
+
+  if (!measure) return TRUE;
+
+  /* math to get from new fitted position to new measure offset
+     ra_obs = average[0].R - measure[0].dR / 3600.0;
+     measure[0].dR = (ra_fit - ra_obs) * 3600.0;
+     measure[0].dR = (ra_fit - average[0].R + measure[0].dR/3600) * 3600.0
+     measure[0].dR = (ra_fit - average[0].R) * 3600.0 + measure[0].dR;
+  */
+
+  /* the measure carries the instantaneous mean position at the epoch t */ 
+  measure[0].dR += (ra_fit - average[0].R) * 3600.0;
+
+  /* possible corrections to mean ra:
+
+  - proper-motion and parallax
+  - abberation
+  - precession and nutation, etc
+  - refraction
+  - DCR
+
+  */
+
+  return (TRUE);
+}
+
+int setMeanD_Big (double dec_fit, Measure *measure, Average *average, SecFilt *secfilt) {
+
+  if (!measure) return TRUE;
+
+  /* math to get from new fitted position to new measure offset
+     dec_obs = average[0].D - measure[0].dD / 3600.0;
+     measure[0].dD = (dec_fit - dec_obs) * 3600.0;
+     measure[0].dD = (dec_fit - average[0].D + measure[0].dD/3600) * 3600.0
+     measure[0].dD = (dec_fit - average[0].D) * 3600.0 + measure[0].dD;
+  */
+
+  /* the measure carries the instantaneous mean position at the epoch t */ 
+  measure[0].dD += (dec_fit - average[0].D) * 3600.0;
+
+  /* possible corrections to mean ra:
+
+  - proper-motion and parallax
+  - abberation
+  - precession and nutation, etc
+  - refraction
+  - DCR
+
+  */
+
+  return (TRUE);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/fitpoly.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/fitpoly.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/fitpoly.c	(revision 34041)
@@ -149,4 +149,6 @@
   
   if (!dgaussjordan (matrix, vector, fit[0].Nelems, 2)) {
+    array_free (matrix, fit[0].Nelems);
+    array_free (vector, fit[0].Nelems);
     return (FALSE);
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/high_speed_catalogs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/high_speed_catalogs.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/high_speed_catalogs.c	(revision 34041)
@@ -1,10 +1,9 @@
 # include "relastro.h"
 
-int high_speed_catalogs () {
+int high_speed_catalogs_parallel (SkyList *sky);
+
+int high_speed_catalogs (SkyTable *sky, SkyList *skylist, int hostID, char *hostpath) {
 
   int i;
-
-  SkyTable *sky = NULL;
-  SkyList *skylist = NULL;
   Catalog catalog;
 
@@ -12,24 +11,22 @@
   dvo_set_catdir(CATDIR);
 
-  // load the current sky table (layout of all SkyRegions) 
-  sky = SkyTableLoadOptimal (CATDIR, SKY_TABLE, GSCFILE, FALSE, SKY_DEPTH, VERBOSE);
-  SkyTableSetFilenames (sky, CATDIR, "cpt");
-  
-  // determine the populated SkyRegions overlapping the requested area (default depth)
-  if (UserCatalog) {
-    skylist = SkyRegionByPoint (sky, -1, UserCatalogRA, UserCatalogDEC);
-    setupAreaSelection(skylist->regions[0]);
-  } else {
-    skylist = SkyListByPatch (sky, -1, &UserPatch);
-    setupAreaSelection(&UserPatch);
-  }
-
   initializeConstraints();
+
+  // XXX need to decide how to determine PARALLEL mode...
+  if (PARALLEL && !hostID) {
+    high_speed_catalogs_parallel (skylist);
+    goto finish;
+  }
 
   // load data from each region file, only use bright stars
   for (i = 0; i < skylist[0].Nregions; i++) {
 
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+
     // set up the basic catalog info
-    catalog.filename  = skylist[0].filename[i];
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", hostpath, skylist[0].regions[i]->name);
+    catalog.filename  = hostID ? hostfile : skylist[0].filename[i];
     catalog.catformat = dvo_catalog_catformat (CATFORMAT);    // set the default catformat from config data
     catalog.catmode   = dvo_catalog_catmode (CATMODE);        // set the default catmode from config data
@@ -37,10 +34,10 @@
     catalog.Nsecfilt  = GetPhotcodeNsecfilt ();
 
-    if (!dvo_catalog_open (&catalog, skylist[0].regions[i], VERBOSE, "r")) {
+    if (!dvo_catalog_open (&catalog, skylist[0].regions[i], VERBOSE2, "r")) {
       fprintf (stderr, "ERROR: failure reading catalog %s\n", catalog.filename);
       exit (1);
     }
     if (!catalog.Naves_disk) {
-      if (VERBOSE) fprintf (stderr, "no data in %s, skipping\n", catalog.filename);
+      if (VERBOSE2) fprintf (stderr, "no data in %s, skipping\n", catalog.filename);
       dvo_catalog_unlock (&catalog);
       dvo_catalog_free (&catalog);
@@ -54,4 +51,156 @@
   }
   
+finish:
+
+  // in relastro (NOT relastr_client), save the Images.dat, Photcodes.dat, SkyTable.fits files
+  if (!hostID) {
+    char photcodeFile[1024];
+    snprintf (photcodeFile, 1024, "%s/Photcodes.dat", HIGH_SPEED_DIR);
+    if (!SavePhotcodesFITS (photcodeFile)) {
+      fprintf (stderr, "error saving photcode table %s\n", photcodeFile);
+      exit (1);
+    }
+    
+    // need to copy across the Images, SkyTable, and Photcode tables:
+    char *skyfile = SkyTableFilename (HIGH_SPEED_DIR);
+    SkyTableSave (sky, skyfile);
+    
+    char line[2048];
+    snprintf (line, 2048, "cp %s/Images.dat %s/Images.dat", CATDIR, HIGH_SPEED_DIR);
+    int status = system (line);
+    if (status) {
+      fprintf (stderr, "copy of Images.dat failed\n");
+      exit (3);
+    }
+  }
+
   return (TRUE);
 }
+
+// CATDIR is supplied globally
+# define DEBUG 1
+int high_speed_catalogs_parallel (SkyList *skylist) {
+
+  // launch the setphot_client jobs to the parallel hosts
+
+  // load the list of hosts
+  HostTable *table = HostTableLoad (CATDIR, skylist->hosts);
+  if (!table) {
+    fprintf (stderr, "ERROR: failure reading Host Table %s for database %s\n", skylist->hosts, CATDIR);
+    exit (1);
+  }    
+
+  // If we want to parallelize the output, the remote client needs to load the HostTable
+  // for the output catdir.  Require the output HostTable to match the input (ie, same
+  // hostIDs must exist).  Preferred, but not required, that they match in the host
+  // location.
+  HostTable *tableOut = NULL;
+  if (PARALLEL_OUTPUT) {
+    // load the list of hosts
+    tableOut = HostTableLoad (HIGH_SPEED_DIR, skylist->hosts);
+    if (!tableOut) {
+      fprintf (stderr, "ERROR: failure reading Host Table %s for output database %s\n", skylist->hosts, HIGH_SPEED_DIR);
+      exit (1);
+    }    
+    if (table->Nhosts != tableOut->Nhosts) {
+      fprintf (stderr, "ERROR: output HostTable must have matching hosts (%d in, %d out)\n", table->Nhosts, tableOut->Nhosts);
+      exit (1);
+    }
+  }
+
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    // use this directory to save the output catalogs (distributed if parallel)
+    char *outputDir = strcreate(HIGH_SPEED_DIR);
+    if (PARALLEL_OUTPUT) {
+      // find the matching host entry in the output HostTable (match by ID, not index)
+      int hostID = table->hosts[i].hostID;
+      int index = table->index[hostID];
+      if (index == -1) {
+	fprintf (stderr, "ERROR: output HostTable must have matching hosts (host ID %d not found)\n", hostID);
+	exit (1);
+      }
+
+      free (outputDir);
+      outputDir = abspath (tableOut->hosts[index].pathname, DVO_MAX_PATH);
+    }
+
+    char command[1024];
+    snprintf (command, 1024, "relastro_client -high-speed %s %s %f %s -hostID %d -D CATDIR %s -hostdir %s -region %f %f %f %f", 
+	      PHOTCODE_A_LIST, PHOTCODE_B_LIST, RADIUS, outputDir, table->hosts[i].hostID, CATDIR, table->hosts[i].pathname, UserPatch.Rmin, UserPatch.Rmax, UserPatch.Dmin, UserPatch.Dmax);
+
+    free (outputDir);
+
+    // options / arguments that can affect relastro_client -high-speed
+    char tmpline[1024];
+    if (FIT_MODE == FIT_PM_ONLY)  	 { snprintf (tmpline, 1024, "%s -pm",    command);           	strcpy (command, tmpline); }
+    if (FIT_MODE == FIT_PAR_ONLY) 	 { snprintf (tmpline, 1024, "%s -par",   command);           	strcpy (command, tmpline); }
+    if (FIT_MODE == FIT_PM_AND_PAR)      { snprintf (tmpline, 1024, "%s -pmpar", command);           	strcpy (command, tmpline); }
+
+    if (VERBOSE)       { snprintf (tmpline, 1024, "%s -v",              command);                    	strcpy (command, tmpline); }
+    if (VERBOSE2)      { snprintf (tmpline, 1024, "%s -vv",             command); 		     	strcpy (command, tmpline); }
+    if (RESET)         { snprintf (tmpline, 1024, "%s -reset",          command); 		     	strcpy (command, tmpline); }
+    if (ImagSelect)    { snprintf (tmpline, 1024, "%s -instmag %f %f",  command, ImagMin, ImagMax);  	strcpy (command, tmpline); }
+    if (MaxDensityUse) { snprintf (tmpline, 1024, "%s -max-density %f", command, MaxDensityValue);   	strcpy (command, tmpline); }
+    
+    if (USE_BASIC_CHECK) { snprintf (tmpline, 1024, "%s -basic-image-search", command);              	strcpy (command, tmpline); }
+
+    if (FlagOutlier)   { snprintf (tmpline, 1024, "%s -clip %d",        command, CLIP_THRESH);       	strcpy (command, tmpline); }
+    
+    if (PHOTCODE_KEEP_LIST) { snprintf (tmpline, 1024, "%s +photcode %s", command, PHOTCODE_KEEP_LIST); strcpy (command, tmpline); }
+    if (PHOTCODE_SKIP_LIST) { snprintf (tmpline, 1024, "%s -photcode %s", command, PHOTCODE_SKIP_LIST); strcpy (command, tmpline); }
+    if (PhotFlagSelect)    { snprintf (tmpline, 1024, "%s +photflags",   command);                      strcpy (command, tmpline); }
+    if (PhotFlagBad)       { snprintf (tmpline, 1024, "%s +photflagbad %d", command, PhotFlagBad);      strcpy (command, tmpline); }
+    if (PhotFlagPoor)      { snprintf (tmpline, 1024, "%s +photflagpoor %d", command, PhotFlagPoor);    strcpy (command, tmpline); }
+    // XXX note that the above pass in the flag as decimal -- also note that args.c cannot handle 0xHEX values
+
+    if (WHERE_A[0]) { snprintf (tmpline, 1024, "%s -D WHERE_A \"%s\"", command, WHERE_A);               strcpy (command, tmpline); }
+    if (WHERE_B[0]) { snprintf (tmpline, 1024, "%s -D WHERE_B \"%s\"", command, WHERE_B);               strcpy (command, tmpline); }
+
+    if (TimeSelect) { 
+      char *tstart = ohana_sec_to_date (TSTART);
+      char *tstop  = ohana_sec_to_date (TSTOP);
+      snprintf (tmpline, 1024, "%s -time %s %s", command, tstart, tstop); 
+      free (tstart);
+      free (tstop);
+      strcpy (command, tmpline); 
+    }
+
+    fprintf (stderr, "command: %s\n", command);
+
+    if (PARALLEL_MANUAL) continue;
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	fprintf (stderr, "ERROR running relastro_client\n");
+	exit (2);
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	exit (1);
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+
+  if (PARALLEL_MANUAL) {
+    fprintf (stderr, "run the relastro_client commands above.  when these are done, hit return\n");
+    getchar();
+  }
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+  }
+
+  return TRUE;
+}      
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/high_speed_objects.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/high_speed_objects.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/high_speed_objects.c	(revision 34041)
@@ -6,36 +6,36 @@
 int high_speed_objects (SkyRegion *region, Catalog *catalog) {
 
-  // XXX seems silly to require region here just to find the catalog bounds / center
-
-  off_t i, j, m, J, ni, nj, *N1, Nslow, Ninvalid, NgroupA, NgroupB, NgroupAbad, NgroupBbad,l,i1,Noff,Nmeasure,Naverage, NAVERAGE, NMEASURE;
-  int *slowMoving, *groupA, *groupB, status, Nmatch, Nmatchmeas,Nepoch,nv[2],Nmatchmeasobj;
-  int foundA, foundB;
+  off_t i, j, m, J, ni, nj, *N1;
+  off_t Nslow, Ninvalid, NgroupA, NgroupB, NgroupAbad, NgroupBbad;
+  off_t l, i1, NAVERAGE, NMEASURE;
+  int *slowMoving, *groupA, *groupB, status, Nmatch, Nmatchmeas, Nepoch, nv[2], Nmatchmeasobj;
+  int foundA, foundB, XVERB;
   double *X1, *Y1;
   double dX, dY, dR, RADIUS2;
   Coords tcoords;
-  Catalog catalog1;
+  Catalog catalogOut;
 
   int Nsecfilt;
   char filename[1024];
-  Noff = strlen(CATDIR);
-  sprintf (filename, "%s%s", HIGH_SPEED_DIR, &catalog[0].filename[Noff]);
-  fprintf(stderr, "%s\n",filename);
-  dvo_catalog_init(&catalog1, TRUE); /*initialise new catalogue*/
-  catalog1.filename = strcreate(filename);
+
+  snprintf (filename, 1024, "%s/%s.cpt", HIGH_SPEED_DIR, region[0].name);
+  fprintf (stderr, "%s\n",filename);
+
+  dvo_catalog_init (&catalogOut, TRUE); /*initialise new catalogue*/
+  catalogOut.filename = strcreate(filename);
 
   SIGMA_LIM = 0.0;
 
   Nsecfilt = GetPhotcodeNsecfilt();
-  Naverage=catalog[0].Naverage;
-  Nmeasure=catalog[0].Nmeasure;
-  catalog1.filename = filename; // based on the input name, need to keep everything below the catdir portion
-  catalog1.Nsecfilt  = Nsecfilt;
-  // always load all of the data (if any exists)
-  catalog1.catflags = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
+  // off_t Naverage = catalog[0].Naverage;
+  // off_t Nmeasure = catalog[0].Nmeasure;
+  catalogOut.filename = filename; // based on the input name, need to keep everything below the catdir portion
+  catalogOut.Nsecfilt = Nsecfilt;
+  catalogOut.catflags = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF; // load all data
   
-  catalog1.catformat = dvo_catalog_catformat (CATFORMAT);  // set the default catformat from config data
-  catalog1.catmode   = dvo_catalog_catmode (CATMODE);      // set the default catmode from config data
-
-  if (!dvo_catalog_open (&catalog1, region, VERBOSE,"w")) {
+  catalogOut.catformat = dvo_catalog_catformat (CATFORMAT);  // set the default catformat from config data
+  catalogOut.catmode   = dvo_catalog_catmode (CATMODE);      // set the default catmode from config data
+
+  if (!dvo_catalog_open (&catalogOut, region, VERBOSE2,"w")) {
     fprintf (stderr, "ERROR: failure to open catalog file %s\n",
 	     filename);
@@ -45,7 +45,7 @@
   NAVERAGE = 1000;
   NMEASURE = 10000;
-  REALLOCATE (catalog1.average, Average, NAVERAGE);
-  REALLOCATE (catalog1.measure, Measure, NMEASURE);
-  REALLOCATE(catalog1.secfilt, SecFilt, NAVERAGE*Nsecfilt);
+  REALLOCATE (catalogOut.average, Average, NAVERAGE);
+  REALLOCATE (catalogOut.measure, Measure, NMEASURE);
+  REALLOCATE (catalogOut.secfilt, SecFilt, NAVERAGE*Nsecfilt);
 
   // high-speed between different surveys (easier case):
@@ -77,4 +77,11 @@
   // mark (exclude) objects with both sets of target photcodes
   for (i = 0; i < catalog[0].Naverage; i++) {
+
+    XVERB  = (catalog[0].average[i].objID == OBJ_ID_SRC) && (catalog[0].average[i].catID == CAT_ID_SRC);
+    XVERB |= (catalog[0].average[i].objID == OBJ_ID_DST) && (catalog[0].average[i].catID == CAT_ID_DST);
+    if (XVERB) {
+      fprintf (stderr, "test object\n");
+    }
+
     // do any of the measures for this object match group A?
     m = catalog[0].average[i].measureOffset;
@@ -114,7 +121,7 @@
             // fprintf (stderr, "skip "OFF_T_FMT" (group A)\n",  i);
         }
-
-    } else if (foundB && !foundA) {
-
+	continue;
+    } 
+    if (foundB && !foundA) {
         if (applyConstraintsB(catalog, i)) {
             groupB[i] = TRUE;
@@ -124,4 +131,5 @@
             NgroupBbad++;
         }
+	continue;
     }
     // this object does not have a detection matching the contraints from either gorupA or groupB -- skip as if slow
@@ -173,4 +181,10 @@
     nj = N1[j];
 
+    XVERB  = (catalog[0].average[ni].objID == OBJ_ID_SRC) && (catalog[0].average[ni].catID == CAT_ID_SRC);
+    XVERB |= (catalog[0].average[nj].objID == OBJ_ID_DST) && (catalog[0].average[nj].catID == CAT_ID_DST);
+    if (XVERB) {
+      fprintf (stderr, "test object %d or %d\n", (int) ni, (int) nj);
+    }
+
     if (slowMoving[ni]) NEXT_I;
     if (slowMoving[nj]) NEXT_J;
@@ -185,4 +199,7 @@
     // look for pairs that are within the maximum separation
     dX = X1[i] - X1[j];
+    if (XVERB) {
+      fprintf (stderr, "%d %d : %f\n", (int) ni, (int) nj, dX);
+    }
 
     if (dX <= -1.02*RADIUS) NEXT_I; // negative dX: i is too small
@@ -197,4 +214,11 @@
       nj = N1[J];
       if (!groupB[nj]) continue;
+
+      XVERB  = (catalog[0].average[ni].objID == OBJ_ID_SRC) && (catalog[0].average[ni].catID == CAT_ID_SRC);
+      XVERB |= (catalog[0].average[nj].objID == OBJ_ID_DST) && (catalog[0].average[nj].catID == CAT_ID_DST);
+      if (XVERB) {
+	fprintf (stderr, "test object pt2 %d or %d : %f\n", (int) ni, (int) nj, dX);
+	fprintf (stderr, ".\n");
+      }
 
       dY = Y1[i] - Y1[J];
@@ -209,16 +233,16 @@
       nv[1]=nj;
 
-      catalog1.average[Nmatch]=catalog[0].average[nv[0]];
+      catalogOut.average[Nmatch]=catalog[0].average[nv[0]];
       /*Loop over index values and set measurements in new catalogue*/
       Nmatchmeasobj=0;
-      catalog1.average[Nmatch].measureOffset=Nmatchmeas;
+      catalogOut.average[Nmatch].measureOffset=Nmatchmeas;
       for(l=0;l<Nepoch;l++) {
 	  m = catalog[0].average[nv[l]].measureOffset;
 	  for(i1=0;i1<catalog[0].average[nv[l]].Nmeasure;i1++) {
-	      catalog1.measure[Nmatchmeas]=catalog[0].measure[m+i1];
+	      catalogOut.measure[Nmatchmeas]=catalog[0].measure[m+i1];
 	      /*Set offset RA and Dec wrt correct average value*/
-	      catalog1.measure[Nmatchmeas].dR=catalog[0].measure[m+i1].dR+3600.0*(catalog[0].average[nv[0]].R-catalog[0].average[nv[l]].R);
-	      catalog1.measure[Nmatchmeas].dD=catalog[0].measure[m+i1].dD+3600.0*(catalog[0].average[nv[0]].D-catalog[0].average[nv[l]].D);
-	      catalog1.measure[Nmatchmeas].averef = Nmatch;
+	      catalogOut.measure[Nmatchmeas].dR=catalog[0].measure[m+i1].dR+3600.0*(catalog[0].average[nv[0]].R-catalog[0].average[nv[l]].R);
+	      catalogOut.measure[Nmatchmeas].dD=catalog[0].measure[m+i1].dD+3600.0*(catalog[0].average[nv[0]].D-catalog[0].average[nv[l]].D);
+	      catalogOut.measure[Nmatchmeas].averef = Nmatch;
 	      Nmatchmeasobj++;
 	      Nmatchmeas++;
@@ -226,30 +250,31 @@
 	      if (Nmatchmeas == NMEASURE - 1) {
 		NMEASURE += 10000;
-		REALLOCATE (catalog1.measure, Measure, NMEASURE);
+		REALLOCATE (catalogOut.measure, Measure, NMEASURE);
 	      }
 	  }
       }
-      catalog1.average[Nmatch].Nmeasure=Nmatchmeasobj;
+      catalogOut.average[Nmatch].Nmeasure = Nmatchmeasobj;
       Nmatch ++;
 
       if (Nmatch == NAVERAGE - 1) {
 	NAVERAGE += 1000;
-	REALLOCATE (catalog1.average, Average, NAVERAGE);
-	REALLOCATE(catalog1.secfilt, SecFilt, NAVERAGE*Nsecfilt);
+	REALLOCATE (catalogOut.average, Average, NAVERAGE);
+	REALLOCATE(catalogOut.secfilt, SecFilt, NAVERAGE*Nsecfilt);
       }
     }
     i++;
   }
-  catalog1.Naverage=Nmatch;
-  catalog1.Nmeasure=Nmatchmeas;
-  catalog1.Nsecfilt=Nsecfilt;
-  catalog1.Nsecf_mem=Nmatch*Nsecfilt;
-
-  UpdateObjects(&catalog1, 1);
+  catalogOut.Naverage=Nmatch;
+  catalogOut.Nmeasure=Nmatchmeas;
+  catalogOut.Nsecfilt=Nsecfilt;
+  catalogOut.Nsecf_mem=Nmatch*Nsecfilt;
+
+  populate_tiny_values (&catalogOut, DVO_TV_MEASURE);
+  UpdateObjects (&catalogOut, 1);
 
   fprintf (stderr, "found %d matches\n", Nmatch);
-  dvo_catalog_save (&catalog1, VERBOSE);
-  dvo_catalog_unlock (&catalog1);
-  dvo_catalog_free (&catalog1);
+  dvo_catalog_save (&catalogOut, VERBOSE2);
+  dvo_catalog_unlock (&catalogOut);
+  dvo_catalog_free (&catalogOut);
   free (slowMoving);
   free (groupA);
@@ -262,24 +287,30 @@
 }
 
-// return TRUE if any measure->photcodes match the photcodeSet
+// return TRUE if measure->photcode match any in the photcodeSet
+// (but, return FALSE if the measurement is bad)
 int MeasMatchesPhotcode(Measure *measure, PhotCode **photcodeSet, int Nset) {
 
   int found, k;
 
-  assert (Nset > 0);
-
-  if (!finite(measure[0].dR) || !finite(measure[0].dD)) return FALSE;
-  if (!finite(measure[0].M)) return FALSE;
+  if (!Nset) return TRUE;
+  // XXX require a set or not?  assert (Nset > 0);
+
+  if (!finite(measure[0].dR)) return FALSE;
+  if (!finite(measure[0].dD)) return FALSE;
+  if (!finite(measure[0].M))  return FALSE;
   
+  float dX = GetAstromError (measure, ERROR_MODE_RA);
+  if (isnan(dX)) return FALSE;
+
+  float dY = GetAstromError (measure, ERROR_MODE_DEC);
+  if (isnan(dY)) return FALSE;
+
   /* select measurements by photcode, or equiv photcode, if specified */
-  if (Nset > 0) {
-    found = FALSE;
-    for (k = 0; (k < Nset) && !found; k++) {
-      if (photcodeSet[k][0].code == measure[0].photcode) found = TRUE;
-      if (photcodeSet[k][0].code == GetPhotcodeEquivCodebyCode(measure[0].photcode)) found = TRUE;
-    }
-    if (!found) return FALSE;
-  }
-  
-  return TRUE;
+  found = FALSE;
+  for (k = 0; (k < Nset) && !found; k++) {
+    if (photcodeSet[k][0].code == measure[0].photcode) found = TRUE;
+    if (photcodeSet[k][0].code == GetPhotcodeEquivCodebyCode(measure[0].photcode)) found = TRUE;
+  }
+
+  return found;
 }
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/high_speed_utils.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/high_speed_utils.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/high_speed_utils.c	(revision 34041)
@@ -17,8 +17,10 @@
 static dbStack *stackA = NULL;
 static int NstackA = 0;
+
 static dbField *fieldsB = NULL;
 static int NfieldsB = 0;
 static dbStack *stackB = NULL;
 static int NstackB = 0;
+
 static dbValue *valuesA;
 // static int NvaluesA;
@@ -41,5 +43,5 @@
     ALLOCATE(words, char *, NwordsAllocated);
 
-    char *copy_of_str = strdup(string);
+    char *copy_of_str = strcreate(string);
 
     char *saveptr = NULL;
@@ -60,4 +62,7 @@
 // Create the data strucutres required to apply avextract like cuts
 int setupConstraints(char *whereString, dbField **pFields, int *pNfields, dbStack **pStack, int *pNstack) {
+
+  // an empty where is allowed (no further filtering)
+  if (!whereString[0]) return TRUE;
 
     // split the string into words
@@ -89,11 +94,18 @@
 
 int initializeConstraints() {
+
   // if constaints haven't been set by the user use 2mass
-    if (!WHERE_A[0]) {
-        strcpy(WHERE_A, DEFAULT_WHERE_A);
-    }
-    if (!WHERE_B[0]) {
-        strcpy(WHERE_B, DEFAULT_WHERE_B);
-    }
+  // XXX  if (!WHERE_A[0]) {
+  // XXX      strcpy(WHERE_A, DEFAULT_WHERE_A);
+  // XXX  }
+  // XXX  if (!WHERE_B[0]) {
+  // XXX      strcpy(WHERE_B, DEFAULT_WHERE_B);
+  // XXX  }
+
+    fprintf (stderr, "where A: %s\n", WHERE_A);
+    fprintf (stderr, "where B: %s\n", WHERE_B);
+
+    // pull TIMEFORMAT & TIMEREF from the Config system
+    dbExtractAveragesInit();
 
     if (! setupConstraints(WHERE_A, &fieldsA, &NfieldsA, &stackA, &NstackA)) {
@@ -102,5 +114,8 @@
         exit(1);
     }
-    ALLOCATE(valuesA, dbValue, NfieldsA);
+    if (NfieldsA) {
+      ALLOCATE(valuesA, dbValue, NfieldsA);
+    }
+
     if (! setupConstraints(WHERE_B, &fieldsB, &NfieldsB, &stackB, &NstackB)) {
         print_error();
@@ -108,5 +123,8 @@
         exit(1);
     }
-    ALLOCATE(valuesB, dbValue, NfieldsB);
+    if (NfieldsB) {
+      ALLOCATE(valuesB, dbValue, NfieldsB);
+    }
+
     return TRUE;
 }
@@ -116,8 +134,10 @@
 int applyConstraintsA(Catalog *catalog, off_t i) {
     off_t m = catalog[0].average[i].measureOffset;
-    off_t n;
     int Nsecfilt = GetPhotcodeNsecfilt();
     
-    dbExtractAveragesInit();
+    // an empty WHERE matches all objects
+    if (!NfieldsA) return TRUE;
+
+    off_t n;
     for (n = 0; n < NfieldsA; n++) {
         valuesA[n] = dbExtractAverages (&catalog[0].average[i], &catalog[0].secfilt[i*Nsecfilt], &catalog[0].measure[m], &fieldsA[n]);
@@ -130,5 +150,6 @@
     int Nsecfilt = GetPhotcodeNsecfilt();
     
-    dbExtractAveragesInit();
+    // an empty WHERE matches all objects
+    if (!NfieldsB) return TRUE;
 
     off_t n;
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/initialize.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/initialize.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/initialize.c	(revision 34041)
@@ -2,9 +2,4 @@
 
 void initialize (int argc, char **argv) {
-
-  int NPHOTCODES;
-  char *codename, *ptr, *list;
-
-  ptr = NULL;
 
   ConfigInit (&argc, argv);
@@ -13,90 +8,13 @@
   if (FIT_TARGET == TARGET_MERGE_SOURCE) return;
 
-  /* build a list of accepted photcodes. these will be used by bcatalog to accept or
-     reject loaded data */
+  fprintf (stderr, "PHOTCODE_KEEP_LIST: %s\n", PHOTCODE_KEEP_LIST);
+  fprintf (stderr, "PHOTCODE_SKIP_LIST: %s\n", PHOTCODE_SKIP_LIST);
+  fprintf (stderr, "PHOTCODE_A_LIST: %s\n", PHOTCODE_A_LIST);
+  fprintf (stderr, "PHOTCODE_B_LIST: %s\n", PHOTCODE_B_LIST);
 
-  NphotcodesKeep = 0;
-  photcodesKeep = NULL;
-  if (PHOTCODE_KEEP_LIST != NULL) {
-    NPHOTCODES = 10;
-    ALLOCATE (photcodesKeep, PhotCode *, NPHOTCODES);
-
-    /* parse the comma-separated list of photcodesKeep */
-    list = PHOTCODE_KEEP_LIST;
-    while ((codename = strtok_r (list, ",", &ptr)) != NULL) {
-      list = NULL; // pass NULL on successive strtok_r calls
-      fprintf (stderr, "PHOTCODE_LIST: %s\n", PHOTCODE_KEEP_LIST);
-      fprintf (stderr, "codename: %s\n", codename);
-      if ((photcodesKeep[NphotcodesKeep] = GetPhotcodebyName (codename)) == NULL) {
-        fprintf (stderr, "ERROR: photcode %s not found in photcode table\n", codename);
-        exit (1);
-      }
-      NphotcodesKeep ++;
-      CHECK_REALLOCATE (photcodesKeep, PhotCode *, NPHOTCODES, NphotcodesKeep, 10);
-    }
-  }
-
-  NphotcodesSkip = 0;
-  photcodesSkip = NULL;
-  if (PHOTCODE_SKIP_LIST != NULL) {
-    NPHOTCODES = 10;
-    ALLOCATE (photcodesSkip, PhotCode *, NPHOTCODES);
-
-    /* parse the comma-separated list of photcodesSkip */
-    list = PHOTCODE_SKIP_LIST;
-    while ((codename = strtok_r (list, ",", &ptr)) != NULL) {
-      list = NULL; // pass NULL on successive strtok_r calls
-      fprintf (stderr, "PHOTCODE_LIST: %s\n", PHOTCODE_SKIP_LIST);
-      fprintf (stderr, "codename: %s\n", codename);
-      if ((photcodesSkip[NphotcodesSkip] = GetPhotcodebyName (codename)) == NULL) {
-        fprintf (stderr, "ERROR: photcode %s not found in photcode table\n", codename);
-        exit (1);
-      }
-      NphotcodesSkip ++;
-      CHECK_REALLOCATE (photcodesSkip, PhotCode *, NPHOTCODES, NphotcodesSkip, 10);
-    }
-  }
-
-  NphotcodesGroupA = 0;
-  photcodesGroupA = NULL;
-  if (PHOTCODE_A_LIST != NULL) {
-    NPHOTCODES = 10;
-    ALLOCATE (photcodesGroupA, PhotCode *, NPHOTCODES);
-
-    /* parse the comma-separated list of photcodesGroupA */
-    fprintf (stderr, "PHOTCODE_A_LIST: %s\n", PHOTCODE_A_LIST);
-    list = PHOTCODE_A_LIST;
-    while ((codename = strtok_r (list, ",", &ptr)) != NULL) {
-      list = NULL; // pass NULL on successive strtok_r calls
-      fprintf (stderr, "codename: %s\n", codename);
-      if ((photcodesGroupA[NphotcodesGroupA] = GetPhotcodebyName (codename)) == NULL) {
-        fprintf (stderr, "ERROR: photcode %s not found in photcode table\n", codename);
-        exit (1);
-      }
-      NphotcodesGroupA ++;
-      CHECK_REALLOCATE (photcodesGroupA, PhotCode *, NPHOTCODES, NphotcodesGroupA, 10);
-    }
-  }
-
-  NphotcodesGroupB = 0;
-  photcodesGroupB = NULL;
-  if (PHOTCODE_B_LIST != NULL) {
-    NPHOTCODES = 10;
-    ALLOCATE (photcodesGroupB, PhotCode *, NPHOTCODES);
-
-    fprintf (stderr, "PHOTCODE_B_LIST: %s\n", PHOTCODE_B_LIST);
-    /* parse the comma-separated list of photcodesGroupB */
-    list = PHOTCODE_B_LIST;
-    while ((codename = strtok_r (list, ",", &ptr)) != NULL) {
-      list = NULL; // pass NULL on successive strtok_r calls
-      fprintf (stderr, "codename: %s\n", codename);
-      if ((photcodesGroupB[NphotcodesGroupB] = GetPhotcodebyName (codename)) == NULL) {
-        fprintf (stderr, "ERROR: photcode %s not found in photcode table\n", codename);
-        exit (1);
-      }
-      NphotcodesGroupB ++;
-      CHECK_REALLOCATE (photcodesGroupB, PhotCode *, NPHOTCODES, NphotcodesGroupB, 10);
-    }
-  }
+  photcodesKeep = ParsePhotcodeList (PHOTCODE_KEEP_LIST, &NphotcodesKeep, FALSE);
+  photcodesSkip = ParsePhotcodeList (PHOTCODE_SKIP_LIST, &NphotcodesSkip, FALSE);
+  photcodesGroupA = ParsePhotcodeList (PHOTCODE_A_LIST, &NphotcodesGroupA, TRUE);
+  photcodesGroupB = ParsePhotcodeList (PHOTCODE_B_LIST, &NphotcodesGroupB, TRUE);
 
   initstats (STATMODE);
@@ -123,2 +41,24 @@
 }
 
+void initialize_client (int argc, char **argv) {
+
+  ConfigInit (&argc, argv);
+  args_client (argc, argv);
+
+  fprintf (stderr, "PHOTCODE_KEEP_LIST: %s\n", PHOTCODE_KEEP_LIST);
+  fprintf (stderr, "PHOTCODE_SKIP_LIST: %s\n", PHOTCODE_SKIP_LIST);
+  fprintf (stderr, "PHOTCODE_A_LIST: %s\n", PHOTCODE_A_LIST);
+  fprintf (stderr, "PHOTCODE_B_LIST: %s\n", PHOTCODE_B_LIST);
+
+  photcodesKeep = ParsePhotcodeList (PHOTCODE_KEEP_LIST, &NphotcodesKeep, FALSE);
+  photcodesSkip = ParsePhotcodeList (PHOTCODE_SKIP_LIST, &NphotcodesSkip, FALSE);
+  photcodesGroupA = ParsePhotcodeList (PHOTCODE_A_LIST, &NphotcodesGroupA, TRUE);
+  photcodesGroupB = ParsePhotcodeList (PHOTCODE_B_LIST, &NphotcodesGroupB, TRUE);
+
+  initstats (STATMODE);
+
+  // IMAGE_BAD = ID_IMAGE_ASTROM_POOR | ID_IMAGE_ASTROM_FEW | ID_IMAGE_ASTROM_SKIP;
+  // STAR_BAD  = ID_STAR_POOR | ID_STAR_FEW;
+  // MEAS_BAD  = ID_MEAS_NOCAL | ID_MEAS_POOR_ASTROM | ID_MEAS_SKIP_ASTROM | ID_MEAS_AREA;
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/load_catalogs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/load_catalogs.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/load_catalogs.c	(revision 34041)
@@ -1,17 +1,28 @@
 # include "relastro.h"
 
-Catalog *load_catalogs (SkyList *skylist, int *Ncatalog, int subselect) {
+Catalog *load_catalogs_parallel (SkyList *sky, int *Ncatalog);
+void bcatalog_show_skips ();
+
+Catalog *load_catalogs (SkyList *skylist, int *Ncatalog, int subselect, int hostID, char *hostpath) {
 
   int i, j, k, m, Nstar;
   Catalog *catalog, *pcatalog, tcatalog;
 
+  // XXX need to decide how to determine PARALLEL mode...
+  if (PARALLEL && !hostID) {
+    catalog = load_catalogs_parallel (skylist, Ncatalog);
+    return catalog;
+  }
+
   if (VERBOSE) fprintf (stderr, "loading catalog data\n");
 
   ALLOCATE (catalog, Catalog, skylist[0].Nregions);
 
-  initStarMaps();
-
   // load data from each region file, only use bright stars
+  int Ncat = 0;
   for (i = 0; i < skylist[0].Nregions; i++) {
+
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
 
     // we only allow output if we do not use a subset.  in this case,
@@ -19,46 +30,68 @@
     pcatalog = subselect ? &tcatalog : &catalog[i];
 
+    // define the catalog file name
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", hostpath, skylist[0].regions[i]->name);
+    pcatalog->filename = hostID ? hostfile : skylist[0].filename[i];
+
     // set up the basic catalog info
-    pcatalog[0].filename  = skylist[0].filename[i];
-    pcatalog[0].catformat = dvo_catalog_catformat (CATFORMAT);    // set the default catformat from config data
-    pcatalog[0].catmode   = dvo_catalog_catmode (CATMODE);        // set the default catmode from config data
-    pcatalog[0].catflags  = LOAD_AVES | LOAD_MEAS | LOAD_SECF; // don't need to load all data at this point
-    pcatalog[0].Nsecfilt  = GetPhotcodeNsecfilt ();
-
+    pcatalog->catformat = dvo_catalog_catformat (CATFORMAT);    // set the default catformat from config data
+    pcatalog->catmode   = dvo_catalog_catmode (CATMODE);        // set the default catmode from config data
+    pcatalog->catflags  = LOAD_AVES | LOAD_MEAS | LOAD_SECF; // don't need to load all data at this point
+    pcatalog->Nsecfilt  = GetPhotcodeNsecfilt ();
+
+    // loads Average, Measure, SecFilt
     if (!dvo_catalog_open (pcatalog, skylist[0].regions[i], VERBOSE2, "w")) {
       fprintf (stderr, "ERROR: failure reading catalog %s\n", pcatalog[0].filename);
       exit (1);
     }
-    if (VERBOSE2 && !pcatalog[0].Naves_disk) fprintf (stderr, "no data in %s, skipping\n", pcatalog[0].filename);
-
-    //outlier rejection
+    if (!pcatalog[0].Naves_disk) {
+      if (VERBOSE2) fprintf (stderr, "no data in %s, skipping\n", pcatalog[0].filename);
+      dvo_catalog_unlock (pcatalog);
+      dvo_catalog_free (pcatalog);
+      continue;
+    }
+
+    if (!pcatalog->sorted) {
+      fprintf (stderr, "this database is not sorted.  please sort using addstar -resort\n");
+      exit (1);
+    }
+
+    // outlier rejection (operates on full tables (Average, Measure, Secfilt))
     if (FlagOutlier) {
       FlagOutliers(&tcatalog);
     }
 
-    updateStarMaps (&tcatalog);
-
     // select only the brighter stars
     if (subselect) {
-      bcatalog (&catalog[i], &tcatalog);
+      // results are in Average, Secfilt, and MeasureTiny
+      // Ncat tracks the actually used catalogs
+      bcatalog (&catalog[Ncat], &tcatalog);
       dvo_catalog_unlock (&tcatalog);
       dvo_catalog_free (&tcatalog);
     } else {
       if (RESET) {
-	for (j = 0; j < catalog[i].Naverage; j++) {
-	  catalog[i].average[j].flags = 0;
-	  m = catalog[i].average[j].measureOffset;
-	  for (k = 0; k < catalog[i].average[j].Nmeasure; k++) {
-	    catalog[i].measure[m+k].dbFlags = 0;
+	for (j = 0; j < catalog[Ncat].Naverage; j++) {
+	  catalog[Ncat].average[j].flags = 0;
+	  m = catalog[Ncat].average[j].measureOffset;
+	  for (k = 0; k < catalog[Ncat].average[j].Nmeasure; k++) {
+	    catalog[Ncat].measure[m+k].dbFlags = 0;
 	  }
 	}
       }
     }
-  }
-
-  // XXX keep this test?
+    Ncat ++;
+  }
+
+  // XXX TEST : bcatalog_show_skips();
+
   Nstar = 0;
-  for (i = 0; i < skylist[0].Nregions; i++) {
+  for (i = 0; i < Ncat; i++) {
     Nstar += catalog[i].Naverage;
+    if ((sizeof(IDX_T) == 8) && (catalog[i].Nmeasure > 0xffffffff)) {
+      fprintf (stderr, "ERROR: using small-sized IDX_T on data with more than 2G detections per table will cause errors\n");
+      fprintf (stderr, "  If you need to do this, and you can afford the RAM, rebuild with IDX_T set to off_t (see relastro.h, ImagesOps.c)\n");
+      exit (3);
+    }
   }
   if (Nstar < 2) { 
@@ -66,6 +99,7 @@
   }
 
-  // XXX consider only returning the populated catalogs
-  *Ncatalog = skylist[0].Nregions;
+  // only return the populated catalogs
+  REALLOCATE (catalog, Catalog, Ncat);
+  *Ncatalog = Ncat;
   return (catalog);
 }
@@ -76,2 +110,132 @@
    need to use an XCLD lock here.  
 */
+
+// CATDIR is supplied globally
+# define DEBUG 1
+Catalog *load_catalogs_parallel (SkyList *sky, int *Ncatalog) {
+
+  // load the list of hosts
+  HostTable *table = HostTableLoad (CATDIR, sky->hosts);
+  if (!table) {
+    fprintf (stderr, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+    exit (1);
+  }    
+
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    ALLOCATE (table->hosts[i].results, char, 1024);
+    snprintf (table->hosts[i].results, 1024, "%s/relastro.catalog.subset.dat", table->hosts[i].pathname);
+
+    // options / arguments that can affect relastro_client -load:
+    // VERBOSE, VERBOSE2
+    // RESET (-reset)
+    // TimeSelect -time
+    // (note that psfQual is applied rigidly at 0.85, as is the galaxy test)
+    // ImagSelect, ImagMin, ImagMax
+    // MaxDensityUse, MaxDensityValue
+
+    char command[1024];
+    snprintf (command, 1024, "relastro_client -load-objects %s -hostID %d -D CATDIR %s -hostdir %s -region %f %f %f %f -statmode %s -minerror %f -D RELASTRO_SIGMA_LIM %f", 
+	      table->hosts[i].results, table->hosts[i].hostID, CATDIR, table->hosts[i].pathname, UserPatch.Rmin, UserPatch.Rmax, UserPatch.Dmin, UserPatch.Dmax, STATMODE, MIN_ERROR, SIGMA_LIM);
+
+    char tmpline[1024];
+    if (FIT_MODE == FIT_PM_ONLY)  	 { snprintf (tmpline, 1024, "%s -pm",    command);           strcpy (command, tmpline); }
+    if (FIT_MODE == FIT_PAR_ONLY) 	 { snprintf (tmpline, 1024, "%s -par",   command);           strcpy (command, tmpline); }
+    if (FIT_MODE == FIT_PM_AND_PAR)      { snprintf (tmpline, 1024, "%s -pmpar", command);           strcpy (command, tmpline); }
+
+    if (VERBOSE)       { snprintf (tmpline, 1024, "%s -v",              command);                    strcpy (command, tmpline); }
+    if (VERBOSE2)      { snprintf (tmpline, 1024, "%s -vv",             command); 		     strcpy (command, tmpline); }
+    if (RESET)         { snprintf (tmpline, 1024, "%s -reset",          command); 		     strcpy (command, tmpline); }
+    if (ImagSelect)    { snprintf (tmpline, 1024, "%s -instmag %f %f",  command, ImagMin, ImagMax);  strcpy (command, tmpline); }
+    if (MaxDensityUse) { snprintf (tmpline, 1024, "%s -max-density %f", command, MaxDensityValue);   strcpy (command, tmpline); }
+    
+    if (FlagOutlier)   { snprintf (tmpline, 1024, "%s -clip %d",        command, CLIP_THRESH);       strcpy (command, tmpline); }
+    
+    if (PHOTCODE_KEEP_LIST) { snprintf (tmpline, 1024, "%s +photcode %s", command, PHOTCODE_KEEP_LIST); strcpy (command, tmpline); }
+    if (PHOTCODE_SKIP_LIST) { snprintf (tmpline, 1024, "%s -photcode %s", command, PHOTCODE_SKIP_LIST); strcpy (command, tmpline); }
+    if (PhotFlagSelect)    { snprintf (tmpline, 1024, "%s +photflags",   command);                     strcpy (command, tmpline); }
+    if (PhotFlagBad)       { snprintf (tmpline, 1024, "%s +photflagbad %d", command, PhotFlagBad);     strcpy (command, tmpline); }
+    if (PhotFlagPoor)      { snprintf (tmpline, 1024, "%s +photflagpoor %d", command, PhotFlagPoor);   strcpy (command, tmpline); }
+    // XXX note that the above pass in the flag as decimal -- also note that args.c cannot handle 0xHEX values
+
+    if (TimeSelect) { 
+      char *tstart = ohana_sec_to_date (TSTART);
+      char *tstop  = ohana_sec_to_date (TSTOP);
+      snprintf (tmpline, 1024, "%s -time %s %s", command, tstart, tstop); 
+      free (tstart);
+      free (tstop);
+      strcpy (command, tmpline); 
+    }
+
+    fprintf (stderr, "command: %s\n", command);
+
+    if (PARALLEL_MANUAL) continue;
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	fprintf (stderr, "ERROR running relastro_client\n");
+	exit (2);
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	exit (1);
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+
+  if (PARALLEL_MANUAL) {
+    fprintf (stderr, "run the relastro_client commands above.  when these are done, hit return\n");
+    getchar();
+  }
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+  }
+
+  // each host generates a BrightCatalog structure, with the measure, average, etc value
+  // loaded into a single set of arrays (of MeasureTiny, AverageTiny, Secfilt).  I need to
+  // split out the per-catalog measurements into separate catalog entries.
+
+  // set up an initial array of catalogs
+  int Nsecfilt  = GetPhotcodeNsecfilt (); 
+  CatalogSplitter *catalogs = BrightCatalogSplitInit (Nsecfilt);
+
+  for (i = 0; i < table->Nhosts; i++) {
+
+    BrightCatalog *bcatalog = BrightCatalogLoad (table->hosts[i].results);
+    assert (bcatalog);
+    
+    BrightCatalogSplit (catalogs, bcatalog);
+
+    free (bcatalog->average);
+    free (bcatalog->measure);
+    free (bcatalog->secfilt);
+    free (bcatalog);
+  }
+
+  Catalog *catalog = catalogs->catalog;
+  *Ncatalog = catalogs->Ncatalog;
+  BrightCatalogSplitFree (catalogs);
+
+  int Nmeasure = 0;
+  int Naverage = 0;
+  for (i = 0; i < catalogs->Ncatalog; i++) {
+    Nmeasure += catalogs->catalog[i].Nmeasure;
+    Naverage += catalogs->catalog[i].Naverage;
+  }
+
+  fprintf (stderr, "loaded %d catalogs, using a total of %d stars (%d measures)\n", catalogs->Ncatalog, Naverage, Nmeasure);
+
+  return (catalog);
+}      
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/load_images.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/load_images.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/load_images.c	(revision 34041)
@@ -7,5 +7,5 @@
   fprintf (stderr, MSG, __VA_ARGS__); }
 
-SkyList *load_images (FITS_DB *db, SkyRegion *region) {
+int load_images (FITS_DB *db, SkyList *skylist) {
 
   Image     *image, *subset;
@@ -14,20 +14,5 @@
   struct timeval start, stop;
 
-  SkyTable *sky = NULL;
-  SkyList *skylist = NULL;
-
   gettimeofday (&start, (void *) NULL);
-
-  // load the current sky table (layout of all SkyRegions) 
-  sky = SkyTableLoadOptimal (CATDIR, SKY_TABLE, GSCFILE, TRUE, SKY_DEPTH, VERBOSE);
-  SkyTableSetFilenames (sky, CATDIR, "cpt");
-  
-  // determine the populated SkyRegions overlapping the requested area
-  if (UserCatalog) {
-    skylist = SkyRegionByPoint (sky, -1, UserCatalogRA, UserCatalogDEC);
-  } else {
-    skylist = SkyListByPatch (sky, -1, region);
-  }
-  MARKTIME("  setup sky: %f sec\n", dtime);
 
   // convert database table to internal structure
@@ -37,5 +22,4 @@
       exit (2);
   }
-
   MARKTIME("  convert image table: %f sec\n", dtime);
 
@@ -53,5 +37,5 @@
   if (!UPDATE) dvo_image_unlock (db); 
 
-  return (skylist);
+  return TRUE;
 }
 
@@ -71,4 +55,4 @@
     memcpy (vtable[0].buffer[i], &image[i], Nx);
   }
-  return (TRUE);
+  return TRUE;
 }
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro.c	(revision 34041)
@@ -3,118 +3,41 @@
 int main (int argc, char **argv) {
 
-  int i, status, Ncatalog;
-  Catalog *catalog;
-  FITS_DB db;
-  struct timeval start, stop;
-  SkyList *skylist = NULL;
-
-  gettimeofday (&start, (void *) NULL);
-
   /* get configuration info, args */
   initialize (argc, argv);
 
-  /* the object analysis is a separate process iterating over catalogs */
-  if (FIT_TARGET == TARGET_OBJECTS) {
-    relastro_objects ();
-    exit (0);
-  }
+  SkyTable *sky = SkyTableLoadOptimal (CATDIR, SKY_TABLE, GSCFILE, TRUE, SKY_DEPTH, VERBOSE);
+  SkyTableSetFilenames (sky, CATDIR, "cpt");
+  SkyList *skylist = SkyListByPatch (sky, -1, &UserPatch);
 
-  /* the object analysis is a separate process iterating over catalogs */
-  if (FIT_TARGET == TARGET_HIGH_SPEED) {
-    high_speed_catalogs ();
-    exit (0);
-  }
+  switch (FIT_TARGET) {
+    case TARGET_UPDATE_OBJECTS:
+      /* the object analysis is a separate process iterating over catalogs */
+      relastro_objects (skylist, 0, NULL);
+      exit (0);
 
-  /* the object analysis is a separate process iterating over catalogs */
-  if (FIT_TARGET == TARGET_MERGE_SOURCE) {
-    relastro_merge_source ();
-    exit (0);
-  }
+    case TARGET_HIGH_SPEED:
+      /* high-speed is a 2pt cross-correlation process for linking moving objects (high PM) */
+      high_speed_catalogs (sky, skylist, 0, NULL);
+      exit (0);
 
-  /* register database handle with shutdown procedure */
-  set_db (&db);
+    case TARGET_MERGE_SOURCE:
+      /* a special method to manually merge unlinked detections of sources togther (not parallel) */
+      relastro_merge_source (sky);
+      exit (0);
 
-  /* lock and load the image db table */
-  status = dvo_image_lock (&db, ImageCat, 60.0, (UPDATE ? LCK_XCLD : LCK_SOFT));
-  if (!status) Shutdown ("ERROR: failure to lock image catalog %s", db.filename);
-  if (db.dbstate == LCK_EMPTY) Shutdown ("ERROR: No images in catalog %s (1)", db.filename);
-  if (!dvo_image_load (&db, VERBOSE, FALSE)) Shutdown ("can't read image catalog %s", db.filename);
-  MARKTIME("load image data: %f sec\n", dtime);
+    case TARGET_SIMPLE:
+    case TARGET_CHIPS:
+    case TARGET_MOSAICS:
+      relastro_images (skylist);
+      exit (0);
 
-  /* load regions and images based on specified sky patch (default depth) */
-  skylist = load_images (&db, &UserPatch);
-  MARKTIME("load images: %f sec\n", dtime);
-
-  initCoords();
-
-  /* load catalog data from region files : subselect high-quality measurements */
-  // XXX pass in the image table
-  // XXX who carries the image grid?
-  catalog = load_catalogs (skylist, &Ncatalog, TRUE);
-  MARKTIME("load catalog data: %f sec\n", dtime);
-
-  /* match measurements with images */
-  initImageBins (catalog, Ncatalog, TRUE);
-  MARKTIME("make image bins: %f sec\n", dtime);
-
-  findImages (catalog, Ncatalog, TRUE);
-  MARKTIME("set up image indexes: %f sec\n", dtime);
-
-  if (PLOTSTUFF) {
-    // plot_star_coords (catalog, Ncatalog);
-    // plot_mosaic_fields (catalog);
-  }
-
-  // set test points based on the starmap
-  createStarMapPoints();
-
-  /* major modes */
-  switch (FIT_TARGET) {
-    case TARGET_SIMPLE:
-      for (i = 0; i < NLOOP; i++) {
-	UpdateObjects (catalog, Ncatalog);
-	UpdateSimple (catalog, Ncatalog);
-      }
-      break;
-
-    case TARGET_CHIPS:
-      for (i = 0; i < NLOOP; i++) {
-	UpdateObjects (catalog, Ncatalog);
-	UpdateChips (catalog, Ncatalog);
-	MARKTIME("update chips: %f sec\n", dtime);
-      }
-      // create summary plots of the process
-      // relastroVisualSummaryChips();
-      break;
-
-    case TARGET_MOSAICS:
-      for (i = 0; i < NLOOP; i++) {
-	UpdateObjects (catalog, Ncatalog);
-	UpdateMosaic (catalog, Ncatalog);
-      }
-      break;
+    case TARGET_UPDATE_OFFSETS:
+      // iterate over catalogs to make detection coordinates consistant
+      UpdateObjectOffsets (skylist, 0, NULL);
 
     default:
-      fprintf (stderr, "programming error at %s:%d", __FILE__, __LINE__);
-      exit (2);
+      fprintf (stderr, "impossible!\n");
+      abort();
   }
-
-  if (!UPDATE) exit (0);
-
-  // free the image / measurement pointers
-  freeImageBins (1);
-
-  reload_images (&db);
-    
-  // iterate over catalogs to make detection coordinates consistant
-  UpdateObjectOffsets (skylist);
-
-  // iterate over catalogs to make detection coordinates consistant
-  // FixProblemImages (skylist);
-
-  // save the updated image parameters
-  dvo_image_update (&db, VERBOSE);
-  dvo_image_unlock (&db); 
-
-  exit (0);
+  exit (1);
 }
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_client.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_client.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_client.c	(revision 34041)
@@ -0,0 +1,102 @@
+# include "relastro.h"
+
+// relastro_client is run on a remote host and is responsible for updating the catalogs
+// owned by that host.  
+
+// there are four modes:
+
+// relastro_client -load-objects : extract the bright catalog subset from the client's
+//                                 tables and save to a local FITS table for relastro to
+//                                 load and used
+
+// relastro_client -update-offsets : load image table containing the updated astrometry
+//                                   information and determine per-object astrometry
+
+// relastro_client -update-objects : load image table containing the updated astrometry
+//                                   information and determine per-object astrometry
+
+// relastro loads the bright catalog subsets from all clients, then determines the
+// astrometry for chips/mosaics, while iteratively improving the per-object mean positions
+
+int main (int argc, char **argv) {
+
+  // get configuration info, args, lockfile (set CATDIR, HOST_ID, HOSTDIR, etc) 
+  initialize_client (argc, argv);
+
+  SkyTable *sky = SkyTableLoadOptimal (CATDIR, SKY_TABLE, GSCFILE, TRUE, SKY_DEPTH, VERBOSE);
+  SkyTableSetFilenames (sky, CATDIR, "cpt");
+  SkyList *skylist = SkyListByPatch (sky, -1, &UserPatch);
+
+  switch (FIT_TARGET) {
+
+    case TARGET_LOAD_OBJECTS: {
+      // USAGE: relastro_client -load-objects
+      int Ncatalog;
+      Catalog *catalog = load_catalogs (skylist, &Ncatalog, TRUE, HOST_ID, HOSTDIR);
+      if (!catalog) {
+	  fprintf (stderr, "ERROR loading catalogs from %s\n", CATDIR);
+	  exit (2);
+      }
+      BrightCatalog *bcatalog = BrightCatalogMerge (catalog, Ncatalog);
+      if (!BrightCatalogSave (BCATALOG, bcatalog)) {
+	  fprintf (stderr, "ERROR saving bright catalog from %s\n", CATDIR);
+	  exit (2);
+      }
+      break;
+    }
+      
+    case TARGET_UPDATE_OBJECTS: {
+      // USAGE: relastro_client -update-objects
+      relastro_objects (skylist, HOST_ID, HOSTDIR);
+      break;
+    }
+
+    case TARGET_HIGH_SPEED: {
+      // USAGE: relastro_client -high-speed
+      high_speed_catalogs (sky, skylist, HOST_ID, HOSTDIR);
+      break;
+    }
+
+      // XXX loading the images is fairly costly -- see if we can do an image subset
+    case TARGET_UPDATE_OFFSETS: {
+      FITS_DB db;
+      
+      set_db (&db);
+
+      /* lock and load the image db table */
+      int status = dvo_image_lock (&db, ImageCat, 60.0, LCK_SOFT);
+      if (!status) Shutdown ("ERROR: failure to lock image catalog %s", db.filename);
+      if (db.dbstate == LCK_EMPTY) Shutdown ("ERROR: No images in catalog %s (1)", db.filename);
+      if (!dvo_image_load (&db, VERBOSE, FALSE)) Shutdown ("can't read image catalog %s", db.filename);
+
+      /* load regions and images based on specified sky patch (default depth) */
+      load_images (&db, skylist);
+      
+      // // load the image subset table from the specified location
+      // off_t Nimage;
+      // ImageSubset *image = ImageSubsetLoad (IMAGES, &Nimage);
+      // if (!image) {
+      // 	  fprintf (stderr, "ERROR loading image subset %s\n", CATDIR);
+      // 	  exit (2);
+      // }
+      // 
+      // // save the available image information in the static array in ImageOps.c
+      // initImagesSubset (image, NULL, Nimage);
+      // 
+      // // load the flat-field correction table from CATDIR
+      // char flatcorrFile[1024];
+      // snprintf (flatcorrFile, 1024, "%s/flatcorr.fits", CATDIR);
+      // FlatCorrectionTable *flatcorr = FlatCorrectionLoad (flatcorrFile, VERBOSE);
+
+      UpdateObjectOffsets (skylist, HOST_ID, HOSTDIR);
+      
+      break;
+    }
+
+    default:
+      fprintf (stderr, "impossible!");
+      abort();
+  }
+
+  exit (0);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_images.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_images.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_images.c	(revision 34041)
@@ -0,0 +1,112 @@
+# include "relastro.h"
+
+int relastro_images (SkyList *skylist) {
+
+  int i, status, Ncatalog;
+  Catalog *catalog;
+  FITS_DB db;
+  struct timeval start, stop;
+
+  gettimeofday (&start, (void *) NULL);
+
+  /* register database handle with shutdown procedure */
+  set_db (&db);
+
+  /* lock and load the image db table */
+  status = dvo_image_lock (&db, ImageCat, 60.0, (UPDATE ? LCK_XCLD : LCK_SOFT));
+  if (!status) Shutdown ("ERROR: failure to lock image catalog %s", db.filename);
+  if (db.dbstate == LCK_EMPTY) Shutdown ("ERROR: No images in catalog %s (1)", db.filename);
+  if (!dvo_image_load (&db, VERBOSE, FALSE)) Shutdown ("can't read image catalog %s", db.filename);
+  MARKTIME("load image data: %f sec\n", dtime);
+
+  /* load regions and images based on specified sky patch (default depth) */
+  load_images (&db, skylist);
+  MARKTIME("load images: %f sec\n", dtime);
+
+  initCoords();
+
+  /* load catalog data from region files : subselect high-quality measurements */
+  // XXX pass in the image table
+  // XXX who carries the image grid?
+  catalog = load_catalogs (skylist, &Ncatalog, TRUE, 0, NULL);
+  MARKTIME("load catalog data: %f sec\n", dtime);
+
+  if (Ncatalog == 0) {
+    fprintf (stderr, "ERROR: no valid data for relastro, exiting\n");
+    exit (2);
+  }
+
+  /* match measurements with images */
+  initImageBins (catalog, Ncatalog, TRUE);
+  MARKTIME("make image bins: %f sec\n", dtime);
+
+  findImages (catalog, Ncatalog, TRUE);
+  MARKTIME("set up image indexes: %f sec\n", dtime);
+
+  if (PLOTSTUFF) {
+    // plot_star_coords (catalog, Ncatalog);
+    // plot_mosaic_fields (catalog);
+  }
+
+  // set test points based on the starmap
+  createStarMap (catalog, Ncatalog);
+
+  /* major modes */
+  switch (FIT_TARGET) {
+    case TARGET_SIMPLE:
+      for (i = 0; i < NLOOP; i++) {
+	UpdateObjects (catalog, Ncatalog);
+	UpdateSimple (catalog, Ncatalog);
+      }
+      break;
+
+    case TARGET_CHIPS:
+      for (i = 0; i < NLOOP; i++) {
+	UpdateObjects (catalog, Ncatalog);
+	UpdateChips (catalog, Ncatalog);
+	MARKTIME("update chips: %f sec\n", dtime);
+      }
+      // create summary plots of the process
+      // relastroVisualSummaryChips();
+      break;
+
+    case TARGET_MOSAICS:
+      for (i = 0; i < NLOOP; i++) {
+	UpdateObjects (catalog, Ncatalog);
+	UpdateMosaic (catalog, Ncatalog);
+      }
+      break;
+
+    default:
+      fprintf (stderr, "programming error at %s:%d", __FILE__, __LINE__);
+      exit (2);
+  }
+
+  if (!UPDATE) exit (0);
+
+  // free the image / measurement pointers
+  freeImageBins (1);
+
+  // XXX why do I do this exactly?
+  reload_images (&db);
+    
+  if (PARALLEL) {
+    // save the updated image parameters
+    dvo_image_update (&db, VERBOSE);
+    dvo_image_unlock (&db); 
+  }
+
+  // iterate over catalogs to make detection coordinates consistant
+  UpdateObjectOffsets (skylist, 0, NULL);
+
+  // iterate over catalogs to make detection coordinates consistant
+  // FixProblemImages (skylist);
+
+  if (!PARALLEL) {
+    // save the updated image parameters
+    dvo_image_update (&db, VERBOSE);
+    dvo_image_unlock (&db); 
+  }
+
+  exit (0);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_merge_source.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_merge_source.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_merge_source.c	(revision 34041)
@@ -1,8 +1,7 @@
 # include "relastro.h"
 
-int relastro_merge_source () {
+int relastro_merge_source (SkyTable *sky) {
 
   int i, m;
-  SkyTable *sky = NULL;
   Catalog catalog_src, catalog_dst;
 
@@ -13,8 +12,4 @@
   dvo_set_catdir(CATDIR);
 
-  // load the current sky table (layout of all SkyRegions) 
-  sky = SkyTableLoadOptimal (CATDIR, NULL, NULL, FALSE, SKY_DEPTH, VERBOSE);
-  SkyTableSetFilenames (sky, CATDIR, "cpt");
-  
   // we are merging the detections of the src into the dst : OBJ_ID_SRC,CAT_ID_SRC -> OBJ_ID_DST,CAT_ID_DST
 
@@ -52,5 +47,5 @@
   catalog_src.Nsecfilt  = GetPhotcodeNsecfilt ();
 
-  if (!dvo_catalog_open (&catalog_src, region_src, VERBOSE, "w")) {
+  if (!dvo_catalog_open (&catalog_src, region_src, VERBOSE2, "w")) {
     fprintf (stderr, "ERROR: failure reading catalog %s\n", catalog_src.filename);
     exit (1);
@@ -127,5 +122,5 @@
     resort_catalog (&catalog_src);
 
-    dvo_catalog_save (&catalog_src, VERBOSE);
+    dvo_catalog_save (&catalog_src, VERBOSE2);
     dvo_catalog_unlock (&catalog_src);
     dvo_catalog_free (&catalog_src);
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_objects.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_objects.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/relastro_objects.c	(revision 34041)
@@ -1,22 +1,32 @@
 # include "relastro.h"
 
-int relastro_objects () {
+int relastro_objects_parallel (SkyList *sky);
+
+int relastro_objects (SkyList *skylist, int hostID, char *hostpath) {
 
   int i, j, k, m;
 
-  SkyTable *sky = NULL;
-  SkyList *skylist = NULL;
   Catalog catalog;
 
+  DVOMeasureFlags measureBits = 
+    ID_MEAS_POOR_ASTROM |
+    ID_MEAS_SKIP_ASTROM | 
+    ID_MEAS_USED_OBJ    |
+    ID_MEAS_USED_CHIP;
 
-  // load the current sky table (layout of all SkyRegions) 
-  sky = SkyTableLoadOptimal (CATDIR, SKY_TABLE, GSCFILE, TRUE, SKY_DEPTH, VERBOSE);
-  SkyTableSetFilenames (sky, CATDIR, "cpt");
-  
-  // determine the populated SkyRegions overlapping the requested area (default depth)
-  if (UserCatalog) {
-    skylist = SkyRegionByPoint (sky, -1, UserCatalogRA, UserCatalogDEC);
-  } else {
-    skylist = SkyListByPatch (sky, -1, &UserPatch);
+  DVOAverageFlags averageBits = 
+    ID_STAR_FEW     |
+    ID_STAR_POOR    |
+    ID_STAR_FIT_AVE |
+    ID_STAR_FIT_PM  |
+    ID_STAR_FIT_PAR |
+    ID_STAR_USE_AVE |
+    ID_STAR_USE_PM  |
+    ID_STAR_USE_PAR; 
+
+  // XXX need to decide how to determine PARALLEL mode...
+  if (PARALLEL && !hostID) {
+    relastro_objects_parallel (skylist);
+    return TRUE;
   }
 
@@ -24,6 +34,11 @@
   for (i = 0; i < skylist[0].Nregions; i++) {
 
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+
     // set up the basic catalog info
-    catalog.filename  = skylist[0].filename[i];
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", hostpath, skylist[0].regions[i]->name);
+    catalog.filename  = hostID ? hostfile : skylist[0].filename[i];
     catalog.catformat = dvo_catalog_catformat (CATFORMAT);    // set the default catformat from config data
     catalog.catmode   = dvo_catalog_catmode (CATMODE);        // set the default catmode from config data
@@ -31,10 +46,11 @@
     catalog.Nsecfilt  = GetPhotcodeNsecfilt ();
 
-    if (!dvo_catalog_open (&catalog, skylist[0].regions[i], VERBOSE, "w")) {
+    // loads Average, Measure, SecFilt
+    if (!dvo_catalog_open (&catalog, skylist[0].regions[i], VERBOSE2, "w")) {
       fprintf (stderr, "ERROR: failure reading catalog %s\n", catalog.filename);
       exit (1);
     }
     if (!catalog.Naves_disk) {
-      if (VERBOSE) fprintf (stderr, "no data in %s, skipping\n", catalog.filename);
+      if (VERBOSE2) fprintf (stderr, "no data in %s, skipping\n", catalog.filename);
       dvo_catalog_unlock (&catalog);
       dvo_catalog_free (&catalog);
@@ -42,20 +58,25 @@
     }
 
+    // operates on full tables (Average, Measure, Secfilt)
     if (FlagOutlier) {
       FlagOutliers(&catalog);
     }
 
-    // XXX consider what gets reset (only ASTROM flags)
+    // reset only the astrometry-related average and measure bits
     if (RESET) {
       for (j = 0; j < catalog.Naverage; j++) {
-	catalog.average[j].flags = 0;
+	catalog.average[j].flags &= ~averageBits;
 	m = catalog.average[j].measureOffset;
 	for (k = 0; k < catalog.average[j].Nmeasure; k++) {
-	  catalog.measure[m+k].dbFlags = 0;
+	  catalog.measure[m+k].dbFlags &= ~measureBits;
 	}
       }
     }
 
+    populate_tiny_values(&catalog, DVO_TV_MEASURE);
+
     UpdateObjects (&catalog, 1);
+
+    free_tiny_values(&catalog);
 
     if (!UPDATE) {
@@ -70,2 +91,104 @@
   return (TRUE);
 }
+
+// CATDIR is supplied globally
+# define DEBUG 1
+int relastro_objects_parallel (SkyList *sky) {
+
+  // launch the setphot_client jobs to the parallel hosts
+
+  // load the list of hosts
+  HostTable *table = HostTableLoad (CATDIR, sky->hosts);
+  if (!table) {
+    fprintf (stderr, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+    exit (1);
+  }    
+
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    // options / arguments that can affect relastro_client -update-objects:
+    // VERBOSE, VERBOSE2
+    // RESET (-reset)
+    // TimeSelect -time
+    // (note that psfQual is applied rigidly at 0.85, as is the galaxy test)
+    // ImagSelect, ImagMin, ImagMax
+    // MaxDensityUse, MaxDensityValue
+
+    // FIT_MODE
+    // PM_TOOFEW
+    // SRC_MEAS_TOOFEW
+    // FIT_TARGET
+
+    char command[1024];
+    snprintf (command, 1024, "relastro_client -update-objects -hostID %d -D CATDIR %s -hostdir %s -region %f %f %f %f", 
+	      table->hosts[i].hostID, CATDIR, table->hosts[i].pathname, UserPatch.Rmin, UserPatch.Rmax, UserPatch.Dmin, UserPatch.Dmax);
+
+    char tmpline[1024];
+    if (FIT_MODE == FIT_PM_ONLY)  	 { snprintf (tmpline, 1024, "%s -pm",    command);           strcpy (command, tmpline); }
+    if (FIT_MODE == FIT_PAR_ONLY) 	 { snprintf (tmpline, 1024, "%s -par",   command);           strcpy (command, tmpline); }
+    if (FIT_MODE == FIT_PM_AND_PAR)      { snprintf (tmpline, 1024, "%s -pmpar", command);           strcpy (command, tmpline); }
+
+    if (VERBOSE)       { snprintf (tmpline, 1024, "%s -v",              command);                    strcpy (command, tmpline); }
+    if (VERBOSE2)      { snprintf (tmpline, 1024, "%s -vv",             command); 		     strcpy (command, tmpline); }
+    if (RESET)         { snprintf (tmpline, 1024, "%s -reset",          command); 		     strcpy (command, tmpline); }
+    if (UPDATE)        { snprintf (tmpline, 1024, "%s -update",         command); 		     strcpy (command, tmpline); }
+
+    if (ImagSelect)    { snprintf (tmpline, 1024, "%s -instmag %f %f",  command, ImagMin, ImagMax);  strcpy (command, tmpline); }
+    if (MaxDensityUse) { snprintf (tmpline, 1024, "%s -max-density %f", command, MaxDensityValue);   strcpy (command, tmpline); }
+    
+    if (FlagOutlier)   { snprintf (tmpline, 1024, "%s -clip %d",        command, CLIP_THRESH);       strcpy (command, tmpline); }
+    
+    if (PHOTCODE_KEEP_LIST) { snprintf (tmpline, 1024, "%s +photcode %s", command, PHOTCODE_KEEP_LIST); strcpy (command, tmpline); }
+    if (PHOTCODE_SKIP_LIST) { snprintf (tmpline, 1024, "%s -photcode %s", command, PHOTCODE_SKIP_LIST); strcpy (command, tmpline); }
+    if (PhotFlagSelect)    { snprintf (tmpline, 1024, "%s +photflags",   command);                     strcpy (command, tmpline); }
+    if (PhotFlagBad)       { snprintf (tmpline, 1024, "%s +photflagbad %d", command, PhotFlagBad);     strcpy (command, tmpline); }
+    if (PhotFlagPoor)      { snprintf (tmpline, 1024, "%s +photflagpoor %d", command, PhotFlagPoor);   strcpy (command, tmpline); }
+    // XXX note that the above pass in the flag as decimal -- also note that args.c cannot handle 0xHEX values
+
+    if (TimeSelect) { 
+      char *tstart = ohana_sec_to_date (TSTART);
+      char *tstop  = ohana_sec_to_date (TSTOP);
+      snprintf (tmpline, 1024, "%s -time %s %s", command, tstart, tstop); 
+      free (tstart);
+      free (tstop);
+      strcpy (command, tmpline); 
+    }
+
+    fprintf (stderr, "command: %s\n", command);
+
+    if (PARALLEL_MANUAL) continue;
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	fprintf (stderr, "ERROR running relastro_client\n");
+	exit (2);
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	exit (1);
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+
+  if (PARALLEL_MANUAL) {
+    fprintf (stderr, "run the relastro_client commands above.  when these are done, hit return\n");
+    getchar();
+  }
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+  }
+
+  return TRUE;
+}      
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/resort_catalog.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/resort_catalog.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/resort_catalog.c	(revision 34041)
@@ -1,6 +1,3 @@
 # include "relastro.h"
-
-# define myAbort(MSG) { fprintf (stderr, "%s\n", MSG); abort(); }
-# define myAssert(LOGIC,MSG) { if (!(LOGIC)) { fprintf (stderr, "%s\n", MSG); abort(); } }
 
 // sort the measure Sequence based on the average Sequence entries
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/save_catalogs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/save_catalogs.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/save_catalogs.c	(revision 34041)
@@ -8,6 +8,6 @@
   for (i = 0; i < Ncatalog; i++) {
 
-    if (VERBOSE) fprintf (stderr, "saving catalog %s\n", catalog[i].filename);
-    dvo_catalog_save (&catalog[i], VERBOSE); 
+    if (VERBOSE2) fprintf (stderr, "saving catalog %s\n", catalog[i].filename);
+    dvo_catalog_save (&catalog[i], VERBOSE2); 
     dvo_catalog_unlock (&catalog[i]);
     dvo_catalog_free (&catalog[i]);
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/select_images.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/select_images.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/select_images.c	(revision 34041)
@@ -25,5 +25,5 @@
   
   Image *image;
-  off_t i, j, k, m, nStart, iSky, nimage, NIMAGE;
+  off_t i, j, k, m, nStart, iSky, nimage, NIMAGE, D_NIMAGE;
   off_t *line_number;
   int InRange, found;
@@ -68,4 +68,6 @@
   DminSkyRegion = +90.0;
   DmaxSkyRegion = -90.0;
+
+  D_NIMAGE = 6000;
 
   /* compare with each region file */
@@ -113,5 +115,5 @@
 
   nimage = 0;
-  NIMAGE = 100;
+  NIMAGE = D_NIMAGE;
   ALLOCATE (image, Image, NIMAGE);
   ALLOCATE (line_number, off_t, NIMAGE);
@@ -167,6 +169,6 @@
 
     /* transform corners to ra,dec -- costs ~3sec for 3M images (pikake) */
-    double RminImage = 360.0;
-    double RmaxImage =   0.0;
+    double RminImage = RmidSkyRegion + 180.0;
+    double RmaxImage = RmidSkyRegion - 180.0;
     double DminImage = +90.0;
     double DmaxImage = -90.0;
@@ -194,4 +196,19 @@
     if (RmaxImage < RminSkyRegion) continue;
 
+    if (!strncmp(timage[i].name, "o5903g0638o", 10) && (timage[i].photcode == 10355)) {
+      fprintf (stderr, "test image\n");
+    }
+
+    // require that the full image be inside the region of interest (only for non PHU
+    // images) XXX : if we calibrate the mosaic, require that the full mosaic be inside
+    // the region and all of its chips..
+# define FULL_OVERLAP 1
+    if (FULL_OVERLAP && strcmp(&timage[i].coords.ctype[4], "-DIS")) {
+      if (RmaxImage > UserPatch.Rmax) continue;
+      if (RminImage < UserPatch.Rmin) continue;
+      if (DmaxImage > UserPatch.Dmax) continue;
+      if (DminImage < UserPatch.Dmin) continue;
+    }
+
     // image overlaps region, keep it
     if (USE_BASIC_CHECK) goto found_it;
@@ -243,8 +260,5 @@
     }
     if (RESET) {
-      // XXX do we need / want to do this in relastro?
-      // assignMcal (&image[nimage], (double *) NULL, -1);
-      // image[nimage].Mcal = NAN;
-      // image[nimage].dMcal = NAN;
+      // this only resets the astrometry image flags, not the photometry ones
       image[nimage].flags &= ~badImage;
     }
@@ -252,5 +266,6 @@
     nimage ++;
     if (nimage == NIMAGE) {
-      NIMAGE += 100;
+      NIMAGE += D_NIMAGE;
+      D_NIMAGE = MAX (100000, D_NIMAGE * 1.5);
       REALLOCATE (image, Image, NIMAGE);
       REALLOCATE (line_number, off_t, NIMAGE);
@@ -264,4 +279,6 @@
   REALLOCATE (line_number, off_t, MAX (nimage, 1));
   free (skycoords);
+  free (RmaxSky);
+  free (index);
 
   *Nimage  = nimage;
Index: branches/meh_branches/ppstack_test/Ohana/src/relastro/src/testparallax.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relastro/src/testparallax.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relastro/src/testparallax.c	(revision 34041)
@@ -1,31 +1,114 @@
 # include "relastro.h"
+# define NPTS 64
+# define J2000 2451545.       /* Julian date at standard epoch */
+# define T1970 2440587.500000 /* JD at UNIX ref time */
 
 int main (int argc, char **argv) {
+   
+  int i, Npts;
+  char line[1024];
+  double R[NPTS], D[NPTS], Time[NPTS], JD[NPTS];
+  double X[NPTS], Y[NPTS], dX[NPTS], dY[NPTS], pX[NPTS], pY[NPTS];
+  double Tref[NPTS], Tjyrs[NPTS], TrefS, TjyrsS, TrefMean, TjyrsMean, Ro, Do;
+  Coords coords;
+  PMFit fitPAR;
 
-    if (argc != N) {
-	fprintf (stderr, "USAGE: testparallax (file.dat)\n");
-	exit (1);
+  if (argc != 2) {
+    fprintf (stderr, "USAGE: testparallax (file.dat)\n");
+    exit (1);
+  }
+
+  // test parallax program
+  FILE *f = fopen (argv[1], "r");
+  if (!f) { fprintf (stderr, "failed to open %s\n", argv[1]); exit (2); }
+
+  // XXX uncomment to skip first line scan_line(f, line);
+    
+  Npts = 0;
+  for (i = 0; scan_line(f, line) != EOF; i++) {
+    if (Npts == NPTS) {
+      fprintf (stderr, "too many point: use dynamic alloc\n");
+      exit (2);
     }
+    if (line[0] == '#') continue;
+    dparse (&R[Npts],    1, line);
+    dparse (&D[Npts],    2, line);
+    dparse (&JD[Npts],   3, line);
+    dparse (&Time[Npts], 3, line);
 
-    // test parallax program
-    FILE *f = fopen (argv[1], "r");
-    if (!f) { fprintf (stderr, "failed to open %s\n", argv[1]); exit (2); }
+    dparse (&dX[Npts],   4, line);
+    dparse (&dY[Npts],   4, line);
 
-    char buffer[1024];
-    scan_line(f, line);
-    
-    while (scan_line(f, line) != EOF) {
-	dparse (&jd,   1, line);
-	dparse (&time, 2, line);
-	dparse (&ra,   3, line);
-	dparse (&dec,  4, line);
+    // trent's file
+    // dparse (&JD[Npts],   1, line);
+    // dparse (&Time[Npts], 2, line);
+    // dparse (&R[Npts],    3, line);
+    // dparse (&D[Npts],    4, line);
+    Npts ++;
+  }
 
-    }
+  /* project coordinates to a plane centered on the object with units of arcsec */
+  coords.crval1 = 0;
+  coords.crval2 = 0;
+  coords.crpix1 = 0;
+  coords.crpix2 = 0;
+  coords.cdelt1 = coords.cdelt2 = 1.0 / 3600.0;
+  coords.pc1_1  = coords.pc2_2 = 1.0;
+  coords.pc1_2  = coords.pc2_1 = 0.0;
+  coords.Npolyterms = 1;
+  strcpy (coords.ctype, "RA---SIN");
 
-    // project to local coords
+  // use one point as a local reference
+  coords.crval1 = R[0];
+  coords.crval2 = D[0];
 
-    // run fitter
-    FitPMandPar
+  TrefS = TjyrsS = 0.0;
 
+  // project to local coords
+  for (i = 0; i < Npts; i++) {
+    RD_to_XY (&X[i], &Y[i], R[i], D[i], &coords);
 
+    Tjyrs[i] = Time[i] / 365.25;
+    Tref[i] = Time[i] / 365.25;
+    // Tunix[i] = (JD[i] - T1970) / 365.25; // time relative to T1970 in years
+    // Tjyrs[i] = (JD[i] - J2000) / 365.25; // time relative to J2000 in years
+
+    TrefS   += Tref[i];
+    TjyrsS   += Tjyrs[i];
+
+    // nominal for PS1
+    // dX[i] = 0.020;
+    // dY[i] = 0.020;
+  }
+  TrefMean = TrefS / Npts;
+  TjyrsMean = TjyrsS / Npts;
+
+  for (i = 0; i < Npts; i++) {
+    Tref[i] -= TrefMean;
+    ParFactor (&pX[i], &pY[i], R[i], D[i], Tjyrs[i], 0.0);
+    fprintf (stderr, "%f %f : %f %f : %f %f : %f %f\n", R[i], D[i], X[i], Y[i], Tref[i], Tjyrs[i], pX[i], pY[i]);
+  }
+
+  // run fitter
+  // FitPMandPar (&fitPAR, X, dX, Y, dY, Tref, pX, pY, Npts, TRUE);
+  FitPMandPar (&fitPAR, X, dX, Y, dY, Tjyrs, pX, pY, Npts, TRUE);
+  XY_to_RD (&Ro, &Do, fitPAR.Ro, fitPAR.Do, &coords);
+
+  fprintf (stderr, "Rx   : %f\n", fitPAR.Ro);
+  fprintf (stderr, "Dx   : %f\n", fitPAR.Do);
+  fprintf (stderr, "Ro   : %f\n", Ro);
+  fprintf (stderr, "Do   : %f\n", Do);
+  fprintf (stderr, "dRo  : %f\n", fitPAR.dRo);
+  fprintf (stderr, "dDo  : %f\n", fitPAR.dDo);
+  fprintf (stderr, "uR   : %f\n", fitPAR.uR);
+  fprintf (stderr, "uD   : %f\n", fitPAR.uD);
+  fprintf (stderr, "duR  : %f\n", fitPAR.duR);
+  fprintf (stderr, "duD  : %f\n", fitPAR.duD);
+  fprintf (stderr, "p    : %f\n", fitPAR.p);
+  fprintf (stderr, "dp   : %f\n", fitPAR.dp);
+  fprintf (stderr, "uTot : %f\n", hypot(fitPAR.uR,fitPAR.uD));
+  fprintf (stderr, "PA   : %f\n", DEG_RAD*atan2(fitPAR.uR,fitPAR.uD) + 360.0);
+  
+  exit (0);
 }
+
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/Makefile	(revision 34041)
@@ -1,3 +1,3 @@
-default: relphot
+default: relphot relphot_client
 help:
 	@echo "make options: relphot (default)"
@@ -18,5 +18,7 @@
 
 relphot: $(BIN)/relphot.$(ARCH)
-install: $(DESTBIN)/relphot
+relphot_client: $(BIN)/relphot_client.$(ARCH)
+
+install: $(DESTBIN)/relphot $(DESTBIN)/relphot_client
 
 RELPHOT = \
@@ -24,4 +26,6 @@
 $(SRC)/GridOps.$(ARCH).o	 \
 $(SRC)/ImageOps.$(ARCH).o	 \
+$(SRC)/ImageSubset.$(ARCH).o	 \
+$(SRC)/BrightCatalog.$(ARCH).o	 \
 $(SRC)/MosaicOps.$(ARCH).o	 \
 $(SRC)/SetSignals.$(ARCH).o 	 \
@@ -42,4 +46,5 @@
 $(SRC)/relphot_objects.$(ARCH).o	 \
 $(SRC)/select_images.$(ARCH).o	 \
+$(SRC)/client_logger.$(ARCH).o	 \
 $(SRC)/setExclusions.$(ARCH).o 	 \
 $(SRC)/setMrelFinal.$(ARCH).o 	 \
@@ -48,2 +53,30 @@
 $(RELPHOT): $(INC)/relphot.h
 $(BIN)/relphot.$(ARCH): $(RELPHOT)
+
+RELPHOT_CLIENT = \
+$(SRC)/ConfigInit.$(ARCH).o	 \
+$(SRC)/GridOps.$(ARCH).o	 \
+$(SRC)/ImageOps.$(ARCH).o	 \
+$(SRC)/ImageSubset.$(ARCH).o	 \
+$(SRC)/BrightCatalog.$(ARCH).o	 \
+$(SRC)/MosaicOps.$(ARCH).o	 \
+$(SRC)/SetSignals.$(ARCH).o 	 \
+$(SRC)/Shutdown.$(ARCH).o 	 \
+$(SRC)/StarOps.$(ARCH).o	 \
+$(SRC)/bcatalog.$(ARCH).o	 \
+$(SRC)/args.$(ARCH).o		 \
+$(SRC)/help.$(ARCH).o		 \
+$(SRC)/plotstuff.$(ARCH).o	 \
+$(SRC)/liststats.$(ARCH).o	 \
+$(SRC)/initialize.$(ARCH).o	 \
+$(SRC)/load_catalogs.$(ARCH).o	 \
+$(SRC)/reload_catalogs.$(ARCH).o \
+$(SRC)/relphot_objects.$(ARCH).o	 \
+$(SRC)/relphot_client.$(ARCH).o	 \
+$(SRC)/client_logger.$(ARCH).o	 \
+$(SRC)/setExclusions.$(ARCH).o 	 \
+$(SRC)/setMrelFinal.$(ARCH).o    \
+$(SRC)/write_coords.$(ARCH).o
+
+$(RELPHOT_CLIENT): $(INC)/relphot.h
+$(BIN)/relphot_client.$(ARCH): $(RELPHOT_CLIENT)
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/doc/flatcorr.txt
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/doc/flatcorr.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/doc/flatcorr.txt	(revision 34041)
@@ -0,0 +1,90 @@
+
+2012.01.18
+
+I have updated libdvo to define a flatcorr table, and have the APIs to
+read and write the table.  I have also updated setphot to load the
+ubercal measurements and to define the flatcorr table and links (from
+image -> flatcorr).  Now I need to understand where to include this in
+relphot.
+
+One option would be to include it as part of the function 'getMcal'.
+This function goes from (cat,meas) -> (image) to find the image zero
+point (Mcal).  It could also check for a photom_map_id value for that
+image, and include that in the calculation (if it exists).
+
+
+Another option would be to add a new function (getMmap or something)
+and to include this essentially everywhere getMcal is called.  
+
+2012.01.13
+
+Thinking it over, I've decided that the easiest way to move forward on
+the implementation is to define a second grid-like correction to
+represent the flat-field, and defer unifying the two (conceptually
+similar) things to the future.
+
+So, we start with infrastructure:
+
+* APIs to read and write the flat-field corrections
+
+  * how to represent the flat-field correction?
+    * each pixel as a row in a table?
+      * easy to do the file I/O (one table for all corrections)
+      * need to unwrap the values into correction[photcode][x][y]
+      * 
+    * each photcode as a FITS image extention?
+      * 
+    * each camera as a full image (like Grid)?
+    
+
+2012.01.12
+
+The Ubercal analysis gives me zero points along with flat-field
+corrections defined for certain time ranges as a function of
+fractional cell location.  I need to include equivalent information
+into the DVO tables, both to apply the ubercal values and to do
+equivalent fits.  This needs to be done in both relphot and setphot.
+(Other programs refer to the value of Mcal for each detection; only
+relphot and setphot modify or apply the image Mcal to the detection
+value).
+
+In setphot, the needed modification is in update_catalog_setphot,
+where the value of Mcal is set from the image.  This function needs to
+also look up the corresponding flat-correction and include it in that
+calculation.  It is also necessary to load the externally-defined
+description of the flat-correction and to determine which images go
+which which corrections.
+
+In relphot, we would like to be able to fit for the value of interest,
+as well as to apply the values loaded from the database.  
+
+In relphot:
+
+The survey-wide flat-field correction information is similar to the
+Grid that is currently used to calculate the flat-field correction
+terms, though there are some subtleties.  
+
+Currently, the grid analysis is a bit complicated by the way we relate
+the chip coordinates to the camera coordinates.  The main problem is
+that we do not do a good job of tracking which chip a detection comes
+from.
+
+GridOps loads a configuration table which describes the layout of the
+camera.  This means the relative orientations of each of the chips.
+Each chip is define by its ccdnum value and by its ccdname.  
+
+The code assigns the Grid bin by using the camera layout information
+to relate the chip X,Y position to the camera X,Y coordinate.  The
+grid cells are then defined as a function of camera coordinate. 
+
+This is not a terrible solution, but it conflates two things: the chip
+and position in the chip with the layout of the focal plane.  To solve
+or apply a flat-field term, we don't actually need to know anything
+about the location of the chip in the camera.  
+
+In other words, Grid[Xbin][Ybin] is currently a single array assuming
+a monotonic relationship between Xbin and Xchip, etc.  We could have
+Grid[chip][Xbin][Ybin], where Xbin and Ybin come directl from
+Xchip,Ychip and have a different function which converts the resulting
+image to a camera-coordinate system image.
+
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/doc/mosaic.txt
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/doc/mosaic.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/doc/mosaic.txt	(revision 34041)
@@ -0,0 +1,30 @@
+
+For 'mosaic' zero points, I define the mosaics by grouping the images
+by observation time.  I do this by generating a list of the image
+start times.  I sort this list and then find the unique entries.  Each
+time defines a new mosaic entry.  I then assign images to the mosaics
+by matching their start times.  
+
+The above currently happens on the image subset.  I need to identify
+the images which are NOT in the subset but for which a mosaic has been
+constructed -- these are partially accepted images.  I then need to be
+able to do something with those images and mosaics: either reject all
+partial mosaics or accept all images from partial mosaics.  The
+advantage of the latter is that the choice of accepted images depends
+on the catalog / regions loaded -- I need to accept images only if all
+overlapping region files are loaded, right?
+
+So, a few things are needed: 
+
+1) identify the images which are NOT selected by have matching start
+times.
+2) exclude them from the subset somehow.
+
+Some questions:
+
+ * the image subset is currently a *copy* of the Image array, not a
+   view.  does it help to change this? (beyond the memory savings?)
+
+ * I'm still a bit unclear on what 'load_images' vs 'reload_images'
+   does.  
+
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/doc/parallel.txt
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/doc/parallel.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/doc/parallel.txt	(revision 34041)
@@ -0,0 +1,35 @@
+
+2012.02.13
+
+Image fields needed by relphot_client (saved by ImageSubsetSave):
+
+imageID
+photom_map_id
+flags
+Mcal
+dMcal
+tzero
+trate
+
+(if we have USE_GRID == T):
+photcode
+
+
+2012.02.10
+
+I have put together the start of parallel dvo examples.  I have
+'dvodist' to distribute the data (and pull it back), and parallel
+modifications to 'setphot'.  Here is what I need to do to relphot to
+make it work in parallel:
+
+* load_catalogs.c : a parallel version of this would spawn the remote
+  jobs in -load mode.  these should read from their owned tables,
+  collect the subset of detections (subset naturally generated by
+  bcatalog), and write the results to local temp fits files.  the main
+  program would wait until the sub programs have been finished and
+  then load in all of the subset tables.
+
+* reload_catalogs : a parallel version needs to write the subset image
+  table and then run the remote jobs.  these would read the image
+  data, and load and update their local database tables.  This is
+  nearly identical to the code in setphot / setphot_client.
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/include/relphot.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/include/relphot.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/include/relphot.h	(revision 34041)
@@ -3,8 +3,20 @@
 # include <kapa.h>
 # include <signal.h>
+# include <pthread.h>
 
 /* # define GRID_V1 */
 # define GRID_V2
 # define NO_IMAGE -100
+
+// choose off_t or int depending on full-scale relphot analysis resources
+// # define IDX_T off_t
+# define IDX_T int 
+
+typedef enum {
+    MODE_NONE   = 0,
+    MODE_LOAD   = 1,
+    MODE_UPDATE = 2,
+    MODE_UPDATE_OBJECTS = 3,
+} ModeType;
 
 typedef struct {
@@ -15,10 +27,23 @@
   float dMcal;
   float dMsys;
-  short nFitPhotom;
+  unsigned short nFitPhotom;
   short Xm;
   float secz;
-  char flags;
+  float ubercalDist;
+  unsigned int flags;
+  char skipCal;		      // if TRUE, this mosaic is incomplete and should not be calibrated
   Coords coords;
 } Mosaic; 
+
+typedef enum {
+  STATS_NONE, 
+  STATS_MEAN, 
+  STATS_MEDIAN, 
+  STATS_WT_MEAN, 
+  STATS_INNER_MEAN, 
+  STATS_INNER_WTMEAN, 
+  STATS_CHI_INNER_MEAN, 
+  STATS_CHI_INNER_WTMEAN
+} ListStatsMode;
 
 typedef struct {
@@ -30,19 +55,60 @@
   double min;
   double max;
+  double Upper80;
+  double Lower20;
   double total;
   int    Nmeas;
+  ListStatsMode statmode;
 } StatType;
 
+typedef struct {
+  AverageTiny *average;	      // array of (minimal) average data
+  MeasureTiny *measure;	      // array of (minimal) measure data 
+  SecFilt     *secfilt;	      // array of secfilt data (matched to average by Nsecfilt)
+  off_t       Naverage;
+  off_t       Nmeasure;
+} BrightCatalog;
+
+typedef struct {
+  float Mcal;
+  float dMcal;
+  unsigned int imageID;
+  unsigned int photom_map_id;
+  unsigned int flags;
+  unsigned int tzero;
+  unsigned char trate;
+} ImageSubset;
+
+typedef struct {
+  Catalog *catalog;	      // array of catalogs generated
+  int NCATALOG;		      // number of catalogs allocated
+  int Ncatalog;		      // number of catalogs generated
+  int Nsecfilt;		      // number of catalogs generated
+  off_t *NAVERAGE; 	      // allocated Averages per catalog
+  off_t *NMEASURE;	      // allocated Measures per catalog
+  int   *index;		      // lookup table catID -> catalog[i]
+  int   *catIDs;	      // lookup table catID <- catalog[i]
+  int    maxID;		      // max catID value to date
+} CatalogSplitter;
+
 /* global variables set in parameter file */
-char   ImageCat[256];
-char   ImageTemplate[256];
-char   CatTemplate[256];
-char   GSCFILE[256];
-char   CATDIR[256];
+# define DVO_MAX_PATH 1024
+char   ImageCat[DVO_MAX_PATH];
+char   ImageTemplate[DVO_MAX_PATH];
+char   CatTemplate[DVO_MAX_PATH];
+char   GSCFILE[DVO_MAX_PATH];
+char  *CATDIR;
 char   CATMODE[16];    /* raw, mef, split, mysql */
 char   CATFORMAT[16];  /* internal, elixir, loneos, panstarrs */
-char   CameraConfig[256];
-char   SKY_TABLE[256];
+char   CameraConfig[DVO_MAX_PATH];
+char   CAMERA[64];    /* eg, gpc1 */
+char   SKY_TABLE[DVO_MAX_PATH];
 int    SKY_DEPTH;  /** XXX EAM : depth of catalog tables, fix usage */
+
+int          HOST_ID;
+char        *HOSTDIR;
+char        *IMAGES;
+char        *BCATALOG;
+ModeType     MODE;
 
 double MAG_LIM;
@@ -54,4 +120,11 @@
 double MIN_ERROR;
 double IMFIT_SYS_SIGMA_LIM;
+double CLOUD_TOLERANCE;
+
+int    PARALLEL;
+int    PARALLEL_MANUAL;
+int    PARALLEL_SERIAL;
+
+int    NTHREADS;
 
 int    VERBOSE;
@@ -79,7 +152,12 @@
 int    FREEZE_MOSAICS;
 int    USE_GRID;
+int    KEEP_UBERCAL;
 char  *OUTROOT;
+char  *UPDATE_CATFORMAT;
 int    PLOTDELAY;
 int    UpdateAverages;
+int    ApplyOffsets;
+
+char  *PhotcodeList;
 
 int    RELPHOT_GRID_X;
@@ -101,5 +179,6 @@
 double AreaXmin, AreaXmax, AreaYmin, AreaYmax;
 
-int ImagSelect, ImagMin, ImagMax;
+int ImagSelect;
+double ImagMin, ImagMax;
 
 int DophotSelect, DophotValue;
@@ -112,5 +191,5 @@
 
 SkyRegion UserPatch;
-int UserPatchSelect;
+char *UserCatalog;
 
 int USE_BASIC_CHECK;
@@ -131,7 +210,8 @@
 off_t        *SelectRefMosaic     PROTO((Mosaic **refmosaic, off_t *Nimage));
 int           args                PROTO((int argc, char **argv));
-int           bcatalog            PROTO((Catalog *subcatalog, Catalog *catalog));
+int           args_client         PROTO((int argc, char **argv));
+int           bcatalog            PROTO((Catalog *subcatalog, Catalog *catalog, int Ncat));
 void          clean_images        PROTO((void));
-void          clean_measures      PROTO((Catalog *catalog, int Ncatalog, int final));
+void          clean_measures      PROTO((Catalog *catalog, int Ncatalog, int final, FlatCorrectionTable *flatcorr));
 void          clean_mosaics       PROTO((void));
 void          clean_stars         PROTO((Catalog *catalog, int Ncatalog));
@@ -156,25 +236,32 @@
 Coords       *getCoords           PROTO((off_t meas, int cat));
 off_t         getImageEntry       PROTO((off_t meas, int cat));
-float         getMcal             PROTO((off_t meas, int cat));
+float         getMcal             PROTO((off_t meas, int cat, FlatCorrectionTable *flatcorr, Catalog *catalog));
+float         getMflat            PROTO((off_t meas, int cat, FlatCorrectionTable *flatcorr, Catalog *catalog));
 float         getMgrid            PROTO((off_t meas, int cat));
 float         getMmos             PROTO((off_t meas, int cat));
 float         getMrel             PROTO((Catalog *catalog, off_t meas, int cat));
+short         getUbercalDist      PROTO((off_t meas, int cat));
 Image        *getimage            PROTO((off_t N));
 Image        *getimages           PROTO((off_t *N, off_t **LineNumber));
-void          global_stats        PROTO((Catalog *catalog, int Ncatalog));
+ImageSubset  *getimages_subset    PROTO((off_t *N));
+void          global_stats        PROTO((Catalog *catalog, int Ncatalog, FlatCorrectionTable *flatcorr));
 void          initGrid            PROTO((int dX, int dY));
 void          initGridBins        PROTO((Catalog *catalog, int Ncatalog));
 void          initImageBins       PROTO((Catalog *catalog, int Ncatalog, int doImageList));
+void          initImagesSubset    PROTO((ImageSubset *input, off_t *line_number, off_t N));
 void          initImages          PROTO((Image *input, off_t *LineNumber, off_t N));
 void          initMosaicBins      PROTO((Catalog *catalog, int Ncatalog, int doMosaicList));
 void          initMosaicGrid      PROTO((Image *image, off_t Nimage));
-void          initMosaics         PROTO((Image *image, off_t Nimage));
+void          initMosaics         PROTO((Image *subset, off_t Nsubset, Image *image, char *inSubset, off_t Nimage));
 void          initMrel            PROTO((Catalog *catalog, int Ncatalog));
 void          initialize          PROTO((int argc, char **argv));
-void          initstats           PROTO((char *mode));
-int           liststats           PROTO((double *value, double *dvalue, int N, StatType *stats));
-Catalog       *load_catalogs      PROTO((SkyList *skylist, int *Ncatalog));
-SkyList      *load_images         PROTO((FITS_DB *db, char *regionName, SkyRegion *region, int RegionSelect));
-Image         *select_images      PROTO((SkyList *skylist, Image *timage, off_t Ntimage, off_t **LineNumber, off_t *Nimage));
+void          initialize_client   PROTO((int argc, char **argv));
+void          liststats_setmode   PROTO((StatType *stats, char *strmode));
+int           liststats           PROTO((double *value, double *dvalue, double *wvalue, int N, StatType *stats));
+Catalog      *load_catalogs       PROTO((SkyList *skylist, int *Ncatalog, int hostID, char *hostpath));
+Catalog      *load_catalogs_parallel PROTO((SkyList *sky, int *Ncatalog));
+
+SkyList      *load_images         PROTO((FITS_DB *db, char *regionName, SkyRegion *region));
+Image        *select_images       PROTO((SkyList *skylist, Image *timage, off_t Ntimage, char *inSubset, off_t **LineNumber, off_t *Nimage, SkyRegion *region));
 
 int           main                PROTO((int argc, char **argv));
@@ -185,27 +272,28 @@
 void          plot_chisq          PROTO((Catalog *catalog, int Ncatalog));
 void          plot_defaults       PROTO((Graphdata *graphdata));
-void          plot_grid           PROTO((Catalog *catalog));
+void          plot_grid           PROTO((Catalog *catalog, FlatCorrectionTable *flatcorr));
 void          plot_images         PROTO((void));
 void          plot_list           PROTO((Graphdata *graphdata, double *xlist, double *ylist, int N, char *label, char *format, ...) OHANA_FORMAT(printf, 6, 7) );
 void          plot_mosaic_fields  PROTO((Catalog *catalog));
 void          plot_mosaics        PROTO((void));
-void          plot_scatter        PROTO((Catalog *catalog, int Ncatalog));
+void          plot_scatter        PROTO((Catalog *catalog, int Ncatalog, FlatCorrectionTable *flatcorr));
 void          plot_star_coords    PROTO((Catalog *catalog, int Ncatalog));
 void          plot_stars          PROTO((Catalog *catalog, int Ncatalog));
-void          reload_catalogs     PROTO((SkyList *skylist));
+void          reload_catalogs     PROTO((SkyList *skylist, FlatCorrectionTable *flatcorr, int hostID, char *hostpath));
+int           reload_catalogs_parallel PROTO((SkyList *sky));
 int           reload_images       PROTO((FITS_DB *db));
-int           setExclusions       PROTO((Catalog *catalog, int Ncatalog));
-void          setMcal             PROTO((Catalog *catalog, int Poor));
+int           setExclusions       PROTO((Catalog *catalog, int Ncatalog, int verbose));
+void          setMcal             PROTO((Catalog *catalog, int Poor, FlatCorrectionTable *flatcorr));
 void          setMcalFinal        PROTO((void));
-int           setMcalOutput       PROTO((Catalog *catalog, int Ncatalog));
-void          setMgrid            PROTO((Catalog *catalog));
-int           setMmos             PROTO((Catalog *catalog, int Poor));
-int           setMrel             PROTO((Catalog *catalog, int Ncatalog));
-void          setMrelFinal        PROTO((Catalog *catalog));
-int           setMrelOutput       PROTO((Catalog *catalog, int Ncatalog, int mark));
+int           setMcalOutput       PROTO((Catalog *catalog, int Ncatalog, FlatCorrectionTable *flatcorr));
+void          setMgrid            PROTO((Catalog *catalog, FlatCorrectionTable *flatcorr));
+int           setMmos             PROTO((Catalog *catalog, int Poor, FlatCorrectionTable *flatcorr));
+int           setMrel             PROTO((Catalog *catalog, int Ncatalog, FlatCorrectionTable *flatcorr));
+void          setMrelFinal        PROTO((Catalog *catalog, FlatCorrectionTable *flatcorr, int simpleAverage));
+int           setMrelOutput       PROTO((Catalog *catalog, int Ncatalog, int pass, FlatCorrectionTable *flatcorr));
 int           setMave             PROTO((Catalog *catalog, int Ncatalog));
 void          set_ZP              PROTO((double ZERO));
 int           setrefcode          PROTO((Image *image, off_t Nimage)); 
-void          skip_measurements   PROTO((Catalog *catalog, int pass));
+void          skip_measurements   PROTO((Catalog *catalog, int pass, FlatCorrectionTable *flatcorr));
 void          sortA               PROTO((double *X, int N));
 void          sortB               PROTO((double *X, double *Y, int N));
@@ -213,12 +301,12 @@
 void          sortD               PROTO((double *X, double *Y, double *Z, int N));
 StatType      statsImageM         PROTO((Catalog *catalog));
-StatType      statsImageN         PROTO((Catalog *catalog));
+StatType      statsImageN         PROTO((Catalog *catalog, FlatCorrectionTable *flatcorr));
 StatType      statsImageX         PROTO((Catalog *catalog));
 StatType      statsImagedM        PROTO((Catalog *catalog));
 StatType      statsMosaicM        PROTO((Catalog *catalog));
-StatType      statsMosaicN        PROTO((Catalog *catalog));
+StatType      statsMosaicN        PROTO((Catalog *catalog, FlatCorrectionTable *flatcorr));
 StatType      statsMosaicX        PROTO((Catalog *catalog));
 StatType      statsMosaicdM       PROTO((Catalog *catalog));
-StatType      statsStarN          PROTO((Catalog *catalog, int Ncatalog, int Nsec, int seccode));
+StatType      statsStarN          PROTO((Catalog *catalog, int Ncatalog, int Nsec, int seccode, FlatCorrectionTable *flatcorr));
 StatType      statsStarS          PROTO((Catalog *catalog, int Ncatalog, int Nsec));
 StatType      statsStarX          PROTO((Catalog *catalog, int Ncatalog, int Nsec));
@@ -226,9 +314,12 @@
 void          wimages             PROTO((void));
 void          write_coords        PROTO((Header *header, Coords *coords));
-int relphot_objects (void);
+int relphot_objects (int hostID, char *hostpath);
 
 void relphot_usage (void);
 void relphot_help (int argc, char **argv);
 
+void relphot_client_usage (void);
+void relphot_client_help (int argc, char **argv);
+
 off_t getImageByID (off_t ID);
 
@@ -236,4 +327,15 @@
 int LimitDensityCatalog (Catalog *subcatalog, Catalog *catalog);
 
-int populate_tiny_values (Catalog *catalog);
-int free_tiny_values (Catalog *catalog);
+BrightCatalog *BrightCatalogLoad(char *filename);
+int BrightCatalogSave(char *filename, BrightCatalog *catalog);
+BrightCatalog *BrightCatalogMerge (Catalog *catalog, int Ncatalog);
+CatalogSplitter *BrightCatalogSplitInit (int Nsecfilt);
+int BrightCatalogSplitFree (CatalogSplitter *catalogs);
+int BrightCatalogSplit (CatalogSplitter *catalogs, BrightCatalog *bcatalog);
+
+int ImageSubsetSave(char *filename, ImageSubset *image, off_t Nimage);
+ImageSubset *ImageSubsetLoad(char *filename, off_t *nimage);
+
+int client_logger_init ();
+int client_logger_message (char *format,...);
+
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/BrightCatalog.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/BrightCatalog.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/BrightCatalog.c	(revision 34041)
@@ -0,0 +1,713 @@
+# include "relphot.h"
+
+// relphot_client reads from the local catalogs and generates a set of bright, subset catalogs
+// we are going to save these as a single big FITS file, with only 3 extensions:
+
+// measure, average, secfilt.  these only need to contain the fields relevant to the
+// MeasureTiny, AverageTiny, and Secfilt tables, but with cat_id appended to each row so we can
+// reassign correctly on read
+
+# define GET_COLUMN(OUT,NAME,TYPE)					\
+  TYPE *OUT = gfits_get_bintable_column_data (&theader, &ftable, NAME, type, &Nrow, &Ncol); \
+  myAssert (!strcmp(type, #TYPE), "wrong column type");
+
+// XXX double check the header extname values for each table
+// XXX make sure we free things as we can
+// XXX make sure we close files as we can
+// XXX handle free and close on error return as well
+BrightCatalog *BrightCatalogLoad(char *filename) {
+
+  int i, Ncol;
+  off_t Nrow;
+  char type[16];
+  Header header;
+  Header theader;
+  Matrix matrix;
+  FTable ftable;
+
+  header.buffer = NULL;
+  matrix.buffer = NULL;
+  ftable.buffer = NULL;
+  theader.buffer = NULL;
+  BrightCatalog *catalog = NULL;
+
+  FILE *f = fopen (filename, "r");
+  if (!f) {
+    fprintf (stderr, "ERROR: cannot open image subset file %s\n", filename);
+    return NULL;
+  }
+
+  /* load in PHU segment (ignore) */
+  if (!gfits_fread_header (f, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read image subset header\n");
+    goto escape;
+  }
+  if (!gfits_fread_matrix (f, &matrix, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read image subset matrix\n");
+    goto escape;
+  }
+
+  ALLOCATE (catalog, BrightCatalog, 1);
+  catalog->Naverage = 0;
+  catalog->Nmeasure = 0;
+
+  ftable.header = &theader;
+
+  // *** Measure Data *** 
+  { 
+    // load data for this header 
+    if (!gfits_load_header (f, &theader)) goto escape;
+
+    // read the fits table bytes
+    if (!gfits_fread_ftable_data (f, &ftable, FALSE)) goto escape;
+ 
+    // need to create and assign to flat-field correction
+    GET_COLUMN(dR,        "RA_OFF",   	float);
+    GET_COLUMN(dD,        "DEC_OFF",  	float);
+    GET_COLUMN(M,         "MAG_SYS",  	float);
+    GET_COLUMN(Mcal,      "MAG_CAL",  	float);
+    GET_COLUMN(dM,        "MAG_ERR",  	float);
+    GET_COLUMN(airmass,   "AIRMASS",  	float);
+    GET_COLUMN(Xccd,      "X_CCD",    	float);
+    GET_COLUMN(Yccd,      "Y_CCD",    	float);
+    GET_COLUMN(dt,        "EXPTIME",  	float);
+    GET_COLUMN(t,         "TIME",     	int);
+    GET_COLUMN(averef,    "AVE_REF",  	int); // XXX signed vs unsigned?
+    GET_COLUMN(imageID,   "IMAGE_ID", 	int);
+    GET_COLUMN(dbFlags,   "DB_FLAGS", 	int);
+    GET_COLUMN(photFlags, "PHOT_FLAGS", int);
+    GET_COLUMN(catID,     "CAT_ID",     int);
+    GET_COLUMN(photcode,  "PHOTCODE",   short);
+    gfits_free_header (&theader);
+    gfits_free_table  (&ftable);
+
+    MeasureTiny *measure = NULL;
+    ALLOCATE (measure, MeasureTiny, Nrow);
+    for (i = 0; i < Nrow; i++) {
+      measure[i].dR        = dR[i];
+      measure[i].dD        = dD[i];
+      measure[i].M         = M[i];
+      measure[i].Mcal      = Mcal[i];
+      measure[i].dM        = dM[i];
+      measure[i].airmass   = airmass[i];
+      measure[i].Xccd      = Xccd[i];
+      measure[i].Yccd      = Yccd[i];
+      measure[i].dt        = dt[i];
+      measure[i].t         = t[i];
+      measure[i].averef    = averef[i];
+      measure[i].imageID   = imageID[i];
+      measure[i].dbFlags   = dbFlags[i];
+      measure[i].photFlags = photFlags[i];
+      measure[i].catID     = catID[i];
+      measure[i].photcode  = photcode[i];
+    }
+    fprintf (stderr, "loaded data for %lld measure\n", (long long) Nrow);
+
+    free (dR      );
+    free (dD      );
+    free (M       );
+    free (Mcal    );
+    free (dM      );
+    free (airmass );
+    free (Xccd    );
+    free (Yccd    );
+    free (dt      );
+    free (t       );
+    free (averef  );
+    free (imageID );
+    free (dbFlags );
+    free (photFlags );
+    free (catID   );
+    free (photcode);
+
+    catalog->measure = measure;
+    catalog->Nmeasure = Nrow;
+  }
+
+  /*** load Average values ***/
+  { 
+
+    // load data for this header 
+    if (!gfits_load_header (f, &theader)) goto escape;
+
+    // read the fits table bytes
+    if (!gfits_fread_ftable_data (f, &ftable, FALSE)) goto escape;
+ 
+    // need to create and assign to flat-field correction
+    GET_COLUMN(R,             "RA",   	   double);
+    GET_COLUMN(D,             "DEC",  	   double);
+    GET_COLUMN(Nmeasure,      "NMEAS",       int);
+    GET_COLUMN(measureOffset, "MEASURE_OFF", int);
+    GET_COLUMN(flags,         "FLAGS",       int);
+    GET_COLUMN(catID,         "CAT_ID",      int);
+    gfits_free_header (&theader);
+    gfits_free_table  (&ftable);
+
+    AverageTiny *average = NULL;
+    ALLOCATE (average, AverageTiny, Nrow);
+    for (i = 0; i < Nrow; i++) {
+      average[i].R              = R[i];
+      average[i].D              = D[i];
+      average[i].Nmeasure       = Nmeasure[i];
+      average[i].measureOffset  = measureOffset[i];
+      average[i].flags          = flags[i];
+      average[i].catID          = catID[i];
+    }
+    fprintf (stderr, "loaded data for %lld average\n", (long long) Nrow);
+
+    free (R             );
+    free (D             );
+    free (Nmeasure      );
+    free (measureOffset );
+    free (flags         );
+    free (catID         );
+
+    catalog->average = average;
+    catalog->Naverage = Nrow;
+  }
+
+  /*** load Secfilt values ***/
+  {
+
+    // load data for this header 
+    if (!gfits_load_header (f, &theader)) goto escape;
+
+    // read the fits table bytes
+    if (!gfits_fread_ftable_data (f, &ftable, FALSE)) goto escape;
+ 
+    // need to create and assign to flat-field correction
+    GET_COLUMN(M,     "MAG",      float);
+    GET_COLUMN(dM,    "MAG_ERR",  float);
+    GET_COLUMN(Xm,    "MAG_CHI",  float);
+    GET_COLUMN(flags, "FLAGS",    int);
+    GET_COLUMN(Ncode, "NCODE",    short);
+    GET_COLUMN(Nused, "NUSED",    short);
+    GET_COLUMN(M_20,  "MAG_20",   short);
+    GET_COLUMN(M_80,  "MAG_80",   short);
+    gfits_free_header (&theader);
+    gfits_free_table  (&ftable);
+
+    SecFilt *secfilt = NULL;
+    ALLOCATE (secfilt, SecFilt, Nrow);
+    for (i = 0; i < Nrow; i++) {
+      secfilt[i].M     = M[i];         
+      secfilt[i].dM    = dM[i];
+      secfilt[i].Xm    = Xm[i];
+      secfilt[i].flags = flags[i];
+      secfilt[i].Ncode = Ncode[i];
+      secfilt[i].Nused = Nused[i];
+      secfilt[i].M_20  = M_20[i];
+      secfilt[i].M_80  = M_80[i];
+    }
+    fprintf (stderr, "loaded data for %lld secfilt\n", (long long) Nrow);
+
+    free (M    );
+    free (dM   );
+    free (Xm   );
+    free (flags);
+    free (Ncode);
+    free (Nused);
+    free (M_20 );
+    free (M_80 );
+    catalog->secfilt = secfilt;
+    // assert Nsecfilt * Naverage = Nrow?
+  }
+
+  gfits_free_header (&header);
+  gfits_free_matrix (&matrix);
+  fclose (f);
+
+  return catalog;
+
+escape:
+  gfits_free_header (&header);
+  gfits_free_matrix (&matrix);
+  gfits_free_header (&theader);
+  gfits_free_table  (&ftable);
+  if (catalog) free (catalog);
+
+  fclose (f);
+  return NULL;
+}
+
+// we are passed a BrightCatalog structure, write it to a FITS table (3 ext)
+int BrightCatalogSave(char *filename, BrightCatalog *catalog) {
+
+  int i;
+  Header header;
+  Header theader;
+  Matrix matrix;
+  FTable ftable;
+
+  gfits_init_header (&header);
+  header.extend = TRUE;
+  gfits_create_header (&header);
+  gfits_create_matrix (&header, &matrix);
+
+  FILE *f = fopen (filename, "w");
+  if (!f) {
+    fprintf (stderr, "ERROR: cannot open image subset file for output %s\n", filename);
+    return FALSE;
+  }
+
+  gfits_fwrite_header  (f, &header);
+  gfits_fwrite_matrix  (f, &matrix);
+  gfits_free_header (&header);
+  gfits_free_matrix (&matrix);
+
+  /*** MeasureTiny ***/
+  {
+    gfits_create_table_header (&theader, "BINTABLE", "MEASURE_TINY");
+
+    gfits_define_bintable_column (&theader, "E", "RA_OFF",   "ra offset",                  "arcsec", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "DEC_OFF",  "dec offset",                 "arcsec", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "MAG_SYS",  "magnitude (sys)",             NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "MAG_CAL",  "magnitude (cal)",             NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "MAG_ERR",  "magnitude (err)",             NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "AIRMASS",  "airmass",                	    NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "X_CCD",    "ccd x coord",            	   "pix",    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "Y_CCD",    "ccd y coord",            	   "pix",    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "EXPTIME",  "-2.5 * log (exposure time)", "sec",    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "J", "TIME",     "time of exp",                "sec",    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "AVE_REF",  "pointer to average table",    NULL,    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "IMAGE_ID", "image",                       NULL,    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "DB_FLAGS", "flags",                       NULL,    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "PHOT_FLAGS", "photflags",                 NULL,    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "J", "CAT_ID",   "catalog",                     NULL,    1.0, 1.0*0x8000);
+    gfits_define_bintable_column (&theader, "I", "PHOTCODE", "photcode",                    NULL,    1.0, 1.0*0x80);
+
+    // generate the output array that carries the data
+    gfits_create_table (&theader, &ftable);
+
+    // create intermediate storage arrays
+    float *dR        ; ALLOCATE (dR       ,  float, catalog->Nmeasure);
+    float *dD        ; ALLOCATE (dD       ,  float, catalog->Nmeasure);
+    float *M         ; ALLOCATE (M        ,  float, catalog->Nmeasure);
+    float *Mcal      ; ALLOCATE (Mcal     ,  float, catalog->Nmeasure);
+    float *dM        ; ALLOCATE (dM       ,  float, catalog->Nmeasure);
+    float *airmass   ; ALLOCATE (airmass  ,  float, catalog->Nmeasure);
+    float *Xccd      ; ALLOCATE (Xccd     ,  float, catalog->Nmeasure);
+    float *Yccd      ; ALLOCATE (Yccd     ,  float, catalog->Nmeasure);
+    float *dt        ; ALLOCATE (dt       ,  float, catalog->Nmeasure);
+    int   *t         ; ALLOCATE (t        ,  int  , catalog->Nmeasure);
+    int   *averef    ; ALLOCATE (averef   ,  int  , catalog->Nmeasure);
+    int   *imageID   ; ALLOCATE (imageID  ,  int  , catalog->Nmeasure);
+    int   *dbFlags   ; ALLOCATE (dbFlags  ,  int  , catalog->Nmeasure);
+    int   *photFlags ; ALLOCATE (photFlags,  int  , catalog->Nmeasure);
+    int   *catID     ; ALLOCATE (catID    ,  int  , catalog->Nmeasure);
+    short *photcode  ; ALLOCATE (photcode ,  short, catalog->Nmeasure);
+
+    // assign the storage arrays
+    MeasureTiny *measure = catalog->measure;
+    for (i = 0; i < catalog->Nmeasure; i++) {
+      dR[i]       = measure[i].dR       ;
+      dD[i]       = measure[i].dD       ;
+      M[i]  	  = measure[i].M        ;
+      Mcal[i]     = measure[i].Mcal     ;
+      dM[i]       = measure[i].dM       ;
+      airmass[i]  = measure[i].airmass  ;
+      Xccd[i]     = measure[i].Xccd     ;
+      Yccd[i]     = measure[i].Yccd     ;
+      dt[i]       = measure[i].dt       ;
+      t[i] 	  = measure[i].t        ;
+      averef[i]   = measure[i].averef   ;
+      catID[i]    = measure[i].catID    ;
+      imageID[i]  = measure[i].imageID  ;
+      dbFlags[i]  = measure[i].dbFlags  ;
+      photFlags[i]= measure[i].photFlags;
+      photcode[i] = measure[i].photcode ;
+    }
+
+    // add the columns to the output array
+    gfits_set_bintable_column (&theader, &ftable, "RA_OFF",   	dR,        catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "DEC_OFF",  	dD,        catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_SYS",  	M,         catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_CAL",  	Mcal,      catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_ERR",  	dM,        catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "AIRMASS",  	airmass,   catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "X_CCD",    	Xccd,      catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "Y_CCD",    	Yccd,      catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "EXPTIME",  	dt,        catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "TIME",     	t,         catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "AVE_REF",  	averef,    catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "IMAGE_ID", 	imageID,   catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "DB_FLAGS", 	dbFlags,   catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "PHOT_FLAGS", photFlags, catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "CAT_ID",     catID,     catalog->Nmeasure);
+    gfits_set_bintable_column (&theader, &ftable, "PHOTCODE",   photcode,  catalog->Nmeasure);
+
+    free (dR      );
+    free (dD      );
+    free (M       );
+    free (Mcal    );
+    free (dM      );
+    free (airmass );
+    free (Xccd    );
+    free (Yccd    );
+    free (dt      );
+    free (t       );
+    free (averef  );
+    free (imageID );
+    free (dbFlags );
+    free (photFlags );
+    free (catID   );
+    free (photcode);
+
+    gfits_fwrite_Theader (f, &theader);
+    gfits_fwrite_table  (f, &ftable);
+    gfits_free_header (&theader);
+    gfits_free_table (&ftable);
+  }
+
+  /*** AverageTiny ***/
+  {
+    gfits_create_table_header (&theader, "BINTABLE", "AVERAGE_TINY");
+
+    gfits_define_bintable_column (&theader, "D", "RA",   	"ra (J2000)", 	         "degree", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "D", "DEC",  	"dec (J2000)",	         "degree", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "J", "NMEAS",       "number of measures",     NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "J", "MEASURE_OFF", "index to measurements",  NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "J", "FLAGS",       "flags",                  NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "J", "CAT_ID",      "catalog ref",            NULL,    1.0, 0.0);
+
+    // generate the output array that carries the data
+    gfits_create_table (&theader, &ftable);
+
+    // create intermediate storage arrays
+    double *R             ; ALLOCATE (R,             double, catalog->Naverage);
+    double *D             ; ALLOCATE (D,             double, catalog->Naverage);
+    int   *Nmeasure       ; ALLOCATE (Nmeasure,      int,    catalog->Naverage);
+    int   *measureOffset  ; ALLOCATE (measureOffset, int,    catalog->Naverage);
+    int   *flags          ; ALLOCATE (flags,         int,    catalog->Naverage);
+    int   *catID          ; ALLOCATE (catID,         int,    catalog->Naverage);
+
+    // assign the storage arrays
+    AverageTiny *average = catalog->average;
+    for (i = 0; i < catalog->Naverage; i++) {
+      R[i]           	= average[i].R       ;
+      D[i]           	= average[i].D       ;
+      Nmeasure[i]    	= average[i].Nmeasure;
+      measureOffset[i]  = average[i].measureOffset;
+      flags[i]          = average[i].flags;
+      catID[i]          = average[i].catID;
+    }
+
+    // add the columns to the output array
+    gfits_set_bintable_column (&theader, &ftable, "RA",          R,             catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "DEC",         D,             catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "NMEAS",       Nmeasure,      catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "MEASURE_OFF", measureOffset, catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "FLAGS",       flags,         catalog->Naverage);
+    gfits_set_bintable_column (&theader, &ftable, "CAT_ID",      catID,         catalog->Naverage);
+
+    free (R             );
+    free (D             );
+    free (Nmeasure      );
+    free (measureOffset );
+    free (flags         );
+    free (catID         );
+
+    gfits_fwrite_Theader (f, &theader);
+    gfits_fwrite_table  (f, &ftable);
+    gfits_free_header (&theader);
+    gfits_free_table (&ftable);
+  }
+
+  /*** SecFilt ***/
+  {
+    gfits_create_table_header (&theader, "BINTABLE", "SECFILT");
+
+    gfits_define_bintable_column (&theader, "E", "MAG",      "ra offset",                "arcsec", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "MAG_ERR",  "dec offset",               "arcsec", 1.0, 0.0);
+    gfits_define_bintable_column (&theader, "E", "MAG_CHI",  "magnitude (sys)",           NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "J", "FLAGS",    "magnitude (cal)",           NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "I", "NCODE",    "magnitude (err)",           NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "I", "NUSED",    "airmass",                   NULL,    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "I", "MAG_20",   "ccd x coord",              "pix",    1.0, 0.0);
+    gfits_define_bintable_column (&theader, "I", "MAG_80",   "ccd y coord",              "pix",    1.0, 0.0);
+
+    // generate the output array that carries the data
+    gfits_create_table (&theader, &ftable);
+
+    // Nsecfilt is number of average filters, Nsec is total number of values
+    int Nsecfilt = GetPhotcodeNsecfilt();
+    int Nsec = Nsecfilt * catalog->Naverage;
+
+    // create intermediate storage arrays
+    float *M        ; ALLOCATE (M      ,  float, Nsec);
+    float *dM       ; ALLOCATE (dM     ,  float, Nsec);
+    float *Xm       ; ALLOCATE (Xm     ,  float, Nsec);
+    int   *flags    ; ALLOCATE (flags  ,  int,   Nsec);
+    short *Ncode    ; ALLOCATE (Ncode  ,  short, Nsec);
+    short *Nused    ; ALLOCATE (Nused  ,  short, Nsec);
+    short *M_20     ; ALLOCATE (M_20   ,  short, Nsec);
+    short *M_80     ; ALLOCATE (M_80   ,  short, Nsec);
+
+    // assign the storage arrays
+    SecFilt *secfilt = catalog->secfilt;
+    for (i = 0; i < Nsec; i++) {
+      M     [i]       = secfilt[i]. M      ;
+      dM    [i]       = secfilt[i]. dM     ;
+      Xm    [i]       = secfilt[i]. Xm     ;
+      flags [i]       = secfilt[i]. flags  ;
+      Ncode [i]       = secfilt[i]. Ncode  ;
+      Nused [i]       = secfilt[i]. Nused  ;
+      M_20  [i]       = secfilt[i]. M_20   ;
+      M_80  [i]       = secfilt[i]. M_80   ;
+    }
+
+    // add the columns to the output array
+    gfits_set_bintable_column (&theader, &ftable, "MAG",      M    , Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_ERR",  dM   , Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_CHI",  Xm   , Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "FLAGS",    flags, Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "NCODE",    Ncode, Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "NUSED",    Nused, Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_20",   M_20 , Nsec);
+    gfits_set_bintable_column (&theader, &ftable, "MAG_80",   M_80 , Nsec);
+
+    free (M      );
+    free (dM     );
+    free (Xm     );
+    free (flags  );
+    free (Ncode  );
+    free (Nused  );
+    free (M_20   );
+    free (M_80   );
+
+    gfits_fwrite_Theader (f, &theader);
+    gfits_fwrite_table  (f, &ftable);
+    gfits_free_header (&theader);
+    gfits_free_table (&ftable);
+  }
+  return TRUE;
+}
+
+// merge a list of catalogs into a single BrightCatalog array set
+BrightCatalog *BrightCatalogMerge (Catalog *catalog, int Ncatalog) {
+
+  off_t i, j, k;
+
+  BrightCatalog *bcatalog = NULL;
+  ALLOCATE (bcatalog, BrightCatalog, 1);
+  
+  int Nmeas = 0;
+  int Naves = 0;
+  for (i = 0; i < Ncatalog; i++) {
+    Nmeas += catalog[i].Nmeasure;
+    Naves += catalog[i].Naverage;
+  }
+    
+  // XXX this prevents different catalogs from having different Nsecfilt values
+  int Nsecfilt = GetPhotcodeNsecfilt();
+
+  ALLOCATE (bcatalog[0].measure, MeasureTiny, Nmeas);
+  ALLOCATE (bcatalog[0].average, AverageTiny, Naves);
+  ALLOCATE (bcatalog[0].secfilt, SecFilt, Naves*Nsecfilt);
+
+  int Nm = 0;
+  int Na = 0;
+  for (i = 0; i < Ncatalog; i++) {
+    if (!catalog[i].Naverage) continue;
+    for (j = 0; j < catalog[i].Naverage; j++) {
+      bcatalog[0].average[Na] = catalog[i].averageT[j];
+      for (k = 0; k < Nsecfilt; k++) {
+	bcatalog[0].secfilt[Nsecfilt*Na + k] = catalog[i].secfilt[Nsecfilt*j + k];
+      }
+      Na++;
+      assert (Na <= Naves);
+    }
+    for (j = 0; j < catalog[i].Nmeasure; j++) {
+      bcatalog[0].measure[Nm] = catalog[i].measureT[j];
+      Nm++;
+      assert (Nm <= Nmeas);
+    }
+  }
+  bcatalog->Naverage = Na;
+  bcatalog->Nmeasure = Nm;
+  return bcatalog;
+}
+
+// distribute a bright catalog across separate catalogs
+CatalogSplitter *BrightCatalogSplitInit (int Nsecfilt) {
+
+  int i;
+
+  CatalogSplitter *catalogs = NULL;
+
+  ALLOCATE (catalogs, CatalogSplitter, 1);
+
+  // as we see new BrightCatalogs, we will update maxID and extend this array
+  catalogs->maxID = 0;
+  ALLOCATE (catalogs->index, int, catalogs->maxID + 1);
+  for (i = 0; i <= catalogs->maxID; i++) catalogs->index[i] = -1;
+
+  catalogs->Nsecfilt = Nsecfilt;
+
+  catalogs->Ncatalog =  0;
+  catalogs->NCATALOG = 16;
+  catalogs->catalog = NULL;
+  ALLOCATE (catalogs->catalog, Catalog, catalogs->NCATALOG);
+
+  ALLOCATE (catalogs->catIDs,   int,   catalogs->NCATALOG);
+  ALLOCATE (catalogs->NAVERAGE, off_t, catalogs->NCATALOG);
+  ALLOCATE (catalogs->NMEASURE, off_t, catalogs->NCATALOG);
+
+  for (i = 0; i < catalogs->NCATALOG; i++) {
+    dvo_catalog_init (&catalogs->catalog[i], TRUE);
+    catalogs->catIDs[i] = 0;
+    catalogs->NAVERAGE[i] = 256;
+    catalogs->NMEASURE[i] = 256;
+    catalogs->catalog[i].Naverage = 0;
+    catalogs->catalog[i].Nmeasure = 0;
+    ALLOCATE (catalogs->catalog[i].averageT, AverageTiny, catalogs->NAVERAGE[i]);
+    ALLOCATE (catalogs->catalog[i].measureT, MeasureTiny, catalogs->NMEASURE[i]);
+    ALLOCATE (catalogs->catalog[i].secfilt,  SecFilt,     catalogs->NAVERAGE[i]*Nsecfilt);
+  }
+  return catalogs;
+}
+
+// distribute a bright catalog across separate catalogs
+int BrightCatalogSplitFree (CatalogSplitter *catalogs) {
+
+  // XXX don't free the catalogs : 
+  // for (i = 0; i < NCATALOG; i++) {
+  //   free (catalogs->catalog[i].averageT);
+  //   free (catalogs->catalog[i].measureT);
+  //   free (catalogs->catalog[i].secfilt);
+  // }
+  // free (catalogs->catalog);
+
+  free (catalogs->catIDs);
+  free (catalogs->NAVERAGE);
+  free (catalogs->NMEASURE);
+  free (catalogs->index);
+  free (catalogs);
+  return TRUE;
+}
+
+// distribute a bright catalog across separate catalogs
+int BrightCatalogSplit (CatalogSplitter *catalogs, BrightCatalog *bcatalog) {
+
+  int i;
+
+  int D_NCATALOG = 16;
+
+  int Nsecfilt = catalogs->Nsecfilt;
+
+  // find the max value of catID in this BrightCatalog
+  int catIDmax = 0;
+  for (i = 0; i < bcatalog->Naverage; i++) {
+    catIDmax = MAX(catIDmax, bcatalog->average[i].catID);
+  }
+  // XXX validate the measure ID range here
+    
+  int maxIDold = catalogs->maxID;
+  catalogs->maxID = MAX (maxIDold, catIDmax);
+    
+  // extend the index array and init
+  REALLOCATE (catalogs->index, int, catalogs->maxID + 1);
+  for (i = maxIDold + 1; i <= catalogs->maxID; i++) catalogs->index[i] = -1;
+
+  // identify the new catID values
+  for (i = 0; i < bcatalog->Naverage; i++) {
+    int catID = bcatalog->average[i].catID;
+    assert (catID > 0);
+    assert (catID < catalogs->maxID + 1);
+    int idx = catalogs->index[catID];
+    if (idx != -1) continue; // already have seen this one
+
+    // a new catID value
+    int Ncat = catalogs->Ncatalog; // the next available slot
+    catalogs->catIDs[Ncat] = catID;
+    assert (Ncat >= 0);
+    assert (Ncat < catalogs->NCATALOG);
+
+    catalogs->catalog[Ncat].Nsecfilt = Nsecfilt;
+    catalogs->catalog[Ncat].catID = catID;
+
+    catalogs->index[catID] = Ncat;
+    assert (catID > 0);
+    assert (catID < catalogs->maxID + 1);
+
+    catalogs->Ncatalog ++;
+
+    if (catalogs->Ncatalog >= catalogs->NCATALOG) {
+      catalogs->NCATALOG += D_NCATALOG;
+
+      // fprintf (stderr, "realloc catalogs->catalog: old: %llx  ", (long long) catalogs->catalog);
+      REALLOCATE (catalogs->catalog, Catalog, catalogs->NCATALOG);
+      // fprintf (stderr, "new: %llx  -  %llx\n", (long long) catalogs->catalog, (long long) (catalogs->catalog + sizeof(Catalog)*catalogs->NCATALOG));
+
+      // fprintf (stderr, "realloc catalogs->NAVERAGE: old: %llx  ", (long long) catalogs->NAVERAGE);
+      REALLOCATE (catalogs->NAVERAGE, off_t,  catalogs->NCATALOG);
+      // fprintf (stderr, "new: %llx  -  %llx\n", (long long) catalogs->NAVERAGE, (long long) (catalogs->NAVERAGE + sizeof(off_t)*catalogs->NCATALOG));
+
+      // fprintf (stderr, "realloc catalogs->NMEASURE: old: %llx  ", (long long) catalogs->NMEASURE);
+      REALLOCATE (catalogs->NMEASURE, off_t,  catalogs->NCATALOG);
+      // fprintf (stderr, "new: %llx  -  %llx\n", (long long) catalogs->NMEASURE, (long long) (catalogs->NMEASURE + sizeof(off_t)*catalogs->NCATALOG));
+
+      REALLOCATE (catalogs->catIDs,   int,   catalogs->NCATALOG);
+
+      int j;
+      for (j = catalogs->NCATALOG - D_NCATALOG; j < catalogs->NCATALOG; j++) {
+	dvo_catalog_init (&catalogs->catalog[j], TRUE);
+	catalogs->catIDs[j] = 0;
+	catalogs->NAVERAGE[j] = 256;
+	catalogs->NMEASURE[j] = 256;
+	catalogs->catalog[j].Naverage = 0;
+	catalogs->catalog[j].Nmeasure = 0;
+	ALLOCATE (catalogs->catalog[j].averageT, AverageTiny, catalogs->NAVERAGE[j]);
+	ALLOCATE (catalogs->catalog[j].measureT, MeasureTiny, catalogs->NMEASURE[j]);
+	ALLOCATE (catalogs->catalog[j].secfilt,  SecFilt,     catalogs->NAVERAGE[j]*Nsecfilt);
+      }
+      D_NCATALOG = MAX(2000, 2*D_NCATALOG);
+    }
+  }
+
+  // each bcatalog (from each host) has a different set of catID ranges
+  // they also (probably) have contiguous ranges.  But, it is a bit tricky to be sure I
+  // can use that info, so perhaps ignore it
+
+  // assign the averages to the corresponding catalog
+  for (i = 0; i < bcatalog->Naverage; i++) {
+    int ID = bcatalog->average[i].catID;
+    int Nc = catalogs->index[ID];
+    assert (Nc > -1);
+    assert (Nc < catalogs->NCATALOG);
+
+    int Na = catalogs->catalog[Nc].Naverage;
+    catalogs->catalog[Nc].averageT[Na] = bcatalog->average[i];
+
+    // secfilt entries are grouped in blocks for each average
+    int k;
+    for (k = 0; k < Nsecfilt; k++) {
+      catalogs->catalog[Nc].secfilt[Na*Nsecfilt + k] = bcatalog->secfilt[i*Nsecfilt + k];
+    }      
+
+    catalogs->catalog[Nc].Naverage ++;
+    if (catalogs->catalog[Nc].Naverage >= catalogs->NAVERAGE[Nc]) {
+      catalogs->NAVERAGE[Nc] += MAX(catalogs->NAVERAGE[Nc], 1024);
+      REALLOCATE (catalogs->catalog[Nc].averageT, AverageTiny, catalogs->NAVERAGE[Nc]);
+      REALLOCATE (catalogs->catalog[Nc].secfilt,  SecFilt,     catalogs->NAVERAGE[Nc]*Nsecfilt);
+    }	       
+  }
+
+  // assign the measures to the corresponding catalog
+  // XXX what about averef and related links?  Do I need them?
+  for (i = 0; i < bcatalog->Nmeasure; i++) {
+    int ID = bcatalog->measure[i].catID;
+    int Nc = catalogs->index[ID];
+    assert (Nc > -1);
+    assert (Nc < catalogs->NCATALOG);
+    int Na = catalogs->catalog[Nc].Nmeasure;
+    catalogs->catalog[Nc].measureT[Na] = bcatalog->measure[i];
+    catalogs->catalog[Nc].Nmeasure ++;
+    if (catalogs->catalog[Nc].Nmeasure >= catalogs->NMEASURE[Nc]) {
+      catalogs->NMEASURE[Nc] += MAX(catalogs->NMEASURE[Nc], 4096);
+      REALLOCATE (catalogs->catalog[Nc].measureT, MeasureTiny, catalogs->NMEASURE[Nc]);
+    }	       
+  }
+
+  return TRUE;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/ConfigInit.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/ConfigInit.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/ConfigInit.c	(revision 34041)
@@ -33,6 +33,14 @@
   GetConfig (config, "IMAGE_GOOD_FRACTION",    "%lf", 0, &IMAGE_GOOD_FRACTION);
 
-  GetConfig (config, "GSCFILE",                "%s",  0, GSCFILE);
-  GetConfig (config, "CATDIR",                 "%s",  0, CATDIR);
+  // force CATDIR to be absolute (so parallel mode will work)
+  char *tmpcatdir = NULL;
+  ALLOCATE (tmpcatdir, char, DVO_MAX_PATH);
+  GetConfig (config, "CATDIR",                 "%s",  0, tmpcatdir);
+  CATDIR = abspath (tmpcatdir, DVO_MAX_PATH);
+  free (tmpcatdir);
+
+  GetConfig (config, "CAMERA",                  "%s",  0, CAMERA);
+
+  GetConfig (config, "GSCFILE",                 "%s",  0, GSCFILE);
   ScanConfig (config, "CATMODE",                "%s",  0, CATMODE);
   ScanConfig (config, "CATFORMAT",              "%s",  0, CATFORMAT);
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/GridOps.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/GridOps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/GridOps.c	(revision 34041)
@@ -284,5 +284,5 @@
 
 /* direct (non-iterative) solution for Mgrid values for all grid bins */
-void setMgridDirect (Catalog *catalog, int Ncatalog) {
+void setMgridDirect (Catalog *catalog, int Ncatalog, FlatCorrectionTable *flatcorr) {
 
   int **gotstar, **gridmeas;
@@ -399,5 +399,5 @@
 
 	// skip images marked as BAD
-	Mcal = getMcal  (m, c);
+	Mcal = getMcal  (m, c, flatcorr, catalog);
 	if (isnan(Mcal)) {
 	  Ncal ++;
@@ -522,10 +522,12 @@
 
 /* determine Mgrid values for all grid bins */
-void setMgrid (Catalog *catalog) {
+void setMgrid (Catalog *catalog, FlatCorrectionTable *flatcorr) {
 
   int i, j, m, c, n, N, Nmax, Nbad, Nmos, Ncal, Nrel, Nsys, Nfit;
   double *list, *dlist;
   float Msys, Mrel, Mcal, Mmos;
+
   StatType stats;
+  liststats_setmode (&stats, STATMODE);
   
   if (!USE_GRID) return;
@@ -554,5 +556,5 @@
 	continue;
       }
-      Mcal = getMcal  (m, c);
+      Mcal = getMcal  (m, c, flatcorr, catalog);
       if (isnan(Mcal)) {
 	Ncal ++;
@@ -595,5 +597,5 @@
     }
 
-    liststats (list, dlist, N, &stats);
+    liststats (list, dlist, NULL, N, &stats);
     gridM[i] = stats.mean;
     gridS[i] = stats.sigma;
@@ -609,5 +611,5 @@
 }
 
-void plot_grid (Catalog *catalog) {
+void plot_grid (Catalog *catalog, FlatCorrectionTable *flatcorr) {
 
   int i, j, m, c, n, N, Narea;
@@ -641,5 +643,5 @@
 	continue;
       }
-      Mcal  = getMcal  (m, c);
+      Mcal  = getMcal  (m, c, flatcorr, catalog);
       if (isnan(Mcal)) continue;
       Mmos  = getMmos  (m, c);
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/ImageOps.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/ImageOps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/ImageOps.c	(revision 34041)
@@ -1,12 +1,32 @@
 # include "relphot.h"
-
-static off_t       **bin;     // link from catalog,measure to image	     
-static off_t       **clist;   // catalog which supplied measurement on image 
-static off_t       **mlist;   // measure reference for measurement on image  
-static off_t        *Nlist;   // number of measurements on image	     
-static off_t        *NLIST;   // allocated number of measurements on image   
-
-static Image        *image;   // list of available images  
+void plot_setMcal (double *list, int Npts, StatType *stats, float clouds);
+
+// the MeasureToImage, ImageToCatalog, and ImageToMeasure arrays are a substantial part of the memory footprint.
+// total data volume is currently:
+// a) Naverage*sizeof(AverageTiny)      [averages]       : 32
+// b) Naverage*sizeof(Secfilt)*Nsecfilt [secfilt values] : 8 * 32
+// b) Nmeasure*sizeof(Measure)          [measurements]   : 72
+// c) Nmeasure*sizeof(IDX_T)*3          [image idx]      : 3 * 16
+// d) Nmeasure*sizeof(IDX_T)*3          [mosaic idx]     : 3 * 16
+// e) Nimage*sizeof(Image)              [image data]     : 360
+
+// for 3pi analysis in 2012, we have Nmeasure ~ 20 x Naverage
+// so, each measurement costs ~14.5B (Ave + Sec) + 72B (Meas) + 96B (idx)!
+// we are using off_t (64bit) to avoid the 32bit limit of an int, but
+// if we really had 2^31 measurements in a single analysis, we would be using > 350GB of ram...
+// until we reach that point, it is sort of silly to use IDX_T = off_t here.
+
+// in fact, we are safer than this, because the number of detections per table is rarely so large.
+
+// with IDX_T = int, each measurement costs ~14.5B (Ave + Sec) + 72B (Meas) + 48B (idx)!
+
+// elsewhere (not in relphot_images), we need to use off_t because a single catalog 
+
+// we have an array of images: image[ImageIndex] (ImageIndex : 0 < Nimage)
 static off_t        Nimage;   // number of available images
+static Image        *image;   // array of available images  
+
+// if we read only a subset of the rows from the Image FITS, LineNumber tells us to which row
+// each image belongs
 static off_t       *LineNumber; // match of subset to full image table
 
@@ -15,4 +35,21 @@
 static off_t        *imageIdx; // list of index for image IDs 
 
+// elsewhere, we have loaded a set of catalogs with measures (catalog[cat].measure[meas])
+// each image has N_onImage[ImageIndex] measurements
+static off_t        *N_onImage;   // actual number of measurements on image	     
+static off_t        *N_ONIMAGE;   // allocated number of measurements on image   
+
+// relationships between the measure,catalog set and the images:
+static IDX_T       **MeasureToImage = NULL; // image index from measure,catalog   : MeasureToImage[cat][meas] = ImageIndex
+static IDX_T       **ImageToCatalog = NULL; // catalog for given measure on image : ImageCatalog[ImageIndex][i] = cat (i : 0 < NonImage[ImageIndex])
+static IDX_T       **ImageToMeasure = NULL; // measure for given measure on image : ImageMeasure[ImageIndex][i] = cat (i : 0 < NonImage[ImageIndex])
+
+// MeasureToImage was 'bin'
+// ImageToCatalog was 'clist'
+// ImageToMeasure was 'mlist'
+
+// N_onImage was 'Nlist'
+// N_ONIMAGE was 'NLIST'
+
 Image *getimages (off_t *N, off_t **line_number) {
 
@@ -42,4 +79,55 @@
   }
   llsortpair (imageIDs, imageIdx, Nimage);
+}
+
+void initImagesSubset (ImageSubset *input, off_t *line_number, off_t N) {
+
+  off_t i;
+
+  // we have been given an ImageSubset array, containing a reduced set of image fields
+  // create full a Image array and save the needed values
+  ALLOCATE (image, Image, N);
+  for (i = 0; i < N; i++) {
+    image[i].imageID       = input[i].imageID      ;
+    image[i].photom_map_id = input[i].photom_map_id;
+    image[i].flags         = input[i].flags        ;
+    image[i].Mcal          = input[i].Mcal         ;
+    image[i].dMcal         = input[i].dMcal        ;
+    image[i].tzero         = input[i].tzero        ;
+    image[i].trate         = input[i].trate        ;
+  }
+  LineNumber = line_number;
+  Nimage = N;
+
+  ALLOCATE (imageIDs, off_t, Nimage);
+  ALLOCATE (imageIdx, off_t, Nimage);
+
+  for (i = 0; i < Nimage; i++) {
+    imageIdx[i] = i;
+    imageIDs[i] = image[i].imageID;
+  }
+  llsortpair (imageIDs, imageIdx, Nimage);
+}
+
+ImageSubset *getimages_subset (off_t *N) {
+
+  *N = Nimage;
+
+  off_t i;
+
+  // we have been given an ImageSubset array, containing a reduced set of image fields
+  // create full a Image array and save the needed values
+  ImageSubset *subset = NULL;
+  ALLOCATE (subset, ImageSubset, Nimage);
+  for (i = 0; i < Nimage; i++) {
+    subset[i].imageID       = image[i].imageID      ;
+    subset[i].photom_map_id = image[i].photom_map_id;
+    subset[i].flags         = image[i].flags        ;
+    subset[i].Mcal          = image[i].Mcal         ;
+    subset[i].dMcal         = image[i].dMcal        ;
+    subset[i].tzero         = image[i].tzero        ;
+    subset[i].trate         = image[i].trate        ;
+  }
+  return subset;
 }
 
@@ -71,23 +159,23 @@
 void initImageBins (Catalog *catalog, int Ncatalog, int doImageList) {
 
-  off_t i, j;
-
-  ALLOCATE (bin, off_t *, Ncatalog);
+  IDX_T i, j;
+
+  ALLOCATE (MeasureToImage, IDX_T *, Ncatalog);
   for (i = 0; i < Ncatalog; i++) {
-    ALLOCATE (bin[i], off_t, MAX (catalog[i].Nmeasure, 1));
-    for (j = 0; j < catalog[i].Nmeasure; j++) bin[i][j] = -1;
+    ALLOCATE (MeasureToImage[i], IDX_T, MAX (catalog[i].Nmeasure, 1));
+    for (j = 0; j < catalog[i].Nmeasure; j++) MeasureToImage[i][j] = -1;
   }
 
   if (doImageList) {
-    ALLOCATE (Nlist, off_t, Nimage);
-    ALLOCATE (NLIST, off_t, Nimage);
-    ALLOCATE (clist, off_t *, Nimage);
-    ALLOCATE (mlist, off_t *, Nimage);
+    ALLOCATE (N_onImage, off_t, Nimage);
+    ALLOCATE (N_ONIMAGE, off_t, Nimage);
+    ALLOCATE (ImageToCatalog, IDX_T *, Nimage);
+    ALLOCATE (ImageToMeasure, IDX_T *, Nimage);
 
     for (i = 0; i < Nimage; i++) {
-      Nlist[i] = 0;
-      NLIST[i] = 100;
-      ALLOCATE (clist[i], off_t, NLIST[i]);
-      ALLOCATE (mlist[i], off_t, NLIST[i]);
+      N_onImage[i] = 0;
+      N_ONIMAGE[i] = 30;
+      ALLOCATE (ImageToCatalog[i], IDX_T, N_ONIMAGE[i]);
+      ALLOCATE (ImageToMeasure[i], IDX_T, N_ONIMAGE[i]);
     }
   }
@@ -99,21 +187,21 @@
 
   for (i = 0; i < Ncatalog; i++) {
-    free (bin[i]);
-  }
-  free (bin);
+    free (MeasureToImage[i]);
+  }
+  free (MeasureToImage);
 
   if (doImageList) {
     for (i = 0; i < Nimage; i++) {
-      free (clist[i]);
-      free (mlist[i]);
-    }
-    free (clist);
-    free (mlist);
-    free (Nlist);
-    free (NLIST);
-  }
-}
-
-/* select all image equivalent to the active photcode set */
+      free (ImageToCatalog[i]);
+      free (ImageToMeasure[i]);
+    }
+    free (ImageToCatalog);
+    free (ImageToMeasure);
+    free (N_onImage);
+    free (N_ONIMAGE);
+  }
+}
+
+/* select all images equivalent to the active photcode set */
 void findImages (Catalog *catalog, int Ncatalog, int doImageList) {
 
@@ -210,18 +298,18 @@
 
   // index for (catalog, measure) -> image
-  bin[cat][meas] = idx;
+  MeasureToImage[cat][meas] = idx;
 
   if (doImageList) {
     // index for image, Nentry -> catalog
-    clist[idx][Nlist[idx]] = cat;
+    ImageToCatalog[idx][N_onImage[idx]] = cat;
 
     // index for image, Nentry -> measure
-    mlist[idx][Nlist[idx]] = meas;
-    Nlist[idx] ++;
-
-    if (Nlist[idx] == NLIST[idx]) {
-      NLIST[idx] += 100;
-      REALLOCATE (clist[idx], off_t, NLIST[idx]);
-      REALLOCATE (mlist[idx], off_t, NLIST[idx]);
+    ImageToMeasure[idx][N_onImage[idx]] = meas;
+    N_onImage[idx] ++;
+
+    if (N_onImage[idx] == N_ONIMAGE[idx]) {
+      N_ONIMAGE[idx] += 30;
+      REALLOCATE (ImageToCatalog[idx], IDX_T, N_ONIMAGE[idx]);
+      REALLOCATE (ImageToMeasure[idx], IDX_T, N_ONIMAGE[idx]);
     }	
   }
@@ -234,26 +322,70 @@
   off_t i;
 
-  i = bin[cat][meas];
+  if (!MeasureToImage) return -1;
+
+  i = MeasureToImage[cat][meas];
   return (i);
 }
 
-float getMcal (off_t meas, int cat) {
+// returns image.Mcal - ff(x,y)
+float getMcal (off_t meas, int cat, FlatCorrectionTable *flatcorr, Catalog *catalog) {
 
   off_t i;
-  float value;
-
-  i = bin[cat][meas];
+  float value, offset;
+
+  i = MeasureToImage[cat][meas];
   if (i == -1) return (NAN);
 
   if (image[i].flags & IMAGE_BAD) return (NAN);  
   value = image[i].Mcal;
+  offset = 0.0;
+
+  // to do this, I need to pass in the catalog and flatcorr pointers
+  int flat_id = image[i].photom_map_id;
+  if (flat_id) {
+    offset = FlatCorrectionOffset (flatcorr, flat_id, catalog[cat].measureT[meas].Xccd, catalog[cat].measureT[meas].Yccd);
+  }
+  value -= offset;
+
   return (value);
 }
 
+// returns image.Mcal - ff(x,y)
+short getUbercalDist (off_t meas, int cat) {
+
+  off_t i;
+  short distance;
+
+  if (!MeasureToImage) return -1;
+
+  i = MeasureToImage[cat][meas];
+  if (i == -1) return (1000);
+
+  if (image[i].flags & IMAGE_BAD) return (1000);  
+  distance = image[i].ubercalDist; // was dummy3 in structure
+  return (distance);
+}
+
+float getMflat (off_t meas, int cat, FlatCorrectionTable *flatcorr, Catalog *catalog) {
+
+  off_t i = MeasureToImage[cat][meas];
+  if (i == -1) return (NAN);
+
+  float offset = 0.0;
+
+  // to do this, I need to pass in the catalog and flatcorr pointers
+  int flat_id = image[i].photom_map_id;
+  if (flat_id) {
+    offset = FlatCorrectionOffset (flatcorr, flat_id, catalog[cat].measureT[meas].Xccd, catalog[cat].measureT[meas].Yccd);
+  }
+
+  return (offset);
+}
+
 Coords *getCoords (off_t meas, int cat) {
 
   off_t i;
 
-  i = bin[cat][meas];
+  i = MeasureToImage[cat][meas];
   if (i == -1) return (NULL);
   return (&image[i].coords);
@@ -261,32 +393,36 @@
 
 /* determine Mcal values for all images */
-void setMcal (Catalog *catalog, int PoorImages) {
-
-  off_t i, j, m, c, n, N, Nmax, mark, bad;
-  int Nfew, Nbad, Nmos, Ngrid, Nrel, Nsys, Nbright;
-  float Msys, Mrel, Mmos, Mgrid, McalBright, McalBright2;
-  double *list, *dlist;
+void setMcal (Catalog *catalog, int PoorImages, FlatCorrectionTable *flatcorr) {
+
+  off_t i, j, m, c, n, N, Nmax;
+  int mark, bad, Nfew, Nbad, Nmos, Nrel, Ngrid, Nsys, Nbright;
+  float Msys, Mrel, Mmos, Mgrid, Mflat;
+  double *list, *dlist, *Mlist, *dMlist;
+
   StatType stats;
+  liststats_setmode (&stats, STATMODE);
 
   if (FREEZE_IMAGES) return;
 
+  fprintf (stderr, "limiting negative clouds to %f\n", CLOUD_TOLERANCE);
+
   int Nsecfilt = GetPhotcodeNsecfilt ();
 
   if (PoorImages) {
-    IMAGE_BAD = STAR_BAD = MEAS_BAD = 0;
+    // XXX use bad stars and measurements for PoorImages? or not?
+    // IMAGE_BAD = STAR_BAD = MEAS_BAD = 0;
+    IMAGE_BAD = 0;
   }
 
   Nmax = 0;
   for (i = 0; i < Nimage; i++) {
-    Nmax = MAX (Nmax, Nlist[i]);
+    Nmax = MAX (Nmax, N_onImage[i]);
   }
   ALLOCATE (list, double, Nmax);
   ALLOCATE (dlist, double, Nmax);
+  ALLOCATE (Mlist, double, Nmax);
+  ALLOCATE (dMlist, double, Nmax);
 
   Nfew = Nbad = Nmos = Ngrid = Nrel = Nsys = 0;
-
-  // counters to measure the bright-end scatter
-  McalBright = McalBright2 = 0.0;
-  Nbright = 0;
 
   for (i = 0; i < Nimage; i++) {
@@ -298,9 +434,21 @@
     }      
 
+    // UBERCAL image: if this is an ubercal image, set minUbercalDist to 0:
+    // we optionally do not recalibrate images with UBERCAL zero points 
+    if (image[i].flags & ID_IMAGE_PHOTOM_UBERCAL) {
+      image[i].ubercalDist = 0; // was dummy3
+      if (KEEP_UBERCAL) continue;
+    }
+
+    int minUbercalDist = 1000;
+
+    // number of stars to measure the bright-end scatter
+    Nbright = 0;
+
     N = 0;
-    for (j = 0; j < Nlist[i]; j++) {
+    for (j = 0; j < N_onImage[i]; j++) {
       
-      m = mlist[i][j];
-      c = clist[i][j];
+      m = ImageToMeasure[i][j];
+      c = ImageToCatalog[i][j];
       
       if (catalog[c].measureT[m].dbFlags & MEAS_BAD) {
@@ -324,4 +472,11 @@
       }
       
+      // image.Mcal is not supposed to include the flat-field correction, so we need to
+      // apply that offset as well here for this image (in other words, each detection is
+      // being compared to the model, excluding the zero point, Mcal.  The model includes
+      // the flat-correction.  NOTE the sign of Mflat (Image.Mcal = Measure.Mcal - Mflat)
+
+      Mflat = getMflat (m, c, flatcorr, catalog);
+
       n = catalog[c].measureT[m].averef;
       Msys = PhotSysTiny (&catalog[c].measureT[m], &catalog[c].averageT[n], &catalog[c].secfilt[n*Nsecfilt]);
@@ -330,18 +485,31 @@
 	continue;
       }
-      list[N] = Msys - Mrel - Mmos - Mgrid;
+
+      PhotCode *code = GetPhotcodebyCode (catalog[c].measureT[m].photcode);
+      if (!code) goto skip;
+      if (code->equiv < 1) goto skip;
+      int Nsec = GetPhotcodeNsec (code->equiv);
+      if (Nsec == -1) goto skip;
+      minUbercalDist = MIN (catalog[c].secfilt[n*Nsecfilt + Nsec].ubercalDist, minUbercalDist);
+
+      // fprintf (stderr, "%1d, %3d : %3d, %3d : %10.6f %10.6f : %6.3f  %6.3f  %6.3f  %6.3f  %6.3f\n", (int) i, (int) j, (int) c, (int) m, catalog[c].averageT[n].R, catalog[c].averageT[n].D, Msys, Mrel, Mmos, Mgrid, Mflat);
+
+    skip:
+      list[N] = Msys - Mrel - Mmos - Mgrid + Mflat;
       dlist[N] = MAX (catalog[c].measureT[m].dM, MIN_ERROR);
       if (catalog[c].measureT[m].dM < IMFIT_SYS_SIGMA_LIM) {
-	McalBright += list[N];
-	McalBright2 += SQ(list[N]);
+	Mlist[Nbright] = list[N];
+	dMlist[Nbright] = dlist[N];
 	Nbright ++;
       }
       N++;
     }
-    /* Nlist[i] is all measurements, N is good measurements */
+    /* N_onImage[i] is all measurements, N is good measurements */
+
+    // if (VERBOSE2) fprintf (stderr, "meas skipped: (Nbad: %d, Nmos: %d, Ngrid: %d, Nrel: %d, Nsys: %d)\n", Nbad, Nmos, Ngrid, Nrel, Nsys);
 
     /* too few good measurements or too many bad measurements */
     if (!PoorImages) {
-      mark = (N < IMAGE_TOOFEW) || (N < IMAGE_GOOD_FRACTION*Nlist[i]);
+      mark = (N < IMAGE_TOOFEW) || (N < IMAGE_GOOD_FRACTION*N_onImage[i]);
       if (mark) {
 	image[i].flags |= ID_IMAGE_PHOTOM_FEW;
@@ -351,20 +519,30 @@
       }      
     }
-    
-    liststats (list, dlist, N, &stats);
-
-    float CLOUD_TOLERANCE = 0.01;
+
+    // no additional weight modification (we treat all stars on an image equally -- note an image is either ubercal-tied or not)
+    liststats (list, dlist, NULL, N, &stats);
     image[i].Mcal  = stats.mean;
     image[i].dMcal = stats.error;
-    image[i].dMagSys = stats.sigma;
     image[i].nFitPhotom = N;
     image[i].Xm    = 100.0*log10(stats.chisq);
 
+    plot_setMcal (list, N, &stats, CLOUD_TOLERANCE);
+
+    // bright end scatter
+    liststats (Mlist, dMlist, NULL, Nbright, &stats);
+    image[i].dMagSys = stats.sigma;
+
     if (image[i].Mcal < -CLOUD_TOLERANCE) {
       image[i].Mcal = 0.0;
     }
+
+    // minUbercalDist calculated here is the min value for any star owned by this image
+    // since this particular image is tied to that star, bump its distance by 1
+    image[i].ubercalDist = minUbercalDist + 1;
   }
   free (list);
   free (dlist);
+  free (Mlist);
+  free (dMlist);
 
   fprintf (stderr, "%d images marked having too few measurements (Nbad: %d, Nmos: %d, Ngrid: %d, Nrel: %d, Nsys: %d)\n", Nfew, Nbad, Nmos, Ngrid, Nrel, Nsys);
@@ -385,5 +563,4 @@
   double *mlist, *slist, *dlist;
   double MaxOffset, MaxScatter, MedOffset;
-  StatType stats;
 
   if (FREEZE_IMAGES) return;
@@ -395,16 +572,22 @@
   ALLOCATE (dlist, double, Nimage);
 
+  // measure stats for Mcal and dMcal
   for (i = N = 0; i < Nimage; i++) {
     if (image[i].flags & IMAGE_BAD) continue;
-    mlist[N] = fabs (image[i].Mcal);
+    mlist[N] = image[i].Mcal;
     slist[N] = image[i].dMcal;
     dlist[N] = 1;
     N++;
   }
-  initstats ("MEAN");
-  liststats (mlist, dlist, N, &stats);
+
+  // use a straight mean to find the global image statistics (no weighting)
+  StatType stats;
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (mlist, dlist, NULL, N, &stats);
   MaxOffset = MAX (IMAGE_OFFSET, 3*stats.sigma);
   MedOffset = stats.median;
-  liststats (slist, dlist, N, &stats);
+
+  liststats (slist, dlist, NULL, N, &stats);
   MaxScatter = MAX (IMAGE_SCATTER, 2*stats.median);
   fprintf (stderr, "Mrel: %f, dMrel: %f, Max Scatter: %f, Max Offset: %f\n", MedOffset, stats.median, MaxScatter, MaxOffset);
@@ -412,4 +595,7 @@
   Nmark = 0;
   for (i = 0; i < Nimage; i++) {
+    // if we are keeping ubercal sacrosanct, then we should not be allowed to break them...
+    if (KEEP_UBERCAL && (image[i].flags & ID_IMAGE_PHOTOM_UBERCAL)) continue;
+
     mark = FALSE;
     image[i].flags &= ~ID_IMAGE_PHOTOM_POOR;
@@ -424,5 +610,4 @@
 
   fprintf (stderr, "%d images marked poor\n", Nmark);
-  initstats (STATMODE);
   free (mlist);
   free (slist);
@@ -430,4 +615,36 @@
 }
 
+void plot_setMcal (double *list, int Npts, StatType *stats, float clouds) {
+
+  off_t i;
+  double *xlist;
+  Graphdata graphdata;
+
+  if (!PLOTSTUFF) return;
+
+  ALLOCATE (xlist, double, Npts);
+
+  /**** Mcal vs seq ****/
+  float minMcal    = +100.0;
+  float maxMcal    = -100.0;
+  for (i = 0; i < Npts; i++) {
+    xlist[i] = i;
+    minMcal = MIN (list[i], minMcal);
+    maxMcal = MAX (list[i], maxMcal);
+  }
+
+  float McalRange  = MAX(1.2*(maxMcal - minMcal), 0.21);
+  float McalCenter = 0.5*(maxMcal + minMcal);
+
+  plot_defaults (&graphdata);
+  graphdata.xmin = -1;
+  graphdata.xmax = Npts + 1;
+  graphdata.ymin = McalCenter - 0.5*McalRange;
+  graphdata.ymax = McalCenter + 0.5*McalRange;
+  plot_list (&graphdata, xlist, list, Npts, "sequence vs Mcal", "%s.seq.png", OUTROOT);
+
+  free (xlist);
+}
+
 void plot_images () {
 
@@ -443,15 +660,43 @@
 
   /**** dMcal vs airmass ****/
+  float minAirmass = 1000.0;
+  float maxAirmass =    0.0;
+  float minMcal    = +100.0;
+  float maxMcal    = -100.0;
+  float mindMcal    = +100.0;
+  float maxdMcal    = -100.0;
   for (i = 0; i < Nimage; i++) {
     Mlist[i] = image[i].Mcal;
     dlist[i] = image[i].dMcal;
     xlist[i] = image[i].secz;
-  }
+    minAirmass = MIN (image[i].secz, minAirmass);
+    maxAirmass = MAX (image[i].secz, maxAirmass);
+    minMcal = MIN (image[i].Mcal, minMcal);
+    maxMcal = MAX (image[i].Mcal, maxMcal);
+    mindMcal = MIN (image[i].dMcal, mindMcal);
+    maxdMcal = MAX (image[i].dMcal, maxdMcal);
+  }
+
+  float AirmassRange  = MAX(1.2*(maxAirmass - minAirmass), 0.25);
+  float AirmassCenter = 0.5*(maxAirmass + minAirmass);
+
+  float McalRange  = MAX(1.2*(maxMcal - minMcal), 0.21);
+  float McalCenter = 0.5*(maxMcal + minMcal);
+
+  float dMcalRange  = MAX(1.2*(maxdMcal - mindMcal), 0.21);
+  float dMcalCenter = 0.5*(maxdMcal + mindMcal);
 
   plot_defaults (&graphdata);
-  graphdata.ymin = PlotdMmin; 
-  graphdata.ymax = PlotdMmax;
+  graphdata.xmin = AirmassCenter - 0.5*AirmassRange;
+  graphdata.xmax = AirmassCenter + 0.5*AirmassRange;
+  graphdata.ymin = McalCenter - 0.5*McalRange;
+  graphdata.ymax = McalCenter + 0.5*McalRange;
   plot_list (&graphdata, xlist, Mlist, Nimage, "airmass vs Mcal", "%s.airmass.png", OUTROOT);
+
   plot_defaults (&graphdata);
+  graphdata.xmin = McalCenter - 0.5*McalRange;
+  graphdata.xmax = McalCenter + 0.5*McalRange;
+  graphdata.ymin = dMcalCenter - 0.5*dMcalRange;
+  graphdata.ymax = dMcalCenter + 0.5*dMcalRange;
   plot_list (&graphdata, Mlist, dlist, Nimage, "Mcal vs dMcal", "%s.Mcal.dMcal.png", OUTROOT);
 
@@ -471,4 +716,6 @@
   plot_defaults (&graphdata);
   graphdata.style = 1;
+  graphdata.xmin = dMcalCenter - 0.5*dMcalRange;
+  graphdata.xmax = dMcalCenter + 0.5*dMcalRange;
   plot_list (&graphdata, xlist, Mlist, NBIN, "dMcal hist", "%s.dMcalhist.png", OUTROOT);
 
@@ -478,11 +725,11 @@
 }
 
-StatType statsImageN (Catalog *catalog) {
+StatType statsImageN (Catalog *catalog, FlatCorrectionTable *flatcorr) {
 
   off_t i, j, m, c, n, N;
   double *list, *dlist;
   float Mcal, Mmos, Mgrid;
+
   StatType stats;
-
   bzero (&stats, sizeof (StatType));
   if (FREEZE_IMAGES) return (stats);
@@ -496,10 +743,10 @@
 
     N = 0;
-    for (j = 0; j < Nlist[i]; j++) {
-
-      m = mlist[i][j];
-      c = clist[i][j];
-
-      Mcal  = getMcal  (m, c);
+    for (j = 0; j < N_onImage[i]; j++) {
+
+      m = ImageToMeasure[i][j];
+      c = ImageToCatalog[i][j];
+
+      Mcal  = getMcal  (m, c, flatcorr, catalog);
       if (isnan(Mcal)) continue;
       Mmos  = getMmos  (m, c);
@@ -514,5 +761,7 @@
   }
 
-  liststats (list, dlist, n, &stats);
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (list, dlist, NULL, n, &stats);
   free (list);
   free (dlist);
@@ -542,5 +791,7 @@
   }
 
-  liststats (list, dlist, n, &stats);
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (list, dlist, NULL, n, &stats);
   free (list);
   free (dlist);
@@ -570,5 +821,7 @@
   }
 
-  liststats (list, dlist, n, &stats);
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (list, dlist, NULL, n, &stats);
   free (list);
   free (dlist);
@@ -598,5 +851,7 @@
   }
 
-  liststats (list, dlist, n, &stats);
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (list, dlist, NULL, n, &stats);
   free (list);
   free (dlist);
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/ImageSubset.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/ImageSubset.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/ImageSubset.c	(revision 34041)
@@ -0,0 +1,206 @@
+# include "relphot.h"
+
+# define GET_COLUMN(OUT,NAME,TYPE) \
+  TYPE *OUT = gfits_get_bintable_column_data (&theader, &ftable, NAME, type, &Nrow, &Ncol); \
+  myAssert (!strcmp(type, #TYPE), "wrong column type");
+
+// this is nearly identical to the one in 'uniphot/src' used by setphot / setphot_client.
+// Here, we use a handful of different columns (if not, we could move to libdvo)
+ImageSubset *ImageSubsetLoad(char *filename, off_t *nimage) {
+
+  int i, Ncol;
+  off_t Nrow;
+  Header header;
+  Header theader;
+  Matrix matrix;
+  FTable ftable;
+
+  *nimage = 0;
+  ImageSubset *image = NULL;
+
+  FILE *f = fopen (filename, "r");
+  if (!f) {
+    fprintf (stderr, "ERROR: cannot open image subset file %s\n", filename);
+    return NULL;
+  }
+
+  /* load in PHU segment (ignore) */
+  if (!gfits_fread_header (f, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read image subset header\n");
+    fclose (f);
+    return NULL;
+  }
+  if (!gfits_fread_matrix (f, &matrix, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read image subset matrix\n");
+    gfits_free_header (&header);
+    fclose (f);
+    return NULL;
+  }
+
+  ftable.header = &theader;
+
+  // load data for this header 
+  if (!gfits_load_header (f, &theader)) {
+    fclose (f);
+    return NULL;
+  }
+
+  // read the fits table bytes
+  if (!gfits_fread_ftable_data (f, &ftable, FALSE)) {
+    fclose (f);
+    return (NULL);
+  }
+  fclose (f);
+
+  // a bit annoying : we read the entire block of data, then extract the columns, then set the image structure values.
+  // this means I need 3 copies in memory at some point.  ugh.
+
+  char type[16];
+
+  GET_COLUMN (Mcal,    "MCAL",       float);
+  GET_COLUMN (dMcal,   "MCAL_ERR",   float);
+  GET_COLUMN (imageID, "IMAGE_ID",   int);
+  GET_COLUMN (map,     "PHOTOM_MAP", int);
+  GET_COLUMN (flags,   "FLAGS",      int);
+  GET_COLUMN (tzero,   "TZERO",      int);
+  GET_COLUMN (trate,   "TRATE",      short);
+
+  // XXX free the fits table data here 
+
+  ALLOCATE (image, ImageSubset, Nrow);
+  for (i = 0; i < Nrow; i++) {
+    image[i].Mcal          = Mcal[i];
+    image[i].dMcal         = dMcal[i];
+    image[i].imageID       = imageID[i];
+    image[i].photom_map_id = map[i];
+    image[i].flags         = flags[i];
+    image[i].tzero         = tzero[i];
+    image[i].trate         = trate[i];
+  }
+  fprintf (stderr, "loaded data for %lld images\n", (long long) Nrow);
+
+  free (Mcal);
+  free (dMcal);
+  free (imageID);
+  free (map);
+  free (flags);
+  free (tzero);
+  free (trate);
+
+  *nimage = Nrow;
+  return image;
+}
+
+// STATUS is value expected for success
+# define CHECK_STATUS(STATUS,MSG,...)					\
+  if (!(STATUS)) {							\
+    fprintf (stderr, MSG, __VA_ARGS__);					\
+    return FALSE;							\
+  }
+
+int ImageSubsetSave(char *filename, ImageSubset *image, off_t Nimage) {
+
+  int i;
+  Header header;
+  Header theader;
+  Matrix matrix;
+  FTable ftable;
+
+  gfits_init_header (&header);
+  header.extend = TRUE;
+  gfits_create_header (&header);
+  gfits_create_matrix (&header, &matrix);
+
+  gfits_create_table_header (&theader, "BINTABLE", "IMAGE_SUBSET");
+
+  gfits_define_bintable_column (&theader, "E", "MCAL", "zero point offset", "magnitudes", 1.0, 0.0);
+  gfits_define_bintable_column (&theader, "E", "MCAL_ERR", "zero point error", "magnitudes", 1.0, 0.0);
+
+  gfits_define_bintable_column (&theader, "J", "IMAGE_ID", "image ID", NULL, 1.0, 1.0*0x8000);
+  gfits_define_bintable_column (&theader, "J", "PHOTOM_MAP", "map", NULL, 1.0, 1.0*0x8000);
+  gfits_define_bintable_column (&theader, "J", "FLAGS", "flags", NULL, 1.0, 1.0*0x8000);
+
+  gfits_define_bintable_column (&theader, "J", "TZERO", "exposure start", NULL, 1.0, 1.0*0x8000);
+  gfits_define_bintable_column (&theader, "I", "TRATE", "tti rate", NULL, 1.0, 0.0);
+
+  // generate the output array that carries the data
+  gfits_create_table (&theader, &ftable);
+
+  float *Mcal, *dMcal;
+  unsigned int *imageID, *map, *flags, *tzero;
+  unsigned short *trate;
+
+  // create intermediate storage arrays
+  ALLOCATE (Mcal,    float, 	     Nimage);
+  ALLOCATE (dMcal,   float, 	     Nimage);
+  ALLOCATE (imageID, unsigned int,   Nimage);
+  ALLOCATE (map,     unsigned int,   Nimage);
+  ALLOCATE (flags,   unsigned int,   Nimage);
+  ALLOCATE (tzero,   unsigned int,   Nimage);
+  ALLOCATE (trate,   unsigned short, Nimage);
+
+  // assign the storage arrays
+  for (i = 0; i < Nimage; i++) {
+    Mcal[i]    = image[i].Mcal;
+    dMcal[i]   = image[i].dMcal;
+    imageID[i] = image[i].imageID;
+    map[i]     = image[i].photom_map_id;
+    flags[i]   = image[i].flags;
+    tzero[i]   = image[i].tzero;
+    trate[i]   = image[i].trate;
+  }
+
+  // add the columns to the output array
+  gfits_set_bintable_column (&theader, &ftable, "MCAL",       Mcal,    Nimage);
+  gfits_set_bintable_column (&theader, &ftable, "MCAL_ERR",   dMcal,   Nimage);
+  gfits_set_bintable_column (&theader, &ftable, "IMAGE_ID",   imageID, Nimage);
+  gfits_set_bintable_column (&theader, &ftable, "PHOTOM_MAP", map,     Nimage);
+  gfits_set_bintable_column (&theader, &ftable, "FLAGS",      flags,   Nimage);
+  gfits_set_bintable_column (&theader, &ftable, "TZERO",      tzero,   Nimage);
+  gfits_set_bintable_column (&theader, &ftable, "TRATE",      trate,   Nimage);
+
+  free (Mcal);
+  free (dMcal);
+  free (imageID);
+  free (map);
+  free (flags);
+  free (tzero);
+  free (trate);
+
+  FILE *f = fopen (filename, "w");
+  if (!f) {
+    fprintf (stderr, "ERROR: cannot open image subset file for output %s\n", filename);
+    return FALSE;
+  }
+
+  int status;
+  status = gfits_fwrite_header  (f, &header);
+  CHECK_STATUS (status, "ERROR: cannot write header for image subset %s\n", filename);
+
+  status = gfits_fwrite_matrix  (f, &matrix);
+  CHECK_STATUS (status, "ERROR: cannot write matrix for image subset %s\n", filename);
+
+  status = gfits_fwrite_Theader (f, &theader);
+  CHECK_STATUS (status, "ERROR: cannot write table header for image subset %s\n", filename);
+
+  status = gfits_fwrite_table  (f, &ftable);
+  CHECK_STATUS (status, "ERROR: cannot write table data for image subset %s\n", filename);
+
+  gfits_free_header (&header);
+  gfits_free_matrix (&matrix);
+  gfits_free_header (&theader);
+  gfits_free_table (&ftable);
+
+  int fd = fileno (f);
+
+  status = fflush (f);
+  CHECK_STATUS (!status, "ERROR: cannot flush file image subset %s\n", filename);
+
+  status = fsync (fd);
+  CHECK_STATUS (!status, "ERROR: cannot flush file image subset %s\n", filename);
+
+  status = fclose (f);
+  CHECK_STATUS (!status, "ERROR: problem closing image subset file %s\n", filename);
+
+  return TRUE;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/MosaicOps.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/MosaicOps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/MosaicOps.c	(revision 34041)
@@ -1,3 +1,6 @@
 # include "relphot.h"
+void plot_setMcal (double *list, int Npts, StatType *stats, float clouds);
+
+// see discussion in ImagesOps.c re: IDX_T
 
 // array of mosaic definition structures
@@ -5,22 +8,37 @@
 static Mosaic *mosaic;
 
-// list of all images associated with a mosaic
-static off_t   *Nimlist;
-static off_t   **imlist; /* mosaic -> image[] */
-static off_t   **bin;    /* catalog, measure -> mosaic */
-
-// list of mosaics associated with an image
-static off_t   *mosimage;
-
-// list of mosaic associated with each image  
-static int     **clist;  /* mosaic -> catalog[] */
-static off_t   **mlist;  /* mosiac -> measure[] */
-static off_t    *Nlist;
-static off_t    *NLIST;
+// relationships between the mosaics and their associated images
+static off_t   *MosaicN_Image; // number of images associated with the given mosaic
+static off_t  **MosaicToImage; // list of imagesa associated with the given mosaic
+
+// mosaic index for given image : ImageToMosaic[ImageIndex] = MosaicIndex (ImageIndex : 0 < Nimage)
+static off_t   *ImageToMosaic;
+
+// elsewhere, we have loaded a set of catalogs with measures (catalog[cat].measure[meas])
+// each mosaic has N_onMosaic[MosaicIndex] measurements
+static off_t    *N_onMosaic;   // actual number of measurements on mosaic	 
+static off_t    *N_ONMOSAIC;   // allocated number of measurements on mosaic   
+
+// relationships between the measure,catalog set and the mosaics:
+static off_t   **MeasureToMosaic; // Mosaic index from measure,catalog  : MeasureToMosaic[cat][meas] = MosaicIndex 
+static off_t   **MosaicToCatalog; // catalog for given measure on mosaic : MosaicCatalog[MosaicIndex][i] = cat (i : 0 < NonMosaic[MosaicIndex])
+static off_t   **MosaicToMeasure; // measure for given measure on mosaic : MosaicMeasure[MosaicIndex][i] = cat (i : 0 < NonMosaic[MosaicIndex])
+
+// MeasureToMosaic was 'bin'
+// MosaicToCatalog was 'clist'
+// MosaicToMeasure was 'mlist'
+
+// N_onMosaic was 'Nlist'
+// N_ONMOSAIC was 'NLIST'
+
+// ImageToMosaic was 'mosimage'
+
+// MosaicN_image was 'Nimlist'
+// MosaicToImage was 'imlist'
 
 /* find mosaic frames (unique time periods & photcode name matches mosaic) */
-void initMosaics (Image *image, off_t Nimage) {
-
-  off_t i, j, status, found, NMOSAIC, *NIMLIST;
+void initMosaics_old (Image *image, off_t Nimage) {
+
+  off_t i, j, status, found, NMOSAIC, *MosaicN_IMAGE;
   unsigned int start, stop;
   char *pname;
@@ -32,9 +50,9 @@
   ALLOCATE (mosaic, Mosaic, NMOSAIC);
 
-  ALLOCATE (imlist,  off_t *, NMOSAIC);
-  ALLOCATE (Nimlist, off_t,   NMOSAIC);
-  ALLOCATE (NIMLIST, off_t,   NMOSAIC);
-
-  ALLOCATE (mosimage, off_t, Nimage); // mosaic to which image belongs
+  ALLOCATE (MosaicToImage, off_t *, NMOSAIC);
+  ALLOCATE (MosaicN_Image, off_t,   NMOSAIC);
+  ALLOCATE (MosaicN_IMAGE, off_t,   NMOSAIC);
+
+  ALLOCATE (ImageToMosaic, off_t, Nimage); // mosaic to which image belongs
 
   /* a 'mosaic' in relphot is (unlike relastro) a virtual concept: there is no 
@@ -45,5 +63,5 @@
   /* generate list of unique mosaics */
   for (i = 0; i < Nimage; i++) {
-    mosimage[i] = -1;
+    ImageToMosaic[i] = -1;
 
     /* select valid mosaic images by photcode */
@@ -64,12 +82,12 @@
 
       // add reference from image to mosaic
-      mosimage[i] = j;
+      ImageToMosaic[i] = j;
 
       /* add image to mosaic image list */
-      imlist[j][Nimlist[j]] = i;
-      Nimlist[j] ++;
-      if (Nimlist[j] == NIMLIST[j]) {
-	NIMLIST[j] += 10;
-	REALLOCATE (imlist[j], off_t, NIMLIST[j]);
+      MosaicToImage[j][MosaicN_Image[j]] = i;
+      MosaicN_Image[j] ++;
+      if (MosaicN_Image[j] == MosaicN_IMAGE[j]) {
+	MosaicN_IMAGE[j] += 10;
+	REALLOCATE (MosaicToImage[j], off_t, MosaicN_IMAGE[j]);
       }
 
@@ -77,9 +95,9 @@
     if (found) continue;
     
-    /* a new mosaic, define ranges */
+    /* a new mosaic, define ranges -- preserve the original values incase this image is not used */
     mosaic[Nmosaic].start = start;
     mosaic[Nmosaic].stop  = stop;
-    mosaic[Nmosaic].Mcal  = 0.0;
-    mosaic[Nmosaic].dMcal = 0.0;
+    mosaic[Nmosaic].Mcal  = 0.0; // note : mosaic stores only offsets relative to the original image values
+    mosaic[Nmosaic].dMcal = 0.0; // note : at the end, mosaic.Mcal is added back to the input images
     mosaic[Nmosaic].dMsys = 0.0;
     mosaic[Nmosaic].Xm    = 0.0;
@@ -88,12 +106,14 @@
     mosaic[Nmosaic].photcode = GetPhotcodeEquivCodebyCode (image[i].photcode);
 
+    // XXX do we need to do something about flag consistency across a mosaic?
+
     /* add image to mosaic image list */
-    NIMLIST[Nmosaic] = 10;
-    Nimlist[Nmosaic] = 1;
-    ALLOCATE (imlist[Nmosaic], off_t, NIMLIST[Nmosaic]);
-    imlist[Nmosaic][0] = i;
+    MosaicN_IMAGE[Nmosaic] = 10;
+    MosaicN_Image[Nmosaic] = 1;
+    ALLOCATE (MosaicToImage[Nmosaic], off_t, MosaicN_IMAGE[Nmosaic]);
+    MosaicToImage[Nmosaic][0] = i;
 
     // add reference from image to mosaic
-    mosimage[i] = Nmosaic;
+    ImageToMosaic[i] = Nmosaic;
     
     Nmosaic ++;
@@ -101,12 +121,241 @@
       NMOSAIC += 10;
       REALLOCATE (mosaic,  Mosaic,  NMOSAIC);
-      REALLOCATE (imlist,  off_t *, NMOSAIC);
-      REALLOCATE (Nimlist, off_t,   NMOSAIC);
-      REALLOCATE (NIMLIST, off_t,   NMOSAIC);
-    }
-  }
+      REALLOCATE (MosaicToImage,  off_t *, NMOSAIC);
+      REALLOCATE (MosaicN_Image, off_t,   NMOSAIC);
+      REALLOCATE (MosaicN_IMAGE, off_t,   NMOSAIC);
+    }
+  }
+
+  // free this or not?
+  free (MosaicN_IMAGE);
 
   initMosaicGrid (image, Nimage);
+
+  fprintf (stderr, "matched %d images to %d mosaics\n", (int) Nimage, (int) Nmosaic);
   return;
+}
+
+off_t findMosaic (unsigned int *startTimes, off_t Nmosaic, unsigned int start);
+
+void sort_times (unsigned int *T, int N) {
+
+# define SWAPFUNC(A,B){ unsigned int tmp; \
+  tmp = T[A]; T[A] = T[B]; T[B] = tmp; \
+}
+# define COMPARE(A,B)(T[A] < T[B])
+
+  OHANA_SORT (N, COMPARE, SWAPFUNC);
+
+# undef SWAPFUNC
+# undef COMPARE
+
+}
+
+# define MARKTIME(MSG,...) { \
+  float dtime; \
+  gettimeofday (&stopTimer, (void *) NULL); \
+  dtime = DTIME (stopTimer, startTimer); \
+  fprintf (stderr, MSG, __VA_ARGS__); }
+
+/* find mosaic frames (unique time periods) (NOTE : we do NOT require matching photcodes...)
+   this function will also identify the images NOT in the subset which belong to a selected mosaic
+ */
+void initMosaics (Image *subset, off_t Nsubset, Image *image, char *inSubset, off_t Nimage) {
+
+  off_t i, j, status, found, NMOSAIC, *MosaicN_IMAGE;
+  unsigned int start, stop, *startTimes, *startTimesMosaic;
+  char *pname;
+
+  struct timeval startTimer, stopTimer;
+
+  if (!MOSAIC_ZEROPT) return;
+
+  gettimeofday (&startTimer, (void *) NULL);
+
+  /* a 'mosaic' in relphot is (unlike relastro) a virtual concept: there is no 
+   * entry in the image table that represents this mosaic.  Instead, it is an
+   * internal construct that defines a group of related images 
+   */
+
+  // generate a list of all subset image start times
+  ALLOCATE (startTimes, unsigned int, Nsubset);
+  for (i = 0; i < Nsubset; i++) {
+    startTimes[i] = subset[i].tzero;
+  }
+  sort_times (startTimes, Nsubset);
+  MARKTIME("create array of all image obstimes: %f sec\n", dtime);
+  
+  Nmosaic = 0;
+  NMOSAIC = 1000;
+  ALLOCATE (startTimesMosaic, unsigned int, NMOSAIC);
+  startTimesMosaic[0] = startTimes[0];
+
+  // generate a list of the unique start times (these define the mosaics)
+  for (i = 0; i < Nsubset; i++) {
+    if (startTimes[i] < startTimesMosaic[Nmosaic]) {
+      fprintf (stderr, "error?\n");
+      abort();
+    }
+    if (startTimes[i] == startTimesMosaic[Nmosaic]) continue;
+    Nmosaic ++;
+    if (Nmosaic >= NMOSAIC) {
+      NMOSAIC += 1000;
+      REALLOCATE (startTimesMosaic, unsigned int, NMOSAIC);
+    }
+    startTimesMosaic[Nmosaic] = startTimes[i];
+  }
+  Nmosaic ++;
+  MARKTIME("create subset array of mosaic obstimes: %f sec\n", dtime);
+
+  // now I have a list of uniq start times, and they are in order
+  // create the mosaic arrays for these times
+  ALLOCATE (mosaic, Mosaic, Nmosaic);
+
+  ALLOCATE (MosaicToImage, off_t *, Nmosaic);
+  ALLOCATE (MosaicN_Image, off_t,   Nmosaic);
+  ALLOCATE (MosaicN_IMAGE, off_t,   Nmosaic);
+
+  for (i = 0; i < Nmosaic; i++) {
+    /* a new mosaic, define ranges */
+    mosaic[i].start = startTimesMosaic[i];
+    mosaic[i].stop  = 0;
+    mosaic[i].Mcal  = 0.0;
+    mosaic[i].dMcal = 0.0;
+    mosaic[i].dMsys = 0.0;
+    mosaic[i].Xm    = 0.0;
+    mosaic[i].flags = 0;
+    mosaic[i].secz  = NAN;
+    mosaic[i].photcode = 0;
+    mosaic[i].skipCal = FALSE;
+    
+    memset (&mosaic[i].coords, 0, sizeof(Coords));
+
+    MosaicN_IMAGE[i] = 10;
+    MosaicN_Image[i] = 0;
+    ALLOCATE (MosaicToImage[i], off_t, MosaicN_IMAGE[i]);
+    MosaicToImage[i][0] = -1;
+  }
+
+  int Nskip, Nmark;
+  Nskip = Nmark = 0;
+  // find any mosaics (startTimesMosaic) which match unselected images 
+  for (i = 0; i < Nimage; i++) {
+    if (inSubset[i]) {
+      Nskip ++;
+      continue;
+    }
+    
+    /* select valid mosaic images by photcode */
+    pname = GetPhotcodeNamebyCode (image[i].photcode);
+    if (!pname) continue;
+    status = strncmp (pname, MOSAICNAME, strlen (MOSAICNAME));
+    if (status) continue;
+
+    /* set image time range */
+    start = image[i].tzero;
+    stop  = image[i].tzero + MAX(1.01*image[i].trate*image[i].NY, 1);
+
+    /* find a matching mosaic */
+    j = findMosaic(startTimesMosaic, Nmosaic, start);
+    if (j != -1) {
+      // mark this mosaic as bad
+      mosaic[j].skipCal = TRUE;
+      Nmark ++;
+    }
+  }
+  fprintf (stderr, "%d total images, %d overlap skyregion, %d do not overlap, but match overlapping mosaics\n", (int) Nimage, (int) Nskip, (int) Nmark);
+  MARKTIME("find unselected images matching selected mosaics: %f sec\n", dtime);
+
+  ALLOCATE (ImageToMosaic, off_t, Nsubset); // mosaic to which image belongs
+
+  // assign each image to a mosaic
+  for (i = 0; i < Nsubset; i++) {
+    ImageToMosaic[i] = -1;
+
+    /* select valid mosaic images by photcode */
+    pname = GetPhotcodeNamebyCode (subset[i].photcode);
+    status = strncmp (pname, MOSAICNAME, strlen (MOSAICNAME));
+    if (status) continue;
+
+    start = subset[i].tzero;
+    stop  = subset[i].tzero + MAX(1.01*subset[i].trate*subset[i].NY, 1);
+
+    j = findMosaic(startTimesMosaic, Nmosaic, start);
+    if (j == -1) {
+      fprintf (stderr, "programming error? all subset images should belong to a mosaic\n");
+      abort();
+    }
+
+    // add reference from image to mosaic
+    ImageToMosaic[i] = j;
+
+    // have we already found this mosaic?
+    found = (MosaicN_Image[j] > 0);
+
+    /* add image to mosaic image list */
+    MosaicToImage[j][MosaicN_Image[j]] = i;
+    MosaicN_Image[j] ++;
+    if (MosaicN_Image[j] == MosaicN_IMAGE[j]) {
+      MosaicN_IMAGE[j] += 10;
+      REALLOCATE (MosaicToImage[j], off_t, MosaicN_IMAGE[j]);
+    }
+    if (found) continue;
+    
+    /* a new mosaic, define ranges */
+    if (mosaic[j].start != start) { 
+      fprintf (stderr, "error?\n");
+      abort();
+    }
+    mosaic[j].stop  = stop;
+    mosaic[j].Mcal  = 0.0;
+    mosaic[j].dMcal = 0.0;
+    mosaic[j].dMsys = 0.0;
+    mosaic[j].Xm    = 0.0;
+    mosaic[j].flags  = subset[i].flags;
+    mosaic[j].secz  = subset[i].secz;
+    mosaic[j].photcode = GetPhotcodeEquivCodebyCode (subset[i].photcode);
+  }
+
+  // free this or not?
+  free (MosaicN_IMAGE);
+  free (startTimes);
+  free (startTimesMosaic);
+
+  initMosaicGrid (subset, Nsubset);
+
+  fprintf (stderr, "matched %d images to %d mosaics\n", (int) Nsubset, (int) Nmosaic);
+  return;
+}
+
+// use bisection to find the overlapping mosaic (returns exact match)
+// startTimes is a sorted, unique list of times
+// start might not be in the list
+off_t findMosaic (unsigned int *startTimes, off_t Nmosaic, unsigned int start) {
+
+  off_t Nlo, Nhi, N;
+
+  // find the last mosaic before start
+  Nlo = 0; // first valid startTimes value
+  Nhi = Nmosaic - 1; // last valid startTimes value
+
+  // if start is not in this range, return -1
+  if (start < startTimes[Nlo]) return (-1);
+  if (start > startTimes[Nhi]) return (-1);
+
+  while (Nhi - Nlo > 4) {
+    N = 0.5*(Nlo + Nhi);
+    if (startTimes[N] < start) {
+      Nlo = MAX(N, 0);
+    } else {
+      Nhi = MIN(N, Nmosaic - 1);
+    }
+  }
+  // we now have : startTimes[Nlo] < start <= starTimes[Nhi]
+
+  // find a matched mosaic starting from Nlo, or return -1
+  for (N = Nlo; N <= Nhi; N++) { 
+    if (startTimes[N] == start) return N;
+  }
+  return (-1);
 }
 
@@ -129,6 +378,6 @@
     dS = 0.0;
     Mcal = dMcal = Xm = 0;
-    for (j = 0; j < Nimlist[i]; j++) {
-      m = imlist[i][j];
+    for (j = 0; j < MosaicN_Image[i]; j++) {
+      m = MosaicToImage[i][j];
       NX = image[m].NX;
       NY = image[m].NY;
@@ -157,4 +406,12 @@
       dMcal += image[m].dMcal;
       Xm    += image[m].Xm;
+
+      // XXX: how does this work with UBERCAL?  We want to keep the Mcal values supplied by ubercal, but 
+      // solve for a single offset for each exposure (Mosaic.Mcal).  
+
+      // we also want to keep the flat-field terms for each exposure (regardless of ubercal or not)
+
+      // if it helps, note that ubercal uses a single zp per exposure, so the mean of those values is the same as the value
+
       /* we are using mosaic.Mcal, not image.Mcal. reset image.Mcal */
       image[m].Mcal  = 0.0;
@@ -162,5 +419,5 @@
       image[m].Xm    = NAN_S_SHORT;
     }
-    dS /= Nimlist[i];
+    dS /= MosaicN_Image[i];
     strcpy (mosaic[i].coords.ctype, "RA---TAN");
     mosaic[i].coords.crval1 = Rmin;
@@ -176,7 +433,7 @@
     RD_to_XY (&dX, &dY, Rmax, Dmax, &mosaic[i].coords);
 
-    mosaic[i].Mcal  = Mcal / Nimlist[i];
-    mosaic[i].dMcal = dMcal / Nimlist[i];
-    mosaic[i].Xm    = Xm / Nimlist[i];
+    mosaic[i].Mcal  = Mcal / MosaicN_Image[i];
+    mosaic[i].dMcal = dMcal / MosaicN_Image[i];
+    mosaic[i].Xm    = Xm / MosaicN_Image[i];
   }
   if (!USE_GRID) return;
@@ -188,4 +445,5 @@
 }
 
+// XXX : what about mosaics with skipCal == TRUE?
 void setMcalFinal () {
 
@@ -197,9 +455,12 @@
   image = getimages (&Nimage, NULL);
 
+  // XXX I think this is OK in the ubercal context, but probably need to skip UBERCAL
+  // images? (no need to update them)
+
   // copy the mosaic results to the images.  set the mosaic Mcal to 0.0 since we have moved its
   // impact to the images
   for (i = 0; i < Nmosaic; i++) {
-    for (j = 0; j < Nimlist[i]; j++) {
-      im = imlist[i][j];
+    for (j = 0; j < MosaicN_Image[i]; j++) {
+      im = MosaicToImage[i][j];
       image[im].Mcal += mosaic[i].Mcal;
       image[im].dMcal = mosaic[i].dMcal;
@@ -221,22 +482,22 @@
   if (!MOSAIC_ZEROPT) return;
 
-  ALLOCATE (bin, off_t *, Ncatalog);
+  ALLOCATE (MeasureToMosaic, off_t *, Ncatalog);
   for (i = 0; i < Ncatalog; i++) {
-    ALLOCATE (bin[i], off_t, MAX (catalog[i].Nmeasure, 1));
-    for (j = 0; j < catalog[i].Nmeasure; j++) bin[i][j] = -1;
+    ALLOCATE (MeasureToMosaic[i], off_t, MAX (catalog[i].Nmeasure, 1));
+    for (j = 0; j < catalog[i].Nmeasure; j++) MeasureToMosaic[i][j] = -1;
   }
 
   if (doMosaicList) {
     /* mosaic -> measure */
-    ALLOCATE (Nlist, off_t,   Nmosaic);
-    ALLOCATE (NLIST, off_t,   Nmosaic);
-    ALLOCATE (clist, int *,   Nmosaic);
-    ALLOCATE (mlist, off_t *, Nmosaic);
+    ALLOCATE (N_onMosaic, off_t,   Nmosaic);
+    ALLOCATE (N_ONMOSAIC, off_t,   Nmosaic);
+    ALLOCATE (MosaicToCatalog, off_t *, Nmosaic);
+    ALLOCATE (MosaicToMeasure, off_t *, Nmosaic);
 
     for (i = 0; i < Nmosaic; i++) {
-      Nlist[i] = 0;
-      NLIST[i] = 100;
-      ALLOCATE (clist[i], int,   NLIST[i]);
-      ALLOCATE (mlist[i], off_t, NLIST[i]);
+      N_onMosaic[i] = 0;
+      N_ONMOSAIC[i] = 100;
+      ALLOCATE (MosaicToCatalog[i], off_t, N_ONMOSAIC[i]);
+      ALLOCATE (MosaicToMeasure[i], off_t, N_ONMOSAIC[i]);
     }
   }
@@ -251,18 +512,18 @@
 
   for (i = 0; i < Ncatalog; i++) {
-    free (bin[i]);
-  }
-  free (bin);
+    free (MeasureToMosaic[i]);
+  }
+  free (MeasureToMosaic);
 
   if (doMosaicList) {
     /* mosaic -> measure */
     for (i = 0; i < Nmosaic; i++) {
-      free (clist[i]);
-      free (mlist[i]);
-    }
-    free (Nlist);
-    free (NLIST);
-    free (clist);
-    free (mlist);
+      free (MosaicToCatalog[i]);
+      free (MosaicToMeasure[i]);
+    }
+    free (N_onMosaic);
+    free (N_ONMOSAIC);
+    free (MosaicToCatalog);
+    free (MosaicToMeasure);
   }
 }
@@ -310,5 +571,5 @@
   }
 
-  mosID = mosimage[idx];
+  mosID = ImageToMosaic[idx];
   if (mosID < 0) {
     Image *image = getimage(idx);
@@ -320,5 +581,7 @@
   {
     Image *image = getimage(idx);
-    unsigned int imageStart = image[0].tzero - MAX(0.01*image[0].trate*image[0].NY, 1);
+    // XXX we are now matching with just tzero.  be careful for cameras with drift
+    // unsigned int imageStart = image[0].tzero - MAX(0.01*image[0].trate*image[0].NY, 1);
+    unsigned int imageStart = image[0].tzero;
     if (imageStart != mosaic[mosID].start) {
       fprintf (stderr, "error in image to mosaic match\n");
@@ -327,15 +590,15 @@
   }
 
-  bin[cat][meas] = mosID;
+  MeasureToMosaic[cat][meas] = mosID;
 
   if (doMosaicList) {
-    clist[mosID][Nlist[mosID]] = cat;
-    mlist[mosID][Nlist[mosID]] = meas;
-    Nlist[mosID] ++;
+    MosaicToCatalog[mosID][N_onMosaic[mosID]] = cat;
+    MosaicToMeasure[mosID][N_onMosaic[mosID]] = meas;
+    N_onMosaic[mosID] ++;
     
-    if (Nlist[mosID] == NLIST[mosID]) {
-      NLIST[mosID] += 100;
-      REALLOCATE (clist[mosID], int,   NLIST[mosID]);
-      REALLOCATE (mlist[mosID], off_t, NLIST[mosID]);
+    if (N_onMosaic[mosID] == N_ONMOSAIC[mosID]) {
+      N_ONMOSAIC[mosID] += 100;
+      REALLOCATE (MosaicToCatalog[mosID], off_t, N_ONMOSAIC[mosID]);
+      REALLOCATE (MosaicToMeasure[mosID], off_t, N_ONMOSAIC[mosID]);
     }	
   }
@@ -350,5 +613,5 @@
   if (!MOSAIC_ZEROPT) return (0);
 
-  i = bin[cat][meas];
+  i = MeasureToMosaic[cat][meas];
   if (i == -1) return (NAN);
 
@@ -358,11 +621,97 @@
 }
 
-int setMmos (Catalog *catalog, int PoorImages) {
-
-  off_t i, j, m, c, N, Nmax;
-  int n, mark, bad, Nfew, Nbad, Ncal, Nrel, Ngrid, Nsys, Nsecfilt;
-  float Msys, Mrel, Mcal, Mgrid;
-  double *list, *dlist, *Mlist, *dMlist;
-  StatType stats;
+typedef struct {
+  int Nfew;
+  int Nbad;
+  int Ncal;
+  int Ngrid;
+  int Nrel;
+  int Nsys;
+  int Nskip;
+  off_t Nmax;
+  int PoorImages;
+  double *list;
+  double *dlist;
+  double *Mlist;
+  double *dMlist;
+} SetMmosInfo;
+
+enum {THREAD_RUN, THREAD_DONE};
+
+typedef struct {
+  int entry;
+  int state;
+  Catalog *catalog;
+  Image *image;
+  FlatCorrectionTable *flatcorr;
+  SetMmosInfo info;
+} ThreadInfo;
+
+int setMmos_mosaic (Mosaic *mosaic, off_t Nmos, Image *image, Catalog *catalog, SetMmosInfo *info, FlatCorrectionTable *flatcorr);
+void *setMmos_worker (void *data);
+int setMmos_threaded (Catalog *catalog, int PoorImages, FlatCorrectionTable *flatcorr);
+
+void SetMmosInfoInit (SetMmosInfo *info, off_t Nmax, int allocLists, int PoorImages) {
+  info->Nfew = 0;
+  info->Nbad = 0;
+  info->Ncal = 0;
+  info->Nrel = 0;
+  info->Ngrid = 0;
+  info->Nskip = 0;
+  info->Nsys = 0;
+
+  info->Nmax = Nmax;
+  info->PoorImages = PoorImages;
+
+  if (allocLists) {
+    ALLOCATE (info->list, double, Nmax);
+    ALLOCATE (info->dlist, double, Nmax);
+    ALLOCATE (info->Mlist, double, Nmax);
+    ALLOCATE (info->dMlist, double, Nmax);
+  }
+}
+
+void SetMmosInfoFree (SetMmosInfo *info) {
+  free (info->list);
+  free (info->dlist);
+  free (info->Mlist);
+  free (info->dMlist);
+}
+
+void SetMmosInfoAccum (SetMmosInfo *summary, SetMmosInfo *results) {
+  summary->Nfew  += results->Nfew ;
+  summary->Nsys  += results->Nsys ;
+  summary->Nbad  += results->Nbad ;
+  summary->Ncal  += results->Ncal ;
+  summary->Nrel  += results->Nrel ;
+  summary->Ngrid += results->Ngrid;
+  summary->Nskip += results->Nskip;
+}
+
+static int npass_output = 0;
+
+// mutex to lock setMmos_worker operations 
+static pthread_mutex_t setMmos_mutex = PTHREAD_MUTEX_INITIALIZER;
+static int nextMosaic = 0;
+
+// we have an array of mosaics (mosaic, Nmosaic).  we need to hand out mosaics one at a time to
+// the worker threads as they need
+off_t getNextMosaicForThread () {
+
+  pthread_mutex_lock (&setMmos_mutex);
+  if (nextMosaic >= Nmosaic) {
+    pthread_mutex_unlock (&setMmos_mutex);
+    return (-1);
+  }
+  int thisMosaic = nextMosaic;
+  nextMosaic ++;
+
+  pthread_mutex_unlock (&setMmos_mutex);
+  return (thisMosaic);
+}
+
+int setMmos (Catalog *catalog, int PoorImages, FlatCorrectionTable *flatcorr) {
+
+  off_t i, N, Nmax;
   Image *image;
 
@@ -370,9 +719,16 @@
   if (FREEZE_MOSAICS) return (FALSE);
 
+  if (NTHREADS) {
+    int status = setMmos_threaded (catalog, PoorImages, flatcorr);
+    return status;
+  }
+
   image = getimages (&N, NULL);
 
-  Nsecfilt = GetPhotcodeNsecfilt ();
+  fprintf (stderr, "limiting negative clouds to %f\n", CLOUD_TOLERANCE);
 
   if (PoorImages) {
+    // XXX use bad stars and measurements for PoorImages? or not?
+    // IMAGE_BAD = STAR_BAD = MEAS_BAD = 0;
     IMAGE_BAD = 0;
   }
@@ -380,93 +736,18 @@
   Nmax = 0;
   for (i = 0; i < Nmosaic; i++) {
-    Nmax = MAX (Nmax, Nlist[i]);
-  }
-  ALLOCATE (list, double, Nmax);
-  ALLOCATE (dlist, double, Nmax);
-  ALLOCATE (Mlist, double, Nmax);
-  ALLOCATE (dMlist, double, Nmax);
-
-  Nfew = Nbad = Ncal = Nrel = Ngrid = Nsys = 0;
-
-  for (i = 0; i < Nmosaic; i++) {
-    
-    /* on PoorImages run, skip good images */
-    if (PoorImages) {
-      bad = mosaic[i].flags & (ID_IMAGE_PHOTOM_FEW | ID_IMAGE_PHOTOM_POOR | ID_IMAGE_PHOTOM_SKIP);
-      if (!bad) continue;
-    }      
-
-    N = 0;
-    for (j = 0; j < Nlist[i]; j++) {
-      
-      m = mlist[i][j];
-      c = clist[i][j];
-      
-      if (catalog[c].measureT[m].dbFlags & MEAS_BAD) {
-	  Nbad ++;
-	  continue;
-      }
-      Mcal  = getMcal  (m, c);
-      if (isnan(Mcal)) {
-	  Ncal++;
-	  continue;
-      }
-      Mgrid = getMgrid (m, c);
-      if (isnan(Mgrid)) {
-	  Ngrid ++;
-	  continue;
-      }
-      Mrel  = getMrel  (catalog, m, c);
-      if (isnan(Mrel)) {
-	  Nrel ++;
-	  continue;
-      }
-      
-      n = catalog[c].measureT[m].averef;
-      Msys = PhotSysTiny (&catalog[c].measureT[m], &catalog[c].averageT[n], &catalog[c].secfilt[n*Nsecfilt]);
-      if (isnan(Msys)) {
-	Nsys++;
-	continue;
-      }
-      list[N]  = Msys - Mrel - Mcal - Mgrid;
-      dlist[N] = MAX (catalog[c].measureT[m].dM, MIN_ERROR);
-      Mlist[N] = Msys;
-      dMlist[N] = list[N];
-      N++;
-    }
-    /* Nlist[i] is all measurements, N is good measurements */
-
-    /* too few good measurements or too many bad measurements (skip in PoorImages run) */
-
-    if (!PoorImages) {
-      mark = (N < IMAGE_TOOFEW) || (N < IMAGE_GOOD_FRACTION*Nlist[i]);
-      if (mark) {
-	if (VERBOSE2) { fprintf (stderr, "marked mosaic %s ("OFF_T_FMT"), ("OFF_T_FMT" < %d) || ("OFF_T_FMT" < %f*"OFF_T_FMT")\n", image[imlist[i][0]].name,  i,  N, IMAGE_TOOFEW,  N, IMAGE_GOOD_FRACTION,  Nlist[i]); }
-	mosaic[i].flags |= ID_IMAGE_PHOTOM_FEW;
-	Nfew ++;
-      } else {
-	mosaic[i].flags &= ~ID_IMAGE_PHOTOM_FEW;
-      }
-    }
-    liststats (list, dlist, N, &stats);
-    if (PoorImages) fprintf (stderr, "Mmos: %f %f %d "OFF_T_FMT"\n", stats.mean, stats.sigma, stats.Nmeas,  N);
-
-    float CLOUD_TOLERANCE = 0.01;
-    mosaic[i].Mcal  = stats.mean;
-    mosaic[i].dMcal = stats.error;
-    mosaic[i].dMsys = stats.sigma;
-    mosaic[i].nFitPhotom = N;
-    mosaic[i].Xm    = 100.0*log10(stats.chisq);
-
-    if (mosaic[i].Mcal < -CLOUD_TOLERANCE) {
-      mosaic[i].Mcal = 0.0;
-    }
-  }
-  free (list);
-  free (dlist);
-  free (Mlist);
-  free (dMlist);
-
-  fprintf (stderr, "%d mosaics marked having too few measurements (Nbad: %d, Ncal: %d, Ngrid: %d, Nrel: %d, Nsys: %d)\n", Nfew, Nbad, Ncal, Ngrid, Nrel, Nsys);
+    Nmax = MAX (Nmax, N_onMosaic[i]);
+  }
+
+  SetMmosInfo info;
+  SetMmosInfoInit (&info, Nmax, TRUE, PoorImages);
+
+  for (i = 0; i < Nmosaic; i++) {
+    setMmos_mosaic (&mosaic[i], i, image, catalog, &info, flatcorr);
+  }
+  SetMmosInfoFree (&info);
+
+  npass_output ++;
+
+  fprintf (stderr, "%d mosaics marked having too few measurements (Nbad: %d, Ncal: %d, Ngrid: %d, Nrel: %d, Nsys: %d)\n", info.Nfew, info.Nbad, info.Ncal, info.Ngrid, info.Nrel, info.Nsys);
 
   if (PoorImages) {
@@ -478,7 +759,345 @@
 }
   
+// 'mosaic' is a pointer to the current mosaic of interest (Nmos)
+int setMmos_mosaic (Mosaic *myMosaic, off_t Nmos, Image *image, Catalog *catalog, SetMmosInfo *info, FlatCorrectionTable *flatcorr) {
+
+  Image *imageReal;
+  off_t j, NimageReal;
+
+  StatType stats;
+  liststats_setmode (&stats, STATMODE);
+
+  double *list   = info->list;
+  double *dlist  = info->dlist;
+  double *Mlist  = info->Mlist;
+  double *dMlist = info->dMlist;
+
+  assert (Nmos >= 0);
+  assert (Nmos < Nmosaic);
+
+  imageReal = getimages (&NimageReal, NULL);
+
+  /* on PoorImages run, skip good images */
+  if (info->PoorImages) {
+    int bad = myMosaic[0].flags & (ID_IMAGE_PHOTOM_FEW | ID_IMAGE_PHOTOM_POOR | ID_IMAGE_PHOTOM_SKIP);
+    if (!bad) return TRUE;
+  }      
+
+  // UBERCAL image: if this is an ubercal image, set minUbercalDist to 0:
+  // we optionally do not recalibrate images with UBERCAL zero points 
+  if (myMosaic[0].flags & ID_IMAGE_PHOTOM_UBERCAL) {
+    myMosaic[0].ubercalDist = 0;
+    // propagate ubercalDist to the images
+    for (j = 0; j < MosaicN_Image[Nmos]; j++) {
+      off_t im = MosaicToImage[Nmos][j];
+      assert (im < NimageReal);
+      assert (im >= 0);
+      image[im].ubercalDist = myMosaic[0].ubercalDist;
+      // fprintf (stderr, "%d %d %d\n", (int) i, (int) im, image[im].ubercalDist);
+    }
+    if (KEEP_UBERCAL) return TRUE;
+  }
+
+  int Nsecfilt = GetPhotcodeNsecfilt ();
+
+  int minUbercalDist = 1000;
+
+  // do not modify the calibration for mosaics with partial images loaded (skipCal TRUE)
+  if (myMosaic[0].skipCal) {
+    info->Nskip ++;
+    return TRUE;
+  }
+
+  int testImage = FALSE;
+  // testImage |= (abs(myMosaic[0].start - 1324104046) < 10);
+  // testImage |= (abs(myMosaic[0].start - 1324103823) < 10);
+  // testImage |= (abs(myMosaic[0].start - 1323003245) < 10);
+  // testImage |= (abs(myMosaic[0].start - 1323003069) < 10);
+  // testImage |= (abs(myMosaic[0].start - 1323003125) < 10);
+  // testImage |= (abs(myMosaic[0].start - 1323003300) < 10);
+  // testImage |= (abs(myMosaic[0].start - 1323003365) < 10);
+  // testImage |= (abs(myMosaic[0].start - 1323003191) < 10);
+  // testImage |= (abs(myMosaic[0].start - 1323003014) < 10);
+  // testImage |= (abs(myMosaic[0].start - 1323003484) < 10);
+  // testImage |= (abs(myMosaic[0].start - 1323003419) < 10);
+  // testImage |= (abs(myMosaic[0].start - 1323002949) < 10);
+
+  FILE *fout = NULL;
+  if (testImage) {
+    char filename[64];
+    snprintf (filename, 64, "test.%05d.%02d.dat", (int) Nmos, npass_output);
+    fout = fopen (filename, "w");
+  }
+
+  // number of stars to measure the bright-end scatter
+  int Nbright = 0;
+
+  int N = 0;
+  for (j = 0; j < N_onMosaic[Nmos]; j++) {
+    float Msys, Mrel, Mcal, Mgrid, Mflat;
+      
+    off_t m = MosaicToMeasure[Nmos][j];
+    off_t c = MosaicToCatalog[Nmos][j];
+      
+    if (fout) {
+      Mcal  = getMcal  (m, c, flatcorr, catalog);
+      Mgrid = getMgrid (m, c);
+      Mrel  = getMrel  (catalog, m, c);
+      Mflat = getMflat (m, c, flatcorr, catalog);
+
+      off_t n = catalog[c].measureT[m].averef;
+      Msys = PhotSysTiny (&catalog[c].measureT[m], &catalog[c].averageT[n], &catalog[c].secfilt[n*Nsecfilt]);
+
+      float delta = Msys - Mrel - Mcal - Mgrid + Mflat;
+
+      int isBad = (catalog[c].measureT[m].dbFlags & MEAS_BAD);
+
+      fprintf (fout, "%f %f : %f %f %f %f %f  : %f %d\n", catalog[c].averageT[n].R, catalog[c].averageT[n].D, Msys, Mrel, Mcal, Mgrid, Mflat, delta, isBad);
+    }
+
+    if (catalog[c].measureT[m].dbFlags & MEAS_BAD) {
+      info->Nbad ++;
+      continue;
+    }
+    Mcal  = getMcal  (m, c, flatcorr, catalog);
+    if (isnan(Mcal)) {
+      info->Ncal++;
+      continue;
+    }
+    Mgrid = getMgrid (m, c);
+    if (isnan(Mgrid)) {
+      info->Ngrid ++;
+      continue;
+    }
+    Mrel  = getMrel  (catalog, m, c);
+    if (isnan(Mrel)) {
+      info->Nrel ++;
+      continue;
+    }
+      
+    // image.Mcal is not supposed to include the flat-field correction, so we need to
+    // apply that offset as well here for this image (in other words, each detection is
+    // being compared to the model, excluding the zero point, Mcal.  The model includes
+    // the flat-correction.  NOTE the sign of Mflat (Image.Mcal = Measure.Mcal - Mflat)
+
+    Mflat = getMflat (m, c, flatcorr, catalog);
+
+    off_t n = catalog[c].measureT[m].averef;
+    Msys = PhotSysTiny (&catalog[c].measureT[m], &catalog[c].averageT[n], &catalog[c].secfilt[n*Nsecfilt]);
+    if (isnan(Msys)) {
+      info->Nsys++;
+      continue;
+    }
+
+    PhotCode *code = GetPhotcodebyCode (catalog[c].measureT[m].photcode);
+    if (!code) goto skip;
+    if (code->equiv < 1) goto skip;
+    int Nsec = GetPhotcodeNsec (code->equiv);
+    if (Nsec == -1) goto skip;
+    minUbercalDist = MIN (catalog[c].secfilt[n*Nsecfilt + Nsec].ubercalDist, minUbercalDist);
+
+  skip:
+    assert (N < info->Nmax);
+    assert (N >= 0);
+    assert (Nbright < info->Nmax);
+    assert (Nbright >= 0);
+
+    list[N]  = Msys - Mrel - Mcal - Mgrid + Mflat;
+    dlist[N] = MAX (catalog[c].measureT[m].dM, MIN_ERROR);
+    if (catalog[c].measureT[m].dM < IMFIT_SYS_SIGMA_LIM) {
+      Mlist[Nbright] = list[N];
+      dMlist[Nbright] = dlist[N];
+      Nbright ++;
+    }
+    N++;
+  }
+  /* N_onMosaic[Nmos] is all measurements, N is good measurements */
+
+  if (fout) {
+    fclose (fout);
+  }
+
+  /* too few good measurements or too many bad measurements (skip in PoorImages run) */
+  if (!info->PoorImages) {
+    int mark = (N < IMAGE_TOOFEW) || (N < IMAGE_GOOD_FRACTION*N_onMosaic[Nmos]);
+    if (mark) {
+      if (VERBOSE2) { fprintf (stderr, "marked mosaic %s ("OFF_T_FMT"), (%d < %d) || (%d < %f*"OFF_T_FMT")\n", image[MosaicToImage[Nmos][0]].name,  Nmos,  N, IMAGE_TOOFEW,  N, IMAGE_GOOD_FRACTION,  N_onMosaic[Nmos]); }
+      myMosaic[0].flags |= ID_IMAGE_PHOTOM_FEW;
+      info->Nfew ++;
+      if (testImage) {
+	fprintf (stderr, "NOTE: *** marked test image poor : %d %d %d***\n", (int) N, (int) IMAGE_TOOFEW, (int) (IMAGE_GOOD_FRACTION*N_onMosaic[Nmos]));
+      }
+    } else {
+      myMosaic[0].flags &= ~ID_IMAGE_PHOTOM_FEW;
+    }
+  }
+
+  liststats (list, dlist, NULL, N, &stats);
+  if (VERBOSE2 && info->PoorImages) fprintf (stderr, "Mmos: %f %f %d %d\n", stats.mean, stats.sigma, stats.Nmeas, N);
+
+  myMosaic[0].Mcal  = stats.mean;
+  myMosaic[0].dMcal = stats.error;
+  myMosaic[0].nFitPhotom = N;
+  myMosaic[0].Xm    = 100.0*log10(stats.chisq);
+
+  if (testImage) {
+    fprintf (stderr, "test image %d (%d) %f %f %d ... ", (int) Nmos, myMosaic[0].start, stats.mean, stats.error, myMosaic[0].nFitPhotom);
+  }
+
+  plot_setMcal (list, N, &stats, CLOUD_TOLERANCE);
+
+  // bright end scatter
+  liststats (Mlist, dMlist, NULL, Nbright, &stats);
+  myMosaic[0].dMsys = stats.sigma;
+
+  if (myMosaic[0].Mcal < -CLOUD_TOLERANCE) {
+    myMosaic[0].Mcal = 0.0;
+  }
+
+  if (testImage) {
+    fprintf (stderr, "%f %f  :  %d %f\n", myMosaic[0].Mcal, myMosaic[0].dMsys, myMosaic[0].Xm, pow(10.0, 0.01*myMosaic[0].Xm));
+  }
+
+  // minUbercalDist calculated here is the min value for any star owned by this image
+  // since this particular image is tied to that star, bump its distance by 1
+  myMosaic[0].ubercalDist = minUbercalDist + 1;
+
+  // propagate ubercalDist to the images
+  for (j = 0; j < MosaicN_Image[Nmos]; j++) {
+    off_t im = MosaicToImage[Nmos][j];
+    image[im].ubercalDist = myMosaic[0].ubercalDist;
+    // fprintf (stderr, "%d %d %d\n", (int) i, (int) im, image[im].ubercalDist);
+  }
+  return TRUE;
+}
+  
+int setMmos_threaded (Catalog *catalog, int PoorImages, FlatCorrectionTable *flatcorr) {
+
+  int i;
+  off_t N;
+
+  Image *image = getimages (&N, NULL);
+
+  fprintf (stderr, "limiting negative clouds to %f\n", CLOUD_TOLERANCE);
+
+  if (PoorImages) {
+    // XXX use bad stars and measurements for PoorImages? or not?
+    // IMAGE_BAD = STAR_BAD = MEAS_BAD = 0;
+    IMAGE_BAD = 0;
+  }
+
+  off_t Nmax = 0;
+  for (i = 0; i < Nmosaic; i++) {
+    Nmax = MAX (Nmax, N_onMosaic[i]);
+  }
+
+  SetMmosInfo summary;
+  SetMmosInfoInit (&summary, Nmax, FALSE, PoorImages);
+
+  pthread_attr_t attr;
+  pthread_attr_init (&attr);
+  pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED);
+  
+  pthread_t *threads;
+  ALLOCATE (threads, pthread_t, NTHREADS);
+
+  ThreadInfo *threadinfo;
+  ALLOCATE (threadinfo, ThreadInfo, NTHREADS);
+
+  // each time this function is called, we cycle through the available mosaics
+  // make sure we start at 0
+  nextMosaic = 0;;
+
+  // launch N worker threads
+  for (i = 0; i < NTHREADS; i++) {
+    threadinfo[i].entry = i;
+    threadinfo[i].state = THREAD_RUN;
+    threadinfo[i].catalog  =  catalog;
+    threadinfo[i].image    =    image;
+    threadinfo[i].flatcorr = flatcorr;
+    SetMmosInfoInit (&threadinfo[i].info, Nmax, FALSE, PoorImages);
+    pthread_create (&threads[i], NULL, setMmos_worker, &threadinfo[i]);
+  }
+  pthread_attr_destroy (&attr);
+
+  // wait until all threads have finished
+  while (1) {
+    int allDone = TRUE;
+    for (i = 0; i < NTHREADS; i++) {
+      if (threadinfo[i].state == THREAD_RUN) allDone = FALSE;
+    }
+    if (allDone) {
+      break;
+    }
+    usleep (500000);
+  }
+
+  // all threads are done, free the threads array and grab the info
+  free (threads);
+  
+  // report stats & summary from the threads
+  for (i = 0; i < NTHREADS; i++) {
+    fprintf (stderr, "setMmos thread %d : %d mosaics marked having too few measurements (Nbad: %d, Ncal: %d, Ngrid: %d, Nrel: %d, Nsys: %d), %d partials skipped\n", 
+	     i, 
+	     threadinfo[i].info.Nfew, 
+	     threadinfo[i].info.Nbad, 
+	     threadinfo[i].info.Ncal, 
+	     threadinfo[i].info.Ngrid, 
+	     threadinfo[i].info.Nrel, 
+	     threadinfo[i].info.Nsys,
+      	     threadinfo[i].info.Nskip);
+    SetMmosInfoAccum (&summary, &threadinfo[i].info);
+  }
+  fprintf (stderr, "total : %d mosaics marked having too few measurements (Nbad: %d, Ncal: %d, Ngrid: %d, Nrel: %d, Nsys: %d), %d partials skipped\n", 
+	   summary.Nfew, 
+	   summary.Nbad, 
+	   summary.Ncal, 
+	   summary.Ngrid, 
+	   summary.Nrel, 
+	   summary.Nsys, 
+	   summary.Nskip);
+  free (threadinfo);
+
+  npass_output ++;
+
+  if (PoorImages) {
+    IMAGE_BAD = ID_IMAGE_PHOTOM_POOR | ID_IMAGE_PHOTOM_FEW | ID_IMAGE_PHOTOM_SKIP;
+    STAR_BAD  = ID_STAR_POOR | ID_STAR_FEW;
+    MEAS_BAD  = ID_MEAS_NOCAL | ID_MEAS_POOR_PHOTOM | ID_MEAS_SKIP_PHOTOM | ID_MEAS_AREA;
+  }
+  return TRUE;
+}
+
+void *setMmos_worker (void *data) {
+
+  ThreadInfo *threadinfo = data;
+
+  SetMmosInfo results;
+  SetMmosInfoInit (&results, threadinfo->info.Nmax, TRUE, threadinfo->info.PoorImages); // allocate list, dlist arrays here
+
+  while (1) {
+
+    off_t i = getNextMosaicForThread();
+    if (i == -1) {
+      threadinfo->state = THREAD_DONE;
+      return NULL;
+    }
+
+    Catalog *catalog = threadinfo->catalog;
+    FlatCorrectionTable *flatcorr = threadinfo->flatcorr;
+    Image *image = threadinfo->image;
+
+    setMmos_mosaic (&mosaic[i], i, image, catalog, &results, flatcorr);
+    SetMmosInfoAccum (&threadinfo->info, &results);
+  }
+
+  SetMmosInfoFree (&results);
+  return NULL;
+}
+
 // When we rationalize the images/mosaics, we are driving the negative cloud images back
 // to 0.0.  At the same time, we make a guess to the effective impact on all other images,
 // driven by the coupling of common stars. 
+// XXX this function is no longer used because we force significantly negative clouds to 0.0
 int rationalize_mosaics (Catalog *catalog, int Ncatalog) {
 
@@ -515,5 +1134,5 @@
 
     if (VERBOSE2 && (fabs(mosaic[i].Mcal) < CLOUD_TOLERANCE)) {
-      fprintf (stderr, "cloud-free: %s : %f\n", image[imlist[i][0]].name, mosaic[i].Mcal);
+      fprintf (stderr, "cloud-free: %s : %f\n", image[MosaicToImage[i][0]].name, mosaic[i].Mcal);
     } 
     if (VERBOSE2 && (mosaic[i].Mcal < -CLOUD_TOLERANCE)) {
@@ -521,8 +1140,8 @@
       // NOTE the negative sign: down below, we are going to add in the negative of Mcal
       // to this image, and the propagated mean values for other images
-      fprintf (stderr, "anti-clouds: %s : %f\n", image[imlist[i][0]].name, mosaic[i].Mcal);
+      fprintf (stderr, "anti-clouds: %s : %f\n", image[MosaicToImage[i][0]].name, mosaic[i].Mcal);
     } 
     if (VERBOSE2 && (mosaic[i].Mcal > CLOUD_TOLERANCE)) {
-      fprintf (stderr, "cloudy    : %s : %f\n", image[imlist[i][0]].name, mosaic[i].Mcal);
+      fprintf (stderr, "cloudy    : %s : %f\n", image[MosaicToImage[i][0]].name, mosaic[i].Mcal);
     } 
   }
@@ -579,5 +1198,5 @@
 
 	// find the source of this measurement (skip unassigned measurements)
-	nMos = bin[i][m];
+	nMos = MeasureToMosaic[i][m];
 	if (nMos == -1) continue;
 
@@ -641,9 +1260,9 @@
     }
     imageOffset[i] = dM / NSlist[i];
-    // fprintf (stderr, "adjust image: %s : (%f %d) : %f\n", image[imlist[i][0]].name, dM, NSlist[i], imageOffset[i]);
+    // fprintf (stderr, "adjust image: %s : (%f %d) : %f\n", image[MosaicToImage[i][0]].name, dM, NSlist[i], imageOffset[i]);
   }
 
   // for (i = 0; i < Nmosaic; i++) {
-  //   fprintf (stderr, "correction: %s : %f\n", image[imlist[i][0]].name, imageOffset[i]);
+  //   fprintf (stderr, "correction: %s : %f\n", image[MosaicToImage[i][0]].name, imageOffset[i]);
   // } 
 
@@ -688,4 +1307,5 @@
   for (i = 0; i < Nmosaic; i++) {
     if (mosaic[i].flags & IMAGE_BAD) continue;
+    if (mosaic[i].skipCal) continue;
     list[n] = mosaic[i].Mcal;
     dlist[n] = 1;
@@ -693,5 +1313,7 @@
   }
 
-  liststats (list, dlist, n, &stats);
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (list, dlist, NULL, n, &stats);
   free (list);
   free (dlist);
@@ -714,6 +1336,6 @@
   n = 0;
   for (i = 0; i < Nmosaic; i++) {
-
     if (mosaic[i].flags & IMAGE_BAD) continue;
+    if (mosaic[i].skipCal) continue;
     list[n] = mosaic[i].dMcal;
     dlist[n] = 1;
@@ -721,5 +1343,7 @@
   }
 
-  liststats (list, dlist, n, &stats);
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (list, dlist, NULL, n, &stats);
   free (list);
   free (dlist);
@@ -727,5 +1351,5 @@
 }
 
-StatType statsMosaicN (Catalog *catalog) {
+StatType statsMosaicN (Catalog *catalog, FlatCorrectionTable *flatcorr) {
 
   off_t i, j, m, c, n, N;
@@ -744,12 +1368,13 @@
   for (i = 0; i < Nmosaic; i++) {
     if (mosaic[i].flags & IMAGE_BAD)  continue;
+    if (mosaic[i].skipCal) continue;
 
     N = 0;
-    for (j = 0; j < Nlist[i]; j++) {
-
-      m = mlist[i][j];
-      c = clist[i][j];
-
-      Mcal = getMcal  (m, c);
+    for (j = 0; j < N_onMosaic[i]; j++) {
+
+      m = MosaicToMeasure[i][j];
+      c = MosaicToCatalog[i][j];
+
+      Mcal = getMcal  (m, c, flatcorr, catalog);
       if (isnan(Mcal)) continue;
       Mgrid = getMgrid (m, c);
@@ -765,5 +1390,7 @@
   // fprintf (stderr, "Nmosaic: "OFF_T_FMT", n: "OFF_T_FMT"\n",  Nmosaic,  n);
 
-  liststats (list, dlist, n, &stats);
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (list, dlist, NULL, n, &stats);
   free (list);
   free (dlist);
@@ -786,6 +1413,6 @@
   n = 0;
   for (i = 0; i < Nmosaic; i++) {
-
     if (mosaic[i].flags & IMAGE_BAD) continue;
+    if (mosaic[i].skipCal) continue;
     list[n] = pow(10.0, 0.01*mosaic[i].Xm);
     dlist[n] = 1;
@@ -793,5 +1420,7 @@
   }
 
-  liststats (list, dlist, n, &stats);
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (list, dlist, NULL, n, &stats);
   free (list);
   free (dlist);
@@ -805,5 +1434,4 @@
   double *mlist, *slist, *dlist;
   double MaxOffset, MedOffset, MaxScatter;
-  StatType stats;
 
   if (!MOSAIC_ZEROPT) return;
@@ -818,4 +1446,5 @@
   for (i = N = 0; i < Nmosaic; i++) {
     if (mosaic[i].flags & IMAGE_BAD) continue;
+    if (mosaic[i].skipCal) continue;
     mlist[N] = mosaic[i].Mcal;
     slist[N] = mosaic[i].dMcal;
@@ -823,9 +1452,13 @@
     N++;
   }
-  initstats ("MEAN");
-  liststats (mlist, dlist, N, &stats);
+
+  StatType stats;
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (mlist, dlist, NULL, N, &stats);
   MaxOffset = MAX (IMAGE_OFFSET, 2*stats.sigma);
   MedOffset = stats.median;
-  liststats (slist, dlist, N, &stats);
+
+  liststats (slist, dlist, NULL, N, &stats);
   MaxScatter = MAX (IMAGE_SCATTER, 2*stats.median);
   fprintf (stderr, "Mrel: %f, dMrel: %f, Max Scatter: %f, Max Offset: %f\n", MedOffset, stats.median, MaxScatter, MaxOffset);
@@ -833,4 +1466,10 @@
   Nmark = Nscatter = Noffset = 0;
   for (i = 0; i < Nmosaic; i++) {
+    // if we are keeping ubercal sacrosanct, then we should not be allowed to break them...
+    if (KEEP_UBERCAL && (mosaic[i].flags & ID_IMAGE_PHOTOM_UBERCAL)) continue;
+
+    if (mosaic[i].flags & (ID_IMAGE_PHOTOM_FEW | ID_IMAGE_PHOTOM_SKIP)) continue;
+    if (mosaic[i].skipCal) continue;
+
     mark = FALSE;
     if (mosaic[i].dMcal > MaxScatter) {
@@ -851,5 +1490,5 @@
 
   fprintf (stderr, OFF_T_FMT" mosaics marked poor ("OFF_T_FMT" scatter, "OFF_T_FMT" offset)\n",  Nmark, Nscatter, Noffset);
-  initstats (STATMODE);
+
   free (mlist);
   free (slist);
@@ -872,5 +1511,5 @@
   N = 0;
   for (i = 0; i < Nmosaic; i++) 
-    N = MAX (N, Nlist[i]);
+    N = MAX (N, N_onMosaic[i]);
 
   ALLOCATE (xlist, double, N);
@@ -881,8 +1520,8 @@
     Xmin = Ymin = +360.0;
     Xmax = Ymax = -360.0;
-    for (j = 0; j < Nlist[i]; j++) {
+    for (j = 0; j < N_onMosaic[i]; j++) {
       
-      m = mlist[i][j];
-      c = clist[i][j];
+      m = MosaicToMeasure[i][j];
+      c = MosaicToCatalog[i][j];
       
       if (catalog[c].measureT[m].dbFlags & (ID_MEAS_AREA | ID_MEAS_NOCAL)) continue;
@@ -959,9 +1598,9 @@
 
   Imax = 0;
-  Nmax = Nimlist[0];
-  for (i = 0; i < Nmosaic; i++) {
-    if (Nimlist[i] > Nmax) {
+  Nmax = MosaicN_Image[0];
+  for (i = 0; i < Nmosaic; i++) {
+    if (MosaicN_Image[i] > Nmax) {
       Imax = i;
-      Nmax = Nimlist[i];
+      Nmax = MosaicN_Image[i];
     }
   }
@@ -969,4 +1608,4 @@
   *refmosaic = &mosaic[Imax];
   *Nimage = Nmax;
-  return (imlist[Imax]);
-}
+  return (MosaicToImage[Imax]);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/SetSignals.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/SetSignals.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/SetSignals.c	(revision 34041)
@@ -30,7 +30,8 @@
   for (i = 0; i < 36; i++) {
     switch (i) {
-      /* can't redirect this signals */
+      /* can't redirect these signals */
     case SIGKILL:    /* kill -9: cannot be caught or ignored */
     case SIGSTOP:    /* SIGSTOP: cannot be caught or ignored */
+
       /* ignore these signals */
     case SIGCHLD:    /* child halted: ignore */
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/Shutdown.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/Shutdown.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/Shutdown.c	(revision 34041)
@@ -1,5 +1,5 @@
 # include "relphot.h"
 
-static FITS_DB *db;
+static FITS_DB *db = NULL;
 
 void set_db (FITS_DB *in) {
@@ -22,5 +22,5 @@
 
   SetProtect (TRUE);
-  gfits_db_close (db);
+  if (db) gfits_db_close (db);
   fprintf (stderr, "ERROR: addstar halted\n");
   exit (1);
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/StarOps.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/StarOps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/StarOps.c	(revision 34041)
@@ -2,13 +2,39 @@
 
 static int Nmax;
-static double *list;
-static double *dlist;
-
-// When we rationalize the images/mosaics, we are driving the negative cloud images back
-// to 0.0.  At the same time, we make a guess to the effective impact on all other images,
-// driven by the coupling of common stars.  This array carries the impact of those offsets
-// on each star
-static double *Moffset;
-
+
+typedef struct {
+  int Nfew;
+  int Ncode;
+  int Nsys;
+  int Nbad;
+  int Ncal;
+  int Nmos;
+  int Ngrid;
+  double *list;
+  double *dlist;
+  double *wlist;
+  double *aplist;
+  double *daplist;
+} SetMrelInfo;
+
+enum {THREAD_RUN, THREAD_DONE};
+
+typedef struct {
+  int entry;
+  int state;
+  Catalog *catalog;
+  int Ncatalog;
+  FlatCorrectionTable *flatcorr;
+  SetMrelInfo summary;
+} ThreadInfo;
+
+// ** internal functions:
+void *setMrel_worker (void *data);
+int setMrel_threaded (Catalog *catalog, int Ncatalog, FlatCorrectionTable *flatcorr);
+int setMrel_catalog (Catalog *catalog, int Nc, int pass, FlatCorrectionTable *flatcorr, SetMrelInfo *results, int Nsecfilt);
+int print_measure_set (Average *average, SecFilt *secfilt, Measure *measure);
+
+// we want to allocate the stats list,dlist arrays only once (or once per thread).
+// this function finds the largest array so we can allocate that max size when needed
 void initMrel (Catalog *catalog, int Ncatalog) {
 
@@ -21,8 +47,4 @@
     }
   }
-
-  ALLOCATE (list,    double, MAX (1, Nmax));
-  ALLOCATE (dlist,   double, MAX (1, Nmax));
-  ALLOCATE (Moffset, double, MAX (1, Nmax));
 }  
 
@@ -47,311 +69,554 @@
 }
 
-int setMrel (Catalog *catalog, int Ncatalog) {
+void SetMrelInfoInit (SetMrelInfo *results, int allocLists) {
+  results->Nfew  = 0;
+  results->Ncode  = 0;
+  results->Nsys  = 0;
+  results->Nbad  = 0;
+  results->Ncal  = 0;
+  results->Nmos  = 0;
+  results->Ngrid = 0;
+  if (allocLists) {
+    ALLOCATE (results->list,  double, Nmax);
+    ALLOCATE (results->dlist, double, Nmax);
+    ALLOCATE (results->wlist, double, Nmax);
+  }
+}
+
+void SetMrelInfoFree (SetMrelInfo *results) {
+  free (results->list);
+  free (results->dlist);
+  free (results->wlist);
+}
+
+void SetMrelInfoAccum (SetMrelInfo *summary, SetMrelInfo *results) {
+  summary->Nfew  += results->Nfew ;
+  summary->Ncode  += results->Ncode ;
+  summary->Nsys  += results->Nsys ;
+  summary->Nbad  += results->Nbad ;
+  summary->Ncal  += results->Ncal ;
+  summary->Nmos  += results->Nmos ;
+  summary->Ngrid += results->Ngrid;
+}
+
+// mutex to lock setMrel_worker operations 
+static pthread_mutex_t setMrel_mutex = PTHREAD_MUTEX_INITIALIZER;
+static int nextCatalog = 0;
+
+// we have an array of catalogs (catalog, Ncatalog).  we need to hand out catalogs one at a time to
+// the worker threads as they need
+off_t getNextCatalogForThread (int Ncatalog) {
+
+  pthread_mutex_lock (&setMrel_mutex);
+  if (nextCatalog >= Ncatalog) {
+    pthread_mutex_unlock (&setMrel_mutex);
+    return (-1);
+  }
+  int thisCatalog = nextCatalog;
+  nextCatalog ++;
+
+  pthread_mutex_unlock (&setMrel_mutex);
+  return (thisCatalog);
+}
+
+// setMrel and setMrelOutput are extremely similar, but have slightly different implications:
+// * setMrel uses the internal Tiny structures only
+// * setMrelOutput skips stars for which there are too few good measurements 
+// * setMrelOutput is meant to be called repeatedly, relaxing the criteria for 'good' on each pass
+// * setMrelOutput updates 2MASS average flags
+// * setMrelOutput updates average EXT flags (PS1 and 2MASS)
+
+int setMrel (Catalog *catalog, int Ncatalog, FlatCorrectionTable *flatcorr) {
+
+  int i;
+
+  if (NTHREADS) {
+    int status = setMrel_threaded (catalog, Ncatalog, flatcorr);
+    return status;
+  }
+
+  int Nsecfilt = GetPhotcodeNsecfilt ();
+
+  SetMrelInfo summary, results;
+  SetMrelInfoInit (&summary, FALSE);
+  SetMrelInfoInit (&results, TRUE);
+
+  for (i = 0; i < Ncatalog; i++) {
+    // pass == -1 for anything other than the final pass
+    setMrel_catalog (catalog, i, -1, flatcorr, &results, Nsecfilt);
+    SetMrelInfoAccum (&summary, &results);
+  }
+  if (VERBOSE2) fprintf (stderr, "%d stars with no data in photcode, %d stars marked having too few measurements (Nbad: %d, Ncal: %d, Nmos: %d, Ngrid: %d, Nsys: %d)\n", summary.Ncode, summary.Nfew, summary.Nbad, summary.Ncal, summary.Nmos, summary.Ngrid, summary.Nsys);
+
+  SetMrelInfoFree (&results);
+
+  return (TRUE);
+}
+
+int setMrelOutput (Catalog *catalog, int Ncatalog, int pass, FlatCorrectionTable *flatcorr) {
+
+  int i;
+
+  int Nsecfilt = GetPhotcodeNsecfilt ();
+
+  SetMrelInfo summary, results;
+  SetMrelInfoInit (&summary, FALSE);
+  SetMrelInfoInit (&results, TRUE); // allocates results->list,dlist,wlist
+  ALLOCATE (results.aplist, double, Nmax);
+  ALLOCATE (results.daplist, double, Nmax);
+
+  for (i = 0; i < Ncatalog; i++) {
+    setMrel_catalog  (catalog, i, pass, flatcorr, &results, Nsecfilt); // XXX add arguments as needed for options
+    SetMrelInfoAccum (&summary, &results);
+  }
+  if (VERBOSE2) fprintf (stderr, "%d stars with no data in photcode, %d stars marked having too few measurements (Nbad: %d, Ncal: %d, Nmos: %d, Ngrid: %d, Nsys: %d)\n", summary.Ncode, summary.Nfew, summary.Nbad, summary.Ncal, summary.Nmos, summary.Ngrid, summary.Nsys);
+
+  SetMrelInfoFree (&results);
+  free (results.aplist);
+  free (results.daplist);
+  return (TRUE);
+}
+
+int setMrel_threaded (Catalog *catalog, int Ncatalog, FlatCorrectionTable *flatcorr) {
+
+  int i;
+
+  SetMrelInfo summary;
+  SetMrelInfoInit (&summary, FALSE);
+
+  pthread_attr_t attr;
+  pthread_attr_init (&attr);
+  pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED);
+  
+  pthread_t *threads;
+  ALLOCATE (threads, pthread_t, NTHREADS);
+
+  ThreadInfo *threadinfo;
+  ALLOCATE (threadinfo, ThreadInfo, NTHREADS);
+
+  // each time this function is called, we cycle through the available catalogs.
+  // make sure we start at 0
+  nextCatalog = 0;;
+
+  // launch N worker threads
+  for (i = 0; i < NTHREADS; i++) {
+    threadinfo[i].entry = i;
+    threadinfo[i].state = THREAD_RUN;
+    threadinfo[i].catalog  =  catalog;
+    threadinfo[i].Ncatalog = Ncatalog;
+    threadinfo[i].flatcorr = flatcorr;
+    SetMrelInfoInit (&threadinfo[i].summary, FALSE);
+    pthread_create (&threads[i], NULL, setMrel_worker, &threadinfo[i]);
+  }
+  pthread_attr_destroy (&attr);
+
+  // wait until all threads have finished
+  while (1) {
+    int allDone = TRUE;
+    for (i = 0; i < NTHREADS; i++) {
+      if (threadinfo[i].state == THREAD_RUN) allDone = FALSE;
+    }
+    if (allDone) {
+      break;
+    }
+    usleep (500000);
+  }
+
+  // all threads are done, free the threads array and grab the info
+  free (threads);
+  
+  // report stats & summary from the threads
+  for (i = 0; i < NTHREADS; i++) {
+    if (VERBOSE2) fprintf (stderr, "setMrel thread %d : %d stars with no data in photcode, %d stars marked having too few measurements (Nbad: %d, Ncal: %d, Nmos: %d, Ngrid: %d, Nsys: %d)\n", 
+	     i, 
+	     threadinfo[i].summary.Ncode, 
+	     threadinfo[i].summary.Nfew, 
+	     threadinfo[i].summary.Nbad, 
+	     threadinfo[i].summary.Ncal, 
+	     threadinfo[i].summary.Nmos, 
+	     threadinfo[i].summary.Ngrid, 
+	     threadinfo[i].summary.Nsys);
+    SetMrelInfoAccum (&summary, &threadinfo[i].summary);
+  }
+  if (VERBOSE2) fprintf (stderr, "total : %d stars with no data in photcode, %d stars marked having too few measurements (Nbad: %d, Ncal: %d, Nmos: %d, Ngrid: %d, Nsys: %d)\n", summary.Ncode, summary.Nfew, summary.Nbad, summary.Ncal, summary.Nmos, summary.Ngrid, summary.Nsys);
+  free (threadinfo);
+
+  return TRUE;
+}
+
+void *setMrel_worker (void *data) {
+
+  ThreadInfo *threadinfo = data;
+
+  int Nsecfilt = GetPhotcodeNsecfilt ();
+
+  SetMrelInfo results;
+  SetMrelInfoInit (&results, TRUE); // allocate list, dlist arrays here
+
+  while (1) {
+
+    off_t i = getNextCatalogForThread(threadinfo->Ncatalog);
+    if (i == -1) {
+      threadinfo->state = THREAD_DONE;
+      return NULL;
+    }
+
+    Catalog *catalog = threadinfo->catalog;
+    FlatCorrectionTable *flatcorr = threadinfo->flatcorr;
+
+    // pass == -1 for anything other than the final pass
+    setMrel_catalog (catalog, i, -1, flatcorr, &results, Nsecfilt);
+    SetMrelInfoAccum (&threadinfo->summary, &results);
+  }
+
+  SetMrelInfoFree (&results);
+  return NULL;
+}
+
+# define SKIP_THIS_MEAS(REASON) {				\
+    catalog[Nc].measureT[m].dbFlags |= ID_MEAS_SKIP_PHOTOM;	\
+    if (catalog[Nc].measure) {					\
+      catalog[Nc].measure [m].dbFlags |= ID_MEAS_SKIP_PHOTOM;	\
+    }								\
+    results->REASON ++;						\
+    continue; }
+
+
+// setMrel_catalog is used in 3 different contexts:
+
+// * during the main relphot iterations:
+// ** operations only apply to measureT / averageT
+// ** we are applying the analysis to the bright subset catalog
+// ** we skip any stars found to be bad (STAR_BAD)
+
+// * during the final pass
+// ** operations are applied to all objects
+// ** we have special tests for PS1 extended data, 2MASS extended & good data, & synthetic photometry
+
+// * during the stand-alone '-averages' mode (relphot_objects)
+// ** no image data is loaded
+// ** we only use the provided calibration (measure.Mcal)
+// ** we skip outlier rejection of measurements
+
+// set the Mrel values for the specified catalog
+// NOTE: here 'catalog' is a pointer to a specific catalog, not the root of the array
+int setMrel_catalog (Catalog *catalog, int Nc, int pass, FlatCorrectionTable *flatcorr, SetMrelInfo *results, int Nsecfilt) {
 
   off_t j, k, m;
-  int i, N, Nfew, Nsys, Nbad, Ncal, Nmos, Ngrid;
+  int N;
   float Msys, Mcal, Mmos, Mgrid;
-  StatType stats;
-
-  int Nsecfilt = GetPhotcodeNsecfilt ();
-  Nfew = Nsys = Nbad = Ncal = Nmos = Ngrid = 0;
-
-  for (i = 0; i < Ncatalog; i++) {
-    for (j = 0; j < catalog[i].Naverage; j++) {
-
-      int Ns;
-      for (Ns = 0; Ns < Nphotcodes; Ns++) {
-
-	int thisCode = photcodes[Ns][0].code;
-	int Nsec = GetPhotcodeNsec(thisCode);
-
-	/* calculate the average value for a single star */
-
-	// skip bad stars
-	if (catalog[i].secfilt[Nsecfilt*j+Nsec].flags & STAR_BAD) continue;
-	m = catalog[i].averageT[j].measureOffset;
-
-	N = 0;
-	for (k = 0; k < catalog[i].averageT[j].Nmeasure; k++, m++) {
-	  // skip measurements that do not match the current photcode
-	  int ecode = GetPhotcodeEquivCodebyCode (catalog[i].measureT[m].photcode);
-	  if (ecode != thisCode) { continue; }
-
-	  if (catalog[i].measureT[m].dbFlags & MEAS_BAD) {
-	    Nbad ++;
-	    continue;
-	  }
-	  // XXX allow REF stars (no Image Entry) to be included in the calculation this
-	  // should be optionally set, and should allow for REF stars to be downweighted by
-	  // more than their reported errors.  how such info is carried is unclear...
-	  if (getImageEntry (m, i) < 0) {
-	    Mcal = Mmos = Mgrid = 0;
-	  } else {
-	    Mcal  = getMcal  (m, i);
-	    if (isnan(Mcal)) { 
-	      Ncal ++;
-	      continue;
-	    }
-	    Mmos  = getMmos  (m, i);
-	    if (isnan(Mmos)) {
-	      Nmos ++;
-	      continue;
-	    }
-	    Mgrid = getMgrid (m, i);
-	    if (isnan(Mgrid)) {
-	      Ngrid++;
-	      continue;
-	    }
-	  }
-
-	  Msys = PhotSysTiny (&catalog[i].measureT[m], &catalog[i].averageT[j], &catalog[i].secfilt[j*Nsecfilt]);
-	  if (isnan(Msys)) {
-	    Nsys++;
-	    continue;
-	  }
-	  list[N] = Msys - Mcal - Mmos - Mgrid;
-	  dlist[N] = MAX (catalog[i].measureT[m].dM, MIN_ERROR);
-
-	  // tie down reference photometry if the -refcode (code) option is selected
-	  if (refPhotcode) {
-	    if (GetPhotcodeEquivCodebyCode(catalog[i].measureT[m].photcode) == refPhotcode[0].equiv) {
-	      // increase the weight by a factor of 100:
-	      dlist[N] = 0.01*catalog[i].measureT[m].dM;
-	    }
-	  }
-	  N++;
-	}
-
-	// when performing the grid analysis, STAR_TOOFEW will be set to 1;
-	if (N <= STAR_TOOFEW) { /* too few measurements */
-	  catalog[i].secfilt[Nsecfilt*j+Nsec].flags |= ID_STAR_FEW;
-	  Nfew ++;
+
+  StatType stats, apstats;
+  liststats_setmode (&stats, STATMODE);
+  liststats_setmode (&apstats, STATMODE);
+
+  double *list    = results->list;
+  double *dlist   = results->dlist;
+  double *wlist   = results->wlist;
+  double *aplist  = results->aplist;
+  double *daplist = results->daplist;
+
+  SetMrelInfoInit (results, FALSE); // do not allocate list,dlist,wlist arrays
+
+  int isSetMrelFinal = (pass >= 0);
+
+  for (j = 0; j < catalog[Nc].Naverage; j++) {
+    // XXX accumulate all secfilt values in a single pass?
+
+    // option for a test print
+    if (FALSE && (catalog[Nc].average[j].objID == 0x46a4) && (catalog[Nc].average[j].catID == 0xf40e)) {
+      fprintf (stderr, "test obj\n");
+      print_measure_set (&catalog[Nc].average[j], &catalog[Nc].secfilt[j*Nsecfilt], catalog[Nc].measure);
+    }
+
+    int GoodPS1 = FALSE;
+    int Good2MASS = FALSE;
+    int Galaxy2MASS = FALSE;
+
+    int NextPS1 = 0;
+    int NpsfPS1 = 0;
+
+    int Ns;
+    for (Ns = 0; Ns < Nphotcodes; Ns++) {
+
+      int thisCode = photcodes[Ns][0].code;
+      int Nsec = GetPhotcodeNsec(thisCode);
+
+      /* calculate the average mag in this SEC photcode for a single star */
+
+      /* star/photcodes already calibrated */
+      if ( isSetMrelFinal && catalog[Nc].found[Nsecfilt*j+Nsec]) continue;  
+      
+      // skip bad stars
+      if (!isSetMrelFinal && (catalog[Nc].secfilt[Nsecfilt*j+Nsec].flags & STAR_BAD)) continue;
+
+      int Ncode = 0;
+      int Next = 0;
+      int haveSynth = FALSE;
+
+      int forceSynth = FALSE;
+      int forceSynthEntry = -1;
+
+      int haveUbercal = FALSE;
+
+      int minUbercalDist = 1000;
+    
+      N = 0;
+      m = catalog[Nc].averageT[j].measureOffset;
+      for (k = 0; k < catalog[Nc].averageT[j].Nmeasure; k++, m++) {
+
+	// skip measurements that do not match the current photcode
+	PhotCode *code = GetPhotcodebyCode (catalog[Nc].measureT[m].photcode);
+	if (!code) continue;
+	if (code->equiv != thisCode) { continue; }
+	Ncode ++;
+
+	if (catalog[Nc].measureT[m].dbFlags & MEAS_BAD) SKIP_THIS_MEAS(Nbad); 
+
+	if (getImageEntry (m, Nc) < 0) {
+	  // measurements without an image are either external reference photometry or
+	  // data for which the associated image has not been loaded (probably because of
+	  // overlaps).  Msys + measure.Mcal is our best guess of the true magnitude
+	  Mmos = Mgrid = 0;
+	  Mcal = catalog[Nc].measureT[m].Mcal; // check that this is zero for loaded REF value
 	} else {
-	  catalog[i].secfilt[Nsecfilt*j+Nsec].flags &= ~ID_STAR_FEW;
-	}	
-
-	liststats (list, dlist, N, &stats);
-
-	catalog[i].secfilt[Nsecfilt*j+Nsec].M  = stats.mean;
-	catalog[i].secfilt[Nsecfilt*j+Nsec].dM = stats.sigma;
-	catalog[i].secfilt[Nsecfilt*j+Nsec].Xm = (stats.Nmeas > 1) ? 100.0*log10(stats.chisq) : NAN_S_SHORT;
-      }
-    }
-  }
-  fprintf (stderr, "%d stars marked having too few measurements (Nbad: %d, Ncal: %d, Nmos: %d, Ngrid: %d, Nsys: %d)\n", Nfew, Nbad, Ncal, Nmos, Ngrid, Nsys);
-
-  return (TRUE);
-}
-
-int setMrelOutput (Catalog *catalog, int Ncatalog, int mark) {
-
-  int i, N;
-  off_t j, k, m, Nmax;
-  float Msys, Mcal, Mmos, Mgrid;
-  double *list, *dlist;
-  StatType stats;
-  int Nsec, Nsecfilt, ecode;
-
-  Nsecfilt = GetPhotcodeNsecfilt ();
-
-  /* Nmeasure is now different, need to reallocate */
-  Nmax = 0;
-  for (i = 0; i < Ncatalog; i++) {
-    for (j = 0; j < catalog[i].Naverage; j++) {
-      Nmax = MAX (Nmax, catalog[i].averageT[j].Nmeasure);
-    }
-  }
-  ALLOCATE (list, double, MAX (1, Nmax));
-  ALLOCATE (dlist, double, MAX (1, Nmax));
-
-  for (i = 0; i < Ncatalog; i++) {
-    for (j = 0; j < catalog[i].Naverage; j++) {
-      /* skip stars already calibrated */
-      if (catalog[i].found[j]) continue;  
-
-      int Ns;
-      for (Ns = 0; Ns < Nphotcodes; Ns++) {
-	int thisCode = photcodes[Ns][0].code;
-	Nsec = GetPhotcodeNsec(thisCode);
-
-	N = 0;
-	m = catalog[i].averageT[j].measureOffset;
-	for (k = 0; k < catalog[i].averageT[j].Nmeasure; k++, m++) {
-	  // skip measurements that do not match the current photcode
-	  ecode = GetPhotcodeEquivCodebyCode (catalog[i].measureT[m].photcode);
-	  if (ecode != thisCode) { continue; }
-
-	  if (catalog[i].measureT[m].dbFlags & MEAS_BAD) continue;
-
-	  // XXX allow REF stars (no Image Entry) to be included in the calculation this
-	  // should be optionally set, and should allow for REF stars to be downweighted by
-	  // more than their reported errors.  how such info is carried is unclear...
-	  if (getImageEntry (m, i) < 0) {
-	    Mcal = Mmos = Mgrid = 0;
-	  } else {
-	    Mcal  = getMcal  (m, i);
-	    if (isnan(Mcal)) continue;
-	    Mmos  = getMmos  (m, i);
-	    if (isnan(Mmos)) continue;
-	    Mgrid = getMgrid (m, i);
-	    if (isnan(Mgrid)) continue;
-	  }
-
-	  Msys = PhotSysTiny (&catalog[i].measureT[m], &catalog[i].averageT[j], &catalog[i].secfilt[j*Nsecfilt]);
-	  list[N] = Msys - Mcal - Mmos - Mgrid;
-	  dlist[N] = MAX (catalog[i].measureT[m].dM, MIN_ERROR);
-	  N++;
-	}
-	if (N < 1) continue;
-
-	liststats (list, dlist, N, &stats);
-	if (mark) catalog[i].found[j] = TRUE;
-
-	/* use sigma or error in dM for output? */
-	catalog[i].secfilt[Nsecfilt*j+Nsec].M  = stats.mean;
-	catalog[i].secfilt[Nsecfilt*j+Nsec].dM = MAX (stats.error, stats.sigma);
-	catalog[i].secfilt[Nsecfilt*j+Nsec].Xm = (stats.Nmeas > 1) ? 100.0*log10(stats.chisq) : NAN_S_SHORT;
-      }
-    }
-  }
-
-  free (list);
-  free (dlist);
-  return (TRUE);
-}
-
-// For each average object, set the average mags based on existing equiv photometry.
-// NOTE: this function operates on the real Measure & Average structures, not the
-// MeasureTiny & AverageTiny structures
-int setMave (Catalog *catalog, int Ncatalog) {
-
-  off_t j, k, m, Nmax;
-  int i, Ns, Nsecfilt, N, Nc;
-  float Msys;
-  double *list, *dlist;
-  StatType stats;
-  PhotCode *code;
-  DVOAverageFlags flagBits;
-
-  flagBits = ID_OBJ_EXT | ID_OBJ_EXT_ALT | ID_OBJ_GOOD | ID_OBJ_GOOD_ALT;
-
-  // pre-allocate a list for stats purposes
-  Nmax = 0;
-  for (i = 0; i < Ncatalog; i++) {
-    for (j = 0; j < catalog[i].Naverage; j++) {
-      Nmax = MAX (Nmax, catalog[i].average[j].Nmeasure);
-    }
-  }
-  ALLOCATE (list, double, MAX (1, Nmax));
-  ALLOCATE (dlist, double, MAX (1, Nmax));
-
-  Nsecfilt = GetPhotcodeNsecfilt ();
-
-# define PSFQUALSTATS 1
-  for (i = 0; i < Ncatalog; i++) {
-    for (j = 0; j < catalog[i].Naverage; j++) {
-
-      // update average photometry for each of the average filters
-      for (Ns = 0; Ns < Nsecfilt; Ns++) {
-
-	code = GetPhotcodebyNsec (Ns);
-	Nc = code[0].code;
-	
-	N = 0;
-	m = catalog[i].average[j].measureOffset;
-	for (k = 0; k < catalog[i].average[j].Nmeasure; k++, m++) {
-	  if (catalog[i].measure[m].dbFlags & MEAS_BAD) continue;
-	  if (GetPhotcodeEquivCodebyCode (catalog[i].measure[m].photcode) != Nc) continue;
-
-	  Msys = PhotSys (&catalog[i].measure[m], &catalog[i].average[j], &catalog[i].secfilt[j*Nsecfilt]);
-	  if (isnan(Msys)) continue;
-
-	  // XXX only apply this filter for psphot data from GPC1 for now...
-	  if (PSFQUALSTATS && (catalog[i].measure[m].photcode > 10000) && (catalog[i].measure[m].photcode < 10500)) {
-	      if (catalog[i].measure[m].psfQual < 0.85) continue;
-	  }
-
-	  // XXX make it optional to apply Mcal (do I need an extra field for advisory Mcal?)
-	  list[N] = Msys - catalog[i].measure[m].Mcal;
-	  dlist[N] = MAX (catalog[i].measure[m].dM, MIN_ERROR);
-	  N++;
-	}
-	if (N < 1) continue;
-
-	liststats (list, dlist, N, &stats);
-
-	/* use sigma or error in dM for output? */
-	catalog[i].secfilt[Nsecfilt*j+Ns].M  = stats.mean;
-	catalog[i].secfilt[Nsecfilt*j+Ns].dM = MAX (stats.error, stats.sigma);
-	catalog[i].secfilt[Nsecfilt*j+Ns].Xm = (stats.Nmeas > 1) ? 100.0*log10(stats.chisq) : NAN_S_SHORT;
-	catalog[i].secfilt[Nsecfilt*j+Ns].Ncode = N;
-	catalog[i].secfilt[Nsecfilt*j+Ns].Nused = stats.Nmeas;
-      }
-
-      // update average flags based on the detection stats.  
-      // XXX we need to clean this up -- this is a serious set of hacks...
-      if (PSFQUALSTATS) { 
-	int Galaxy2MASS, GalaxySDSS, goodPS1, nEXT, nPSF, good2MASS;
-
-	Galaxy2MASS = FALSE; // best guess for galaxy based on 2MASS J measurements (gal_contam == measure.flags[0x00400000 | 0x00800000])
-	GalaxySDSS = FALSE;  // best guess for galaxy based on SDSS measurements (XXX need to fix SDSS flags)
-	goodPS1 = FALSE;     // true if any PS1 measurements have psfQual > 0.85
-	good2MASS = FALSE;   // true if 2MASS J measurements have significant detections
-	nEXT = nPSF = 0;     // number of PS1 PSF vs EXT measurements
-
-	m = catalog[i].average[j].measureOffset;
-	for (k = 0; k < catalog[i].average[j].Nmeasure; k++, m++) {
-
-	  // PS1 data :
-	  if ((catalog[i].measure[m].photcode >= 10000) && (catalog[i].measure[m].photcode <= 10500)) {
-	    if (catalog[i].measure[m].psfQual > 0.85) {
-	      goodPS1 = TRUE;
-	      if (!isnan(catalog[i].measure[m].Map)) {
-		if (catalog[i].measure[m].M - catalog[i].measure[m].Map > 0.5) {
-		  nEXT ++;
-		} else {
-		  nPSF ++;
-		}
+	  Mcal  = getMcal  (m, Nc, flatcorr, catalog);
+	  if (isnan(Mcal))  SKIP_THIS_MEAS(Ncal);
+	  Mmos  = getMmos  (m, Nc);
+	  if (isnan(Mmos))  SKIP_THIS_MEAS(Nmos);
+	  Mgrid = getMgrid (m, Nc);
+	  if (isnan(Mgrid)) SKIP_THIS_MEAS(Ngrid);
+	}
+
+	Msys = PhotSysTiny (&catalog[Nc].measureT[m], &catalog[Nc].averageT[j], &catalog[Nc].secfilt[j*Nsecfilt]);
+	if (isnan(Msys)) SKIP_THIS_MEAS(Nsys);
+
+	list[N] = Msys - Mcal - Mmos - Mgrid;
+
+	int myUbercalDist = getUbercalDist(m,Nc);
+	minUbercalDist = MIN(minUbercalDist, myUbercalDist);
+
+	if (isSetMrelFinal) {
+	  float Map = PhotAper (&catalog[Nc].measure[m]);
+	  aplist[N] = Map - Mcal - Mmos - Mgrid;
+
+	  // special options for PS1 data
+	  if ((catalog[Nc].measure[m].photcode >= 10000) && (catalog[Nc].measure[m].photcode <= 10500)) {
+	    // count the extended detections
+	    if (!isnan(catalog[Nc].measure[m].Map)) {
+	      if (catalog[Nc].measure[m].M - catalog[Nc].measure[m].Map > 0.5) {
+		Next ++;
+		NextPS1 ++;
+	      } else {
+		NpsfPS1 ++;
 	      }
 	    }
 	  }
-	  
-	  // 2MASS data:
-	  if (catalog[i].measure[m].photcode == 2011) {
-	    if (catalog[i].measure[m].photFlags & 0x00c00000) {
+	  // count extended detections for 2MASS (XXX NOTE hardwired photcodes 2011, 2012, 2013)
+	  if ((catalog[Nc].measure[m].photcode >= 2011) && (catalog[Nc].measure[m].photcode <= 2013)) {
+	    if (catalog[Nc].measure[m].photFlags & 0x00c00000) {
+	      Next ++;
 	      Galaxy2MASS = TRUE;
 	    }
-	    if (catalog[i].measure[m].photFlags & 0x00000007) {
-	      good2MASS = TRUE; 
+	    if (pass == 0) {
+	      if (catalog[Nc].measure[m].photFlags & 0x00000007) {
+		Good2MASS = TRUE;
+	      } else {
+		// detections without one of these bits should only be used in PASS_1
+		SKIP_THIS_MEAS(Nbad);
+		continue;
+	      }
 	    }
-	  }  
-	}
-
-	// we attempt to set a few flags here; reset those bits before trying:
-	catalog[i].average[j].flags &= ~flagBits;
-
-	if (nEXT && (nEXT > nPSF)) {
-	  catalog[i].average[j].flags |= ID_OBJ_EXT;
-	}
-	if (goodPS1) {
-	  catalog[i].average[j].flags |= ID_OBJ_GOOD;
-	}
-	if (Galaxy2MASS) {
-	  catalog[i].average[j].flags |= ID_OBJ_EXT_ALT;
-	}
-	if (good2MASS) {
-	  catalog[i].average[j].flags |= ID_OBJ_GOOD_ALT;
-	}
-      }
-    }
-  }
-
-  free (list);
-  free (dlist);
+	  }
+
+	  // Blindly accepth the SYNTH mags if we are above saturation, otherwise, 
+	  // ignore SYNTH photcodes until PASS == 4 (where we also accept saturated stars)
+	  if ((catalog[Nc].measure[m].photcode >= 3001) && (catalog[Nc].measure[m].photcode <= 3005)) {
+	    // something of a hack: force object to use synth values if synth mags >>
+	    // saturation (3pi instrumental mags < -15)
+	    float MaxMagForceSynth = NAN;
+	    switch (catalog[Nc].measure[m].photcode) {
+	      case 3001:
+		MaxMagForceSynth = 13.64;
+		break;
+	      case 3002:
+		MaxMagForceSynth = 13.76;
+		break;
+	      case 3003:
+		MaxMagForceSynth = 13.74;
+		break;
+	      case 3004:
+		MaxMagForceSynth = 12.94;
+		break;
+	      case 3005:
+		MaxMagForceSynth = 12.01;
+		break;
+	    }
+	    if (catalog[Nc].measureT[m].M < MaxMagForceSynth) {
+	      forceSynth = TRUE;
+	      forceSynthEntry = N;
+	    } else {
+	      if (pass < 4) {
+		SKIP_THIS_MEAS(Nbad);
+		continue;
+	      }
+	      haveSynth = TRUE;
+	    }
+	  }
+	}
+
+	// dlist gives the error per measurement, wlist gives the weight
+	// we can modify the error and weight in a few ways:
+	// 1) MIN_ERROR guarantees a floor
+	// 2) photomErrSys is added in quadrature as a sytematic error, set per photcode
+	// 3) UBERCAL measurements can have their weight increased by a big factor to help tie down the averages
+	// 4) some reference photcode of some kind can be specified as fixed and have a high weight
+	dlist[N] = MAX (hypot(catalog[Nc].measureT[m].dM, code->photomErrSys), MIN_ERROR);
+	wlist[N] = 1.0;
+
+	// up-weight the ubercal values (or convergence can take a long time...)
+	if (catalog[Nc].measureT[m].dbFlags & ID_MEAS_PHOTOM_UBERCAL) {
+	  wlist[N] = 10.0;
+	}
+
+	// tie down reference photometry if the -refcode (code) option is selected
+	// eg, -refcode g_SDSS
+	// this probably makes no sense in the context of multifilter analysis
+	if (refPhotcode) {
+	  if (code->code == refPhotcode->code) {
+	    wlist[N] = 100.0;
+	  }
+	}
+	N++;
+      }
+
+      int Nminmeas = isSetMrelFinal ? 1 : STAR_TOOFEW + 1;
+
+      // when performing the grid analysis, STAR_TOOFEW should be set to 1;
+      if (N < Nminmeas) { /* too few measurements */
+	// fprintf (f, "%10.6f %10.6f %d %d %d\n", catalog[Nc].averageT[j].R, catalog[Nc].averageT[j].D, catalog[Nc].measureT[catalog[Nc].averageT[j].measureOffset].imageID, N, STAR_TOOFEW); 
+	catalog[Nc].secfilt[Nsecfilt*j+Nsec].flags |= ID_STAR_FEW;
+	if (Ncode == 0) {
+	  results->Ncode ++;
+	} else {
+	  results->Nfew ++;
+	}
+	continue;
+      } else {
+	catalog[Nc].secfilt[Nsecfilt*j+Nsec].flags &= ~ID_STAR_FEW;
+      }	
+
+      if (forceSynth) {
+	// use the single SYNTH value instead of the other mags here
+	myAssert ((forceSynthEntry < N) && (forceSynthEntry >= 0), "programming error");
+	list[0]  = list[forceSynthEntry];
+	dlist[0] = dlist[forceSynthEntry];
+	wlist[0] = wlist[forceSynthEntry];
+	N = 1;
+      }
+      liststats (list, dlist, wlist, N, &stats);
+
+      catalog[Nc].secfilt[Nsecfilt*j+Nsec].M  = stats.mean;
+      catalog[Nc].secfilt[Nsecfilt*j+Nsec].dM = stats.error;
+      catalog[Nc].secfilt[Nsecfilt*j+Nsec].Xm = (stats.Nmeas > 1) ? 100.0*log10(stats.chisq + 1e-4) : NAN_S_SHORT;
+
+      // when running -averages, we have no information about the images, so we cannot set this
+      if (minUbercalDist > -1) {
+	catalog[Nc].secfilt[Nsecfilt*j+Nsec].ubercalDist = minUbercalDist;
+      }
+
+      if (isSetMrelFinal) {
+	catalog[Nc].found[Nsecfilt*j+Nsec] = TRUE;
+
+	catalog[Nc].secfilt[Nsecfilt*j+Nsec].Mstdev = 1000.0*stats.sigma; // Mstdev is in millimags (not enough space for more precision)
+	catalog[Nc].secfilt[Nsecfilt*j+Nsec].Ncode = Ncode;
+	catalog[Nc].secfilt[Nsecfilt*j+Nsec].Nused = stats.Nmeas;
+
+	catalog[Nc].secfilt[Nsecfilt*j+Nsec].M_80 = 1000 * stats.Upper80;
+	catalog[Nc].secfilt[Nsecfilt*j+Nsec].M_20 = 1000 * stats.Lower20;
+
+	// NOTE : use the modified weight for apmags as well as psf mags
+	liststats (aplist, daplist, wlist, N, &apstats);
+
+	catalog[Nc].secfilt[Nsecfilt*j+Nsec].Map  = apstats.mean; 
+
+	// NOTE: for 2MASS measurements, Next should be 1, as should N
+	if ((Next > 0) && (Next > 0.5*N)) {
+	  catalog[Nc].secfilt[Nsecfilt*j+Nsec].flags |= ID_SECF_OBJ_EXT;
+	}
+
+	switch (pass) {
+	  case 0:
+	    catalog[Nc].secfilt[Nsecfilt*j+Nsec].flags |= ID_PHOTOM_PASS_0;
+	    GoodPS1 = TRUE;
+	    break;
+	  case 1:
+	    catalog[Nc].secfilt[Nsecfilt*j+Nsec].flags |= ID_PHOTOM_PASS_1;
+	    GoodPS1 = TRUE;
+	    break;
+	  case 2:
+	    catalog[Nc].secfilt[Nsecfilt*j+Nsec].flags |= ID_PHOTOM_PASS_2;
+	    GoodPS1 = TRUE;
+	    break;
+	  case 3:
+	    catalog[Nc].secfilt[Nsecfilt*j+Nsec].flags |= ID_PHOTOM_PASS_3;
+	    break;
+	  case 4:
+	    catalog[Nc].secfilt[Nsecfilt*j+Nsec].flags |= ID_PHOTOM_PASS_4;
+	    break;
+	}
+	if (haveSynth) {
+	  catalog[Nc].secfilt[Nsecfilt*j+Nsec].flags |= ID_SECF_USE_SYNTH;
+	}	
+	if (haveUbercal) {
+	  catalog[Nc].secfilt[Nsecfilt*j+Nsec].flags |= ID_SECF_USE_UBERCAL;
+	}	
+      }
+    }
+
+    if (isSetMrelFinal) {
+      DVOAverageFlags flagBits = ID_OBJ_EXT | ID_OBJ_EXT_ALT | ID_OBJ_GOOD | ID_OBJ_GOOD_ALT;
+
+      // we attempt to set a few flags here; reset those bits before trying:
+      catalog[Nc].average[j].flags &= ~flagBits;
+
+      if (NextPS1 && (NextPS1 > NpsfPS1)) {
+	catalog[Nc].average[j].flags |= ID_OBJ_EXT;
+      }
+      if (GoodPS1) {
+	catalog[Nc].average[j].flags |= ID_OBJ_GOOD;
+      }
+      if (Galaxy2MASS) {
+	catalog[Nc].average[j].flags |= ID_OBJ_EXT_ALT;
+      }
+      if (Good2MASS) {
+	catalog[Nc].average[j].flags |= ID_OBJ_GOOD_ALT;
+      }
+    }
+  }
   return (TRUE);
 }
 
+int print_measure_set (Average *average, SecFilt *secfilt, Measure *measure) {
+
+  off_t k;
+
+  int Nsecfilt = GetPhotcodeNsecfilt ();
+
+  off_t m = average[0].measureOffset;
+
+  for (k = 0; k < average[0].Nmeasure; k++, m++) {
+    fprintf (stderr, "meas: %08x\n", measure[m].dbFlags);
+  }
+
+  int Ns;
+  for (Ns = 0; Ns < Nsecfilt; Ns++) {
+    fprintf (stderr, "secf: %08x\n", secfilt[Ns].flags);
+  }
+  return 1;
+}
+
 /* set measure.Mcal for all measures except ID_MEAS_NOCAL and ID_IMAGE_PHOTOM_NOCAL */
-int setMcalOutput (Catalog *catalog, int Ncatalog) {
+int setMcalOutput (Catalog *catalog, int Ncatalog, FlatCorrectionTable *flatcorr) {
 
   int i;
@@ -368,5 +633,5 @@
       for (k = 0; k < catalog[i].averageT[j].Nmeasure; k++, m++) {
 	if (catalog[i].measureT[m].dbFlags & MEAS_BAD) continue;
-	Mcal  = getMcal  (m, i);
+	Mcal  = getMcal  (m, i, flatcorr, catalog);
 	if (isnan(Mcal)) continue;
 	Mmos  = getMmos  (m, i);
@@ -375,6 +640,13 @@
 	if (isnan(Mgrid)) continue;
 
+	// note that measurements for which the image is not selected will not be modified
+	// (that is a good thing! -- we keep a prior calibration)
+
 	// set the output calibration
 	catalog[i].measure[m].Mcal = Mcal + Mmos + Mgrid;
+
+	if (catalog[i].measureT[m].dbFlags & ID_MEAS_PHOTOM_UBERCAL) {
+	  myAssert (isfinite(catalog[i].measure[m].Mcal), "oops, broke an ubercal mag");
+	}
       }
     }
@@ -385,9 +657,11 @@
 void clean_stars (Catalog *catalog, int Ncatalog) {
 
-  int i, j, Ndel, Nave, Ntot, mark, Ns;
+  int i, j, Ndel, Nave, Ntot, mark, Ns, Nscat, Nchi, Nnan;
   float dM, Xm;
   double Chisq, MaxScatter, MaxChisq;
   double *xlist, *slist, *dlist;
+
   StatType stats;
+  liststats_setmode (&stats, "MEAN");
 
   if (VERBOSE) fprintf (stderr, "marking poor stars\n");
@@ -404,5 +678,4 @@
 
   // eliminate bad stars using the stats for a single secfilt at a time
-  // XXX DEP replace average.flags with secfilt flags
   for (Ns = 0; Ns < Nphotcodes; Ns ++) {
     
@@ -423,12 +696,12 @@
     }
   
-    initstats ("MEAN");
-    liststats (xlist, dlist, Ntot, &stats);
+    liststats (xlist, dlist, NULL, Ntot, &stats);
     MaxChisq = MAX (STAR_CHISQ, 2*stats.median);
-    liststats (slist, dlist, Ntot, &stats);
+
+    liststats (slist, dlist, NULL, Ntot, &stats);
     MaxScatter = MAX (STAR_SCATTER, 2*stats.median);
     fprintf (stderr, "Max Scatter: %f, Max Chisq: %f\n", MaxScatter, MaxChisq);
 
-    Ndel = Nave = 0;
+    Ndel = Nave = Nscat = Nnan = Nchi = 0;
     for (i = 0; i < Ncatalog; i++) {
       for (j = 0; j < catalog[i].Naverage; j++) {
@@ -440,4 +713,7 @@
 	  catalog[i].secfilt[Nsecfilt*j+Nsec].flags |= ID_STAR_POOR;
 	  Ndel ++;
+	  if (dM > MaxScatter) { Nscat ++; }
+	  if (Xm == NAN_S_SHORT) { Nnan ++; }
+	  if (Chisq > MaxChisq) { Nchi ++; }
 	} else {
 	  catalog[i].secfilt[Nsecfilt*j+Nsec].flags &= ~ID_STAR_POOR;
@@ -446,6 +722,5 @@
       }
     }
-    fprintf (stderr, "%d stars marked variable, %d total\n", Ndel, Nave);
-    initstats (STATMODE);
+    fprintf (stderr, "%d stars marked variable (%d scat, %d nan, %d chi), %d total\n", Ndel, Nscat, Nnan, Nchi, Nave);
   }
   free (xlist);
@@ -454,7 +729,12 @@
 }
 
+// clean_measures examines the stats for a single star.  It measures the INNER 50% mean
+// and sigma, it then re-measures the mean and sigma using all stars with NSIGMA_CLIP (3)
+// sigma of the INNER 50% mean.  it then flags any measurements which are more than
+// NSIGMA_REJECT (5) sigma of the mean
+
 # define NSIGMA_CLIP 3.0
 # define NSIGMA_REJECT 5.0
-void clean_measures (Catalog *catalog, int Ncatalog, int final) {
+void clean_measures (Catalog *catalog, int Ncatalog, int final, FlatCorrectionTable *flatcorr) {
 
   off_t j, k, m, Nmax, Ndel, Nave;
@@ -463,5 +743,4 @@
   double *tlist, *list, *dlist;
   float Msys, Mcal, Mmos, Mgrid;
-  StatType stats;
   int Ncal, Nmos, Ngrid, Nfew;
 
@@ -484,4 +763,9 @@
   TOOFEW = MAX (5, STAR_TOOFEW);
 
+  // stats structures for inner and full stats
+  StatType instats, stats;
+  liststats_setmode (&instats, "INNER_MEAN");
+  liststats_setmode (&stats, "MEAN");
+
   Ndel = Nave = 0;
   Ncal = Nmos = Ngrid = Nfew = 0;
@@ -492,10 +776,10 @@
       for (Ns = 0; Ns < Nphotcodes; Ns++) {
 	
-	/* on final processing, skip stars already measured */
-	if (final && catalog[i].found[j]) continue;  
-
 	int thisCode = photcodes[Ns][0].code;
 	int Nsec = GetPhotcodeNsec(thisCode);
 	
+	/* on final processing, skip stars already measured */
+	if (final && catalog[i].found[Nsecfilt*j + Nsec]) continue;  
+
 	/* skip bad stars to prevent them from becoming good (on inner sample) */
 	if (catalog[i].secfilt[Nsecfilt*j+Nsec].flags & STAR_BAD) continue;  
@@ -509,6 +793,6 @@
 	  if (ecode != thisCode) { continue; }
 
-	  /* if (catalog[i].measureT[m].dbFlags & MEAS_BAD) continue; */
-	  Mcal  = getMcal  (m, i);
+	  // NOTE: we do not skip MEAS_BAD because this measurement is just an internal assessment of the outliers
+	  Mcal  = getMcal  (m, i, flatcorr, catalog);
 	  if (isnan(Mcal)) { Ncal ++; continue; }
 	  Mmos  = getMmos  (m, i);
@@ -522,16 +806,18 @@
 	  N++;
 	}
-	if (N <= TOOFEW) { Nfew ++; continue; }
+	if (N <= TOOFEW) { 
+	  Nfew ++; 
+	  continue; 
+	}
 
 	/* 3-sigma clip based on stats of inner 50% */
 
 	// calculated mean of inner 50%
-	initstats ("INNER_MEAN");
-	liststats (list, dlist, N, &stats);
-	stats.sigma = MAX (MIN_ERROR, stats.sigma); /* if measurements agree too well, sigma -> 0.0 */
+	liststats (list, dlist, NULL, N, &instats);
+	instats.sigma = MAX (MIN_ERROR, instats.sigma); /* if measurements agree too well, sigma -> 0.0 */
 
 	// ignore entries > 3sigma from inner mean
 	for (k = m = 0; k < N; k++) {
-	  if (fabs (list[k] - stats.median) < NSIGMA_CLIP*stats.sigma) {
+	  if (fabs (list[k] - instats.median) < NSIGMA_CLIP*instats.sigma) {
 	    list[m] = list[k];
 	    m++;
@@ -539,6 +825,5 @@
 	}
 	// recalculate the mean & sigma of the accepted measurements
-	initstats ("MEAN");
-	liststats (list, dlist, m, &stats);
+	liststats (list, dlist, NULL, m, &stats);
 	stats.sigma = MAX (MIN_ERROR, stats.sigma);
 
@@ -553,6 +838,6 @@
 	  if (ecode != thisCode) { continue; }
 
-	  /* if (catalog[i].measureT[m].dbFlags & MEAS_BAD) continue; */
-	  Mcal  = getMcal  (m, i);
+	  // NOTE: we do not skip MEAS_BAD because this measurement is just an internal assessment of the outliers
+	  Mcal  = getMcal  (m, i, flatcorr, catalog);
 	  if (isnan(Mcal)) continue;
 	  Mmos  = getMmos  (m, i);
@@ -572,5 +857,9 @@
 	/* mark bad measures (> 3 sigma deviant) */
 	for (k = 0; k < N; k++) {
-	  if (fabs (list[k] - stats.median) > NSIGMA_REJECT*stats.sigma) {
+	  // treat the scatter of the star as a systematic term.  this is a bit of an
+	  // over-estimage (a perfect Gauss distribution with perfect errors would have
+	  // mySigma = sqrt(2) too large)
+	  float mySigma = hypot (stats.sigma, dlist[k]);
+	  if (fabs (list[k] - stats.median) > NSIGMA_REJECT*mySigma) {
 	    catalog[i].measureT[ilist[k]].dbFlags |= ID_MEAS_POOR_PHOTOM;
 	    if (final) {
@@ -585,6 +874,6 @@
     }
   }
-  initstats (STATMODE);
   if (VERBOSE) fprintf (stderr, OFF_T_FMT" measures marked poor, "OFF_T_FMT" total\n", Ndel, Nave);
+
   free (list);
   free (dlist);
@@ -593,5 +882,5 @@
 }
 
-StatType statsStarN (Catalog *catalog, int Ncatalog, int Nsec, int seccode) {
+StatType statsStarN (Catalog *catalog, int Ncatalog, int Nsec, int seccode, FlatCorrectionTable *flatcorr) {
 
   off_t j, k, m, Ntot;
@@ -625,5 +914,5 @@
 	int ecode = GetPhotcodeEquivCodebyCode (catalog[i].measureT[m].photcode);
 	if (ecode != seccode) { continue;}
-	Mcal = getMcal  (m, i);
+	Mcal = getMcal  (m, i, flatcorr, catalog);
 	if (isnan(Mcal)) { continue;}
 	Mmos = getMmos  (m, i);
@@ -640,6 +929,7 @@
   }
 
-  // fprintf (stderr, "N1: %d, N2: %d, N3: %d, N4: %d, N0: %d\n", N1, N2, N3, N4, N0);
-  liststats (list, dlist, n, &stats);
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (list, dlist, NULL, n, &stats);
   free (list);
   free (dlist);
@@ -680,5 +970,7 @@
   }
 
-  liststats (list, dlist, n, &stats);
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (list, dlist, NULL, n, &stats);
   free (list);
   free (dlist);
@@ -712,4 +1004,5 @@
 
       dM = catalog[i].secfilt[Nsecfilt*j+Nsec].dM;
+      if (isnan(dM)) continue;
       list[n] = dM;
       dlist[n] = 1;
@@ -718,5 +1011,7 @@
   }
 
-  liststats (list, dlist, n, &stats);
+  liststats_setmode (&stats, "MEAN");
+
+  liststats (list, dlist, NULL, n, &stats);
   free (list);
   free (dlist);
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/args.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/args.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/args.c	(revision 34041)
@@ -38,5 +38,4 @@
   UserPatch.Dmin = -90;
   UserPatch.Dmax = +90;
-  UserPatchSelect = FALSE;
   if ((N = get_argument (argc, argv, "-region"))) {
     remove_argument (N, &argc, argv);
@@ -49,5 +48,12 @@
     UserPatch.Dmax = atof (argv[N]);
     remove_argument (N, &argc, argv);
-    UserPatchSelect = TRUE;
+  }
+
+  /* specify region file by name (eg n0000/0000.00) */
+  UserCatalog = NULL;
+  if ((N = get_argument (argc, argv, "-catalog"))) {
+    remove_argument (N, &argc, argv);
+    UserCatalog = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
   }
 
@@ -68,4 +74,39 @@
   }
 
+  NTHREADS = 0;
+  if ((N = get_argument (argc, argv, "-threads"))) {
+    remove_argument (N, &argc, argv);
+    NTHREADS = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  // XXX for the moment, make this selection manual.  it needs to be automatic 
+  // based on the state of the SkyTable
+  PARALLEL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel"))) {
+    PARALLEL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  // this is a test mode : rather than launching the remote jobs and waiting for completion,
+  // relphot will simply list the remote command and wait for the user to signal completion
+  PARALLEL_MANUAL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel-manual"))) {
+    PARALLEL = TRUE; // -parallel-manual implies -parallel
+    PARALLEL_MANUAL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  // this is a test mode : rather than launching the relphot_client jobs remotely, they are 
+  // run in serial via 'system'
+  PARALLEL_SERIAL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel-serial"))) {
+    if (PARALLEL_MANUAL) {
+      fprintf (stderr, "ERROR: cannot mix -parallel-manual and -parallel-serial\n");
+      exit (1);
+    }
+    PARALLEL = TRUE; // -parallel-serial implies -parallel
+    PARALLEL_SERIAL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
   PLOTSTUFF = FALSE;
   if ((N = get_argument (argc, argv, "-plot"))) {
@@ -90,5 +131,5 @@
   }      
 
-  strcpy (STATMODE, "CHI_INNER_WTMEAN");
+  strcpy (STATMODE, "WT_MEAN");
   if ((N = get_argument (argc, argv, "-statmode"))) {
     remove_argument (N, &argc, argv);
@@ -128,4 +169,11 @@
   }
 
+  UPDATE_CATFORMAT = NULL;
+  if ((N = get_argument (argc, argv, "-update-catformat"))) {
+    remove_argument (N, &argc, argv);
+    UPDATE_CATFORMAT = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
   SAVE_IMAGE_UPDATES = TRUE;
   if ((N = get_argument (argc, argv, "-skip-image-updates"))) {
@@ -140,4 +188,11 @@
     remove_argument (N, &argc, argv);
     MaxDensityUse = TRUE;
+  }
+
+  CLOUD_TOLERANCE = 0.02;
+  if ((N = get_argument (argc, argv, "-cloud-limit"))) {
+    remove_argument (N, &argc, argv);
+    CLOUD_TOLERANCE = atof(argv[N]);
+    remove_argument (N, &argc, argv);
   }
 
@@ -189,4 +244,10 @@
   }
 
+  KEEP_UBERCAL = TRUE;
+  if ((N = get_argument (argc, argv, "-reset-ubercal"))) {
+    remove_argument (N, &argc, argv);
+    KEEP_UBERCAL = FALSE;
+  }
+
   MIN_ERROR = 0.001;
   if ((N = get_argument (argc, argv, "-minerror"))) {
@@ -246,8 +307,210 @@
   }
 
+  ApplyOffsets = FALSE;
+  if ((N = get_argument (argc, argv, "-apply-offsets"))) {
+    remove_argument (N, &argc, argv);
+    ApplyOffsets = TRUE;
+  }
+
   if (UpdateAverages && (argc == 1)) return TRUE;
-  if (UserPatchSelect && (argc == 2)) return TRUE;
-  if (argc != 3) relphot_usage ();
+  if (argc != 2) relphot_usage ();
 
   return TRUE;
 }
+
+int args_client (int argc, char **argv) {
+
+  int N;
+  double trange;
+
+  // by definition, the client is not parallel 
+  PARALLEL = FALSE;
+  PARALLEL_MANUAL = FALSE;
+  PARALLEL_SERIAL = FALSE;
+
+  HOST_ID = 0;
+  if ((N = get_argument (argc, argv, "-hostID"))) {
+    remove_argument (N, &argc, argv);
+    HOST_ID = atoi (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!HOST_ID) relphot_client_usage();
+
+  HOSTDIR = NULL;
+  if ((N = get_argument (argc, argv, "-hostdir"))) {
+    remove_argument (N, &argc, argv);
+    HOSTDIR = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!HOSTDIR) relphot_client_usage();
+
+  IMAGES = NULL; // used in -update mode
+  BCATALOG = NULL; // used in -load mode
+  MODE = MODE_NONE;
+  if ((N = get_argument (argc, argv, "-load"))) {
+    MODE = MODE_LOAD;
+    remove_argument (N, &argc, argv);
+    BCATALOG = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if ((N = get_argument (argc, argv, "-update-catalogs"))) {
+    if (MODE) {
+      fprintf (stderr, "ERROR: cannot mix modes (-load, -update-catalogs, -update-objects)\n");
+      relphot_client_usage();
+    }
+    MODE = MODE_UPDATE;
+    remove_argument (N, &argc, argv);
+    IMAGES = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if ((N = get_argument (argc, argv, "-update-objects"))) {
+    if (MODE) {
+      fprintf (stderr, "ERROR: cannot mix modes (-load, -update-catalogs, -update-objects)\n");
+      relphot_client_usage();
+    }
+    MODE = MODE_UPDATE_OBJECTS;
+    remove_argument (N, &argc, argv);
+  }
+  if (!MODE) relphot_client_usage();
+
+  strcpy (STATMODE, "WT_MEAN");
+  if ((N = get_argument (argc, argv, "-statmode"))) {
+    remove_argument (N, &argc, argv);
+    strcpy (STATMODE, argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  /* specify portion of the sky */
+  UserPatch.Rmin = 0;
+  UserPatch.Rmax = 360;
+  UserPatch.Dmin = -90;
+  UserPatch.Dmax = +90;
+  if ((N = get_argument (argc, argv, "-region"))) {
+    remove_argument (N, &argc, argv);
+    UserPatch.Rmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Rmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Dmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    UserPatch.Dmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  VERBOSE = VERBOSE2 = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    VERBOSE = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  if ((N = get_argument (argc, argv, "-vv"))) {
+    VERBOSE2 = VERBOSE = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  RESET = FALSE;
+  if ((N = get_argument (argc, argv, "-reset"))) {
+    remove_argument (N, &argc, argv);
+    RESET = TRUE;
+  }
+
+  KEEP_UBERCAL = TRUE;
+  if ((N = get_argument (argc, argv, "-reset-ubercal"))) {
+    remove_argument (N, &argc, argv);
+    KEEP_UBERCAL = FALSE;
+  }
+
+  /* define time */
+  TimeSelect = FALSE;
+  if ((N = get_argument (argc, argv, "-time"))) {
+    remove_argument (N, &argc, argv);
+    if (!ohana_str_to_time (argv[N], &TSTART)) { 
+      fprintf (stderr, "ERROR: syntax error\n");
+      return (FALSE);
+    }
+    remove_argument (N, &argc, argv);
+    if (!ohana_str_to_dtime (argv[N], &trange)) { 
+      if (!ohana_str_to_time (argv[N], &TSTOP)) { 
+	fprintf (stderr, "ERROR: syntax error\n");
+	return (FALSE);
+      }
+    } else {
+      if (trange < 0) {
+	trange = fabs (trange);
+	TSTOP = TSTART;
+	TSTART -= trange;
+      } else {
+	TSTOP = TSTART + trange;
+      }
+    }
+    remove_argument (N, &argc, argv);
+    TimeSelect = TRUE;
+  }
+
+
+  MIN_ERROR = 0.001;
+  if ((N = get_argument (argc, argv, "-minerror"))) {
+    remove_argument (N, &argc, argv);
+    MIN_ERROR = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    /* require MIN_ERROR > 0 */
+  }  
+
+  UPDATE = FALSE;
+  if ((N = get_argument (argc, argv, "-update"))) {
+    remove_argument (N, &argc, argv);
+    UPDATE = TRUE;
+  }
+
+  UPDATE_CATFORMAT = NULL;
+  if ((N = get_argument (argc, argv, "-update-catformat"))) {
+    remove_argument (N, &argc, argv);
+    UPDATE_CATFORMAT = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  AreaSelect = FALSE;
+  if ((N = get_argument (argc, argv, "-area"))) {
+    remove_argument (N, &argc, argv);
+    AreaXmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    AreaXmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    AreaYmin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    AreaYmax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    AreaSelect = TRUE;
+  }
+
+  ImagSelect = FALSE;
+  if ((N = get_argument (argc, argv, "-instmag"))) {
+    remove_argument (N, &argc, argv);
+    ImagMin = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    ImagMax = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    ImagSelect = TRUE;
+  }
+
+  DophotSelect = FALSE;
+  if ((N = get_argument (argc, argv, "-dophot"))) {
+    remove_argument (N, &argc, argv);
+    DophotValue = atof (argv[N]);
+    remove_argument (N, &argc, argv);
+    DophotSelect = TRUE;
+  }
+
+  MaxDensityUse = FALSE;
+  if ((N = get_argument (argc, argv, "-max-density"))) {
+    remove_argument (N, &argc, argv);
+    MaxDensityValue = atof(argv[N]);
+    remove_argument (N, &argc, argv);
+    MaxDensityUse = TRUE;
+  }
+
+  if ((MODE == MODE_UPDATE_OBJECTS)  && (argc == 1)) return TRUE;
+  if (argc != 2) relphot_client_usage ();
+
+  return TRUE;
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/bcatalog.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/bcatalog.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/bcatalog.c	(revision 34041)
@@ -1,46 +1,13 @@
 # include "relphot.h"
 
-extern double drand48();
-
-int CopyAverageTiny (AverageTiny *averageT, Average *average) {
-
-  averageT[0].R     	    = average[0].R;
-  averageT[0].D     	    = average[0].D;
-  averageT[0].flags 	    = average[0].flags;
-  averageT[0].Nmeasure      = average[0].Nmeasure;
-  averageT[0].measureOffset = average[0].measureOffset;
-
-  // make Nmeasure & measureOffset optional?
-
-  return (TRUE);
-}
-
-int CopyMeasureTiny (MeasureTiny *measureT, Measure *measure) {
-
-  measureT[0].dR       = measure[0].dR;
-  measureT[0].dD       = measure[0].dD;
-  measureT[0].M        = measure[0].M;
-  measureT[0].Mcal     = measure[0].Mcal;
-  measureT[0].dM       = measure[0].dM;
-  measureT[0].airmass  = measure[0].airmass;
-  measureT[0].Xccd     = measure[0].Xccd;
-  measureT[0].Yccd     = measure[0].Yccd;
-  measureT[0].t        = measure[0].t;
-  measureT[0].dt       = measure[0].dt;
-  measureT[0].averef   = measure[0].averef;
-  measureT[0].imageID  = measure[0].imageID;
-  measureT[0].dbFlags  = measure[0].dbFlags;
-  measureT[0].photcode = measure[0].photcode;
-
-  return (TRUE);
-}
-
-int bcatalog (Catalog *subcatalog, Catalog *catalog) {
+int LimitDensityCatalog_ByNmeasure (Catalog *subcatalog, Catalog *oldcatalog);
+
+int bcatalog (Catalog *subcatalog, Catalog *catalog, int Ncat) {
   
   off_t i, j, offset;
-  int ecode, found, Ns;
+  int found, Ns, *Nvalid;
   off_t NAVERAGE, NMEASURE, Naverage, Nmeasure, Nm;
   float mag;
-  int Ncode, Ntime, Ndophot, Nmag, Nsigma, Nimag, Nfew, Ngalaxy, Npsfqf;
+  int Ncode, Ntime, Ndophot, Nmag, Nsigma, Nimag, Nfew, Ngalaxy, Npsfqf, Nnan, Nbad, Npoor;
 
   int Nsecfilt = GetPhotcodeNsecfilt ();
@@ -53,8 +20,22 @@
   ALLOCATE (subcatalog[0].measureT, MeasureTiny, NMEASURE);
   ALLOCATE (subcatalog[0].averageT, AverageTiny, NAVERAGE);
-  ALLOCATE (subcatalog[0].secfilt, SecFilt, NAVERAGE*Nsecfilt);
+  ALLOCATE (subcatalog[0].secfilt,  SecFilt,     NAVERAGE*Nsecfilt);
   Nmeasure = Naverage = 0;
 
-  Ncode = Ntime = Ndophot = Nmag = Nsigma = Nimag = Nfew = Npsfqf = Ngalaxy = 0;
+  Ncode = Ntime = Ndophot = Nmag = Nsigma = Nimag = Nfew = Npsfqf = Ngalaxy = Nnan = Nbad = Npoor = 0;
+
+  // copy the following fields to the subcatalog:
+  subcatalog[0].catID = catalog[0].catID;
+  subcatalog[0].filename = catalog[0].filename;
+
+  // array to count measures with photcodes->equiv to each of the secfilts
+  ALLOCATE (Nvalid, int, Nsecfilt);
+
+  // flags used by the photometry analysis (excluding UBERCAL)
+  unsigned int PHOTOM_FLAGS = 
+    ID_MEAS_NOCAL |       // detection ignored for this analysis (photcode, time range)
+    ID_MEAS_POOR_PHOTOM | // detection is photometry outlier 
+    ID_MEAS_SKIP_PHOTOM | // detection was ignored for photometry measurement 
+    ID_MEAS_AREA;	  // detetion was outside acceptable area of device
 
   /* exclude stars not in range or with too few measurements */
@@ -63,13 +44,26 @@
 
     /* start with all stars good */
-    CopyAverageTiny (&subcatalog[0].averageT[Naverage], &catalog[0].average[i]);
+    CopyAverageToTiny (&subcatalog[0].averageT[Naverage], &catalog[0].average[i]);
     subcatalog[0].averageT[Naverage].measureOffset = Nmeasure;
 
     for (j = 0; j < Nsecfilt; j++) {
       subcatalog[0].secfilt[Nsecfilt*Naverage+j] = catalog[0].secfilt[Nsecfilt*i+j];
-    }
-
+      Nvalid[j] = 0; // reset the Nvalid array for this star
+    }
+
+    // reset the calculated average magnitudes (does not affect ubercal-tied measurements or images)
     if (RESET) {
       int Ns;
+      DVOSecfiltFlags secfiltBits = 
+	ID_SECF_STAR_FEW | 
+	ID_SECF_STAR_POOR | 
+	ID_PHOTOM_PASS_0 | 
+	ID_PHOTOM_PASS_1 | 
+	ID_PHOTOM_PASS_2 | 
+	ID_PHOTOM_PASS_3 | 
+	ID_PHOTOM_PASS_4 |
+	ID_SECF_USE_SYNTH |
+	ID_SECF_USE_UBERCAL |
+	ID_SECF_OBJ_EXT;
       for (Ns = 0; Ns < Nphotcodes; Ns++) {
 
@@ -77,8 +71,15 @@
 	int Nsec = GetPhotcodeNsec(thisCode);
 
-	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].M  = NAN;
-	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].dM = NAN;
-	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].flags &= ~ID_STAR_FEW;
-	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].flags &= ~ID_STAR_POOR;
+	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].M      = NAN;
+	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].Map    = NAN;
+	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].dM     = NAN;
+	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].Mstdev = NAN_S_SHORT;
+	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].Xm     = NAN;
+	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].M_20   = NAN_S_SHORT;
+	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].M_80   = NAN_S_SHORT;
+	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].Ncode  = 0;
+	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].Nused  = 0;
+	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].flags &= ~secfiltBits;
+	subcatalog[0].secfilt[Nsecfilt*Naverage+Nsec].ubercalDist = 1000;
       }
     }
@@ -92,8 +93,12 @@
 
       /* select measurements by photcode */
-      ecode = GetPhotcodeEquivCodebyCode (catalog[0].measure[offset].photcode);
+      PhotCode *code = GetPhotcodebyCode (catalog[0].measure[offset].photcode);
+      if (!code) continue;
       found = FALSE;
+      int Nsec = -1; // Nsec equivalent for the measurement
       for (Ns = 0; !found && (Ns < Nphotcodes); Ns++) {
-	if (ecode == photcodes[Ns][0].code) found = TRUE;
+	if (code->equiv != photcodes[Ns][0].code) continue;
+	found = TRUE;
+	Nsec = GetPhotcodeNsec(code->equiv);
       }
       if (!found) {
@@ -113,7 +118,14 @@
       // skip garbage measurements
       if (catalog[0].measure[offset].psfQual < 0.85) { Npsfqf ++; continue; }
-
-      // check for galaxies
-      if (!isnan(catalog[0].measure[offset].Map)) {
+      if (isnan(catalog[0].measure[offset].M)) { Nnan ++; continue; }
+
+      if (catalog[0].measure[offset].photFlags & code->photomBadMask) { 
+	Nbad++; 
+	continue;
+      }
+      if (catalog[0].measure[offset].photFlags & code->photomPoorMask) { Npoor++; continue;}
+
+      // check for galaxies (XXX skip for now)
+      if (FALSE && !isnan(catalog[0].measure[offset].Map)) {
 	if (catalog[0].measure[offset].M - catalog[0].measure[offset].Map > 0.15) {
 	  nEXT ++;
@@ -137,13 +149,27 @@
       }
 
-      CopyMeasureTiny (&subcatalog[0].measureT[Nmeasure], &catalog[0].measure[offset]);
+      // count this measurement as valid for this secfilt entry
+      if (Nsec > -1) {
+	assert (Nsec < Nsecfilt);
+	Nvalid[Nsec] ++;
+      }
+
+      CopyMeasureToTiny (&subcatalog[0].measureT[Nmeasure], &catalog[0].measure[offset]);
       subcatalog[0].measureT[Nmeasure].dbFlags &= ~ID_MEAS_SKIP_PHOTOM;
       subcatalog[0].measureT[Nmeasure].averef = Naverage;
       if (RESET) { 
-	subcatalog[0].measureT[Nmeasure].Mcal = 0;
-	subcatalog[0].measureT[Nmeasure].dbFlags &= 0xff00;
-	subcatalog[0].measureT[Nmeasure].dbFlags &= ~ID_MEAS_POOR_PHOTOM;
-	subcatalog[0].measureT[Nmeasure].dbFlags &= ~ID_MEAS_AREA;
-	subcatalog[0].measureT[Nmeasure].dbFlags &= ~ID_MEAS_NOCAL;
+	// only reset Mcal for measures with a matching image
+	// do not reset Mcal for ubercal images unless explicitly requested
+	if (subcatalog[0].measureT[Nmeasure].dbFlags & ID_MEAS_PHOTOM_UBERCAL) {
+	  if (!KEEP_UBERCAL) {
+	    subcatalog[0].measureT[Nmeasure].Mcal = 0.0;
+	    subcatalog[0].measureT[Nmeasure].dbFlags &= ~ID_MEAS_PHOTOM_UBERCAL;
+	  } 
+	} else {
+	  if (getImageEntry (Nmeasure, Ncat) >= 0) {
+	    subcatalog[0].measureT[Nmeasure].Mcal = 0.0;
+	  }
+	}
+	subcatalog[0].measureT[Nmeasure].dbFlags &= ~PHOTOM_FLAGS;
       }
       Nmeasure ++;
@@ -156,5 +182,5 @@
 
     // skip object if it is likely to be a galaxy
-    if (nEXT >= nPSF) {
+    if (FALSE && (nEXT >= nPSF)) {
       Nmeasure -= Nm;
       Ngalaxy ++;
@@ -163,9 +189,20 @@
 
     // XXXX test : what checks do I need to make elsewhere to avoid problems here?
-    if (Nm <= STAR_TOOFEW) { /* enough measurements in band? */
+    if (Nm <= STAR_TOOFEW) { /* enough measurements total? */
       Nmeasure -= Nm;
       Nfew ++;
       continue; 
     }
+    int anySecfiltGood = FALSE;
+    for (Ns = 0; Ns < Nsecfilt; Ns++) { /* enough measurements in at least one band? */
+      if (Nvalid[Ns] <= STAR_TOOFEW) continue;
+      anySecfiltGood = TRUE;
+    }
+    if (!anySecfiltGood) {
+      Nmeasure -= Nm;
+      Nfew ++;
+      continue; 
+    }
+
     subcatalog[0].averageT[Naverage].Nmeasure = Nm;
     Naverage ++;
@@ -186,5 +223,5 @@
   // limit the total number of stars in the catalog
   if (MaxDensityUse) {
-    LimitDensityCatalog (subcatalog, catalog);
+    LimitDensityCatalog_ByNmeasure (subcatalog, catalog);
   }
 
@@ -192,11 +229,27 @@
     fprintf (stderr, "using "OFF_T_FMT" stars ("OFF_T_FMT" measures) of "OFF_T_FMT" for catalog %s\n", 
 	     subcatalog[0].Naverage,  subcatalog[0].Nmeasure,  i, catalog[0].filename);
-    fprintf (stderr, "rejections: %d code, %d time, %d dophot, %d mag, %d sigma, %d imag, %d few, %d psfqf, %d galaxies\n", 
-	     Ncode, Ntime, Ndophot, Nmag, Nsigma, Nimag, Nfew, Npsfqf, Ngalaxy);
+    fprintf (stderr, "rejections: %d code, %d time, %d dophot, %d mag, %d sigma, %d imag, %d few, %d psfqf, %d Nnan, %d galaxies, %d bad, %d poor\n", 
+	     Ncode, Ntime, Ndophot, Nmag, Nsigma, Nimag, Nfew, Npsfqf, Nnan, Ngalaxy, Nbad, Npoor);
   }
   return (TRUE);
 }
 
-int LimitDensityCatalog (Catalog *subcatalog, Catalog *catalog) {
+// sort by decreasing Nmeasure (X)
+void sort_by_Nmeasure (int *X, off_t *Y, off_t N) {
+
+# define SWAPFUNC(A,B){ int tmpI; off_t tmpT;	\
+  tmpI = X[A]; X[A] = X[B]; X[B] = tmpI; \
+  tmpT = Y[A]; Y[A] = Y[B]; Y[B] = tmpT; \
+}
+# define COMPARE(A,B)(X[A] > X[B])
+
+  OHANA_SORT (N, COMPARE, SWAPFUNC);
+
+# undef SWAPFUNC
+# undef COMPARE
+
+}
+
+int LimitDensityCatalog_ByNmeasure (Catalog *subcatalog, Catalog *oldcatalog) {
 
   Catalog tmpcatalog;
@@ -206,8 +259,8 @@
   int Nsecfilt = GetPhotcodeNsecfilt ();
 
-  gfits_scan (&catalog[0].header, "RA0",  "%lf", 1, &Rmin);
-  gfits_scan (&catalog[0].header, "DEC0", "%lf", 1, &Dmin);
-  gfits_scan (&catalog[0].header, "RA1",  "%lf", 1, &Rmax);
-  gfits_scan (&catalog[0].header, "DEC1", "%lf", 1, &Dmax);
+  gfits_scan (&oldcatalog[0].header, "RA0",  "%lf", 1, &Rmin);
+  gfits_scan (&oldcatalog[0].header, "DEC0", "%lf", 1, &Dmin);
+  gfits_scan (&oldcatalog[0].header, "RA1",  "%lf", 1, &Rmax);
+  gfits_scan (&oldcatalog[0].header, "DEC1", "%lf", 1, &Dmax);
 
   if (VERBOSE2) fprintf (stderr, "extracting from catalog covering region %f,%f to %f,%f\n", Rmin, Dmin, Rmax, Dmax);
@@ -229,15 +282,13 @@
 
   // we are going to select Nmax entries by generating a random-sorted index list
-  off_t *index, tmp, i, j, ave;
+  int *value;
+  off_t *index, i, j, ave;
   ALLOCATE (index, off_t, Naverage);
+  ALLOCATE (value, int, Naverage);
   for (i = 0; i < Naverage; i++) {
     index[i] = i;
-  }
-  for (i = 0; i < Naverage; i++) {
-    j = (Naverage - i) * drand48() + i; // a number between i and Naverage
-    tmp = index[j];
-    index[j] = index[i];
-    index[i] = tmp;
-  }
+    value[i] = subcatalog[0].averageT[i].Nmeasure;
+  }
+  sort_by_Nmeasure (value, index, Naverage);
 
   // count the number of measurements this selection will yield
@@ -266,4 +317,104 @@
       Nmeasure ++;
     }
+    for (j = 0; j < Nsecfilt; j++) {
+      tmpcatalog.secfilt[i*Nsecfilt + j] = subcatalog[0].secfilt[ave*Nsecfilt + j];
+    }
+  }
+
+  if (VERBOSE) {
+    char *basename = filebasename (oldcatalog[0].filename);
+    fprintf (stderr, "limited to "OFF_T_FMT" ("OFF_T_FMT" subset, "OFF_T_FMT" total) stars, "OFF_T_FMT" ("OFF_T_FMT" subset, "OFF_T_FMT" total) measures for catalog %s\n", 
+	     Nmax, subcatalog[0].Naverage, oldcatalog[0].Naverage, Nmeasure, subcatalog[0].Nmeasure,  oldcatalog[0].Nmeasure, basename);
+    free (basename);
+  }
+
+  free (index);
+  free (value);
+  free (subcatalog[0].averageT);
+  free (subcatalog[0].measureT);
+  free (subcatalog[0].secfilt);
+
+  subcatalog[0].averageT = tmpcatalog.averageT;
+  subcatalog[0].measureT = tmpcatalog.measureT;
+  subcatalog[0].secfilt = tmpcatalog.secfilt;
+  subcatalog[0].Naverage = Nmax;
+  subcatalog[0].Nmeasure = Nmeasure;
+  subcatalog[0].Nsecfilt = oldcatalog[0].Nsecfilt;
+  subcatalog[0].Nsecf_mem = Naverage * oldcatalog[0].Nsecfilt;
+
+  return (TRUE);
+}
+
+int LimitDensityCatalog (Catalog *subcatalog, Catalog *catalog) {
+
+  Catalog tmpcatalog;
+
+  double Rmin, Rmax, Dmin, Dmax;
+
+  int Nsecfilt = GetPhotcodeNsecfilt ();
+
+  gfits_scan (&catalog[0].header, "RA0",  "%lf", 1, &Rmin);
+  gfits_scan (&catalog[0].header, "DEC0", "%lf", 1, &Dmin);
+  gfits_scan (&catalog[0].header, "RA1",  "%lf", 1, &Rmax);
+  gfits_scan (&catalog[0].header, "DEC1", "%lf", 1, &Dmax);
+
+  if (VERBOSE2) fprintf (stderr, "extracting from catalog covering region %f,%f to %f,%f\n", Rmin, Dmin, Rmax, Dmax);
+
+  float AREA = fabs(Dmax - Dmin) * fabs(Rmax - Rmin) * cos (0.5*RAD_DEG*(Dmax + Dmin));
+  assert (AREA > 0);
+
+  off_t Nmax = MaxDensityValue * AREA;
+  if (subcatalog[0].Naverage <= Nmax) {
+    if (VERBOSE) {
+      fprintf (stderr, "subcatalog has less than the max density\n");
+    }
+    return (TRUE);
+  }
+
+  off_t Naverage = subcatalog[0].Naverage;
+
+  // select a random subset of Nmax stars from subcatalog using Fisher-Yates
+
+  // we are going to select Nmax entries by generating a random-sorted index list
+  off_t *index, tmp, i, j, ave;
+  ALLOCATE (index, off_t, Naverage);
+  for (i = 0; i < Naverage; i++) {
+    index[i] = i;
+  }
+  for (i = 0; i < Naverage; i++) {
+    j = (Naverage - i) * drand48() + i; // a number between i and Naverage
+    tmp = index[j];
+    index[j] = index[i];
+    index[i] = tmp;
+  }
+
+  // count the number of measurements this selection will yield
+  off_t NMEASURE = 0;
+  for (i = 0; i < Nmax; i++) {
+    ave = index[i];
+    NMEASURE += subcatalog[0].averageT[ave].Nmeasure;
+  }
+
+  // allocate the output data 
+  ALLOCATE (tmpcatalog.averageT, AverageTiny, Nmax);
+  ALLOCATE (tmpcatalog.measureT, MeasureTiny, NMEASURE);
+  ALLOCATE (tmpcatalog.secfilt,  SecFilt, Nmax * Nsecfilt);
+
+  off_t Nmeasure = 0;
+
+  // copy the Nmax selected entries from subcatalog to tmpcatalog (adjusting links)
+  for (i = 0; i < Nmax; i++) {
+    ave = index[i];
+    tmpcatalog.averageT[i] = subcatalog[0].averageT[ave];
+    tmpcatalog.averageT[i].measureOffset = Nmeasure;
+    for (j = 0; j < tmpcatalog.averageT[i].Nmeasure; j++) {
+      off_t offset = subcatalog[0].averageT[ave].measureOffset + j;
+      tmpcatalog.measureT[Nmeasure] = subcatalog[0].measureT[offset];
+      tmpcatalog.measureT[Nmeasure].averef = i;
+      Nmeasure ++;
+    }
+    for (j = 0; j < Nsecfilt; j++) {
+      tmpcatalog.secfilt[i*Nsecfilt + j] = subcatalog[0].secfilt[ave*Nsecfilt + j];
+    }
   }
 
@@ -287,60 +438,2 @@
   return (TRUE);
 }
-
-// for the cases where we are not using a subset of the data, we still need to have a copy of these fields
-int populate_tiny_values (Catalog *catalog) {
-
-  off_t i;
-
-  AverageTiny *averageT;
-  Average *average;
-
-  MeasureTiny *measureT;
-  Measure *measure;
-
-  ALLOCATE (catalog[0].measureT, MeasureTiny, catalog[0].Nmeasure);
-  ALLOCATE (catalog[0].averageT, AverageTiny, catalog[0].Naverage);
-
-  average  = catalog[0].average;
-  averageT = catalog[0].averageT;
-
-  measure  = catalog[0].measure;
-  measureT = catalog[0].measureT;
-
-  for (i = 0; i < catalog[0].Naverage; i++) {
-    // CopyAverageTiny (&catalog[0].averageT[i], &catalog[0].average[i]);
-    averageT[i].R     	      = average[i].R;
-    averageT[i].D     	      = average[i].D;
-    averageT[i].flags 	      = average[i].flags;
-    averageT[i].Nmeasure      = average[i].Nmeasure;
-    averageT[i].measureOffset = average[i].measureOffset;
-  }
-
-  for (i = 0; i < catalog[0].Nmeasure; i++) {
-    // CopyMeasureTiny (&catalog[0].measureT[i], &catalog[0].measure[i]);
-    measureT[i].dR       = measure[i].dR;
-    measureT[i].dD       = measure[i].dD;
-    measureT[i].M        = measure[i].M;
-    measureT[i].Mcal     = measure[i].Mcal;
-    measureT[i].dM       = measure[i].dM;
-    measureT[i].airmass  = measure[i].airmass;
-    measureT[i].Xccd     = measure[i].Xccd;
-    measureT[i].Yccd     = measure[i].Yccd;
-    measureT[i].t        = measure[i].t;
-    measureT[i].dt       = measure[i].dt;
-    measureT[i].averef   = measure[i].averef;
-    measureT[i].imageID  = measure[i].imageID;
-    measureT[i].dbFlags  = measure[i].dbFlags;
-    measureT[i].photcode = measure[i].photcode;
-  }
-
-  return (TRUE);
-}
-
-int free_tiny_values (Catalog *catalog) {
-
-  if (catalog[0].averageT) free (catalog[0].averageT);
-  if (catalog[0].measureT) free (catalog[0].measureT);
-  return (TRUE);
-}
-
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/client_logger.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/client_logger.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/client_logger.c	(revision 34041)
@@ -0,0 +1,35 @@
+# include "relphot.h"
+
+// I'm getting unlogged errors and failures.  I need a log ouput that the clients can
+// write independent of the master
+
+static FILE *logfile = NULL;
+int client_logger_init () {
+
+  char filename[DVO_MAX_PATH];
+
+  snprintf (filename, DVO_MAX_PATH, "%s/log.rlpc.XXXXXX", HOSTDIR);
+    
+  int fd = mkstemp (filename);
+  if (fd == -1) {
+    fprintf (stderr, "failed to open client logger, exiting\n");
+    exit (50);
+  }
+
+  logfile = fdopen (fd, "w");
+  if (!logfile)  {
+    fprintf (stderr, "failed to fdopen client logger, exiting\n");
+    exit (51);
+  }
+  return TRUE;
+}
+
+int client_logger_message (char *format,...) {
+
+  va_list argp;
+
+  va_start (argp, format);
+  vfprintf (logfile, format, argp);
+  va_end (argp);
+  return TRUE;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/global_stats.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/global_stats.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/global_stats.c	(revision 34041)
@@ -1,12 +1,20 @@
 # include "relphot.h"
 
-void global_stats (Catalog *catalog, int Ncatalog) {
+# define MARKTIME(MSG,...) { \
+  float dtime; \
+  gettimeofday (&stopTimer, (void *) NULL); \
+  dtime = DTIME (stopTimer, startTimer); \
+  fprintf (stderr, MSG, __VA_ARGS__); }
+
+void global_stats (Catalog *catalog, int Ncatalog, FlatCorrectionTable *flatcorr) {
 
   StatType stN, stX, stS, imN, imX, imM, imD, msM, msX, msN, msD;
 
-  initstats ("MEAN");
+  // struct timeval startTimer, stopTimer;
 
   fprintf (stderr, "\n");
   fprintf (stderr, "STATS            median     mean    sigma      min      max   Nmeas\n");
+
+  // gettimeofday (&startTimer, (void *) NULL);
 
   int Ns;
@@ -17,7 +25,11 @@
     int seccode = photcodes[Ns][0].code;
 
-    stN = statsStarN (catalog, Ncatalog, Nsec, seccode);
+    // MARKTIME("start star stats: %f sec\n", dtime);
+    stN = statsStarN (catalog, Ncatalog, Nsec, seccode, flatcorr);
+    // MARKTIME("done star N: %f sec\n", dtime);
     stX = statsStarX (catalog, Ncatalog, Nsec);
+    // MARKTIME("done star X: %f sec\n", dtime);
     stS = statsStarS (catalog, Ncatalog, Nsec);
+    // MARKTIME("done star S: %f sec\n", dtime);
   
     fprintf (stderr, "   --- stats for %s ---\n", photcodes[Ns][0].name);
@@ -27,10 +39,10 @@
   }
   
-  imN = statsImageN (catalog);
+  imN = statsImageN (catalog, flatcorr);
   imX = statsImageX (catalog);
   imM = statsImageM (catalog);
   imD = statsImagedM (catalog);
   
-  msN = statsMosaicN (catalog);
+  msN = statsMosaicN (catalog, flatcorr);
   msM = statsMosaicM (catalog);
   msD = statsMosaicdM (catalog);
@@ -46,8 +58,4 @@
   fprintf (stderr, "dMcal mosaic:   %7.4f  %7.4f  %7.4f  %7.4f  %7.4f  %6d\n",   msD.median, msD.mean, msD.sigma, msD.min, msD.max, msD.Nmeas);
   fprintf (stderr, "chisq mosaic:   %7.1f  %7.1f  %7.1f  %7.1f  %7.1f  %6d\n",   msX.median, msX.mean, msX.sigma, msX.min, msX.max, msX.Nmeas);
-  
-
-  initstats (STATMODE);
-
 }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/help.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/help.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/help.c	(revision 34041)
@@ -2,6 +2,6 @@
 
 void relphot_usage (void) {
-  fprintf (stderr, "ERROR: USAGE: relphot (region) (photcode)\n");
-  fprintf (stderr, "       or:    relphot (photcode) -region RA RA DEC DEC\n");
+  fprintf (stderr, "ERROR: USAGE: relphot (photcodes) -region RA RA DEC DEC\n");
+  fprintf (stderr, "       or:    relphot (photcodes) -catalog (name)\n");
   fprintf (stderr, "       or:    relphot -averages -region RA RA DEC DEC\n");
   fprintf (stderr, "  use -h for more usage information\n");
@@ -18,6 +18,6 @@
 
 show_help:
-  fprintf (stderr, "ERROR: USAGE: relphot (region) (photcode)\n");
-  fprintf (stderr, "       or:    relphot (photcode) -region RA RA DEC DEC\n");
+  fprintf (stderr, "ERROR: USAGE: relphot (photcode) -region RA RA DEC DEC\n");
+  fprintf (stderr, "       or:    relphot (photcode) -catalog (name)\n");
   fprintf (stderr, "       or:    relphot -averages -region RA RA DEC DEC\n");
   fprintf (stderr, "  options: \n");
@@ -37,4 +37,5 @@
   fprintf (stderr, "  -imfreeze\n");
   fprintf (stderr, "  -grid\n");
+  fprintf (stderr, "  -reset-ubercal : also reset ubercal-ed zero points (otherwise they are sacrosanct)\n");
   fprintf (stderr, "  -area Xmin Xmax Ymin Ymax\n");
   fprintf (stderr, "  -instmag min max\n");
@@ -43,2 +44,33 @@
 }
 
+void relphot_client_usage (void) {
+  fprintf (stderr, "ERROR: USAGE: relphot (photcodes) -load (filename) -hostID (hostID) -hostdir (hostdir) [options]\n");
+  fprintf (stderr, "       or:    relphot -update (filename) -hostID (hostID) -hostdir (hostdir) [options]\n");
+  fprintf (stderr, "       or:    relphot -update-objects -hostID (hostID) -hostdir (hostdir) [options]\n");
+  fprintf (stderr, "  use -h for more usage information\n");
+  exit (2);
+} 
+
+void relphot_client_help (int argc, char **argv) {
+
+  /* check for help request */
+  if (get_argument (argc, argv, "-help")) goto show_help;
+  if (get_argument (argc, argv, "-h"))    goto show_help;
+  if (argc == 1) relphot_client_usage();
+  return;
+
+show_help:
+  fprintf (stderr, "USAGE: relphot_client [-load / -update] (db info)\n\n");
+  fprintf (stderr, "       relphot_client -load (bcatalog) : extract the bright catalog subset from client's tables\n");
+  fprintf (stderr, "                            (bcatalog) : location where the bright subset is saved\n");
+  fprintf (stderr, "       relphot_client -update (images) : apply calculated zero points to the client's tables\n\n");
+  fprintf (stderr, "                              (images) : location of the table with the image zero points\n");
+  fprintf (stderr, "       relphot_client -update-objects  : determine average magnitudes for objects\n\n");
+  fprintf (stderr, "       db info : -hostID (hostID) -hostdir (hostdir) -catdir (catdir)\n");
+  fprintf (stderr, "other options:\n");
+  fprintf (stderr, "  -v  : verbose output\n");
+  fprintf (stderr, "  -vv : extra verbose output\n");
+  fprintf (stderr, "  \n");
+  exit (2);
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/initialize.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/initialize.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/initialize.c	(revision 34041)
@@ -2,6 +2,4 @@
 
 void initialize (int argc, char **argv) {
-
-  int N;
 
   relphot_help (argc, argv);
@@ -10,54 +8,29 @@
 
   if (!UpdateAverages) {
-
-    N = UserPatchSelect ? 1 : 2;
-
-# if (0)
-    // XXX DEP
-    if ((photcode = GetPhotcodebyName (argv[N])) == NULL) {
-      fprintf (stderr, "ERROR: photcode %s not found in photcode table\n", argv[N]);
-      exit (1);
+    // load the list of photcodes into the globals (photcodes, Nphotcodes)
+    // only a single remaining argument in this mode (the list of photcodes, eg g,r,i)
+    PhotcodeList = strcreate (argv[1]);
+    photcodes = ParsePhotcodeList (PhotcodeList, &Nphotcodes, TRUE); // require SEC photcodes
+  } else {
+    char tmpline1[256];
+    int Ns;
+    Nphotcodes = GetPhotcodeNsecfilt ();
+    ALLOCATE (photcodes, PhotCode *, Nphotcodes);
+    ALLOCATE (PhotcodeList, char, 256);
+    for (Ns = 0; Ns < Nphotcodes; Ns++) {
+      photcodes[Ns] = GetPhotcodebyNsec (Ns);
+      if (Ns > 0) {
+	snprintf (tmpline1, 256, "%s,%s", PhotcodeList, photcodes[Ns][0].name);
+      } else {
+	snprintf (tmpline1, 256, "%s", photcodes[Ns][0].name);
+      }
+      strcpy (PhotcodeList, tmpline1);
     }
-    if (photcode[0].type != PHOT_SEC) {
-      fprintf (stderr, "photcode %s is not a primary or secondary filter\n", argv[N]);
-      exit (1);
-    }
-    // PhotSec is used to select the single average photcode being processed
-    PhotSec = GetPhotcodeNsec (photcode[0].code);
-# endif
-
-    Nphotcodes = 0;
-    photcodes = NULL;
-    int NPHOTCODES = 10;
-    ALLOCATE (photcodes, PhotCode *, NPHOTCODES);
-
-    /* parse the comma-separated list of photcodesKeep */
-    char *myList = strcreate(argv[N]);
-    char *list = myList;
-    char *codename = NULL;
-    char *ptr = NULL;
-    while ((codename = strtok_r (list, ",", &ptr)) != NULL) {
-      list = NULL; // pass NULL on successive strtok_r calls
-      fprintf (stderr, "PHOTCODE LIST: %s\n", myList);
-      fprintf (stderr, "codename: %s\n", codename);
-      if ((photcodes[Nphotcodes] = GetPhotcodebyName (codename)) == NULL) {
-        fprintf (stderr, "ERROR: photcode %s not found in photcode table\n", codename);
-        exit (1);
-      }
-      if (photcodes[Nphotcodes][0].type != PHOT_SEC) {
-	  fprintf (stderr, "photcode %s is not an filter type (SEC)\n", codename);
-	  exit (1);
-      }
-      Nphotcodes ++;
-      CHECK_REALLOCATE (photcodes, PhotCode *, NPHOTCODES, Nphotcodes, 10);
-    }
-  }
-  // XXX DEP PhotNsec = GetPhotcodeNsecfilt ();
+  }    
+    
   if (USE_GRID && (Nphotcodes > 1)) {
     fprintf (stderr, "grid correction analysis currently can only operate on a single photcode\n");
     exit (1);
   }
-
-  initstats (STATMODE);
 
   IMAGE_BAD = ID_IMAGE_PHOTOM_POOR | ID_IMAGE_PHOTOM_FEW | ID_IMAGE_PHOTOM_SKIP;
@@ -95,2 +68,45 @@
   srand48(B);
 }
+
+void initialize_client (int argc, char **argv) {
+
+  // XXX need to determine which globals can affect relphot_client in either mode and pass appropriately
+
+  relphot_client_help (argc, argv);
+  ConfigInit (&argc, argv);
+  args_client (argc, argv);
+
+  if (MODE == MODE_UPDATE_OBJECTS) return;
+
+  // load the list of photcodes into the globals (photcodes, Nphotcodes)
+  PhotcodeList = strcreate (argv[1]);
+  photcodes = ParsePhotcodeList (PhotcodeList, &Nphotcodes, TRUE); // require SEC photcodes
+}
+
+void ParsePhotcodeList_old (char *word) {
+
+  Nphotcodes = 0;
+  photcodes = NULL;
+  int NPHOTCODES = 10;
+  ALLOCATE (photcodes, PhotCode *, NPHOTCODES);
+
+  /* parse the comma-separated list of photcodesKeep */
+  char *myList = strcreate(word);
+  char *list = myList;
+  char *codename = NULL;
+  char *ptr = NULL;
+  while ((codename = strtok_r (list, ",", &ptr)) != NULL) {
+    list = NULL; // pass NULL on successive strtok_r calls
+    if ((photcodes[Nphotcodes] = GetPhotcodebyName (codename)) == NULL) {
+      fprintf (stderr, "ERROR: photcode %s not found in photcode table\n", codename);
+      exit (1);
+    }
+    if (photcodes[Nphotcodes][0].type != PHOT_SEC) {
+      fprintf (stderr, "photcode %s is not an filter type (SEC)\n", codename);
+      exit (1);
+    }
+    Nphotcodes ++;
+    CHECK_REALLOCATE (photcodes, PhotCode *, NPHOTCODES, Nphotcodes, 10);
+  }
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/liststats.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/liststats.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/liststats.c	(revision 34041)
@@ -1,30 +1,25 @@
 # include "relphot.h"
 
-enum {M_MEAN, M_MEDIAN, M_WT_MEAN, M_INNER_MEAN, 
-      M_INNER_WTMEAN, M_CHI_INNER_MEAN, M_CHI_INNER_WTMEAN};
+void liststats_setmode (StatType *stats, char *strmode) {
 
-static int statmode;
+  stats->statmode = -1;
+  if (!strcmp (strmode, "MEAN"))             { stats->statmode = STATS_MEAN; return; }
+  if (!strcmp (strmode, "MEDIAN"))           { stats->statmode = STATS_MEDIAN; return; }
+  if (!strcmp (strmode, "WT_MEAN"))          { stats->statmode = STATS_WT_MEAN; return; }
+  if (!strcmp (strmode, "INNER_MEAN"))       { stats->statmode = STATS_INNER_MEAN; return; }
+  if (!strcmp (strmode, "INNER_WTMEAN"))     { stats->statmode = STATS_INNER_WTMEAN; return; }
+  if (!strcmp (strmode, "CHI_INNER_MEAN"))   { stats->statmode = STATS_CHI_INNER_MEAN; return; }
+  if (!strcmp (strmode, "CHI_INNER_WTMEAN")) { stats->statmode = STATS_CHI_INNER_WTMEAN; return; }
 
-void initstats (char *mode) {
-
-  statmode = -1;
-  if (!strcmp (mode, "MEAN")) statmode = M_MEAN;
-  if (!strcmp (mode, "MEDIAN")) statmode = M_MEDIAN;
-  if (!strcmp (mode, "WT_MEAN")) statmode = M_WT_MEAN;
-  if (!strcmp (mode, "INNER_MEAN")) statmode = M_INNER_MEAN;
-  if (!strcmp (mode, "INNER_WTMEAN")) statmode = M_INNER_WTMEAN;
-  if (!strcmp (mode, "CHI_INNER_MEAN")) statmode = M_CHI_INNER_MEAN;
-  if (!strcmp (mode, "CHI_INNER_WTMEAN")) statmode = M_CHI_INNER_WTMEAN;
-
-  if (statmode == -1) {
-    fprintf (stderr, "ERROR: invalid stats mode: %s\n", mode);
-    exit (1);
-  }
+  fprintf (stderr, "ERROR: invalid stats mode: %s\n", strmode);
+  exit (1);
 }
 
-int liststats (double *value, double *dvalue, int N, StatType *stats) {
+int liststats (double *value, double *dvalue, double *weight, int N, StatType *stats) {
   
-  int i, ks, ke, Nm;
-  double Mo, dMo, M, dM, X2, dS, *chi;
+  int i, ks, ke;
+  double Mo, dMo, M, dM, Nm, X2, dS, R, W, *chi;
+
+  myAssert (stats->statmode != STATS_NONE, "programming error, liststats mode not set");
 
   ke = ks = dMo = 0;
@@ -37,62 +32,116 @@
   if (N < 1) return (FALSE);
 
-  dsortpair (value, dvalue, N);
-  stats[0].median = value[(int)(0.5*N)];
-  stats[0].min    = value[0];
-  stats[0].max    = value[N-1];
+  int N80 = MIN (N-1, 0.8*N);
+  int N20 = MAX (0, 0.2*N);
 
-  switch (statmode) {
-  case M_MEDIAN:
-    ks = 0;
-    ke = N;
-    Mo = stats[0].median;
-    Nm = N;
-    goto chisq;
-    break;
-  case M_MEAN:
-  case M_WT_MEAN:
-    ks = 0;
-    ke = N;
-    break;
-  case M_INNER_MEAN:
-  case M_INNER_WTMEAN:
-  case M_CHI_INNER_MEAN:
-  case M_CHI_INNER_WTMEAN:
-    ks = 0.25*N + 0.50;
-    ke = 0.75*N + 0.25;
-    if (N <= 3) {
+  if (weight) {
+    dsortthree (value, dvalue, weight, N);
+  } else {
+    dsortpair (value, dvalue, N);
+  }
+
+  // these values do not depend on the errors or weighting scheme
+  stats[0].median  = value[(int)(0.5*N)];
+  stats[0].min     = value[0];
+  stats[0].max     = value[N-1];
+  stats[0].Upper80 = value[N80];
+  stats[0].Lower20 = value[N20];
+
+  switch (stats->statmode) {
+    case STATS_MEDIAN:
       ks = 0;
       ke = N;
-    }
-    break;
+      Mo = stats[0].median;
+      Nm = N;
+      goto chisq;
+      break;
+    case STATS_MEAN:
+    case STATS_WT_MEAN:
+      ks = 0;
+      ke = N;
+      break;
+    case STATS_INNER_MEAN:
+    case STATS_INNER_WTMEAN:
+    case STATS_CHI_INNER_MEAN:
+    case STATS_CHI_INNER_WTMEAN:
+      ks = 0.25*N + 0.50;
+      ke = 0.75*N + 0.25;
+      if (N <= 3) {
+	ks = 0;
+	ke = N;
+      }
+      break;
+    case STATS_NONE:
+      myAbort ("undefined stats");
   }    
 
-  if ((statmode == M_CHI_INNER_MEAN) || (statmode == M_CHI_INNER_WTMEAN)) {
+  // for these two modes, I need a vector of the chi-square contribution
+  // I'm actually just using chisq to get the correct sorting order
+  if ((stats->statmode == STATS_CHI_INNER_MEAN) || (stats->statmode == STATS_CHI_INNER_WTMEAN)) {
     ALLOCATE (chi, double, N);
     for (i = 0; i < N; i++) {
       chi[i] = (value[i] - stats[0].median) / dvalue[i];
     }
-    dsortthree (chi, value, dvalue, N);
+    if (weight) {
+      dsortfour (chi, value, dvalue, weight, N);
+    } else {
+      dsortthree (chi, value, dvalue, N);
+    }
     free (chi);
   }
 
-  /* calculating the per-star offset based on the weighted average */
-  M = dM = Nm = 0;
-  if ((statmode == M_WT_MEAN) || (statmode == M_INNER_WTMEAN) || (statmode == M_CHI_INNER_WTMEAN)) {
-    for (i = ks; i < ke; i++) {
-      M   += value[i] / SQ (dvalue[i]);
-      dM  += 1.0 / SQ (dvalue[i]);
-      Nm  ++;  
-    }	
-    Mo = M / dM;
-    dMo = sqrt (1.0 / dM);
+  int WeightedMean = FALSE;
+  WeightedMean |= (stats->statmode == STATS_WT_MEAN);
+  WeightedMean |= (stats->statmode == STATS_INNER_WTMEAN);
+  WeightedMean |= (stats->statmode == STATS_CHI_INNER_WTMEAN);
+
+  /* calculating the per-star offset based on the desired weighting scheme */
+  M = dM = Nm = W = R = 0;
+  if (weight) {
+    // the weight value is multiplied by whichever nominal weighting scheme is provided 
+    // thus the user should set weight to 1.0 for nominal weight, and 100 for heavy weight (or so)
+    // and 0.01 for under-weight
+    if (WeightedMean) {
+      for (i = ks; i < ke; i++) {
+	M  += value[i] * weight[i] / SQ(dvalue[i]);
+	W  +=            weight[i] / SQ(dvalue[i]);
+	dM += SQ (weight[i] / dvalue[i]);
+	R  += weight[i] / SQ(dvalue[i]);
+	Nm += 1.0;  
+      }	
+      Mo  = M / W;
+      dMo = sqrt (dM) / R;
+    } else {
+      for (i = ks; i < ke; i++) {
+	M  += value[i] * weight[i];
+	W  +=            weight[i];
+	dM += SQ (weight[i] * dvalue[i]);
+	R  += weight[i];
+	Nm += 1.0;  
+      }	
+      Mo  = M / W;
+      dMo = sqrt (dM) / R;
+    }
   } else {
-    for (i = ks; i < ke; i++) {
-      M   += value[i];
-      dM  += SQ (dvalue[i]);
-      Nm  ++;  
-    }	
-    Mo = M / (double) Nm;
-    dMo = sqrt (dM / (double) Nm);
+    // NULL weight vector is supplied, revert to standard form (above reverts if weight[i] == 1)
+    if (WeightedMean) {
+      // weighted by inverse-variance
+      for (i = ks; i < ke; i++) {
+	M   += value[i] / SQ (dvalue[i]);
+	dM  += 1.0 / SQ (dvalue[i]);
+	Nm  += 1.0;  
+      }	
+      Mo = M / dM;
+      dMo = sqrt (1.0 / dM);
+    } else {
+      // pure un-weighted
+      for (i = ks; i < ke; i++) {
+	M   += value[i];
+	dM  += SQ (dvalue[i]);
+	Nm  += 1.0;  
+      }	
+      Mo = M / Nm;
+      dMo = sqrt (dM) / Nm;
+    }
   }
 
@@ -106,6 +155,6 @@
     dS += M;
   }
-  X2 = X2 / Nm;
-  dS = sqrt (dS / Nm);
+  X2 = X2 / (Nm - 1);
+  dS = sqrt (dS / (Nm - 1));
 
   stats[0].mean  = Mo;
@@ -118,2 +167,11 @@
 }
 
+// we could define the weight to be the only scale factor:
+// \mu      = \sum (value_i * weight_i) / \sum (weight_i)
+// \sigma^2 = (1/R) \sum (weight_i^2 \sigma_i^2) 
+// R = \sum (weight_i^2)
+
+// or, we could define the weight to be a scale factor times the inverse error:
+// \mu      = \sum (value_i * weight_i / sigma_i) / \sum (weight_i)
+// \sigma^2 = (1/R) \sum (weight_i^2 \sigma_i^2) 
+// R = \sum (weight_i^2)
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/load_catalogs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/load_catalogs.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/load_catalogs.c	(revision 34041)
@@ -1,11 +1,29 @@
 # include "relphot.h"
-
-Catalog *load_catalogs (SkyList *skylist, int *Ncatalog) {
+# include <sys/types.h>
+# include <sys/wait.h>
+
+// this function loops over the catalogs, loads the data, and extracts a bright subset
+// the returned array (catalog, Ncatalog) has the same layout as the full database, but
+// only a subset of the detetions & objects
+
+// if this function is called in parallel mode, it in turn calls load_catalogs_parallel,
+// which distributes the work to the remote hosts and loads their results
+
+// if this function is called with a specified hostID, then only the fraction of the
+// database hosted by that hostID is loaded
+Catalog *load_catalogs (SkyList *skylist, int *Ncatalog, int hostID, char *hostpath) {
 
   off_t i, Nmeas, Nstar, Nmeas_total, Nstar_total;
   Catalog *catalog, tcatalog;
 
+  // XXX need to decide how to determine PARALLEL mode...
+  if (PARALLEL && !hostID) {
+    catalog = load_catalogs_parallel (skylist, Ncatalog);
+    return catalog;
+  }
+
   if (VERBOSE2) fprintf (stderr, "loading catalog data\n");
 
+  // a bit of an over-alloc, since we don't load all catalogs for a region 
   ALLOCATE (catalog, Catalog, skylist[0].Nregions);
 
@@ -14,8 +32,15 @@
   // load data from each region file, only use bright stars
   for (i = 0; i < skylist[0].Nregions; i++) {
+    // XXX keep in mind that not all catalogs are loaded
     dvo_catalog_init (&catalog[i], TRUE);
 
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+
     // set up the basic catalog info
-    tcatalog.filename = skylist[0].filename[i];
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", hostpath, skylist[0].regions[i]->name);
+    tcatalog.filename = hostID ? hostfile : skylist[0].filename[i];
+
     tcatalog.catformat = dvo_catalog_catformat (CATFORMAT);    // set the default catformat from config data
     tcatalog.catmode   = dvo_catalog_catmode (CATMODE);        // set the default catmode from config data
@@ -34,9 +59,14 @@
     }
 
+    if (!tcatalog.sorted) {
+      fprintf (stderr, "this database is not sorted.  please sort using addstar -resort\n");
+      exit (1);
+    }
+
     Nstar_total += tcatalog.Naverage;
     Nmeas_total += tcatalog.Nmeasure;
 
     // select only the brighter stars
-    bcatalog (&catalog[i], &tcatalog);
+    bcatalog (&catalog[i], &tcatalog, i);
     dvo_catalog_unlock (&tcatalog);
     dvo_catalog_free (&tcatalog);
@@ -48,4 +78,9 @@
     Nstar += catalog[i].Naverage;
     Nmeas += catalog[i].Nmeasure;
+    if ((sizeof(IDX_T) == 8) && (catalog[i].Nmeasure > 0xffffffff)) {
+      fprintf (stderr, "ERROR: using small-sized IDX_T on data with more than 2G detections per table will cause errors\n");
+      fprintf (stderr, "  If you need to do this, and you can afford the RAM, rebuild with IDX_T set to off_t (see relphot.h, ImagesOps.c)\n");
+      exit (3);
+    }
   }
   if (Nstar < 2) { 
@@ -54,5 +89,6 @@
 
   fprintf (stderr, "using "OFF_T_FMT" of "OFF_T_FMT" stars ("OFF_T_FMT" of "OFF_T_FMT" measurements)\n", Nstar, Nstar_total, Nmeas, Nmeas_total);
-  if (Nstar < 1) Shutdown ("%s", "ERROR: no stars match the minimum requirements; exiting \n");
+  if (!hostID && (Nstar < 1)) Shutdown ("%s", "ERROR: no stars match the minimum requirements; exiting \n");
+  // in regular relphot, we shutdown here; in relphot_client, we generate and return an empty table (for consistency)
    
 
@@ -67,2 +103,141 @@
    need to use an XCLD lock here.  
 */
+
+// CATDIR is supplied globally
+# define DEBUG 1
+Catalog *load_catalogs_parallel (SkyList *sky, int *Ncatalog) {
+
+  int Nsecfilt  = GetPhotcodeNsecfilt ();               // set the desired number in case we need to create the catalog
+
+  // launch the setphot_client jobs to the parallel hosts
+
+  // load the list of hosts
+  HostTable *table = HostTableLoad (CATDIR, sky->hosts);
+  if (!table) {
+    fprintf (stderr, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+    exit (1);
+  }    
+
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    ALLOCATE (table->hosts[i].results, char, 1024);
+    snprintf (table->hosts[i].results, 1024, "%s/relphot.catalog.subset.dat", table->hosts[i].pathname);
+
+    // options / arguments that can affect relphot_client -load:
+    // VERBOSE, VERBOSE2
+    // KEEP_UBERCAL
+    // RESET (-reset)
+    // TimeSelect -time
+    // DophotSelect
+    // (note that psfQual is applied rigidly at 0.85, as is the galaxy test)
+    // MAG_LIM
+    // SIGMA_LIM
+    // ImagSelect, ImagMin, ImagMax
+    // MaxDensityUse, MaxDensityValue
+
+    char command[1024];
+    snprintf (command, 1024, "relphot_client %s -load %s -hostID %d -D CATDIR %s -hostdir %s -region %f %f %f %f -D CAMERA %s -D MAG_LIM %f -D SIGMA_LIM %f", 
+	      PhotcodeList, table->hosts[i].results, table->hosts[i].hostID, CATDIR, table->hosts[i].pathname, UserPatch.Rmin, UserPatch.Rmax, UserPatch.Dmin, UserPatch.Dmax, CAMERA, MAG_LIM, SIGMA_LIM);
+
+    char tmpline[1024];
+    if (VERBOSE)       { snprintf (tmpline, 1024, "%s -v",              command);                    strcpy (command, tmpline); }
+    if (VERBOSE2)      { snprintf (tmpline, 1024, "%s -vv",             command); 		     strcpy (command, tmpline); }
+    if (RESET)         { snprintf (tmpline, 1024, "%s -reset",          command); 		     strcpy (command, tmpline); }
+    if (!KEEP_UBERCAL) { snprintf (tmpline, 1024, "%s -reset-ubercal",  command); 		     strcpy (command, tmpline); }
+    if (DophotSelect)  { snprintf (tmpline, 1024, "%s -dophot %d",      command, DophotValue);       strcpy (command, tmpline); }
+    if (ImagSelect)    { snprintf (tmpline, 1024, "%s -instmag %f %f",  command, ImagMin, ImagMax);  strcpy (command, tmpline); }
+    if (MaxDensityUse) { snprintf (tmpline, 1024, "%s -max-density %f", command, MaxDensityValue);   strcpy (command, tmpline); }
+    if (TimeSelect) { 
+      char *tstart = ohana_sec_to_date (TSTART);
+      char *tstop  = ohana_sec_to_date (TSTOP);
+      snprintf (tmpline, 1024, "%s -time %s %s", command, tstart, tstop); 
+      free (tstart);
+      free (tstop);
+      strcpy (command, tmpline); 
+    }
+
+    fprintf (stderr, "command: %s\n", command);
+
+    if (PARALLEL_MANUAL) continue;
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	fprintf (stderr, "ERROR running relphot_client\n");
+	exit (2);
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	continue;
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+
+  if (PARALLEL_MANUAL) {
+    fprintf (stderr, "run the relphot_client commands above.  when these are done, hit return\n");
+    getchar();
+  }
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    // if any one of the remote jobs fails, we should fail and exit
+    int status = HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+    if (!status) {
+      fprintf (stderr, "at least one remote client job failed to load data, exiting\n");
+      exit (3);
+    }
+  }
+
+  // each host generates a BrightCatalog structure, with the measure, average, etc value
+  // loaded into a single set of arrays (of MeasureTiny, AverageTiny, Secfilt).  I need to
+  // split out the per-catalog measurements into separate catalog entries.
+
+  // set up an initial array of catalogs
+  CatalogSplitter *catalogs = BrightCatalogSplitInit (Nsecfilt);
+
+  for (i = 0; i < table->Nhosts; i++) {
+
+    BrightCatalog *bcatalog = NULL;
+    while ((bcatalog = BrightCatalogLoad (table->hosts[i].results)) == NULL) {
+      // failed to get the data from this host.  This can happen for various reasons.  Give the user a chance to try again...
+      fprintf (stderr, "failed to read data from %s, stopping operations until this can be fixed\n", table->hosts[i].hostname);
+      fprintf (stderr, "you may run the command manually and send this process the CONT signal\n");
+      int pid = getpid();
+      kill (pid, SIGSTOP);
+      fprintf (stderr, "retrying %s\n", table->hosts[i].results);
+    }
+    free (table->hosts[i].results);
+    table->hosts[i].results = NULL;
+    
+    BrightCatalogSplit (catalogs, bcatalog);
+
+    free (bcatalog->average);
+    free (bcatalog->measure);
+    free (bcatalog->secfilt);
+    free (bcatalog);
+  }
+
+  Catalog *catalog = catalogs->catalog;
+  *Ncatalog = catalogs->Ncatalog;
+  BrightCatalogSplitFree (catalogs);
+
+  int Nmeasure = 0;
+  int Naverage = 0;
+  for (i = 0; i < catalogs->Ncatalog; i++) {
+    Nmeasure += catalogs->catalog[i].Nmeasure;
+    Naverage += catalogs->catalog[i].Naverage;
+  }
+
+  fprintf (stderr, "loaded %d catalogs, using a total of %d stars (%d measures)\n", catalogs->Ncatalog, Naverage, Nmeasure);
+
+  return (catalog);
+}      
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/load_images.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/load_images.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/load_images.c	(revision 34041)
@@ -9,5 +9,5 @@
 // This function generates a subset of the images based on selections.  Input db has already
 // been loaded with the raw fits table data
-SkyList *load_images (FITS_DB *db, char *regionName, SkyRegion *region, int RegionSelect) {
+SkyList *load_images (FITS_DB *db, char *regionName, SkyRegion *region) {
 
   Image     *image, *subset;
@@ -15,4 +15,5 @@
   off_t     *LineNumber;
   struct timeval start, stop;
+  char *inSubset;
 
   SkyTable *sky = NULL;
@@ -34,6 +35,22 @@
   MARKTIME("read image table: %f sec\n", dtime);
 
+  // allocate and init an array to identify the images included in the subset
+  ALLOCATE (inSubset, char, Nimage);
+  memset (inSubset, 0, Nimage);
+
   // determine the populated SkyRegions overlapping the requested area
-  if (RegionSelect) {
+
+  // if the user selects a specific catalog, do that one; 
+  // otherwise limit to the selection region
+  if (regionName) {
+    Nchar = strlen(regionName);
+    if (!strcmp (&regionName[Nchar-4], ".cpt")) regionName[Nchar-4] = 0;
+    skylist = SkyListByName (sky, regionName);
+
+    // select the images which overlap the selected sky regions
+    // 'subset' points to a new copy of the data (different from 'image')
+    subset = select_images (skylist, image, Nimage, inSubset, &LineNumber, &Nsubset, NULL);
+    MARKTIME("selected %d overlapping images: %f sec\n", (int) Nsubset, dtime);
+  } else {
     if (region[0].Rmin > region[0].Rmax) {
       SkyRegion subregion;
@@ -42,10 +59,7 @@
       skylist = SkyListByPatch (sky, -1, &subregion);
 
-      subregion.Rmin = region[0].Rmin; subregion.Rmax = 360.0; 
-      SkyList *extraList = SkyListByPatch (sky, -1, &subregion);
-
       // select the images which overlap the selected sky regions
       // 'subset' points to a new copy of the data (different from 'image')
-      subset = select_images (skylist, image, Nimage, &LineNumber, &Nsubset);
+      subset = select_images (skylist, image, Nimage, inSubset, &LineNumber, &Nsubset, &subregion);
       MARKTIME("selected %d overlapping images: %f sec\n", (int) Nsubset, dtime);
 
@@ -54,5 +68,8 @@
       off_t *LineNumberExtra, i;
 
-      subsetExtra = select_images (extraList, image, Nimage, &LineNumberExtra, &NsubsetExtra);
+      subregion.Rmin = region[0].Rmin; subregion.Rmax = 360.0; 
+      SkyList *extraList = SkyListByPatch (sky, -1, &subregion);
+
+      subsetExtra = select_images (extraList, image, Nimage, inSubset, &LineNumberExtra, &NsubsetExtra, &subregion);
       MARKTIME("selected %d overlapping images: %f sec\n", (int) Nsubset, dtime);
 
@@ -71,26 +88,26 @@
       // select the images which overlap the selected sky regions
       // 'subset' points to a new copy of the data (different from 'image')
-      subset = select_images (skylist, image, Nimage, &LineNumber, &Nsubset);
+      subset = select_images (skylist, image, Nimage, inSubset, &LineNumber, &Nsubset, region);
       MARKTIME("selected %d overlapping images: %f sec\n", (int) Nsubset, dtime);
     }
-  } else {
-    Nchar = strlen(regionName);
-    if (!strcmp (&regionName[Nchar-4], ".cpt")) regionName[Nchar-4] = 0;
-    skylist = SkyListByName (sky, regionName);
+  } 
 
-    // select the images which overlap the selected sky regions
-    // 'subset' points to a new copy of the data (different from 'image')
-    subset = select_images (skylist, image, Nimage, &LineNumber, &Nsubset);
-    MARKTIME("selected %d overlapping images: %f sec\n", (int) Nsubset, dtime);
+# if (1)
+  FILE *ftest = fopen ("skydump.dat", "w");
+  int i;
+  for (i = 0; i < skylist[0].Nregions; i++) {
+    fprintf (ftest, "%s : %f %f : %f %f\n", skylist[0].regions[i][0].name, skylist[0].regions[i][0].Rmin, skylist[0].regions[i][0].Rmax, skylist[0].regions[i][0].Dmin, skylist[0].regions[i][0].Dmax);
   }
+  fclose (ftest);
+# endif
 
+  // match chips to mosaics (if applicable)
+  initMosaics (subset, Nsubset, image, inSubset, Nimage);
+  MARKTIME("init mosaics: %f sec\n", dtime);
+  
   // save the subset of images in the static reference in ImageOps, set up indexes
   initImages (subset, LineNumber, Nsubset);
   MARKTIME("init images: %f sec\n", dtime);
 
-  // match chips to mosaics (if applicable)
-  initMosaics (subset, Nsubset);
-  MARKTIME("init mosaics: %f sec\n", dtime);
-  
   return (skylist);
 }
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/plot_scatter.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/plot_scatter.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/plot_scatter.c	(revision 34041)
@@ -1,5 +1,5 @@
 # include "relphot.h"
    
-void plot_scatter (Catalog *catalog, int Ncatalog) {
+void plot_scatter (Catalog *catalog, int Ncatalog, FlatCorrectionTable *flatcorr) {
 
   off_t i, j, k, m, N, Ntot;
@@ -11,5 +11,5 @@
   for (i = 0; i < Ncatalog; i++) {
     for (j = 0; j < catalog[i].Naverage; j++) {
-      Ntot += catalog[i].average[j].Nmeasure;
+      Ntot += catalog[i].averageT[j].Nmeasure;
     }
   }
@@ -32,7 +32,7 @@
 	    /* calculate the average value for a single star */
 	    if (catalog[i].secfilt[Nsecfilt*j+Nsec].flags & STAR_BAD) continue;  
-	    m = catalog[i].average[j].measureOffset;
+	    m = catalog[i].averageT[j].measureOffset;
 
-	    for (k = 0; k < catalog[i].average[j].Nmeasure; k++, m++) {
+	    for (k = 0; k < catalog[i].averageT[j].Nmeasure; k++, m++) {
 		// skip measurements that do not match the current photcode
 		int ecode = GetPhotcodeEquivCodebyCode (catalog[i].measureT[m].photcode);
@@ -40,5 +40,5 @@
 
 		if (catalog[i].measureT[m].dbFlags & MEAS_BAD) continue;
-		Mcal = getMcal  (m, i);
+		Mcal = getMcal  (m, i, flatcorr, catalog);
 		if (isnan(Mcal)) continue;
 		Mmos = getMmos  (m, i);
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/plotstuff.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/plotstuff.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/plotstuff.c	(revision 34041)
@@ -165,5 +165,5 @@
   graphdata[0].color = black;
   graphdata[0].lweight = 0;
-  graphdata[0].size = 0.5;
+  graphdata[0].size = 1.0;
 
   graphdata[0].xmin = dUNDEF;
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/reload_catalogs.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/reload_catalogs.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/reload_catalogs.c	(revision 34041)
@@ -1,3 +1,5 @@
 # include "relphot.h"
+
+# define DEBUG 1
 
 # define TIMESTAMP(TIME) \
@@ -7,5 +9,5 @@
     gettimeofday (&start, (void *) NULL);
 
-void reload_catalogs (SkyList *skylist) {
+void reload_catalogs (SkyList *skylist, FlatCorrectionTable *flatcorr, int hostID, char *hostpath) {
 
   int i;
@@ -25,10 +27,24 @@
   double time7 = 0.0;
 
+  // XXX need to decide how to determine PARALLEL mode...
+  if (PARALLEL && !hostID) {
+    reload_catalogs_parallel (skylist);
+    return;
+  }
+
   if (VERBOSE) fprintf (stderr, "re-loading catalog data\n");
 
   /* load data from each region file */
   for (i = 0; i < skylist[0].Nregions; i++) {
+
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+
     gettimeofday (&start, (void *) NULL);
-    catalog.filename = skylist[0].filename[i];
+
+    // set up the basic catalog info
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", hostpath, skylist[0].regions[i]->name);
+    catalog.filename = hostID ? hostfile : skylist[0].filename[i];
 
     // only update existing db tables
@@ -57,7 +73,8 @@
     TIMESTAMP(time2);
 
-    populate_tiny_values(&catalog);
+    populate_tiny_values(&catalog, DVO_TV_MEASURE | DVO_TV_AVERAGE);
     TIMESTAMP(time3a);
 
+    // XXX need to worry about the image subset data
     initImageBins  (&catalog, 1, FALSE);
     initMosaicBins (&catalog, 1, FALSE);
@@ -69,7 +86,12 @@
     TIMESTAMP(time4);
 
-    setMrelFinal (&catalog);
+    initMrel (&catalog, 1);
+    setMrelFinal (&catalog, flatcorr, FALSE);
     TIMESTAMP(time5);
 
+    // modify the output format as desired (ignore current format on disk)
+    if (UPDATE_CATFORMAT) {
+      catalog.catformat = dvo_catalog_catformat (UPDATE_CATFORMAT);
+    }
     dvo_catalog_save (&catalog, VERBOSE); 
     dvo_catalog_unlock (&catalog);
@@ -83,13 +105,120 @@
     freeGridBins (1);
     TIMESTAMP(time7);
-  }
-
-  fprintf (stderr, "time1  %f : find catalog\n", time1);
-  fprintf (stderr, "time2  %f : load catalog\n", time2);
-  fprintf (stderr, "time3a %f : init imbins\n",  time3a);
-  fprintf (stderr, "time3b %f : init imbins\n",  time3b);
-  fprintf (stderr, "time4  %f : find images\n",  time4);
-  fprintf (stderr, "time5  %f : set Mrel\n",     time5);
-  fprintf (stderr, "time6  %f : save catalog\n", time6);
-  fprintf (stderr, "time7  %f : free catalog\n", time7);
+
+    if (hostID) {
+      client_logger_message ("updated catalog file %s\n", catalog.filename);
+    }
+  }
+
+  fprintf (stderr, "time step 1  %10.3f sec : find catalog\n", time1);
+  fprintf (stderr, "time step 2  %10.3f sec : load catalog\n", time2);
+  fprintf (stderr, "time step 3  %10.3f sec : make tiny values\n", time3a);
+  fprintf (stderr, "time step 4  %10.3f sec : init imbins\n",  time3b);
+  fprintf (stderr, "time step 5  %10.3f sec : find images\n",  time4);
+  fprintf (stderr, "time step 6  %10.3f sec : set Mrel\n",     time5);
+  fprintf (stderr, "time step 7  %10.3f sec : save catalog\n", time6);
+  fprintf (stderr, "time step 8  %10.3f sec : free catalog\n", time7);
 }
+
+// XXX Image to Image Subset
+int reload_catalogs_parallel (SkyList *sky) {
+
+  // name of image subset file:
+  char imageFile[512];
+  snprintf (imageFile, 512, "%s/Images.subset.dat", CATDIR);
+
+  // the ApplyOffsets option re-uses an existing Images.subset.dat file
+  if (!ApplyOffsets) {
+    off_t Nimage;
+    ImageSubset *image = getimages_subset (&Nimage);
+    if (!ImageSubsetSave (imageFile, image, Nimage)) {
+      fprintf (stderr, "failed to write image subset\n");
+      exit (1);
+    }
+    free (image);
+  } else {
+    // load the current sky table (layout of all SkyRegions) 
+    SkyTable *skytable = SkyTableLoadOptimal (CATDIR, SKY_TABLE, GSCFILE, TRUE, SKY_DEPTH, VERBOSE);
+    // XXX kind of hackish...
+    ALLOCATE (sky, SkyList, 1);
+    strcpy (sky->hosts, skytable->hosts);
+  }
+
+  // now launch the relphot_client jobs to the parallel hosts
+
+  // load the list of hosts
+  HostTable *table = HostTableLoad (CATDIR, sky->hosts);
+
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    char command[1024];
+    snprintf (command, 1024, "relphot_client %s -update-catalogs %s -hostID %d -D CATDIR %s -hostdir %s -region %f %f %f %f -statmode %s -D CAMERA %s -D STAR_TOOFEW %d -minerror %f", 
+	      PhotcodeList, imageFile, table->hosts[i].hostID, CATDIR, table->hosts[i].pathname, UserPatch.Rmin, UserPatch.Rmax, UserPatch.Dmin, UserPatch.Dmax, STATMODE, CAMERA, STAR_TOOFEW, MIN_ERROR);
+
+    // options & configs which affect relphot_client -update-catalogs
+    // VERBOSE, VERBOSE2
+    // RESET
+    // TimeSelect
+    // AreaSelect
+    // STATMODE
+    // STAR_TOOFEW
+    // MIN_ERROR
+    
+    char tmpline[1024];
+    if (VERBOSE)          { snprintf (tmpline, 1024, "%s -v",           	command);                    			  strcpy (command, tmpline); }
+    if (VERBOSE2)         { snprintf (tmpline, 1024, "%s -vv",          	command); 		     			  strcpy (command, tmpline); }
+    if (RESET)            { snprintf (tmpline, 1024, "%s -reset",       	command); 		     			  strcpy (command, tmpline); }
+    if (UPDATE)           { snprintf (tmpline, 1024, "%s -update",       	command); 		     			  strcpy (command, tmpline); }
+    if (!KEEP_UBERCAL)    { snprintf (tmpline, 1024, "%s -reset-ubercal",	command); 		                          strcpy (command, tmpline); }
+    if (UPDATE_CATFORMAT) { snprintf (tmpline, 1024, "%s -update-catformat %s", command, UPDATE_CATFORMAT); 		          strcpy (command, tmpline); }
+    if (AreaSelect)       { snprintf (tmpline, 1024, "%s -area %f %f %f %f",    command, AreaXmin, AreaXmax, AreaYmin, AreaYmax); strcpy (command, tmpline); }
+    if (TimeSelect) { 
+      char *tstart = ohana_sec_to_date (TSTART);
+      char *tstop  = ohana_sec_to_date (TSTOP);
+      snprintf (tmpline, 1024, "%s -time %s %s", command, tstart, tstop); 
+      free (tstart);
+      free (tstop);
+      strcpy (command, tmpline); 
+    }
+
+    fprintf (stderr, "command: %s\n", command);
+
+    if (PARALLEL_MANUAL) continue;
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	fprintf (stderr, "ERROR running relphot_client\n");
+	exit (2);
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	exit (1);
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+
+  if (PARALLEL_MANUAL) {
+    fprintf (stderr, "run the relphot_client commands above.  when these are done, hit return\n");
+    getchar();
+  } 
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    int status = HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+    if (!status) {
+      fprintf (stderr, "at least one remote client job failed to load data, exiting\n");
+      exit (3);
+    }
+  }
+  return (TRUE);
+}      
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/relphot.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/relphot.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/relphot.c	(revision 34041)
@@ -1,21 +1,14 @@
 # include "relphot.h"
-# define USE_DIRECT 0
-
-# define TIMESTAMP(TIME) \
+
+# define MARKTIME(MSG,...) {			\
+    float dtime;				\
     gettimeofday (&stop, (void *) NULL);	\
     dtime = DTIME (stop, start);		\
-    TIME += dtime;				\
-    gettimeofday (&start, (void *) NULL);
-
-# define MARKTIME(MSG,...) { \
-  float dtime; \
-  gettimeofday (&stop, (void *) NULL); \
-  dtime = DTIME (stop, start); \
-  fprintf (stderr, MSG, __VA_ARGS__); }
+    fprintf (stderr, MSG, __VA_ARGS__); }
 
 int main (int argc, char **argv) {
 
   int i, status, Ncatalog;
-  Catalog *catalog;
+  Catalog *catalog = NULL;
   FITS_DB db;
   struct timeval start, stop;
@@ -24,82 +17,4 @@
   gettimeofday (&start, (void *) NULL);
 
-  // XXX quick and stupid test:
-  if (0) {
-    int i, j; 
-    off_t *Nlist, *NLIST, **mlist;
-    off_t *NlistI, *NLISTI, **mlistI;
-    int **clist;
-    int **clistI;
-    float dtime;
-    float time1 = 0.0;
-    float time2 = 0.0;
-
-    int Nmosaic = 10000;
-    int Nimage = 600000;
-
-    for (j = 0; j < 19000; j++) {
-
-      // mosaic indexes
-      ALLOCATE (Nlist, off_t,   Nmosaic);
-      ALLOCATE (NLIST, off_t,   Nmosaic);
-      ALLOCATE (clist, int *,   Nmosaic);
-      ALLOCATE (mlist, off_t *, Nmosaic);
-    
-      for (i = 0; i < Nmosaic; i++) {
-	Nlist[i] = 0;
-	NLIST[i] = 100;
-	ALLOCATE (clist[i], int,   NLIST[i]);
-	ALLOCATE (mlist[i], off_t, NLIST[i]);
-      }
-
-      // image indexes
-      ALLOCATE (NlistI, off_t,   Nimage);
-      ALLOCATE (NLISTI, off_t,   Nimage);
-      ALLOCATE (clistI, int *,   Nimage);
-      ALLOCATE (mlistI, off_t *, Nimage);
-    
-      for (i = 0; i < Nimage; i++) {
-	NlistI[i] = 0;
-	NLISTI[i] = 100;
-	ALLOCATE (clistI[i], int,   NLISTI[i]);
-	ALLOCATE (mlistI[i], off_t, NLISTI[i]);
-      }
-
-      TIMESTAMP(time1);
-
-      // free mosaic indexes
-      for (i = 0; i < Nmosaic; i++) {
-	free (clist[i]);
-	free (mlist[i]);
-      }
-      free (Nlist);
-      free (NLIST);
-      free (clist);
-      free (mlist);
-
-      // free image indexes
-      for (i = 0; i < Nimage; i++) {
-	free (clistI[i]);
-	free (mlistI[i]);
-      }
-      free (NlistI);
-      free (NLISTI);
-      free (clistI);
-      free (mlistI);
-
-      TIMESTAMP(time2);
-
-      if (j % 100 == 0) {
-	fprintf (stderr, "done with %d\n", j);
-	fprintf (stderr, "time1  %f : init mosaic\n", time1);
-	fprintf (stderr, "time2  %f : free mosaic\n", time2);
-      }
-    }
-    
-    fprintf (stderr, "time1  %f : init mosaic\n", time1);
-    fprintf (stderr, "time2  %f : free mosaic\n", time2);
-    exit (1);
-  }
-
   /* get configuration info, args */
   initialize (argc, argv);
@@ -107,5 +22,15 @@
   /* the object analysis is a separate process iterating over catalogs */
   if (UpdateAverages) {
-    relphot_objects ();
+    relphot_objects (0, NULL);
+    exit (0);
+  }
+
+  if (ApplyOffsets) {
+    // re-run this step from a previous attempt (assumes an existing Images.subset.dat file)
+    if (!PARALLEL) {
+      fprintf (stderr, "-apply-offsets only makes sense in an parallel context\n");
+      exit (2);
+    }
+    reload_catalogs (NULL, NULL, 0, NULL);
     exit (0);
   }
@@ -125,7 +50,13 @@
   // LCK_EMPTY (if UPDATE) or LCK_MISSING (if !UPDATE)
   if ((db.dbstate == LCK_EMPTY) || (db.dbstate == LCK_MISSING)) {
-    // XXX get ZERO_POINT from config
-    dvo_image_create (&db, 25.0);
-    // Shutdown ("ERROR: No images in catalog %s (1)", db.filename);
+
+    // 25.0 is the nominal zero point for measurements in the database
+    // for all measurements except PHOT_REF:
+    // measure.M contains: -2.5*log(DN) + 2.5*log(exptime) + 25.0 
+    // for measurements using PHOT_REF:
+    // measure.M contains: -2.5*log(DN) + 2.5*log(exptime) + True Zero Point (but exptime and ZP are known)
+    dvo_image_create (&db, 25.0); 
+
+    // XXX why are we running relphot on an empty database?
   } else {
     if (!dvo_image_load (&db, VERBOSE, FALSE)) Shutdown ("can't read image catalog %s", db.filename);
@@ -133,9 +64,6 @@
   MARKTIME("-- load image data: %f sec\n", dtime);
 
-  /* load regions and images based on specified sky patch */
-  // XXX need to mimic old-style load by passing patch name
-  // XXX need to reduce number of global variables in use.
-  // XXX this is fairly lame: argv[1] is photcode if UserPatchSelect is true
-  skylist = load_images (&db, argv[1], &UserPatch, UserPatchSelect);
+  /* load regions and images based on specified sky patch and/or catalog */
+  skylist = load_images (&db, UserCatalog, &UserPatch);
   MARKTIME("-- load images: %f sec\n", dtime);
 
@@ -143,37 +71,43 @@
   if (!UPDATE) dvo_image_unlock (&db); 
 
-  /* load catalog data from region files */
-  catalog = load_catalogs (skylist, &Ncatalog);
-  MARKTIME("-- load catalog data: %f sec\n", dtime);
+  // load the flat correction table (if defined)
+  char flatcorrfile[256];
+  sprintf (flatcorrfile, "%s/flatcorr.fits", CATDIR);
+  FlatCorrectionTable *flatcorr = FlatCorrectionLoad (flatcorrfile, VERBOSE);
+
+  if (NLOOP > 0) {
+    /* load catalog data from region files (hostID is 0 since we are not a client */
+    catalog = load_catalogs (skylist, &Ncatalog, 0, NULL);
+    MARKTIME("-- load catalog data: %f sec\n", dtime);
   
-  /* add in a loop over the catalogs calling dvo_catalog_chipcoords */
-
-  /* match measurements with images, mosaics */
-  initImageBins  (catalog, Ncatalog, TRUE);
-  MARKTIME("-- make image bins: %f sec\n", dtime);
-
-  initMosaicBins (catalog, Ncatalog, TRUE);
-  initGridBins   (catalog, Ncatalog);
-  initMrel (catalog, Ncatalog);
-
-  findImages (catalog, Ncatalog, TRUE);
-  MARKTIME("-- set up image indexes: %f sec\n", dtime);
-
-  findMosaics (catalog, Ncatalog, TRUE);  /* also sets Grid values */
-  MARKTIME("-- set up mosaic indexes: %f sec\n", dtime);
-
-  SAVEPLOT = FALSE;
-
-  setExclusions (catalog, Ncatalog);
-
-  global_stats (catalog, Ncatalog);
-
-  if (PLOTSTUFF) {
-    plot_star_coords (catalog, Ncatalog);
-    // plot_mosaic_fields (catalog);
-  }
-
-  // if we are measuring the flat-field correction grid, we need to perform a number of iterations first:
-  if (USE_GRID) {
+    /* add in a loop over the catalogs calling dvo_catalog_chipcoords */
+
+    /* match measurements with images, mosaics */
+    initImageBins  (catalog, Ncatalog, TRUE);
+    MARKTIME("-- make image bins: %f sec\n", dtime);
+
+    initMosaicBins (catalog, Ncatalog, TRUE);
+    initGridBins   (catalog, Ncatalog);
+    initMrel (catalog, Ncatalog);
+
+    findImages (catalog, Ncatalog, TRUE);
+    MARKTIME("-- set up image indexes: %f sec\n", dtime);
+
+    findMosaics (catalog, Ncatalog, TRUE);  /* also sets Grid values */
+    MARKTIME("-- set up mosaic indexes: %f sec\n", dtime);
+
+    SAVEPLOT = FALSE;
+
+    setExclusions (catalog, Ncatalog, TRUE);
+
+    global_stats (catalog, Ncatalog, flatcorr);
+
+    if (PLOTSTUFF) {
+      plot_star_coords (catalog, Ncatalog);
+      // plot_mosaic_fields (catalog);
+    }
+
+    // if we are measuring the flat-field correction grid, we need to perform a number of iterations first:
+    if (USE_GRID) {
       int star_toofew;
 
@@ -183,23 +117,59 @@
       STAR_TOOFEW = 0;
       for (i = 0; i < NGRID; i++) {
-	  STAR_BAD = ID_STAR_POOR;
-	  setMrel  (catalog, Ncatalog);
-	  STAR_BAD  = ID_STAR_POOR | ID_STAR_FEW;
-	  setMgrid (catalog);
+	STAR_BAD = ID_STAR_POOR;
+	setMrel  (catalog, Ncatalog, flatcorr);
+	STAR_BAD  = ID_STAR_POOR | ID_STAR_FEW;
+	setMgrid (catalog, flatcorr);
       }
       STAR_BAD  = ID_STAR_POOR | ID_STAR_FEW;
       STAR_TOOFEW = star_toofew;
-  }
-
-  /* determine fit values */
-  for (i = 0; i < NLOOP; i++) {
-    setMrel  (catalog, Ncatalog);
-    setMcal  (catalog, FALSE);
-    setMmos  (catalog, FALSE);
-    setMgrid (catalog);
+    }
+
+    /* determine fit values */
+    for (i = 0; i < NLOOP; i++) {
+      if (PLOTSTUFF) {
+	plot_scatter (catalog, Ncatalog, flatcorr); 
+      }
+      setMrel  (catalog, Ncatalog, flatcorr); // threaded
+      if (PLOTSTUFF) {
+	plot_scatter (catalog, Ncatalog, flatcorr); 
+      }
+      setMcal  (catalog, FALSE, flatcorr);
+      setMmos  (catalog, FALSE, flatcorr);
+      setMgrid (catalog, flatcorr);
+      MARKTIME("-- set Mrel, Mcal, Mmos, Mgrid : %f sec\n", dtime);
     
+      if (PLOTSTUFF) {
+	plot_scatter (catalog, Ncatalog, flatcorr); 
+	plot_grid (catalog, flatcorr); 
+	plot_mosaics ();
+	plot_images ();
+	plot_stars (catalog, Ncatalog);
+	plot_chisq (catalog, Ncatalog);
+      }
+      // if (i < NLOOP - 1) rationalize_mosaics (catalog, Ncatalog);
+      // if (i % 6 == 1) rationalize_images ();
+
+      // NOTE : in the past, I was not iterating enough before cleaning.  make sure we do
+      // at least 8 loops first -- that should get the systematic errors down to the ~1%
+      // level, even in cases where we have an even split between photometric data and
+      // data with 1 mag of extinction.
+
+      if ((i > 8) && (i % 8 == 2)) clean_measures (catalog, Ncatalog, FALSE, flatcorr); 
+      if ((i > 8) && (i % 8 == 3)) clean_stars (catalog, Ncatalog);
+      if ((i > 8) && (i % 8 == 5)) clean_mosaics ();
+      if ((i > 8) && (i % 8 == 5)) clean_images ();
+
+      // if ((i == 1) || (i == 5) || (i ==  9) || (i == 13)) clean_measures (catalog, Ncatalog, FALSE); 
+      // if ((i == 2) || (i == 6) || (i == 10) || (i == 14)) clean_stars (catalog, Ncatalog);
+      // if ((i == 4) || (i == 8) || (i == 12) || (i == 16)) clean_mosaics ();
+      // if ((i == 4) || (i == 8) || (i == 12) || (i == 16)) clean_images ();
+      if (i % 3 == 2) global_stats (catalog, Ncatalog, flatcorr);
+      MARKTIME("-- finished loop %d: %f sec\n", i, dtime);
+    }
+
     if (PLOTSTUFF) {
-      plot_scatter (catalog, Ncatalog); 
-      plot_grid (catalog); 
+      plot_scatter (catalog, Ncatalog, flatcorr); 
+      plot_grid (catalog, flatcorr); 
       plot_mosaics ();
       plot_images ();
@@ -207,109 +177,99 @@
       plot_chisq (catalog, Ncatalog);
     }
-    // if (i < NLOOP - 1) rationalize_mosaics (catalog, Ncatalog);
-    // if (i % 6 == 1) rationalize_images ();
-    if (i % 6 == 2) clean_measures (catalog, Ncatalog, FALSE); 
-    if (i % 6 == 3) clean_stars (catalog, Ncatalog);
-    if (i % 6 == 5) clean_mosaics ();
-    if (i % 6 == 5) clean_images ();
-
-    // if ((i == 1) || (i == 5) || (i ==  9) || (i == 13)) clean_measures (catalog, Ncatalog, FALSE); 
-    // if ((i == 2) || (i == 6) || (i == 10) || (i == 14)) clean_stars (catalog, Ncatalog);
-    // if ((i == 4) || (i == 8) || (i == 12) || (i == 16)) clean_mosaics ();
-    // if ((i == 4) || (i == 8) || (i == 12) || (i == 16)) clean_images ();
-    global_stats (catalog, Ncatalog);
-    MARKTIME("-- finished loop %d: %f sec\n", i, dtime);
-  }
-
-  if (PLOTSTUFF) {
-    plot_scatter (catalog, Ncatalog); 
-    plot_grid (catalog); 
-    plot_mosaics ();
-    plot_images ();
-    plot_stars (catalog, Ncatalog);
-    plot_chisq (catalog, Ncatalog);
-  }
   
-  if (USE_GRID) dump_grid ();
-
-  /* set Mcal & Mmos for bad images */
-  setMcal  (catalog, TRUE);
-  setMmos  (catalog, TRUE);
-  MARKTIME("-- finalize Mcal values: %f sec\n", dtime);
-
-  setMcalFinal (); // copy per-mosaic calibrations to the images
-
-  if (SAVE_IMAGE_UPDATES) {
-
-    FITS_DB dbX;
-    off_t *LineNumber;
-    Image *image, *subset;
-    off_t Nimage, Nsubset, i, Nx;
-    char filename[1024];
-
-    gfits_db_init (&dbX);
-    dbX.lockstate = LCK_XCLD;
-    dbX.timeout   = 60.0;
-    dbX.mode      = db.mode;
-    dbX.format    = db.format;
-
-    snprintf (filename, 1024, "%s.bck", ImageCat);
-    if (!gfits_db_lock (&dbX, filename)) {
-      fprintf (stderr, "can't lock backup image image catalog\n");
-      return (FALSE);
-    }
+    if (USE_GRID) dump_grid ();
+
+    /* set Mcal & Mmos for bad images */
+    setMcal  (catalog, TRUE, flatcorr);
+    setMmos  (catalog, TRUE, flatcorr);
+    MARKTIME("-- finalize Mcal values: %f sec\n", dtime);
+
+    setMcalFinal (); // copy per-mosaic calibrations to the images
+
+    if (SAVE_IMAGE_UPDATES) {
+
+      FITS_DB dbX;
+      off_t *LineNumber;
+      Image *image, *subset;
+      off_t Nimage, Nsubset, i, Nx;
+      char filename[1024];
+
+      gfits_db_init (&dbX);
+      dbX.lockstate = LCK_XCLD;
+      dbX.timeout   = 60.0;
+      dbX.mode      = db.mode;
+      dbX.format    = db.format;
+
+      snprintf (filename, 1024, "%s.bck", ImageCat);
+      if (!gfits_db_lock (&dbX, filename)) {
+	fprintf (stderr, "can't lock backup image image catalog\n");
+	return (FALSE);
+      }
     
-    // apply the changes from the image subset to the full table:
-
-    // convert database table to internal structure (binary to Image)
-    // 'image' points to the same memory as db->ftable->buffer
-    image = gfits_table_get_Image (&db.ftable, &Nimage, &db.swapped);
-    if (!image) {
+      // apply the changes from the image subset to the full table:
+
+      // convert database table to internal structure (binary to Image)
+      // 'image' points to the same memory as db->ftable->buffer
+      image = gfits_table_get_Image (&db.ftable, &Nimage, &db.swapped);
+      if (!image) {
 	fprintf (stderr, "ERROR: failed to read images\n");
 	exit (2);
-    }
-    gfits_scan (db.ftable.header, "NAXIS1", OFF_T_FMT, 1,  &Nx);
-
-    subset = getimages (&Nsubset, &LineNumber);
-    for (i = 0; i < Nsubset; i++) {
-      if (LineNumber[i] == -1) continue;
-      memcpy (&image[LineNumber[i]], &subset[i], Nx);
-    }
-
-    // copy Images.dat data (all or only the subset / vtable elements?)  I think I need to dump
-    // the entire Image table, but with the updates in place I think this says: re-work the
-    // ftable/vtable usage in this program to be more sensible...
-    gfits_copy_header (&db.header,  &dbX.header);
-    gfits_copy_matrix (&db.matrix,  &dbX.matrix);
-    gfits_copy_header (&db.theader, &dbX.theader);
-    gfits_copy_ftable (&db.ftable,  &dbX.ftable);
-
-    dbX.ftable.header = &dbX.theader;
-    dbX.virtual = FALSE;
-
-    // copy Images.dat to another structure
-    dvo_image_save (&dbX, VERBOSE);
-    dvo_image_unlock (&dbX); 
-    MARKTIME("-- save Image.dat.bck: %f sec\n", dtime);
-  }
-
-  // only change the real database if -update is requested
+      }
+      gfits_scan (db.ftable.header, "NAXIS1", OFF_T_FMT, 1,  &Nx);
+
+      subset = getimages (&Nsubset, &LineNumber);
+      for (i = 0; i < Nsubset; i++) {
+	if (LineNumber[i] == -1) continue;
+	memcpy (&image[LineNumber[i]], &subset[i], Nx);
+      }
+
+      // copy Images.dat data (all or only the subset / vtable elements?)  I think I need to dump
+      // the entire Image table, but with the updates in place I think this says: re-work the
+      // ftable/vtable usage in this program to be more sensible...
+      gfits_copy_header (&db.header,  &dbX.header);
+      gfits_copy_matrix (&db.matrix,  &dbX.matrix);
+      gfits_copy_header (&db.theader, &dbX.theader);
+      gfits_copy_ftable (&db.ftable,  &dbX.ftable);
+
+      dbX.ftable.header = &dbX.theader;
+      dbX.virtual = FALSE;
+
+      // save Images.dat using the copied structure
+      if (UPDATE_CATFORMAT) {
+	// ensure the db format is updated
+	dbX.format = dvo_catalog_catformat (UPDATE_CATFORMAT);
+	char photcodeFile[1024];
+	sprintf (photcodeFile, "%s/Photcodes.dat", CATDIR);
+	SavePhotcodesFITS (photcodeFile);
+      }
+      dvo_image_save (&dbX, VERBOSE);
+      dvo_image_unlock (&dbX); 
+      MARKTIME("-- save Image.dat.bck: %f sec\n", dtime);
+    }
+
+    /* at this point, we have correct cal coeffs in the image/mosaic structures */
+    for (i = 0; i < Ncatalog; i++) {
+      free_tiny_values (&catalog[i]);
+      dvo_catalog_free (&catalog[i]);
+    }
+    freeImageBins (Ncatalog, TRUE);
+    freeMosaicBins (Ncatalog, TRUE);
+    freeGridBins (Ncatalog);
+
+  } // (NLOOP > 0) : this loop determines the offsets per chip 
+
+  reload_images (&db);
+
+  // only change the real database files if -update is requested
   if (!UPDATE) exit (0);
   
-  reload_images (&db);
-
-  /* at this point, we have correct cal coeffs in the image/mosaic structures */
-  for (i = 0; i < Ncatalog; i++) {
-    free_tiny_values (&catalog[i]);
-    dvo_catalog_free (&catalog[i]);
-  }
-  freeImageBins (Ncatalog, TRUE);
-  freeMosaicBins (Ncatalog, TRUE);
-  freeGridBins (Ncatalog);
-
   /* load catalog data from region files, update Mrel include all data */
-  reload_catalogs (skylist);
+  reload_catalogs (skylist, flatcorr, 0, NULL);
   MARKTIME("-- updated all catalogs: %f sec\n", dtime);
 
+  if (UPDATE_CATFORMAT) {
+    // ensure the db format is updated
+    db.format = dvo_catalog_catformat (UPDATE_CATFORMAT);
+  }
   dvo_image_update (&db, VERBOSE);
   dvo_image_unlock (&db); 
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/relphot_client.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/relphot_client.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/relphot_client.c	(revision 34041)
@@ -0,0 +1,97 @@
+# include "relphot.h"
+
+// relphot_client is run on a remote host and is responsible for updating the catalogs
+// owned by that host.  
+
+// there are two modes:
+
+// relphot_client -load : extract the bright catalog subset from the client's tables and
+//                        save to a local FITS table for relphot to load and used
+
+// (relphot loads the bright catalog subsets from all clients, then uses this to determine
+// the per-image zero points (and potentially the flat-field corrections)
+
+// relphot_client -update : load image table containing the update zero point information
+//                          and apply this to the client's tables
+
+int main (int argc, char **argv) {
+
+  // get configuration info, args, lockfile (set CATDIR, HOST_ID, HOSTDIR, etc) 
+  initialize_client (argc, argv);
+  client_logger_init ();
+
+  // load the current sky table (layout of all SkyRegions) 
+  SkyTable *sky = SkyTableLoadOptimal (CATDIR, NULL, NULL, TRUE, -1, VERBOSE);
+  if (!sky) {
+      fprintf (stderr, "ERROR running loading sky table from %s\n", CATDIR);
+      exit (2);
+  }
+  SkyTableSetFilenames (sky, CATDIR, "cpt");
+
+  SkyList *skylist = SkyListByPatch (sky, -1, &UserPatch);
+  if (!skylist) {
+      fprintf (stderr, "ERROR setting up skylist for %s\n", CATDIR);
+      exit (2);
+  }
+  client_logger_message ("loaded sky table and defined patch\n");
+  
+  switch (MODE) {
+    case MODE_LOAD: {
+      int Ncatalog;
+      Catalog *catalog = load_catalogs (skylist, &Ncatalog, HOST_ID, HOSTDIR);
+      if (!catalog) {
+	  fprintf (stderr, "ERROR loading catalogs from %s\n", CATDIR);
+	  exit (2);
+      }
+      client_logger_message ("loaded catalogs\n");
+
+      BrightCatalog *bcatalog = BrightCatalogMerge (catalog, Ncatalog);
+      client_logger_message ("generated subset data\n");
+
+      if (!BrightCatalogSave (BCATALOG, bcatalog)) {
+	  fprintf (stderr, "ERROR saving bright catalog from %s\n", CATDIR);
+	  exit (2);
+      }
+      client_logger_message ("generated subset table\n");
+      break;
+    }
+      
+    case MODE_UPDATE: {
+      // load the image subset table from the specified location
+      off_t Nimage;
+      ImageSubset *image = ImageSubsetLoad (IMAGES, &Nimage);
+      if (!image) {
+	  fprintf (stderr, "ERROR loading image subset %s\n", CATDIR);
+	  exit (2);
+      }
+      client_logger_message ("loaded image subset data\n");
+      
+      // save the available image information in the static array in ImageOps.c
+      initImagesSubset (image, NULL, Nimage);
+
+      // load the flat-field correction table from CATDIR
+      char flatcorrFile[1024];
+      snprintf (flatcorrFile, 1024, "%s/flatcorr.fits", CATDIR);
+      FlatCorrectionTable *flatcorr = FlatCorrectionLoad (flatcorrFile, VERBOSE);
+      client_logger_message ("loaded flat-field correction data\n");
+
+      reload_catalogs (skylist, flatcorr, HOST_ID, HOSTDIR);
+      client_logger_message ("updated catalogs\n");
+      break;
+    }
+
+    case MODE_UPDATE_OBJECTS: {
+      relphot_objects (HOST_ID, HOSTDIR);
+      client_logger_message ("updated objects\n");
+      break;
+    }
+
+    default:
+      fprintf (stderr, "impossible!");
+      abort();
+  }
+  client_logger_message ("done with relphot_client\n");
+
+  exit (0);
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/relphot_objects.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/relphot_objects.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/relphot_objects.c	(revision 34041)
@@ -1,5 +1,12 @@
 # include "relphot.h"
 
-int relphot_objects () {
+// apply the current calibration values to the measurements to determine the average
+// magnitudes, applying the desired clipping analysis.  Note that this does not depend on
+// the form of the image zero point measurement.  If there is a grid or map term, and this
+// has been correctly propagated to the measurement, the average will respect that value.
+
+int relphot_objects_parallel (SkyList *sky);
+
+int relphot_objects (int hostID, char *hostpath) {
 
   off_t i, j, k;
@@ -17,9 +24,21 @@
   skylist = SkyListByPatch (sky, -1, &UserPatch);
 
+  // XXX need to decide how to determine PARALLEL mode...
+  if (PARALLEL && !hostID) {
+    relphot_objects_parallel (skylist);
+    return TRUE;
+  }
+
   // load data from each region file, only use bright stars
   for (i = 0; i < skylist[0].Nregions; i++) {
 
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+
     // set up the basic catalog info
-    catalog.filename  = skylist[0].filename[i];
+    // set up the basic catalog info
+    char hostfile[1024];
+    snprintf (hostfile, 1024, "%s/%s.cpt", hostpath, skylist[0].regions[i]->name);
+    catalog.filename  = hostID ? hostfile : skylist[0].filename[i];
     catalog.catformat = dvo_catalog_catformat (CATFORMAT);    // set the default catformat from config data
     catalog.catmode   = dvo_catalog_catmode (CATMODE);        // set the default catmode from config data
@@ -38,26 +57,45 @@
     }
 
-    // reset 
+    // reset the calculated average magnitudes (does not affect ubercal-tied measurements or images)
     if (RESET) {
       Nsecfilt = catalog.Nsecfilt;
+      DVOSecfiltFlags secfiltBits = 
+	ID_SECF_STAR_FEW | 
+	ID_SECF_STAR_POOR | 
+	ID_PHOTOM_PASS_0 | 
+	ID_PHOTOM_PASS_1 | 
+	ID_PHOTOM_PASS_2 | 
+	ID_PHOTOM_PASS_3 | 
+	ID_PHOTOM_PASS_4 |
+	ID_SECF_USE_SYNTH |
+	ID_SECF_USE_UBERCAL |
+	ID_SECF_OBJ_EXT;
+      
       for (j = 0; j < catalog.Naverage; j++) {
 	catalog.average[j].flags = 0;
 	for (k = 0; k < Nsecfilt; k++) {
-	  catalog.secfilt[j*Nsecfilt + k].M    	= NAN;
-	  catalog.secfilt[j*Nsecfilt + k].M_20 	= NAN_S_SHORT;
-	  catalog.secfilt[j*Nsecfilt + k].M_80 	= NAN_S_SHORT;
-	  catalog.secfilt[j*Nsecfilt + k].dM   	= NAN;
-	  catalog.secfilt[j*Nsecfilt + k].Xm    = NAN_S_SHORT;
-	  catalog.secfilt[j*Nsecfilt + k].Ncode = 0;
-	  catalog.secfilt[j*Nsecfilt + k].Nused = 0;
-	  // XXX reset the photometry flags for secfilt entries?
+	  catalog.secfilt[j*Nsecfilt + k].M    	 = NAN;
+	  catalog.secfilt[j*Nsecfilt + k].Map    = NAN;
+	  catalog.secfilt[j*Nsecfilt + k].dM   	 = NAN;
+	  catalog.secfilt[j*Nsecfilt + k].Mstdev = NAN_S_SHORT;
+	  catalog.secfilt[j*Nsecfilt + k].Xm     = NAN;
+	  catalog.secfilt[j*Nsecfilt + k].M_20 	 = NAN_S_SHORT;
+	  catalog.secfilt[j*Nsecfilt + k].M_80 	 = NAN_S_SHORT;
+	  catalog.secfilt[j*Nsecfilt + k].Ncode  = 0;
+	  catalog.secfilt[j*Nsecfilt + k].Nused  = 0;
+	  catalog.secfilt[j*Nsecfilt + k].flags &= ~secfiltBits;
+	  catalog.secfilt[j*Nsecfilt + k].ubercalDist = 1000;
 	}
       }
     }
 
-    setMave (&catalog, 1);
+    populate_tiny_values(&catalog, DVO_TV_MEASURE | DVO_TV_AVERAGE);
+
+    initMrel (&catalog, 1);
+    setMrelFinal (&catalog, NULL, TRUE);
 
     if (!UPDATE) {
       dvo_catalog_unlock (&catalog);
+      free_tiny_values(&catalog);
       dvo_catalog_free (&catalog);
       continue;
@@ -71,4 +109,5 @@
     dvo_catalog_save (&catalog, VERBOSE); 
     dvo_catalog_unlock (&catalog);
+    free_tiny_values(&catalog);
     dvo_catalog_free (&catalog);
   }
@@ -76,2 +115,79 @@
   return (TRUE);
 }
+
+// CATDIR is supplied globally
+# define DEBUG 1
+int relphot_objects_parallel (SkyList *sky) {
+
+  // launch the setphot_client jobs to the parallel hosts
+
+  // load the list of hosts
+  HostTable *table = HostTableLoad (CATDIR, sky->hosts);
+  if (!table) {
+    fprintf (stderr, "ERROR: failure reading Host Table %s for database %s\n", sky->hosts, CATDIR);
+    exit (1);
+  }    
+
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    // options / arguments that can affect relphot_client -update-objects:
+    // VERBOSE, VERBOSE2
+    // KEEP_UBERCAL
+    // RESET (-reset)
+    // TimeSelect -time
+    // DophotSelect
+    // (note that psfQual is applied rigidly at 0.85, as is the galaxy test)
+    // MAG_LIM
+    // SIGMA_LIM
+    // ImagSelect, ImagMin, ImagMax
+    // MaxDensityUse, MaxDensityValue
+
+    char command[1024];
+    snprintf (command, 1024, "relphot_client -update-objects -hostID %d -D CATDIR %s -hostdir %s -region %f %f %f %f -statmode %s -D CAMERA %s -D STAR_TOOFEW %d -minerror %f", 
+	      table->hosts[i].hostID, CATDIR, table->hosts[i].pathname, UserPatch.Rmin, UserPatch.Rmax, UserPatch.Dmin, UserPatch.Dmax, STATMODE, CAMERA, STAR_TOOFEW, MIN_ERROR);
+
+    char tmpline[1024];
+    if (VERBOSE)       { snprintf (tmpline, 1024, "%s -v",              command);                    strcpy (command, tmpline); }
+    if (VERBOSE2)      { snprintf (tmpline, 1024, "%s -vv",             command); 		     strcpy (command, tmpline); }
+    if (RESET)         { snprintf (tmpline, 1024, "%s -reset",          command); 		     strcpy (command, tmpline); }
+    if (UPDATE)        { snprintf (tmpline, 1024, "%s -update",         command); 		     strcpy (command, tmpline); }
+    if (!KEEP_UBERCAL) { snprintf (tmpline, 1024, "%s -reset-ubercal",  command); 		     strcpy (command, tmpline); }
+
+    fprintf (stderr, "command: %s\n", command);
+
+    if (PARALLEL_MANUAL) continue;
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	fprintf (stderr, "ERROR running relphot_client\n");
+	exit (2);
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	exit (1);
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+
+  if (PARALLEL_MANUAL) {
+    fprintf (stderr, "run the relphot_client commands above.  when these are done, hit return\n");
+    getchar();
+  }
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+  }
+
+  return TRUE;
+}      
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/select_images.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/select_images.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/select_images.c	(revision 34041)
@@ -13,4 +13,5 @@
 } SkyRegionCoords;
 
+void MakeSkyCoordIndex (SkyRegionCoords **skycoords_out, double **RmaxSky_out, off_t **index_out, SkyList *skylist);
 void dsortindex (double *X, off_t *Y, int N);
 off_t getRegionStartByRA (double R, double *Rref, off_t Nregions);
@@ -22,20 +23,14 @@
   fprintf (stderr, MSG, __VA_ARGS__); }
 
-Image *select_images (SkyList *skylist, Image *timage, off_t Ntimage, off_t **LineNumber, off_t *Nimage) {
+Image *select_images (SkyList *skylist, Image *timage, off_t Ntimage, char *inSubset, off_t **LineNumber, off_t *Nimage, SkyRegion *region) {
   
   Image *image;
-  off_t i, j, k, m, nStart, iSky, nimage, NIMAGE;
+  off_t i, j, k, m, nStart, iSky, nimage, NIMAGE, D_NIMAGE;
   off_t *line_number;
   int InRange, ecode, found;
-  double Ri[5], Di[5], Xi[5], Yi[5], dx, dy;
+  double Ri[5], Di[5], Xi[5], Yi[5];
   Coords tcoords;
-  SkyRegionCoords *skycoords;
   struct timeval start, stop;
   
-  double RmaxSkyRegion, RminSkyRegion, RmidSkyRegion, DminSkyRegion, DmaxSkyRegion;
-
-  double *RmaxSky;
-  off_t *index;
-
   if (skylist[0].Nregions < 1) {
     *Nimage = 0;
@@ -54,61 +49,62 @@
   strcpy (tcoords.ctype, "RA---TAN");
 
-  ALLOCATE (skycoords, SkyRegionCoords, skylist[0].Nregions);
-
-  ALLOCATE (RmaxSky, double, skylist[0].Nregions);
-  ALLOCATE (index, off_t, skylist[0].Nregions);
-
-  RminSkyRegion = +360.0;
-  RmaxSkyRegion = -360.0;
-  DminSkyRegion = +90.0;
-  DmaxSkyRegion = -90.0;
-
-  // FILE *ftest = fopen ("relphot.dump.dat", "w");
-
-  /* compare with each region file */
+  double RminSkyRegion = region[0].Rmin;
+  double RmaxSkyRegion = region[0].Rmax;
+  double DminSkyRegion = region[0].Dmin;
+  double DmaxSkyRegion = region[0].Dmax;
+
+  double RmidSkyRegion = 0.5*(RminSkyRegion + RmaxSkyRegion);
+
+  // generate a set of Rmin/Rmax values using this RmidSkyRegion for DEC bands of width
+  // dDecBand (0.1 deg).  DecIndex = (Dec + 90) / dDecBand
+  double *RminBand, *RmaxBand;
+  float dDecBand = 0.1;
+  int NDecBands = 180 / dDecBand + 1;
+  ALLOCATE (RminBand, double, NDecBands);
+  ALLOCATE (RmaxBand, double, NDecBands);
+  for (i = 0; i < NDecBands; i++) {
+    RminBand[i] = +360.0;
+    RmaxBand[i] = -360.0;
+  }
+  
+   /* compare with each region file */
   for (i = 0; i < skylist[0].Nregions; i++) { 
-
-    /* we make positional comparisons in the projection of catalog */
-    skycoords[i].Rc = 0.5*(skylist[0].regions[i][0].Rmax + skylist[0].regions[i][0].Rmin);
-    skycoords[i].Dc = 0.5*(skylist[0].regions[i][0].Dmax + skylist[0].regions[i][0].Dmin);
-    tcoords.crval1 = skycoords[i].Rc;
-    tcoords.crval2 = skycoords[i].Dc;
-
-    /* define catalog corners */
-    RD_to_XY (&skycoords[i].Xc[0], &skycoords[i].Yc[0], skylist[0].regions[i][0].Rmin, skylist[0].regions[i][0].Dmin, &tcoords);
-    RD_to_XY (&skycoords[i].Xc[1], &skycoords[i].Yc[1], skylist[0].regions[i][0].Rmax, skylist[0].regions[i][0].Dmin, &tcoords);
-    RD_to_XY (&skycoords[i].Xc[2], &skycoords[i].Yc[2], skylist[0].regions[i][0].Rmax, skylist[0].regions[i][0].Dmax, &tcoords);
-    RD_to_XY (&skycoords[i].Xc[3], &skycoords[i].Yc[3], skylist[0].regions[i][0].Rmin, skylist[0].regions[i][0].Dmax, &tcoords);
-    skycoords[i].Xc[4] = skycoords[i].Xc[0];    
-    skycoords[i].Yc[4] = skycoords[i].Yc[0];    
-
-    RmaxSky[i] = skylist[0].regions[i][0].Rmax;
-    index[i] = i;
-
-    dx = 0.02*(skycoords[i].Xc[2] - skycoords[i].Xc[0]);
-    dy = 0.02*(skycoords[i].Yc[2] - skycoords[i].Yc[0]);
-    skycoords[i].Xc[0] -= dx; skycoords[i].Yc[0] -= dy;
-    skycoords[i].Xc[1] += dx; skycoords[i].Yc[1] -= dy;
-    skycoords[i].Xc[2] += dx; skycoords[i].Yc[2] += dy;
-    skycoords[i].Xc[3] -= dx; skycoords[i].Yc[3] += dy;
-    skycoords[i].Xc[4] -= dx; skycoords[i].Yc[4] -= dy;
-
-    RminSkyRegion = MIN(RminSkyRegion, skylist[0].regions[i][0].Rmin);
-    RmaxSkyRegion = MAX(RmaxSkyRegion, skylist[0].regions[i][0].Rmax);
-    DminSkyRegion = MIN(DminSkyRegion, skylist[0].regions[i][0].Dmin);
-    DmaxSkyRegion = MAX(DmaxSkyRegion, skylist[0].regions[i][0].Dmax);
-  }
-  RmidSkyRegion = 0.5*(RminSkyRegion + RmaxSkyRegion);
-  MARKTIME("create sky region coords: %f sec\n", dtime);
-
-  dsortindex (RmaxSky, index, skylist[0].Nregions);
-  MARKTIME("sort sky coords: %f sec\n", dtime);
+    int iDecBandMin = (skylist[0].regions[i][0].Dmin + 90.0) / dDecBand;
+    int iDecBandMax = (skylist[0].regions[i][0].Dmax + 90.0) / dDecBand;
+
+    double RminAlt = ohana_normalize_angle_to_midpoint (skylist[0].regions[i][0].Rmin, RmidSkyRegion);
+    double RmaxAlt = ohana_normalize_angle_to_midpoint (skylist[0].regions[i][0].Rmax, RmidSkyRegion);
+
+    for (j = iDecBandMin; j <= iDecBandMax; j++) {
+      RminBand[j] = MIN(RminBand[j], RminAlt);
+      RmaxBand[j] = MAX(RmaxBand[j], RmaxAlt);
+    }
+  }
+
+# if (1)
+  // XXX quick test of the dec bands:
+  FILE *fout = fopen ("dec.bands.dat", "w");
+  for (i = 0; i < NDecBands; i++) {
+    fprintf (fout, "%d %f : %f - %f\n", (int) i, dDecBand * i - 90.0, RminBand[i], RmaxBand[i]);
+  }
+  fclose (fout);
+# endif
+
+  SkyRegionCoords *skycoords = NULL;
+  double *RmaxSky = NULL;
+  off_t *index = NULL;
+
+  if (!USE_BASIC_CHECK) {
+    MakeSkyCoordIndex (&skycoords, &RmaxSky, &index, skylist);
+  }
 
   if (VERBOSE) fprintf (stderr, "finding images\n");
   BuildChipMatch (timage, Ntimage);
-  MARKTIME("build chip match: %f sec\n", dtime);
+  MARKTIME("build chip match for %d images: %f sec\n", (int) Ntimage, dtime);
+
+  D_NIMAGE = 6000;
 
   nimage = 0;
-  NIMAGE = 100;
+  NIMAGE = D_NIMAGE;
   ALLOCATE (image, Image, NIMAGE);
   ALLOCATE (line_number, off_t, NIMAGE);
@@ -117,4 +113,6 @@
   for (i = 0; i < Ntimage; i++) {
       
+    if (!(i % 300000)) fprintf (stderr, ".");
+
     /* exclude images by photcode */
     ecode = GetPhotcodeEquivCodebyCode (timage[i].photcode);
@@ -137,7 +135,4 @@
       continue;
     }
-
-    // XXX temporary test : record center coords for each accepted and rejected chip/mosaic
-    // double RAo, DECo;
 
     /* define image corners - note the DIS images (mosaic phu) are special */
@@ -148,5 +143,4 @@
       Xi[3] = -0.5*timage[i].NX; Yi[3] = +0.5*timage[i].NY;
       Xi[4] = -0.5*timage[i].NX; Yi[4] = -0.5*timage[i].NY;
-      // XY_to_RD(&RAo, &DECo, 0.0, 0.0, &timage[i].coords);
     } else {
       Xi[0] = 0;            Yi[0] = 0;
@@ -155,5 +149,4 @@
       Xi[3] = 0;            Yi[3] = timage[i].NY;
       Xi[4] = 0;            Yi[4] = 0;
-      // XY_to_RD(&RAo, &DECo, 0.5*timage[i].NX, 0.5*timage[i].NY, &timage[i].coords);
     }
     found = FALSE;
@@ -186,4 +179,29 @@
     if (RminImage > RmaxSkyRegion) continue;
     if (RmaxImage < RminSkyRegion) continue;
+
+    // the above checks are only valid for the outermost region.  however, at a given
+    // declination, the range of RA is limited by the actual catalog boundaries
+    // check if this image is in range for the Dmax and Dmin locations
+
+    int iDecBandMin = (DminImage + 90.0) / dDecBand;
+    int iDecBandMax = (DmaxImage + 90.0) / dDecBand;
+
+    // the sky region RA is defined to be 0 - 360.0
+    if (RminImage < RminBand[iDecBandMin]) { 
+      if (VERBOSE2) fprintf (stderr, "skip image %s (%f,%f) on boundary\n", timage[i].name, 0.5*(RminImage + RmaxImage), 0.5*(DminImage + DmaxImage));
+      continue;
+    }
+    if (RminImage < RminBand[iDecBandMax]) {
+      if (VERBOSE2) fprintf (stderr, "skip image %s (%f,%f) on boundary\n", timage[i].name, 0.5*(RminImage + RmaxImage), 0.5*(DminImage + DmaxImage));
+      continue;
+    }
+    if (RmaxImage > RmaxBand[iDecBandMin]) {
+      if (VERBOSE2) fprintf (stderr, "skip image %s (%f,%f) on boundary\n", timage[i].name, 0.5*(RminImage + RmaxImage), 0.5*(DminImage + DmaxImage));
+      continue;
+    }
+    if (RmaxImage > RmaxBand[iDecBandMax]) {
+      if (VERBOSE2) fprintf (stderr, "skip image %s (%f,%f) on boundary\n", timage[i].name, 0.5*(RminImage + RmaxImage), 0.5*(DminImage + DmaxImage));
+      continue;
+    }
 
     // image overlaps region, keep it
@@ -230,23 +248,25 @@
 
   found_it:
-    // XXX We claim this is a good image: write to a test file
-    // fprintf (ftest, "%s : %lf %lf  : %f %f %d %x\n", timage[i].name, RAo, DECo, timage[i].Mcal, timage[i].dMcal, timage[i].nstar, timage[i].flags);
-
     image[nimage] = timage[i]; 
-    /* always allow 'few' images to succeed, if possible */
+    inSubset[i] = TRUE;
+    /* always allow 'few' images to succeed, if possible (new images / detections may have
+     * been added) */
     if (image[nimage].flags & ID_IMAGE_PHOTOM_FEW) { 
       image[nimage].flags &= ~(ID_IMAGE_PHOTOM_FEW | ID_IMAGE_PHOTOM_POOR);
     }
     if (RESET) {
-      // XXX assignMcal (&image[nimage], (double *) NULL, -1);
-      // XXX this needs to be thought through a bit more
-      image[nimage].Mcal = 0.0;
-      image[nimage].dMcal = NAN;
+      if (!KEEP_UBERCAL) {
+	image[nimage].Mcal = 0.0;
+	image[nimage].dMcal = NAN;
+	image[nimage].flags &= ~ID_IMAGE_PHOTOM_UBERCAL;
+      }
       image[nimage].flags &= ~ID_IMAGE_PHOTOM_POOR;
+      image[nimage].ubercalDist = 1000;
     }
     line_number[nimage] = i;
     nimage ++;
     if (nimage == NIMAGE) {
-      NIMAGE += 100;
+      NIMAGE += D_NIMAGE;
+      D_NIMAGE = MAX (100000, D_NIMAGE * 1.5);
       REALLOCATE (image, Image, NIMAGE);
       REALLOCATE (line_number, off_t, NIMAGE);
@@ -255,11 +275,14 @@
   MARKTIME("finish image selection: %f sec\n", dtime);
 
-  // fclose (ftest);
-
   if (VERBOSE) fprintf (stderr, "found "OFF_T_FMT" images\n", nimage);
 
   REALLOCATE (image, Image, MAX (nimage, 1));
   REALLOCATE (line_number, off_t, MAX (nimage, 1));
-  free (skycoords);
+
+  if (!USE_BASIC_CHECK) {
+    free (skycoords);
+    free (RmaxSky);
+    free (index);
+  }
 
   *Nimage  = nimage;
@@ -377,2 +400,61 @@
   return (Nlo);
 }
+
+void MakeSkyCoordIndex (SkyRegionCoords **skycoords_out, double **RmaxSky_out, off_t **index_out, SkyList *skylist) {
+
+  off_t i;
+  SkyRegionCoords *skycoords;
+  Coords tcoords;
+  double *RmaxSky;
+  off_t *index;
+  double dx, dy;
+
+  // the comparison is made in the catalog local projection. below we set crval1,2
+  tcoords.crpix1 = tcoords.crpix2 = 0.0;
+  tcoords.cdelt1 = tcoords.cdelt2 = 1.0 / 3600.0;
+  tcoords.pc1_1  = tcoords.pc2_2 = 1.0;
+  tcoords.pc1_2  = tcoords.pc2_1 = 0.0;
+  strcpy (tcoords.ctype, "RA---TAN");
+
+  /* compare with each region file */
+  ALLOCATE (skycoords, SkyRegionCoords, skylist[0].Nregions);
+
+  ALLOCATE (RmaxSky, double, skylist[0].Nregions);
+  ALLOCATE (index, off_t, skylist[0].Nregions);
+
+  for (i = 0; i < skylist[0].Nregions; i++) { 
+
+    /* we make positional comparisons in the projection of catalog */
+    skycoords[i].Rc = 0.5*(skylist[0].regions[i][0].Rmax + skylist[0].regions[i][0].Rmin);
+    skycoords[i].Dc = 0.5*(skylist[0].regions[i][0].Dmax + skylist[0].regions[i][0].Dmin);
+    tcoords.crval1 = skycoords[i].Rc;
+    tcoords.crval2 = skycoords[i].Dc;
+
+    /* define catalog corners */
+    RD_to_XY (&skycoords[i].Xc[0], &skycoords[i].Yc[0], skylist[0].regions[i][0].Rmin, skylist[0].regions[i][0].Dmin, &tcoords);
+    RD_to_XY (&skycoords[i].Xc[1], &skycoords[i].Yc[1], skylist[0].regions[i][0].Rmax, skylist[0].regions[i][0].Dmin, &tcoords);
+    RD_to_XY (&skycoords[i].Xc[2], &skycoords[i].Yc[2], skylist[0].regions[i][0].Rmax, skylist[0].regions[i][0].Dmax, &tcoords);
+    RD_to_XY (&skycoords[i].Xc[3], &skycoords[i].Yc[3], skylist[0].regions[i][0].Rmin, skylist[0].regions[i][0].Dmax, &tcoords);
+    skycoords[i].Xc[4] = skycoords[i].Xc[0];    
+    skycoords[i].Yc[4] = skycoords[i].Yc[0];    
+
+    RmaxSky[i] = skylist[0].regions[i][0].Rmax;
+    index[i] = i;
+
+    dx = 0.02*(skycoords[i].Xc[2] - skycoords[i].Xc[0]);
+    dy = 0.02*(skycoords[i].Yc[2] - skycoords[i].Yc[0]);
+    skycoords[i].Xc[0] -= dx; skycoords[i].Yc[0] -= dy;
+    skycoords[i].Xc[1] += dx; skycoords[i].Yc[1] -= dy;
+    skycoords[i].Xc[2] += dx; skycoords[i].Yc[2] += dy;
+    skycoords[i].Xc[3] -= dx; skycoords[i].Yc[3] += dy;
+    skycoords[i].Xc[4] -= dx; skycoords[i].Yc[4] -= dy;
+  }
+
+  dsortindex (RmaxSky, index, skylist[0].Nregions);
+
+  *RmaxSky_out = RmaxSky;
+  *index_out = index;
+  *skycoords_out = skycoords;
+
+  return;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/setExclusions.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/setExclusions.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/setExclusions.c	(revision 34041)
@@ -6,5 +6,5 @@
 // and uses the bits read from disk as the test
 
-int setExclusions (Catalog *catalog, int Ncatalog) {
+int setExclusions (Catalog *catalog, int Ncatalog, int verbose) {
 
   off_t i, j, k, m, Narea, Nnocal, Ngood;
@@ -59,7 +59,7 @@
     }
   }
-  if (VERBOSE) fprintf (stderr, OFF_T_FMT" measurements marked by area\n",    Narea);
-  if (VERBOSE) fprintf (stderr, OFF_T_FMT" measurements marked nocal\n",      Nnocal);
-  if (VERBOSE) fprintf (stderr, OFF_T_FMT" measurements kept for analysis\n", Ngood);
+  if (verbose) fprintf (stderr, OFF_T_FMT" measurements marked by area\n",    Narea);
+  if (verbose) fprintf (stderr, OFF_T_FMT" measurements marked nocal\n",      Nnocal);
+  if (verbose) fprintf (stderr, OFF_T_FMT" measurements kept for analysis\n", Ngood);
   return (TRUE);
 }
Index: branches/meh_branches/ppstack_test/Ohana/src/relphot/src/setMrelFinal.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/relphot/src/setMrelFinal.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/relphot/src/setMrelFinal.c	(revision 34041)
@@ -5,14 +5,31 @@
 // output dbFlags values
 
-void setMrelFinal (Catalog *catalog) {
-
-  off_t i, j, m;
+void setMrelFinal (Catalog *catalog, FlatCorrectionTable *flatcorr, int simpleAverage) {
+
+  off_t i;
   int ecode;
+
+  int Nsecfilt = GetPhotcodeNsecfilt ();
 
   /* if we reset the catalog, reset all the current measurements */
   if (RESET) {
-
-    int Nsecfilt = GetPhotcodeNsecfilt ();
-
+    // flags used by the photometry analysis (excluding UBERCAL)
+    unsigned int PHOTOM_FLAGS = 
+      ID_MEAS_NOCAL |       // detection ignored for this analysis (photcode, time range)
+      ID_MEAS_POOR_PHOTOM | // detection is photometry outlier 
+      ID_MEAS_SKIP_PHOTOM | // detection was ignored for photometry measurement 
+      ID_MEAS_AREA;	  // detetion was outside acceptable area of device
+    
+    // flags used by the photometry analysis (excluding UBERCAL)
+    // unsigned int secfiltFlags = 
+    //   ID_PHOTOM_PASS_0 | // average measured at pass 0
+    //   ID_PHOTOM_PASS_1 | // average measured at pass 1
+    //   ID_PHOTOM_PASS_2 | // average measured at pass 2
+    //   ID_PHOTOM_PASS_3 | // average measured at pass 3
+    //   ID_PHOTOM_PASS_4 | // average measured at pass 3
+    //   ID_SECF_USE_SYNTH | // average measured at pass 3
+    //   ID_SECF_USE_UBERCAL | // average measured at pass 3
+    //   ID_SECF_OBJ_EXT; // average measured at pass 3
+    
     int Ns;
     for (Ns = 0; Ns < Nphotcodes; Ns++) {
@@ -22,9 +39,19 @@
 
       for (i = 0; i < catalog[0].Naverage; i++) {
-	catalog[0].secfilt[Nsecfilt*i+Nsec].M  = NAN;
-	catalog[0].secfilt[Nsecfilt*i+Nsec].dM = NAN;
-	catalog[0].secfilt[Nsecfilt*i+Nsec].Xm = NAN_S_SHORT;
-
-	m = catalog[0].average[i].measureOffset;
+	off_t N = Nsecfilt*i+Nsec;
+	catalog[0].secfilt[N].M      = NAN;
+	catalog[0].secfilt[N].Map    = NAN;
+	catalog[0].secfilt[N].dM     = NAN;
+	catalog[0].secfilt[N].Mstdev = NAN_S_SHORT;
+	catalog[0].secfilt[N].Xm     = NAN;
+	catalog[0].secfilt[N].M_20   = NAN_S_SHORT;
+	catalog[0].secfilt[N].M_80   = NAN_S_SHORT;
+	catalog[0].secfilt[N].Ncode  = 0;
+	catalog[0].secfilt[N].Nused  = 0;
+	catalog[0].secfilt[N].flags  = 0; // XXX there are no *astrometry* bits in secfilt.flags
+	catalog[0].secfilt[N].ubercalDist = 1000;
+
+	off_t m = catalog[0].average[i].measureOffset;
+	off_t j;
 	for (j = 0; j < catalog[0].average[i].Nmeasure; j++, m++) {
 	
@@ -39,10 +66,18 @@
 	  }
 	
-	  catalog[0].measure[m].Mcal = 0;
-	  catalog[0].measure[m].dbFlags &= 0xff00;
-	  catalog[0].measure[m].dbFlags &= ~ID_MEAS_POOR_PHOTOM;
-	  catalog[0].measure[m].dbFlags &= ~ID_MEAS_SKIP_PHOTOM;
-	  catalog[0].measure[m].dbFlags &= ~ID_MEAS_AREA;
-	  catalog[0].measure[m].dbFlags &= ~ID_MEAS_NOCAL;
+	  // only reset Mcal for measures with a matching image
+	  // do not reset Mcal for ubercal images unless explicitly requested
+
+	  if (catalog[0].measure[m].dbFlags & ID_MEAS_PHOTOM_UBERCAL) {
+	    if (!KEEP_UBERCAL) {
+	      catalog[0].measure[m].Mcal = 0.0;
+	      catalog[0].measure[m].dbFlags &= ~ID_MEAS_PHOTOM_UBERCAL;
+	    } 
+	  } else {
+	    if (getImageEntry (m, 0) >= 0) {
+	      catalog[0].measure[m].Mcal = 0.0;
+	    }
+	  }
+	  catalog[0].measure[m].dbFlags &= ~PHOTOM_FLAGS;
 	}
       }
@@ -51,32 +86,32 @@
 
   // this sets flags in the measureT element, not the measure element
-  setExclusions (catalog, 1);  /* mark by area */
+  setExclusions (catalog, 1, VERBOSE);  /* mark by area */
 
   /* set catalog[0].found[i] = FALSE */
-  ALLOCATE (catalog[0].found, off_t, MAX (1, catalog[0].Naverage));
-  for (i = 0; i < catalog[0].Naverage; i++) {
+  ALLOCATE (catalog[0].found, off_t, MAX (1, Nsecfilt*catalog[0].Naverage));
+  for (i = 0; i < Nsecfilt*catalog[0].Naverage; i++) {
     catalog[0].found[i] = FALSE;
   }
 
+  // XXX make this optional? (do not clean for -averages?)
+  if (!simpleAverage) clean_measures (catalog, 1, TRUE, flatcorr);    /* mark outliers ID_MEAS_POOR_PHOTOM */
   for (i = 0; i < 5; i++) {
-    skip_measurements (catalog, i);       /* set ID_MEAS_SKIP for measures to be skipped */
-    setMrelOutput  (catalog, 1, FALSE);   /* set Mrel using all measures not skipped */
-    clean_measures (catalog, 1, TRUE);    /* mark outliers ID_MEAS_POOR_PHOTOM */
-    setMrelOutput  (catalog, 1, TRUE);    /* set Mrel using remaining measures */
-  }
-  setMcalOutput (catalog, 1);
-
-  int Nsecfilt = GetPhotcodeNsecfilt ();
+    skip_measurements (catalog, i, flatcorr);       /* set ID_MEAS_SKIP for measures to be skipped */
+    setMrelOutput  (catalog, 1, i, flatcorr);    /* set Mrel using remaining measures */
+  }
+  if (!simpleAverage) setMcalOutput (catalog, 1, flatcorr);
 
   /* clear ID_STAR_POOR, ID_STAR_FEW values before writing ??? */
   /* ID_MEAS_NOCAL is an internal bit, so it should be cleared */
+  // XXX eventually: move these internal flags to an internal-only catalog->FOO element (like found)
   for (i = 0; i < catalog[0].Naverage; i++) {
     catalog[0].average[i].flags &= ~ID_STAR_FEW;
     catalog[0].average[i].flags &= ~ID_STAR_POOR;
+    off_t j;
     for (j = 0; j < Nsecfilt; j++) {
 	catalog[0].secfilt[i*Nsecfilt+j].flags &= ~ID_STAR_FEW; 
 	catalog[0].secfilt[i*Nsecfilt+j].flags &= ~ID_STAR_POOR; 
     }
-    m = catalog[0].average[i].measureOffset;
+    off_t m = catalog[0].average[i].measureOffset;
     for (j = 0; j < catalog[0].average[i].Nmeasure; j++, m++) {
       catalog[0].measure[m].dbFlags &= ~ID_MEAS_NOCAL;
@@ -86,80 +121,140 @@
 
 /* ID_MEAS_SKIP marks measurements which were not used to calculate Mrel */
-void skip_measurements (Catalog *catalog, int pass) {
+// For each star & photcode, we are selecting the measurements to use in the average
+// photometry value.  This function is called several times, lowering the bar to
+// acceptance on each pass. The rejections at the different passes are:
+
+// 0 : only use measurements thought to be GOOD (photflags not POOR or BAD)
+// 1 : accept measurements thought to be POOR based on photflags
+// 2 : accept the measurements marked as outliers; accept images marked as outliers
+// 3 : accept measurements thought to be BAD based on photflags
+// 4 : accept the measurements outside of the instrumental magnitude limits (eg, SAT)
+
+// XXX if I'm reading this correctly, passes 0, 1, 2 are identical & accept all
+// non-outliers with Imag range
+
+// int print_measure_set (Average *average, SecFilt *secfilt, Measure *measure) {
+// 
+//   off_t k;
+// 
+//   int Nsecfilt = GetPhotcodeNsecfilt ();
+// 
+//   off_t m = average[0].measureOffset;
+// 
+//   for (k = 0; k < average[0].Nmeasure; k++, m++) {
+//     fprintf (stderr, "meas: %08x\n", measure[m].dbFlags);
+//   }
+// 
+//   int Ns;
+//   for (Ns = 0; Ns < Nsecfilt; Ns++) {
+//     fprintf (stderr, "secf: %08x\n", secfilt[Ns].flags);
+//   }
+//   return 1;
+// }
+
+int print_measure_set (Average *average, SecFilt *secfilt, Measure *measure);
+
+void skip_measurements (Catalog *catalog, int pass, FlatCorrectionTable *flatcorr) {
 
   off_t i, k, m;
-  int ecode, found, Ns;
   off_t Ntot, Ntry, Nkeep, Nskip;
   float mag;
 
+  int Nsecfilt = GetPhotcodeNsecfilt ();
+
   Ntot = Ntry = Nskip = Nkeep = 0;
 
   /* allow measures from images marked POOR and FEW */
-  if (pass >= 3) IMAGE_BAD = ID_IMAGE_PHOTOM_NOCAL;
+  if (pass >= 2) IMAGE_BAD = ID_IMAGE_PHOTOM_NOCAL;
   
   /* allow measures marked as outliers (POOR) and off image region (AREA) */
-  if (pass >= 3) MEAS_BAD = ID_MEAS_NOCAL | ID_MEAS_SKIP_PHOTOM;
-
-  /* mark measures which should be ignored on second pass */
+  if (pass >= 2) {
+    MEAS_BAD = ID_MEAS_NOCAL | ID_MEAS_SKIP_PHOTOM;
+  } else {
+    MEAS_BAD  = ID_MEAS_NOCAL | ID_MEAS_POOR_PHOTOM | ID_MEAS_SKIP_PHOTOM | ID_MEAS_AREA;
+  }
+
+  /* mark measures which should be ignored on this pass */
   for (i = 0; i < catalog[0].Naverage; i++) {
     Ntot += catalog[0].average[i].Nmeasure;
-    if (catalog[0].found[i]) continue;
-
-    m = catalog[0].average[i].measureOffset;
-    for (k = 0; k < catalog[0].average[i].Nmeasure; k++, m++) {
-      Ntry++;
-
-      /* clear SKIP for all measures at first */
-      catalog[0].measureT[m].dbFlags &= ~ID_MEAS_SKIP_PHOTOM;
-
-      /** never use these measurements (wrong photcode, bad time range) */
-      /* skipped via NOCAL, don't mark as skipped */
-      ecode = GetPhotcodeEquivCodebyCode (catalog[0].measure[m].photcode);
-      found = FALSE;
-      for (Ns = 0; !found && (Ns < Nphotcodes); Ns++) {
-	if (ecode == photcodes[Ns][0].code) found = TRUE;
+
+    if (FALSE && (catalog[0].average[i].objID == 0x46a4) && (catalog[0].average[i].catID == 0xf40e)) {
+      fprintf (stderr, "test obj\n");
+      print_measure_set (&catalog[0].average[i], &catalog[0].secfilt[i*Nsecfilt], catalog[0].measure);
+    }
+
+    // mark measurements for each secfilt separately
+    int Ns;
+    for (Ns = 0; Ns < Nphotcodes; Ns++) {
+      
+      int thisCode = photcodes[Ns][0].code;
+      int Nsec = GetPhotcodeNsec(thisCode);
+      
+      /* star/photcodes already calibrated */
+      if (catalog[0].found[Nsecfilt*i+Nsec]) continue;  
+
+      m = catalog[0].average[i].measureOffset;
+      for (k = 0; k < catalog[0].average[i].Nmeasure; k++, m++) {
+	Ntry++;
+
+	// skip measurements not related to this photcode
+	PhotCode *code = GetPhotcodebyCode (catalog[0].measure[m].photcode);
+	if (!code) continue;
+	if (code->equiv != thisCode) continue;
+
+	// skip measurements by time range (mark as skipped for this secfilt)
+	// XXX note that this is a bit dangerous : some objects may never get calibrated 
+	if (TimeSelect) {
+	  if (catalog[0].measure[m].t < TSTART) goto skip;
+	  if (catalog[0].measure[m].t > TSTOP) goto skip;
+	}
+	
+	// we now have a measurement relavant to this photcode (and time range)
+
+	// clear SKIP for all measures at first 
+	catalog[0].measureT[m].dbFlags &= ~ID_MEAS_SKIP_PHOTOM;
+	catalog[0].measure [m].dbFlags &= ~ID_MEAS_SKIP_PHOTOM;
+
+	// skip measurements from BAD images and mosaics (not REF mags)
+	// do NOT skip measurements without a matching image (REF mags)
+	off_t Nim = getImageEntry (m, 0);
+	if (Nim > -1) {
+	  if (isnan(getMcal (m, 0, flatcorr, catalog))) goto skip;
+	  if (isnan(getMmos (m, 0))) goto skip;
+	}
+
+	// PASS 4 : skip measurements by inst mag limit (not REF mags)
+	if ((pass < 4) && ImagSelect) {
+	  if (Nim > -1) {
+	    mag = PhotInst (&catalog[0].measure[m]);
+	    if (mag < ImagMin) goto skip;
+	    if (mag > ImagMax) goto skip;
+	  }
+	}
+
+	// PASS 3 : accept bad measurements (eg, SAT, CR)
+	if (pass < 3) {
+	  if (catalog[0].measure[m].photFlags & code->photomBadMask) goto skip;
+	  if ((catalog[0].measure[m].photcode > 10000) && (catalog[0].measure[m].photcode < 10500)) {
+	    if (catalog[0].measure[m].psfQual < 0.85) goto skip;
+	  }
+	}
+	
+	// PASS 2 : internal outliers accepted
+
+	// PASS 1 : accept poor measurements as well (eg, POOR FIT, etc)
+	if ((pass < 1) && (catalog[0].measure[m].photFlags & code->photomPoorMask)) goto skip;
+
+	// PASS 0 : skip poor, outlier, bad measurements as well (eg, POOR FIT, etc)
+
+	Nkeep ++;
+	
+	continue;
+
+      skip:
+	catalog[0].measure [m].dbFlags |= ID_MEAS_SKIP_PHOTOM;
+	catalog[0].measureT[m].dbFlags |= ID_MEAS_SKIP_PHOTOM;
+	Nskip ++;
       }
-      if (!found) continue;
-
-      /* skip measurements by time range */
-      if (TimeSelect) {
-	if (catalog[0].measure[m].t < TSTART) goto skip;
-	if (catalog[0].measure[m].t > TSTOP) goto skip;
-      }
-
-      /* skip measurements with sat. dophot values */
-      // XXX we need to fix this: use the photFlags to ID saturation...
-      // if ((pass < 4) && (catalog[0].measure[m].dophot == 10)) goto skip;
-
-      /* skip measurements from BAD images and mosaics */
-      /* do NOT skip measurements without a matching image */
-      if (isnan(getMcal (m, 0))) goto skip;
-      if (isnan(getMmos (m, 0))) goto skip;
-
-      /* skip measurements by inst mag limit */
-      if ((pass < 4) && ImagSelect) {
-	mag = PhotInst (&catalog[0].measure[m]);
-	if (mag < ImagMin) goto skip;
-	if (mag > ImagMax) goto skip;
-      }
-
-      // d1 = (catalog[0].measure[m].dophot == 1);
-      // d2 = (catalog[0].measure[m].dophot == 2);
-      // fprintf (stderr, "fix the dophot / type selections!");
-      // abort ();
-
-      /* skip measurements by measurement error */
-      // if ((pass < 2) && !(d1 || d2)) goto skip;
-
-      /* if ((pass < 1) && (catalog[0].measure[m].dM > SIGMA_LIM)) goto skip; */
-      // if ((pass < 1) && !d1) goto skip;
-      Nkeep ++;
-
-      continue;
-
-    skip:
-      catalog[0].measure [m].dbFlags |= ID_MEAS_SKIP_PHOTOM;
-      catalog[0].measureT[m].dbFlags |= ID_MEAS_SKIP_PHOTOM;
-      Nskip ++;
     }
   }
Index: branches/meh_branches/ppstack_test/Ohana/src/tools/src/radec.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/tools/src/radec.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/tools/src/radec.c	(revision 34041)
@@ -9,8 +9,14 @@
   char sep;
   double ra, dec;
-  int status, h, m, flag;
+  int status, h, m, flag, N;
   double s, hh;
 
   sep = ' ';
+  if ((N = get_argument (argc, argv, "-sep"))) {
+    remove_argument (N, &argc, argv);
+    sep = argv[N][0];
+    remove_argument (N, &argc, argv);
+  }
+
   if (get_argument (argc, argv, "-hms")) {
     while (scan_line (stdin, line) != EOF) {
Index: branches/meh_branches/ppstack_test/Ohana/src/tools/src/roc.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/tools/src/roc.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/tools/src/roc.c	(revision 34041)
@@ -3,6 +3,4 @@
 # include <sys/types.h>
 # include <regex.h>
-
-# define myAssert(LOGIC,...) { if (!(LOGIC)) { fprintf (stderr, __VA_ARGS__); exit(4); } }
 
 # define ROC_HEADER_SIZE  0x1000
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/Makefile
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/Makefile	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/Makefile	(revision 34041)
@@ -1,3 +1,3 @@
-default: uniphot setphot setfwhm
+default: uniphot setphot setphot_client setfwhm 
 help:
 @echo "make options: uniphot setphot setfwhm default help install default (uniphot setphot setfwhm)"
@@ -18,7 +18,9 @@
 
 uniphot: $(BIN)/uniphot.$(ARCH)
+setfwhm: $(BIN)/setfwhm.$(ARCH)
 setphot: $(BIN)/setphot.$(ARCH)
-setfwhm: $(BIN)/setfwhm.$(ARCH)
-install: $(DESTBIN)/uniphot $(DESTBIN)/setphot $(DESTBIN)/setfwhm
+setphot_client: $(BIN)/setphot_client.$(ARCH)
+
+install: $(DESTBIN)/uniphot $(DESTBIN)/setfwhm $(DESTBIN)/setphot $(DESTBIN)/setphot_client
 
 UNIPHOT = \
@@ -33,6 +35,6 @@
 $(SRC)/find_image_sgroups.$(ARCH).o \
 $(SRC)/fit_groups.$(ARCH).o	    \
-$(SRC)/update.$(ARCH).o		    \
-$(SRC)/update_catalog.$(ARCH).o	    \
+$(SRC)/update_dvo_uniphot.$(ARCH).o \
+$(SRC)/update_catalog_uniphot.$(ARCH).o \
 $(SRC)/convert.$(ARCH).o	    \
 $(SRC)/SetSignals.$(ARCH).o	    \
@@ -45,17 +47,27 @@
 SETPHOT = \
 $(SRC)/setphot.$(ARCH).o	    \
-$(SRC)/initialize.$(ARCH).o	    \
-$(SRC)/ConfigInit.$(ARCH).o	    \
-$(SRC)/args.$(ARCH).o               \
-$(SRC)/liststats.$(ARCH).o	    \
+$(SRC)/initialize_setphot.$(ARCH).o \
 $(SRC)/load_zpt_table.$(ARCH).o	    \
-$(SRC)/load_images.$(ARCH).o	    \
+$(SRC)/load_images_setphot.$(ARCH).o \
+$(SRC)/ImageSubset.$(ARCH).o	    \
 $(SRC)/match_zpts_to_images.$(ARCH).o	    \
+$(SRC)/match_flatcorr_to_images.$(ARCH).o	    \
+$(SRC)/update_dvo_setphot.$(ARCH).o \
 $(SRC)/update_catalog_setphot.$(ARCH).o \
 $(SRC)/SetSignals.$(ARCH).o	    \
 $(SRC)/Shutdown.$(ARCH).o	    
 
-$(SETPHOT): $(INC)/uniphot.h
+$(SETPHOT): $(INC)/setphot.h
 $(BIN)/setphot.$(ARCH): $(SETPHOT)
+
+SETPHOT_CLIENT = \
+$(SRC)/setphot_client.$(ARCH).o	    \
+$(SRC)/update_dvo_setphot.$(ARCH).o \
+$(SRC)/update_catalog_setphot.$(ARCH).o \
+$(SRC)/initialize_setphot_client.$(ARCH).o \
+$(SRC)/ImageSubset.$(ARCH).o
+
+$(SETPHOT_CLIENT): $(INC)/setphot.h
+$(BIN)/setphot_client.$(ARCH): $(SETPHOT_CLIENT)
 
 SETFWHM =                           \
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/include/setphot.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/include/setphot.h	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/include/setphot.h	(revision 34041)
@@ -0,0 +1,74 @@
+# include <ohana.h>
+# include <dvo.h>
+# include <signal.h>
+
+typedef struct {
+    float zpt;
+    float zpt_err;
+    e_time time;
+    int found;
+} ZptTable;
+
+typedef struct {
+  float Mcal;
+  float dMcal;
+  unsigned int imageID;
+  unsigned int photom_map_id;
+  unsigned int flags;
+} ImageSubset;
+
+/* global variables set in parameter file */
+# define DVO_MAX_PATH 1024
+char         ImageCat[DVO_MAX_PATH];
+char        *CATDIR;
+int          HOST_ID;
+char        *HOSTDIR;
+char        *IMAGES;
+int          VERBOSE;
+int          RESET;
+int          UBERCAL; // load the supplied ubercal zero point fits table (with flat-field corrections)
+int          NO_METADATA; // the supplied ubercal data has no descriptive metadata
+int          UPDATE;
+int          PARALLEL;
+int          PARALLEL_MANUAL;
+int          PARALLEL_SERIAL;
+int          IMAGES_ONLY;
+
+/***** prototypes ****/
+int           main                PROTO((int argc, char **argv));
+
+void          ConfigInit          PROTO((int *argc, char **argv));
+void          initialize_setphot  PROTO((int argc, char **argv));
+int           args_setphot        PROTO((int argc, char **argv));
+
+void          initialize_setphot_client PROTO((int argc, char **argv));
+int           args_setphot_client       PROTO((int argc, char **argv));
+int           update_dvo_setphot_client PROTO((ImageSubset *image, off_t Nimage, FlatCorrectionTable *flatcorr));
+
+ImageSubset  *ImageSubsetLoad     PROTO((char *filename, off_t *nimage));
+int           ImageSubsetSave     PROTO((char *filename, Image *image, off_t Nimage));
+Image        *ImagesFromSubset    PROTO((ImageSubset *subset, off_t N));
+
+void 	      lock_image_db 	  PROTO((FITS_DB *db, char *filename));
+void	      unlock_image_db 	  PROTO((FITS_DB *db));
+void	      create_image_db 	  PROTO((FITS_DB *db));
+void	      set_db 		  PROTO((FITS_DB *in));
+int 	      Shutdown 		  PROTO((char *format, ...) OHANA_FORMAT(printf, 1, 2) );
+void 	      TrapSignal 	  PROTO((int sig));
+void 	      SetProtect 	  PROTO((int mode));
+int 	      SetSignals 	  PROTO((void));
+
+// setphot-specific prototypes
+ZptTable     *load_zpt_table         PROTO((char *filename, int *nzpts));
+Image        *load_images_setphot    PROTO((FITS_DB *db, off_t *Nimage));
+int           match_zpts_to_images   PROTO((Image *image, off_t Nimage, ZptTable *zpts, int Nzpts));
+int           update_dvo_setphot     PROTO((Image *image, off_t Nimage, FlatCorrectionTable *flatcorr));
+void          update_catalog_setphot PROTO((Catalog *catalog, Image *image, off_t *index, off_t Nimage, FlatCorrectionTable *flatcorr));
+void          update_catalog_setphot_client PROTO((Catalog *catalog, ImageSubset *image, off_t *index, off_t Nimage, FlatCorrectionTable *flatcorr));
+
+ZptTable     *load_zpt_ubercal            PROTO((char *filename, int *nzpts, FlatCorrectionTable *flatcorrTable));
+ZptTable     *load_zpt_ubercal_nometadata PROTO((char *filename, int *nzpts, FlatCorrectionTable *flatcorrTable));
+int           match_flatcorr_to_images    PROTO((Image *image, off_t Nimage, FlatCorrectionTable *flatcorrTable));
+
+int           parse_zpt_offsets           PROTO((char *ZPT_OFFSET_FILTERS, char *ZPT_OFFSET_VALUES));
+float         apply_zpt_offset            PROTO((short code));
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/include/setphot_client.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/include/setphot_client.h	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/include/setphot_client.h	(revision 34041)
@@ -0,0 +1,168 @@
+# include <ohana.h>
+# include <dvo.h>
+# include <signal.h>
+
+# ifdef ANSI
+#   define F_SETFL      4   
+#   define O_NONBLOCK   0200000  
+#   define AF_UNIX      1          
+#   define SOCK_STREAM  1          
+#   define ENOENT       2       /* No such file or directory    */
+# endif /* ANSI */
+
+typedef struct {
+  double median;
+  double mean;
+  double sigma;
+  double error;
+  double chisq;
+  double min;
+  double max;
+  double total;
+  int    Nmeas;
+} StatType;
+
+typedef struct {
+  void *tgroup;
+  void *sgroup;
+} ImageLink;
+
+typedef struct {
+  char tstart[64];
+  char tstop[64];
+  char label[64];
+  float M;
+  float dM;
+  float dMsub;
+  double v1, v2;
+  Image **image;
+  ImageLink **imlink;
+  int Nimage, Ngood;
+} Group;
+
+typedef struct {
+    float zpt;
+    float zpt_err;
+    e_time time;
+    int found;
+} ZptTable;
+
+typedef struct {
+    float fwhm_major;
+    float fwhm_minor;
+    e_time time;
+    int found;
+    unsigned short photcode;
+} FWHMTable;
+
+/* global variables set in parameter file */
+char         ImageCat[256];
+char         CATDIR[256];
+char         CATMODE[16];    /* raw, mef, split, mysql */
+char         CATFORMAT[16];  /* internal, elixir, loneos, panstarrs */
+char         SKY_TABLE[256];
+int          SKY_DEPTH;  /** XXX EAM : depth of catalog tables, fix usage */
+char         GSCFILE[256];
+char         STATMODE[64];
+int          VERBOSE;
+int          UBERCAL; // load the supplied ubercal zero point fits table (with flat-field corrections)
+int          NO_METADATA; // the supplied ubercal data has no descriptive metadata
+int          NLOOP;
+int          TimeSelect;
+int          VERBOSE;
+int          UPDATE;
+int          IMAGE_BAD;
+double       RADIUS;
+double       TRANGE;
+time_t 	     TSTART;
+time_t 	     TSTOP;
+PhotCode    *photcode;
+
+enum {black, white, red, orange, yellow, green, blue, indigo, violet};
+
+typedef struct {
+  double xmin, xmax, ymin, ymax;
+  int style, ptype, ltype, etype, color;
+  double lweight, size;
+} UPGraphdata;
+
+/***** prototypes ****/
+void          ConfigInit          PROTO((int *argc, char **argv));
+void          DonePlotting        PROTO((UPGraphdata *graphmode, int N));
+void          JpegPlot            PROTO((UPGraphdata *graphmode, int N, char *filename));
+void          PSPlot              PROTO((UPGraphdata *graphmode, int N, char *filename));
+void          PlotLabel           PROTO((char *string, int N));
+void          PlotVector          PROTO((int Npts, double *vect, int mode, int N));
+void          PrepPlotting        PROTO((int Npts, UPGraphdata *graphmode, int N));
+void          XDead               PROTO((void));
+int           args_uniphot        PROTO((int argc, char **argv));
+int           args_setphot        PROTO((int argc, char **argv));
+void          dumpresult          PROTO((void));
+Group        *find_image_sgroups  PROTO((FITS_DB *db, ImageLink **imlink, int *Nsgroup));
+Group        *find_image_tgroups  PROTO((FITS_DB *db, ImageLink **imlink, int *Ntgroup));
+void          fit_sgroup          PROTO((Group *sgroup, int Nsgroup));
+void          fit_tgroup          PROTO((Group *tgroup, int Ntgroup));
+int           gcatalog            PROTO((Catalog *catalog));
+void          initialize_uniphot  PROTO((int argc, char **argv));
+void          initialize_setphot  PROTO((int argc, char **argv));
+void          initstats           PROTO((char *mode));
+int           liststats           PROTO((double *value, double *dvalue, int N, StatType *stats));
+int           load_images_uniphot PROTO((FITS_DB *db));
+int           main                PROTO((int argc, char **argv));
+int           open_graph          PROTO((int N));
+void          sort                PROTO((unsigned int *X, int N));
+void          sortB               PROTO((double *X, double *Y, int N));
+void          sortD               PROTO((double *X, double *Y, double *Z, int N));
+void          wcatalog            PROTO((Catalog *catalog));
+void          wimages             PROTO((Image *image, int Nimage));
+void 	      check_permissions   PROTO((char *basefile));
+void 	      lock_image_db 	  PROTO((FITS_DB *db, char *filename));
+void	      unlock_image_db 	  PROTO((FITS_DB *db));
+void	      create_image_db 	  PROTO((FITS_DB *db));
+void	      set_db 		  PROTO((FITS_DB *in));
+int 	      Shutdown 		  PROTO((char *format, ...) OHANA_FORMAT(printf, 1, 2) );
+void 	      TrapSignal 	  PROTO((int sig));
+void 	      SetProtect 	  PROTO((int mode));
+int 	      SetSignals 	  PROTO((void));
+int 	      subset_images 	  PROTO((FITS_DB *db));
+void 	      update_dvo_uniphot  PROTO((FITS_DB *db, Group *sgroup, int Nsgroup));
+void          update_catalog_uniphot PROTO((Catalog *catalog, Group *sgroup, int warn));
+void 	      sort_time 	  PROTO((unsigned int *value, int N));
+
+// setphot-specific prototypes
+ZptTable     *load_zpt_table         PROTO((char *filename, int *nzpts));
+Image        *load_images_setphot    PROTO((FITS_DB *db, off_t *Nimage));
+int           match_zpts_to_images   PROTO((Image *image, off_t Nimage, ZptTable *zpts, int Nzpts));
+int           update_dvo_setphot     PROTO((Image *image, off_t Nimage, FlatCorrectionTable *flatcorr));
+void          update_catalog_setphot PROTO((Catalog *catalog, Image *image, off_t *index, off_t Nimage, FlatCorrectionTable *flatcorr));
+
+ZptTable *load_zpt_ubercal (char *filename, int *nzpts, FlatCorrectionTable *flatcorrTable);
+ZptTable *load_zpt_ubercal_nometadata (char *filename, int *nzpts, FlatCorrectionTable *flatcorrTable);
+int match_flatcorr_to_images (Image *image, off_t Nimage, FlatCorrectionTable *flatcorrTable);
+
+/*** time/coord conversion functions not supplied by libohana ***/
+time_t        TimeRef               PROTO((double time, time_t TimeReference, int TimeFormat));
+double        TimeValue             PROTO((time_t time, time_t TimeReference, int TimeFormat));
+
+int           hh_hms                PROTO((double hh, int *hr, int *mn, double *sc));
+int           dd_dms                PROTO((double dd, int *dg, int *mn, double *sc));
+int           hms_format            PROTO((char *line, double value));
+int           dms_format            PROTO((char *line, double value));
+int           hh_hm                 PROTO((double hh, int *hr, double *mn));
+int           day_to_sec            PROTO((char *string, time_t *second));
+int           hms_to_sec            PROTO((char *string, time_t *second));
+char         *ohana_sec_to_hms      PROTO((time_t second));
+char         *ohana_sec_to_day      PROTO((time_t second));
+
+char         *meade_deg_to_str      PROTO((double deg));
+char         *meade_ra_to_str       PROTO((double deg));
+char         *meade_dec_to_str      PROTO((double deg));
+char         *strptime              PROTO((const char *s, const char *format, struct tm *tm));
+time_t        GetTimeReference      PROTO((char *reference));
+int           GetTimeUnits          PROTO((char *name));
+
+void          initialize_setfwhm    PROTO((int argc, char **argv));
+int           args_setfwhm          PROTO((int argc, char **argv));
+FWHMTable    *load_fwhm_table       PROTO((char *filename, int *nfwhm));
+int           match_fwhm_to_images  PROTO((Image *image, off_t Nimage, FWHMTable *fwhm, int Nfwhm));
+
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/include/uniphot.h
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/include/uniphot.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/include/uniphot.h	(revision 34041)
@@ -66,4 +66,6 @@
 char         STATMODE[64];
 int          VERBOSE;
+int          UBERCAL; // load the supplied ubercal zero point fits table (with flat-field corrections)
+int          NO_METADATA; // the supplied ubercal data has no descriptive metadata
 int          NLOOP;
 int          TimeSelect;
@@ -95,5 +97,4 @@
 void          XDead               PROTO((void));
 int           args_uniphot        PROTO((int argc, char **argv));
-int           args_setphot        PROTO((int argc, char **argv));
 void          dumpresult          PROTO((void));
 Group        *find_image_sgroups  PROTO((FITS_DB *db, ImageLink **imlink, int *Nsgroup));
@@ -103,8 +104,8 @@
 int           gcatalog            PROTO((Catalog *catalog));
 void          initialize_uniphot  PROTO((int argc, char **argv));
-void          initialize_setphot  PROTO((int argc, char **argv));
 void          initstats           PROTO((char *mode));
 int           liststats           PROTO((double *value, double *dvalue, int N, StatType *stats));
 int           load_images_uniphot PROTO((FITS_DB *db));
+Image        *load_images_setfwhm PROTO((FITS_DB *db, off_t *Nimage));
 int           main                PROTO((int argc, char **argv));
 int           open_graph          PROTO((int N));
@@ -112,5 +113,4 @@
 void          sortB               PROTO((double *X, double *Y, int N));
 void          sortD               PROTO((double *X, double *Y, double *Z, int N));
-void          update_dvo_catalog  PROTO((Catalog *catalog, Group *sgroup, int warn));
 void          wcatalog            PROTO((Catalog *catalog));
 void          wimages             PROTO((Image *image, int Nimage));
@@ -125,32 +125,8 @@
 int 	      SetSignals 	  PROTO((void));
 int 	      subset_images 	  PROTO((FITS_DB *db));
-void 	      update 		  PROTO((FITS_DB *db, Group *sgroup, int Nsgroup));
+void 	      update_dvo_uniphot  PROTO((FITS_DB *db, Group *sgroup, int Nsgroup));
+void          update_catalog_uniphot PROTO((Catalog *catalog, Group *sgroup, int warn));
 void 	      sort_time 	  PROTO((unsigned int *value, int N));
 
-// setphot-specific prototypes
-ZptTable     *load_zpt_table         PROTO((char *filename, int *nzpts));
-Image        *load_images_setphot    PROTO((FITS_DB *db, off_t *Nimage));
-int           match_zpts_to_images   PROTO((Image *image, off_t Nimage, ZptTable *zpts, int Nzpts));
-int           update_setphot         PROTO((Image *image, off_t Nimage));
-void          update_catalog_setphot PROTO((Catalog *catalog, Image *image, off_t *index, off_t Nimage));
-
-/*** time/coord conversion functions not supplied by libohana ***/
-time_t        TimeRef               PROTO((double time, time_t TimeReference, int TimeFormat));
-double        TimeValue             PROTO((time_t time, time_t TimeReference, int TimeFormat));
-
-int           hh_hms                PROTO((double hh, int *hr, int *mn, double *sc));
-int           dd_dms                PROTO((double dd, int *dg, int *mn, double *sc));
-int           hms_format            PROTO((char *line, double value));
-int           dms_format            PROTO((char *line, double value));
-int           hh_hm                 PROTO((double hh, int *hr, double *mn));
-int           day_to_sec            PROTO((char *string, time_t *second));
-int           hms_to_sec            PROTO((char *string, time_t *second));
-char         *ohana_sec_to_hms      PROTO((time_t second));
-char         *ohana_sec_to_day      PROTO((time_t second));
-
-char         *meade_deg_to_str      PROTO((double deg));
-char         *meade_ra_to_str       PROTO((double deg));
-char         *meade_dec_to_str      PROTO((double deg));
-char         *strptime              PROTO((const char *s, const char *format, struct tm *tm));
 time_t        GetTimeReference      PROTO((char *reference));
 int           GetTimeUnits          PROTO((char *name));
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/ConfigInit.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/ConfigInit.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/ConfigInit.c	(revision 34041)
@@ -7,6 +7,4 @@
   double ZERO_POINT;
   char  *config, *file;
-  char CatdirPhotcodeFile[256];
-  char MasterPhotcodeFile[256];
 
   /*** load configuration info ***/
@@ -23,5 +21,4 @@
   ScanConfig (config, "CATMODE",                "%s",  0, CATMODE);
   ScanConfig (config, "CATFORMAT",              "%s",  0, CATFORMAT);
-  ScanConfig (config, "PHOTCODE_FILE",         	"%s",  0, MasterPhotcodeFile);
 
   sprintf (ImageCat, "%s/Images.dat", CATDIR);
@@ -43,12 +40,4 @@
   if (*CATMODE == 0) strcpy (CATMODE, "RAW");
   if (*CATFORMAT == 0) strcpy (CATFORMAT, "ELIXIR");
-
-  /* XXX this does not yet write out the master photcode table */
-  sprintf (CatdirPhotcodeFile, "%s/Photcodes.dat", CATDIR);
-  if (!LoadPhotcodes (CatdirPhotcodeFile, MasterPhotcodeFile, TRUE)) {
-    fprintf (stderr, "error loading photcode table %s or master file %s\n", CatdirPhotcodeFile, MasterPhotcodeFile);
-    exit (1);
-  }
-
 }
 
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/ImageSubset.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/ImageSubset.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/ImageSubset.c	(revision 34041)
@@ -0,0 +1,183 @@
+# include "setphot.h"
+
+# define GET_COLUMN(OUT,NAME,TYPE) \
+  TYPE *OUT = gfits_get_bintable_column_data (&theader, &ftable, NAME, type, &Nrow, &Ncol); \
+  myAssert (!strcmp(type, #TYPE), "wrong column type");
+
+ImageSubset *ImageSubsetLoad(char *filename, off_t *nimage) {
+
+  int i, Ncol;
+  off_t Nrow;
+  Header header;
+  Header theader;
+  Matrix matrix;
+  FTable ftable;
+
+  *nimage = 0;
+  ImageSubset *image = NULL;
+
+  FILE *f = fopen (filename, "r");
+  if (!f) {
+    fprintf (stderr, "ERROR: cannot open image subset file %s\n", filename);
+    return NULL;
+  }
+
+  /* load in PHU segment (ignore) */
+  if (!gfits_fread_header (f, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read image subset header\n");
+    fclose (f);
+    return NULL;
+  }
+  if (!gfits_fread_matrix (f, &matrix, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read image subset matrix\n");
+    gfits_free_header (&header);
+    fclose (f);
+    return NULL;
+  }
+
+  ftable.header = &theader;
+
+  // load data for this header 
+  if (!gfits_load_header (f, &theader)) {
+    fclose (f);
+    return NULL;
+  }
+
+  // read the fits table bytes
+  if (!gfits_fread_ftable_data (f, &ftable, FALSE)) {
+    fclose (f);
+    return NULL;
+  }
+  fclose (f);
+
+  // a bit annoying : we read the entire block of data (180M), then extract the columns, then set the image structure values.
+  // this means I need 3 copies in memory at some point.  ugh.
+
+  char type[16];
+
+  GET_COLUMN (Mcal,    "MCAL",       float);
+  GET_COLUMN (dMcal,   "MCAL_ERR",   float);
+  GET_COLUMN (imageID, "IMAGE_ID",   int);
+  GET_COLUMN (map,     "PHOTOM_MAP", int);
+  GET_COLUMN (flags,   "FLAGS",      int);
+
+  // XXX free the fits table data here 
+
+  ALLOCATE (image, ImageSubset, Nrow);
+  for (i = 0; i < Nrow; i++) {
+    image[i].imageID       = imageID[i];
+    image[i].photom_map_id = map[i];
+    image[i].flags         = flags[i];
+    image[i].Mcal          = Mcal[i];
+    image[i].dMcal         = dMcal[i];
+  }
+  fprintf (stderr, "loaded data for %lld images\n", (long long) Nrow);
+
+  free (Mcal);
+  free (dMcal);
+  free (imageID);
+  free (map);
+  free (flags);
+
+  *nimage = Nrow;
+  return image;
+}
+
+int ImageSubsetSave(char *filename, Image *image, off_t Nimage) {
+
+  int i;
+  Header header;
+  Header theader;
+  Matrix matrix;
+  FTable ftable;
+
+  gfits_init_header (&header);
+  header.extend = TRUE;
+  gfits_create_header (&header);
+  gfits_create_matrix (&header, &matrix);
+
+  gfits_create_table_header (&theader, "BINTABLE", "IMAGE_SUBSET");
+
+  gfits_define_bintable_column (&theader, "E", "MCAL", "zero point offset", "magnitudes", 1.0, 0.0);
+  gfits_define_bintable_column (&theader, "E", "MCAL_ERR", "zero point error", "magnitudes", 1.0, 0.0);
+
+  // an unsigned int needs to have bzero of 0x8000
+  gfits_define_bintable_column (&theader, "J", "IMAGE_ID", "image ID", NULL, 1.0, 1.0*0x8000);
+  gfits_define_bintable_column (&theader, "J", "PHOTOM_MAP", "map", NULL, 1.0, 1.0*0x8000);
+  gfits_define_bintable_column (&theader, "J", "FLAGS", "flags", NULL, 1.0, 1.0*0x8000);
+
+  // generate the output array that carries the data
+  gfits_create_table (&theader, &ftable);
+
+  float *Mcal, *dMcal;
+  unsigned int *imageID, *map, *flags;
+
+  // create intermediate storage arrays
+  ALLOCATE (Mcal,  float, Nimage);
+  ALLOCATE (dMcal, float, Nimage);
+  ALLOCATE (imageID, unsigned int, Nimage);
+  ALLOCATE (map,     unsigned int, Nimage);
+  ALLOCATE (flags,   unsigned int, Nimage);
+
+  // assign the storage arrays
+  for (i = 0; i < Nimage; i++) {
+    imageID[i] = image[i].imageID;
+    map[i]     = image[i].photom_map_id;
+    flags[i]   = image[i].flags;
+    Mcal[i]    = image[i].Mcal;
+    dMcal[i]   = image[i].dMcal;
+  }
+
+  // add the columns to the output array
+  gfits_set_bintable_column (&theader, &ftable, "MCAL",       Mcal,    Nimage);
+  gfits_set_bintable_column (&theader, &ftable, "MCAL_ERR",   dMcal,   Nimage);
+  gfits_set_bintable_column (&theader, &ftable, "IMAGE_ID",   imageID, Nimage);
+  gfits_set_bintable_column (&theader, &ftable, "PHOTOM_MAP", map,     Nimage);
+  gfits_set_bintable_column (&theader, &ftable, "FLAGS",      flags,   Nimage);
+
+  free (Mcal);
+  free (dMcal);
+  free (imageID);
+  free (map);
+  free (flags);
+
+  FILE *f = fopen (filename, "w");
+  if (!f) {
+    fprintf (stderr, "ERROR: cannot open image subset file for output %s\n", filename);
+    return FALSE;
+  }
+
+  gfits_fwrite_header  (f, &header);
+  gfits_fwrite_matrix  (f, &matrix);
+  gfits_fwrite_Theader (f, &theader);
+  gfits_fwrite_table  (f, &ftable);
+
+  gfits_free_header (&header);
+  gfits_free_matrix (&matrix);
+  gfits_free_header (&theader);
+  gfits_free_table (&ftable);
+
+  fclose (f);
+  fflush (f);
+
+  return TRUE;
+}
+
+Image *ImagesFromSubset (ImageSubset *subset, off_t N) {
+
+  off_t i;
+
+  // we have been given an ImageSubset array, containing a reduced set of image fields
+  // create full a Image array and save the needed values
+  Image *image = NULL;
+  ALLOCATE (image, Image, N);
+  for (i = 0; i < N; i++) {
+    image[i].imageID       = subset[i].imageID      ;
+    image[i].photom_map_id = subset[i].photom_map_id;
+    image[i].flags         = subset[i].flags        ;
+    image[i].Mcal          = subset[i].Mcal         ;
+    image[i].dMcal         = subset[i].dMcal        ;
+  }
+  return image;
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/args.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/args.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/args.c	(revision 34041)
@@ -72,28 +72,4 @@
 }
 
-int args_setphot (int argc, char **argv) {
-
-  int N;
-
-  VERBOSE = FALSE;
-  if ((N = get_argument (argc, argv, "-v"))) {
-    VERBOSE = TRUE;
-    remove_argument (N, &argc, argv);
-  }
-
-  UPDATE = FALSE;
-  if ((N = get_argument (argc, argv, "-update"))) {
-    remove_argument (N, &argc, argv);
-    UPDATE = TRUE;
-  }
-
-  if (argc != 2) {
-    fprintf (stderr, "ERROR: USAGE: setphot (zptfile) [options]\n");
-    exit (2);
-  } 
-
-  return (TRUE);
-}
-
 int args_setfwhm (int argc, char **argv) {
 
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/convert.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/convert.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/convert.c	(revision 34041)
@@ -1,7 +1,3 @@
 # include "uniphot.h"
-# define _XOPEN_SOURCE /* glibc2 (strptime) needs this */
-# include <time.h>
-
-/** additional time / coordinate conversions not supplied by libohana **/
 
 time_t GetTimeReference (char *reference) {
@@ -36,302 +32,2 @@
   return (Units);
 }
-
-int hh_hms (double hh, int *hr, int *mn, double *sc) {
-
-  int N, flag;
-
-  flag = SIGN(hh);
-  hh = fabs(hh);
-
-  // rationalize hh to range -24.0 < hh < 24.0
-  if (hh >= 24.0) {
-    N = (int)(hh/24.0);
-    hh -= 24.0*N;
-  }
-
-  *hr = (int) hh;
-  *mn = (int) 60*(hh - *hr);
-  *sc = 3600.0*(hh - *hr - *mn / 60.0);
-  if (*sc > 59.99) {
-    *sc = 0.0;
-    *mn += 1.0;
-  }
-  *hr *= flag;
-  return (TRUE);
-}
- 
-int dd_dms (double dd, int *dg, int *mn, double *sc) {
-
-  int flag;
-
-  flag = SIGN(dd);
-  dd = fabs (dd);
-  *dg = (int) dd;
-  *mn = (int) 60*(dd - *dg);
-  *sc = 3600.0*(dd - *dg - *mn/60.0);
-  if (*sc > 59.99) {
-    *sc = 0;
-    *mn += 1.0;
-  }
-  *dg *= flag;
-  return (TRUE);
-}
- 
-int hms_format (char *line, double value) {
-
-  int hr, mn;
-  double sc;
-
-  hh_hms (value, &hr, &mn, &sc);
-  hr = (int) value;
-  if (isnan (value))
-    sprintf (line, "xx:xx:xx.xx");
-  else {
-    if (value < 0) {
-      sprintf (line, "-%02d:%02d:%05.2f", abs(hr), mn, sc);
-    } else {
-      sprintf (line, "+%02d:%02d:%05.2f", hr, mn, sc);
-    }
-  }      
-  return (TRUE);
-}
-
-int dms_format (char *line, double value) {
-
-  int dg, mn;
-  double sc;
-
-  dd_dms (value, &dg, &mn, &sc);
-  if (value < 0) {
-    sprintf (line, "-%02d:%02d:%05.2f", abs(dg), mn, sc);
-  } else {
-    sprintf (line, "+%02d:%02d:%05.2f", dg, mn, sc);
-  }
-  return (TRUE);
-}
-
-/***** convert 00:00:00 or 00:00 to 0 - 86400 ****/
-int hms_to_sec (char *string, time_t *second) {
-  
-  char *p;
-  struct tm time;
-
-  p = strptime (string, "%H:%M:%S", &time);
-  if (p != NULL) goto valid;
-
-  p = strptime (string, "%H:%M", &time);
-  if (p != NULL) goto valid;
-
-  return (FALSE);
-    
-valid:
-  if (*p) return (FALSE);
-  *second = time.tm_hour*3600 + time.tm_min*60 + time.tm_sec;
-  return (TRUE);
-}
-
-/***** convert Mon[@00:00:00] or 00:00 to 0 - 86400*7 ****/
-int day_to_sec (char *string, time_t *second) {
-  
-  char *p;
-  struct tm time;
-
-  bzero (&time, sizeof(time));
-  p = strptime (string, "%A@%H:%M:%S", &time);
-  if (p != NULL) goto valid;
-
-  p = strptime (string, "%A@%H:%M", &time);
-  if (p != NULL) goto valid;
-
-  p = strptime (string, "%A@%H", &time);
-  if (p != NULL) goto valid;
-
-  p = strptime (string, "%A", &time);
-  if (p != NULL) goto valid;
-
-  return (FALSE);
-
-valid:
-  if (*p) return (FALSE);
-  *second = time.tm_wday*86400 + time.tm_hour*3600 + time.tm_min*60 + time.tm_sec;
-  return (TRUE);
-}
-
-/***** convert seconds to HH:MM:SS ****/
-char *ohana_sec_to_hms (time_t second) {
-  
-  struct tm *gmt;
-  char *line;
-
-  ALLOCATE (line, char, 64);
-  gmt   = gmtime (&second);
-  sprintf (line, "%02d:%02d:%02d", gmt[0].tm_hour, gmt[0].tm_min, gmt[0].tm_sec); 
-  return (line);
-}
-
-/***** convert seconds to Day@HH:MM:SS ****/
-char *ohana_sec_to_day (time_t second) {
-  
-  struct tm *gmt;
-  char *line;
-
-  ALLOCATE (line, char, 64);
-  gmt   = gmtime (&second);
-  switch (gmt[0].tm_wday) {
-    case 0:
-      sprintf (line, "Sun@%02d:%02d:%02d", gmt[0].tm_hour, gmt[0].tm_min, gmt[0].tm_sec); 
-      break;
-    case 1:
-      sprintf (line, "Mon@%02d:%02d:%02d", gmt[0].tm_hour, gmt[0].tm_min, gmt[0].tm_sec); 
-      break;
-    case 2:
-      sprintf (line, "Tue@%02d:%02d:%02d", gmt[0].tm_hour, gmt[0].tm_min, gmt[0].tm_sec); 
-      break;
-    case 3:
-      sprintf (line, "Wed@%02d:%02d:%02d", gmt[0].tm_hour, gmt[0].tm_min, gmt[0].tm_sec); 
-      break;
-    case 4:
-      sprintf (line, "Thu@%02d:%02d:%02d", gmt[0].tm_hour, gmt[0].tm_min, gmt[0].tm_sec); 
-      break;
-    case 5:
-      sprintf (line, "Fri@%02d:%02d:%02d", gmt[0].tm_hour, gmt[0].tm_min, gmt[0].tm_sec); 
-      break;
-    case 6:
-      sprintf (line, "Sat@%02d:%02d:%02d", gmt[0].tm_hour, gmt[0].tm_min, gmt[0].tm_sec); 
-      break;
-  }
-  return (line);
-}
-
-int hh_hm (double hh, int *hr, double *mn) {
-
-  int flag;
-
-  flag = SIGN(hh);
-  hh = fabs (hh);
-
-  *mn = 60.0*(hh - (int)hh);
-  *hr = (int) hh;
-  *hr *= flag;
-  return (TRUE);
-}
-
-char *meade_deg_to_str (double deg) {
-
-  int hr;
-  double mn;
-  char *line;
-
-  ALLOCATE (line, char, 16);
-
-  hh_hm (deg, &hr, &mn);
-
-  sprintf (line, "%03d:%04.1f", abs(hr), mn);
-  return (line);
-}
-
-char *meade_ra_to_str (double deg) {
-
-  int hr;
-  double mn;
-  char *line;
-
-  ALLOCATE (line, char, 16);
-
-  hh_hm (deg/15.0, &hr, &mn);
-
-  sprintf (line, "%02d:%04.1f", abs(hr), mn);
-  return (line);
-}
-
-char *meade_dec_to_str (double deg) {
-
-  int hr;
-  double mn;
-  char *line;
-
-  ALLOCATE (line, char, 16);
-
-  hh_hm (deg, &hr, &mn);
-
-  if (deg < 0) {
-    sprintf (line, "-%02d:%04.1f", abs(hr), mn);
-  } else {
-    sprintf (line, "+%02d:%04.1f", hr, mn);
-  }      
-  return (line);
-}
-
-/* convert UNIX time to a value referenced to the TimeReference in the given unit */
-double TimeValue (time_t time, time_t TimeReference, int TimeFormat) {
-
-  double value, dt;
-
-  dt = (time > TimeReference) ? (time - TimeReference) : -1 * (double)(TimeReference - time);
-  switch (TimeFormat) {
-  case TIME_JD:
-    value = time / 86400.0 + 2440587.5;
-    break;
-  case TIME_MJD:
-    value = time / 86400.0 + 40587.0;
-    break;
-  case TIME_DAYS:
-    value = dt / 86400.0;
-    break;
-  case TIME_HOURS:
-    value = dt / 3600.0;
-    break;
-  case TIME_MINUTES:
-    value = dt / 60.0;
-    break;
-  case TIME_SECONDS:
-  default:
-    value = dt;
-    break;
-  }
-  return (value);
-}
-  
-/* convert time value referenced to the TimeReference in the given unit to UNIX time */
-time_t TimeRef (double value, time_t TimeReference, int TimeFormat) {
-
-  int dt;
-  time_t time;
-
-  switch (TimeFormat) {
-  case TIME_JD:
-    time = (value -  2440587.5) * 86400.0;
-    return (time);
-    break;
-  case TIME_MJD:
-    time = (value -  40587.0) * 86400.0;
-    return (time);
-    break;
-  case TIME_DAYS:
-    dt = value * 86400.0;
-    break;
-  case TIME_HOURS:
-    dt = value * 3600.0;
-    break;
-  case TIME_MINUTES:
-    dt = value * 60.0;
-    break;
-  case TIME_SECONDS:
-  default:
-    dt = value;
-    break;
-  }
-
-  time = TimeReference + dt;
-  return (time);
-}
-
-/* times may be in forms as:
- * 20040200450s (N seconds since 1970.0)
- * 2440900.232j (julian date)
- * 99/02/23,03:22:18 (date string)
- * (separators may be anything except space, +, -)
- * 99:02:15:12:23:30
- * 99:02:15:12h23m30s
- */
-
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/initialize.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/initialize.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/initialize.c	(revision 34041)
@@ -21,11 +21,4 @@
 }
 
-void initialize_setphot (int argc, char **argv) {
-
-  /* are these set correctly? */
-  ConfigInit (&argc, argv);
-  args_setphot (argc, argv);
-}
-
 void initialize_setfwhm (int argc, char **argv) {
 
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/initialize_setphot.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/initialize_setphot.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/initialize_setphot.c	(revision 34041)
@@ -0,0 +1,166 @@
+# include "setphot.h"
+
+static char *ZPT_OFFSETS_FILTERS = NULL;
+static char *ZPT_OFFSETS_VALUES = NULL;
+
+void initialize_setphot (int argc, char **argv) {
+
+  struct stat statbuffer;
+
+  char CatdirPhotcodeFile[256];
+
+  /* are these set correctly? */
+  ConfigInit (&argc, argv);
+  args_setphot (argc, argv);
+
+  if (stat (CATDIR, &statbuffer)) {
+    fprintf (stderr, "error accessing dvo database directory '%s'\n", CATDIR);
+    exit (1);
+  }
+
+  // load the photcode table
+  sprintf (CatdirPhotcodeFile, "%s/Photcodes.dat", CATDIR);
+  if (!LoadPhotcodes (CatdirPhotcodeFile, NULL, TRUE)) {
+    fprintf (stderr, "error loading photcode table %s\n", CatdirPhotcodeFile);
+    exit (1);
+  }
+
+  // if we have a zpt offset list, parse it here
+  parse_zpt_offsets (ZPT_OFFSETS_FILTERS, ZPT_OFFSETS_VALUES);
+}
+
+int args_setphot (int argc, char **argv) {
+
+  int N;
+
+  VERBOSE = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    VERBOSE = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  IMAGES_ONLY = FALSE;
+  if ((N = get_argument (argc, argv, "-images-only"))) {
+    IMAGES_ONLY = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  RESET = FALSE;
+  if ((N = get_argument (argc, argv, "-reset"))) {
+    RESET = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  PARALLEL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel"))) {
+    PARALLEL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  // this is a test mode : rather than launching the remote jobs and waiting for completion,
+  // setphot will simply list the remote command and wait for the user to signal completion
+  PARALLEL_MANUAL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel-manual"))) {
+    PARALLEL = TRUE; // -parallel-manual implies -parallel
+    PARALLEL_MANUAL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+  // this is a test mode : rather than launching the setphot_client jobs remotely, they are 
+  // run in serial via 'system'
+  PARALLEL_SERIAL = FALSE;
+  if ((N = get_argument (argc, argv, "-parallel-serial"))) {
+    if (PARALLEL_MANUAL) {
+      fprintf (stderr, "ERROR: cannot mix -parallel-manual and -parallel-serial\n");
+      exit (1);
+    }
+    PARALLEL = TRUE; // -parallel-serial implies -parallel
+    PARALLEL_SERIAL = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  UBERCAL = FALSE;
+  if ((N = get_argument (argc, argv, "-ubercal"))) {
+    remove_argument (N, &argc, argv);
+    UBERCAL = TRUE;
+  }
+
+  NO_METADATA = FALSE;
+  if ((N = get_argument (argc, argv, "-no-metadata"))) {
+    remove_argument (N, &argc, argv);
+    NO_METADATA = TRUE;
+  }
+
+  UPDATE = FALSE;
+  if ((N = get_argument (argc, argv, "-update"))) {
+    remove_argument (N, &argc, argv);
+    UPDATE = TRUE;
+  }
+
+  // -zpt-offsets code[,code,etc] value[,value,etc]
+  // eg: -zpt-offsets g,r,i 0.01,0.02,-0.02
+  if ((N = get_argument (argc, argv, "-zpt-offsets"))) {
+    remove_argument (N, &argc, argv);
+    ZPT_OFFSETS_FILTERS = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+    ZPT_OFFSETS_VALUES = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  
+
+  if (argc != 2) {
+    fprintf (stderr, "USAGE: setphot (zptfile) [options]\n");
+    fprintf (stderr, "  options:\n");
+    fprintf (stderr, "    -v : verbose mode\n");
+    fprintf (stderr, "    -ubercal : interpret zpt file as a GPC1 ubercal FITS table\n");
+    fprintf (stderr, "    -no-metadata : assume the ubercal FITS table has the layout defined by Eddie Schlafly in Dec 2011\n");
+    fprintf (stderr, "    -update : actually write results to detections tables\n");
+    fprintf (stderr, "    Note that the dvo db can be specified by -D CATDIR (directory)\n");
+    exit (2);
+  } 
+
+  return (TRUE);
+}
+
+void GetConfig (char *config, char *field, char *format, int N, void *ptr);
+
+void ConfigInit (int *argc, char **argv) {
+
+  double ZERO_POINT;
+  char  *config, *file;
+
+  /*** load configuration info ***/
+  file = SelectConfigFile (argc, argv, "ptolemy");
+  config = LoadConfigFile (file);
+  if (config == (char *) NULL) {
+    fprintf (stderr, "ERROR: can't find configuration file %s\n", file);
+    if (file != (char *) NULL) free (file);
+    exit (0);
+  }
+  if (VERBOSE) fprintf (stderr, "loaded config file: %s\n", file);
+
+  // force CATDIR to be absolute (so parallel mode will work)
+  char *tmpcatdir = NULL;
+  ALLOCATE (tmpcatdir, char, DVO_MAX_PATH);
+  GetConfig (config, "CATDIR",                 "%s",  0, tmpcatdir);
+  CATDIR = abspath (tmpcatdir, DVO_MAX_PATH);
+  free (tmpcatdir);
+
+  sprintf (ImageCat, "%s/Images.dat", CATDIR);
+
+  ScanConfig (config, "ZERO_PT",                "%lf", 0, &ZERO_POINT);
+  SetZeroPoint (ZERO_POINT);
+
+  free (config);
+  free (file);
+}
+
+void GetConfig (char *config, char *field, char *format, int N, void *ptr) {
+
+  char *status;
+
+  status = ScanConfig (config, field, format, N, ptr);
+  if (status == NULL) {
+    fprintf (stderr, "error in config, cannot find %s\n", field);
+    exit (1);
+  }
+  return;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/initialize_setphot_client.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/initialize_setphot_client.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/initialize_setphot_client.c	(revision 34041)
@@ -0,0 +1,95 @@
+# include "setphot.h"
+
+void initialize_setphot_client (int argc, char **argv) {
+
+  struct stat statbuffer;
+
+  char CatdirPhotcodeFile[256];
+
+  SetZeroPoint (25.0); // XXX is this needed?
+  args_setphot_client (argc, argv);
+
+  if (stat (CATDIR, &statbuffer)) {
+    fprintf (stderr, "error accessing dvo database directory '%s'\n", CATDIR);
+    exit (1);
+  }
+
+  // load the photcode table : XXX needed?
+  sprintf (CatdirPhotcodeFile, "%s/Photcodes.dat", CATDIR);
+  if (!LoadPhotcodes (CatdirPhotcodeFile, NULL, TRUE)) {
+    fprintf (stderr, "error loading photcode table %s\n", CatdirPhotcodeFile);
+    exit (1);
+  }
+}
+
+int args_setphot_client (int argc, char **argv) {
+
+  int N;
+
+  VERBOSE = FALSE;
+  if ((N = get_argument (argc, argv, "-v"))) {
+    VERBOSE = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  RESET = FALSE;
+  if ((N = get_argument (argc, argv, "-reset"))) {
+    RESET = TRUE;
+    remove_argument (N, &argc, argv);
+  }
+
+  UBERCAL = FALSE;
+  if ((N = get_argument (argc, argv, "-ubercal"))) {
+    remove_argument (N, &argc, argv);
+    UBERCAL = TRUE;
+  }
+
+  UPDATE = FALSE;
+  if ((N = get_argument (argc, argv, "-update"))) {
+    remove_argument (N, &argc, argv);
+    UPDATE = TRUE;
+  }
+
+  HOST_ID = 0;
+  if ((N = get_argument (argc, argv, "-hostID"))) {
+    remove_argument (N, &argc, argv);
+    HOST_ID = atoi (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!HOST_ID) goto usage;
+
+  HOSTDIR = NULL;
+  if ((N = get_argument (argc, argv, "-hostdir"))) {
+    remove_argument (N, &argc, argv);
+    HOSTDIR = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!HOSTDIR) goto usage;
+
+  if ((N = get_argument (argc, argv, "-catdir"))) {
+    remove_argument (N, &argc, argv);
+    CATDIR = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!CATDIR) goto usage;
+
+  IMAGES = NULL;
+  if ((N = get_argument (argc, argv, "-images"))) {
+    remove_argument (N, &argc, argv);
+    IMAGES = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+  if (!IMAGES) goto usage;
+
+  if (argc != 1) goto usage;
+  return (TRUE);
+
+usage:
+  fprintf (stderr, "USAGE: setphot_client -hostID (hostID) -catdir (catdir) -hostdir (hostdir) -images (images) [options]\n");
+  fprintf (stderr, "  options:\n");
+  fprintf (stderr, "    -v : verbose mode\n");
+  fprintf (stderr, "    -ubercal : interpret zpt file as a GPC1 ubercal FITS table\n");
+  fprintf (stderr, "    -update : actually write results to detections tables\n");
+  exit (2);
+}
+
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/load_images.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/load_images.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/load_images.c	(revision 34041)
@@ -11,5 +11,5 @@
 }
 
-Image *load_images_setphot (FITS_DB *db, off_t *Nimage) {
+Image *load_images_setfwhm (FITS_DB *db, off_t *Nimage) {
 
   Image *image;
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/load_images_setphot.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/load_images_setphot.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/load_images_setphot.c	(revision 34041)
@@ -0,0 +1,22 @@
+# include "setphot.h"
+
+Image *load_images_setphot (FITS_DB *db, off_t *Nimage) {
+
+  Image *image;
+
+  if (VERBOSE) fprintf (stderr, "finding images\n");
+
+  /* read entire db table */
+  if (!dvo_image_load (db, VERBOSE, FALSE)) Shutdown ("can't read image catalog %s", db[0].filename);
+
+  /* use a vtable to keep the images to be calibrated */
+  image = gfits_table_get_Image (&db[0].ftable, Nimage, &db[0].swapped);
+  if (!image) {
+      fprintf (stderr, "ERROR: failed to read images\n");
+      exit (2);
+  }
+
+  fprintf (stderr, "loaded "OFF_T_FMT" images\n", *Nimage);
+
+  return (image);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/load_zpt_table.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/load_zpt_table.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/load_zpt_table.c	(revision 34041)
@@ -1,3 +1,3 @@
-# include "uniphot.h"
+# include "setphot.h"
 
 ZptTable *load_zpt_table (char *filename, int *nzpts) {
@@ -41,2 +41,411 @@
   return zpts;
 }
+
+/* Slightly more generic loader than the ubercal version.  Still assumes Nfilters x Nseasons
+   the input file must contain the following:
+   PHU Header : NFILTER, NSEASON, NCHIP_X, NCHIP_Y, NCELL_X, NCELL_Y, TS0_nnnn (season nnnn start mjd), TS1_nnnn (season nnnn end mjd)
+   
+   NSEASON * 2 extensions with
+   TABLE : mjd, zpt; Header: FILTER
+   IMAGE : 1D array of flat offsets
+*/
+
+ZptTable *load_zpt_ubercal(char *filename, int *nzpts, FlatCorrectionTable *flatcorrTable) {
+
+  int i, nfilter, nseason, ix, iy, ixc, iyc, Ncol;
+  off_t Nrow;
+  char type[16], filter[80];
+  int Nzpts, NZPTS;
+  ZptTable *zpts;
+  Header header;
+  Header theader;
+  Matrix matrix;
+  FTable ftable;
+
+  // parameters describing the flat-field correction
+  int NSEASON;
+  int NFILTER;
+  int NCHIP_X;
+  int NCHIP_Y;
+  int NCELL_X;
+  int NCELL_Y;
+  int CHIP_DX;
+  int CHIP_DY;
+
+  *nzpts = 0;
+
+  FILE *f = fopen (filename, "r");
+  if (!f) {
+    fprintf (stderr, "ERROR: cannot open zpt table file %s\n", filename);
+    exit (1);
+  }
+
+  /* load in PHU segment (ignore) */
+  if (!gfits_fread_header (f, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read Flat Correction header\n");
+    fclose (f);
+    return (NULL);
+  }
+  if (!gfits_fread_matrix (f, &matrix, &header)) {
+    if (VERBOSE) fprintf (stderr, "can't read Flat Correction matrix\n");
+    gfits_free_header (&header);
+    fclose (f);
+    return (NULL);
+  }
+
+  Nzpts = 0;
+  NZPTS = 0;
+  ALLOCATE (zpts, ZptTable, NZPTS);
+
+  // this function would be better if we read the list of filters, seasons, and the dimensions from the header
+  // for current testing, make fake smfs that correspond to specific chips, filter, and mjd ranges?
+
+  // the simple files from Eddie have no internal metadata describing the corrections,
+  // so they must be manually encoded
+
+  // hard-wired values which describe the ubercal analysis
+  if (NO_METADATA) {
+    NFILTER = 5;
+    NSEASON = 4;
+    NCHIP_X = 8;
+    NCHIP_Y = 8;
+    NCELL_X = 2;
+    NCELL_Y = 2;
+    CHIP_DX = 2*2424;  // != 4880
+    CHIP_DY = 2*2430;  // != 4864
+    // Note that Eddie has identified the center of the boundary between cells xy3n and
+    // xy4n and used that to split the chip.  I am setting CHIP_DX,DY to force the same split
+  } else {
+    if (!gfits_scan (&header, "NSEASON", "%d", 1, &NSEASON)) { 
+      fprintf (stderr, "cannot find NSEASON in header of %s\n", filename);
+      fclose (f);
+      return NULL;
+    }
+    if (!gfits_scan (&header, "NFILTER", "%d", 1, &NFILTER)) { 
+      fprintf (stderr, "cannot find NFILTER in header of %s\n", filename);
+      fclose (f);
+      return NULL;
+    }
+    if (!gfits_scan (&header, "NCHIP_X", "%d", 1, &NCHIP_X)) { 
+      fprintf (stderr, "cannot find NCHIP_X in header of %s\n", filename);
+      fclose (f);
+      return NULL;
+    }
+    if (!gfits_scan (&header, "NCHIP_Y", "%d", 1, &NCHIP_Y)) { 
+      fprintf (stderr, "cannot find NCHIP_Y in header of %s\n", filename);
+      fclose (f);
+      return NULL;
+    }
+    if (!gfits_scan (&header, "NCELL_X", "%d", 1, &NCELL_X)) { 
+      fprintf (stderr, "cannot find NCELL_X in header of %s\n", filename);
+      fclose (f);
+      return NULL;
+    }
+    if (!gfits_scan (&header, "NCELL_Y", "%d", 1, &NCELL_Y)) { 
+      fprintf (stderr, "cannot find NCELL_Y in header of %s\n", filename);
+      fclose (f);
+      return NULL;
+    }
+    if (!gfits_scan (&header, "CHIP_DX", "%d", 1, &CHIP_DX)) { 
+      fprintf (stderr, "cannot find CHIP_DX in header of %s\n", filename);
+      fclose (f);
+      return NULL;
+    }
+    if (!gfits_scan (&header, "CHIP_DY", "%d", 1, &CHIP_DY)) { 
+      fprintf (stderr, "cannot find CHIP_DY in header of %s\n", filename);
+      fclose (f);
+      return NULL;
+    }
+  }
+
+  flatcorrTable->Nseason = NSEASON;
+  ALLOCATE (flatcorrTable->tstart, e_time, NSEASON);
+  ALLOCATE (flatcorrTable->tstop,  e_time, NSEASON);
+
+  // ubercal hard-coded values
+  char filters_uc[5][3] = {"g", "r", "i", "z", "y"};
+  double tstart_uc[] = {55000.0, 55296.0, 55327.0, 55662.0};
+  double tstop_uc[]  = {55296.0, 55327.0, 55662.0, 60000.0};
+
+  double mjdstart, mjdstop;
+  for (i = 0; i < NSEASON; i++) {
+    if (NO_METADATA) {
+      mjdstart = tstart_uc[i];
+      mjdstop  = tstop_uc[i];
+  } else {
+      char name[9];
+      snprintf (name, 9, "TS0_%04d", i);
+      if (!gfits_scan (&header, name, "%lf", 1, &mjdstart)) { 
+	fprintf (stderr, "cannot find %s in header of %s\n", name, filename);
+	fclose (f);
+	return NULL;
+      }
+
+      snprintf (name, 9, "TS1_%04d", i);
+      if (!gfits_scan (&header, name, "%lf", 1, &mjdstop)) { 
+	fprintf (stderr, "cannot find %s in header of %s\n", name, filename);
+	fclose (f);
+	return NULL;
+      }
+    }
+    flatcorrTable->tstart[i] = ohana_mjd_to_sec(mjdstart);
+    flatcorrTable->tstop[i]  = ohana_mjd_to_sec(mjdstop);
+  }
+
+  // we have 5 filters, and 4 flat-field correction sets for each
+  flatcorrTable->Ncorr = NFILTER*NSEASON*NCHIP_X*NCHIP_Y*NCELL_X*NCELL_Y;
+  flatcorrTable->Nimage = NFILTER*NSEASON*NCHIP_X*NCHIP_Y;
+
+  ALLOCATE (flatcorrTable->corr, FlatCorrection, flatcorrTable->Ncorr);
+  ALLOCATE (flatcorrTable->image, FlatCorrectionImage, flatcorrTable->Nimage);
+  memset (flatcorrTable->corr, 0, flatcorrTable->Ncorr*sizeof(FlatCorrection));
+
+  int corrID = 1;
+  int Nimage = 0;
+  ftable.header = &theader;
+  for (nfilter = 0; nfilter < NFILTER; nfilter++) {
+    // *** load the ZERO POINT table ***
+
+    // load data for this header 
+    if (!gfits_load_header (f, &theader)) return (NULL);
+
+    // read the fits table bytes
+    if (!gfits_fread_ftable_data (f, &ftable, FALSE)) return (NULL);
+  
+    // skip over remaining bytes in data segment
+    fseeko (f, ftable.datasize - ftable.validsize, SEEK_CUR);
+
+    // need to create and assign to flat-field correction
+    double *mjd = gfits_get_bintable_column_data (&theader, &ftable, "mjd_obs", type, &Nrow, &Ncol);
+    assert (!strcmp(type, "double"));
+
+    double *zp = gfits_get_bintable_column_data (&theader, &ftable, "zp", type, &Nrow, &Ncol);
+    assert (!strcmp(type, "double"));
+      
+    // float *zperr = gfits_get_bintable_column_data (&theader, &ftable, "resid", type, &Nrow, &Ncol);
+    // assert (!strcmp(type, "float"));
+      
+    NZPTS += Nrow;
+    REALLOCATE (zpts, ZptTable, NZPTS);
+    for (i = 0; i < Nrow; i++) {
+      zpts[i+Nzpts].time = ohana_mjd_to_sec(mjd[i]);
+      zpts[i+Nzpts].zpt = zp[i];
+      zpts[i+Nzpts].zpt_err = 0.0;
+      zpts[i+Nzpts].found = FALSE;
+    }
+    Nzpts += Nrow;
+
+    // *** load the flat-field correction image ***
+
+    // the image contains the flat-field corrections for a specific filter
+
+    // load data for this header 
+    if (!gfits_load_header (f, &header)) return (NULL);
+
+    if (NO_METADATA) {
+      strcpy (filter, filters_uc[nfilter]);
+    } else {
+      if (!gfits_scan (&header, "FILTER", "%s", 1, filter)) { 
+	fprintf (stderr, "cannot find FILTER in header of %s\n", filename);
+	fclose (f);
+	return NULL;
+      }
+    }
+    
+    // read the fits table bytes
+    double *offset64 = NULL;
+    float *offset32 = NULL;
+    int use32 = TRUE;
+    
+    if (!gfits_fread_matrix (f, &matrix, &header)) return (NULL);
+    switch (header.bitpix) {
+      case -32: // float
+	offset32 = (float *) matrix.buffer;
+	use32 = TRUE;
+	break;
+      case -64: // double
+	offset64 = (double *) matrix.buffer;
+	use32 = FALSE;
+	break;
+      default:
+	fprintf (stderr, "invalid bitpix for flat-field correction image: %d\n", header.bitpix);
+	exit (2);
+    }
+
+    // XXX the initial hacked-together table from Eddie is missing the last 2 elements.  they should be zero
+    if (NO_METADATA) {
+      matrix.Naxis[0] += 2;
+      REALLOCATE (offset64, double, matrix.Naxis[0]);
+      matrix.buffer = (char *) offset64;
+    }
+
+    for (nseason = 0; nseason < NSEASON; nseason++) { // seasons
+      for (iy = 0; iy < NCHIP_Y; iy++) { // y-chip
+	for (ix = 0; ix < NCHIP_X; ix++) { // x-chip
+
+	  // photcode name
+	  char photname[64];
+	  snprintf (photname, 64, "GPC1.%s.XY%d%d", filter, ix, iy);
+	  // note that the XY00, XY07, etc, chips will have photcode values of 0
+
+	  flatcorrTable->image[Nimage].photcode = GetPhotcodeCodebyName(photname);
+	  flatcorrTable->image[Nimage].Nx = NCELL_X;
+	  flatcorrTable->image[Nimage].Ny = NCELL_Y;
+	  flatcorrTable->image[Nimage].ID = corrID;
+	  flatcorrTable->image[Nimage].DX = CHIP_DX;
+	  flatcorrTable->image[Nimage].DY = CHIP_DY;
+	  flatcorrTable->image[Nimage].tstart = flatcorrTable->tstart[nseason];
+	  flatcorrTable->image[Nimage].tstop  = flatcorrTable->tstop[nseason];
+	  
+	  int seq_full = -1; // sequence number within the full table (all filters concatenated together)
+	  int seq_filt = -1; // sequence number for just this filter
+
+	  // XXX we should have a NCHIP_X * NCHIP_Y array of x and y parity values
+
+	  // This enforces a 180 chip rotation for XY3n - XY7n & is only known to be valid for GPC1 (the XYnn names as well)
+	  for (iyc = 0; iyc < NCELL_Y; iyc++) {
+	    for (ixc = 0; ixc < NCELL_X; ixc++) {
+	      if (ix < 4) {
+		// chips ix < 4 should be flipped
+		seq_full = nfilter*NSEASON*NCHIP_X*NCHIP_Y*NCELL_X*NCELL_Y + nseason*NCHIP_X*NCHIP_Y*NCELL_X*NCELL_Y + (iy*NCELL_Y + NCELL_Y - 1 - iyc)*NCHIP_X*NCELL_X + (ix*NCELL_X + NCELL_X - 1 - ixc);
+		seq_filt =                                                   nseason*NCHIP_X*NCHIP_Y*NCELL_X*NCELL_Y + (iy*NCELL_Y + NCELL_Y - 1 - iyc)*NCHIP_X*NCELL_X + (ix*NCELL_X + NCELL_X - 1 - ixc);
+		// = .... + y_parity*iyc - (y_parity - 1)*(NCELL_Y - 1) / 2
+	      } else {
+		seq_full = nfilter*NSEASON*NCHIP_X*NCHIP_Y*NCELL_X*NCELL_Y + nseason*NCHIP_X*NCHIP_Y*NCELL_X*NCELL_Y + (iy*NCELL_Y + iyc)*NCHIP_X*NCELL_X + (ix*NCELL_X + ixc);
+		seq_filt =                                                   nseason*NCHIP_X*NCHIP_Y*NCELL_X*NCELL_Y + (iy*NCELL_Y + iyc)*NCHIP_X*NCELL_X + (ix*NCELL_X + ixc);
+	      }
+	      assert (seq_full > -1);
+	      assert (seq_filt > -1);
+	      assert (seq_full < flatcorrTable->Ncorr);
+	      if (matrix.Naxes == 1) {
+		assert (seq_filt < matrix.Naxis[0]);
+	      } 
+	      if (matrix.Naxes == 2) {
+		assert (seq_filt < matrix.Naxis[0]*matrix.Naxis[1]);
+	      }
+	      assert (!flatcorrTable->corr[seq_full].ID);
+	      flatcorrTable->corr[seq_full].x = ixc;
+	      flatcorrTable->corr[seq_full].y = iyc;
+	      if (use32) {
+		flatcorrTable->corr[seq_full].offset = offset32[seq_filt];
+	      } else {
+		flatcorrTable->corr[seq_full].offset = offset64[seq_filt];
+	      }
+	      flatcorrTable->corr[seq_full].ID = corrID;
+	    }
+	  }
+	  corrID ++;
+	  Nimage ++;
+	}
+      }
+    }	      
+  }
+
+  /*** convert from corr,image format to offsets ***/
+  FlatCorrectionInternal (flatcorrTable);
+
+  fprintf (stderr, "loaded %d zero points\n", Nzpts);
+
+  *nzpts = Nzpts;
+  return zpts;
+}
+
+static short maxCode = 0;
+static short *zpt_codeval = NULL;
+static float *zpt_offsets = NULL;
+static short *zpt_index = NULL;
+
+int parse_zpt_offsets (char *ZPT_OFFSET_FILTERS, char *ZPT_OFFSET_VALUES) {
+
+  if (!ZPT_OFFSET_FILTERS) return TRUE;
+  assert (ZPT_OFFSET_FILTERS);
+  assert (ZPT_OFFSET_VALUES);
+
+  char *filters = strcreate(ZPT_OFFSET_FILTERS);
+  char *values = strcreate(ZPT_OFFSET_VALUES);
+
+  char *p1 = filters;
+  char *p2 = values;
+
+  char *filter = NULL;
+  char *value = NULL;
+
+  char *s1 = NULL;
+  char *s2 = NULL;
+
+  // save an array of the zero point offsets and their photcodes
+  int Ncode = 0;
+  int NCODE = 8;
+  ALLOCATE (zpt_codeval, short, NCODE);
+  ALLOCATE (zpt_offsets, float, NCODE);
+
+  while (1) {
+    filter = strtok_r (p1, ",", &s1);
+    if (!filter) break;
+
+    value  = strtok_r (p2, ",", &s2);
+    if (!value) {
+      fprintf (stderr, "ERROR: mismatch between list of photcodes and list of offsets\n");
+      exit (1);
+    }
+
+    // do something here
+    PhotCode *code = GetPhotcodebyName (filter);
+    if (!code) {
+      fprintf (stderr, "ERROR: unknown photcode %s\n", filter);
+      exit (1);
+    }
+    if (code->type != PHOT_SEC) {
+      fprintf (stderr, "ERROR: photcode %s is not an average (SEC) type\n", filter);
+      exit (1);
+    }
+
+    zpt_codeval[Ncode] = code->code;
+    zpt_offsets[Ncode] = atof(value);
+    Ncode ++;
+
+    if (Ncode >= NCODE) {
+      NCODE += 8;
+      REALLOCATE (zpt_codeval, short, NCODE);
+      REALLOCATE (zpt_offsets, float, NCODE);
+    }
+    
+    maxCode = MAX(code->code, maxCode);
+
+    p1 = NULL;
+    p2 = NULL;
+  }
+    
+  // generate an index to the zpt offsets by the photcode
+  ALLOCATE (zpt_index, short, maxCode + 1);
+
+  int i;
+  for (i = 0; i < maxCode + 1; i++) {
+    zpt_index[i] = -1;
+  }
+
+  for (i = 0; i < Ncode; i++) {
+    short seq = zpt_codeval[i];
+    if (zpt_index[seq] != -1) {
+      fprintf (stderr, "duplicate photcode in -zpt-offset list\n");
+      exit (2);
+    }
+    zpt_index[seq] = i;
+  }
+  return TRUE;
+}
+
+float apply_zpt_offset (short code) {
+
+  if (!zpt_offsets) return 0.0;
+
+  // code is a primary photcode (but may be out of range, in which case no correction is supplied)
+  if (code <= 0) return 0.0;
+  if (code > maxCode) return 0.0;
+
+  short index = zpt_index[code];
+  if (index == -1) return 0.0;
+
+  float offset = zpt_offsets[index];
+  return offset;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/match_flatcorr_to_images.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/match_flatcorr_to_images.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/match_flatcorr_to_images.c	(revision 34041)
@@ -0,0 +1,62 @@
+# include "setphot.h"
+
+// the date/time of the image is used to find the 'season'
+// the photcode is used to find the actual flat correction
+
+int match_flatcorr_to_images (Image *image, off_t Nimage, FlatCorrectionTable *flatcorrTable) {
+
+  int i, j;
+
+  // make 4 lookup tables for the photcodes (one for each season)
+
+  short **index;
+
+  short maxCode = 0;
+  for (i = 0; i < flatcorrTable->Nimage; i++) {
+    maxCode = MAX (maxCode, flatcorrTable->image[i].photcode);
+  }
+  maxCode ++; // we want the outer bound, not the last value
+
+  ALLOCATE (index, short *, flatcorrTable->Nseason);
+  for (i = 0; i < flatcorrTable->Nseason; i++) {
+      ALLOCATE (index[i], short, maxCode);
+      for (j = 0; j < maxCode; j++) {
+	index[i][j] = -1;
+      }
+  }
+
+  for (i = 0; i < flatcorrTable->Nimage; i++) {
+    // the flat-field correction is defined for non-existent images (eg, XY00)
+    // these have photcode == 0, so skip them
+    if (!flatcorrTable->image[i].photcode) continue;
+
+    // which season?
+    for (j = 0; j < flatcorrTable->Nseason; j++) {
+      if (flatcorrTable->image[i].tstart == flatcorrTable->tstart[j]) {
+	assert (index[j][flatcorrTable->image[i].photcode] == -1);
+	index[j][flatcorrTable->image[i].photcode] = i;
+	break;
+      }
+    }
+  }
+  
+  for (i = 0; i < Nimage; i++) {
+    if (!image[i].photcode) continue; // skip PHU images
+
+    int found = FALSE;
+    for (j = 0; !found && (j < flatcorrTable->Nseason); j++) {
+      if (image[i].tzero < flatcorrTable->tstart[j]) continue;
+      if (image[i].tzero > flatcorrTable->tstop[j]) continue;
+
+      int seq = index[j][image[i].photcode];
+      if (seq == -1) break;
+
+      image[i].photom_map_id = flatcorrTable->image[seq].ID;
+      found = TRUE;
+    }
+    if (!found) {
+      fprintf (stderr, "image does not match flatcorr Table ranges: %s\n", image[i].name);
+    }
+  }
+  return TRUE;
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/match_zpts_to_images.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/match_zpts_to_images.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/match_zpts_to_images.c	(revision 34041)
@@ -1,3 +1,3 @@
-# include "uniphot.h"
+# include "setphot.h"
 
 /* sort a coordinate pair (X,Y) and the associated index (S) */
@@ -39,9 +39,25 @@
   sort_zpts_by_time (zpts, Nzpts);
 
+  if (RESET) {
+    for (i = 0; i < Nimage; i++) {
+      image[i].Mcal = 0.0;
+      image[i].dMcal = NAN;
+      image[i].flags &= ~ID_IMAGE_PHOTOM_NOCAL; // clear the NOCAL flag
+      if (UBERCAL) {
+	image[i].flags &= ~ID_IMAGE_PHOTOM_UBERCAL; // clear the UBERCAL flag
+      }
+    }
+  }
+
   NImatch = 0; // matched images
   for (i = Nz = 0; (i < Nimage) && (Nz < Nzpts); ) {
 
-    if (i % 1000 == 0) fprintf (stderr, ".");
-    if (Nz % 100 == 0) fprintf (stderr, "!");
+    // if (i % 1000 == 0) fprintf (stderr, ".");
+    // if (Nz % 100 == 0) fprintf (stderr, "!");
+
+    if (!isfinite(zpts[Nz].zpt)) {
+      Nz++;
+      continue;
+    }
 
     Ni = index[i];
@@ -69,7 +85,24 @@
 
     // we have a match: set zpt and record the match
-    image[Ni].Mcal = SCALE*code[0].C - zpts[Nz].zpt;
+    // is the zero point supplied nominally corrected or not?
+    // UBERCAL includes 2.5log(exptime) + K*airmass in the zero point
+    if (UBERCAL) {
+      image[Ni].Mcal = SCALE*code[0].C - zpts[Nz].zpt + 2.5*log10(image[Ni].exptime) + code[0].K*(image[Ni].secz - 1.000);
+      myAssert (isfinite(image[Ni].Mcal), "oops, ubercal made a nan image");
+    } else {
+      image[Ni].Mcal = SCALE*code[0].C - zpts[Nz].zpt;
+    }
+
+    // if we have defined zero point offsets, then apply them here
+    float offset = apply_zpt_offset (code[0].equiv);
+    assert (isfinite(offset));
+    image[Ni].Mcal += offset;
+
     image[Ni].dMcal = zpts[Nz].zpt_err;
     image[Ni].flags &= ~ID_IMAGE_PHOTOM_NOCAL; // clear the NOCAL flag
+    // image[Ni].flags |=  ID_IMAGE_PHOTOM_EXTERN; XXX do we want some flag like this?
+    if (UBERCAL) {
+      image[Ni].flags |=  ID_IMAGE_PHOTOM_UBERCAL;
+    }
     zpts[Nz].found = TRUE;
     NImatch ++;
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/setfwhm.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/setfwhm.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/setfwhm.c	(revision 34041)
@@ -20,5 +20,5 @@
 
   // load images
-  image  = load_images_setphot (&db, &Nimage);
+  image  = load_images_setfwhm (&db, &Nimage);
   if (!UPDATE) dvo_image_unlock (&db); 
   
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/setphot.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/setphot.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/setphot.c	(revision 34041)
@@ -1,3 +1,3 @@
-# include "uniphot.h"
+# include "setphot.h"
 
 int main (int argc, char **argv) {
@@ -8,4 +8,5 @@
   ZptTable *zpts;
   Image *image;
+  FlatCorrectionTable flatcorrTable;
 
   /* get configuration info, args, lockfile */
@@ -17,5 +18,17 @@
   if (db.dbstate == LCK_EMPTY) Shutdown ("ERROR: No images in catalog %s (1)", db.filename);
 
-  zpts = load_zpt_table (argv[1], &Nzpts);
+  if (UBERCAL) {
+    zpts = load_zpt_ubercal (argv[1], &Nzpts, &flatcorrTable);
+
+    char flatcorrfile[DVO_MAX_PATH];
+    int size = snprintf (flatcorrfile, DVO_MAX_PATH, "%s/flatcorr.fits", CATDIR);
+    assert (size < DVO_MAX_PATH);
+    FlatCorrectionSave(&flatcorrTable, flatcorrfile);
+    // XXX should this program save any old copy of this file?
+  } else {
+    zpts = load_zpt_table (argv[1], &Nzpts);
+  }
+
+  if (!zpts) Shutdown ("failed to load zero points, or empty table");
 
   // load images 
@@ -25,11 +38,18 @@
   match_zpts_to_images (image, Nimage, zpts, Nzpts);
 
-  update_setphot(image, Nimage);
+  if (UBERCAL) {
+    match_flatcorr_to_images (image, Nimage, &flatcorrTable);
+  } 
 
-  // write image table
+  if (!IMAGES_ONLY) {
+    status = update_dvo_setphot (image, Nimage, &flatcorrTable);
+  }
+
+  // write image table (even if some remote clients failed)
   if (UPDATE) {
     dvo_image_save (&db, VERBOSE);
   }
 
+  if (!status) exit (1);
   exit (0);
 }
@@ -39,10 +59,23 @@
    setphot (zpt_table)
 
- * load text table of zpts, time (photcode?)
- * load images
- * match images to zpts
- * set zpts
- * load catalogs
- * update detection (& averages?)
+   setphot has 2 modes : basic & ubercal
+
+   * outline of basic mode:
+
+   ** load text table of zpts, time (photcode?)
+   ** load images
+   ** match images to zpts
+   ** set zpts
+   ** load catalogs
+   ** update detection (& averages?)
+
+   * outline of ubercal mode:
+
+   ** load fits table of zpts & time + table of flat-field corrections
+   ** load images
+   ** match images to zpts
+   ** set zpts
+   ** load catalogs
+   ** update detection (& averages?)
 
  */
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/setphot_client.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/setphot_client.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/setphot_client.c	(revision 34041)
@@ -0,0 +1,30 @@
+# include "setphot.h"
+
+// setphot_client is run on a remote host and is responsible for updating the catalogs
+// owned by that host.  
+
+// setphot_client -hostname (hostname) -catdir (catdir) -hostdir (hostdir) -images (images)
+// load the SkyTable and HostTable from (catdir) [contains the host responsibilities]
+// load the image data from (images) [contains the zp infomation to apply]
+// loop over tables from SkyTable with my host ID
+// the calling program tells the client which host they are (or host ID?); we do not actually have to run this on the real host
+
+int main (int argc, char **argv) {
+
+  // get configuration info, args, lockfile (set CATDIR, HOST_ID, HOSTDIR, IMAGES)
+  initialize_setphot_client (argc, argv);
+
+  // load the image subset table from the specified location
+  off_t Nimage;
+  ImageSubset *subset = ImageSubsetLoad (IMAGES, &Nimage);
+  Image *image = ImagesFromSubset (subset, Nimage);
+
+  // load the flat-field correction table from CATDIR
+  char flatcorrFile[1024];
+  snprintf (flatcorrFile, 1024, "%s/flatcorr.fits", CATDIR);
+  FlatCorrectionTable *flatcorrTable = FlatCorrectionLoad (flatcorrFile, VERBOSE);
+
+  update_dvo_setphot (image, Nimage, flatcorrTable);
+
+  exit (0);
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/uniphot.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/uniphot.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/uniphot.c	(revision 34041)
@@ -74,5 +74,5 @@
   if (!UPDATE) exit (0);
 
-  update (&db, sgroup, Nsgroup);
+  update_dvo_uniphot (&db, sgroup, Nsgroup);
   dvo_image_unlock (&db); 
 
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update.c	(revision 33597)
+++ 	(revision )
@@ -1,141 +1,0 @@
-# include "uniphot.h"
-# include <glob.h>
-
-void update (FITS_DB *db, Group *sgroup, int Nsgroup) {
-
-  off_t i, Nimage, Nkeep, *keep;
-  int j, status, Nmin;
-  char line[256];
-  glob_t pglob;
-  double Rmin, Rmax, Dmin, Dmax, x, y, radius;
-  Image *image;
-  Catalog catalog;
-  Coords coords;
-
-  image = gfits_table_get_Image (&db[0].ftable, &Nimage, &db[0].swapped);
-  if (!image) {
-      fprintf (stderr, "ERROR: failed to read images\n");
-      exit (2);
-  }
-
-  // create a subset list so we can make a vtable
-  Nkeep = 0;
-  ALLOCATE (keep, off_t, Nimage);
-
-  // identify the images used and clear the NOCAL flags on the rest
-  for (i = 0; i < Nimage; i++) {
-      if (image[i].flags & ID_IMAGE_PHOTOM_NOCAL) {
-	  image[i].flags &= ~ID_IMAGE_PHOTOM_NOCAL;
-	  continue;
-      }
-      keep[Nkeep] = i;
-      Nkeep ++;
-  }
-
-  /* apply calculated space-group offset to image Mcal values */
-  for (i = 0; i < Nsgroup; i++) {
-    for (j = 0; j < sgroup[i].Nimage; j++) {
-      sgroup[i].image[j][0].Mcal -= sgroup[i].M;
-    }
-  }
-
-  // save the rows in the image table which were used in this analysis
-  gfits_vtable_from_ftable (&db[0].ftable, &db[0].vtable, keep, Nkeep);
-
-  // write image table
-  dvo_image_update (db, VERBOSE);
-
-  // XXX need to fix the update for the catalog (or make it optional)
-  return;
-
-  // XXX this process uses the existence of the file to perform the update
-  // XXX convert this to an examination of the SkyTable
-  /** update catalog tables **/
-  pglob.gl_offs = 0;
-  sprintf (line, "%s/*/*.cpt", CATDIR);
-  status = glob (line, 0, NULL, &pglob);
-
-  coords.crpix1 = coords.crpix2 = 0.0;
-  coords.cdelt1 = coords.cdelt2 = 1.0; /* scale is degrees, radius in degrees */
-  coords.pc1_1 = coords.pc2_2 = 1.0;
-  coords.pc1_2 = coords.pc2_1 = 0.0;
-  strcpy (coords.ctype, "RA---TAN");
-  
-  for (i = 0; i < pglob.gl_pathc; i++) {
-    catalog.filename = pglob.gl_pathv[i];
-    catalog.catflags = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
-    catalog.Nsecfilt  = GetPhotcodeNsecfilt ();
-
-    // an error exit status here is a significant error
-    if (!dvo_catalog_open (&catalog, NULL, VERBOSE, "a")) {
-      fprintf (stderr, "ERROR: failure to open/create catalog file %s\n", catalog.filename);
-      exit (2);
-    }
-    if (!catalog.Naves_disk) {
-      dvo_catalog_unlock (&catalog);
-      dvo_catalog_free (&catalog);
-      continue;
-    }
-
-    gfits_scan (&catalog.header, "RA0", "%lf",  1, &Rmin);
-    gfits_scan (&catalog.header, "RA1", "%lf",  1, &Rmax);
-    gfits_scan (&catalog.header, "DEC0", "%lf", 1, &Dmin);
-    gfits_scan (&catalog.header, "DEC1", "%lf", 1, &Dmax);
-
-    Rmin = ohana_normalize_angle (Rmin);
-    Rmax = ohana_normalize_angle (Rmax);
-
-    coords.crval1 = 0.5*(Rmin + Rmax);
-    coords.crval2 = 0.5*(Dmin + Dmax);
-
-    Nmin = 0;
-    Rmin = 1000;
-    /* primitive version: match catalog with closest sgroup */
-    for (j = 0; j < Nsgroup; j++) {
-      if (!RD_to_XY (&x, &y, sgroup[j].v1, sgroup[j].v2, &coords)) continue;
-      radius = hypot (x, y);
-      if ((j == 0) || (radius < Rmin)) {
-	Rmin = radius;
-	Nmin = j;
-      }
-    }
-
-    fprintf (stderr, "catalog: %s sgroup: %d %s %f\n", catalog.filename, Nmin, sgroup[Nmin].label, Rmin);
-    update_dvo_catalog (&catalog, &sgroup[Nmin], (Rmin > 2*RADIUS)); 
-    dvo_catalog_save (&catalog, VERBOSE);
-    dvo_catalog_unlock (&catalog);
-    dvo_catalog_free (&catalog);
-  }
-}      
-
-/* loop over all average 
-
-   if (source equiv photcode)
-
-   loop over sgroups
-
-   if (radius < RADIUS) 
-      
-   average.M (+/-) source.M
-*/
-
-/* loop over all measure 
-
-   if (source equiv photcode)
-
-   loop over sgroups
-
-   if (radius < RADIUS) 
-      
-   measure.Mcal (+/-) source.M
-*/
-
-/* alternative (slower, more robust)
-
-   loop over all average
-   loop over all average.Nm
-   select measure with source equiv photcode
-   match measure to image, get Mcal & offset
-   if any offset for average[i] is different, give error
-   apply offset to average.M
-*/
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_catalog.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_catalog.c	(revision 33597)
+++ 	(revision )
@@ -1,34 +1,0 @@
-# include "uniphot.h"
-
-void update_dvo_catalog (Catalog *catalog, Group *sgroup, int warn) {
-
-  int i, j, m, found;
-  int Nsec, Nsecfilt;
-  PhotCode *code;
-
-  Nsec = GetPhotcodeNsec (photcode[0].code);
-  Nsecfilt = GetPhotcodeNsecfilt ();
-
-  found = 0;    
-  for (i = 0; i < catalog[0].Naverage; i++) {
-    
-    if (!isnan(catalog[0].secfilt[i*Nsecfilt+Nsec].M)) {
-      catalog[0].secfilt[i*Nsecfilt+Nsec].M += sgroup[0].M;
-    }
-
-    m = catalog[0].average[i].measureOffset;
-    for (j = 0; j < catalog[0].average[i].Nmeasure; j++, m++) {
-      code = GetPhotcodebyCode (catalog[0].measure[m].photcode);
-      if (code == NULL) continue;
-      if (code[0].type != PHOT_DEP) continue;
-      if (code[0].equiv != photcode[0].code) continue;
-      catalog[0].measure[m].Mcal -= sgroup[0].M;
-      found ++;
-    }
-  }
-
-  if (found) {
-    fprintf (stderr, "found %d matches\n", found);
-    if (warn) fprintf (stderr, "warning: updated values, perhaps out of range?\n");
-  }
-}
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_catalog_setphot.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_catalog_setphot.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_catalog_setphot.c	(revision 34041)
@@ -1,93 +1,44 @@
-# include "uniphot.h"
-# include <glob.h>
+# include "setphot.h"
 
-int update_setphot (Image *image, off_t Nimage) {
+void update_catalog_setphot (Catalog *catalog, Image *image, off_t *index, off_t Nimage, FlatCorrectionTable *flatcorr) {
 
-  SkyRegion UserPatch;
-  SkyTable *sky = NULL;
-  SkyList *skylist = NULL;
-  Catalog catalog;
-  off_t i, maxID, *index;
+  off_t i, j, found;
 
-  // create an index for the image IDs
-  maxID = 0;
-  for (i = 0; i < Nimage; i++) {
-    maxID = MAX(maxID, image[i].imageID);
-  }
-  ALLOCATE (index, off_t, maxID + 1);
-  for (i = 0; i < Nimage; i++) {
-    if (!image[i].imageID) continue; // images with ID == 0 are virtual
-    index[image[i].imageID] = i;
-  }
-  
-
-  // load the current sky table (layout of all SkyRegions) 
-  sky = SkyTableLoadOptimal (CATDIR, SKY_TABLE, GSCFILE, TRUE, SKY_DEPTH, VERBOSE);
-  SkyTableSetFilenames (sky, CATDIR, "cpt");
-  
-  // determine the populated SkyRegions overlapping the requested area (default depth)
-  UserPatch.Rmin = 0;
-  UserPatch.Rmax = 360;
-  UserPatch.Dmin = -90;
-  UserPatch.Dmax = +90;
-  skylist = SkyListByPatch (sky, -1, &UserPatch);
-
-  // update measurements for each populated catalog
-  for (i = 0; i < skylist[0].Nregions; i++) {
-
-    // set up the basic catalog info
-    catalog.filename  = skylist[0].filename[i];
-    catalog.catformat = dvo_catalog_catformat (CATFORMAT);    // set the default catformat from config data
-    catalog.catmode   = dvo_catalog_catmode (CATMODE);        // set the default catmode from config data
-    catalog.catflags  = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
-    catalog.Nsecfilt  = GetPhotcodeNsecfilt ();
-
-    if (!dvo_catalog_open (&catalog, skylist[0].regions[i], VERBOSE, "w")) {
-      fprintf (stderr, "ERROR: failure reading catalog %s\n", catalog.filename);
-      exit (1);
-    }
-    if (!catalog.Naves_disk) {
-      if (VERBOSE) fprintf (stderr, "no data in %s, skipping\n", catalog.filename);
-      dvo_catalog_unlock (&catalog);
-      dvo_catalog_free (&catalog);
-      continue;
-    }
-
-    update_catalog_setphot (&catalog, image, index, Nimage);
-
-    if (!UPDATE) {
-      dvo_catalog_unlock (&catalog);
-      dvo_catalog_free (&catalog);
-      continue;
-    }
-    
-    if (VERBOSE) fprintf (stderr, "saving catalog %s\n", catalog.filename);
-    
-    dvo_catalog_save (&catalog, VERBOSE); 
-    dvo_catalog_unlock (&catalog);
-    dvo_catalog_free (&catalog);
-  }
-  return (TRUE);
-}      
-
-void update_catalog_setphot (Catalog *catalog, Image *image, off_t *index, off_t Nimage) {
-
-  off_t i, j, m, id, idx, found;
-  float Mcal, dMcal;
+  // if we are resetting, reset all flags
+  DVOMeasureFlags photomFlags = ID_MEAS_POOR_PHOTOM | ID_MEAS_SKIP_PHOTOM | ID_MEAS_PHOTOM_UBERCAL;
 
   found = 0;    
   for (i = 0; i < catalog[0].Naverage; i++) {
 
-    m = catalog[0].average[i].measureOffset;
+    off_t m = catalog[0].average[i].measureOffset;
     for (j = 0; j < catalog[0].average[i].Nmeasure; j++, m++) {
-      idx = catalog[0].measure[m].imageID;
+      off_t idx = catalog[0].measure[m].imageID;
       if (idx <= 0) continue; // detections with imageID == 0 do not have a valid image (eg, ref photcode)
 
-      id = index[idx];
-      Mcal = image[id].Mcal;
-      dMcal = image[id].dMcal;
+      off_t id = index[idx];
+      float Mcal = image[id].Mcal;
+      float dMcal = image[id].dMcal;
+      float Mcal_offset = 0.0;
 
-      catalog[0].measure[m].Mcal = Mcal;
+      // if we know about a flat-field correction, then we need to apply the sub-chip correction
+      int flat_id = image[id].photom_map_id;
+      if (flat_id > 0) {
+	  Mcal_offset = FlatCorrectionOffset (flatcorr, flat_id, catalog[0].measure[m].Xccd, catalog[0].measure[m].Yccd);
+      }
+
+      catalog[0].measure[m].Mcal = Mcal - Mcal_offset;
       catalog[0].measure[m].dMcal = dMcal;
+      myAssert(isfinite(catalog[0].measure[m].Mcal), "oops: ubercal made a nan");
+
+      if (RESET) {
+	catalog[0].measure[m].dbFlags &= ~photomFlags;
+      }
+
+      // if we are setting the zero points from an UBERCAL database, and this detection is from one of those images,
+      // then tag the measurement as well
+      if (UBERCAL && (image[id].flags & ID_IMAGE_PHOTOM_UBERCAL)) {
+	catalog[0].measure[m].dbFlags |=  ID_MEAS_PHOTOM_UBERCAL;
+      }
+
       found ++;
     }
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_catalog_uniphot.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_catalog_uniphot.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_catalog_uniphot.c	(revision 34041)
@@ -0,0 +1,35 @@
+# include "uniphot.h"
+
+// update a single catalog for uniphot
+void update_catalog_uniphot (Catalog *catalog, Group *sgroup, int warn) {
+
+  int i, j, m, found;
+  int Nsec, Nsecfilt;
+  PhotCode *code;
+
+  Nsec = GetPhotcodeNsec (photcode[0].code);
+  Nsecfilt = GetPhotcodeNsecfilt ();
+
+  found = 0;    
+  for (i = 0; i < catalog[0].Naverage; i++) {
+    
+    if (!isnan(catalog[0].secfilt[i*Nsecfilt+Nsec].M)) {
+      catalog[0].secfilt[i*Nsecfilt+Nsec].M += sgroup[0].M;
+    }
+
+    m = catalog[0].average[i].measureOffset;
+    for (j = 0; j < catalog[0].average[i].Nmeasure; j++, m++) {
+      code = GetPhotcodebyCode (catalog[0].measure[m].photcode);
+      if (code == NULL) continue;
+      if (code[0].type != PHOT_DEP) continue;
+      if (code[0].equiv != photcode[0].code) continue;
+      catalog[0].measure[m].Mcal -= sgroup[0].M;
+      found ++;
+    }
+  }
+
+  if (found) {
+    fprintf (stderr, "found %d matches\n", found);
+    if (warn) fprintf (stderr, "warning: updated values, perhaps out of range?\n");
+  }
+}
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_dvo_setphot.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_dvo_setphot.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_dvo_setphot.c	(revision 34041)
@@ -0,0 +1,155 @@
+# include "setphot.h"
+int update_dvo_setphot_parallel (SkyTable *sky, Image *image, off_t Nimage);
+
+int update_dvo_setphot (Image *image, off_t Nimage, FlatCorrectionTable *flatcorr) {
+
+  SkyRegion UserPatch;
+  SkyTable *sky = NULL;
+  SkyList *skylist = NULL;
+  Catalog catalog;
+  off_t i, maxID, *index;
+
+  // load the current sky table (layout of all SkyRegions) 
+  sky = SkyTableLoadOptimal (CATDIR, NULL, NULL, FALSE, -1, VERBOSE);
+  SkyTableSetFilenames (sky, CATDIR, "cpt");
+  
+  if (PARALLEL && !HOST_ID) {
+    update_dvo_setphot_parallel (sky, image, Nimage);
+    return TRUE;
+  }
+
+  // create an index for the image IDs
+  maxID = 0;
+  for (i = 0; i < Nimage; i++) {
+    maxID = MAX(maxID, image[i].imageID);
+  }
+  ALLOCATE (index, off_t, maxID + 1);
+  for (i = 0; i < maxID + 1; i++) {
+    index[i] = -1;
+  }
+  for (i = 0; i < Nimage; i++) {
+    if (!image[i].imageID) continue; // images with ID == 0 are virtual
+    index[image[i].imageID] = i;
+  }
+
+  // determine the populated SkyRegions overlapping the requested area (default depth)
+  UserPatch.Rmin = 0;
+  UserPatch.Rmax = 360;
+  UserPatch.Dmin = -90;
+  UserPatch.Dmax = +90;
+  skylist = SkyListByPatch (sky, -1, &UserPatch);
+
+  // update measurements for each populated catalog
+  for (i = 0; i < skylist[0].Nregions; i++) {
+
+    // does this host ID match the desired location for the table?
+    if (!HostTableTestHost(skylist[0].regions[i], HOST_ID)) continue;
+
+    char localFilename[1024];
+    snprintf (localFilename, 1024, "%s/%s.cpt", HOSTDIR, skylist->regions[i]->name);
+
+    // set up the basic catalog info
+    catalog.filename  = HOST_ID ? localFilename : skylist[0].filename[i];
+    catalog.catformat = DVO_FORMAT_UNDEF; // not needed since we skip empty catalogs
+    catalog.catmode   = DVO_MODE_UNDEF;	  // not needed since we skip empty catalogs
+    catalog.catflags  = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
+    catalog.Nsecfilt  = GetPhotcodeNsecfilt ();
+
+    if (!dvo_catalog_open (&catalog, skylist[0].regions[i], VERBOSE, "w")) {
+      fprintf (stderr, "ERROR: failure reading catalog %s\n", catalog.filename);
+      exit (1);
+    }
+    if (!catalog.Naves_disk) {
+      if (VERBOSE) fprintf (stderr, "no data in %s, skipping\n", catalog.filename);
+      dvo_catalog_unlock (&catalog);
+      dvo_catalog_free (&catalog);
+      continue;
+    }
+
+    update_catalog_setphot (&catalog, image, index, Nimage, flatcorr);
+
+    if (!UPDATE) {
+      dvo_catalog_unlock (&catalog);
+      dvo_catalog_free (&catalog);
+      continue;
+    }
+    
+    if (VERBOSE) fprintf (stderr, "saving catalog %s\n", catalog.filename);
+    
+    dvo_catalog_save (&catalog, VERBOSE); 
+    dvo_catalog_unlock (&catalog);
+    dvo_catalog_free (&catalog);
+  }
+  return (TRUE);
+}      
+
+# define DEBUG 1
+
+int update_dvo_setphot_parallel (SkyTable *sky, Image *image, off_t Nimage) {
+
+  // write out the subset table of image information
+  char imageFile[512];
+  snprintf (imageFile, 512, "%s/Images.subset.dat", CATDIR);
+  if (!ImageSubsetSave (imageFile, image, Nimage)) {
+    fprintf (stderr, "failed to write image subset\n");
+    exit (1);
+  }
+
+  // now launch the setphot_client jobs to the parallel hosts
+
+  // load the list of hosts
+  HostTable *table = HostTableLoad (CATDIR, sky->hosts);
+
+  int i;
+  for (i = 0; i < table->Nhosts; i++) {
+
+    // ensure that the paths are absolute path names
+    char *tmppath = abspath (table->hosts[i].pathname, DVO_MAX_PATH);
+    free (table->hosts[i].pathname);
+    table->hosts[i].pathname = tmppath;
+
+    char command[1024];
+    snprintf (command, 1024, "setphot_client -hostID %d -catdir %s -hostdir %s -images %s", 
+	      table->hosts[i].hostID, CATDIR, table->hosts[i].pathname, imageFile);
+
+    fprintf (stderr, "command: %s\n", command);
+
+    char tmpline[1024];
+    if (VERBOSE)       { snprintf (tmpline, 1024, "%s -v",              command);                    strcpy (command, tmpline); }
+    if (RESET)         { snprintf (tmpline, 1024, "%s -reset",          command); 		     strcpy (command, tmpline); }
+    if (UPDATE)        { snprintf (tmpline, 1024, "%s -update",         command); 		     strcpy (command, tmpline); }
+    if (UBERCAL)       { snprintf (tmpline, 1024, "%s -ubercal",        command); 		     strcpy (command, tmpline); }
+
+    if (PARALLEL_MANUAL) continue;
+
+    if (PARALLEL_SERIAL) {
+      int status = system (command);
+      if (status) {
+	fprintf (stderr, "ERROR running setphot_client\n");
+	exit (2);
+      }
+    } else {
+      // launch the job on the remote machine (no handshake)
+      int errorInfo = 0;
+      int pid = rconnect ("ssh", table->hosts[i].hostname, command, table->hosts[i].stdio, &errorInfo, FALSE);
+      if (!pid) {
+	if (DEBUG) fprintf (stderr, "failure to start %s (error %d)\n", table->hosts[i].hostname, errorInfo);
+	exit (1);
+      }
+      table->hosts[i].pid = pid; // save for future reference
+    }
+  }
+
+  // wait for the remote jobs to be completed
+  if (PARALLEL_MANUAL) {
+    fprintf (stderr, "run the setphot_client commands above.  when these are done, hit return\n");
+    getchar();
+  }
+  if (!PARALLEL_MANUAL && !PARALLEL_SERIAL) {
+    int status = HostTableWaitJobsGetIO (table, __FILE__, __LINE__, VERBOSE);
+    if (!status) return FALSE;
+  }
+
+  return (TRUE);
+}      
+
Index: branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_dvo_uniphot.c
===================================================================
--- branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_dvo_uniphot.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/Ohana/src/uniphot/src/update_dvo_uniphot.c	(revision 34041)
@@ -0,0 +1,142 @@
+# include "uniphot.h"
+# include <glob.h>
+
+// update images & catalogs for uniphot
+void update_dvo_uniphot (FITS_DB *db, Group *sgroup, int Nsgroup) {
+
+  off_t i, Nimage, Nkeep, *keep;
+  int j, status, Nmin;
+  char line[256];
+  glob_t pglob;
+  double Rmin, Rmax, Dmin, Dmax, x, y, radius;
+  Image *image;
+  Catalog catalog;
+  Coords coords;
+
+  image = gfits_table_get_Image (&db[0].ftable, &Nimage, &db[0].swapped);
+  if (!image) {
+      fprintf (stderr, "ERROR: failed to read images\n");
+      exit (2);
+  }
+
+  // create a subset list so we can make a vtable
+  Nkeep = 0;
+  ALLOCATE (keep, off_t, Nimage);
+
+  // identify the images used and clear the NOCAL flags on the rest
+  for (i = 0; i < Nimage; i++) {
+      if (image[i].flags & ID_IMAGE_PHOTOM_NOCAL) {
+	  image[i].flags &= ~ID_IMAGE_PHOTOM_NOCAL;
+	  continue;
+      }
+      keep[Nkeep] = i;
+      Nkeep ++;
+  }
+
+  /* apply calculated space-group offset to image Mcal values */
+  for (i = 0; i < Nsgroup; i++) {
+    for (j = 0; j < sgroup[i].Nimage; j++) {
+      sgroup[i].image[j][0].Mcal -= sgroup[i].M;
+    }
+  }
+
+  // save the rows in the image table which were used in this analysis
+  gfits_vtable_from_ftable (&db[0].ftable, &db[0].vtable, keep, Nkeep);
+
+  // write image table
+  dvo_image_update (db, VERBOSE);
+
+  // XXX need to fix the update for the catalog (or make it optional)
+  return;
+
+  // XXX this process uses the existence of the file to perform the update
+  // XXX convert this to an examination of the SkyTable
+  /** update catalog tables **/
+  pglob.gl_offs = 0;
+  sprintf (line, "%s/*/*.cpt", CATDIR);
+  status = glob (line, 0, NULL, &pglob);
+
+  coords.crpix1 = coords.crpix2 = 0.0;
+  coords.cdelt1 = coords.cdelt2 = 1.0; /* scale is degrees, radius in degrees */
+  coords.pc1_1 = coords.pc2_2 = 1.0;
+  coords.pc1_2 = coords.pc2_1 = 0.0;
+  strcpy (coords.ctype, "RA---TAN");
+  
+  for (i = 0; i < pglob.gl_pathc; i++) {
+    catalog.filename = pglob.gl_pathv[i];
+    catalog.catflags = LOAD_AVES | LOAD_MEAS | LOAD_MISS | LOAD_SECF;
+    catalog.Nsecfilt  = GetPhotcodeNsecfilt ();
+
+    // an error exit status here is a significant error
+    if (!dvo_catalog_open (&catalog, NULL, VERBOSE, "a")) {
+      fprintf (stderr, "ERROR: failure to open/create catalog file %s\n", catalog.filename);
+      exit (2);
+    }
+    if (!catalog.Naves_disk) {
+      dvo_catalog_unlock (&catalog);
+      dvo_catalog_free (&catalog);
+      continue;
+    }
+
+    gfits_scan (&catalog.header, "RA0", "%lf",  1, &Rmin);
+    gfits_scan (&catalog.header, "RA1", "%lf",  1, &Rmax);
+    gfits_scan (&catalog.header, "DEC0", "%lf", 1, &Dmin);
+    gfits_scan (&catalog.header, "DEC1", "%lf", 1, &Dmax);
+
+    Rmin = ohana_normalize_angle (Rmin);
+    Rmax = ohana_normalize_angle (Rmax);
+
+    coords.crval1 = 0.5*(Rmin + Rmax);
+    coords.crval2 = 0.5*(Dmin + Dmax);
+
+    Nmin = 0;
+    Rmin = 1000;
+    /* primitive version: match catalog with closest sgroup */
+    for (j = 0; j < Nsgroup; j++) {
+      if (!RD_to_XY (&x, &y, sgroup[j].v1, sgroup[j].v2, &coords)) continue;
+      radius = hypot (x, y);
+      if ((j == 0) || (radius < Rmin)) {
+	Rmin = radius;
+	Nmin = j;
+      }
+    }
+
+    fprintf (stderr, "catalog: %s sgroup: %d %s %f\n", catalog.filename, Nmin, sgroup[Nmin].label, Rmin);
+    update_catalog_uniphot (&catalog, &sgroup[Nmin], (Rmin > 2*RADIUS)); 
+    dvo_catalog_save (&catalog, VERBOSE);
+    dvo_catalog_unlock (&catalog);
+    dvo_catalog_free (&catalog);
+  }
+}      
+
+/* loop over all average 
+
+   if (source equiv photcode)
+
+   loop over sgroups
+
+   if (radius < RADIUS) 
+      
+   average.M (+/-) source.M
+*/
+
+/* loop over all measure 
+
+   if (source equiv photcode)
+
+   loop over sgroups
+
+   if (radius < RADIUS) 
+      
+   measure.Mcal (+/-) source.M
+*/
+
+/* alternative (slower, more robust)
+
+   loop over all average
+   loop over all average.Nm
+   select measure with source equiv photcode
+   match measure to image, get Mcal & offset
+   if any offset for average[i] is different, give error
+   apply offset to average.M
+*/
Index: branches/meh_branches/ppstack_test/PS-IPP-PStamp/lib/PS/IPP/PStamp/RequestFile.pm
===================================================================
--- branches/meh_branches/ppstack_test/PS-IPP-PStamp/lib/PS/IPP/PStamp/RequestFile.pm	(revision 33597)
+++ branches/meh_branches/ppstack_test/PS-IPP-PStamp/lib/PS/IPP/PStamp/RequestFile.pm	(revision 34041)
@@ -28,4 +28,5 @@
                     $PSTAMP_SELECT_BACKMDL
                     $PSTAMP_SELECT_JPEG
+                    $PSTAMP_SELECT_UNCOMPRESSED
                     $PSTAMP_SELECT_INVERSE
                     $PSTAMP_SELECT_UNCONV
@@ -66,4 +67,5 @@
 our $PSTAMP_SELECT_BACKMDL   = 32;
 our $PSTAMP_SELECT_JPEG      = 64;
+our $PSTAMP_SELECT_UNCOMPRESSED = 512;
 our $PSTAMP_SELECT_INVERSE   = 1024;
 our $PSTAMP_SELECT_UNCONV    = 2048;
Index: branches/meh_branches/ppstack_test/dbconfig/ipp.m4
===================================================================
--- branches/meh_branches/ppstack_test/dbconfig/ipp.m4	(revision 33597)
+++ branches/meh_branches/ppstack_test/dbconfig/ipp.m4	(revision 34041)
@@ -38,2 +38,3 @@
 include(lap.md)
 include(vp.md)
+include(skycell.md)
Index: branches/meh_branches/ppstack_test/dbconfig/skycell.md
===================================================================
--- branches/meh_branches/ppstack_test/dbconfig/skycell.md	(revision 33597)
+++ branches/meh_branches/ppstack_test/dbconfig/skycell.md	(revision 34041)
@@ -1,25 +1,10 @@
-# $Id: skycell.md,v 1.4 2007-07-06 01:16:08 jhoblitt Exp $
-
-skyCell METADATA
-    skycell_id  STR         64      # Primary Key
-    tess_id     STR         64      # Primary Key
-    ra1         F64         0.0
-    decl1       F64         0.0
-    ra2         F64         0.0
-    decl2       F64         0.0
-    ra3         F64         0.0
-    decl3       F64         0.0
-    ra4         F64         0.0
-    decl4       F64         0.0
+skycell METADATA
+    tess_id	STR	64 
+    skycell_id	STR	64
+    radeg	F32	0
+    decdeg	F32	0
+    glong       F32	0
+    glat        F32	0
+    width	F32	0
+    height	F32	0
 END
-
-skyCellMap METADATA
-    skycell_id  STR         64      # Primary Key
-    tess_id     STR         64      # Primary Key
-    exp_id     S64         64      # Primary Key
-    p3_version  S32         0       # Primary Key
-# class is not yet consistently carried through pXtools
-#    class       STR         64      # Primary Key
-    class_id    STR         64      # Primary Key
-END
-
Index: branches/meh_branches/ppstack_test/doc/stamps/stampsICD.tex
===================================================================
--- branches/meh_branches/ppstack_test/doc/stamps/stampsICD.tex	(revision 33597)
+++ branches/meh_branches/ppstack_test/doc/stamps/stampsICD.tex	(revision 34041)
@@ -252,4 +252,5 @@
 PSTAMP\_SELECT\_INVERSE   &    1024  &   make stamps from inverse difference images (applies only for diff) \\
 PSTAMP\_SELECT\_UNCONV    &    2048  &   make stamps from unconvolved stack images (applies only for stack) \\
+PSTAMP\_RESTORE\_BACKGROUND &  4096  &   (TODO) restore background correction to chip stage images before making stamp \\
 PSTAMP\_USE\_IMFILE\_ID   &   16384  &   for byid requests select images using image id instead of stage id \\
 PSTAMP\_NO\_WAIT\_FOR\_UPDATE &  32768  &   if images are not available because they have been cleaned don't wait \\
Index: branches/meh_branches/ppstack_test/dvodist/scripts/mkdist.20120509.sh
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/scripts/mkdist.20120509.sh	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/scripts/mkdist.20120509.sh	(revision 34041)
@@ -0,0 +1,37 @@
+#!/bin/csh -f
+
+# create the links needed to expose a specific catalog to the distribution server
+
+# general locations
+set wwwroot = /data/ippc17.0/dvodist/www-root
+set catroot = /data/ipp064.0/eugene/3pi.20111229/catdir.20120509
+
+set catdir = 3pi.20120509
+set cattgt = $wwwroot/$catdir
+
+set nlist = (n0000 n0730 n1500 n2230 n3000 n3730 n4500 n5230 n6000 n6730 n7500 n8230)
+set slist = (s0000 s0730 s1500 s2230 s3000 s3730 s4500 s5230 s6000 s6730 s7500 s8230)
+
+# top-level files
+mkdir -p $cattgt
+foreach file (HostTable.dat Images.dat Photcodes.dat SkyTable.fits flatcorr.fits)
+  ln -s $catroot/$file $cattgt
+end
+
+# make DEC directories
+foreach dir ($nlist $slist)
+  mkdir $cattgt/$dir
+end
+
+# link all files from all hostdirs into all DEC dirs
+foreach hostdir (`grep -v \# $cattgt/HostTable.dat | awk '{print $3}'`)
+  echo $hostdir
+  foreach dir ($nlist $slist)
+    ln -s $hostdir/$dir/*.cpt $cattgt/$dir
+    ln -s $hostdir/$dir/*.cpm $cattgt/$dir
+    ln -s $hostdir/$dir/*.cps $cattgt/$dir
+    ln -s $hostdir/$dir/*.cpn $cattgt/$dir
+  end
+end
+   
+
Index: branches/meh_branches/ppstack_test/dvodist/scripts/mkdist.20120525.sh
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/scripts/mkdist.20120525.sh	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/scripts/mkdist.20120525.sh	(revision 34041)
@@ -0,0 +1,35 @@
+#!/bin/csh -f
+
+# create the links needed to expose a specific catalog to the distribution server
+
+# general locations
+set wwwroot = /data/ippc17.0/www/dvodist/www-root
+set catroot = /data/ipp064.0/eugene/3pi.20111229/catdir.20120525
+
+set catdir = 3pi.20120525
+set cattgt = $wwwroot/$catdir
+
+set nlist = (n0000 n0730 n1500 n2230 n3000 n3730 n4500 n5230 n6000 n6730 n7500 n8230)
+set slist = (s0000 s0730 s1500 s2230 s3000 s3730 s4500 s5230 s6000 s6730 s7500 s8230)
+
+# top-level files
+mkdir -p $cattgt
+foreach file (HostTable.dat Images.dat Photcodes.dat SkyTable.fits flatcorr.fits)
+  ln -s $catroot/$file $cattgt
+end
+
+# make DEC directories
+foreach dir ($nlist $slist)
+  mkdir $cattgt/$dir
+end
+
+# link all files from all hostdirs into all DEC dirs
+foreach hostdir (`grep -v \# $cattgt/HostTable.dat | awk '{print $3}'`)
+  echo $hostdir
+  foreach dir ($nlist $slist)
+    ln -s $hostdir/$dir/*.cpt $cattgt/$dir
+    ln -s $hostdir/$dir/*.cpm $cattgt/$dir
+    ln -s $hostdir/$dir/*.cps $cattgt/$dir
+    ln -s $hostdir/$dir/*.cpn $cattgt/$dir
+  end
+end
Index: branches/meh_branches/ppstack_test/dvodist/scripts/mkdist.testcat.sh
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/scripts/mkdist.testcat.sh	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/scripts/mkdist.testcat.sh	(revision 34041)
@@ -0,0 +1,46 @@
+#!/bin/csh -f
+
+# create the links needed to expose a specific catalog to the distribution server
+
+# general locations
+set wwwroot = /data/ippc17.0/dvodist/www-root
+set catroot = /data/ipp064.0/eugene/refcat.20120202/catdir.syn.test.v1
+
+set catdir = catdir.syn.test
+set cattgt = $wwwroot/$catdir
+
+set nlist = (n0000 n0730 n1500 n2230 n3000 n3730 n4500 n5230 n6000 n6730 n7500 n8230)
+set slist = (s0000 s0730 s1500 s2230 s3000 s3730 s4500 s5230 s6000 s6730 s7500 s8230)
+
+# top-level files
+mkdir -p $cattgt
+foreach file (HostTable.dat Images.dat Photcodes.dat SkyTable.fits flatcorr.fits)
+  ln -s $catroot/$file $cattgt
+end
+
+# make DEC directories
+foreach dir ($nlist $slist)
+  mkdir $cattgt/$dir
+end
+
+# link all files from all hostdirs into all DEC dirs
+if (-e $cattgt/HostTable.dat) then
+  foreach hostdir (`grep -v \# $cattgt/HostTable.dat | awk '{print $3}'`)
+    echo $hostdir
+    foreach dir ($nlist $slist)
+      ln -s $hostdir/$dir/*.cpt $cattgt/$dir
+      ln -s $hostdir/$dir/*.cpm $cattgt/$dir
+      ln -s $hostdir/$dir/*.cps $cattgt/$dir
+      ln -s $hostdir/$dir/*.cpn $cattgt/$dir
+    end
+  end
+else
+  set hostdir = $catroot
+  echo $hostdir
+  foreach dir ($nlist $slist)
+    ln -s $hostdir/$dir/*.cpt $cattgt/$dir
+    ln -s $hostdir/$dir/*.cpm $cattgt/$dir
+    ln -s $hostdir/$dir/*.cps $cattgt/$dir
+    ln -s $hostdir/$dir/*.cpn $cattgt/$dir
+  end
+endif
Index: branches/meh_branches/ppstack_test/dvodist/scripts/mkindex.sh
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/scripts/mkindex.sh	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/scripts/mkindex.sh	(revision 34041)
@@ -0,0 +1,36 @@
+#!/bin/csh -f 
+
+if ($#argv != 1) then
+  echo "USAGE: mkindex.sh (dir)"
+  exit 2
+endif
+
+set topdir = $argv[1]
+
+# this is weak: depends on root location
+ln -s /data/ippc17.0/www/dvodist/www-root/index.php $topdir/
+
+set file = `basename $topdir`
+echo "$file : plain : title  : Title" > $topdir/index.txt
+echo "..             : dir   : dir2  : parent directory" >> $topdir/index.txt
+
+set N = 1
+foreach entry ($topdir/*)
+  set file = `basename $entry`
+  if ("$file" == "index.php") continue
+  if ("$file" == "index.txt") continue
+
+  if (-d $entry) then
+    echo "$file : dir : dir$N : directory" >> $topdir/index.txt
+  endif
+
+  if (-f $entry) then
+    echo "$file : file : file$N : database file" >> $topdir/index.txt
+  endif
+
+  if ($N == 1) then
+    set N = 2
+  else
+    set N = 1
+  endif
+end
Index: branches/meh_branches/ppstack_test/dvodist/www-root/docs.txt
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/www-root/docs.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/www-root/docs.txt	(revision 34041)
@@ -0,0 +1,123 @@
+<h2>DVO Documentation</h2>
+
+<h3>Release Notes on 3pi.20120525</h3>
+
+This database contains PS1 3pi observations through 2012/01/21.  The
+ubercal zero points have been applied to all exposures included in
+that analysis.  The remaining exposures have been tied to the ubercal
+system via relative photometry.  The ubercal measurements are given
+10x their poisson weight to ensure they drive the photometric
+solution.
+
+The database has been merged with the PS1 Synthetic photometry
+database (based on 2MASS and USNO-B).  For objects brighter than the
+saturation limit, the Synthetic photometry has been used for the mean
+magnitudes (these can be identified by having bit 0x04 raised in the
+mean filter flags).  Objects which used ubercal photometry have the
+bit 0x08 raised in the mean filter flags.  
+
+This database has also been merged with the 2MASS, WISE, and
+SuperCOSMOS databases.  The following photcodes are used for those
+external photometric sources:
+
+<table class="page">
+<tr><th> Source </th><th> Photcode </th></tr>
+<tr><td> 2MASS_J </td><td> 2011 </td></tr>   
+<tr><td> 2MASS_H </td><td> 2012 </td></tr>   
+<tr><td> 2MASS_K </td><td> 2013 </td></tr>   
+<tr><td> WISE_W1 </td><td> 2014 </td></tr>   
+<tr><td> WISE_W2 </td><td> 2015 </td></tr>   
+<tr><td> WISE_W3 </td><td> 2016 </td></tr>   
+<tr><td> WISE_W4 </td><td> 2017 </td></tr>   
+<tr><td> SYNTH.g </td><td> 3001 </td></tr>   
+<tr><td> SYNTH.r </td><td> 3002 </td></tr>   
+<tr><td> SYNTH.i </td><td> 3003 </td></tr>   
+<tr><td> SYNTH.z </td><td> 3004 </td></tr>   
+<tr><td> SYNTH.y </td><td> 3005 </td></tr>
+<tr><td> SCOS.103a.E       </td><td>      1150  </td></tr>
+<tr><td> SCOS.4414.OG590   </td><td>      1151  </td></tr>
+<tr><td> SCOS.4415.OG590   </td><td>      1152  </td></tr>
+<tr><td> SCOS.IIIaF.OG590  </td><td>      1153  </td></tr>
+<tr><td> SCOS.IIIaF.RG610  </td><td>      1154  </td></tr>
+<tr><td> SCOS.IIIaF.RG630  </td><td>      1155  </td></tr>
+<tr><td> SCOS.IIIaJ.GG385  </td><td>      1156  </td></tr>
+<tr><td> SCOS.IIIaJ.GG395  </td><td>      1157  </td></tr>
+<tr><td> SCOS.IVN.RG715    </td><td>      1158  </td></tr>
+<tr><td> SCOS.IVN.RG9      </td><td>      1159  </td></tr>
+</table>
+
+<img width=1000px src="relphot.20120528/sigma.i.ubercal.20120528.v0.png"><br>
+Map of the mean per-star residual (inst mag brighter than -10) for
+i-band (ubercal data only).
+<br>
+
+<img width=1000px src="relphot.20120528/sigma.g.ubercal.20120528.v0.png"><br>
+Map of the mean per-star residual (inst mag brighter than -10) for
+g-band (ubercal data only).
+<br>
+
+<h3>Comparison with 2MASS</h3>
+
+The plots below compare the PS1 grizy photometry with 2MASS photometry
+by examining the location of the color-color locus for early (&lt; K0)
+main sequence stars.
+
+For each pixel (0.5 degree on a side), I select all objects with PS1 r
+&lt; 20 and detected JHK magnitudes, keeping only those with S/N in
+the mean &gt; 50 and standard deviations less than 0.05 magnitudes.  I
+then fit the stellar locus in g-r,r-i for the g-r range 0.2 to 1.0,
+and keep only objects that fall within 0.05 of that (linear) stellar
+locus fit.<br>
+
+I then fit the stellar locus with a line in each of the color-color diagrams
+g-i,i-J; g-i,i-H; g-i,i-K.  I measure the mean i-J color expected from
+the fit for stars with g-i = 0.5.  The figures below show the maps of
+the i-J, i-H, and i-K offsets as well as the J-H and H-K offsets at
+g-i = 0.5.  The center of these maps is RA,DEC = 0,0, (east is left,
+north is up).  The pixels are 0.5 degrees on a side.<br> 
+
+These maps show three main features.  The Galactic Plane is quite
+clear, and not surprising: this test is particularly sensitive to
+reddening. <br>
+
+Several large scale patches are also visible (eg, the black patch near
+RA ~ 150 deg).  Disappointingly, these correspond to areas without
+good ubercal ties -- in other words, these are regions in which the
+data were obtained in non-photometric conditions.  This shows the
+limitation of using relative photometry to tie across individual
+exposures.  If the exposures have an extinction gradient, the
+correction far from the photometrically tied region can drift from the
+correct value.  The largest region at RA ~ 150 matches a section with
+poor i-band photometry and has a depth of roughly 0.1 magnitudes in
+i-J.  Assuming this is completely due to i-band errors, this
+corresponds to about 0.06 magnitudes of drift to the center of this
+region. <br>
+
+The third pattern is at a lower level of intensity: N-S strips with
+roughly E-W bands.  They are most noticable in K and H-K.  These
+appear to correspond well to the 2MASS scanning pattern, and have an
+amplitude corresponding to about 0.02 - 0.04 magnitudes of offset in
+K.  <br>
+
+<img width=1000px src="relphot.20120528/dJ.allsky.20120528.v3.png"><br>
+Map of the i-J color at g-i = 0.5. 
+<br>
+
+<img width=1000px src="relphot.20120528/dH.allsky.20120528.v3.png"><br>
+Map of the i-H color at g-i = 0.5. 
+<br>
+
+<img width=1000px src="relphot.20120528/dK.allsky.20120528.v3.png"><br>
+Map of the i-K color at g-i = 0.5. 
+<br>
+
+Combinations of the above maps can highlight any problems in 2MASS
+which are driven by the color rather than the mean magnitudes.
+
+<img width=1000px src="relphot.20120528/dJH.allsky.20120528.v3.png"><br>
+Map of the J-H color at g-i = 0.5. 
+<br>
+
+<img width=1000px src="relphot.20120528/dHK.allsky.20120528.v3.png"><br>
+Map of the H-K color at g-i = 0.5. 
+<br>
Index: branches/meh_branches/ppstack_test/dvodist/www-root/help.txt
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/www-root/help.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/www-root/help.txt	(revision 34041)
@@ -0,0 +1,13 @@
+<h2>DVO Distribution Help</h2>
+
+<p> These web pages contain the PS1 DVO databases, making it easy to
+download entire databases with the 'wget' command.  It is necessary to
+include an authorized user and the password.</p>
+
+
+Use a wget command on the directory of interest, eg:
+
+<tt> wget --user=ps1sc --password=(PASS) -r -np -nH http://dvodist.ipp.ifa.hawaii.edu/3pi.20120509 </tt>
+
+Ask your DRAVG representative if you need the password.
+
Index: branches/meh_branches/ppstack_test/dvodist/www-root/index.php
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/www-root/index.php	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/www-root/index.php	(revision 34041)
@@ -0,0 +1,61 @@
+<?php 
+
+$utils = "/data/ippc17.0/www/dvodist/www-util";
+
+include "$utils/ipp.php";
+
+// if we come in directly, the top-level directory should be /dvodist
+// if we come in from the ippops1 proxy, we need to set the root to /
+$ifaProxy = "128.171.227.208";
+
+// is the request coming from our proxY?
+$fromProxy = $_SERVER['HTTP_X_FORWARDED_FOR'] && ($_SERVER['REMOTE_ADDR'] == $ifaProxy);
+if ($fromProxy) {
+  $rootdir = "";
+ } else {
+  $rootdir = "/dvodist";
+ }
+
+menu("$utils/ipp.menu.dat", 'DVO Distribution Server', $rootdir, "$rootdir/ipp.css", '', '');
+
+$script = basename($_SERVER[SCRIPT_NAME]);
+
+if ($script == "index.php") {
+  dirlist ("index.txt");
+ }
+
+if ($script == "docs.php") {
+  verbatim ("docs.txt");
+ }
+
+if ($script == "help.php") {
+  verbatim ("help.txt");
+ }
+
+menu_end();
+?>
+
+// generic proxy detection
+// if ( $_SERVER['HTTP_X_FORWARDED_FOR']
+//      || $_SERVER['HTTP_X_FORWARDED']
+//      || $_SERVER['HTTP_FORWARDED_FOR']
+//      || $_SERVER['HTTP_CLIENT_IP']
+//      || $_SERVER['HTTP_VIA']
+//      || in_array($_SERVER['REMOTE_PORT'], array(8080,80,6588,8000,3128,553,554))
+//      || @fsockopen($_SERVER['REMOTE_ADDR'], 80, $errno, $errstr, 30))
+//   {
+//     exit('Proxy detected');
+//   }
+
+// list server info:
+// $varlist = array ('SCRIPT_NAME', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_FORWARDED_FOR', 'HTTP_CLIENT_IP', 'HTTP_VIA', 'REMOTE_ADDR');
+// 
+// foreach ($varlist as $name) {
+//   echo "$name : $_SERVER[$name]<br>\n";
+// }
+// 
+// echo "get list<br>\n";
+// foreach ($_GET as $key => $value) {
+//   echo "$key : $value<br>\n";
+// }
+
Index: branches/meh_branches/ppstack_test/dvodist/www-root/index.txt
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/www-root/index.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/www-root/index.txt	(revision 34041)
@@ -0,0 +1,5 @@
+DVO Database  	       : plain : title : Comment
+3pi.20120525 	       : dir   : dir1  : DVO Database Released 2012.05.25, ubercal + relphot + relastro (pm + par)
+# allsky.tables.20120513 : dir   : dir2  : Summary Tables for allsky (FITS & CSV formats)
+allsky.tables.20120602 : dir   : dir2  : Summary Tables for allsky (FITS & CSV formats)
+catdir.syn.test        : dir   : dir1  : Test DVO Database
Index: branches/meh_branches/ppstack_test/dvodist/www-root/ipp.css
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/www-root/ipp.css	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/www-root/ipp.css	(revision 34041)
@@ -0,0 +1,421 @@
+
+/* internal link line: c0d0d0 : d8d0f0
+   external link line: 303070 
+   border:             0080c0
+ */
+
+body  { 
+    background-color: #a0d0e0; 
+    padding: 5px; 
+    margin: 5px
+}
+
+h1 {
+    margin-top: 0.05em;
+    margin-bottom: 0.05em;
+}
+
+h2 {
+    margin-top: 0.05em;
+    margin-bottom: 0.05em;
+}
+
+h3 {
+    margin-top: 0.05em;
+    margin-bottom: 0.05em;
+}
+
+h4 {
+    margin-top: 0.05em;
+    margin-bottom: 0.05em;
+}
+
+div.debug {
+    height: 15%;
+    background-color: #ffffaa;
+    overflow: auto;
+}
+
+a:link, a:visited, a:active { 
+    text-decoration: underline; 
+    font-weight: bold; 
+    color: #ff0000
+}
+
+a.button      { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #000000; 
+    background: #0080c0
+}
+a.menutop     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #ffffff
+}
+a.menutops    { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #80f0ff
+}
+a.menuext     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #ffffff
+}
+a.menulink    { 
+    text-decoration: none; 
+    font-weight: normal; 
+    color: #000000
+}
+a.menuselect  { 
+    text-decoration: none; 
+    font-weight: normal; 
+    color: #0000ff
+}
+a.piclink     { 
+    text-decoration: none; 
+    font-weight: normal; 
+    color: #0080c0
+}
+
+table.dirlist { text-align: left; 
+             font-size: small; 
+	     font-weight: normal; 
+	     background: #303030; 
+	     border: 1px solid #000000; 
+	     padding: 1px; 
+}
+
+a.dir1     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #800080
+}
+a.dir2     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #800080
+}
+a.file1     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #800080
+}
+a.file2     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #800080
+}
+tr.dir1    { 
+    text-align: left; 
+    background: #d0d0d0; 
+    font-size: small; 
+    color: #000000; 
+    padding: 1px; 
+}
+tr.dir2    { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: small; 
+    color: #000000; 
+    padding: 1px; 
+}
+tr.file1    { 
+    text-align: left; 
+    background: #d0d0d0; 
+    font-size: small; 
+    color: #000000; 
+    padding: 2px; 
+}
+tr.file2    { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: small; 
+    color: #000000; 
+    padding: 2px; 
+}
+tr.break    { 
+    text-align: left; 
+    background: #0080c0; 
+    font-size: small; 
+    color: #ffffff; 
+    padding-top: 4px; 
+}
+tr.title    { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: medium; 
+    color: #000000; 
+    padding: 2px; 
+    padding-top: 4px; 
+    padding-bottom: 4px; 
+}
+
+td.menutop    { 
+    text-align: left; 
+    background: #0080c0; 
+    font-size: small; 
+    color: #ffffff; 
+    padding: 2px; 
+}
+td.menutops   { 
+    text-align: left; 
+    background: #0080c0; 
+    font-size: small; 
+    color: #000000; 
+    padding: 2px; 
+}
+td.menuext    { 
+    text-align: left; 
+    background: #303070; 
+    font-size: small; 
+    color: #ffffff; 
+    padding: 2px; 
+}
+td.menulink   { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: small; 
+    color: #000000; 
+    padding: 2px; 
+    font-weight: normal; 
+    text-indent: 0px; 
+}
+td.menuselect { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: small; 
+    color: #ff0000; 
+    padding: 2px; 
+    font-weight: normal; 
+    text-indent: 0px; 
+}
+td.menuline   { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: small; 
+    color: #000000; 
+    padding: 2px; 
+    font-weight: normal; 
+    text-indent: 0px; 
+}
+
+td.picture    { 
+    text-align: left; 
+    background: #00ffff; 
+    font-size: small; 
+    color: #ff0000; 
+    padding: 0px; 
+    text-indent: 2px; 
+    font-weight: normal; 
+}
+td.piclink    { 
+    text-align: left; 
+    background: #0080c0; 
+    font-size: small; 
+    color: #ff0000; 
+    padding: 0px; 
+    text-indent: 0px; 
+    font-weight: normal; 
+}
+
+table.page { 
+    border: 0px solid #0080c0; 
+    background: #a0d0e0; 
+    padding: 0px
+}
+
+td.title { 
+    background-color: #ff0000; 
+    padding: 5px; 
+    font-size: x-large; 
+    text-align: left; 
+    vertical-align: top
+}
+
+td.body  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #d0d0ff; 
+	   background-color: #d0d0ff; 
+	   border: 3px solid #0080c0; 
+	   padding: 5px; 
+}
+
+table.menu { 
+    text-align: left; 
+    font-size: small; 
+    font-weight: normal; 
+    background: #ff0000; 
+    border: 3px solid #0080c0; 
+    padding: 0px; 
+}
+
+table.select { 
+    text-align: left; 
+    font-size: small; 
+    font-weight: normal; 
+    background: #0080c0; 
+    border: 1px solid #0080c0; 
+    padding: 0px; 
+}
+
+td.select  { 
+    text-align: left; 
+    font-size: small;  
+    font-weight: bold;  
+    vertical-align: top;
+    color: #ffffff; 
+    background: #0080c0; 
+    background-color: #0080c0; 
+    border: 2px solid #0080c0; 
+    padding: 2px; 
+}
+
+th.select  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: bold;  
+           vertical-align: top;
+	   color: #000000; 
+	   background: #d0d0ff; 
+	   background-color: #d0d0ff; 
+	   border: 0px solid #0080c0; 
+	   padding: 2px; 
+}
+
+table.list { text-align: left; 
+             font-size: small; 
+	     font-weight: normal; 
+	     background: #d0d0ff; 
+	     border: 2px solid #ffffff; 
+	     padding: 0px; 
+}
+
+td.list  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #d0d0ff; 
+	   background-color: #d0d0ff; 
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.list_off  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #a0a0a0; 
+	   background-color: #a0a0a0;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.list_drop  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #a0a0a0; 
+	   background-color: #a0a0a0;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.list_run  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #ffa0a0; 
+	   background-color: #ffa0a0;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.det_off  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #a0a0a0; 
+	   background-color: #a0a0a0;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.det_drop  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #a0a0a0; 
+	   background-color: #ffa0a0;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.det_add  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #ffa0a0; 
+	   background-color: #a0a0ff;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+th.list  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: bold;  
+           vertical-align: top;
+	   background: #d0d0ff; 
+	   background-color: #d0d0ff; 
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.ul3x2    { 
+    text-align: right; 
+    vertical-align: bottom;
+    padding: 0px; 
+    text-indent: 0px; 
+}
+td.uc3x2    { 
+    text-align: center; 
+    vertical-align: bottom;
+    padding: 0px; 
+    text-indent: 0px; 
+}
+td.ur3x2    { 
+    text-align: left; 
+    vertical-align: bottom;
+    padding: 0px; 
+    text-indent: 0px; 
+}
+td.ll3x2    { 
+    text-align: right; 
+    vertical-align: top;
+    padding: 0px; 
+    text-indent: 0px; 
+}
+td.lc3x2    { 
+    text-align: center; 
+    vertical-align: top;
+    padding: 0px; 
+    text-indent: 0px; 
+}
+td.lr3x2    { 
+    text-align: left; 
+    vertical-align: top;
+    padding: 0px; 
+    text-indent: 0px; 
+}
Index: branches/meh_branches/ppstack_test/dvodist/www-util/blank.html
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/www-util/blank.html	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/www-util/blank.html	(revision 34041)
@@ -0,0 +1,10 @@
+<html>
+<head>
+  <title> Load and Setup </title>
+</head>
+
+<link rel="STYLESHEET" HREF="ipp.css">
+<body>
+
+test index<br>
+</body></html>
Index: branches/meh_branches/ppstack_test/dvodist/www-util/ipp.menu.dat
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/www-util/ipp.menu.dat	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/www-util/ipp.menu.dat	(revision 34041)
@@ -0,0 +1,20 @@
+# style   | select-style | type    | menu line                    | link page       
+
+piclink   | piclink      | piclink | /PScolorlogo2.jpg            | http://panstarrs.ifa.hawaii.edu
+menuext   | menuext      | link    | Pan-STARRS public            | http://panstarrs.ifa.hawaii.edu
+menuext   | menuext      | link    | Pan-STARRS project           | http://panstarrs.ifa.hawaii.edu/project
+menuext   | menuext      | link    | Pan-STARRS IPP Wiki          | http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki
+menuext   | menuext      | link    | PS1SC Wiki                   | http://ps1sc.ifa.hawaii.edu/PS1wiki/index.php/Main_Page
+
+menutop   | menutop      | plain   | &nbsp;                       | 
+menutop   | menuselect   | link    | DVO Releases                 | /index.php
+menutop   | menuselect   | link    | Documentation                | /docs.php
+menutop   | menuselect   | link    | Help                         | /help.php
+
+
+# we have four valid menu types: picture, piclink, link, plain
+# picture   | picture    | picture | PScolorlogo2.jpg             | none
+# piclink   | piclink    | piclink | PScolorlogo2.jpg             | http://panstarrs.ifa.hawaii.edu
+# menulink  | menuselect | link    | other page                   | notest.php     
+# menutop   | menutop    | plain   | foo bar                      | none            
+
Index: branches/meh_branches/ppstack_test/dvodist/www-util/ipp.php
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/www-util/ipp.php	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/www-util/ipp.php	(revision 34041)
@@ -0,0 +1,198 @@
+<?php
+
+global $realroot;
+$realroot = "/dvodist";
+
+function head ($title) {
+  echo "<head>\n";
+  echo "  <title> $title </title>\n";
+  /* JavaScript code */
+  echo "  <script type=\"text/javascript\">\n";
+  echo "  function changeCell(cellId, newContent){\n";
+  echo "    document.getElementById(cellId).innerHTML=newContent;\n";
+  echo "  }\n";
+  echo "  </script>\n";
+  echo "</head>\n\n";
+}
+
+function menu ($source, $title, $root, $sheet, $append, $project) {
+
+  echo "<html>\n";
+  head($title);
+  echo "<link rel=\"STYLESHEET\" HREF=\"$sheet\">\n";
+  echo "<body>\n";
+
+  if (! $project) { $project = "none"; }
+
+  // echo "<p style=\"font-size:50%\">host: $WWWHOST, db: $DBHOST</p>\n";
+  echo "<table class=page cellspacing=10px><tr><td valign=top>\n";
+  echo "<table class=menu cellspacing=0px>\n";
+
+  menulines ($source, $root, $append, $project);
+
+  echo '</table></td><td class="body" valign=top>', "\n\n";
+}
+
+function menulines ($source, $root, $append, $project) {
+
+  $file = fopen ($source, "r");
+
+  // loop over the lines in the file and generate lines in the menu
+  while ($line = fgetcsv ($file, 1024, "|")) {
+    if (ereg ('^[:blank:]*#', $line[0])) continue;
+    if (count($line) < 2) continue;
+
+    if (count($line) == 2) {
+      $value = trim($line[0]);
+      if ($value == "input") {
+        $value = trim($line[1]);
+        menulines ($value, $root, $append, $project);
+      }
+      continue;
+    }
+    if (count($line) != 5) continue;
+
+    $type = trim($line[2]);
+    $name = trim($line[3]);
+    $base = trim($line[4]);
+
+    if (preg_match ('|\$PROJECT|', $name)) {
+      $name = preg_replace ('|\$PROJECT|', $project, $name);
+    }
+
+    // append additional elements if needed
+    if ($append) {
+      $link = "$base" . "?" . $append;
+    } else {
+      $link = "$base";
+    }
+	
+    // prepend the rootdir if needed (reference to /)
+    if ($link[0] == '/') {
+      $link = $root . $link;
+    } 
+
+    global $realroot;
+
+    // hi-lite the current page (use select-style, not style)
+    $thisname = $_SERVER[SCRIPT_NAME]; 
+    $page = $realroot . $base;
+    if ($page == $thisname) {
+      $style = trim($line[1]);
+    } else { 
+      $style = trim($line[0]);
+    }       
+
+    switch ($type) { 
+    case 'plain':
+      echo "<tr><td class=\"$style\"> $name </td></tr>\n";  
+      break;
+    case 'picture':
+      // prepend the rootdir if needed (reference to /)
+      if ($name[0] == '/') {
+	$name = $root . $name;
+      } 
+      echo "<tr><td class=\"$style\"> <img src=\"$name\"> </td></tr>\n";     
+      break;
+    case 'piclink':
+      // prepend the rootdir if needed (reference to /)
+      if ($name[0] == '/') {
+	$name = $root . $name;
+      } 
+      echo "<tr><td class=\"$style\"> <a class=\"$style\" href=\"$link\"> <img class=\"$style\" src=\"$name\"> </a></td></tr>\n";     
+      break;
+    default:
+      echo "<tr><td class=\"$style\"> <a class=\"$style\" href=\"$link\"> $name </a></td></tr>\n";     
+      break;
+    } 
+  }
+  fclose ($file);
+}
+
+function menu_end () { 
+  echo "</td></tr></table>\n";
+  echo "</body></html>\n\n";
+  exit ();
+}
+
+function dirlist ($source) {
+  $file = fopen ($source, "r");
+  echo "<table class=\"dirlist\">\n";
+
+  // loop over the lines in the file and generate lines in the menu
+  while ($line = fgetcsv ($file, 1024, ":")) {
+    if (ereg ('^[:blank:]*#', $line[0])) continue;
+    if (count($line) < 2) continue;
+
+    // allows nested entries..
+    // if (count($line) == 2) {
+    //   $value = trim($line[0]);
+    //   if ($value == "input") {
+    //     $value = trim($line[1]);
+    //     menulines ($value, $root, $append, $project);
+    //   }
+    //   continue;
+    // }
+
+    if (count($line) != 4) continue;
+
+    $name  = trim($line[0]);
+    $type  = trim($line[1]);
+    $style = trim($line[2]);
+    $info  = trim($line[3]);
+
+    switch ($type) { 
+    case 'plain':
+      echo "<tr class=\"$style\"><td>$name</td><td>$info</td></tr>\n";  
+      break;
+    case 'dir':
+      echo "<tr class=\"$style\"><td><a class=\"$style\" href=\"$name\">$name</a></td><td>$info</td></tr>\n";
+      break;
+    default:
+      echo "<tr class=\"$style\"><td><a class=\"$style\" href=\"$name\">$name</a></td><td>$info</td></tr>\n";
+      break;
+    } 
+  }
+  fclose ($file);
+  echo "</table>\n";
+}
+
+function verbatim ($source) {
+  $file = fopen ($source, "r");
+
+  $addbreak = 0;
+
+  // loop over the lines in the file and generate lines in the menu
+  while ($line = fgets ($file, 1024)) {
+    if (strlen($line) < 2) {
+      if (!$addbreak) {
+	echo "<br>\n";
+      }
+      $addbreak = 1;
+      continue;
+    }
+    $Nc = strlen($line);
+    echo "$line\n";
+    $addbreak = 0;
+  } 
+  fclose ($file);
+}
+
+//////////////////////////////////////////////////////////////////////////
+// Return the value associated to the key (GET or POST method)
+// If convertKeyToHtmlkey is true, the key is converted to a 
+// so-called HTML, i.e. the key where '.' are replaced by '_'
+// (e.g. the conversion of 'f.o.o.b_a_r' is 'f_o_o_b_a_r'.
+//
+function get_value_from_key ($key, $convertKeyToHtmlkey) {
+  if ($convertKeyToHtmlkey) {
+    $htmlkey = preg_replace ('|\.|', '_', $key);
+  } else {
+    $htmlkey = $key;
+  }
+  if ($_SERVER[REQUEST_METHOD] == 'GET') { 
+    return $_GET[$htmlkey]; 
+  } else {
+    return $_POST[$htmlkey]; 
+  }
+}
Index: branches/meh_branches/ppstack_test/dvodist/www-util/phptest.php
===================================================================
--- branches/meh_branches/ppstack_test/dvodist/www-util/phptest.php	(revision 34041)
+++ branches/meh_branches/ppstack_test/dvodist/www-util/phptest.php	(revision 34041)
@@ -0,0 +1,25 @@
+<?php 
+
+include 'ipp.php';
+
+menu('ipp.menu.dat', 'test.page', 'ipp.css', '', '');
+
+$varlist = array ('SERVER_NAME', 'GATEWAY_INTERFACE', 'SERVER_PROTOCOL',
+'SERVER_PORT', 'REQUEST_METHOD', 'PATH_INFO', 'PATH_TRANSLATED', 'SCRIPT_NAME',
+'QUERY_STRING', 'REMOTE_HOST', 'REMOTE_ADDR', 'AUTH_TYPE', 'REMOTE_USER',
+'REMOTE_IDENT', 'CONTENT_TYPE', 'CONTENT_LENGTH');
+
+foreach ($varlist as $name) {
+  echo "$name : $_SERVER[$name]<br>\n";
+}
+
+echo "get list<br>\n";
+foreach ($_GET as $key => $value) {
+  echo "$key : $value<br>\n";
+}
+
+$value = system ("ls /etc", $status);
+echo "status: $status\n";
+
+menu_end();
+?>
Index: branches/meh_branches/ppstack_test/ippData/htdocs/docs.txt
===================================================================
--- branches/meh_branches/ppstack_test/ippData/htdocs/docs.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippData/htdocs/docs.txt	(revision 34041)
@@ -0,0 +1,123 @@
+<h2>DVO Documentation</h2>
+
+<h3>Release Notes on 3pi.20120525</h3>
+
+This database contains PS1 3pi observations through 2012/01/21.  The
+ubercal zero points have been applied to all exposures included in
+that analysis.  The remaining exposures have been tied to the ubercal
+system via relative photometry.  The ubercal measurements are given
+10x their poisson weight to ensure they drive the photometric
+solution.
+
+The database has been merged with the PS1 Synthetic photometry
+database (based on 2MASS and USNO-B).  For objects brighter than the
+saturation limit, the Synthetic photometry has been used for the mean
+magnitudes (these can be identified by having bit 0x04 raised in the
+mean filter flags).  Objects which used ubercal photometry have the
+bit 0x08 raised in the mean filter flags.  
+
+This database has also been merged with the 2MASS, WISE, and
+SuperCOSMOS databases.  The following photcodes are used for those
+external photometric sources:
+
+<table class="page">
+<tr><th> Source </th><th> Photcode </th></tr>
+<tr><td> 2MASS_J </td><td> 2011 </td></tr>   
+<tr><td> 2MASS_H </td><td> 2012 </td></tr>   
+<tr><td> 2MASS_K </td><td> 2013 </td></tr>   
+<tr><td> WISE_W1 </td><td> 2014 </td></tr>   
+<tr><td> WISE_W2 </td><td> 2015 </td></tr>   
+<tr><td> WISE_W3 </td><td> 2016 </td></tr>   
+<tr><td> WISE_W4 </td><td> 2017 </td></tr>   
+<tr><td> SYNTH.g </td><td> 3001 </td></tr>   
+<tr><td> SYNTH.r </td><td> 3002 </td></tr>   
+<tr><td> SYNTH.i </td><td> 3003 </td></tr>   
+<tr><td> SYNTH.z </td><td> 3004 </td></tr>   
+<tr><td> SYNTH.y </td><td> 3005 </td></tr>
+<tr><td> SCOS.103a.E       </td><td>      1150  </td></tr>
+<tr><td> SCOS.4414.OG590   </td><td>      1151  </td></tr>
+<tr><td> SCOS.4415.OG590   </td><td>      1152  </td></tr>
+<tr><td> SCOS.IIIaF.OG590  </td><td>      1153  </td></tr>
+<tr><td> SCOS.IIIaF.RG610  </td><td>      1154  </td></tr>
+<tr><td> SCOS.IIIaF.RG630  </td><td>      1155  </td></tr>
+<tr><td> SCOS.IIIaJ.GG385  </td><td>      1156  </td></tr>
+<tr><td> SCOS.IIIaJ.GG395  </td><td>      1157  </td></tr>
+<tr><td> SCOS.IVN.RG715    </td><td>      1158  </td></tr>
+<tr><td> SCOS.IVN.RG9      </td><td>      1159  </td></tr>
+</table>
+
+<img width=1000px src="relphot.20120528/sigma.i.ubercal.20120528.v0.png"><br>
+Map of the mean per-star residual (inst mag brighter than -10) for
+i-band (ubercal data only).
+<br>
+
+<img width=1000px src="relphot.20120528/sigma.g.ubercal.20120528.v0.png"><br>
+Map of the mean per-star residual (inst mag brighter than -10) for
+g-band (ubercal data only).
+<br>
+
+<h3>Comparison with 2MASS</h3>
+
+The plots below compare the PS1 grizy photometry with 2MASS photometry
+by examining the location of the color-color locus for early (&lt; K0)
+main sequence stars.
+
+For each pixel (0.5 degree on a side), I select all objects with PS1 r
+&lt; 20 and detected JHK magnitudes, keeping only those with S/N in
+the mean &gt; 50 and standard deviations less than 0.05 magnitudes.  I
+then fit the stellar locus in g-r,r-i for the g-r range 0.2 to 1.0,
+and keep only objects that fall within 0.05 of that (linear) stellar
+locus fit.<br>
+
+I then fit the stellar locus with a line in each of the color-color diagrams
+g-i,i-J; g-i,i-H; g-i,i-K.  I measure the mean i-J color expected from
+the fit for stars with g-i = 0.5.  The figures below show the maps of
+the i-J, i-H, and i-K offsets as well as the J-H and H-K offsets at
+g-i = 0.5.  The center of these maps is RA,DEC = 0,0, (east is left,
+north is up).  The pixels are 0.5 degrees on a side.<br> 
+
+These maps show three main features.  The Galactic Plane is quite
+clear, and not surprising: this test is particularly sensitive to
+reddening. <br>
+
+Several large scale patches are also visible (eg, the black patch near
+RA ~ 150 deg).  Disappointingly, these correspond to areas without
+good ubercal ties -- in other words, these are regions in which the
+data were obtained in non-photometric conditions.  This shows the
+limitation of using relative photometry to tie across individual
+exposures.  If the exposures have an extinction gradient, the
+correction far from the photometrically tied region can drift from the
+correct value.  The largest region at RA ~ 150 matches a section with
+poor i-band photometry and has a depth of roughly 0.1 magnitudes in
+i-J.  Assuming this is completely due to i-band errors, this
+corresponds to about 0.06 magnitudes of drift to the center of this
+region. <br>
+
+The third pattern is at a lower level of intensity: N-S strips with
+roughly E-W bands.  They are most noticable in K and H-K.  These
+appear to correspond well to the 2MASS scanning pattern, and have an
+amplitude corresponding to about 0.02 - 0.04 magnitudes of offset in
+K.  <br>
+
+<img width=1000px src="relphot.20120528/dJ.allsky.20120528.v3.png"><br>
+Map of the i-J color at g-i = 0.5. 
+<br>
+
+<img width=1000px src="relphot.20120528/dH.allsky.20120528.v3.png"><br>
+Map of the i-H color at g-i = 0.5. 
+<br>
+
+<img width=1000px src="relphot.20120528/dK.allsky.20120528.v3.png"><br>
+Map of the i-K color at g-i = 0.5. 
+<br>
+
+Combinations of the above maps can highlight any problems in 2MASS
+which are driven by the color rather than the mean magnitudes.
+
+<img width=1000px src="relphot.20120528/dJH.allsky.20120528.v3.png"><br>
+Map of the J-H color at g-i = 0.5. 
+<br>
+
+<img width=1000px src="relphot.20120528/dHK.allsky.20120528.v3.png"><br>
+Map of the H-K color at g-i = 0.5. 
+<br>
Index: branches/meh_branches/ppstack_test/ippData/htdocs/help.txt
===================================================================
--- branches/meh_branches/ppstack_test/ippData/htdocs/help.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippData/htdocs/help.txt	(revision 34041)
@@ -0,0 +1,13 @@
+<h2>DVO Distribution Help</h2>
+
+<p> These web pages contain the PS1 DVO databases, making it easy to
+download entire databases with the 'wget' command.  It is necessary to
+include an authorized user and the password.</p>
+
+
+Use a wget command on the directory of interest, eg:
+
+<tt> wget --user=ps1sc --password=(PASS) -r -np -nH http://dvodist.ipp.ifa.hawaii.edu/3pi.20120509 </tt>
+
+Ask your DRAVG representative if you need the password.
+
Index: branches/meh_branches/ppstack_test/ippData/htdocs/index.info.txt
===================================================================
--- branches/meh_branches/ppstack_test/ippData/htdocs/index.info.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippData/htdocs/index.info.txt	(revision 34041)
@@ -0,0 +1,5 @@
+<h2>Pan-STARRS 1 Data Distribution Server</h2>
+
+<p> These web pages contain the PS1 data for public release</p>
+
+<br><br>
Index: branches/meh_branches/ppstack_test/ippData/htdocs/index.php
===================================================================
--- branches/meh_branches/ppstack_test/ippData/htdocs/index.php	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippData/htdocs/index.php	(revision 34041)
@@ -0,0 +1,59 @@
+<?php 
+
+$utils = "/export/ipp002.0/www/localhost/utils";
+
+include "$utils/ipp.php";
+
+// if we come in directly, the top-level directory should be /dvodist
+// if we come in from the ippops1 proxy, we need to set the root to /
+$ifaProxy = "128.171.227.208";
+
+// is the request coming from our proxY?
+// $fromProxy = $_SERVER['HTTP_X_FORWARDED_FOR'] && ($_SERVER['REMOTE_ADDR'] == $ifaProxy);
+// if ($fromProxy) ... 
+$rootdir = "";
+
+menu("$utils/ipp.menu.dat", 'DVO Distribution Server', $rootdir, "$rootdir/ipp.css", '', '');
+
+$script = basename($_SERVER[SCRIPT_NAME]);
+
+if ($script == "index.php") {
+  verbatim ("index.info.txt");
+  dirlist ("index.txt");
+ }
+
+if ($script == "docs.php") {
+  verbatim ("docs.txt");
+ }
+
+if ($script == "help.php") {
+  verbatim ("help.txt");
+ }
+
+menu_end();
+?>
+
+// generic proxy detection
+// if ( $_SERVER['HTTP_X_FORWARDED_FOR']
+//      || $_SERVER['HTTP_X_FORWARDED']
+//      || $_SERVER['HTTP_FORWARDED_FOR']
+//      || $_SERVER['HTTP_CLIENT_IP']
+//      || $_SERVER['HTTP_VIA']
+//      || in_array($_SERVER['REMOTE_PORT'], array(8080,80,6588,8000,3128,553,554))
+//      || @fsockopen($_SERVER['REMOTE_ADDR'], 80, $errno, $errstr, 30))
+//   {
+//     exit('Proxy detected');
+//   }
+
+// list server info:
+// $varlist = array ('SCRIPT_NAME', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_FORWARDED_FOR', 'HTTP_CLIENT_IP', 'HTTP_VIA', 'REMOTE_ADDR');
+// 
+// foreach ($varlist as $name) {
+//   echo "$name : $_SERVER[$name]<br>\n";
+// }
+// 
+// echo "get list<br>\n";
+// foreach ($_GET as $key => $value) {
+//   echo "$key : $value<br>\n";
+// }
+
Index: branches/meh_branches/ppstack_test/ippData/htdocs/index.txt
===================================================================
--- branches/meh_branches/ppstack_test/ippData/htdocs/index.txt	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippData/htdocs/index.txt	(revision 34041)
@@ -0,0 +1,4 @@
+# Name                   : link                       : type  : style : info
+Data Product  	         : none                       : plain : title : Comment
+PS1 Photometry Ladder v0 : photladder.20120604.subset : dir   : dir1  : Photometry Ladder released 2012.06.07 (EAM UPDATE)
+Synthetic Photometry DVO : catdir.syn.test            : dir   : dir1  : Demonstration DVO Database
Index: branches/meh_branches/ppstack_test/ippData/htdocs/ipp.css
===================================================================
--- branches/meh_branches/ppstack_test/ippData/htdocs/ipp.css	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippData/htdocs/ipp.css	(revision 34041)
@@ -0,0 +1,421 @@
+
+/* internal link line: c0d0d0 : d8d0f0
+   external link line: 303070 
+   border:             0080c0
+ */
+
+body  { 
+    background-color: #a0d0e0; 
+    padding: 5px; 
+    margin: 5px
+}
+
+h1 {
+    margin-top: 0.05em;
+    margin-bottom: 0.05em;
+}
+
+h2 {
+    margin-top: 0.05em;
+    margin-bottom: 0.05em;
+}
+
+h3 {
+    margin-top: 0.05em;
+    margin-bottom: 0.05em;
+}
+
+h4 {
+    margin-top: 0.05em;
+    margin-bottom: 0.05em;
+}
+
+div.debug {
+    height: 15%;
+    background-color: #ffffaa;
+    overflow: auto;
+}
+
+a:link, a:visited, a:active { 
+    text-decoration: underline; 
+    font-weight: bold; 
+    color: #ff0000
+}
+
+a.button      { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #000000; 
+    background: #0080c0
+}
+a.menutop     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #ffffff
+}
+a.menutops    { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #80f0ff
+}
+a.menuext     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #ffffff
+}
+a.menulink    { 
+    text-decoration: none; 
+    font-weight: normal; 
+    color: #000000
+}
+a.menuselect  { 
+    text-decoration: none; 
+    font-weight: normal; 
+    color: #0000ff
+}
+a.piclink     { 
+    text-decoration: none; 
+    font-weight: normal; 
+    color: #0080c0
+}
+
+table.dirlist { text-align: left; 
+             font-size: small; 
+	     font-weight: normal; 
+	     background: #303030; 
+	     border: 1px solid #000000; 
+	     padding: 1px; 
+}
+
+a.dir1     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #800080
+}
+a.dir2     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #800080
+}
+a.file1     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #800080
+}
+a.file2     { 
+    text-decoration: none; 
+    font-weight: bold;   
+    color: #800080
+}
+tr.dir1    { 
+    text-align: left; 
+    background: #d0d0d0; 
+    font-size: small; 
+    color: #000000; 
+    padding: 1px; 
+}
+tr.dir2    { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: small; 
+    color: #000000; 
+    padding: 1px; 
+}
+tr.file1    { 
+    text-align: left; 
+    background: #d0d0d0; 
+    font-size: small; 
+    color: #000000; 
+    padding: 2px; 
+}
+tr.file2    { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: small; 
+    color: #000000; 
+    padding: 2px; 
+}
+tr.break    { 
+    text-align: left; 
+    background: #0080c0; 
+    font-size: small; 
+    color: #ffffff; 
+    padding-top: 4px; 
+}
+tr.title    { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: medium; 
+    color: #000000; 
+    padding: 2px; 
+    padding-top: 4px; 
+    padding-bottom: 4px; 
+}
+
+td.menutop    { 
+    text-align: left; 
+    background: #0080c0; 
+    font-size: small; 
+    color: #ffffff; 
+    padding: 2px; 
+}
+td.menutops   { 
+    text-align: left; 
+    background: #0080c0; 
+    font-size: small; 
+    color: #000000; 
+    padding: 2px; 
+}
+td.menuext    { 
+    text-align: left; 
+    background: #303070; 
+    font-size: small; 
+    color: #ffffff; 
+    padding: 2px; 
+}
+td.menulink   { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: small; 
+    color: #000000; 
+    padding: 2px; 
+    font-weight: normal; 
+    text-indent: 0px; 
+}
+td.menuselect { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: small; 
+    color: #ff0000; 
+    padding: 2px; 
+    font-weight: normal; 
+    text-indent: 0px; 
+}
+td.menuline   { 
+    text-align: left; 
+    background: #d0d0ff; 
+    font-size: small; 
+    color: #000000; 
+    padding: 2px; 
+    font-weight: normal; 
+    text-indent: 0px; 
+}
+
+td.picture    { 
+    text-align: left; 
+    background: #00ffff; 
+    font-size: small; 
+    color: #ff0000; 
+    padding: 0px; 
+    text-indent: 2px; 
+    font-weight: normal; 
+}
+td.piclink    { 
+    text-align: left; 
+    background: #0080c0; 
+    font-size: small; 
+    color: #ff0000; 
+    padding: 0px; 
+    text-indent: 0px; 
+    font-weight: normal; 
+}
+
+table.page { 
+    border: 0px solid #0080c0; 
+    background: #a0d0e0; 
+    padding: 0px
+}
+
+td.title { 
+    background-color: #ff0000; 
+    padding: 5px; 
+    font-size: x-large; 
+    text-align: left; 
+    vertical-align: top
+}
+
+td.body  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #d0d0ff; 
+	   background-color: #d0d0ff; 
+	   border: 3px solid #0080c0; 
+	   padding: 5px; 
+}
+
+table.menu { 
+    text-align: left; 
+    font-size: small; 
+    font-weight: normal; 
+    background: #ff0000; 
+    border: 3px solid #0080c0; 
+    padding: 0px; 
+}
+
+table.select { 
+    text-align: left; 
+    font-size: small; 
+    font-weight: normal; 
+    background: #0080c0; 
+    border: 1px solid #0080c0; 
+    padding: 0px; 
+}
+
+td.select  { 
+    text-align: left; 
+    font-size: small;  
+    font-weight: bold;  
+    vertical-align: top;
+    color: #ffffff; 
+    background: #0080c0; 
+    background-color: #0080c0; 
+    border: 2px solid #0080c0; 
+    padding: 2px; 
+}
+
+th.select  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: bold;  
+           vertical-align: top;
+	   color: #000000; 
+	   background: #d0d0ff; 
+	   background-color: #d0d0ff; 
+	   border: 0px solid #0080c0; 
+	   padding: 2px; 
+}
+
+table.list { text-align: left; 
+             font-size: small; 
+	     font-weight: normal; 
+	     background: #d0d0ff; 
+	     border: 2px solid #ffffff; 
+	     padding: 0px; 
+}
+
+td.list  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #d0d0ff; 
+	   background-color: #d0d0ff; 
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.list_off  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #a0a0a0; 
+	   background-color: #a0a0a0;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.list_drop  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #a0a0a0; 
+	   background-color: #a0a0a0;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.list_run  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #ffa0a0; 
+	   background-color: #ffa0a0;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.det_off  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #a0a0a0; 
+	   background-color: #a0a0a0;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.det_drop  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #a0a0a0; 
+	   background-color: #ffa0a0;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.det_add  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: normal;  
+           vertical-align: top;
+	   background: #ffa0a0; 
+	   background-color: #a0a0ff;
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+th.list  { 
+           text-align: left; 
+           font-size: small;  
+           font-weight: bold;  
+           vertical-align: top;
+	   background: #d0d0ff; 
+	   background-color: #d0d0ff; 
+	   border: 2px solid #000000; 
+	   padding: 2px; 
+}
+
+td.ul3x2    { 
+    text-align: right; 
+    vertical-align: bottom;
+    padding: 0px; 
+    text-indent: 0px; 
+}
+td.uc3x2    { 
+    text-align: center; 
+    vertical-align: bottom;
+    padding: 0px; 
+    text-indent: 0px; 
+}
+td.ur3x2    { 
+    text-align: left; 
+    vertical-align: bottom;
+    padding: 0px; 
+    text-indent: 0px; 
+}
+td.ll3x2    { 
+    text-align: right; 
+    vertical-align: top;
+    padding: 0px; 
+    text-indent: 0px; 
+}
+td.lc3x2    { 
+    text-align: center; 
+    vertical-align: top;
+    padding: 0px; 
+    text-indent: 0px; 
+}
+td.lr3x2    { 
+    text-align: left; 
+    vertical-align: top;
+    padding: 0px; 
+    text-indent: 0px; 
+}
Index: branches/meh_branches/ppstack_test/ippData/scripts/mkindex.sh
===================================================================
--- branches/meh_branches/ppstack_test/ippData/scripts/mkindex.sh	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippData/scripts/mkindex.sh	(revision 34041)
@@ -0,0 +1,37 @@
+#!/bin/csh -f 
+
+if ($#argv != 1) then
+  echo "USAGE: mkindex.sh (dir)"
+  exit 2
+endif
+
+set topdir = $argv[1]
+
+# this is weak: depends on root location
+ln -s /export/ipp002.0/www/localhost/htdocs/ippData/index.php $topdir/
+
+set file = `basename $topdir`
+echo "$file : $file : plain : title  : Title" > $topdir/index.txt
+echo "..    : ..    : dir   : dir2   : parent directory" >> $topdir/index.txt
+
+set N = 1
+foreach entry ($topdir/*)
+  set file = `basename $entry`
+  if ("$file" == "index.php") continue
+  if ("$file" == "index.txt") continue
+
+  if (-d $entry) then
+    echo "$file : $file : dir : dir$N : directory" >> $topdir/index.txt
+    /export/ipp002.0/www/localhost/scripts/mkindex.sh $entry
+  endif
+
+  if (-f $entry) then
+    echo "$file : $file : file : file$N : database file" >> $topdir/index.txt
+  endif
+
+  if ($N == 1) then
+    set N = 2
+  else
+    set N = 1
+  endif
+end
Index: branches/meh_branches/ppstack_test/ippData/utils/blank.html
===================================================================
--- branches/meh_branches/ppstack_test/ippData/utils/blank.html	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippData/utils/blank.html	(revision 34041)
@@ -0,0 +1,10 @@
+<html>
+<head>
+  <title> Load and Setup </title>
+</head>
+
+<link rel="STYLESHEET" HREF="ipp.css">
+<body>
+
+test index<br>
+</body></html>
Index: branches/meh_branches/ppstack_test/ippData/utils/ipp.menu.dat
===================================================================
--- branches/meh_branches/ppstack_test/ippData/utils/ipp.menu.dat	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippData/utils/ipp.menu.dat	(revision 34041)
@@ -0,0 +1,20 @@
+# style   | select-style | type    | menu line                    | link page       
+
+piclink   | piclink      | piclink | /PScolorlogo2.jpg            | http://panstarrs.ifa.hawaii.edu
+menuext   | menuext      | link    | Pan-STARRS public            | http://panstarrs.ifa.hawaii.edu
+menuext   | menuext      | link    | Pan-STARRS project           | http://panstarrs.ifa.hawaii.edu/project
+menuext   | menuext      | link    | Pan-STARRS IPP Wiki          | http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki
+menuext   | menuext      | link    | PS1SC Wiki                   | http://ps1sc.ifa.hawaii.edu/PS1wiki/index.php/Main_Page
+
+menutop   | menutop      | plain   | &nbsp;                       | 
+menutop   | menuselect   | link    | Pan-STARRS Data              | /index.php
+menutop   | menuselect   | link    | Documentation                | /docs.php
+menutop   | menuselect   | link    | Help                         | /help.php
+
+
+# we have four valid menu types: picture, piclink, link, plain
+# picture   | picture    | picture | PScolorlogo2.jpg             | none
+# piclink   | piclink    | piclink | PScolorlogo2.jpg             | http://panstarrs.ifa.hawaii.edu
+# menulink  | menuselect | link    | other page                   | notest.php     
+# menutop   | menutop    | plain   | foo bar                      | none            
+
Index: branches/meh_branches/ppstack_test/ippData/utils/ipp.php
===================================================================
--- branches/meh_branches/ppstack_test/ippData/utils/ipp.php	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippData/utils/ipp.php	(revision 34041)
@@ -0,0 +1,206 @@
+<?php
+
+global $realroot;
+$realroot = "/dvodist";
+
+function head ($title) {
+  echo "<head>\n";
+  echo "  <title> $title </title>\n";
+  /* JavaScript code */
+  echo "  <script type=\"text/javascript\">\n";
+  echo "  function changeCell(cellId, newContent){\n";
+  echo "    document.getElementById(cellId).innerHTML=newContent;\n";
+  echo "  }\n";
+  echo "  </script>\n";
+  echo "</head>\n\n";
+}
+
+function menu ($source, $title, $root, $sheet, $append, $project) {
+
+  echo "<html>\n";
+  head($title);
+  echo "<link rel=\"STYLESHEET\" HREF=\"$sheet\">\n";
+  echo "<body>\n";
+
+  if (! $project) { $project = "none"; }
+
+  // echo "<p style=\"font-size:50%\">host: $WWWHOST, db: $DBHOST</p>\n";
+  echo "<table class=page cellspacing=10px><tr><td valign=top>\n";
+  echo "<table class=menu cellspacing=0px>\n";
+
+  menulines ($source, $root, $append, $project);
+
+  echo '</table></td><td class="body" valign=top>', "\n\n";
+}
+
+function menulines ($source, $root, $append, $project) {
+
+  $file = fopen ($source, "r");
+
+  // loop over the lines in the file and generate lines in the menu
+  while ($line = fgetcsv ($file, 1024, "|")) {
+    if (ereg ('^[:blank:]*#', $line[0])) continue;
+    if (count($line) < 2) continue;
+
+    if (count($line) == 2) {
+      $value = trim($line[0]);
+      if ($value == "input") {
+        $value = trim($line[1]);
+        menulines ($value, $root, $append, $project);
+      }
+      continue;
+    }
+    if (count($line) != 5) continue;
+
+    $type = trim($line[2]);
+    $name = trim($line[3]);
+    $base = trim($line[4]);
+
+    if (preg_match ('|\$PROJECT|', $name)) {
+      $name = preg_replace ('|\$PROJECT|', $project, $name);
+    }
+
+    // append additional elements if needed
+    if ($append) {
+      $link = "$base" . "?" . $append;
+    } else {
+      $link = "$base";
+    }
+	
+    // prepend the rootdir if needed (reference to /)
+    if ($link[0] == '/') {
+      $link = $root . $link;
+    } 
+
+    global $realroot;
+
+    // hi-lite the current page (use select-style, not style)
+    $thisname = $_SERVER[SCRIPT_NAME]; 
+    $page = $realroot . $base;
+    if ($page == $thisname) {
+      $style = trim($line[1]);
+    } else { 
+      $style = trim($line[0]);
+    }       
+
+    switch ($type) { 
+    case 'plain':
+      echo "<tr><td class=\"$style\"> $name </td></tr>\n";  
+      break;
+    case 'picture':
+      // prepend the rootdir if needed (reference to /)
+      if ($name[0] == '/') {
+	$name = $root . $name;
+      } 
+      echo "<tr><td class=\"$style\"> <img src=\"$name\"> </td></tr>\n";     
+      break;
+    case 'piclink':
+      // prepend the rootdir if needed (reference to /)
+      if ($name[0] == '/') {
+	$name = $root . $name;
+      } 
+      echo "<tr><td class=\"$style\"> <a class=\"$style\" href=\"$link\"> <img class=\"$style\" src=\"$name\"> </a></td></tr>\n";     
+      break;
+    default:
+      echo "<tr><td class=\"$style\"> <a class=\"$style\" href=\"$link\"> $name </a></td></tr>\n";     
+      break;
+    } 
+  }
+  fclose ($file);
+}
+
+function menu_end () { 
+  echo "</td></tr></table>\n";
+  echo "</body></html>\n\n";
+  exit ();
+}
+
+function dirlist ($source) {
+  if (!file_exists($source)) return;
+
+  $file = fopen ($source, "r");
+  if (!$file) return;
+
+  echo "<table class=\"dirlist\">\n";
+
+  // loop over the lines in the file and generate lines in the menu
+  while ($line = fgetcsv ($file, 1024, ":")) {
+    if (ereg ('^[:blank:]*#', $line[0])) continue;
+    if (count($line) < 2) continue;
+
+    // allows nested entries..
+    // if (count($line) == 2) {
+    //   $value = trim($line[0]);
+    //   if ($value == "input") {
+    //     $value = trim($line[1]);
+    //     menulines ($value, $root, $append, $project);
+    //   }
+    //   continue;
+    // }
+
+    if (count($line) != 5) continue;
+
+    $name  = trim($line[0]);
+    $link  = trim($line[1]);
+    $type  = trim($line[2]);
+    $style = trim($line[3]);
+    $info  = trim($line[4]);
+
+    switch ($type) { 
+    case 'plain':
+      echo "<tr class=\"$style\"><td>$name</td><td>$info</td></tr>\n";  
+      break;
+    case 'dir':
+      echo "<tr class=\"$style\"><td><a class=\"$style\" href=\"$link\">$name</a></td><td>$info</td></tr>\n";
+      break;
+    default:
+      echo "<tr class=\"$style\"><td><a class=\"$style\" href=\"$link\">$name</a></td><td>$info</td></tr>\n";
+      break;
+    } 
+  }
+  fclose ($file);
+  echo "</table>\n";
+}
+
+function verbatim ($source) {
+  if (!file_exists($source)) return;
+
+  $file = fopen ($source, "r");
+  if (!$file) return;
+
+  $addbreak = 0;
+
+  // loop over the lines in the file and generate lines in the menu
+  while ($line = fgets ($file, 1024)) {
+    if (strlen($line) < 2) {
+      if (!$addbreak) {
+	echo "<br>\n";
+      }
+      $addbreak = 1;
+      continue;
+    }
+    $Nc = strlen($line);
+    echo "$line\n";
+    $addbreak = 0;
+  } 
+  fclose ($file);
+}
+
+//////////////////////////////////////////////////////////////////////////
+// Return the value associated to the key (GET or POST method)
+// If convertKeyToHtmlkey is true, the key is converted to a 
+// so-called HTML, i.e. the key where '.' are replaced by '_'
+// (e.g. the conversion of 'f.o.o.b_a_r' is 'f_o_o_b_a_r'.
+//
+function get_value_from_key ($key, $convertKeyToHtmlkey) {
+  if ($convertKeyToHtmlkey) {
+    $htmlkey = preg_replace ('|\.|', '_', $key);
+  } else {
+    $htmlkey = $key;
+  }
+  if ($_SERVER[REQUEST_METHOD] == 'GET') { 
+    return $_GET[$htmlkey]; 
+  } else {
+    return $_POST[$htmlkey]; 
+  }
+}
Index: branches/meh_branches/ppstack_test/ippData/utils/phptest.php
===================================================================
--- branches/meh_branches/ppstack_test/ippData/utils/phptest.php	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippData/utils/phptest.php	(revision 34041)
@@ -0,0 +1,28 @@
+<?php 
+
+$utils = "/export/ipp002.0/www/localhost/utils";
+
+include "$utils/ipp.php";
+
+menu("$utils/ipp.menu.dat", 'test.page', $rootdir, "$rootdir/ipp.css", '', '');
+
+
+$varlist = array ('SERVER_NAME', 'GATEWAY_INTERFACE', 'SERVER_PROTOCOL',
+'SERVER_PORT', 'REQUEST_METHOD', 'PATH_INFO', 'PATH_TRANSLATED', 'SCRIPT_NAME',
+'QUERY_STRING', 'REMOTE_HOST', 'REMOTE_ADDR', 'AUTH_TYPE', 'REMOTE_USER',
+'REMOTE_IDENT', 'CONTENT_TYPE', 'CONTENT_LENGTH');
+
+foreach ($varlist as $name) {
+  echo "$name : $_SERVER[$name]<br>\n";
+}
+
+echo "get list<br>\n";
+foreach ($_GET as $key => $value) {
+  echo "$key : $value<br>\n";
+}
+
+$value = system ("ls /etc", $status);
+echo "status: $status\n";
+
+menu_end();
+?>
Index: branches/meh_branches/ppstack_test/ippMonitor/INSTALL
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/INSTALL	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/INSTALL	(revision 34041)
@@ -15,4 +15,11 @@
 # note that we have a special version for ippmonitor without $PSCONFIG/$PSCONFDIR values:
 ipp@ippdb03 / ippdb03 example:
- psconfigure --dbhost ippdb01 --dbuser ipp --dbpass ipp --htdocs /var/www/localhost/htdocs --site ~/ippconfig/ippmonitor.config
+# psconfigure --dbhost ippdb01 --dbuser ipp --dbpass ipp --htdocs /var/www/localhost/htdocs --site ~/ippconfig/ippmonitor.config
 
+#ipp@ippdb03 / ippdb01 example:
+ psconfigure --dbhost ippdb03 --dbuser ipp --dbpass ipp --htdocs /var/www/localhost/htdocs --site ~/ippconfig/ippmonitor.config
+
+#
+# Regular installation on ippMonitor.ifa.hawaii.edu
+# Note: we use a 'science databases (replication) slave' and the ippMonitor read-only account to connect to that database
+psconfigure --dbhost scidbs1 --dbuser ippMonitor --dbpass ippMonitor --htdocs /var/www/localhost/htdocs --site ~/ippconfig/ippmonitor.config
Index: branches/meh_branches/ppstack_test/ippMonitor/Makefile.in
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/Makefile.in	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/Makefile.in	(revision 34041)
@@ -47,4 +47,6 @@
 $(DESTWWW)/ipp.dvodb.dat \
 $(DESTWWW)/ipp.dvodb.php \
+$(DESTWWW)/ipp.czar.dat \
+$(DESTWWW)/ipp.czar.php \
 $(DESTWWW)/phptest.php \
 $(DESTWWW)/site.php \
@@ -222,6 +224,12 @@
 $(DESTWWW)/minidvodbCopy.php \
 $(DESTWWW)/minidvodbProcessed.php \
+$(DESTWWW)/mergedvodbRun.php \
+$(DESTWWW)/mergedvodbCopy.php \
+$(DESTWWW)/mergedvodbProcessed.php \
+$(DESTWWW)/dvodbStatus.php \
+$(DESTWWW)/dvodbFaulted.php \
 $(DESTWWW)/addRunRun.php \
 $(DESTWWW)/addRunProcessed.php \
+$(DESTWWW)/addRunSummary.php \
 $(DESTWWW)/lapSequenceSummary.php \
 $(DESTWWW)/lapRuns.php \
Index: branches/meh_branches/ppstack_test/ippMonitor/czartool/czarDbSchema.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/czartool/czarDbSchema.sql	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippMonitor/czartool/czarDbSchema.sql	(revision 34041)
@@ -0,0 +1,468 @@
+-- MySQL dump 10.11
+--
+-- Host: ippdb01    Database: czardb
+-- ------------------------------------------------------
+-- Server version	5.0.77-log
+
+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
+/*!40101 SET NAMES utf8 */;
+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
+/*!40103 SET TIME_ZONE='+00:00' */;
+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
+
+--
+-- Table structure for table `burntool`
+--
+
+DROP TABLE IF EXISTS `burntool`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `burntool` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  KEY `burntoolIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `cam`
+--
+
+DROP TABLE IF EXISTS `cam`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `cam` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `camIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `chip`
+--
+
+DROP TABLE IF EXISTS `chip`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `chip` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `chipIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `cluster_space`
+--
+
+DROP TABLE IF EXISTS `cluster_space`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `cluster_space` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `total` float default NULL,
+  `available` float default NULL,
+  `used` float default NULL,
+  `hostsOver98` smallint(6) default NULL,
+  KEY `clusterSpaceIndex` (`timestamp`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `current_labels`
+--
+
+DROP TABLE IF EXISTS `current_labels`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `current_labels` (
+  `server` varchar(128) default NULL,
+  `label` varchar(128) default NULL,
+  `priority` int(11) NOT NULL default '0'
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `deleted_datastore`
+--
+
+DROP TABLE IF EXISTS `deleted_datastore`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `deleted_datastore` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `ipptopsps_deleted_datastoreIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `deleted_dxlayer`
+--
+
+DROP TABLE IF EXISTS `deleted_dxlayer`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `deleted_dxlayer` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `ipptopsps_deleted_dxlayerIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `deleted_local`
+--
+
+DROP TABLE IF EXISTS `deleted_local`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `deleted_local` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `ipptopsps_deleted_local` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `diff`
+--
+
+DROP TABLE IF EXISTS `diff`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `diff` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `diffIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `dist`
+--
+
+DROP TABLE IF EXISTS `dist`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `dist` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `distIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `fake`
+--
+
+DROP TABLE IF EXISTS `fake`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `fake` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `fakeIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `hosts`
+--
+
+DROP TABLE IF EXISTS `hosts`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `hosts` (
+  `host` varchar(128) default NULL,
+  `total` float default NULL,
+  `available` float default NULL,
+  `used` float default NULL,
+  `writable` tinyint(4) NOT NULL default '0',
+  `readable` tinyint(4) NOT NULL default '0'
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `loaded_to_ODM`
+--
+
+DROP TABLE IF EXISTS `loaded_to_ODM`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `loaded_to_ODM` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `ipptopsps_loaded_to_ODMIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `loaded_to_datastore`
+--
+
+DROP TABLE IF EXISTS `loaded_to_datastore`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `loaded_to_datastore` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `ipptopsps_loaded_to_datastoreIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `magic`
+--
+
+DROP TABLE IF EXISTS `magic`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `magic` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `magicIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `magicDS`
+--
+
+DROP TABLE IF EXISTS `magicDS`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `magicDS` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `magicDSIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `merge_worthy`
+--
+
+DROP TABLE IF EXISTS `merge_worthy`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `merge_worthy` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `ipptopsps_merge_worthyIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `merged`
+--
+
+DROP TABLE IF EXISTS `merged`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `merged` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `ipptopsps_mergedIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `nightlyscience`
+--
+
+DROP TABLE IF EXISTS `nightlyscience`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `nightlyscience` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `status` varchar(128) default 'NONE'
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `processed`
+--
+
+DROP TABLE IF EXISTS `processed`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `processed` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `ipptopsps_processedIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `pub`
+--
+
+DROP TABLE IF EXISTS `pub`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `pub` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  KEY `pubIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `reverts`
+--
+
+DROP TABLE IF EXISTS `reverts`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `reverts` (
+  `stage` varchar(128) default NULL,
+  `reverting` tinyint(4) default NULL
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `revision`
+--
+
+DROP TABLE IF EXISTS `revision`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `revision` (
+  `revision` int(11) NOT NULL default '0',
+  `created` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  PRIMARY KEY  (`revision`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `server_dates`
+--
+
+DROP TABLE IF EXISTS `server_dates`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `server_dates` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `server` varchar(64) default 'NONE',
+  `date` varchar(64) default 'NONE'
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `servers`
+--
+
+DROP TABLE IF EXISTS `servers`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `servers` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `server` varchar(128) default NULL,
+  `alive` tinyint(4) default NULL,
+  `running` tinyint(4) default NULL,
+  KEY `serverIndex` (`timestamp`,`server`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `stack`
+--
+
+DROP TABLE IF EXISTS `stack`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `stack` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `stackIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `warp`
+--
+
+DROP TABLE IF EXISTS `warp`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `warp` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `label` varchar(128) default 'NONE',
+  `pending` bigint(20) NOT NULL,
+  `faults` bigint(20) NOT NULL,
+  `processed` bigint(20) NOT NULL default '0',
+  KEY `warpIndex` (`timestamp`,`label`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
+
+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
+
+-- Dump completed on 2012-03-06  6:00:30
Index: branches/meh_branches/ppstack_test/ippMonitor/czartool/czarpoll.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/czartool/czarpoll.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/czartool/czarpoll.pl	(revision 34041)
@@ -38,5 +38,4 @@
 
 my @stages = (
-        "burntool", 
         "chip", 
         "cam", 
@@ -44,9 +43,9 @@
         "warp", 
         "stack", 
+        "staticsky", 
         "diff", 
-        "magic", 
-        "magicDS", 
         "dist", 
-        "pub");
+        "pub",
+        "chipbackground");
 
 my @ippToPspsStages = (
Index: branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool.pl	(revision 34041)
@@ -32,5 +32,5 @@
 my @publishingLabels = undef;
 
-my @stages = ("chip", "cam", "fake", "warp", "stack", "diff", "magic", "magicDS", "dist", "pub"); 
+my @stages = ("chip", "cam", "fake", "warp", "stack", "staticsky", "diff", "dist", "pub", "chipbackground"); 
 promptPoll();
 
@@ -155,13 +155,25 @@
 
     chomp($label);
-
-    printf("\n+----------------------------------------------------------------------------------------------------------------------------------------------+\n");
-    printf("|                                                         %32s                                                     |\n", $label);
-    printf("+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+\n");
-    printf("|   state    |    chip    |    cam     |    fake    |    warp    |   stack    |    diff    |   magic    |  destreak  |    dist    |   publish  |\n");
-    printf("+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+\n");
+    my $stage;
+
+    printf("\n|  %32s  \n", $label);
+    printf("+------------+");
+    foreach $stage (@stages) {
+        print "--------------+"
+    }
+    printf("\n");
+    printf("|   state    |");
+    foreach $stage (@stages) {
+
+        printf("%14s|", $stage)
+    }
+    printf("\n");
+    printf("+------------+");
+    foreach $stage (@stages) {
+        print "--------------+"
+    }
+    printf("\n");
 
     my $state;
-    my $stage;
     my $i=0;
     foreach $state (@states) {
@@ -172,5 +184,5 @@
         foreach $stage (@stages) {
 
-            printf("| %10s ", getStateAndFaultsString($label, $state, $stage));
+            printf("|%14s", getStateAndFaultsString($label, $state, $stage));
         }
 
@@ -179,5 +191,9 @@
     }
 
-    printf("+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+\n");
+    printf("+------------+");
+    foreach $stage (@stages) {
+        print "--------------+"
+    }
+    printf("\n");
 
 }
@@ -191,9 +207,13 @@
     my ($state) = @_;
 #print time, $/;
-    printf("\n+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+\n");
-    printf("|                                                                                         %10s (any faults are shown in parentheses)                                                                 |\n", $state);
-    printf("+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------+\n");
-    printf("| no  |              label               | distributing? |  publishing?  |    chip    |    cam     |    fake    |    warp    |   stack    |    diff    |   magic    |  destreak  |    dist    |   publish  |\n");
-    printf("+-----+----------------------------------+---------------+---------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+\n");
+    my $stage;
+
+    printf("|\n");
+    printf("+-----+----------------------------------+---------------+---------------+");
+    foreach $stage (@stages) {
+        print "--------------+"
+    }
+    printf("\n");
+    printf("| no  |              label               | distributing? |  publishing?  |");
 
     my $stdsLabel;
@@ -202,6 +222,16 @@
     my $distributing;
     my $publishing;
-    my $stage;
     my $i=1;
+    foreach $stage (@stages) {
+
+        printf("%14s|", $stage)
+    }
+    printf("\n");
+    printf("+-----+----------------------------------+---------------+---------------+");
+    foreach $stage (@stages) {
+        print "--------------+"
+    }
+    printf("\n");
+
     foreach $stdsLabel (@stdscienceLabels) {
 
@@ -225,5 +255,5 @@
         foreach $stage (@stages) {
 
-            printf("| %10s ", getStateAndFaultsString($stdsLabel, $state, $stage));
+            printf("|%14s", getStateAndFaultsString($stdsLabel, $state, $stage));
         }
 
@@ -232,5 +262,9 @@
     }
 
-    printf("+-----+----------------------------------+---------------+---------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+------------+\n");
+    printf("+-----+----------------------------------+---------------+---------------+");
+    foreach $stage (@stages) {
+        print "--------------+"
+    }
+    printf("\n");
 
 }
Index: branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/CzarDb.pm
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/CzarDb.pm	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/CzarDb.pm	(revision 34041)
@@ -9,5 +9,4 @@
 
 my @stages = (
-        "burntool", 
         "chip", 
         "cam", 
@@ -16,8 +15,7 @@
         "stack", 
         "diff", 
-        "magic", 
-        "magicDS", 
         "dist", 
-        "pub"); # TODO put elsewhere
+        "pub",
+        "chipbackground"); # TODO put elsewhere
 
 my @ippToPspsStages = (
Index: branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/DayMetrics.pm
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/DayMetrics.pm	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/DayMetrics.pm	(revision 34041)
@@ -40,5 +40,5 @@
     $self->{begin} =  "$yesterday " . $self->{config}->getMetricsStartTime();
     $self->{end} = $self->{czarDb}->addInterval($self->{begin}, "1 DAY");
-    $self->{burntoolEnd} = $self->{czarDb}->addInterval($self->{begin}, "12 HOUR");
+    $self->{chipEnd} = $self->{czarDb}->addInterval($self->{begin}, "12 HOUR");
 
     # create path, dir and html file
@@ -67,8 +67,8 @@
     my $htmlFile = $self->{htmlFile};
 
-    # summit and burntool exposures
+    # summit and chip exposures
     my $summitExposures = $self->{gpc1Db}->countScienceExposuresFromLastNight($self->{day});
-    my $burntoolMetrics = new czartool::StageMetrics("burntool", "all_stdscience_labels", $self->{begin}, $self->{burntoolEnd});
-    $self->{czarDb}->runAnalysis($burntoolMetrics);
+    my $chipMetrics = new czartool::StageMetrics("chip", "all_stdscience_labels", $self->{begin}, $self->{chipEnd});
+    $self->{czarDb}->runAnalysis($chipMetrics);
 
     my $previousDay = $self->{czarDb}->subtractInterval($self->{day}, "1 DAY");
@@ -78,6 +78,6 @@
     print $htmlFile "<a href=\"../$previousDay/index.html\"> \< previous day</a> | <a href=\"../index.html\">all</a> | <a href=\"../$nextDay/index.html\">next day \></a><br>\n";
     print $htmlFile "Measured from $self->{begin} to $self->{end} HST<br>\n";
-    printf ( $htmlFile "%d exposures taken on summit last night, %d through burntool today</h5>\n", 
-            $summitExposures, $burntoolMetrics->getProcessed() ? $burntoolMetrics->getProcessed() : 0 );
+    printf ( $htmlFile "%d exposures taken on summit last night, %d through chip today</h5>\n", 
+            $summitExposures, $chipMetrics->getProcessed() ? $chipMetrics->getProcessed() : 0 );
     print $htmlFile "</head>\n";
     print $htmlFile "<body>\n";
@@ -98,5 +98,14 @@
     my %labelTables;
 
-    my @stages = ("burntool", "chip", "cam", "fake", "warp", "stack", "diff", "magic", "magicDS", "dist");
+    my @stages = (
+            "chip", 
+            "cam", 
+            "fake", 
+            "warp", 
+            "stack", 
+            "staticsky", 
+            "diff", 
+            "dist",
+            "chipbackground");
 
 
@@ -126,5 +135,5 @@
         foreach my $stage ( @stages ){
 
-            my $stageMetrics = new czartool::StageMetrics($stage, $label, $self->{begin}, ($stage eq "burntool") ? $self->{burntoolEnd} : $self->{end});
+            my $stageMetrics = new czartool::StageMetrics($stage, $label, $self->{begin}, ($stage eq "chip") ? $self->{chipEnd} : $self->{end});
             if (!$self->{czarDb}->runAnalysis($stageMetrics)) {next;}
 
@@ -253,5 +262,5 @@
     print $htmlFile "  <tr>\n";
     print $htmlFile "    <th>Survey</th>\n";
-    print $htmlFile "    <th>Started burntool</th>\n";
+    print $htmlFile "    <th>Started chip</th>\n";
     print $htmlFile "    <th>Finished distribution</th>\n";
     print $htmlFile "    <th>Time taken</th>\n";
@@ -260,5 +269,5 @@
     # OSS survey
     my ($started, $finished, $timeTaken) = undef;
-    $self->{czarDb}->getDayTimings("OSS.nightlyscience", "burntool", "diff", $self->{begin}, \$started, \$finished, \$timeTaken);
+    $self->{czarDb}->getDayTimings("OSS.nightlyscience", "chip", "diff", $self->{begin}, \$started, \$finished, \$timeTaken);
     $self->printSurveyDetails("OSS", $started, $finished, $timeTaken);
 
@@ -285,5 +294,5 @@
     foreach $mdf (@mdfs) {
 
-        if ($self->{czarDb}->getDayTimings($mdf, "burntool", "dist", $self->{begin}, \$started, \$finished, \$timeTaken)) {
+        if ($self->{czarDb}->getDayTimings($mdf, "chip", "dist", $self->{begin}, \$started, \$finished, \$timeTaken)) {
 
             if ($started && $self->{czarDb}->isBefore($started, $earliest)) {$earliest = $started; $haveStart = 1;}
@@ -299,5 +308,5 @@
     $self->printSurveyDetails("MDF", $earliest, $latest, $timeTaken);
 
-    $self->{czarDb}->getDayTimings("all_stdscience_labels", "burntool", "dist", $self->{begin}, \$started, \$finished, \$timeTaken);
+    $self->{czarDb}->getDayTimings("all_stdscience_labels", "chip", "dist", $self->{begin}, \$started, \$finished, \$timeTaken);
     $self->printSurveyDetails("All", $started, $finished, $timeTaken);
 
Index: branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/Gpc1Db.pm
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/Gpc1Db.pm	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/Gpc1Db.pm	(revision 34041)
@@ -24,4 +24,5 @@
     elsif ($stage eq "warp") {${$joinTable}="warpSkyfile";}
     elsif ($stage eq "stack") {${$joinTable}="stackSumSkyfile";}
+    elsif ($stage eq "staticsky") {${$id} = "sky_id"; ${$joinTable}="staticskyResult";}
     elsif ($stage eq "diff") {${$joinTable}="diffSkyfile";}
     elsif ($stage eq "magic") {${$joinTable}="magicNodeResult";}
@@ -29,4 +30,5 @@
     elsif ($stage eq "dist") {${$joinTable}="distComponent";}
     elsif ($stage eq "pub") {${$joinTable}="publishDone";}
+    elsif ($stage eq "chipbackground") {${$id}="chip_bg_id"; ${$joinTable}="chipBackgroundImfile";}
     else {
 
@@ -51,4 +53,5 @@
     elsif ($stage eq "warp" ) {return "warpRun";}
     elsif ($stage eq "stack" ) {return "stackRun";}
+    elsif ($stage eq "staticsky" ) {return "staticskyRun";}
     elsif ($stage eq "diff" ) {return "diffRun";}
     elsif ($stage eq "magic" ) {return "magicRun";}
@@ -56,4 +59,5 @@
     elsif ($stage eq "dist" ) {return "distRun";}
     elsif ($stage eq "pub" ) {return "publishRun";}
+    elsif ($stage eq "chipbackground" ) {return "chipBackgroundRun";}
 
     return "ERROR";
Index: branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/Plotter.pm
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/Plotter.pm	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/Plotter.pm	(revision 34041)
@@ -11,5 +11,4 @@
 
 my @allStages = (
-        "burntool", 
         "chip", 
         "cam", 
@@ -17,9 +16,9 @@
         "warp", 
         "stack", 
+        "staticsky", 
         "diff", 
-        "magic", 
-        "magicDS", 
         "dist", 
-        "pub");
+        "pub",
+        "chipbackground");
 
 my @allIppToPspsStages = (
Index: branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/czarconfig.xml
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/czarconfig.xml	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/czartool/czartool/czarconfig.xml	(revision 34041)
@@ -21,5 +21,5 @@
   <gpc1database>
     <name>gpc1</name>
-    <host>ippdb01</host>
+    <host>scidbs1</host>
     <user>ippMonitor</user>
     <password>ippMonitor</password>
@@ -29,5 +29,5 @@
   <czardatabase>
     <name>czardb</name>
-    <host>ippdb01</host>
+    <host>scidbm</host>
     <user>ipp</user>
     <password>ipp</password>
@@ -46,2 +46,3 @@
 
 </czarconfig>
+
Index: branches/meh_branches/ppstack_test/ippMonitor/czartool/roboczar.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/czartool/roboczar.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/czartool/roboczar.pl	(revision 34041)
@@ -21,5 +21,14 @@
 my $czarDb = $config->getCzarDbInstance();
 
-my @stages = ("burntool", "chip", "cam", "fake", "warp", "stack", "diff", "magic", "magicDS", "dist"); # TODO get from Pantasks
+my @stages = (
+        "chip", 
+        "cam", 
+        "fake", 
+        "warp", 
+        "stack", 
+        "staticsky", 
+        "diff", 
+        "dist",
+        "chipbackground"); # TODO get from Pantasks
 
 my @interestedServers = $config->getRoboczarInterestedServers();
Index: branches/meh_branches/ppstack_test/ippMonitor/def/addRunRun.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/addRunRun.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/addRunRun.d	(revision 34041)
@@ -9,19 +9,18 @@
 
 #     field                   size  format  name         show    link to                  extras
-FIELD distinct(addRun.add_id),        5, %d,     add ID
+FIELD addRun.add_id,       5, %d,     addID
 FIELD addRun.stage,        5, %s,     stage
-FIELD addRun.stage_id,          5, %d,     stage ID
-FIELD addRun.add_id,        5, %d,     add ID
+FIELD addRun.stage_id,     5, %d,     stageID
+FIELD addRun.stage_extra1, 5, %d,     stageExtra1
+#FIELD addRun.add_id,       5, %d,     addID
 FIELD addRun.state,        5, %s,     state
-FIELD addRun.workdir,        5, %s,     workdir
-FIELD addRun.reduction,        5, %s,     reduction
+FIELD addRun.workdir,      5, %s,     workdir
+FIELD addRun.reduction,    5, %s,     reduction
 FIELD addRun.label,        5, %s,     label
-FIELD addRun.data_group,        5, %s,     data_group
+FIELD addRun.data_group,   5, %s,     data_group
 FIELD addRun.dvodb,        5, %s,     dvodb
-FIELD addRun.note,        5, %s,     note
-FIELD addRun.image_only,        5, %d,   image_only
-FIELD addRun.minidvodb,        5, %d,     minidvodb
-FIELD addRun.minidvodb_group,        5, %s,     minidvodb_group
-FIELD addRun.minidvodb_name,        5, %s,     minidvodb_name
-
-
+FIELD addRun.note,         5, %s,     note
+FIELD addRun.image_only,   5, %d,   image_only
+FIELD addRun.minidvodb,    5, %d,     minidvodb
+FIELD addRun.minidvodb_group, 5, %s,     minidvodb_group
+FIELD addRun.minidvodb_name,  5, %s,     minidvodb_name
Index: branches/meh_branches/ppstack_test/ippMonitor/def/addRunSummary.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/addRunSummary.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/addRunSummary.d	(revision 34041)
@@ -0,0 +1,26 @@
+TABLE addRun 
+#left join addProcessedExp using (add_id)
+TITLE dvodb Status
+FILE addRunSummary.php
+MENU ipp.dvodb.dat
+
+
+#WHERE (minidvodbProcessed.fault > 0 or mergedvodbProcessed.fault > 0)
+WHERE add_id > 500000
+
+#     field                    width format  name          show         link to                   extras
+FIELD count(addRun.add_id), 5, %d, count(add_id)
+FIELD addRun.dvodb, 10, %s, dvodb
+FIELD addRun.minidvodb_group, 10, %s, minidvodb_group
+FIELD addRun.stage,   5, %s , stage
+FIELD addRun.state,   5, %s, state
+#FIELD addProcessedExp.fault,   5, %d, fault
+
+MODE summary
+#GROUP BY minidvodbRun.minidvodb_id
+#GROUP rawExp.exp_id
+GROUP dvodb
+GROUP stage
+GROUP state
+#GROUP fault
+ORDER add_id
Index: branches/meh_branches/ppstack_test/ippMonitor/def/autocode.php
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/autocode.php	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/autocode.php	(revision 34041)
@@ -28,7 +28,9 @@
 // ** TABLE RESTRICTIONS **
 
+// Note: the restriction is now moved AFTER the count query
+// unless the RESTRICT_COUNT keyword is used
 if ($restricted == 0) {
-  if ("$UNRESTRICTED" != "none") {
-    $WHERE = "$WHERE $UNRESTRICTED";
+  if ("$RESTRICT_COUNT" != "none") {
+    $WHERE = "$WHERE $RESTRICT_COUNT";
   }
 }
@@ -56,4 +58,12 @@
   menu_end();
 }
+
+// Restrict the query if it is necessary
+if ($restricted == 0) {
+  if ( ("$UNRESTRICTED" != "none") && ("$RESTRICT_COUNT" == "none") ) {
+    $WHERE = "$WHERE $UNRESTRICTED";
+  }
+}
+
 // set up the row counter variables
 if ($ID['from']) {
Index: branches/meh_branches/ppstack_test/ippMonitor/def/camProcessedExp_Images.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/camProcessedExp_Images.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/camProcessedExp_Images.d	(revision 34041)
@@ -3,4 +3,6 @@
 FILE  camProcessedExp_Images.php
 MENU  ipp.science.dat
+
+UNRESTRICTED AND 0>1
 
 # the following WHERE clauses are added to all queries joined by AND
@@ -10,5 +12,4 @@
 WHERE camProcessedExp.cam_id  = camRun.cam_id
 WHERE camProcessedExp.fault = 0
-
 # define image names to be used below
 # IMAGE VAR basename filerule camera class_id
Index: branches/meh_branches/ppstack_test/ippMonitor/def/diffSummary_Images.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/diffSummary_Images.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/diffSummary_Images.d	(revision 34041)
@@ -3,4 +3,6 @@
 FILE  diffSummary_Images.php
 MENU  ipp.stack.dat
+
+UNRESTRICTED AND 0>1
 
 WHERE diffRun.diff_id             = diffSkyfile.diff_id
Index: branches/meh_branches/ppstack_test/ippMonitor/def/dvodbFaulted.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/dvodbFaulted.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/dvodbFaulted.d	(revision 34041)
@@ -0,0 +1,25 @@
+TABLE minidvodbRun LEFT JOIN minidvodbProcessed using(minidvodb_id) LEFT JOIN mergedvodbRun using(minidvodb_id) LEFT JOIN mergedvodbProcessed using(merge_id)
+TITLE dvodb Status: either mini or merge is faulted
+FILE dvodbFaulted.php
+MENU ipp.dvodb.dat
+
+
+WHERE (minidvodbProcessed.fault > 0 or mergedvodbProcessed.fault > 0)
+
+#UNRESTRICTED WHERE minidvodbRun.creation_date >= DATE_ADD(DATE (NOW()), INTERVAL -30 DAY) 
+
+#     field                    width format  name          show         link to                   extras
+FIELD minidvodbRun.minidvodb_id, 5,   %d,     minidvodb_id
+FIELD minidvodbRun.minidvodb_name, 	       5,    %s,     minidvodb_name
+FIELD minidvodbRun.state, 	       5,    %s,     minidvodb_state
+FIELD minidvodbProcessed.fault,      5,    %d,	     minidvodb fault
+FIELD mergedvodbRun.merge_id, 5,   %d,     merge_id
+FIELD mergedvodbRun.mergedvodb, 	       5,    %s,     mergedvodb
+FIELD mergedvodbRun.state, 	       5,    %s,     mergedvodb_state
+FIELD mergedvodbProcessed.fault,      5,    %d,	     mergedvodb fault
+
+
+
+#MODE summary
+#GROUP BY minidvodbRun.minidvodb_id
+#GROUP rawExp.exp_id
Index: branches/meh_branches/ppstack_test/ippMonitor/def/dvodbStatus.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/dvodbStatus.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/dvodbStatus.d	(revision 34041)
@@ -0,0 +1,25 @@
+TABLE minidvodbRun LEFT JOIN minidvodbProcessed using(minidvodb_id) LEFT JOIN mergedvodbRun using(minidvodb_id) LEFT JOIN mergedvodbProcessed using(merge_id)
+TITLE dvodb Status
+FILE dvodbStatus.php
+MENU ipp.dvodb.dat
+
+
+#WHERE (minidvodbProcessed.fault > 0 or mergedvodbProcessed.fault > 0)
+
+#UNRESTRICTED WHERE minidvodbRun.creation_date >= DATE_ADD(DATE (NOW()), INTERVAL -30 DAY) 
+
+#     field                    width format  name          show         link to                   extras
+FIELD minidvodbRun.minidvodb_id, 5,   %d,     minidvodb_id
+FIELD minidvodbRun.minidvodb_name, 	       5,    %s,     minidvodb_name
+FIELD minidvodbRun.state, 	       5,    %s,     minidvodb_state
+FIELD minidvodbProcessed.fault,      5,    %d,	     minidvodb fault
+FIELD mergedvodbRun.merge_id, 5,   %d,     merge_id
+FIELD mergedvodbRun.mergedvodb, 	       5,    %s,     mergedvodb
+FIELD mergedvodbRun.state, 	       5,    %s,     mergedvodb_state
+FIELD mergedvodbProcessed.fault,      5,    %d,	     mergedvodb fault
+
+
+
+#MODE summary
+#GROUP BY minidvodbRun.minidvodb_id
+#GROUP rawExp.exp_id
Index: branches/meh_branches/ppstack_test/ippMonitor/def/exposureStatus.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/exposureStatus.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/exposureStatus.d	(revision 34041)
@@ -2,5 +2,5 @@
 TITLE Exposures Status
 FILE exposureStatus.php
-MENU ipp.imfiles.dat
+MENU ipp.czar.dat
 
 WHERE object != 'ENGINEERING'
Index: branches/meh_branches/ppstack_test/ippMonitor/def/gpc1MysqlProcessList.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/gpc1MysqlProcessList.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/gpc1MysqlProcessList.d	(revision 34041)
@@ -2,5 +2,5 @@
 TITLE GPC 1 MySql Process List
 FILE gpc1MysqlProcessList.php
-MENU ipp.imfiles.dat
+MENU ipp.czar.dat
 
 FIELD ID,   5,  %d, Process ID
Index: branches/meh_branches/ppstack_test/ippMonitor/def/maskStats.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/maskStats.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/maskStats.d	(revision 34041)
@@ -2,5 +2,5 @@
 TITLE Mask Stats
 FILE  maskStats.php
-MENU  ipp.imfiles.dat
+MENU  ipp.czar.dat
 
 WHERE rawExp.exp_id = chipRun.exp_id
Index: branches/meh_branches/ppstack_test/ippMonitor/def/mergedvodbCopy.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/mergedvodbCopy.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/mergedvodbCopy.d	(revision 34041)
@@ -0,0 +1,19 @@
+TABLE mergedvodbCopy 
+TITLE mergedvodb Copies
+FILE  mergedvodbCopy.php
+MENU  ipp.dvodb.dat
+
+# the following WHERE clauses are added to all queries joined by AND
+
+#WHERE mergedvodbcopy_id >= 0
+
+#     field                   size  format  name         show    link to                  extras
+FIELD mergedvodbCopy.mergedvodbcopy_id,        5, %d,     merge Copy ID
+FIELD mergedvodbCopy.merge_id,        5, %d,     merge ID
+FIELD mergedvodbCopy.mergedvodb_rsync_path,          25, %s,     rsync path
+FIELD mergedvodbCopy.destination_host,       5, %s,     destinatin host
+FIELD mergedvodbCopy.fault,    5, %s,     Fault
+FIELD mergedvodbCopy.state,          5, %s,     State
+FIELD mergedvodbCopy.epoch,          5, %T,    Epoch
+FIELD mergedvodbCopy.dtime,        5, %d,     dtime
+
Index: branches/meh_branches/ppstack_test/ippMonitor/def/mergedvodbProcessed.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/mergedvodbProcessed.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/mergedvodbProcessed.d	(revision 34041)
@@ -0,0 +1,21 @@
+TABLE mergedvodbRun, mergedvodbProcessed 
+TITLE Processed mergedvodbs
+FILE  mergedvodbProcessed.php
+MENU  ipp.dvodb.dat
+
+# the following WHERE clauses are added to all queries joined by AND
+
+WHERE mergedvodbRun.merge_id = mergedvodbProcessed.merge_id
+
+#     field                   size  format  name         show    link to                  extras
+FIELD mergedvodbRun.merge_id,        5, %d,     merge ID
+FIELD mergedvodbRun.minidvodb_id,          5, %d,     minidvodb_id
+FIELD mergedvodbRun.mergedvodb,       5, %s,     mergedvodb
+FIELD mergedvodbProcessed.merge_order,        5, %d,     merge order
+FIELD mergedvodbProcessed.dtime_verify,        5, %d,     verify time
+FIELD mergedvodbProcessed.dtime_merge,        5, %d,     merge time
+FIELD mergedvodbProcessed.dtime_script,        5, %d,     script time
+FIELD state,          5, %s,    State
+FIELD mergedvodbProcessed.fault,        5, %d,     Fault
+FIELD epoch,        5, %T,     epoch
+
Index: branches/meh_branches/ppstack_test/ippMonitor/def/mergedvodbRun.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/mergedvodbRun.d	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/mergedvodbRun.d	(revision 34041)
@@ -0,0 +1,21 @@
+TABLE mergedvodbRun, minidvodbRun 
+TITLE mergedvodb Runs
+FILE  mergedvodbRun.php
+MENU  ipp.dvodb.dat
+
+# the following WHERE clauses are added to all queries joined by AND
+
+WHERE merge_id >= 0 
+WHERE mergedvodbRun.minidvodb_id = minidvodbRun.minidvodb_id
+
+#     field                   size  format  name         show    link to                  extras
+FIELD mergedvodbRun.merge_id,        5, %d,     merge ID
+FIELD mergedvodbRun.minidvodb_id,        5, %d,     minidvodb ID
+FIELD minidvodbRun.minidvodb_name,       10, %s, minidvodb_name
+FIELD mergedvodbRun.mergedvodb,          5, %s,     mergedvodb
+###FIELD mergedvodbRun.mergedvodb_group,       5, %s,     mergedvodb_group
+FIELD mergedvodbRun.mergedvodb_path,    25, %s,     mergedvodb_path
+#FIELD mergedvodbRun.mergedvodb_path,          25, %s,     mergedvodb_path
+FIELD mergedvodbRun.state,          5, %s,    State
+FIELD mergedvodbRun.creation_date,        5, %T,     epoch
+
Index: branches/meh_branches/ppstack_test/ippMonitor/def/minidvodbProcessed.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/minidvodbProcessed.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/minidvodbProcessed.d	(revision 34041)
@@ -9,13 +9,10 @@
 
 #     field                   size  format  name         show    link to                  extras
-FIELD distinct(minidvodbRun.minidvodb_id),        5, %d,     Minidvodb ID
-
+FIELD minidvodbRun.minidvodb_id,        5, %d,     Minidvodb ID
 FIELD minidvodbRun.minidvodb_name,          5, %s,     minidvodb_name
 FIELD minidvodbRun.minidvodb_group,       5, %s,     minidvodb_group
-FIELD minidvodbProcessed.merge_order,        5, %d,     Merge Order
 FIELD minidvodbProcessed.dtime_resort,        5, %d,     resort time
 FIELD minidvodbProcessed.dtime_relphot,        5, %d,     relphot time
-FIELD minidvodbProcessed.dtime_merge,        5, %d,     dvomerge time
-FIELD minidvodbProcessed.mergedvodb_path,          25, %s,     mergedvodb_path
+FIELD minidvodbProcessed.dtime_script,        5, %d,     script time
 FIELD state,          5, %s,    State
 FIELD minidvodbProcessed.fault,        5, %d,     Fault
Index: branches/meh_branches/ppstack_test/ippMonitor/def/minidvodbRun.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/minidvodbRun.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/minidvodbRun.d	(revision 34041)
@@ -9,9 +9,9 @@
 
 #     field                   size  format  name         show    link to                  extras
-FIELD distinct(minidvodbRun.minidvodb_id),        5, %d,     Minidvodb ID
+FIELD minidvodbRun.minidvodb_id,        5, %d,     Minidvodb ID
 FIELD minidvodbRun.minidvodb_name,          5, %s,     minidvodb_name
 FIELD minidvodbRun.minidvodb_group,       5, %s,     minidvodb_group
 FIELD minidvodbRun.minidvodb_path,    25, %s,     minidvodb_path
-FIELD minidvodbRun.mergedvodb_path,          25, %s,     mergedvodb_path
+#FIELD minidvodbRun.mergedvodb_path,          25, %s,     mergedvodb_path
 FIELD state,          5, %s,    State
 FIELD creation_date,        5, %T,     epoch
Index: branches/meh_branches/ppstack_test/ippMonitor/def/mopsStatus.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/mopsStatus.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/mopsStatus.d	(revision 34041)
@@ -2,5 +2,5 @@
 TITLE MOPS Status
 FILE mopsStatus.php
-MENU ipp.imfiles.dat
+MENU ipp.czar.dat
 #WHERE rawExp.obs_mode!='ENGINEERING'
 
Index: branches/meh_branches/ppstack_test/ippMonitor/def/newImfile.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/newImfile.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/newImfile.d	(revision 34041)
@@ -4,4 +4,6 @@
 MENU  ipp.load.dat
 
+UNRESTRICTED WHERE 0>1
+
 #        field       size  format  name           show   link to         extras
 FIELD    exp_id,	5, %d,     exposure ID
Index: branches/meh_branches/ppstack_test/ippMonitor/def/pzDoneImfile.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/pzDoneImfile.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/pzDoneImfile.d	(revision 34041)
@@ -3,4 +3,6 @@
 FILE  pzDoneImfile.php
 MENU  ipp.load.dat
+
+UNRESTRICTED AND 0>1
 
 WHERE pzDownloadImfile.fault     = 0
Index: branches/meh_branches/ppstack_test/ippMonitor/def/pzPendingImfile.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/pzPendingImfile.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/pzPendingImfile.d	(revision 34041)
@@ -3,4 +3,6 @@
 FILE  pzPendingImfile.php
 MENU  ipp.load.dat
+
+UNRESTRICTED AND 0>1
 
 WHERE summitImfile.exp_name  = pzDownloadExp.exp_name 
Index: branches/meh_branches/ppstack_test/ippMonitor/def/rawBurntoolState.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/rawBurntoolState.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/rawBurntoolState.d	(revision 34041)
@@ -5,4 +5,5 @@
 
 # if no query restrictions are supplied, we want to limit the query or it is extremely long running:
+RESTRICT_COUNT WHERE 0>1
 UNRESTRICTED WHERE exp_id = 0
 
Index: branches/meh_branches/ppstack_test/ippMonitor/def/rawImfile.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/rawImfile.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/rawImfile.d	(revision 34041)
@@ -5,4 +5,6 @@
 
 # HEAD PHP insert_backref ("rawExp.php", "exp_id", $ID['link']);
+
+UNRESTRICTED WHERE 0>1
 
 OP   OP1  $ra * 57.295783
Index: branches/meh_branches/ppstack_test/ippMonitor/def/summitImfile.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/summitImfile.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/summitImfile.d	(revision 34041)
@@ -3,4 +3,6 @@
 FILE  summitImfile.php
 MENU  ipp.load.dat
+
+UNRESTRICTED WHERE 0>1
 
 #        field     size  format  name             show   link to         extras
Index: branches/meh_branches/ppstack_test/ippMonitor/def/warpProcessedSkyfiles_Images.d
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/def/warpProcessedSkyfiles_Images.d	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/def/warpProcessedSkyfiles_Images.d	(revision 34041)
@@ -1,5 +1,5 @@
 TABLE  rawExp JOIN chipRun USING(exp_id) JOIN camRun USING(chip_id) JOIN fakeRun USING(cam_id) JOIN warpRun USING(fake_id) JOIN warpSkyfile USING(warp_id)
 TITLE Warp Processed Skyfiles
-FILE  warpProcessedSkyfiles.php
+FILE  warpProcessedSkyfiles_Images.php
 MENU  ipp.science.dat
 
Index: branches/meh_branches/ppstack_test/ippMonitor/raw/czartool_getplot.php
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/raw/czartool_getplot.php	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/raw/czartool_getplot.php	(revision 34041)
@@ -30,4 +30,6 @@
 else if ($type=="st")
 $filePath = "$path/czarplot_cluster.png";
+else if ($type=="id")
+$filePath = "$path/ippToPsps_density_".$label.".png";
 
 
Index: branches/meh_branches/ppstack_test/ippMonitor/raw/czartool_ipptopsps.php
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/raw/czartool_ipptopsps.php	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/raw/czartool_ipptopsps.php	(revision 34041)
@@ -23,5 +23,5 @@
 
 if ($ID['menu']) {$myMenu = $ID['menu'];}
-else {$myMenu = "ipp.imfiles.dat";}
+else {$myMenu = "ipp.czar.dat";}
 
 menu($myMenu, 'Czartool on '.$lastUpdateTime, 'ipp.css', $ID['link'], $ID['proj']);
@@ -78,5 +78,5 @@
 
 $debug = 0;
-$table = "<table bgcolor=\"#FFFFFF\" width=\"700\" align=\"middle\" border=\"1\" cellspacing=\"0\" cellpadding=\"4\" style=\"font-size:80%\">\n";
+$table = "<table bgcolor=\"#FFFFFF\" width=\"900\" align=\"middle\" border=\"1\" cellspacing=\"0\" cellpadding=\"4\" style=\"font-size:80%\">\n";
 
 
@@ -155,4 +155,8 @@
 echo "<br>";
 
+echo "<br>";
+ echo "<img src=\"czartool_getplot.php?mode=$selectedMode&type=id&label=$selectedLabel&stage=$selectedStage&plottype=$plotType\"><br>";
+echo "<br>";
+
 echo "</table>";
 
Index: branches/meh_branches/ppstack_test/ippMonitor/raw/czartool_labels.php
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/raw/czartool_labels.php	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/raw/czartool_labels.php	(revision 34041)
@@ -23,10 +23,9 @@
 
 if ($ID['menu']) {$myMenu = $ID['menu'];}
-else {$myMenu = "ipp.imfiles.dat";}
+else {$myMenu = "ipp.czar.dat";}
 
 menu($myMenu, 'Czartool on '.$lastUpdateTime, 'ipp.css', $ID['link'], $ID['proj']);
 
 $stages=array(
-        "burntool", 
         "chip",
         "cam",
@@ -34,9 +33,9 @@
         "warp",
         "stack",
+        "staticsky",
         "diff",
-        "magic",
-        "magicDS",
         "dist", 
-        "pub");
+        "pub",
+        "chipbackground");
 
 $servers=array(
@@ -92,5 +91,5 @@
 
 $debug = 0;
-$table = "<table bgcolor=\"#FFFFFF\" width=\"700\" align=\"middle\" border=\"1\" cellspacing=\"0\" cellpadding=\"4\" style=\"font-size:80%\">\n";
+$table = "<table bgcolor=\"#FFFFFF\" width=\"900\" align=\"middle\" border=\"1\" cellspacing=\"0\" cellpadding=\"4\" style=\"font-size:80%\">\n";
 
 $labels = getLabels($czardb, $selectedMode);
@@ -172,5 +171,7 @@
 echo "<tr><td>Who's using the cluster?</td><td><a href=\"http://ippmonitor.ipp.ifa.hawaii.edu/ippMonitor/clusterMonitor/top.html\"><font color=\"blue\">here</font></a></td></tr>";
 echo "<tr><td>IPP metrics</td><td><a href=\"http://ipp0022.ifa.hawaii.edu/ps1sc/ippMetrics\"><font color=\"blue\">here</font></a></td></tr>";
-echo "<tr><td>Czar log pages</td><td><a href=\"http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/PS1_IPP_CzarLogs\"><font color=\"blue\">here</font></a></td></tr>";
+echo "<tr><td>Czar log pages</td><td><a href=\"http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/PS1_IPP_CzarLogs\"><font color=\"blue\">All</font></a>&nbsp;&nbsp;&nbsp;";
+echo "<a href=\"http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/PS1_IPP_CzarLog_".(date("Ymd")-date("w")+"1")."\">This week</a>";
+echo "</td></tr>";
 echo "<tr><td>Exposure summary</td><td><a href=\"czartool_exposures.php?pass=$pass&proj=$proj\"><font color=\"blue\">here</font></a></td></tr>";
 
@@ -216,4 +217,5 @@
       showReplicationsStatus($REPL_HOST_PSTAMP, $REPL_USER_PSTAMP, $REPL_PASSWORD_PSTAMP, $REPL_DBNAME_PSTAMP);
       showReplicationsStatus($REPL_HOST_IPPADMIN, $REPL_USER_IPPADMIN, $REPL_PASSWORD_IPPADMIN, $REPL_DBNAME_IPPADMIN);
+      showReplicationsStatus($REPL_HOST_ISP, $REPL_USER_ISP, $REPL_PASSWORD_ISP, $REPL_DBNAME_ISP);
       echo "</table>";
 
@@ -441,8 +443,4 @@
         $anyFaults = false; 
 
-        $link = $defaultlink;
-        getStateAndFaults($db, $thisLabel, $selectedState, "burntool", $str, $anyFaults);
-        createFormattedTableCell($anyFaults, $link, $str, $anyFaults, 0);
-
         $link = "failedChipProcessedImfile.php?pass=" . $pass . "&proj=" . $proj . "&chipRun.label=" . $thisLabel . "&chipRun.state=".$searchState;
         getStateAndFaults($db, $thisLabel, $selectedState, "chip", $str, $anyFaults);
@@ -465,4 +463,8 @@
         createFormattedTableCell($anyFaults, $link, $str, $anyFaults, 0);
 
+        $link = $defaultlink;
+        getStateAndFaults($db, $thisLabel, $selectedState, "staticsky", $str, $anyFaults);
+        createFormattedTableCell($anyFaults, $link, $str, $anyFaults, 0);
+
         $link = "failedDiffSkyfile.php?pass=" . $pass . "&proj=" . $proj . "&diffRun.label=" . $thisLabel . "&diffRun.state=".$searchState;
         getStateAndFaults($db, $thisLabel, $selectedState, "diff", $str, $anyFaults);
@@ -470,12 +472,4 @@
 
         $link = $defaultlink;
-        getStateAndFaults($db, $thisLabel, $selectedState, "magic", $str, $anyFaults);
-        createFormattedTableCell($anyFaults, $link, $str, $anyFaults, (!$isUpdate && !$distributing) ? "gray" : null);
-
-        $link = $defaultlink;
-        getStateAndFaults($db, $thisLabel, $selectedState, "magicDS", $str, $anyFaults);
-        createFormattedTableCell($anyFaults, $link, $str, $anyFaults, (!$isUpdate && !$distributing) ? "gray" : null);
-
-        $link = $defaultlink;
         getStateAndFaults($db, $thisLabel, $selectedState, "dist", $str, $anyFaults);
         createFormattedTableCell($anyFaults, $link, $str, $anyFaults, (!$isUpdate && !$distributing) ? "gray" : null);
@@ -485,4 +479,8 @@
         createFormattedTableCell($anyFaults, $link, $str, $anyFaults, (!$isUpdate && !$publishing) ? "gray" : null);
 
+        $link = $defaultlink;
+        getStateAndFaults($db, $thisLabel, $selectedState, "chipbackground", $str, $anyFaults);
+        createFormattedTableCell($anyFaults, $link, $str, $anyFaults, 0);
+
         echo "</tr>\n";
     }
@@ -492,29 +490,11 @@
     createFormattedTableCell(($selectedLabel != "all"), $link, "All labels", 0, null);
 
-    createFormattedTableCell(0, null, "Reverting?", 0, "$columnHeaderColor");
-
     foreach ($stages as &$stage) {
 
-        if ($stage == "burntool") continue;
         $reverting = getRevertStatus($db, $stage);
-        #$link = 
-        #    "czartool_labels.php?pass=".$pass
-        #    ."&proj=".$proj
-        #    ."&mode=" .$selectedMode
-        #    ."&label=".$selectedLabel
-        #    ."&stage=".$selectedStage
-        #    ."&plottype=".$plotType
-        #    ."&revertstage=".$stage
-        #    ."&revertmode=";
-#
-        #if(!$reverting) {$label =  "Start";$link = $link . "on";}
-        #if($reverting) {$label = "Stop";$link = $link . "off";}
-        if(!$reverting) {$label =  "no";}
-        if($reverting) {$label = "yes";}
+        if(!$reverting) {$label =  "";}
+        if($reverting) {$label = "reverting";}
         unset($reverting);
-        #createFormattedTableCell(1, $link, $label, 0, "$columnHeaderColor");
         createFormattedTableCell(0, null, $label, 0, "$columnHeaderColor");
-        #echo "<td><a href=\"$link\"><font color=\"blue\">$label</font></td>";
-
     }
 
Index: branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.czar.dat
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.czar.dat	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.czar.dat	(revision 34041)
@@ -0,0 +1,13 @@
+input     | ipp.menu.dat 
+
+menutop   | menutop      | plain   | &nbsp;   |   
+
+menulink   | menuselect      | link    | czartool - standard          | czartool_labels.php
+menulink   | menuselect      | link    | czartool - ipptopsps         | czartool_ipptopsps.php
+menulink   | menuselect      | link    | mask stats                   | maskStats.php
+menulink   | menuselect      | link    | night summary                | nightSummary.php
+menutop   | menutop      | plain   | &nbsp;                       | 
+menulink  | menuselect   | link    | Exposures Status             | exposureStatus.php
+menulink  | menuselect   | link    | MOPS Exposures Status        | mopsStatus.php
+menulink  | menuselect   | link    | GPC1 MySql ProcessList            | gpc1MysqlProcessList.php
+
Index: branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.czar.php
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.czar.php	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.czar.php	(revision 34041)
@@ -0,0 +1,17 @@
+<?php 
+
+include 'ipp.php';
+
+$ID = checkID ();
+
+// require an explicit project
+if (! $ID['proj']) { projectform ($ID); }
+
+menu('ipp.czar.dat', 'useful tools for the czar', 'ipp.css', $ID['link'], $ID['proj']);
+
+// document body
+echo "Czar<br>\n";
+
+menu_end();
+
+?>
Index: branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.dvodb.dat
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.dvodb.dat	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.dvodb.dat	(revision 34041)
@@ -9,5 +9,16 @@
              
 menulink  | menuselect   | link    | minidvodbRun              | minidvodbRun.php
-menulink  | menuselect 	 | link    | minidvodbProcessed         | minidvodbProcessed.php            
+menulink  | menuselect 	 | link    | minidvodbProcessed         | minidvodbProcessed.php    
 menulink  | menuselect 	 | link    | minidvodbCopy               | minidvodbCopy.php            
 
+menutop   | menutop      | plain   | &nbsp;   |
+
+menulink  | menuselect   | link    | mergedvodbRun              | mergedvodbRun.php
+menulink  | menuselect 	 | link    | mergedvodbProcessed         | mergedvodbProcessed.php    
+menulink  | menuselect 	 | link    | mergedvodbCopy               | mergedvodbCopy.php            
+
+menutop   | menutop      | plain   | &nbsp;   |
+
+menulink  | menuselect 	 | link    | dvodbStatus               | dvodbStatus.php
+menulink  | menuselect 	 | link    | dvodbFaulted               | dvodbFaulted.php            
+menulink  | menuselect 	 | link    | addRun Summary        | addRunSummary.php            
Index: branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.menu.dat
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.menu.dat	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.menu.dat	(revision 34041)
@@ -27,3 +27,4 @@
 menutop   | menutop      | link    | Calibration                  | ipp.cal.php
 menutop   | menutop      | link    | Plots              	  | ipp.plots.php
+menutop   | menutop      | link    | Czar           		  | ipp.czar.php
 menutop   | menutop      | link    | Admin and Debug              | ipp.imfiles.php
Index: branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.science.dat
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.science.dat	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/raw/ipp.science.dat	(revision 34041)
@@ -38,4 +38,5 @@
 menulink  | menuselect   | link    | Warp Skyfile Inputs          | warpStageSkyfileInputs.php
 menulink  | menuselect   | link    | Warp Processed Skyfiles      | warpProcessedSkyfiles.php
+#menulink  | menuselect   | link    | Warp Processed Skyfiles w/ Images     | warpProcessedSkyfiles_images.php
 menulink  | menuselect   | link    | Warp Failed Skyfiles         | warpFailedSkyfiles.php
 
Index: branches/meh_branches/ppstack_test/ippMonitor/raw/nightSummary.php
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/raw/nightSummary.php	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/raw/nightSummary.php	(revision 34041)
@@ -52,5 +52,5 @@
   $myMenu = $ID['menu'];
 } else {
-  $myMenu = "ipp.imfiles.dat";
+  $myMenu = "ipp.czar.dat";
 }
 
Index: branches/meh_branches/ppstack_test/ippMonitor/raw/site.php.in
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/raw/site.php.in	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/raw/site.php.in	(revision 34041)
@@ -25,10 +25,10 @@
 $REPL_USER_IPPADMIN = "ippMonitor";
 $REPL_PASSWORD_IPPADMIN = "ippMonitor";
-$REPL_DBNAME_IPPADMIN = "ipp001 (gpc1, isp, ippadmin, czardb)";
+$REPL_DBNAME_IPPADMIN = "ipp001 (gpc1, isp, ippadmin, czardb, ipptopsps, megacam, ssp, uip)" ;
 
 $REPL_HOST_NEBULOUS = "ippdb02.IfA.Hawaii.Edu";
 $REPL_USER_NEBULOUS = "ippMonitor";
 $REPL_PASSWORD_NEBULOUS = "ippMonitor";
-$REPL_DBNAME_NEBULOUS = "ippdb02 (Nebulous)";
+$REPL_DBNAME_NEBULOUS = "ippdb02 (nebulous)";
 
 $REPL_HOST_PSTAMP = "ippc19.IfA.Hawaii.Edu";
@@ -40,5 +40,12 @@
 $REPL_USER_GPC1 = "ippMonitor";
 $REPL_PASSWORD_GPC1 = "ippMonitor";
-$REPL_DBNAME_GPC1 = "ippdb03 (gpc1, isp, ippadmin, czardb)";
+$REPL_DBNAME_GPC1 = "ippdb03 (czardb, gpc1, ippadmin, ipptopsps, megacam, skycells, ssp, uip)";
+
+$REPL_HOST_ISP = "ippc17.IfA.Hawaii.Edu";
+$REPL_USER_ISP = "ippMonitor";
+$REPL_PASSWORD_ISP = "ippMonitor";
+$REPL_DBNAME_ISP = "ippc17 (isp)";
+
+
 
 ?>
Index: branches/meh_branches/ppstack_test/ippMonitor/scripts/generate
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/scripts/generate	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippMonitor/scripts/generate	(revision 34041)
@@ -29,4 +29,5 @@
     &init_key ("MODE");
     &init_key ("UNRESTRICTED");
+    &init_key ("RESTRICT_COUNT");
     &init_key ("TABLE");
     &init_key ("TITLE");
@@ -46,10 +47,10 @@
         if ($key eq "TABLE") { ($value) = $value =~ m|^\s*(.+)\s*$|; }
         if ($key eq "TYPE")  { ($value) = $value =~ m|^\s*(.+)\s*$|; }
-	if ($key eq "TOPLOT") { ($value) = $value =~ m|^\s*(.+)\s*$|; }
-	if ($key eq "PLOTTER") { ($value) = $value =~ m|^\s*(.+)\s*$|; }
-	if ($key eq "PLOTTITLE") { 
-	    ($value) = $value =~ m|^\s*(.+)\s*$|;
-	    $value =~ s/\s/_/g;
-	}
+        if ($key eq "TOPLOT") { ($value) = $value =~ m|^\s*(.+)\s*$|; }
+        if ($key eq "PLOTTER") { ($value) = $value =~ m|^\s*(.+)\s*$|; }
+        if ($key eq "PLOTTITLE") {
+            ($value) = $value =~ m|^\s*(.+)\s*$|;
+            $value =~ s/\s/_/g;
+        }
 
         &set_keypair ($key, $value);
@@ -61,16 +62,16 @@
             if ($field =~ m|\S+\s+as\s+\S+|) {
                 ($fieldreal) = $field =~ m|\S+\s+as\s+(\S+)|;
-		#print STDERR "Case 1\n";
+                #print STDERR "Case 1\n";
             } elsif ($field =~ m|\S+\s+AS\s+\S+|) {
-		#print STDERR "field=$field\n";
-		$fieldreal = $field;
-		$fieldreal =~ s/\s+AS.*$//;
+                #print STDERR "field=$field\n";
+                $fieldreal = $field;
+                $fieldreal =~ s/\s+AS.*$//;
                 #($fieldreal) = $field =~ m|\S+\s+as\s+(\S+)|;
-		#print STDERR "Case 2\n";
+                #print STDERR "Case 2\n";
             } else {
                 $fieldreal = $field;
-		#print STDERR "Case 3\n";
+                #print STDERR "Case 3\n";
             }
-	    #print STDERR "field=[$field]\tfieldreal=[$fieldreal]\n";
+            #print STDERR "field=[$field]\tfieldreal=[$fieldreal]\n";
 
             if ($VERBOSE) { printf "%-20s %-20s %-20s %-20s %-20s %-20s\n", $field, $name, $format, $show, $link, $extras; }
@@ -141,4 +142,5 @@
     &check_key ("MODE", "basic");
     &check_key ("UNRESTRICTED", "none");
+    &check_key ("RESTRICT_COUNT", "none");
     &check_key ("TABLE", "");
     &check_key ("TITLE", "");
@@ -324,5 +326,4 @@
 # generate a WHERE test for each field (field != *)
 sub write_table_restrict {
-
     if ($WHERE) {
         print FILE "\$WHERE = \"WHERE $WHERE\";\n";
@@ -348,5 +349,5 @@
 }
 
-# Generate GROUP BY statement if any 
+# Generate GROUP BY statement if any
 sub write_group_by {
     print FILE "\$WHERE = check_ordering ('$GROUPS', \$WHERE);\n";
@@ -536,7 +537,7 @@
     @extfields = split (/,/, $extras);
     for ($i = 0; $i < @extfields; $i++) {
-	# print STDERR $extfields[$i],"\n";
+        # print STDERR $extfields[$i],"\n";
         ($label, $value, $outline) = &parse_label ($extfields[$i]);
-	# print STDERR "[",$label,"]","[",$value,"]","[",$outline,"\n";
+        # print STDERR "[",$label,"]","[",$value,"]","[",$outline,"\n";
         print FILE "  \$link = \$link . \"&$outline\";\n";
     }
@@ -553,5 +554,5 @@
     # print STDERR "#############################\n";
     # foreach my $key ( keys %linkarg ) {
-    # 	print STDERR "key: $key, value: $linkarg{$key}\n";
+    #   print STDERR "key: $key, value: $linkarg{$key}\n";
     # }
 
@@ -560,8 +561,8 @@
 
     if ($linkarg{$word}) {
-	# print STDERR "Case 1\n";
+        # print STDERR "Case 1\n";
         $linkarg{$word} = "$linkarg{$word},$value";
     } else {
-	# print STDERR "Case 2\n";
+        # print STDERR "Case 2\n";
         $linkarg{$word} = $value;
     }
@@ -585,11 +586,11 @@
     # print STDERR "### parse_label ###\n";
     # for ($i = 0; $i < @field; $i++) {
-    # 	print STDERR "field[$i]=$field[$i]\n";
+    #   print STDERR "field[$i]=$field[$i]\n";
     # }
     # for ($i = 0; $i < @fieldreal; $i++) {
-    # 	print STDERR "fieldreal[$i]=$fieldreal[$i]\n";
+    #   print STDERR "fieldreal[$i]=$fieldreal[$i]\n";
     # }
     # for ($i = 0; $i < @count; $i++) {
-    # 	print STDERR "count[$i]=$count[$i]\n";
+    #   print STDERR "count[$i]=$count[$i]\n";
     # }
 
@@ -598,5 +599,5 @@
     if ($string =~ m|\S+=\S+|) {
         ($label, $value) = $string =~ m|(\S+)=(\S+)|;
-	# print STDERR "value=$value\n";
+        # print STDERR "value=$value\n";
         if ($value =~ m|^\$|) {
           MATCH_LABEL:
@@ -669,7 +670,7 @@
     $name   = &parse_fieldname ($name);
     if (exists $ops{$name}) {
-	#if OPx was defined, replace it by its value
-	$name = $ops{$name};
-	$name =~ s/\s+//g;
+        #if OPx was defined, replace it by its value
+        $name = $ops{$name};
+        $name =~ s/\s+//g;
     }
     $camera = &parse_fieldname ($camera);
Index: branches/meh_branches/ppstack_test/ippMonitor/supervision/check_if_mysql_slave_is_running_fine.py
===================================================================
--- branches/meh_branches/ppstack_test/ippMonitor/supervision/check_if_mysql_slave_is_running_fine.py	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippMonitor/supervision/check_if_mysql_slave_is_running_fine.py	(revision 34041)
@@ -0,0 +1,78 @@
+#!/usr/bin/env python
+
+# This script is supposed to be run on a host which is running a mysql
+# replication slave. It should be started from the crontab every
+# hour(?).
+#
+# This script makes sure that the mysql replication slave is fine on
+# the localhost. If there is any problem, that is, if the replication
+# is broken because of an error or if the lag between the master and
+# the server is too important (see the MAX_LAG_SECONDS parameter),
+# then an e-mail is sent to the ps-ipp-ops mailing list (actually the
+# RECIPIENT parameter).
+#
+
+import MySQLdb
+import smtplib
+from email.mime.text import MIMEText
+import socket
+
+def send_email(recipient, subject, body):
+    message = MIMEText(body)
+    message['Subject'] = subject
+    _from = 'ipp@ifa.hawaii.edu'
+    message['From'] = _from
+    _to = [recipient]
+    message['To'] = recipient
+    SMTP_CONNECTION = smtplib.SMTP('hale.ifa.hawaii.edu')
+    SMTP_CONNECTION.sendmail(_from, _to, message.as_string())
+    SMTP_CONNECTION.quit()
+
+if __name__ == '__main__':
+    # Configuration parameters
+    MAX_LAG_SECONDS = 10000
+    RECIPIENT = 'ps-ipp-ops@ifa.hawaii.edu'
+
+    # Don't change anything after this
+    db = MySQLdb.connect('localhost', 'root')
+    cursor = db.cursor()
+    cursor.execute('SHOW SLAVE STATUS')
+    ( Slave_IO_State, Master_Host, Master_User, Master_Port,
+      Connect_Retry, Master_Log_File, Read_Master_Log_Pos, Relay_Log_File,
+      Relay_Log_Pos, Relay_Master_Log_File, Slave_IO_Running, Slave_SQL_Running,
+      Replicate_Do_DB, Replicate_Ignore_DB, Replicate_Do_Table, Replicate_Ignore_Table,
+      Replicate_Wild_Do_Table, Replicate_Wild_Ignore_Table, 
+      Last_Errno, Last_Error, Skip_Counter, Exec_Master_Log_Pos,
+      Relay_Log_Space, Until_Condition, Until_Log_File, Until_Log_Pos,
+      Master_SSL_Allowed, Master_SSL_CA_File, Master_SSL_CA_Path, Master_SSL_Cert,
+      Master_SSL_Cipher, Master_SSL_Key, Seconds_Behind_Master) = cursor.fetchall()[0]
+    nodename = socket.gethostbyaddr(socket.gethostname())[0].split('.')[0]
+    if Seconds_Behind_Master is None:
+        if Last_Error != '':
+            send_email(RECIPIENT, 
+                       'MySQL replication problem on %s' % (nodename),
+                       """Last_error value when executing SHOW SLAVE STATUS on that host is:
+%s
+""" % (Last_Error) )
+        else:
+            send_email(RECIPIENT, 
+                       'MySQL replication problem on %s' % (nodename),
+                       """Slave_IO_State value when executing SHOW SLAVE STATUS on that host is:
+%s
+""" % (Slave_IO_State) )
+            print 'Replication problem: %s (is master down?)' % Slave_IO_State
+    elif Seconds_Behind_Master > MAX_LAG_SECONDS:
+        nodename = socket.gethostbyaddr(socket.gethostname())[0].split('.')[0]
+        send_email(RECIPIENT, 
+                   'MySQL replication is late on %s' % (nodename),
+                   """The Seconds_Behind_Master value when executing the 'SHOW SLAVE STATUS' mysql statement on that host is:
+   %s
+
+For info, the threshold is %s seconds.
+
+Check if there is a blocking statement executing on the slave
+""" % (Seconds_Behind_Master, MAX_LAG_SECONDS) )
+    else:
+        pass
+    cursor.close()
+    db.close()
Index: branches/meh_branches/ppstack_test/ippScripts/Build.PL
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/Build.PL	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/Build.PL	(revision 34041)
@@ -56,4 +56,5 @@
         scripts/stack_skycell.pl
         scripts/staticsky.pl
+        scripts/destreak_restore_camera.pl
         scripts/magic_tree.pl
         scripts/magic_process.pl
Index: branches/meh_branches/ppstack_test/ippScripts/queue_chips_by_night.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/queue_chips_by_night.pl	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippScripts/queue_chips_by_night.pl	(revision 34041)
@@ -0,0 +1,102 @@
+#!/usr/bin/env perl
+
+use Carp;
+use warnings;
+use strict;
+
+## report the program and machine
+use Sys::Hostname;
+my $host = hostname();
+my $stdate = `date`;
+use DateTime;
+my $mjd_start = DateTime->now->mjd;   # MJD of starting script
+
+use vars qw( $VERSION );
+$VERSION = '0.01';
+
+use IPC::Cmd 0.36 qw( can_run run );
+use PS::IPP::Metadata::Config;
+use PS::IPP::Metadata::List qw( parse_md_list );
+use PS::IPP::Config 1.01 qw( :standard );
+use File::Temp qw( tempfile );
+use File::Basename;
+
+use Getopt::Long qw( GetOptions :config auto_help auto_version gnu_getopt );
+use Pod::Usage qw( pod2usage );
+
+# Look for programs we need
+my $missing_tools;
+my $chiptool = can_run('chiptool') or (warn "Can't find chiptool" and $missing_tools = 1);
+if ($missing_tools) {
+    warn("Can't find required tools.");
+    exit($PS_EXIT_CONFIG_ERROR);
+}
+
+my @ARGS = @ARGV;
+
+my ( $date, $data_group_base, $label, $tess_id, $end_stage, $workdir_base, $dbname );
+
+GetOptions(
+    'date=s'             => \$date,       # date, like this 2011-02-12
+    'data_group_base=s'  => \$data_group_base,    # data_group_base, like this: isp
+    'label=s'            => \$label,   # label
+    'dbname|d=s'         => \$dbname,    # Database name
+    'tess_id=s'          => \$tess_id, # tess_id
+    'end_stage=s'        => \$end_stage, # end_stage
+    'workdir_base=s'          => \$workdir_base,  # workdir
+     ) or pod2usage( 2 );
+
+pod2usage( -msg => "Unknown option: @ARGV", -exitval => 2 ) if @ARGV;
+pod2usage( -msg => "Required options: --dbname --label --tess_id --date \n Optional: --data_group_base, end_stage, workdir_base",
+           -exitval => 3) unless
+    defined $dbname and
+    defined $label and
+    defined $tess_id and
+    defined $date;
+
+my $truncdate = $date;
+    $truncdate =~ s/-//g;
+if (defined $data_group_base) {
+    print "found data_group_base = $data_group_base\n";
+} else {
+    $data_group_base = $label;
+    print "using $label as data_group_base\n";
+}
+if (defined $end_stage) {
+    print "found end_stage = $end_stage\n";
+} else {
+    $end_stage = "camera";
+    print "using camera as end_stage\n";
+}
+if (defined $workdir_base) {
+    print "found workdir_base = $workdir_base\n";
+} else {
+    $workdir_base = "neb://\@HOST\@.0/$dbname/$label";
+    print "using $workdir_base as workdir\n";
+}
+
+# we have all the pieces, now build up the chiptool:
+
+my $command = "$chiptool -definebyquery -unique";
+$command .= " -dbname $dbname";
+$command .= " -dateobs_begin '$date"."T00:00:00'";
+$command .= " -dateobs_end '$date"."T23:59:59'";
+$command .= " -set_label $label";
+$command .= " -set_data_group $data_group_base.$truncdate";
+$command .= " -set_workdir $workdir_base/$truncdate";
+$command .= " -set_end_stage $end_stage";
+$command .= " -set_tess_id $tess_id";
+
+print "\nrunning this command:\n\n$command\n\n";
+
+
+my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
+    run(command => $command, verbose => 0);
+unless ($success) {
+    $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR);
+    warn("Unable to perform chiptool -definebyquery: $error_code\n");
+    exit($error_code);
+    
+}
+
+ 
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/addstar_run.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/addstar_run.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/addstar_run.pl	(revision 34041)
@@ -38,6 +38,6 @@
 }
 my $minidvodb_path;
-my $stage_extra1 ;
-my ( $add_id, $camera, $stage, $stage_id, $multi_num, $outroot, $stageroot, $dbname, $reduction, $dvodb, $minidvodb, $minidvodb_name, $minidvodb_group, $image_only, $verbose, $no_update,
+
+my ( $add_id, $camera, $stage, $stage_id, $stage_extra1, $outroot, $stageroot, $dbname, $reduction, $dvodb, $minidvodb, $minidvodb_name, $minidvodb_group, $image_only, $verbose, $no_update,
      $no_op, $redirect, $save_temps);
 GetOptions(
@@ -46,5 +46,5 @@
     'stage|s=s'        => \$stage, # Camera
     'stage_id|w=s'   => \$stage_id,
-    'multi_num|w=s'    => \$multi_num, # the number for a staticskymulti (for finding cmf)
+    'stage_extra1|w=s'    => \$stage_extra1, # the number for a staticskymulti (for finding cmf), or stack_id
     'dbname|d=s'        => \$dbname, # Database name
     'outroot|w=s'       => \$outroot, # output file base name
@@ -117,4 +117,6 @@
 
 my $fpaObjects = $ipprc->filename("PSASTRO.OUTPUT", $stageroot) or &my_die("Missing entry from camera config", $add_id, $PS_EXIT_CONFIG_ERROR);
+my $fpaObjectsAlt = $fpaObjects;
+
 
 if ($stage =~ /cam/) {
@@ -160,12 +162,47 @@
     }
 }
-if (($stage =~/staticsky/) || ($stage =~/stack/)) {
+if (($stage =~/stack/)) {
     $fpaObjects =~ s/smf$/cmf/;
-}
-if ($stage =~/staticsky_multi/) {
-    $fpaObjects =~ s/smf$/cmf/; #this should do nothing because it was already modded above
-    &my_die( "can't find the filter_num for staticsky_multi, giving up.", $add_id, $PS_EXIT_SYS_ERROR) unless (defined $multi_num);
-    my $nice_num = sprintf ("%03d", $multi_num);
-    $fpaObjects =~ s/cmf$/$nice_num.cmf/;  #this make it look for .001.cmf, etc
+    $fpaObjectsAlt =~ s/smf$/cmf/;
+
+}
+my $fpaObjects1;
+my $fpaObjects2;
+my $checkalt = 0;
+if ($stage =~/staticsky/) {
+    $checkalt = 1;
+    my $sources   = $ipprc->filename("PSPHOT.OUT.CMF.MEF", $stageroot); #this is mostly rigtht except the .cmf needs either
+    # .000.cmf or .stk.xxxxx.cmf
+    print "$sources\n\n\n";
+    &my_die( "can't find the filter_num for staticsky_multi, giving up.", $add_id, $PS_EXIT_SYS_ERROR) unless (defined $stage_extra1);
+
+    
+    $fpaObjects1 = $sources;
+    $fpaObjects2 = $sources;
+    $fpaObjects = $sources;
+
+    my $nice_num = sprintf ("%03d", $stage_extra1);
+
+    $fpaObjects1 =~ s/cmf$/stk.$stage_extra1.cmf/;
+    $fpaObjects2 =~ s/cmf$/$nice_num.cmf/;  #this make it look for .001.cmf, etc
+ # we have 3 of them to try
+    my $realFile = $ipprc->file_resolve($fpaObjects);
+    my $realFile1 = $ipprc->file_resolve($fpaObjects1);
+    my $realFile2 = $ipprc->file_resolve($fpaObjects2);
+    if (!defined($realFile1)) {
+	if (!defined($realFile2)) {
+	    print "using $fpaObjects\n";
+	    
+	} else {
+	    print "using $fpaObjects2\n";
+	    $fpaObjects = $fpaObjects2;
+	}
+	
+    } else {
+	print "using $fpaObjects1\n";
+	$fpaObjects = $fpaObjects1;
+    }
+     
+
 }
 
@@ -222,6 +259,10 @@
 	    # get the names for the camera and the real input file
 	    my $camdir = $ipprc->dvo_cameradir(); # Camera directory for addstar
-	    my $realFile = $ipprc->file_resolve($fpaObjects) or &my_die("Unable to resolve $fpaObjects", $add_id, $PS_EXIT_SYS_ERROR);
-	    
+	   
+	    my $realFile = $ipprc->file_resolve($fpaObjects) or  &my_die("Unable to resolve $fpaObjects", $add_id, $PS_EXIT_SYS_ERROR);
+	    
+	    
+	   
+
 	    # require a defined output dvo database to run addstar (ie, refuse to use the .ptolemyrc default)
 	    my $command  = "$addstar -update"; # XXX optionally set -update?
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/automate_stacks.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/automate_stacks.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/automate_stacks.pl	(revision 34041)
@@ -1588,8 +1588,13 @@
 
 sub init_gpc_db {
+    ## change to use the site.config setting now, however may want to use replicated scidbs instead
+    my $ipprc =  PS::IPP::Config->new(); # IPP Configuration
+    my $siteConfig = $ipprc->{_siteConfig};
     use constant DB_SOCKET => '/var/run/mysqld/mysqld.sock';
-    my $dbserver = 'ippdb01';
+    # my $dbserver = 'ippdb01';
     my $dbuser = 'ippuser';
     my $dbpass = 'ippuser';
+    my $dbserver = metadataLookupStr($siteConfig, 'DBSERVER');
+    die "database configuration set up" unless defined($dbserver);
     $db = DBI->connect("DBI:mysql:database=${dbname};host=${dbserver};" .
                        "mysql_socket=" . DB_SOCKET(),
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/bundle_detrends.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/bundle_detrends.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/bundle_detrends.pl	(revision 34041)
@@ -128,8 +128,12 @@
 
 sub init_gpc_db {
+    ## change to use the site.config setting now, however may want to use replicated scidbs instead
+    my $siteConfig = $ipprc->{_siteConfig};
     use constant DB_SOCKET => '/var/run/mysqld/mysqld.sock';
-    my $dbserver = 'ippdb01';
+    # my $dbserver = 'ippdb01';
     my $dbuser = 'ippuser';
     my $dbpass = 'ippuser';
+    my $dbserver = metadataLookupStr($siteConfig, 'DBSERVER');
+    die "database configuration set up" unless defined($dbserver);
     $db = DBI->connect("DBI:mysql:database=${dbname};host=${dbserver};" .
                        "mysql_socket=" . DB_SOCKET(),
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/camera_exp.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/camera_exp.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/camera_exp.pl	(revision 34041)
@@ -41,7 +41,7 @@
 
 my ( $exp_tag, $cam_id, $camera, $outroot, $dbname, $reduction, $dvodb, $verbose, $no_update,
-     $no_op, $redirect, $save_temps, $run_state);
+     $no_op, $redirect, $save_temps, $run_state, $skip_binned, $skip_masks);
 GetOptions(
-    'exp_tag=s'          => \$exp_tag, # Exposure identifier
+    'exp_tag=s'         => \$exp_tag, # Exposure identifier
     'cam_id=s'          => \$cam_id, # Camtool identifier
     'camera|c=s'        => \$camera, # Camera
@@ -51,4 +51,6 @@
     'dvodb|w=s'         => \$dvodb,  # output DVO database
     'run-state=s'       => \$run_state, # 'new' or 'update'
+    'skip-binned'       => \$skip_binned, # override recipe - don't create binned images
+    'skip-refmask'      => \$skip_masks, # override recipe - don't create refmask
     'verbose'           => \$verbose,   # Print to stdout
     'no-update'         => \$no_update, # Update the database?
@@ -190,5 +192,5 @@
 
 my $produceMasks;               # Produce masks?
-{
+if (!$skip_masks) {
     # Get the PSASTRO recipe
     my $command = "$ppConfigDump -camera $camera -recipe PSASTRO $recipe_psastro -dump-recipe PSASTRO -";
@@ -205,5 +207,4 @@
 }
 
-
 ### not needed to have such an extensive temp file name.
 my ($list1File, $list1Name) = tempfile( "/tmp/$exp_tag.cm.$cam_id.b1.list.XXXX", UNLINK => !$save_temps ); # For binning 1
@@ -261,5 +262,5 @@
 
     # Make the jpeg for binning 1
-    if ($run_state eq 'new') {
+    if (!$skip_binned and ($run_state eq 'new')) {
         my $command = "$ppImage -list $list1Name $outroot"; # Command to run
         $command .= " -recipe PPIMAGE $recipe1";
@@ -276,5 +277,5 @@
 
     # Make the jpeg for binning 2
-    if ($run_state eq 'new') {
+    if (!$skip_binned and ($run_state eq 'new')) {
         my $command = "$ppImage -list $list2Name $outroot"; # Command to run
         $command .= " -recipe PPIMAGE $recipe2";
@@ -295,7 +296,8 @@
         $command  = "$psastro";
         $command .= " -list $list3Name";
-        $command .= " -masklist $list4Name";
+        $command .= " -masklist $list4Name" if $produceMasks;
         $command .= " $outroot";
         $command .= " -recipe PSASTRO $recipe_psastro";
+        $command .= " -Db PSASTRO:REFSTAR_MASK F" if $skip_masks;
         $command .= " -tracedest $traceDest -log $logDest";
         $command .= " -dbname $dbname" if defined $dbname;
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/destreak_restore_camera.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/destreak_restore_camera.pl	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/destreak_restore_camera.pl	(revision 34041)
@@ -0,0 +1,549 @@
+#!/usr/bin/env perl
+
+use warnings;
+use strict;
+
+use Carp;
+
+## report the program and machine
+use Sys::Hostname;
+my $host = hostname();
+my $date = `date`;
+print STDERR "\n\n";
+print STDERR "Starting script $0 on $host at $date\n\n";
+
+use vars qw( $VERSION );
+$VERSION = '0.01';
+
+use Digest::MD5::File qw( file_md5_hex );
+
+use IPC::Cmd 0.36 qw( can_run run );
+use File::Temp qw( tempfile );
+use File::Basename qw( basename dirname );
+use File::Copy;
+use PS::IPP::Metadata::Config;
+use PS::IPP::Metadata::List qw( parse_md_list );
+
+use PS::IPP::Config 1.01 qw( :standard );
+use Nebulous::Client;
+
+use Getopt::Long qw( GetOptions :config auto_help auto_version gnu_getopt );
+use Pod::Usage qw( pod2usage );
+
+# Look for programs we need
+my $missing_tools;
+my $magicdstool   = can_run('magicdstool') or (warn "Can't find magicdstool" and $missing_tools = 1);
+my $chiptool   = can_run('chiptool') or (warn "Can't find chiptool" and $missing_tools = 1);
+my $checkfits   = can_run('checkfits') or (warn "Can't find checkfits" and $missing_tools = 1);
+my $ftable   = can_run('ftable') or (warn "Can't find ftable" and $missing_tools = 1);
+my $censorObjects   = can_run('censorObjects') or (warn "Can't find censorObjects" and $missing_tools = 1);
+if ($missing_tools) {
+    warn("Can't find required tools.");
+    exit($PS_EXIT_CONFIG_ERROR);
+}
+
+# Parse the command-line arguments
+my ($magic_ds_id, $camera, $streaks, $cam_id, $uri, $path_base);
+my ($outroot, $release, $bytes, $md5sum);
+my ($dbname, $save_temps, $verbose, $no_update, $no_op, $logfile);
+
+GetOptions(
+           'magic_ds_id=s'  => \$magic_ds_id,# Magic destreak run identifier
+           'camera=s'       => \$camera,  # path_base of the input
+           'cam_id=s'       => \$cam_id, 
+           'path_base=s'    => \$path_base,  # path_base of the input
+           'dbname=s'       => \$dbname,     # Database name
+           'verbose'        => \$verbose,    # Print stuff?
+           'no-update'      => \$no_update,  # Don't update the database?
+           'no-op'          => \$no_op,      # Don't do any operations?
+           'logfile=s'      => \$logfile,
+           ) or pod2usage( 2 );
+
+pod2usage( -msg => "Unknown option: @ARGV", -exitval => 2 ) if @ARGV;
+pod2usage( -msg => "Required options: --magic_ds_id --camera --cam_id --path_base",
+           -exitval => 3) unless
+    defined $magic_ds_id and
+    defined $camera and
+    defined $cam_id and
+    defined $path_base;
+
+if ($camera ne 'GPC1') {
+    my_die("camera must be GPC1 not $camera ",  $magic_ds_id, $PS_EXIT_PROG_ERROR);
+}
+
+my $ipprc = PS::IPP::Config->new( $camera ) or my_die( "Unable to set up", $magic_ds_id, $PS_EXIT_CONFIG_ERROR ); # IPP configuration
+
+$ipprc->redirect_to_logfile($logfile) or my_die( "Unable to redirect output", $magic_ds_id, $PS_EXIT_SYS_ERROR ) if $logfile;
+
+my $nebulousServer = $ENV{NEB_SERVER};
+&my_die("cannot find NEB_SERVER in environment", $magic_ds_id, $PS_EXIT_CONFIG_ERROR) if !$nebulousServer;
+
+my $nebulous = eval { Nebulous::Client->new( proxy => $nebulousServer ); };
+if ($@ or not defined $nebulous) {
+    &my_die ("Unable to create a Nebulous::Client object with proxy $nebulousServer", $magic_ds_id, $PS_EXIT_CONFIG_ERROR);
+}
+
+my $mdcParser = PS::IPP::Metadata::Config->new; # Parser for metadata config files
+
+my $dirname  = dirname($path_base);
+my $basename = basename($path_base);
+my $nebulousInput = inNebulous($dirname);
+
+&my_die ("$dirname is not in nebulous", $magic_ds_id, $PS_EXIT_CONFIG_ERROR) unless $nebulousInput;
+
+my $backup_path_base = $dirname   . "/SR_" . "$basename";
+my $recovery_path_base = $dirname . "/REC_" . "$basename";
+
+my $astrom =  $ipprc->filename("PSASTRO.OUTPUT", $path_base);
+my $bastrom = $ipprc->filename("PSASTRO.OUTPUT", $backup_path_base);
+
+restore_file($astrom, $bastrom, 1) or
+        &my_die("failed to restore smf file", $magic_ds_id, $PS_EXIT_CONFIG_ERROR);
+
+# Now restore the mask files
+
+my @otas = qw(XY01 XY02 XY03 XY04 XY05 XY06 XY10 XY11 XY12 XY13 XY14 XY15 XY16 XY17 XY20 XY21 XY22 XY23 XY24 XY25 XY26 XY27 XY30 XY31 XY32 XY33 XY34 XY35 XY36 XY37 XY40 XY41 XY42 XY43 XY44 XY45 XY46 XY47 XY50 XY51 XY52 XY53 XY54 XY55 XY56 XY57 XY60 XY61 XY62 XY63 XY64 XY65 XY66 XY67 XY71 XY72 XY73 XY74 XY75 XY76);
+
+foreach my $class_id (@otas) {
+    my $mask  = "$path_base.$class_id.mk.fits";
+    my $bmask = "$backup_path_base.$class_id.mk.fits";
+    my $rmask = "$recovery_path_base.$class_id.mk.fits";
+    if (!restore_file($mask, $bmask, 0)) {
+        # no good mask file. Mark any chips that need this mask file to be useful as bad
+        # XXX: what about chipRuns with multiple camRuns can't we preserve those?
+        my $command = "$chiptool -dropprocessedimfile -cam_id $cam_id -class_id $class_id -set_quality 45";
+        $command   .= " -dbname $dbname" if defined $dbname;
+        unless ($no_update) {
+            my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
+                run(command => $command, verbose => $verbose);
+            unless ($success) {
+                $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR);
+                &my_die("Unable to perform magicdstool -addresult: $error_code", $magic_ds_id, 
+                    $error_code);
+            }
+        } else {
+            print "Skipping command: $command\n";
+        }
+    }
+}
+
+{
+    # this sets the camRun's magicked value back to zero and deletes the magicDSFile 
+    # row from the database
+    my $command = "$magicdstool -revertdestreakedfile -i_am_sure";
+    $command   .= " -state goto_restored";
+    $command   .= " -magic_ds_id $magic_ds_id";
+    $command   .= " -component exposure";
+    $command   .= " -dbname $dbname" if defined $dbname;
+
+    # Add the processed file to the database
+    unless ($no_update) {
+        my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
+            run(command => $command, verbose => $verbose);
+        unless ($success) {
+            $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR);
+            &my_die("Unable to perform magicdstool -addresult: $error_code", $magic_ds_id, 
+                $error_code);
+        }
+    } else {
+        print "Skipping command: $command\n";
+    }
+}
+{
+    # this sets the magicDSRun.state to restored
+    my $command = "$magicdstool -updaterun";
+    $command   .= " -set_state restored";
+    $command   .= " -magic_ds_id $magic_ds_id";
+    $command   .= " -dbname $dbname" if defined $dbname;
+
+    # Add the processed file to the database
+    unless ($no_update) {
+        my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
+            run(command => $command, verbose => $verbose);
+        unless ($success) {
+            $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR);
+            &my_die("Unable to perform magicdstool -addresult: $error_code", $magic_ds_id, 
+                $error_code);
+        }
+    } else {
+        print "Skipping command: $command\n";
+    }
+}
+exit 0;
+
+### Pau.
+
+sub restore_file {
+    my $original_url = shift;
+    my $backup_url = shift;
+    my $smf = shift;
+
+    print "\nStarting restore for $original_url\n";
+
+    # It is the backup that we expect to want to use, check it first.
+    my $backup = check_file($backup_url, 1, $smf);
+
+    # Is backup a good file whether censored or not?
+    my $backup_ok = ($backup->{so_exists} and $backup->{num_instances});
+    
+    # Check original, skip full check if backup is ok and uncensored since the backup
+    # is the one that we want to keep. 
+    my $original = check_file($original_url, (!$backup_ok or $backup->{censored}), $smf);
+
+    my $swap_urls = 0;
+    my $kill_censored = 0;
+    my $replicate = 0;
+
+    if ($backup_ok and !$backup->{censored}) {
+        #
+        # Normal case. A good uncensored backup file is available
+        #
+        if ($backup->{inconsistent}) {
+            # At least one of the instances was bad. Repair.
+            repair_file($backup, $smf) or
+                &my_die( "failed to repair $backup_url", $magic_ds_id, $PS_EXIT_CONFIG_ERROR);
+        }
+            
+        $replicate = $backup->{num_instances} < 2;
+
+        if ($original->{so_exists}) {
+            #
+            # Normal case. 
+            #
+            $swap_urls = 1;
+            $kill_censored = 1;
+        } else {
+            # no file at original url rename the backup
+            # note: rename_file prints a message and dies on failure
+            rename_file($backup_url, $original_url);
+        }
+    } else {
+        # Something is wrong with the backup file, either not ok or censored
+        # check the original
+        my $original_ok = ($original->{so_exists} and $original->{num_instances});
+        if ($original_ok) {
+            if ($original->{inconsistent}) {
+                repair_file($original, $smf) or
+                    &my_die( "failed to repair $original_url", $magic_ds_id, $PS_EXIT_CONFIG_ERROR);
+            }
+            if (!$original->{censored}) {
+                # Note this is where we end up if this file has already been restored
+                print "Keeping uncensored file at original url: $original_url\n";
+            } else {
+                print "No uncensored backup. Keeping censored file at original url: $original_url\n";
+            }
+            $kill_censored = $backup->{so_exists};
+            $replicate = $original->{num_instances} < 2;
+        }  else {
+            # Original is bad. Is the backup at least a good file. If so swap it back in even if it is censored.
+            if ($backup_ok) {
+                print "No file found at $original_url\n";
+                print "Swapping in      $backup_url\n";
+                if ($backup->{inconsistent}) {
+                    repair_file($backup, $smf) or 
+                        &my_die( "failed to repair $backup_url", $magic_ds_id, $PS_EXIT_CONFIG_ERROR);
+                }
+                $replicate = $backup->{num_instances} < 2;
+                if ($original->{so_exists}) {
+                    $swap_urls = 1;
+                    $kill_censored = 1;
+                } else {
+                    # note: rename_file prints a message and dies on failure
+                    rename_file($backup_url, $original_url);
+                }
+            } else {
+                # we're out of luck
+                print "No good file for $original_url found\n";
+                return 0;
+            }
+        }
+    }
+
+    # Ok Now we know what we need to do so do it
+
+    if (!$no_op) {
+        if ($swap_urls) {
+            if (! $nebulous->swap($backup_url, $original_url) ) {
+                print "failed to swap $backup_url\n";
+                print "            to $original_url\n";
+                &my_die( "aborting", $magic_ds_id, $PS_EXIT_CONFIG_ERROR);
+            } else {
+                print "restored $original_url\n";
+            }
+        }
+        if ($kill_censored) {
+            # destroy the backup file
+            $ipprc->kill_file($backup_url);
+        }
+
+        if ($replicate) {
+            $ipprc->replicate_file($original_url) 
+                or &my_die( "failed to replicate $original_url", $magic_ds_id, $PS_EXIT_CONFIG_ERROR);
+        }
+    } else {
+        print "Skipping:\n";
+        print "  Swap urls $backup_url $original_url\n" if $swap_urls;
+        print "  Delete $backup_url\n" if $swap_urls;
+        print "  Replicate $original_url\n" if $replicate;
+    }
+
+    return 1;
+}
+
+sub check_file {
+    my $url = shift;
+    my $full_check = shift;
+    my $smf = shift;
+
+    my %file;
+    $file{url} = $url;
+    $file{so_exists} = $nebulous->storage_object_exists($url);
+    $file{total_instances} = 0;
+    $file{num_instances} = 0;
+    $file{censored} = 0;
+    $file{inconsistent} = 0;
+    $file{instances} = [];
+    $file{bad_instances} = [];
+    $file{size} = 0;
+    $file{md5} = 0;
+
+    if ($file{so_exists}) {
+        my $stat = $nebulous->stat($url);
+
+        &my_die("nebulous stat failed for $url", $magic_ds_id, $PS_EXIT_CONFIG_ERROR) unless $stat;
+
+        $file{total_instances} = $stat->[7];
+
+        if ($file{total_instances}) {
+            my $instances;
+            eval {
+                $instances = $nebulous->find_instances($url, 'any');
+            };
+            if (!$instances or !scalar @$instances) {
+                print "No instances found for $url\n";
+                return \%file;
+            }
+
+            my $good_inst;
+            my $good_size = 0;
+            my $good_md5 = "";
+            my $good_censored ;
+            foreach my $inst (@$instances) {
+                $inst =~ s/file\:\/\///g;
+
+                if ( ! -e $inst) {
+                    print "instance file $inst does not exist\n";
+                    push @{$file{bad_instances}}, $inst;
+                    next;
+                }
+                my $this_size = -s $inst;
+                if (!$this_size) {
+                    print "instance file $inst has zero size\n";
+                    push @{$file{bad_instances}}, $inst;
+                    next;
+                }
+
+                my $this_censored = ($inst =~ /SR_/);
+
+                my $this_md5 = "";
+                if ($full_check) {
+                    $this_md5 = file_md5_hex($inst);
+                    if ($smf) {
+                        my $command = "$ftable -list  $inst | grep psf | wc";
+                        my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
+                                run(command => $command, verbose => $verbose);
+
+                        my $good = 0;
+                        if ($success) {
+                            my ($nchips) = split " ", join "", @$stdout_buf;
+                            $nchips += 0;
+                            if ($nchips and $nchips == 60) {
+                                $good = 1;
+                            } else {
+                                print "$inst has less than 60 psf extensions: $nchips checking with censorObjects\n";
+                                my $command = "$censorObjects -checkinputonly -file $inst";
+                                my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
+                                    run(command => $command, verbose => $verbose);
+
+                                if ($success) {
+                                    $good = 1;
+                                } else {
+                                    print "$command failed with error_code: $error_code\n", 
+                                }
+                            }
+                        } else {
+                            print "$command failed with error_code: $error_code\n", 
+                        } 
+                        if (!$good) {
+                            push @{$file{bad_instances}}, $inst;
+                            next;
+                        }
+                    } else {
+                        my $command = "$checkfits $inst";
+                        my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
+                                run(command => $command, verbose => $verbose);
+                        unless ($success) {
+                            print "$command failed with error_code: $error_code\n", 
+                            push @{$file{bad_instances}}, $inst;
+                            next;
+                        }
+                    }
+                }
+                if (!defined $good_inst) {
+                    $good_inst = $inst;
+                    $good_size = $this_size;
+                    $good_md5 = $this_md5;
+                    $good_censored = $this_censored;
+
+                    push @{$file{instances}}, $inst;
+
+                    # unless we're asked for a full all really care about is the censored status
+                    last if !$full_check;
+                } elsif ($this_size != $good_size) {
+                    print "size of $inst $this_size is not equal to size of $good_inst: $good_size\n";
+                    $file{inconsistent} = 1;
+                    push @{$file{bad_instances}}, $inst;
+                } elsif ($this_md5 ne $good_md5) {
+                    print "md5 of $inst $this_md5 is not equal to size of $good_inst: $good_md5\n";
+                    $file{inconsistent} = 1;
+                    push @{$file{bad_instances}}, $inst;
+                } else {
+                    # this matches the good instance
+                    push @{$file{instances}}, $inst;
+                }
+            }
+            $file{num_instances} = scalar @{$file{instances}};
+            $file{size} = $good_size;
+            $file{md5} = $good_md5;
+            if ($good_inst) {
+                $file{censored} = $good_censored;
+            } else {
+                # no good instances see if there was a bad one and check whether its url
+                # looks like a censored one
+                if (scalar @{$file{bad_instances}}) {
+                    my $bad = ${$file{bad_instances}}[0];
+                    $file{censored} = ($bad =~ /SR_/);
+                    print "no good instances found setting censored based on $bad\n";
+                }
+            }
+        }
+    } else {
+        print "No storage object found for $url \n";
+    }
+
+    return \%file;
+}
+
+sub rename_file {
+    if ($no_op) {
+        return 1;
+    }
+
+    my $original_url = shift;
+    my $backup_url = shift;
+
+    # rename the backup as the orig
+    print "No storage object for original url: $original_url\n";
+    print "Replacing with file at            : $backup_url\n";
+
+    my $moved;
+    eval {
+        $moved = nebulous->move($backup_url, $original_url);
+    };
+    if ($@ or not $moved) {
+        print "Failed to move $backup_url to $original_url\n";
+        &my_die( "aborting", $magic_ds_id, $PS_EXIT_CONFIG_ERROR);
+    }
+}
+
+sub repair_file {
+    if ($no_op) {
+        return 1;
+    }
+
+    my $file = shift;
+    my $smf = shift;
+
+    if ($file->{num_instances} < 1) {
+        print "cannot repair file with only no good instances\n";
+        return 0;
+    }
+
+    # file wouldn't get into instances array unless we decided that it was good in check_file
+    my $good_inst = $file->{instances}->[0];
+
+    my $fixed = 0;
+    foreach my $bad_inst (@{$file->{bad_instances}}) {
+        print "Attempting to repair $bad_inst\n";
+
+        my $parent_directory = dirname($bad_inst);
+        if (!-d $parent_directory) {
+            if (! mkdir $parent_directory) {
+                print "failed to mkdir parent directory $parent_directory\n";
+                $fixed = 0;
+                last;
+            }
+            if (!copy $good_inst, $bad_inst) {
+                print "failed to copy $good_inst to $bad_inst\n";
+            }
+            $fixed = 1;
+            push @{$file->{instances}}, $bad_inst;
+        }
+    }
+        
+    return $fixed;
+}
+
+
+
+sub delete_recovery_files
+{
+    foreach my $file (@_) {
+        next if !$file;
+	# don't care if this fails or not (it will fail if storage
+	# object doesn't exist
+        $ipprc->kill_file($file);
+    }
+}
+
+sub inNebulous
+{
+    my $path = shift;
+
+    my $scheme = file_scheme($path);
+
+    return $scheme and ($scheme eq "neb");
+}
+
+
+sub my_die
+{
+    my $msg = shift;            # Warning message on die
+    my $magic_ds_id = shift;    # Magic DS identifier
+    my $exit_code = shift;      # Exit code to add
+
+    carp($msg);
+
+    $exit_code = $PS_EXIT_PROG_ERROR unless defined $exit_code;
+
+    # fault the whole run if one of the components fails to revert
+    my $command = "$magicdstool -updaterun";
+    $command   .= " -magic_ds_id $magic_ds_id";
+    $command   .= " -set_state failed_restore";
+    $command   .= " -dbname $dbname" if defined $dbname;
+
+    # Add the processed file to the database
+    unless ($no_update) {
+        my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
+            run(command => $command, verbose => $verbose);
+        unless ($success) {
+            carp("failed to update database for $magic_ds_id");
+        }
+    } else {
+        print "Skipping command: $command\n";
+    }
+
+    exit $exit_code;
+}
+
+__END__
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_norm_apply.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_norm_apply.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_norm_apply.pl	(revision 34041)
@@ -96,4 +96,5 @@
     'CTEMASK'          => 'MASK',
     'DARKTEST'         => 'DARK',
+    'NOISEMAP'         => 'MASK',
     };
 
@@ -170,4 +171,7 @@
     }
     chomp $cmdflags;
+
+    # replicate output file
+    $ipprc->replicate_file($output) or &my_die("failed to replicate: $output\n", $det_id,$iter,$class_id,$PS_EXIT_SYS_ERROR);
 }
 
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_norm_calc.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_norm_calc.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_norm_calc.pl	(revision 34041)
@@ -88,4 +88,5 @@
     'CTEMASK'          => 0,
     'DARKTEST'         => 0,
+    'NOISEMAP'         => 0,
     };
 
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_process_imfile.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_process_imfile.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_process_imfile.pl	(revision 34041)
@@ -85,4 +85,5 @@
                   'DARKTEST'         => undef,
                   'CTEMASK'          => undef,
+		  'NOISEMAP'         => undef,
                   'SHUTTER'          => 'PPIMAGE.OUTPUT.DETREND',
                   'FLAT_PREMASK'     => 'PPIMAGE.OUTPUT.DETREND',
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_resid_imfile.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_resid_imfile.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_resid_imfile.pl	(revision 34041)
@@ -121,4 +121,5 @@
     'FLATMASK'         => '-mask',      # Specify the mask frame
     'CTEMASK'          => '-mask',      # Specify the mask frame
+    'NOISEMAP'         => '-noisemap',  # Specify the noisemap frame
 };
 
@@ -144,4 +145,5 @@
                   'SKYFLAT'          => 'PPIMAGE.OUTPUT.DETREND',
                   'FRINGE'           => 'PPIMAGE.OUTPUT.RESID',
+		  'NOISEMAP'         => 'PPIMAGE.OUTPUT.RESID',
               };
 
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_stack.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_stack.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/detrend_stack.pl	(revision 34041)
@@ -95,4 +95,5 @@
                   'SKYFLAT'          => 'PPMERGE.OUTPUT.FLAT',
                   'FRINGE'           => 'PPMERGE.OUTPUT.FRINGE',
+		  'NOISEMAP'         => 'PPMERGE.OUTPUT.FLAT',
               };
 my $output_filerule = $FILERULES->{$det_type}; # File rule for output
@@ -120,4 +121,5 @@
                    'SKYFLAT'          => 'DETSTATS',
                    'FRINGE'           => 'DETSTATS',
+		   'NOISEMAP'         => 'DETSTATS',
               };
 my $statrecipe = $STATRECIPES->{$det_type}; # File rule for output
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/ipp_cleanup.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/ipp_cleanup.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/ipp_cleanup.pl	(revision 34041)
@@ -1885,5 +1885,5 @@
 
             # if an error happens for one skycell, the warpBackgroundRun will stay in goto_*, but the skycells will go to error_* (matching the goto_*)
-            my $command = "$bgtool -updatewarpskyfile -warp_bg_id $stage_id -skycell_id $skycell_id -set_data_state $error_state";
+            my $command = "$bgtool -updatewarpskyfile -warp_bg_id $stage_id -skycell_id $skycell_id -set_state $error_state";
             $command .= " -dbname $dbname" if defined $dbname;
 
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/make_burntool_pcontrol.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/make_burntool_pcontrol.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/make_burntool_pcontrol.pl	(revision 34041)
@@ -29,8 +29,13 @@
 
 # Load database
+## change to use the site.config setting now
 $dbname = 'gpc1';
-$dbserver = 'ippdb01';
+#$dbserver = 'ippdb01';
 $dbuser = 'ipp';
 $dbpass = 'ipp';
+my $ipprc =  PS::IPP::Config->new(); # IPP Configuration
+my $siteConfig = $ipprc->{_siteConfig};
+my $dbserver = metadataLookupStr($siteConfig, 'DBSERVER');
+die "database configuration not set up" unless defined($dbserver);
 $db = DBI->connect("DBI:mysql:database=${dbname};host=${dbserver};" .
                    "mysql_socket=" . DB_SOCKET(),
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/nightly_science.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/nightly_science.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/nightly_science.pl	(revision 34041)
@@ -32,4 +32,8 @@
     exit($PS_EXIT_CONFIG_ERROR);
 }
+
+## for DB connection, want to use siteConfig DB settings
+my $ipprc =  PS::IPP::Config->new(); # IPP Configuration
+my $siteConfig = $ipprc->{_siteConfig};
 
 my $db;
@@ -1539,4 +1543,8 @@
 	    $cmd .= " -simple  -set_label $label -exp_id $input_exp_id -template_exp_id $template_exp_id ";
 #		$cmd .= " -pretend ";
+	    if (defined($reduction)) {
+		$cmd .= " -set_reduction $reduction ";
+	    }
+
 	    if (defined($pretend)) {
 		$cmd .= ' -pretend ';
@@ -1670,4 +1678,8 @@
 	    $cmd .= "-set_workdir $workdir  -set_dist_group $dist_group  -set_data_group $new_data_group ";
 	    $cmd .= " -simple  -set_label $label -exp_id $input_exp_id -template_exp_id $template_exp_id ";
+	    if (defined($reduction)) {
+		$cmd .= " -set_reduction $reduction ";
+	    }
+
 #		$cmd .= " -pretend ";
 	    if (defined($pretend)) {
@@ -1724,4 +1736,7 @@
     $check_cmd .= " -pretend -simple  -rerun -set_label $label -filter $filter ";
     $check_cmd .= " -dateobs_begin ${lunation_start}T00:00:00 -dateobs_end ${lunation_end}T23:59:59 -distance 1.5 ";
+    if (defined($reduction)) {
+	$check_cmd .= " -set_reduction $reduction ";
+    }
 
     my ($success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) = 
@@ -1745,4 +1760,7 @@
 	    $cmd .= " -simple  -rerun -set_label $label -filter $filter ";
 	    $cmd .= " -dateobs_begin ${lunation_start}T00:00:00 -dateobs_end ${lunation_end}T23:59:59 -distance 1.5 ";
+	    if (defined($reduction)) {
+		$cmd .= " -set_reduction $reduction ";
+	    }
 
 	    if (defined($pretend)) {
@@ -2038,8 +2056,15 @@
 
 sub init_gpc_db {
+    ## change to use the siteConfig setting, while readonly probably do not want to use a readonly replicated DB incase it gets behind
+    my $dbserver = metadataLookupStr($siteConfig, 'DBSERVER');
+    my $dbuser = metadataLookupStr($ipprc->{_siteConfig}, "RO_DBUSER");
+    my $dbpass = metadataLookupStr($ipprc->{_siteConfig}, "RO_DBPASSWORD");
+    die "database configuration not set up" unless defined($dbserver);
+    die "database configuration not set up" unless defined($dbuser);
+    die "database configuration not set up" unless defined($dbpass);
+    #my $dbserver = 'ippdb01';
+    #my $dbuser = 'ippuser';
+    #my $dbpass = 'ippuser';
     use constant DB_SOCKET => '/var/run/mysqld/mysqld.sock';
-    my $dbserver = 'ippdb01';
-    my $dbuser = 'ippuser';
-    my $dbpass = 'ippuser';
     $db = DBI->connect("DBI:mysql:database=${dbname};host=${dbserver};" .
                        "mysql_socket=" . DB_SOCKET(),
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/skycalibration.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/skycalibration.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/skycalibration.pl	(revision 34041)
@@ -134,5 +134,5 @@
 my $file;
 if (!$singlefilter) {
-    $file = $ipprc->filename('PSPHOT.STACK.OUTPUT', $path_base, $stack_id);
+    $file = $ipprc->filename('PSPHOT.STACK.OUTPUT', "$path_base.stk", $stack_id);
     if (! $ipprc->file_resolve($file)) {
         # XXX: Beginning of section that can be removed eventually
Index: branches/meh_branches/ppstack_test/ippScripts/scripts/staticsky.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippScripts/scripts/staticsky.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippScripts/scripts/staticsky.pl	(revision 34041)
@@ -81,5 +81,5 @@
     -msg => "Required options: --sky_id --outroot --camera",
     -exitval => 3,
-          ) unless 
+          ) unless
     defined $sky_id and
     defined $outroot and
@@ -89,5 +89,5 @@
 
 my $logDest = $ipprc->filename("LOG.EXP", $outroot);
-$ipprc->redirect_output($logDest) or my_die( "Unable to redirect output", $sky_id, $PS_EXIT_SYS_ERROR ) if $redirect;
+$ipprc->redirect_to_logfile($logDest) or my_die( "Unable to redirect output", $sky_id, $PS_EXIT_SYS_ERROR ) if $redirect;
 
 my $traceDest      = $ipprc->filename("TRACE.EXP", $outroot);
@@ -120,5 +120,5 @@
 
 
-# generate the input 
+# generate the input
 print $listFile "INPUT   MULTI\n";
 my $nInputs = @$files;
@@ -144,12 +144,15 @@
             my $path_base = $file->{path_base};
             print "input: $path_base\n";
+            my $stack_id = $file->{stack_id};
 
             my $imageCnv  = $ipprc->filename("PPSTACK.OUTPUT",          $path_base ); # Image name
             my $maskCnv   = $ipprc->filename("PPSTACK.OUTPUT.MASK",     $path_base ); # Mask name
             my $weightCnv = $ipprc->filename("PPSTACK.OUTPUT.VARIANCE", $path_base ); # Weight name
+            my $expnumCnv = $ipprc->filename("PPSTACK.OUTPUT.EXPNUM",   $path_base ); # Expnum name
 
             my $imageRaw  = $ipprc->filename("PPSTACK.UNCONV",          $path_base ); # Image name
             my $maskRaw   = $ipprc->filename("PPSTACK.UNCONV.MASK",     $path_base ); # Mask name
             my $weightRaw = $ipprc->filename("PPSTACK.UNCONV.VARIANCE", $path_base ); # Weight name
+            my $expnumRaw = $ipprc->filename("PPSTACK.UNCONV.EXPNUM",   $path_base ); # Expnum name
 
             my $sources   = $ipprc->filename("PSPHOT.OUT.CMF.MEF",      $path_base ); # Sources name
@@ -162,17 +165,22 @@
             &my_die("Couldn't find input: $maskRaw",   $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$maskRaw");
             &my_die("Couldn't find input: $weightRaw", $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$weightRaw");
+            &my_die("Couldn't find input: $expnumRaw", $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$expnumRaw");
             &my_die("Couldn't find input: $imageCnv",  $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$imageCnv");
             &my_die("Couldn't find input: $maskCnv",   $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$maskCnv");
             &my_die("Couldn't find input: $weightCnv", $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$weightCnv");
+            &my_die("Couldn't find input: $expnumCnv", $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$expnumCnv");
             &my_die("Couldn't find input: $psfCnv",    $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$psfCnv");
             &my_die("Couldn't find input: $sources",   $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$sources");
 
+            print $listFile "  STACK_ID      S64  " . $stack_id  . "\n";
             print $listFile "  RAW:IMAGE     STR  " . $imageRaw  . "\n";
             print $listFile "  RAW:MASK      STR  " . $maskRaw   . "\n";
             print $listFile "  RAW:VARIANCE  STR  " . $weightRaw . "\n";
+            print $listFile "  RAW:EXPNUM    STR  " . $expnumRaw . "\n";
 
             print $listFile "  CNV:IMAGE     STR  " . $imageCnv  . "\n";
             print $listFile "  CNV:MASK      STR  " . $maskCnv   . "\n";
             print $listFile "  CNV:VARIANCE  STR  " . $weightCnv . "\n";
+            print $listFile "  CNV:EXPNUM    STR  " . $expnumCnv . "\n";
             print $listFile "  CNV:PSF       STR  " . $psfCnv    . "\n";
 
@@ -227,8 +235,9 @@
                     # we have one set of output files per input file set
                     for (my $i = 0; $i < @$files; $i++) {
-                        my $outputName     = $ipprc->filename("PSPHOT.STACK.OUTPUT.IMAGE", $outroot, $i);
-                        my $outputMask     = $ipprc->filename("PSPHOT.STACK.OUTPUT.MASK", $outroot, $i);
-                        my $outputVariance = $ipprc->filename("PSPHOT.STACK.OUTPUT.VARIANCE", $outroot, $i);
-                        my $outputSources  = $ipprc->filename("PSPHOT.STACK.OUTPUT", $outroot, $i);
+                        my $stack_id = @$files[$i]->{stack_id};
+                        my $outputName     = $ipprc->filename("PSPHOT.STACK.OUTPUT.IMAGE", $outroot, $stack_id);
+                        my $outputMask     = $ipprc->filename("PSPHOT.STACK.OUTPUT.MASK", $outroot, $stack_id);
+                        my $outputVariance = $ipprc->filename("PSPHOT.STACK.OUTPUT.VARIANCE", $outroot, $stack_id);
+                        my $outputSources  = $ipprc->filename("PSPHOT.STACK.OUTPUT", $outroot, $stack_id);
 
                         # XXX these are optional and not generated by default
@@ -248,6 +257,6 @@
 
                     # XXX check the recipe -- should we expect these to exist?
-                    # &my_die("Couldn't find expected output file: $chisqName", 	  $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists($chisqName);
-                    # &my_die("Couldn't find expected output file: $chisqMask", 	  $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists($chisqMask);
+                    # &my_die("Couldn't find expected output file: $chisqName",           $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists($chisqName);
+                    # &my_die("Couldn't find expected output file: $chisqMask",           $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists($chisqMask);
                     # &my_die("Couldn't find expected output file: $chisqVariance", $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists($chisqVariance);
                 }
@@ -288,5 +297,5 @@
         my $use_raw = metadataLookupBool($recipeData, 'PSPHOT.STACK.USE.RAW');
 
-        my ($image, $mask, $variance);
+        my ($image, $mask, $variance, $expnum);
         if ($use_raw) {
             $image  = $ipprc->filename("PPSTACK.UNCONV",          $path_base ); # Image name
@@ -297,4 +306,5 @@
             $mask   = $ipprc->filename("PPSTACK.OUTPUT.MASK",     $path_base ); # Mask name
             $variance = $ipprc->filename("PPSTACK.OUTPUT.VARIANCE", $path_base ); # Weight name
+            $expnum = $ipprc->filename("PPSTACK.OUTPUT.EXPNUM", $path_base ); # Weight name
         }
 
@@ -306,4 +316,5 @@
         &my_die("Couldn't find input: $mask",   $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$mask");
         &my_die("Couldn't find input: $variance", $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$variance");
+        &my_die("Couldn't find input: $expnum", $sky_id, $PS_EXIT_SYS_ERROR) unless $ipprc->file_exists("$expnum");
 
         # Perform stack photometry analysis
@@ -313,4 +324,5 @@
             $command .= " -mask $mask";
             $command .= " -variance $variance";
+            $command .= " -expnum $expnum";
             $command .= " -threads $threads" if defined $threads;
             $command .= " -recipe PSPHOT  $recipe_psphot";
@@ -335,5 +347,5 @@
                 }
 
-                &my_die("Couldn't find expected output file: $configuration", $sky_id, $PS_EXIT_SYS_ERROR) 
+                &my_die("Couldn't find expected output file: $configuration", $sky_id, $PS_EXIT_SYS_ERROR)
                     unless $ipprc->file_exists($configuration);
             } else {
@@ -348,9 +360,9 @@
     {
         my $command = "$staticskytool -sky_id $sky_id";
-	$command .= " -addresult -path_base $outroot";
-	$command .= " -num_inputs $nInputs";
-	# $command .= " $cmdflags";
-	$command .= (" -dtime_script " . ((DateTime->now->mjd - $mjd_start) * 86400));
-	$command .= " -hostname $host" if defined $host;
+        $command .= " -addresult -path_base $outroot";
+        $command .= " -num_inputs $nInputs";
+        # $command .= " $cmdflags";
+        $command .= (" -dtime_script " . ((DateTime->now->mjd - $mjd_start) * 86400));
+        $command .= " -hostname $host" if defined $host;
         $command .= " -dbname $dbname" if defined $dbname;
 
@@ -360,6 +372,6 @@
             $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR);
             my $err_message = "Unable to perform staticskytool -addresult";
-	    warn($err_message);
-	    exit $error_code;
+            warn($err_message);
+            exit $error_code;
         }
     }
@@ -378,9 +390,9 @@
     if (defined $sky_id and not $no_update) {
         my $command = "$staticskytool -sky_id $sky_id -fault $exit_code";
-	$command .= " -addresult";
-	$command .= (" -dtime_script " . ((DateTime->now->mjd - $mjd_start) * 86400));
-	$command .= " -hostname $host" if defined $host;
-	$command .= " -path_base $outroot" if defined $outroot;
-	$command .= " -dbname $dbname" if defined $dbname;
+        $command .= " -addresult";
+        $command .= (" -dtime_script " . ((DateTime->now->mjd - $mjd_start) * 86400));
+        $command .= " -hostname $host" if defined $host;
+        $command .= " -path_base $outroot" if defined $outroot;
+        $command .= " -dbname $dbname" if defined $dbname;
         run(command => $command, verbose => $verbose);
     }
Index: branches/meh_branches/ppstack_test/ippTasks/addstar.pro
===================================================================
--- branches/meh_branches/ppstack_test/ippTasks/addstar.pro	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTasks/addstar.pro	(revision 34041)
@@ -26,7 +26,4 @@
     active true
   end
-  task addstar.exp.load.staticsky_multi
-    active true
-  end  
   task addstar.exp.run
     active true
@@ -44,7 +41,4 @@
     active false
   end
-  task addstar.exp.load.staticsky_multi
-    active false
-  end
   task addstar.exp.run
     active false
@@ -62,7 +56,4 @@
     active false
   end
- task addstar.revert.staticsky_multi
-    active false
-  end
 end
 macro addstar.revert.on
@@ -71,7 +62,4 @@
   end
   task addstar.revert.stack
-    active true
-  end
-  task addstar.revert.staticsky_multi
     active true
   end
@@ -90,4 +78,7 @@
 $addstar_revert_DB_SSM = 0
 
+$LOADEXEX_ADD = 300
+
+
 
 # select images ready for addstar analysis
@@ -98,6 +89,6 @@
 
   periods      -poll $LOADPOLL
-  periods      -exec $LOADEXEC
-  periods      -timeout 30
+  periods      -exec $LOADEXEC_ADD
+  periods      -timeout 300
   npending     1
 
@@ -153,6 +144,6 @@
 
   periods      -poll $LOADPOLL
-  periods      -exec $LOADEXEC
-  periods      -timeout 30
+  periods      -exec $LOADEXEC_ADD
+  periods      -timeout 300
   npending     1
 
@@ -206,8 +197,7 @@
 task	       addstar.exp.load.staticsky
   host         local
-
   periods      -poll $LOADPOLL
-  periods      -exec $LOADEXEC
-  periods      -timeout 30
+  periods      -exec 300
+  periods      -timeout 300
   npending     1
 
@@ -218,59 +208,4 @@
    # if ($LABEL:n == 0) break
     $run = addtool -pendingexp -stage staticsky
-    if ($DB:n == 0)
-      option DEFAULT
-    else
-      # save the DB name for the exit tasks
-      option $DB:$addstar_DB
-      $run = $run -dbname $DB:$addstar_DB
-      $addstar_DB ++
-      if ($addstar_DB >= $DB:n) set addstar_DB = 0
-    end
-    add_poll_args run
-    add_poll_labels run
-    command $run
-  end
-
-  # success
-  task.exit    0
-    # convert 'stdout' to book format
-    ipptool2book stdout addPendingExp -key add_id -uniq -setword dbname $options:0 -setword pantaskState INIT
-    if ($VERBOSE > 2)
-      book listbook addPendingExp
-    end
-
-    # delete existing entries in the appropriate pantaskStates
-    process_cleanup addPendingExp
-  end
-
-  # default exit status
-  task.exit    default
-    showcommand failure
-  end
-
-  task.exit    crash
-    showcommand crash
-  end
-
-  # operation times out?
-  task.exit    timeout
-    showcommand timeout
-  end
-end
-
-task	       addstar.exp.load.staticsky_multi
-  host         local
-
-  periods      -poll $LOADPOLL
-  periods      -exec $LOADEXEC
-  periods      -timeout 30
-  npending     1
-
-  stdout NULL
-  stderr $LOGDIR/addstar.exp.log
-
-  task.exec
-   # if ($LABEL:n == 0) break
-    $run = addtool -pendingexp -stage staticsky_multi
     if ($DB:n == 0)
       option DEFAULT
@@ -373,7 +308,4 @@
 	sprintf outroot "%s.add.%s" $STAGEROOT $ADD_ID
     end
-    if ("$STAGE" == "staticsky_multi")
-	sprintf outroot "%s.add.%s" $STAGEROOT $ADD_ID
-    end
     if ("$STAGE" == "stack")
 	sprintf outroot "%s.add.%s" $STAGEROOT $ADD_ID
@@ -388,6 +320,6 @@
       $run = $run --reduction $REDUCTION
     end
-    if ("$STAGE" == "staticsky_multi")
-      $run = $run --multi_num $STAGE_EXTRA1
+    if ("$STAGE" == "staticsky")
+      $run = $run --stage_extra1 $STAGE_EXTRA1  --stage_id $STAGE_ID
     end
     if ("$STAGE" == "cam") 
@@ -529,4 +461,5 @@
   end
 end
+
 task addstar.revert.staticsky
   host         local
@@ -544,50 +477,4 @@
     if ($LABEL:n == 0) break
     $run = addtool -revertprocessedexp -stage staticsky
-    if ($DB:n == 0)
-      option DEFAULT
-    else
-      # save the DB name for the exit tasks
-      option $DB:$addstar_revert_DB_SS
-      $run = $run -dbname $DB:$addstar_revert_DB_SS
-      $addstar_revert_DB_SS ++
-      if ($addstar_revert_DB_SS >= $DB:n) set addstar_revert_DB_SS = 0
-    end
-    add_poll_labels run
-    command $run
-  end
-
-  # success
-  task.exit    0
-  end
-
-  # locked list
-  task.exit    default
-    showcommand failure
-  end
-
-  task.exit    crash
-    showcommand crash
-  end
-
-  # operation times out?
-  task.exit    timeout
-    showcommand timeout
-  end
-end
-task addstar.revert.staticsky_multi
-  host         local
-
-  periods      -poll 5.0
-  periods      -exec 60.0
-  periods      -timeout 1200
-  npending     1
-  active        false
-
-  stdout NULL
-  stderr $LOGDIR/revert.log
-
-  task.exec
-    if ($LABEL:n == 0) break
-    $run = addtool -revertprocessedexp -stage staticsky_multi
     if ($DB:n == 0)
       option DEFAULT
Index: branches/meh_branches/ppstack_test/ippTasks/destreak.pro
===================================================================
--- branches/meh_branches/ppstack_test/ippTasks/destreak.pro	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTasks/destreak.pro	(revision 34041)
@@ -317,5 +317,5 @@
   host         local
   periods      -poll 5
-  periods      -exec 120.
+  periods      -exec 120
   periods      -timeout 120
   npending     1
@@ -427,8 +427,15 @@
         set.workdir.by.camera $CAMERA $COMPONENT $OUTROOT $default_host WORKDIR
     end
-    sprintf logfile "%s/%s.mds.revert.%s.%s.%s.log" $WORKDIR $EXP_ID $MAGIC_DS_ID $STAGE_ID $COMPONENT
-
-    $run = magic_destreak_revert.pl --magic_ds_id $MAGIC_DS_ID --camera $CAMERA --stage $STAGE --stage_id $STAGE_ID --component $COMPONENT --path_base $PATH_BASE --cam_path_base $CAM_PATH_BASE --cam_reduction $CAM_REDUCTION --outroot $WORKDIR --logfile $logfile --replace $REPLACE --bothways $BOTHWAYS --magicked $MAGICKED --run-state $RUN_STATE --recovery_path_base $RECOVERY_PATH_BASE
-
+
+    if (("$RUN_STATE" == "goto_restored") && ("$STAGE" == "camera"))
+
+        sprintf logfile "%s.dsrestore.log" $PATH_BASE
+
+        $run = destreak_restore_camera.pl --magic_ds_id $MAGIC_DS_ID --camera $CAMERA  --cam_id $STAGE_ID --path_base $PATH_BASE --dbname $DBNAME --logfile $logfile
+
+    else
+        sprintf logfile "%s/%s.mds.revert.%s.%s.%s.log" $WORKDIR $EXP_ID $MAGIC_DS_ID $STAGE_ID $COMPONENT
+        $run = magic_destreak_revert.pl --magic_ds_id $MAGIC_DS_ID --camera $CAMERA --stage $STAGE --stage_id $STAGE_ID --component $COMPONENT --path_base $PATH_BASE --cam_path_base $CAM_PATH_BASE --cam_reduction $CAM_REDUCTION --outroot $WORKDIR --logfile $logfile --replace $REPLACE --bothways $BOTHWAYS --magicked $MAGICKED --run-state $RUN_STATE --recovery_path_base $RECOVERY_PATH_BASE
+    end
     add_standard_args run
 
Index: branches/meh_branches/ppstack_test/ippTasks/minidvodb.pro
===================================================================
--- branches/meh_branches/ppstack_test/ippTasks/minidvodb.pro	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTasks/minidvodb.pro	(revision 34041)
@@ -189,5 +189,5 @@
 
 
-
+$LOADEXEC_MDB = 300
 
 
@@ -199,6 +199,6 @@
 
   periods      -poll $LOADPOLL
-  periods      -exec $LOADEXEC
-  periods      -timeout 30
+  periods      -exec $LOADEXEC_MDB
+  periods      -timeout 300
   npending     1
 
@@ -343,5 +343,5 @@
 
   periods      -poll $LOADPOLL
-  periods      -exec $LOADEXEC
+  periods      -exec $LOADEXEC_MDB
   periods      -timeout 30
   npending     1
@@ -509,5 +509,5 @@
 
   periods      -poll $LOADPOLL
-  periods      -exec $LOADEXEC
+  periods      -exec $LOADEXEC_MDB
   periods      -timeout 240
   npending     1
@@ -590,5 +590,5 @@
 
   periods      -poll $LOADPOLL
-  periods      -exec $LOADEXEC
+  periods      -exec $LOADEXEC_MDB
   periods      -timeout 30
   npending     1
Index: branches/meh_branches/ppstack_test/ippTasks/pstamp.pro
===================================================================
--- branches/meh_branches/ppstack_test/ippTasks/pstamp.pro	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTasks/pstamp.pro	(revision 34041)
@@ -13,4 +13,5 @@
 $pstampFin_DB = 0
 $pstampRev_DB = 0
+$pstampRevReq_DB = 0
 $pstampDep_DB = 0
 $pstampRevDep_DB = 0
@@ -117,4 +118,7 @@
 
 macro pstamp.revert.on
+    task pstamp.request.revert
+        active true
+    end
     task pstamp.job.revert
         active true
@@ -128,4 +132,7 @@
 end
 macro pstamp.revert.off
+    task pstamp.request.revert
+        active false
+    end
     task pstamp.job.revert
         active false
@@ -200,4 +207,85 @@
     end
 end
+
+echo DEFINING PLABEL stuff
+# keep a separate list of labels for request parsing
+if ($?PLABEL:n == 0)   	  set PLABEL:n = 0
+set PLABEL:n = 0
+
+macro add.parse.label
+  if ($0 != 2)
+    echo "USAGE: add.parse.label (label)"
+    break
+  end
+  if ($?PLABEL:n == 0)
+    list PLABEL -add $1
+    return
+  end
+
+  local found
+  $found = 0
+  for i 0 $PLABEL:n
+    if ($PLABEL:$i == $1) 
+      $found = 1
+      echo "$PLABEL:$i set"
+      last
+    end
+  end
+  
+  if ($found == 0)
+    list PLABEL -add $1
+  end
+end
+
+
+macro del.parse.label
+  if ($0 != 2)
+    echo "USAGE: del.parse.label (label)"
+    break
+  end
+  if ($?PLABEL:n == 0)
+    return
+  end
+
+  list PLABEL -del $1
+end
+
+macro show.parse.labels
+  if ($0 != 1)
+    echo "USAGE: show.parse.labels"
+    break
+  end
+  if ($?PLABEL:n == 0)
+    echo "no labels defined"
+  end
+  if ($PLABEL:n == 0)
+    echo "no labels defined"
+  end
+
+  local i
+  for i 0 $PLABEL:n
+    echo $PLABEL:$i
+  end
+end
+
+macro add_parse_labels
+    if ($0 != 2)
+	echo "Must pass in the command of interest, and this function will supplement"
+	stop
+    end
+
+    local command i
+
+    $command = $$1
+
+    # Only process the data with the specified label.
+    for i 0 $PLABEL:n
+      $command = $command -label $PLABEL:$i
+    end
+
+    $$1 = $command
+end
+
+echo DONE defineing plabel stuf
 
 task pstamp.request.find
@@ -261,5 +349,6 @@
         end
         add_poll_args run
-        add_poll_labels run
+        # add_poll_labels run
+        add_parse_labels run
         # limit number of requests in the queue to avoid blocking everything
         # when jobs take an infinite amount of time to parse
@@ -580,4 +669,44 @@
 end
 
+task pstamp.request.revert
+    host        local
+
+    periods     -poll $LOADPOLL
+    periods     -exec 1200
+    periods     -timeout 20
+    npending    1
+
+    task.exec
+        stdout NULL
+        stderr $LOGSUBDIR/pstamp.request.revert.log
+        $run = pstamptool -revertreq
+        if ($DB:n == 0)
+            option DEFAULT
+        else 
+            $run = $run $PS_DBSERVER -dbname $DB:$pstampRevReq_DB
+            $pstampRevReq_DB ++
+            if ($pstampRevReq_DB >= $DB:n) set pstampRevReq_DB = 0
+        end
+        add_poll_args run
+        add_poll_labels run
+        command $run
+    end
+
+    task.exit $EXIT_SUCCESS
+        # nothing to do
+    end
+
+    task.exit   default
+        showcommand failure
+    end
+
+    task.exit   crash
+        showcommand crash
+    end
+
+    task.exit   timeout
+        showcommand timeout
+    end
+end
 task pstamp.job.revert
     host        local
@@ -961,6 +1090,6 @@
 
     periods     -poll $LOADPOLL
-    periods     -exec 90
-    periods     -timeout 20
+    periods     -exec 60
+    periods     -timeout 120
     npending    1
 
Index: branches/meh_branches/ppstack_test/ippTasks/staticsky.pro
===================================================================
--- branches/meh_branches/ppstack_test/ippTasks/staticsky.pro	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTasks/staticsky.pro	(revision 34041)
@@ -151,4 +151,5 @@
     # book getword staticskyResult $pageName camera -var CAMERA
     $CAMERA = GPC1
+    # $CAMERA = MEGACAM
 
     # set the host and workdir based on the skycell hash
@@ -158,5 +159,5 @@
     basename $TESS_DIR -var TESS_ID
     if ("$PATH_BASE" == "NULL")
-        sprintf outroot "%s/%s/%s/%s.%s.stk.%s" $WORKDIR $TESS_ID $SKYCELL_ID $TESS_ID $SKYCELL_ID $SKY_ID
+        sprintf outroot "%s/%s/%s/%s.%s.sky.%s" $WORKDIR $TESS_ID $SKYCELL_ID $TESS_ID $SKYCELL_ID $SKY_ID
     else
         $outroot = $PATH_BASE
Index: branches/meh_branches/ppstack_test/ippTasks/survey.pro
===================================================================
--- branches/meh_branches/ppstack_test/ippTasks/survey.pro	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTasks/survey.pro	(revision 34041)
@@ -859,9 +859,4 @@
         $run = $run -uncensored
     end
-    if ("$stage" == "staticsky_multi") 
-        #only queue uncensored staticsky (multi filter)
-        $run = $run -uncensored
-    end
-
     if ("$stage" == "stack") 
         #only queue uncensored stacks
Index: branches/meh_branches/ppstack_test/ippToPsps/config/OB/tables.vot
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/config/OB/tables.vot	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippToPsps/config/OB/tables.vot	(revision 34041)
@@ -0,0 +1,298 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<VOTABLE version="1.1">
+  <RESOURCE>
+    <TABLE name="Object">
+      <DESCRIPTION>VOTable description of PSPS table Object</DESCRIPTION>
+      <PARAM arraysize="1" datatype="char" ucd="meta.bib.author" name="Author" value="PSPS"></PARAM>
+      <FIELD name="objID" arraysize="1" datatype="long" unit="unknown">
+        <DESCRIPTION>ODM object identifier index</DESCRIPTION>
+      </FIELD>
+      <FIELD name="ippObjID" arraysize="1" datatype="long" unit="unknown">
+        <DESCRIPTION>IPP object number</DESCRIPTION>
+      </FIELD>
+      <FIELD name="projectionCellID" arraysize="1" datatype="int" unit="unknown">
+        <DESCRIPTION>projection cell identifier at discovery time</DESCRIPTION>
+      </FIELD>
+      <FIELD name="htmID" arraysize="1" datatype="long" unit="unknown">
+        <DESCRIPTION>HTM index</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zoneID" arraysize="1" datatype="int" unit="unknown">
+        <DESCRIPTION>Zone index</DESCRIPTION>
+      </FIELD>
+      <FIELD name="stackVer" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>static stack version number</DESCRIPTION>
+      </FIELD>
+      <FIELD name="objInfoFlag" arraysize="1" datatype="long" unit="unknown">
+        <DESCRIPTION>flag indicating odd properties</DESCRIPTION>
+      </FIELD>
+      <FIELD name="varFlag" arraysize="1" datatype="unsignedByte" unit="unknown">
+        <DESCRIPTION>variable in difference image detections</DESCRIPTION>
+      </FIELD>
+      <FIELD name="surveyID" arraysize="1" datatype="unsignedByte" unit="unknown">
+        <DESCRIPTION>Survey ID</DESCRIPTION>
+      </FIELD>
+      <FIELD name="ra" arraysize="1" datatype="double" unit="degree">
+        <DESCRIPTION> Right Ascension</DESCRIPTION>
+      </FIELD>
+      <FIELD name="dec" arraysize="1" datatype="double" unit="degree">
+        <DESCRIPTION> Declination</DESCRIPTION>
+      </FIELD>
+      <FIELD name="raErr" arraysize="1" datatype="float" unit="arcsec">
+        <DESCRIPTION> Right Ascension error</DESCRIPTION>
+      </FIELD>
+      <FIELD name="decErr" arraysize="1" datatype="float" unit="arcsec">
+        <DESCRIPTION> Declination error</DESCRIPTION>
+      </FIELD>
+      <FIELD name="cx" arraysize="1" datatype="double" unit="unknown">
+        <DESCRIPTION>Cartesian x</DESCRIPTION>
+      </FIELD>
+      <FIELD name="cy" arraysize="1" datatype="double" unit="unknown">
+        <DESCRIPTION>Cartesian y</DESCRIPTION>
+      </FIELD>
+      <FIELD name="cz" arraysize="1" datatype="double" unit="unknown">
+        <DESCRIPTION>Cartesian z</DESCRIPTION>
+      </FIELD>
+      <FIELD name="lambda" arraysize="1" datatype="double" unit="degree">
+        <DESCRIPTION> ecliptic longitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="beta" arraysize="1" datatype="double" unit="degree">
+        <DESCRIPTION> ecliptic latitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="l" arraysize="1" datatype="double" unit="degree">
+        <DESCRIPTION> galactic longitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="b" arraysize="1" datatype="double" unit="degree">
+        <DESCRIPTION> galactic latitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="lsg" arraysize="1" datatype="double" unit="unknown">
+        <DESCRIPTION>supergalactic longitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="bsg" arraysize="1" datatype="double" unit="unknown">
+        <DESCRIPTION>supergalactic latitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="nDetections" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>total number of detection measurements in all filters</DESCRIPTION>
+      </FIELD>
+      <FIELD name="raMean" arraysize="1" datatype="double" unit="degree">
+        <DESCRIPTION> mean RA of object</DESCRIPTION>
+      </FIELD>
+      <FIELD name="decMean" arraysize="1" datatype="double" unit="degree">
+        <DESCRIPTION> mean DEC of object</DESCRIPTION>
+      </FIELD>
+      <FIELD name="raMeanErr" arraysize="1" datatype="float" unit="arcsec">
+        <DESCRIPTION> estimated error in raMean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="decMeanErr" arraysize="1" datatype="float" unit="arcsec">
+        <DESCRIPTION> estimated error in decMean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="ng" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>number of measures in g filter</DESCRIPTION>
+      </FIELD>
+      <FIELD name="gMeanMag" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean g magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="gMeanFlux" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean g flux</DESCRIPTION>
+      </FIELD>
+      <FIELD name="gMeanMagErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of g magnitude mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="gMeanFluxErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of g flux mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="gMin" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> minimum g magnitide</DESCRIPTION>
+      </FIELD>
+      <FIELD name="gMax" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> maximum g magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="nr" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>number of measures in r filter</DESCRIPTION>
+      </FIELD>
+      <FIELD name="rMeanMag" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean r magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="rMeanFlux" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean r flux</DESCRIPTION>
+      </FIELD>
+      <FIELD name="rMeanMagErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of r magnitude mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="rMeanFluxErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of r flux mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="rMin" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> minimum r magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="rMax" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> maximum r magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="ni" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>number of measures in i filter</DESCRIPTION>
+      </FIELD>
+      <FIELD name="iMeanMag" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean i magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="iMeanFlux" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean i flux</DESCRIPTION>
+      </FIELD>
+      <FIELD name="iMeanMagErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of i magitude mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="iMeanFluxErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of i flux mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="iMin" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> minimum i magniutde</DESCRIPTION>
+      </FIELD>
+      <FIELD name="iMax" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> maximum i magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="nz" arraysize="1" datatype="short" unit="mag">
+        <DESCRIPTION> number of measures in z filter</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zMeanMag" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean z magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zMeanFlux" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean z flux</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zMeanMagErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of z magnitude mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zMeanFluxErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of z flux mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zMin" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> minimum z magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zMax" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> maximum z magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="ny" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>number of measures in y filter</DESCRIPTION>
+      </FIELD>
+      <FIELD name="yMeanMag" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean y magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="yMeanFlux" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean y flux</DESCRIPTION>
+      </FIELD>
+      <FIELD name="yMeanMagErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of y magnitude mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="yMeanFluxErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of y flux mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="yMin" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> minimum y magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="yMax" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> maximum y magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="nw" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>number of measures in the wide (w) solar system filter</DESCRIPTION>
+      </FIELD>
+      <FIELD name="wMeanMag" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean w magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="wMeanFlux" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> mean w flux</DESCRIPTION>
+      </FIELD>
+      <FIELD name="wMeanMagErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of w magnitude mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="wMeanFluxErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> estimated error of w flux mean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="wMin" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> minimum w magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="wMax" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> maximum w magnitude</DESCRIPTION>
+      </FIELD>
+      <FIELD name="grMeanColor" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> g-r color from gMean &amp;amp; rMean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="riMeanColor" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> r-i color from rMean &amp;amp; iMean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="izMeanColor" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> i-z color from iMean &amp;amp; zMean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zyMeanColor" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> z-y color from zMean &amp;amp; yMean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="grMeanColorErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> Estimated error in g-r color from gMean &amp;amp; rMean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="riMeanColorErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> Estimated error in r-i color from rMean &amp;amp; iMean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="izMeanColorErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> Estimated error in i-z color from iMean &amp;amp; zMean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zyMeanColorErr" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> Estimated error in z-y color from zMean &amp;amp; yMean</DESCRIPTION>
+      </FIELD>
+      <FIELD name="gMagBest" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> g magnitude from stack frames</DESCRIPTION>
+      </FIELD>
+      <FIELD name="gModID" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>index of which g model magnitude was used from stack</DESCRIPTION>
+      </FIELD>
+      <FIELD name="rMagBest" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> r magnitude from stack frames</DESCRIPTION>
+      </FIELD>
+      <FIELD name="rModID" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>index of which r model magnitude was used from stack</DESCRIPTION>
+      </FIELD>
+      <FIELD name="iMagBest" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> i magnitude from stack frames</DESCRIPTION>
+      </FIELD>
+      <FIELD name="iModID" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>index of which i model magnitude was used from stack</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zMagBest" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> z magnitude from stack frames</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zModID" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>index of which z model magnitude was used from stack</DESCRIPTION>
+      </FIELD>
+      <FIELD name="yMagBest" arraysize="1" datatype="float" unit="mag">
+        <DESCRIPTION> y magnitude from stack frames</DESCRIPTION>
+      </FIELD>
+      <FIELD name="yModID" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>index of which y model magnitude was used from stack</DESCRIPTION>
+      </FIELD>
+      <FIELD name="grColor" arraysize="1" datatype="float" unit="unknown">
+        <DESCRIPTION>g-r color from gmag and rmag</DESCRIPTION>
+      </FIELD>
+      <FIELD name="riColor" arraysize="1" datatype="float" unit="unknown">
+        <DESCRIPTION>r-i color from rmag and imag</DESCRIPTION>
+      </FIELD>
+      <FIELD name="izColor" arraysize="1" datatype="float" unit="unknown">
+        <DESCRIPTION>i-z color from imag and zmag</DESCRIPTION>
+      </FIELD>
+      <FIELD name="zyColor" arraysize="1" datatype="float" unit="unknown">
+        <DESCRIPTION>z-y color from zmag and ymag</DESCRIPTION>
+      </FIELD>
+      <FIELD name="sgSep" arraysize="1" datatype="float" unit="unknown">
+        <DESCRIPTION>star/galaxy separator - true if any one color is</DESCRIPTION>
+      </FIELD>
+      <FIELD name="consistencyFlag" arraysize="1" datatype="short" unit="unknown">
+        <DESCRIPTION>Value computed from associated detections, it is originally given by IPP and should agree with the ODM validation</DESCRIPTION>
+      </FIELD>
+      <FIELD name="dataRelease" arraysize="1" datatype="unsignedByte" unit="unknown">
+        <DESCRIPTION>Data release</DESCRIPTION>
+      </FIELD>
+      <FIELD name="updated" arraysize="1" datatype="int" unit="unknown">
+        <DESCRIPTION>MJD of last update</DESCRIPTION>
+      </FIELD>
+      <DATA>
+        <TABLEDATA></TABLEDATA>
+      </DATA>
+    </TABLE>
+  </RESOURCE>
+</VOTABLE>
Index: branches/meh_branches/ppstack_test/ippToPsps/config/ippToPspsDbSchema.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/config/ippToPspsDbSchema.sql	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippToPsps/config/ippToPspsDbSchema.sql	(revision 34041)
@@ -0,0 +1,217 @@
+-- MySQL dump 10.11
+--
+-- Host: ippdb01    Database: ipptopsps
+-- ------------------------------------------------------
+-- Server version	5.0.77-log
+
+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
+/*!40101 SET NAMES utf8 */;
+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
+/*!40103 SET TIME_ZONE='+00:00' */;
+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
+
+--
+-- Table structure for table `batch`
+--
+
+DROP TABLE IF EXISTS `batch`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `batch` (
+  `batch_id` bigint(20) unsigned NOT NULL auto_increment,
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `batch_type` varchar(10) NOT NULL,
+  `survey` varchar(10) default NULL,
+  `dvo_db` varchar(100) default NULL,
+  `datastore_product` varchar(100) default NULL,
+  `min_obj_id` bigint(20) default NULL,
+  `max_obj_id` bigint(20) default NULL,
+  `processed` tinyint(4) default '0',
+  `loaded_to_datastore` tinyint(4) default '0',
+  `loaded_to_ODM` tinyint(4) default '0',
+  `merge_worthy` tinyint(4) default '0',
+  `merged` tinyint(4) default '0',
+  `deleted_local` tinyint(4) default '0',
+  `deleted_datastore` tinyint(4) default '0',
+  `deleted_dxlayer` tinyint(4) default '0',
+  `stage_id` bigint(20) default NULL,
+  `total_detections` bigint(20) default NULL,
+  `comment` varchar(400) default NULL,
+  `purged` tinyint(4) NOT NULL default '0',
+  PRIMARY KEY  (`batch_id`)
+) ENGINE=InnoDB AUTO_INCREMENT=328286 DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `box`
+--
+
+DROP TABLE IF EXISTS `box`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `box` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `id` bigint(20) unsigned NOT NULL auto_increment,
+  `config` varchar(30) default NULL,
+  `ra_center` float default NULL,
+  `dec_center` float default NULL,
+  `box_side` float default NULL,
+  PRIMARY KEY  (`id`),
+  KEY `fk_config` (`config`),
+  CONSTRAINT `fk_config` FOREIGN KEY (`config`) REFERENCES `config` (`name`) ON DELETE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=44588 DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `clients`
+--
+
+DROP TABLE IF EXISTS `clients`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `clients` (
+  `started` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `type` varchar(50) default NULL,
+  `pid` bigint(20) unsigned NOT NULL,
+  `host` varchar(20) NOT NULL,
+  `config` varchar(30) default NULL,
+  `paused` tinyint(1) default '0',
+  `killed` tinyint(1) default '0',
+  `timestamp` timestamp NOT NULL default '0000-00-00 00:00:00',
+  `id` bigint(20) unsigned NOT NULL auto_increment,
+  PRIMARY KEY  (`id`),
+  UNIQUE KEY `unique_key` (`host`,`pid`)
+) ENGINE=InnoDB AUTO_INCREMENT=1227 DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `config`
+--
+
+DROP TABLE IF EXISTS `config`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `config` (
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `name` varchar(30) NOT NULL,
+  `datastore_product` varchar(30) default NULL,
+  `datastore_type` varchar(30) default 'IPP_PSPS',
+  `datastore_publish` tinyint(1) default '0',
+  `dvo_label` varchar(100) default NULL,
+  `dvo_location` varchar(1000) default NULL,
+  `min_ra` double default '0',
+  `max_ra` double default '360',
+  `min_dec` double default '-30',
+  `max_dec` double default '90',
+  `box_size` double default '4',
+  `base_path` varchar(1000) default '/data/ipp005.0/ipptopsps/',
+  `data_release` smallint(6) default '0',
+  `delete_local` tinyint(1) default '0',
+  `delete_datastore` tinyint(1) default '1',
+  `delete_dxlayer` tinyint(1) default '1',
+  `epoch` timestamp NOT NULL default '0000-00-00 00:00:00',
+  `survey` varchar(10) default NULL,
+  `psps_survey` varchar(10) default NULL,
+  `queue_P2` tinyint(1) default '1',
+  `queue_ST` tinyint(1) default '0',
+  `queue_OB` tinyint(1) default '0',
+  `active` tinyint(1) default '1',
+  UNIQUE KEY `name` (`name`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `detection`
+--
+
+DROP TABLE IF EXISTS `detection`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `detection` (
+  `batch_id` bigint(20) unsigned NOT NULL,
+  `exp_id` bigint(20) default NULL,
+  `filter` varchar(1) default NULL,
+  KEY `batch_id` (`batch_id`),
+  CONSTRAINT `detection_ibfk_1` FOREIGN KEY (`batch_id`) REFERENCES `batch` (`batch_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `object`
+--
+
+DROP TABLE IF EXISTS `object`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `object` (
+  `batch_id` bigint(20) unsigned NOT NULL,
+  `region` varchar(50) default NULL,
+  KEY `batch_id` (`batch_id`),
+  CONSTRAINT `object_fk_1` FOREIGN KEY (`batch_id`) REFERENCES `batch` (`batch_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `pending`
+--
+
+DROP TABLE IF EXISTS `pending`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `pending` (
+  `box_id` bigint(20) unsigned default NULL,
+  `batch_type` varchar(10) default NULL,
+  `stage_id` bigint(20) default NULL,
+  UNIQUE KEY `a_key` (`box_id`,`stage_id`,`batch_type`),
+  UNIQUE KEY `stage_id_key` (`stage_id`),
+  CONSTRAINT `box_key` FOREIGN KEY (`box_id`) REFERENCES `box` (`id`) ON DELETE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `stack`
+--
+
+DROP TABLE IF EXISTS `stack`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `stack` (
+  `batch_id` bigint(20) unsigned NOT NULL,
+  `filter` varchar(1) default NULL,
+  `stack_type` varchar(20) default NULL,
+  KEY `batch_id` (`batch_id`),
+  CONSTRAINT `stack_ibfk_1` FOREIGN KEY (`batch_id`) REFERENCES `batch` (`batch_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `stripe`
+--
+
+DROP TABLE IF EXISTS `stripe`;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `stripe` (
+  `client_id` bigint(20) unsigned default NULL,
+  `config` varchar(30) default NULL,
+  `ra_center` float default NULL,
+  UNIQUE KEY `unique_key` (`client_id`),
+  CONSTRAINT `stripe_ibfk_1` FOREIGN KEY (`client_id`) REFERENCES `clients` (`id`) ON DELETE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
+
+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
+
+-- Dump completed on 2012-04-10  6:00:59
Index: branches/meh_branches/ppstack_test/ippToPsps/config/settings.xml
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/config/settings.xml	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/config/settings.xml	(revision 34041)
@@ -1,10 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<!-- Global database settings for ippToPsps -->
-
+<!-- Some global settings for ippToPsps -->
 <ippToPsps>
 
   <!-- path for storing logs -->
-  <logPath>/data/ipp005.0/rhenders</logPath>
+  <logPath>/data/ipp005.0/ipptopsps</logPath>
 
   <!-- local scratch Db section -->
@@ -40,3 +39,6 @@
   </czardatabase>
 
+  <!-- path for czartool plots -->
+  <czarPlotsPath>/data/ipp009.0/czartool_plots</czarPlotsPath>
+
 </ippToPsps>
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/batch.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/batch.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/batch.py	(revision 34041)
@@ -10,4 +10,7 @@
 import logging
 from subprocess import call, PIPE, Popen
+from java.lang import *
+from java.sql import *
+from xml.etree.ElementTree import ElementTree, Element, tostring
 
 from scratchdb import ScratchDb
@@ -15,8 +18,4 @@
 from ipptopspsdb import IppToPspsDb
 from fits import Fits
-
-from java.lang import *
-from java.sql import *
-from xml.etree.ElementTree import ElementTree, Element, tostring
 
 '''
@@ -40,5 +39,4 @@
                  useFullTables): 
 
-        self.everythingOK = False
         self.readHeader = False
         self.config = config
@@ -67,11 +65,5 @@
             if not self.header: 
                 logger.errorPair("Could not read FITS for id", "%d" % id)
-                return
-
-        # if no fits file, and this is not an IN batch, then get out of here
-        else:
-           if batchType != "IN": 
-               logger.errorPair("Could not read FITS for id", "%d" % id)
-               return
+                raise
 
         self.scratchDb.setUseFullTables(self.useFullTables)
@@ -122,5 +114,4 @@
         self.logger.infoPair("Output path", self.localOutPath)
 
-        self.everythingOK = True
     
     '''
@@ -241,5 +232,7 @@
         root.attrib['type'] = self.batchType
         root.attrib['timestamp'] = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") 
-        if self.batchType != "IN": root.attrib['survey'] = self.config.pspsSurvey
+        root.attrib['survey'] = self.config.pspsSurvey
+
+        # min/max object IDs
         try: self.minObjID
         except: pass
@@ -260,7 +253,15 @@
 
         # clunky way to prettify XML
-        p = Popen("xmllint --format " + tmpPath + " > " + outPath, shell=True, stdout=PIPE)
-        p.wait()
-        os.remove(tmpPath)
+        try:
+            cmd = "xmllint --format " + tmpPath + " > " + outPath
+            p = Popen(cmd, shell=True, stdout=PIPE)
+            p.wait()
+        except:
+            self.logger.errorPair("Popen failed", cmd)
+            return False
+        finally: 
+            os.remove(tmpPath)
+
+        return True
 
 
@@ -296,7 +297,4 @@
             return False
 
-        # only now can we report that the batch has successfully processed
-        self.ippToPspsDb.updateProcessed(self.batchID, 1)
-
         # delete tar file and original directory
         os.remove(tarPath)
@@ -410,4 +408,6 @@
       self.logger.infoPair("Done. Imported", "%d tables" % count)
       self.indexIppTables()
+
+      return True
 
     '''
@@ -508,29 +508,41 @@
     def run(self):
 
-        if not self.everythingOK:
-            self.logger.error("Aborting this batch due to (hopefully) previously reported errors")
+        if not self.createEmptyPspsTables():
+            self.logger.errorPair("Aborting this batch", "could not create empty PSPS tables")
             self.ippToPspsDb.updateProcessed(self.batchID, -1)
-            return
-
-        if not self.createEmptyPspsTables():
-            self.logger.error("Aborting this batch due to (hopefully) previously reported errors")
+            raise
+
+        if not self.importIppTables():
+            self.logger.errorPair("Aborting this batch", "could not import IPP tables")
             self.ippToPspsDb.updateProcessed(self.batchID, -1)
-            return
-
-        self.importIppTables()
+            raise
+
         if not self.populatePspsTables():
             self.logger.errorPair("Aborting this batch", "unable to populate PSPS tables")
             self.ippToPspsDb.updateProcessed(self.batchID, -1)
-        else:
-            if not self.exportPspsTablesToFits():
-                self.logger.errorPair("Aborting this batch", "unable to export tables to FITS file")
-            else:
-                self.writeBatchManifest()
-                if self.config.datastorePublishing: 
-                    # tar and zip ready for publication to datastore
-                    if self.tarAndZip():
-                        # now publish to the datastore
-                        tarballFile = Batch.getTarballFile(self.batchID)
-                        Batch.publishToDatastore(self.datastore, self.batchID, self.batchName, self.subDir, tarballFile)
+            raise 
+
+        if not self.exportPspsTablesToFits():
+            self.logger.errorPair("Aborting this batch", "unable to export tables to FITS file")
+            self.ippToPspsDb.updateProcessed(self.batchID, -1)
+            raise 
+   
+        if self.writeBatchManifest():
+            if self.config.datastorePublishing: 
+
+                # tar and zip ready for publication to datastore
+                if self.tarAndZip():
+
+                    # only now can we report that the batch has successfully processed
+                    self.ippToPspsDb.updateProcessed(self.batchID, 1)
+                    
+                    # now publish to the datastore
+                    tarballFile = Batch.getTarballFile(self.batchID)
+                    Batch.publishToDatastore(
+                            self.datastore, 
+                            self.batchID, 
+                            self.batchName, 
+                            self.subDir, 
+                            tarballFile)
 
 from datastore import Datastore
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/batchRepublisher.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/batchRepublisher.py	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/batchRepublisher.py	(revision 34041)
@@ -0,0 +1,71 @@
+#!/usr/bin/env jython
+
+from datastore import Datastore
+import logging
+import sys
+import getopt
+import traceback
+
+from ipptopsps import IppToPsps
+from datastore import Datastore
+from batch import Batch
+
+'''
+BatchRepublisher class
+
+A program that republishes a bath to the datastore.
+
+It first 'resets' the batch in the ippToPsps database, i.e. pretends it has never been published, then re-publishes it to the datastore
+'''
+class BatchRepublisher(IppToPsps):
+
+    '''
+    Constructor
+    '''
+    def __init__(self, argv):
+        super(BatchRepublisher, self).__init__(argv)
+
+        if len(sys.argv) < 3:
+            self.printUsage()
+            self.exitProgram("incorrect args")
+
+        self.datastore = Datastore(self.logger, self.config, self.ippToPspsDb)
+        self.BATCHID = int(sys.argv[2])
+
+    '''
+    Runs...
+    '''
+    def run(self):
+
+        batchName = Batch.getNameFromID(self.BATCHID)
+        batchType = self.ippToPspsDb.getBatchType(self.BATCHID)
+        subDir = Batch.getSubDir(self.config.basePath, batchType, self.config.dvoLabel)
+        tarballFile = Batch.getTarballFile(self.BATCHID)
+
+        self.logger.infoPair("batch ID", "%d" % self.BATCHID)
+        self.logger.infoPair("batchname", batchName)
+        self.logger.infoPair("batch type", batchType)
+        self.logger.infoPair("subdir", subDir)
+        self.logger.infoPair("tarballfile", tarballFile)
+        self.logger.infoPair("Reseting batch in database", "%d" % self.BATCHID)
+        self.ippToPspsDb.resetBatch(self.BATCHID)
+        self.logger.infoPair("publishing to", self.config.datastoreProduct)
+        Batch.publishToDatastore(self.datastore, self.BATCHID, batchName, subDir, tarballFile)
+
+    '''
+    Overrides base-class version
+    '''
+    def printUsage(self):
+        super(BatchRepublisher, self).printUsage("<batchToRepublish>")
+
+'''
+Start of program
+'''
+try:
+    batchRepublisher = BatchRepublisher(sys.argv)
+    batchRepublisher.run()
+    batchRepublisher.exitProgram("completed")
+except Exception, e:
+    print str(e)
+    traceback.print_exc()
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/cleanup.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/cleanup.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/cleanup.py	(revision 34041)
@@ -7,4 +7,5 @@
 import sys
 import time
+import traceback
 import logging.config
 
@@ -13,5 +14,4 @@
 from datastore import Datastore
 from dxlayer import DXLayer
-
 
 '''
@@ -26,15 +26,8 @@
         super(Cleanup, self).__init__(argv)
 
+        self.datastore = Datastore(self.logger, self.config, self.ippToPspsDb)
+        self.dxlayer = DXLayer(self.logger)
         if len(argv) > 2: self.parsePollTimeArg(sys.argv[2]) 
 
-
-    '''
-    Overrides base-class version
-    '''
-    def refreshConfig(self):
-        ret = super(Cleanup, self).refreshConfig()
-        self.dxlayer = DXLayer(self.logger)
-        self.datastore = Datastore(self.logger, self.config, self.ippToPspsDb)
-        return ret
 
     '''
@@ -46,11 +39,25 @@
         while True:
 
+            self.logger.infoSeparator()
+            self.logger.infoPair("Config", self.config.name)
             self.config.printDeletionPolicy()
+            self.clean("IN")
             self.clean("P2")
             self.clean("ST")
+            self.clean("OB")
 
             self.checkClientStatus()
             if not self.waitForPollTime(): break
    
+    '''
+    Reports results of cleanup for this set of IDs 
+    '''
+    def reportResults(self, name, ids, success):
+
+        if len(ids) > 0:
+            self.logger.infoSeparator()
+            self.logger.infoPair("Removed from " + name, "%d of %d" % (success, len(ids)))
+    
+
     '''
     Finds stuff to delete for this batch type, then:
@@ -66,22 +73,23 @@
         self.logger.infoTitle("Cleaning up batch type %s" % batchType)
 
-        loadedDatastoreIDs = self.ippToPspsDb.getLoadedToODMButNotDeletedFromDatastore(batchType, self.config.epoch, self.config.dvoLabel)
-        loadedDxlayerIDs = self.ippToPspsDb.getLoadedToODMButNotDeletedFromDXLayer(batchType, self.config.epoch, self.config.dvoLabel)
-        mergedLocalIDs = self.ippToPspsDb.getMergedButNotDeletedFromLocalDisk(batchType, self.config.epoch, self.config.dvoLabel)
+        loadedDatastoreIDs = self.ippToPspsDb.getLoadedToODMButNotDeletedFromDatastore(batchType)
+        deleteFromDxLayerIDs = self.ippToPspsDb.getLoadedToODMButNotDeletedFromDXLayer(batchType)
+        mergedLocalIDs = self.ippToPspsDb.getMergedButNotDeletedFromLocalDisk(batchType)
 
-        purgedDatastoreIDs = self.ippToPspsDb.getPurgedButNotDeletedFromDatastore(batchType, self.config.epoch, self.config.dvoLabel)
-        purgedLocalIDs = self.ippToPspsDb.getPurgedButNotDeletedFromLocalDisk(batchType, self.config.epoch, self.config.dvoLabel)
+        purgedDatastoreIDs = self.ippToPspsDb.getPurgedButNotDeletedFromDatastore(batchType)
+        purgedLocalIDs = self.ippToPspsDb.getPurgedButNotDeletedFromLocalDisk(batchType)
 
-        self.logger.infoPair("Loaded to ODM but still on datastore", "%d" % len(loadedDatastoreIDs))
-        self.logger.infoPair("Loaded to ODM but still in DXLayer", "%d" % len(loadedDxlayerIDs))
-        self.logger.infoPair("Merged but still on local disk", "%d" % len(mergedLocalIDs))
-        self.logger.infoPair("Purged but still on datastore", "%d" % len(purgedDatastoreIDs))
-        self.logger.infoPair("Purged but still on local disk", "%d" % len(purgedLocalIDs))
+        deleteFromDatastoreIDs = loadedDatastoreIDs + purgedDatastoreIDs
+        deleteFromLocalIDs = mergedLocalIDs + purgedLocalIDs
+
+        # report to log what we are going to do
+        self.logger.infoPair("To delete from datastore", "%d" % len(deleteFromDatastoreIDs))
+        self.logger.infoPair("To delete from DXLayer", "%d" % len(deleteFromDxLayerIDs))
+        self.logger.infoPair("To delete from local disk", "%d" % len(deleteFromLocalIDs))
     
+        # delete stuff from local disk
         if self.config.deleteLocal:
-            self.logger.infoSeparator()
             count = 0
-            ids = mergedLocalIDs + purgedLocalIDs
-            for id in ids:
+            for id in deleteFromLocalIDs:
         
                 if Batch.deleteFromDisk(self.logger, self.config.basePath, batchType, self.config.dvoLabel, id):
@@ -89,14 +97,10 @@
                     count = count + 1
     
-            self.logger.infoSeparator()
-            self.logger.infoPair("Removed from local disk", "%d" % count)
-            self.logger.infoPair("Remaining on local disk", "%d" % (len(ids) - count))
-        
+            self.reportResults("local disk", deleteFromLocalIDs, count) 
     
+        # remove stuff from datastore
         if self.config.deleteDatastore:
-            self.logger.infoSeparator()
             count = 0
-            ids = loadedDatastoreIDs + purgedDatastoreIDs
-            for id in ids:
+            for id in deleteFromDatastoreIDs:
         
                 batchName = Batch.getNameFromID(id)
@@ -105,12 +109,10 @@
                     count = count + 1
     
-            self.logger.infoSeparator()
-            self.logger.infoPair("Removed from datastore", "%d" % count)
-            self.logger.infoPair("Remaining on datastore", "%d" % (len(ids) - count))
+            self.reportResults("datastore", deleteFromDatastoreIDs, count) 
         
+        # remove stuff from DXLayer
         if self.config.deleteDxLayer:
-            self.logger.infoSeparator()
             count = 0
-            for id in loadedDxlayerIDs:
+            for id in deleteFromDxLayerIDs:
         
                 if self.dxlayer.deleteBatch(id):
@@ -118,15 +120,11 @@
                     count = count + 1
     
-            self.logger.infoSeparator()
-            self.logger.infoPair("Removed from DXLayer", "%d" % count)
-            self.logger.infoPair("Remaining on DXLayer", "%d" % (len(loadedDxlayerIDs) - count))
+            self.reportResults("DXLayer", deleteFromDxLayerIDs, count) 
        
-
     '''
     Overrides base-class version
     '''
     def printUsage(self):
-        super(Cleanup, self).printUsage()
-        print " [<poll time in hours>]"
+        super(Cleanup, self).printUsage("[<poll time in hours>]")
 
 
@@ -134,5 +132,9 @@
 Start of program
 '''
-cleanup = Cleanup(sys.argv)
-cleanup.run()
-cleanup.exitProgram("finished")
+try:
+    cleanup = Cleanup(sys.argv)
+    cleanup.run()
+    cleanup.exitProgram("completed")
+except Exception, e:
+    print str(e)
+    traceback.print_exc()
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/config.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/config.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/config.py	(revision 34041)
@@ -8,5 +8,6 @@
 
 '''
-A class encapsulating the ippToPsps config file
+A class encapsulating a ippToPsps configuration. This information is stored in the 'config' table
+of the ipptopsps database, but there are some higher level config details in the 'settings.xml' file
 '''
 class Config(object):
@@ -27,9 +28,9 @@
         self.settingsDoc = ElementTree(file=self.settingsPath)
         self.logPath = self.settingsDoc.find("logPath").text
-
+        self.czarPlotsPath = self.settingsDoc.find("czarPlotsPath").text
 
         # this is the border (in degrees) that we place around any loading box of 
         # PS1 pointings to ensure we pull a large enough area out of DVO
-        self.BORDER = 1.6
+        self.BORDER = 1.65
         self.isLoaded = False
 
@@ -38,4 +39,6 @@
     '''
     def printAll(self):
+
+        self.logger.infoTitle("Config")
 
         try:
@@ -46,7 +49,4 @@
             self.logger.infoPair("Loading epoch", self.epoch)
             self.logger.infoPair("Data release", "%d" % self.dataRelease)
-            self.logger.infoBool("Test mode?", self.test)
-            self.logger.infoBool("Forcing?", self.force)
-            self.logger.infoBool("Reporting NULLS?", self.reportNulls)
             for batchType in self.batchTypes: self.logger.infoPair("Queuing batch type", batchType)
         except:
@@ -60,4 +60,10 @@
         except: pass
 
+    '''
+    Queuing this batch type?
+    '''
+    def queuingThisBatchType(self, batchType):
+       if batchType in self.batchTypes: return 1
+       return 0
 
     '''
@@ -129,3 +135,2 @@
     def getDbPassword(self, dbType): return self.settingsDoc.find(dbType +"/password").text
 
-
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/console.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/console.py	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/console.py	(revision 34041)
@@ -0,0 +1,166 @@
+#!/usr/bin/env jython
+
+import sys
+import getopt
+import time
+
+from java.awt import BorderLayout
+from java.awt import GridLayout
+from java.awt import Dimension
+
+from javax.swing import JFrame
+from javax.swing import JButton
+from javax.swing import JLabel
+from javax.swing import JTextField
+from javax.swing import JButton
+from javax.swing import JPanel
+from javax.swing import JScrollPane
+from javax.swing import JTable
+from javax.swing import JTabbedPane
+from javax.swing import JComboBox
+from javax.swing import JOptionPane
+
+from javax.swing.table import DefaultTableModel
+
+from ipptopsps import IppToPsps
+
+'''
+Console class
+'''
+class Console(IppToPsps):
+
+    '''
+    Constructor
+    '''
+    def __init__(self, argv):
+        super(Console, self).__init__(argv, 0, 0)
+    
+        self.frame = JFrame(
+                "ippToPsps console for config '" + self.config.name + "'", 
+                layout=BorderLayout(),
+                size=(1000, 500),
+                windowClosing=self.exitProgram)
+
+        tabbedPane = JTabbedPane(JTabbedPane.TOP)
+        tabbedPane.addTab("Clients", self.createClientsPanel())
+
+        #self.label = JLabel("Some title", JLabel.CENTER)
+        #self.frame.add(self.label, BorderLayout.NORTH)
+
+        self.frame.add(tabbedPane, BorderLayout.CENTER)
+
+    '''
+    Creates a panel for managing clients
+    '''
+    def createClientsPanel(self):
+
+        panel = JPanel(layout=BorderLayout())
+
+        self.clientTable = JTable()
+        scrollPane = JScrollPane()
+        scrollPane.setPreferredSize(Dimension(100,125))
+        scrollPane.getViewport().setView((self.clientTable))
+
+        # side panel of buttons
+        buttonPanel = JPanel(layout=GridLayout(6, 1))
+        button = JButton('Pause', actionPerformed=self.pause)
+        buttonPanel.add(button)
+        button = JButton('Resume', actionPerformed=self.resume)
+        buttonPanel.add(button)
+        button = JButton('Kill', actionPerformed=self.kill)
+        buttonPanel.add(button)
+        button = JButton('Cancel kill', actionPerformed=self.cancelKill)
+        buttonPanel.add(button)
+        button = JButton('Purge dead', actionPerformed=self.purgeDead)
+        buttonPanel.add(button)
+        button = JButton('Change config', actionPerformed=self.changeConfig)
+        buttonPanel.add(button)
+
+        button = JButton('Refresh', actionPerformed=self.refreshClientTable)
+
+        panel.add(scrollPane, BorderLayout.CENTER)
+        panel.add(buttonPanel, BorderLayout.EAST)
+        panel.add(button, BorderLayout.SOUTH)
+
+        self.refreshClientTable(None)
+
+        return panel
+
+    '''
+    Gets table selection
+    '''
+    def getSelectedIds(self):
+        rows = self.clientTable.getSelectedRows()
+        ids = []
+        for row in rows: ids.append(self.clientDataModel.getValueAt(row, 0))
+        return ids
+
+    '''
+    Refreshes clients table
+    '''
+    def refreshClientTable(self, event):
+
+        clients = self.ippToPspsDb.getClientInfo()
+        colNames = ('ID','host', 'started', 'timestamp', 'ra_center', 'paused?', 'killed?')
+        self.clientDataModel = DefaultTableModel(clients, colNames)
+        self.clientTable.setModel(self.clientDataModel)
+
+    '''
+    Overriden
+    '''
+    def exitProgram(self,  exitReason="quit"):
+
+        self.frame.dispose()
+        super(Console, self).exitProgram("window closed")
+
+
+    '''
+    Pause/kill button callbacks
+    '''
+    def pause(self, event): 
+        self.ippToPspsDb.pauseLoaders(True, self.getSelectedIds())
+        self.refreshClientTable(None)
+    def resume(self, event): 
+        self.ippToPspsDb.pauseLoaders(False, self.getSelectedIds())
+        self.refreshClientTable(None)
+    def kill(self, event): 
+        self.ippToPspsDb.killLoaders(True, self.getSelectedIds())
+        self.refreshClientTable(None)
+    def cancelKill(self, event): 
+        self.ippToPspsDb.killLoaders(False, self.getSelectedIds())
+        self.refreshClientTable(None)
+    def remove(self, event): 
+        self.ippToPspsDb.removeClientsByIds(self.getSelectedIds())
+        self.refreshClientTable(None)
+    def purgeDead(self, event): 
+        self.ippToPspsDb.purgeDeadClients()
+        self.refreshClientTable(None)
+    def changeConfig(self, event): 
+        ids = self.getSelectedIds()
+        if len(ids) < 1: 
+            JOptionPane.showMessageDialog(None, "No clients selected", "Error", JOptionPane.ERROR_MESSAGE)
+            return
+        comboBox = JComboBox(self.ippToPspsDb.getActiveConfigList())
+        if JOptionPane.showConfirmDialog(None, 
+                comboBox, 
+                "Choose a config",
+                JOptionPane.OK_CANCEL_OPTION,
+                JOptionPane.PLAIN_MESSAGE) == JOptionPane.CANCEL_OPTION: return
+
+        self.ippToPspsDb.setConfigForLoaders(comboBox.getSelectedItem(), ids)
+        self.refreshClientTable(None)
+
+
+
+    '''
+    Runs...
+    '''
+    def run(self):
+        self.frame.setVisible(True)
+
+'''
+Start of program
+'''
+console = Console(sys.argv)
+console.run()
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/czardb.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/czardb.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/czardb.py	(revision 34041)
@@ -22,11 +22,11 @@
 
     '''
-    Updates a stage table with pending, processed, faults and label
+    Updates a stage table with pending, processed, faults and config name
     '''
-    def insertStats(self, stage, label, batchType, pending, processed, faults):
+    def insertStats(self, stage, config, batchType, pending, processed, faults):
 
         sql = "INSERT INTO " + stage + " \
                (label, pending, processed, faults) \
-               VALUES ('" + label + "_" + batchType + "', \
+               VALUES ('" + config + "_" + batchType + "', \
                        " + str(pending) + ", \
                        " + str(processed) + ", \
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/datastore.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/datastore.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/datastore.py	(revision 34041)
@@ -102,5 +102,5 @@
 
         firstInt = int(first[1:])
-        lastInt = int(last[1:])
+        lastInt = int(last[1:]) + 1
 
         for i in range(firstInt, lastInt):
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/datastoreRemover.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/datastoreRemover.py	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/datastoreRemover.py	(revision 34041)
@@ -0,0 +1,53 @@
+#!/usr/bin/env jython
+
+from datastore import Datastore
+import logging
+import sys
+import getopt
+
+from ipptopsps import IppToPsps
+from datastore import Datastore
+
+'''
+DatastoreRemover class
+'''
+class DatastoreRemover(IppToPsps):
+
+    '''
+    Constructor
+    '''
+    def __init__(self, argv):
+        super(DatastoreRemover, self).__init__(argv)
+
+        if len(sys.argv) < 3:
+            self.printUsage()
+            self.exitProgram("incorrect args")
+
+        self.datastore = Datastore(self.logger, self.config, self.ippToPspsDb)
+
+    '''
+    Runs...
+    '''
+    def run(self):
+
+        if len(sys.argv) < 4:
+           self.datastore.remove(str(sys.argv[2]))
+        else:
+           self.datastore.removeRange(str(sys.argv[2]), str(sys.argv[3]))
+
+    '''
+    Overrides base-class version
+    '''
+    def printUsage(self):
+        super(DatastoreRemover, self).printUsage("<firstBatchToRemove> [<lastBatchToRemove>]")
+
+
+'''
+Start of program
+'''
+try:
+    datastoreRemover = DatastoreRemover(sys.argv)
+    datastoreRemover.run()
+    datastoreRemover.exitProgram("completed")
+except: pass
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/detectionbatch.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/detectionbatch.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/detectionbatch.py	(revision 34041)
@@ -53,11 +53,9 @@
                useFullTables)
 
-       if not self.everythingOK: return
-
        # get camera meta data
        meta = self.gpc1Db.getCameraStageMeta(self.id)
        if not meta:
-           self.everythingOK = False
-           return
+           self.logger.errorPair("Could not get", "camera metadata")
+           raise
 
        self.expID = meta[0];
@@ -93,14 +91,14 @@
        # get a fre primary header values. if in test mode, then use defaults
        if self.safeDictionaryAccessWithDefault(self.header, 'MJD-OBS', "1") == "NULL":
-           self.everythingOK = False
-           return
+           self.logger.errorPair("Could not get", "MJD-OBS")
+           raise
 
        if self.safeDictionaryAccessWithDefault(self.header, 'EXPTIME', "1") == "NULL":
-           self.everythingOK = False
-           return
+           self.logger.errorPair("Could not get", "EXPTIME")
+           raise
 
        if self.safeDictionaryAccessWithDefault(self.header, 'FILTERID', "g.0000") == "NULL":
-           self.everythingOK = False
-           return
+           self.logger.errorPair("Could not get", "FILTERID")
+           raise
        
        self.obsTime = float(self.header['MJD-OBS']) + (float(self.header['EXPTIME']) / 172800.0)
@@ -418,4 +416,6 @@
                ,momentYY \
                ,apMag \
+               ,kronFlux \
+               ,kronFluxErr \
                ,infoFlag \
                ,sky \
@@ -436,7 +436,7 @@
                ,X_PSF_SIG \
                ,Y_PSF_SIG \
-               ,POW(10.0, (-0.4*PSF_INST_MAG)) / "+self.header['EXPTIME']+" \
-               ,ABS((PSF_INST_MAG_SIG*(POW(10.0, (-0.4*PSF_INST_MAG)) / "+self.header['EXPTIME']+")) / 1.085736) \
-               ,POW(10.0, (-0.4*PEAK_FLUX_AS_MAG)) / "+self.header['EXPTIME']+" \
+               ,POW(10.0, (-0.4*PSF_INST_MAG)) / " + self.header['EXPTIME'] + " \
+               ,ABS((PSF_INST_MAG_SIG*(POW(10.0, (-0.4*PSF_INST_MAG)) / " + self.header['EXPTIME'] + ")) / 1.085736) \
+               ,POW(10.0, (-0.4*PEAK_FLUX_AS_MAG)) / " + self.header['EXPTIME'] + " \
                ,PSF_MAJOR \
                ,PSF_MINOR \
@@ -448,4 +448,6 @@
                ,MOMENTS_YY \
                ,AP_MAG \
+               ,KRON_FLUX / " + self.header['EXPTIME'] + " \
+               ,KRON_FLUX_ERR / " + self.header['EXPTIME'] + " \
                ,FLAGS\
                ,SKY \
@@ -755,5 +757,5 @@
        else : regex = ".*.psf"
   
-       columns = "IPP_IDET X_PSF Y_PSF X_PSF_SIG Y_PSF_SIG PSF_INST_MAG PSF_INST_MAG_SIG PEAK_FLUX_AS_MAG PSF_MAJOR PSF_MINOR PSF_THETA EXT_NSIGMA PSF_QF MOMENTS_XX MOMENTS_XY MOMENTS_YY AP_MAG FLAGS SKY SKY_SIGMA EXT_NSIGMA"
+       columns = "IPP_IDET X_PSF Y_PSF X_PSF_SIG Y_PSF_SIG PSF_INST_MAG PSF_INST_MAG_SIG PEAK_FLUX_AS_MAG PSF_MAJOR PSF_MINOR PSF_THETA EXT_NSIGMA PSF_QF MOMENTS_XX MOMENTS_XY MOMENTS_YY AP_MAG KRON_FLUX KRON_FLUX_ERR FLAGS SKY SKY_SIGMA EXT_NSIGMA"
 
        return super(DetectionBatch, self).importIppTables(columns, regex)
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/dvo.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/dvo.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/dvo.py	(revision 34041)
@@ -17,9 +17,8 @@
 from java.sql import *
 
-
 '''
-A class that encapsulates a DVO database
-
-Pulls relavant bits and pieces into the scratch MySQL database and then provides access queries
+Abstract base-class for DVO classes
+
+Provides generic functionality to pull relevant stuff from a DVO database into a scratch MySQL database while also providing access queries
 '''
 class Dvo(object):
@@ -34,5 +33,5 @@
 
     '''
-    def __init__(self, logger, config):
+    def __init__(self, logger, config, scratchDbName="ipptopsps_scratch"):
 
         # set up logging
@@ -46,24 +45,23 @@
         self.regionsAlreadyIngested = []
         self.regionsIngestedButOutOfDate = []
-        
-        #self.correctDvo = False
-
-
-    '''
-    Sets to scratch database
-    '''
-    def setScratchDb(self, dbName):
-
-        self.scratchDb = ScratchDb(self.logger, self.config, dbName)
+       
+        # connect to the specified scratch database
+        try:
+            self.scratchDb = ScratchDb(self.logger, self.config, scratchDbName)
+        except: raise
+
         self.scratchDb.setUseFullTables(True)
 
-        # or decide if we are using the right DVO
+        # decide if we are using the right DVO for this scratchDb
         self.correctDvo = self.scratchDb.isCorrectDvo(self.config.dvoLocation)
- 
+
+        # this scratch Db either has no DVO info ingested, or a different DVO ingested. Prompt user
         if not self.correctDvo:
             print "*******************************************************************************"
-            response = raw_input("**** Wrong or no DVO in use. Do you want to reset and use '" + self.config.dvoLocation + "' (y/n)? ")
+            self.logger.warning("Wrong or no DVO in use. Do you want to reset and use '" + self.config.dvoLocation + "'?")
+            response = raw_input("(y/n) ")
             if response == "y":
-                response = raw_input("**** Are you ABSOLUTELY sure you want to do this? (y/n)? ")
+                self.logger.warning("Are you ABSOLUTELY sure you want to do this?")
+                response = raw_input("(y/n) ")
                 if response == "y":
                     self.resetAllTables()
@@ -83,12 +81,4 @@
 
     '''
-    Resets all detections. Be careful
-    '''
-    def resetDetections(self):
-
-        self.logger.infoPair("Resetting", "just detections")
-        self.scratchDb.resetDvoDetectionTables()
-
-    '''
     Resets all dvo tables. Be very careful....
     '''
@@ -96,6 +86,35 @@
 
         self.logger.infoPair("Resetting", "all tables")
-        self.scratchDb.resetAllDvoTables()
+        if not self.scratchDb.resetAllDvoTables(): return
         self.correctDvo = True
+        if not self.loadSkyTable():
+            self.correctDvo = False
+            return
+
+    '''
+    Loads the DVO Photcodes.dat FITS file
+    '''
+    def loadPhotcodes(self):
+
+        # go no further if we've already partly ingested a different DVO
+        if not self.correctDvo: return
+
+        # check if we have up-to-date version
+        path = self.config.dvoLocation + "/Photcodes.dat"
+        if self.scratchDb.alreadyImportedThisDvoTable(path): 
+            self.logger.debugPair("DVO Photcodes.dat file", "up-to-date")
+            return
+        
+        self.logger.infoSeparator()
+        self.logger.infoPair("DVO Photcodes.dat file", "NOT up-to-date")
+
+        self.importFits(
+                path,
+                "CODE NAME",
+                self.scratchDb.dvoPhotcodesTable)
+        self.logger.infoPair("Adding primary key to", self.scratchDb.dvoPhotcodesTable)
+        self.scratchDb.makeColumnPrimaryKey(self.scratchDb.dvoPhotcodesTable, "CODE")
+
+        self.scratchDb.setImportedThisDvoTable(path)
 
     '''
@@ -116,10 +135,4 @@
         self.logger.infoPair("DVO Images.dat file", "NOT up-to-date")
 
-        # first, delete old dvoMeta table
-        #self.logger.infoPair("Deleting from table", self.scratchDb.dvoMetaTable)
-        #sql = "DELETE FROM " + self.scratchDb.dvoMetaTable
-        #self.scratchDb.execute(sql)
-        #self.scratchDb.optimizeTable(self.scratchDb.dvoMetaTable)
-    
         self.importFits(
                 path,
@@ -129,28 +142,4 @@
         self.scratchDb.execute("ALTER TABLE " + self.scratchDb.dvoImagesTable + " ADD PRIMARY KEY (IMAGE_ID, EXTERN_ID)")
 
-        # insert into dvoMetaFull
-        # NB what we and smf files call IMAGE_ID, DVO calls EXTERN_ID. We are sticking
-        # with the smf name
-        '''
-        self.logger.infoPair("Populating", "all image meta data")
-        sql = "INSERT INTO " + self.scratchDb.dvoMetaTable + " ( \
-               imageID, \
-               externID, \
-               flags, \
-               photcode \
-               ) SELECT \
-               IMAGE_ID, \
-               EXTERN_ID, \
-               FLAGS, \
-               PHOTCODE \
-               FROM " + self.scratchDb.dvoImagesTable
-
-        try:
-            self.scratchDb.execute(sql)
-        except:
-            self.logger.errorPair("Could not insert into", self.scratchDb.dvoMetaTable)
-            return
-        '''
-
         self.scratchDb.setImportedThisDvoTable(path)
 
@@ -161,10 +150,10 @@
        
         # go no further if we've already partly ingested a different DVO
-        if not self.correctDvo: return
+        if not self.correctDvo: return False
 
         path =  self.config.dvoLocation + "/SkyTable.fits"
         if self.scratchDb.alreadyImportedThisDvoTable(path): 
             self.logger.debugPair("DVO SkyTable.fits file", "up-to-date")        
-            return
+            return False
 
         self.logger.infoSeparator()
@@ -182,4 +171,13 @@
         self.logger.infoPair("Finished importing SkyTable at", self.config.dvoLocation)
 
+        return True
+
+    '''
+    Sets a bunch of region files from DVO for a stripe starting at this RA and with this width
+    '''
+    def setSkyAreaAsStripe(self, ra=0., width=4.):
+
+        self.setSkyArea(ra, ra+width, -91., 91.)
+
     '''
     Sets a bunch of region files from DVO for a RA/Dec box centered with these coords and with this side length
@@ -191,5 +189,5 @@
 
     '''
-    Sets a bunch of region files from DVO for this RA/Dec box
+    Determines what DVO files need to be ingested to the defines region
     '''
     def setSkyArea(self, minRa=-1., maxRa=361., minDec=-91., maxDec=91):
@@ -204,5 +202,4 @@
 
         # update the two meta tables, Images and SkyTable
-        #self.loadImages() dont need a new Images table at this point
         self.loadSkyTable()
 
@@ -219,30 +216,63 @@
         self.regionsToPurge = []
         self.allPopulatedRegions = []
+        self.allPopulatedRegionInfo = []
         self.regionsAlreadyIngested = []
         self.regionsIngestedButOutOfDate = []
+        tablesToCleanup = []
 
         # loop through all regions in DVO inside this bounding-box
         for region in allRegions:
 
-           cpmPath = self.config.dvoLocation + "/" + region + ".cpm"
-           cptPath = self.config.dvoLocation + "/" + region + ".cpt"
-
-           # check for existence of cpm and cpt files
-           if not os.path.isfile(cpmPath): continue
-           if not os.path.isfile(cptPath): continue
-
-           # ok, have a real, populated file so add it to the list
-           self.allPopulatedRegions.append(region)
-
-           # if we have already imported up-to-date versions of both the cpm and cpt then we skip this region
-           if self.scratchDb.alreadyImportedThisDvoTable(cpmPath) and self.scratchDb.alreadyImportedThisDvoTable(cptPath): 
-               self.regionsAlreadyIngested.append(region)
+           regionId = region[0]
+           regionRa = region[1]
+           regionDec = region[2]
+           regionPath = region[3]
+
+           # get paths for this region for the file types we are interested in
+           paths = []
+           for fileType in self.ingestFileTypes:
+               paths.append(self.config.dvoLocation + "/" + regionPath + "." + fileType)
+
+           # check for the existence of all interested file types
+           skipThisRegion = False
+           for path in paths:
+               if not os.path.isfile(path):
+                   skipThisRegion = True
+                   break
+
+           if skipThisRegion: continue
+
+           # ok, have real, populated files so add this region to the list
+           self.allPopulatedRegions.append(regionPath)
+           self.allPopulatedRegionInfo.append([regionId, regionRa, regionDec])
+
+           # if we have already imported up-to-date versions of all interested files, then we skip this region
+           alreadyIngested = True
+           for path in paths:
+               if not self.scratchDb.alreadyImportedThisDvoTable(path): 
+                   alreadyIngested = False
+                   break
+    
+           if alreadyIngested:
+               self.regionsAlreadyIngested.append(regionPath)
                continue
 
-           # check if we have an out-of-date version of either region file, if so, add it to the purge list
-           if self.scratchDb.haveOutOfDateVersionOfThisDvoTable(cpmPath) or self.scratchDb.haveOutOfDateVersionOfThisDvoTable(cptPath):
-               self.regionsIngestedButOutOfDate.append(region)
-
-           self.regionsToIngest.append(region)
+           # we have no record of ingesting this region, but does the table exist? 
+           # May hev been left behind after a crash, and therefore needs to be cleaned-up
+           for fileType in self.ingestFileTypes:
+               tableName = self.scratchDb.getDbFriendlyTableName(regionPath + "." + fileType)
+               if self.scratchDb.tableExists(tableName):
+                   tablesToCleanup.append(tableName)
+
+           # check if we have out-of-date versions of any interested files, if so, add region to the purge list
+           outOfDate = False
+           for path in paths:
+               if self.scratchDb.haveOutOfDateVersionOfThisDvoTable(path):
+                   outOfDate = True
+                   break
+
+           if outOfDate: self.regionsIngestedButOutOfDate.append(regionPath)
+
+           self.regionsToIngest.append(regionPath)
 
         # add out-of-range regions for purge list
@@ -253,9 +283,15 @@
         for item in self.regionsIngestedButOutOfDate: self.regionsToPurge.append(item)
 
-        self.sizeOfAllPopulatedRegions = self.getDiskSizeOfDvoRegions(self.allPopulatedRegions)
-        self.sizeOfRegionsAlreadyIngested = self.getDiskSizeOfDvoRegions(self.regionsAlreadyIngested)
-        self.sizeOfRegionsIngestedButOutOfDate = self.getDiskSizeOfDvoRegions(self.regionsIngestedButOutOfDate)
-        self.sizeOfRegionsToPurge = self.getDiskSizeOfDvoRegions(self.regionsToPurge)
-        self.sizeOfRegionsToIngest = self.getDiskSizeOfDvoRegions(self.regionsToIngest)
+        self.sizeOfAllPopulatedRegions = self.getDiskSizeOfRegions(self.allPopulatedRegions)
+        self.sizeOfRegionsAlreadyIngested = self.getDiskSizeOfRegions(self.regionsAlreadyIngested)
+        self.sizeOfRegionsIngestedButOutOfDate = self.getDiskSizeOfRegions(self.regionsIngestedButOutOfDate)
+        self.sizeOfRegionsToPurge = self.getDiskSizeOfRegions(self.regionsToPurge)
+        self.sizeOfRegionsToIngest = self.getDiskSizeOfRegions(self.regionsToIngest)
+
+        # any tables need cleaning up?
+        if len(tablesToCleanup) > 0:
+            self.logger.infoPair("Found tables to be cleaned up", "%d" % len(tablesToCleanup))
+            self.scratchDb.dropTables(tablesToCleanup)
+            
 
     '''
@@ -265,4 +301,5 @@
 
         self.logger.infoTitle("Summary for currently set DVO region") 
+        self.logger.infoPair("DVO ingest type", self.__class__.__name__) 
 
         # go no further if we've already partly ingested a different DVO
@@ -271,12 +308,20 @@
             return
 
+        for fileType in self.ingestFileTypes:
+            self.logger.infoPair("Ingesting files of type", fileType)
+
         self.logger.infoPair("RA range", "%.2f -> %.2f" % (self.minRa, self.maxRa))
         self.logger.infoPair("Dec range", "%.2f -> %.2f" % (self.minDec, self.maxDec))
-        self.logger.infoPair("Total regions", "%d (%s)" % (len(self.allPopulatedRegions), self.getFileSizeStr(self.sizeOfAllPopulatedRegions))) 
-        self.logger.infoPair("Up-to-date regions already ingested", "%d (%s)" % (len(self.regionsAlreadyIngested), self.getFileSizeStr(self.sizeOfRegionsAlreadyIngested))) 
-        self.logger.infoPair("Out-of-date regions ingested", "%d (%s)" % (len(self.regionsIngestedButOutOfDate), self.getFileSizeStr(self.sizeOfRegionsIngestedButOutOfDate))) 
-        self.logger.infoPair("Total regions to purge", "%d (%s)" % (len(self.regionsToPurge), self.getFileSizeStr(self.sizeOfRegionsToPurge))) 
-        self.logger.infoPair("Total regions to ingest", "%d (%s)" % (len(self.regionsToIngest), self.getFileSizeStr(self.sizeOfRegionsToIngest))) 
-
+
+        self.logger.info("+----------------+----------------+----------------+----------------+----------------+")
+        self.logger.info("|   populated    |   ingested     |  out-of-date   |    to-purge    |   to ingest    |")
+        self.logger.info("+----------------+----------------+----------------+----------------+----------------+")
+        self.logger.info("| %5d (%6s) | %5d (%6s) | %5d (%6s) | %5d (%6s) | %5d (%6s) |" % (
+                    len(self.allPopulatedRegions), self.getFileSizeStr(self.sizeOfAllPopulatedRegions), 
+                    len(self.regionsAlreadyIngested), self.getFileSizeStr(self.sizeOfRegionsAlreadyIngested), 
+                    len(self.regionsIngestedButOutOfDate), self.getFileSizeStr(self.sizeOfRegionsIngestedButOutOfDate),
+                    len(self.regionsToPurge), self.getFileSizeStr(self.sizeOfRegionsToPurge),
+                    len(self.regionsToIngest), self.getFileSizeStr(self.sizeOfRegionsToIngest))) 
+        self.logger.info("+----------------+----------------+----------------+----------------+----------------+")
 
     '''
@@ -291,16 +336,28 @@
 
     '''
+    Purges a single region from the database
+    '''
+    def purgeRegion(self, region):
+
+        regions = []
+        regions.append(region)
+        self.purgeRegions(regions)
+
+    '''
     Purges the provided regions from the database
     '''
-    def purgeRegions(self):
-
-        # go no further if we've already partly ingested a different DVO
-        if not self.correctDvo: return
-
-        if len(self.regionsToPurge) < 1: return
-
-        self.logger.infoPair("Purging", "%d regions" % len(self.regionsToPurge)) 
-        deleteCount = self.scratchDb.purgeTheseDvoRegions(self.regionsToPurge)
-        self.logger.infoPair("Deleted", "%d detections" % deleteCount) 
+    def purgeRegions(self, regions):
+
+        # go no further if we've already partly ingested a different DVO
+        if not self.correctDvo: return False
+
+        if len(regions) < 1: return False
+
+        self.logger.infoPair("Purging", "%d regions" % len(regions)) 
+
+        detectionDeleteCount = self.scratchDb.purgeTheseDvoRegions(regions, self.ingestFileTypes)
+        if detectionDeleteCount > 0: self.logger.infoPair("Deleted", "%d detections" % detectionDeleteCount)
+
+        return True
 
     '''
@@ -325,16 +382,29 @@
 
     '''
-    Returns the disk size of these DVO regions, i.e. the size on disk of all cpm and cpt files
-    '''
-    def getDiskSizeOfDvoRegions(self, regions):
+    Returns the disk size of these DVO regions, i.e. the size on disk of all relevant DVO FITS files
+    '''
+    def getDiskSizeOfRegions(self, regions):
 
         size = 0.0
         for region in regions:
 
-            # get combined size of cpm and cpt files
-            size = size + self.getDiskSize(self.config.dvoLocation + "/" + region + ".cpm")
-            size = size + self.getDiskSize(self.config.dvoLocation + "/" + region + ".cpt")
+             # get combined size of all interested files
+             for fileType in self.ingestFileTypes:
+                 size = size + self.getDiskSize(self.config.dvoLocation + "/" + region + "." + fileType)
 
         return size
+
+
+    '''
+    Ingests object files for this region, given an INDEX from the SkyTable
+    '''
+    def ingestRegionUsingIndex(self, index):
+        return self.ingestRegion(self.scratchDb.getRegionNameFromThisDvoIndex(index))
+
+    '''
+    Abstract method for ingesting a particular reegion. Must be implemented in all subclasses
+    '''
+    def ingestRegion(self, region):
+        return self.logger.errorPair("ingestRegion()", "not implemented for this class") 
 
     '''
@@ -357,5 +427,5 @@
 
         # purge stuff
-        self.purgeRegions()
+        self.purgeRegions(self.regionsToPurge)
 
         totalRegions = len(self.regionsToIngest)
@@ -363,108 +433,14 @@
 
         # now loop through all regions and ingest to MySQL
-        regionCount = 0
+        ingestedRegionsCount = 0
+        regionCount = 1
         for region in self.regionsToIngest:
 
-           cpmPath = self.config.dvoLocation + "/" + region + ".cpm"
-           cptPath = self.config.dvoLocation + "/" + region + ".cpt"
-
-           cpmTableName = self.scratchDb.getDbFriendlyTableName(region + ".cpm")
-           cptTableName = self.scratchDb.getDbFriendlyTableName(region + ".cpt")
-
-           self.logger.infoTitle("Region %d of %d: %s" % (regionCount+1, totalRegions, region))
-
-           # if we have not already ingested the cpm table, then do it now
-           if not self.scratchDb.alreadyImportedThisDvoTable(cpmPath):
-   
-               # import cpm table and index
-               self.importFits(
-                       cpmPath,
-                       "IMAGE_ID DET_ID OBJ_ID CAT_ID EXT_ID DB_FLAGS",
-                       cpmTableName)
-
-               self.scratchDb.createIndex(cpmTableName, "IMAGE_ID")
-               self.scratchDb.createIndex(cpmTableName, "CAT_ID")
-               self.scratchDb.createIndex(cpmTableName, "OBJ_ID")
-
-               # shove SOURCE_IDs into measurement table
-               #self.logger.infoPair("Adding", "SOURCE_IDs")
-               #sql = "ALTER TABLE " + cpmTableName + " ADD COLUMN (SOURCE_ID SMALLINT)"
-               #self.scratchDb.execute(sql)
-               #sql = "UPDATE " + cpmTableName + " AS a, " + self.scratchDb.dvoImagesTable + " AS b \
-               #       SET a.SOURCE_ID = b.SOURCE_ID \
-               #       WHERE a.IMAGE_ID = b.IMAGE_ID"
-               #self.scratchDb.execute(sql)
-
-               # we can now report that we have imported this table
-               self.scratchDb.setImportedThisDvoTable(cpmPath, region)
-
-           # get the id for this cpm file so we can insert it in the dvoDetection table
-           fileId = self.scratchDb.getDvoFileId(cpmPath)
-
-           # import cpt table and index
-           self.importFits(
-                   cptPath,
-                   "OBJ_ID CAT_ID EXT_ID",
-                   cptTableName)
-
-           self.scratchDb.createIndex(cptTableName, "IMAGE_ID")
-           self.scratchDb.createIndex(cptTableName, "CAT_ID")
-           self.scratchDb.createIndex(cptTableName, "OBJ_ID")
-
-           self.logger.infoPair("Adding","PSPS objIDs")
-           # first try to add a column for PSPS_OBJ_ID. catch failure and continue
-           try:
-               sql = "ALTER TABLE " + cpmTableName + " ADD COLUMN (PSPS_OBJ_ID BIGINT)"
-               self.scratchDb.execute(sql)
-           except:
-               self.logger.infoPair("Already added PSPS_OBJ_ID column to", cpmTableName)
-               
-           # shove PSPS objIDs from cpt table into measurement table
-           sql = "UPDATE " + cpmTableName + " AS a, " + cptTableName + " AS b \
-                  SET a.PSPS_OBJ_ID = b.EXT_ID \
-                  WHERE a.CAT_ID = b.CAT_ID \
-                  AND a.OBJ_ID = b.OBJ_ID"
-           self.scratchDb.execute(sql)
-
-
-           # NB we use an INSERT IGNORE here. This is because of a known issue where multiple DVO cpm
-           # files can include the same detection, with the same IMAGE_ID/DET_ID pairing, but different
-           # PSPS object IDs assigned in the corresponding cpt file. This is believed to be a chip-boundary 
-           # issue within DVO. So, for now, we take the first IMAGE_ID/DET_ID detection we find, and ignore the rest
-           self.logger.infoPair("Merging into", self.scratchDb.dvoDetectionTable)
-           sql = "INSERT IGNORE INTO " + self.scratchDb.dvoDetectionTable + " (\
-                  imageID \
-                  ,ippDetectID \
-                  ,detectID \
-                  ,ippObjID \
-                  ,objID \
-                  ,flags \
-                  ,fileID \
-                  ) SELECT \
-                  IMAGE_ID \
-                  ,DET_ID \
-                  ,EXT_ID \
-                  ,CAT_ID * 1000000000 + OBJ_ID \
-                  ,PSPS_OBJ_ID \
-                  ,DB_FLAGS \
-                  , " + str(fileId) + " \
-                  FROM " + cpmTableName
-           try:
-               self.scratchDb.execute(sql)
-           except:
-               self.logger.error("FAILED: " + sql)
-               continue
-
-           # now drop what we don't need
-           self.logger.infoPair("Dropping tables", "%s and %s" % (cpmTableName, cptTableName))
-           self.scratchDb.dropTable(cpmTableName)
-           self.scratchDb.dropTable(cptTableName)
-
-           self.scratchDb.setImportedThisDvoTable(cptPath, region)
-           regionCount = regionCount + 1
+           self.logger.infoTitle("Region %d of %d: %s" % (regionCount, totalRegions, region))
+           if self.ingestRegion(region): ingestedRegionsCount += 1
+           regionCount += 1
 
         self.logger.infoSeparator()
-
-        self.logger.infoPair("Ingested", "%d DVO regions" % regionCount)
+        self.logger.infoPair("Ingested", "%d DVO regions (out of %d)" % (ingestedRegionsCount, len(self.regionsToIngest)))
 
         # update lists after attempted sync
@@ -476,5 +452,5 @@
     '''
     Imports a FITS file. A regex filter lets you choose which tables to pull from the file
-    An optional final argument lets you name the resulatant database table
+    An optional final argument lets you name the resultant database table
     '''
     def importFits(self, path, columns, tableName):
@@ -491,5 +467,5 @@
           table = stilts.tpipe(table, cmd='explodeall')
      
-          # IPP FITS files are littered with infinities, so remove these
+          # IPP FITS files are littered with infinity values. Remove them
           self.logger.debugPair("Removing", "infinity values")
           table = stilts.tpipe(table, cmd='replaceval -Infinity null *')
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/dvoToMySQL.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/dvoToMySQL.py	(revision 33597)
+++ 	(revision )
@@ -1,242 +1,0 @@
-#!/usr/bin/env jython
-
-import stilts
-import datetime
-import re
-import sys
-import os
-import logging
-import glob
-from subprocess import call, PIPE, Popen
-
-from pslogger import PSLogger
-from scratchdb import ScratchDb
-
-from java.lang import *
-from java.sql import *
-from xml.etree.ElementTree import ElementTree, Element, tostring
-
-
-'''
-Class for pulling IDs from a DVO database and shoving in a MySQL database 
-'''
-class DvoToMySql(object):
-
-    '''
-    Constructor
-
-    '''
-    def __init__(self, logger, doc, RESETTABLES):
-
-        # set up logging
-        self.logger = logger
-        self.doc = doc
-        self.logger.infoSeparator()
-        self.dvoLocation = self.doc.find("dvo/location").text
-
-        # create database object
-        self.scratchDb = ScratchDb(logger, self.doc, 1)
-
-        # some log stuff
-        self.logger.infoPair("Started", "dvoToMySql")
-        self.logger.infoPair("Importing DVO database at", self.dvoLocation)
-
-        # create DVO tables
-        if RESETTABLES: self.scratchDb.resetDvoToMysqlTables()
-
-        # import Images.dat table
-        self.logger.infoPair("Deleting from table", self.scratchDb.dvoMetaTable)
-        sql = "DELETE FROM " + self.scratchDb.dvoMetaTable
-        self.scratchDb.execute(sql)
-
-        imagesTableName = self.importFits(self.dvoLocation, 
-                "", 
-                "Images.dat", 
-                "SOURCE_ID IMAGE_ID CCDNUM EXTERN_ID FLAGS PHOTCODE NSTAR")
-        self.scratchDb.createIndex(imagesTableName, "EXTERN_ID")
-
-        # insert into dvoMetaFull
-        # NB what we and smf files call IMAGE_ID, DVO calls EXTERN_ID. We are sticking
-        # with the smf name
-        self.logger.infoPair("Populating", "all image meta data")
-        sql = "INSERT INTO " + self.scratchDb.dvoMetaTable + " ( \
-               sourceID, \
-               imageID, \
-               externID, \
-               flags, \
-               photcode \
-               ) SELECT \
-               SOURCE_ID, \
-               IMAGE_ID, \
-               EXTERN_ID, \
-               FLAGS, \
-               PHOTCODE \
-               FROM " + imagesTableName
-        self.scratchDb.execute(sql)
-
-        subdirs = ['n0000']
-
-        for subdir in subdirs:
-
-            files = glob.glob(self.dvoLocation + "/" + subdir + "/*.cpm")
-
-            #files = ['0247.06', '0244.06', '0244.10']
-
-            for file in files:
-
-                # get just filename, without extension
-                file = os.path.basename(os.path.splitext(file)[0])
-                self.logger.infoSeparator()
-
-                if self.scratchDb.alreadyImportedThisDvoTable(file): continue
-
-                # import cpm table and index
-                cpmTableName = self.importFits(self.dvoLocation, 
-                        subdir, 
-                        file + ".cpm", 
-                        "IMAGE_ID DET_ID OBJ_ID CAT_ID EXT_ID DB_FLAGS")
-                self.scratchDb.createIndex(cpmTableName, "IMAGE_ID")
-                self.scratchDb.createIndex(cpmTableName, "CAT_ID")
-                self.scratchDb.createIndex(cpmTableName, "OBJ_ID")
-
-                # import cpt table and index
-                cptTableName = self.importFits(self.dvoLocation, 
-                        subdir, 
-                        file + ".cpt", 
-                        "OBJ_ID CAT_ID EXT_ID")
-                self.scratchDb.createIndex(cptTableName, "IMAGE_ID")
-                self.scratchDb.createIndex(cptTableName, "CAT_ID")
-                self.scratchDb.createIndex(cptTableName, "OBJ_ID")
-      
-                # shove SOURCE_IDs into measurement table
-                self.logger.infoPair("Adding", "SOURCE_IDs")
-                sql = "ALTER TABLE " + cpmTableName + " ADD COLUMN (SOURCE_ID SMALLINT)"
-                self.scratchDb.execute(sql)
-                sql = "UPDATE " + cpmTableName + " AS a, " + imagesTableName + " AS b \
-                       SET a.SOURCE_ID = b.SOURCE_ID \
-                       WHERE a.IMAGE_ID = b.IMAGE_ID"
-                self.scratchDb.execute(sql)
-
-                # shove PSPS objID in measurement table
-                self.logger.infoPair("Adding","PSPS objIDs")
-                sql = "ALTER TABLE "+cpmTableName+" ADD COLUMN (PSPS_OBJ_ID BIGINT)"
-                self.scratchDb.execute(sql)
-                sql = "UPDATE "+cpmTableName+" AS a, "+cptTableName+" AS b \
-                       SET a.PSPS_OBJ_ID = b.EXT_ID \
-                       WHERE a.CAT_ID = b.CAT_ID \
-                       AND a.OBJ_ID = b.OBJ_ID" 
-                self.scratchDb.execute(sql)
-
-                # NB we use an INSERT IGNORE here. This is because of a known issue where multiple DVO cpm
-                # files can include the same detection, with the same IMAGE_ID/DET_ID pairing, but different
-                # PSPS object IDs assigned in the corresponding cpt file. This is believed to be a chip-boundary 
-                # issue within DVO. So, for now, we take the first IMAGE_ID/DET_ID detection we find, and ignore the rest
-                self.logger.infoPair("Populating", self.scratchDb.dvoDetectionTable)
-                sql = "INSERT IGNORE INTO " + self.scratchDb.dvoDetectionTable + " (\
-                       sourceID \
-                       ,imageID \
-                       ,ippDetectID \
-                       ,detectID \
-                       ,ippObjID \
-                       ,objID \
-                       ,flags \
-                       ) SELECT \
-                       SOURCE_ID \
-                       ,IMAGE_ID \
-                       ,DET_ID \
-                       ,EXT_ID \
-                       ,CAT_ID * 1000000000 + OBJ_ID \
-                       ,PSPS_OBJ_ID \
-                       ,DB_FLAGS \
-                       FROM " + cpmTableName
-                try:
-                    self.scratchDb.execute(sql)
-                except:
-                    self.logger.error("FAILED: " + sql)
-                    return 
-
-                # now drop what we don't need
-                self.logger.infoPair("Dropping table", cpmTableName)
-                self.scratchDb.dropTable(cpmTableName)
-                self.logger.infoPair("Dropping table", cptTableName)
-                self.scratchDb.dropTable(cptTableName)
-       
-                self.scratchDb.setImportedThisDvoTable(file)
-
-        self.scratchDb.dropTable(imagesTableName)
-
-
-    '''
-    Destructor
-    '''
-    def __del__(self):
-
-        self.logger.debug("DvoToMySql destructor")
-
-    '''
-    Imports a FITS file. A regex filter lets you choose which tables to pull from the file
-    '''
-    def importFits(self, path, subdir, file, columns):
-
-      fullPath = path + "/" + subdir + "/" + file
-
-      if len(subdir) < 1: tableName = file
-      else: tableName = subdir + "_" + file
-
-      tableName = tableName.replace('.', '_')
-
-      self.logger.infoPair("Importing tables from file", fullPath)
-      self.logger.infoPair("Writing to database table", tableName)
-
-      tables = stilts.treads(fullPath)
-
-      count = 0
-      for table in tables:
-
-          self.logger.infoPair("Reading IPP table", table.name)
-          table = stilts.tpipe(table, cmd='explodeall')
-     
-          # IPP FITS files are littered with infinities, so remove these
-          self.logger.infoPair("Removing", "infinity values")
-          table = stilts.tpipe(table, cmd='replaceval -Infinity null *')
-          table = stilts.tpipe(table, cmd='replaceval Infinity null *')
-
-          #try:
-          self.logger.infoPair("Writing FITS table to", "database")
-          table.cmd_keepcols(columns).write(self.scratchDb.url + '#' + tableName)
-          #except:
-          #    self.logger.exception("   Problem writing table '" + table.name + "' to the database")
-          count = count + 1
-
-      self.logger.infoPair("Finished importing", "%d tables" % count)
-
-      return tableName
-
-
-'''
-Start of program.
-'''
-
-if len(sys.argv) > 1: CONFIG  = sys.argv[1]
-else:
-    print "** Usage: " + sys.argv[0] + " <configPath> [reset]"
-    sys.exit(1)
-
-# open config file
-configDoc = ElementTree(file=CONFIG)
-
-logging.setLoggerClass(PSLogger)
-logger = logging.getLogger("dvoToMySQL")
-logger.setup(configDoc, "dvoToMySQL", 0, 1)
-
-RESETTABLES = 0
-
-if len(sys.argv) > 2 and sys.argv[2] == "reset": 
-    response = raw_input("* Are you ABSOLUTELY sure you want to recreate the DVO tables (y/n)? ")
-    if response == "y": RESETTABLES = 1
-    else: sys.exit(1)
-
-dvoToMySql = DvoToMySql(logger, configDoc, RESETTABLES)
-
-logger.infoPair("Program...", "complete")
-
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/dvodetections.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/dvodetections.py	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/dvodetections.py	(revision 34041)
@@ -0,0 +1,120 @@
+#!/usr/bin/env jython
+
+import stilts
+import datetime
+import re
+import sys
+import os
+import logging
+import glob
+
+from dvo import Dvo
+
+
+'''
+A class for ingesting DVO detections into MySQL
+'''
+class DvoDetections(Dvo):
+
+    '''
+    Constructor
+    '''
+    def __init__(self, logger, config, scratchDbName):
+
+        super(DvoDetections, self).__init__(logger, config, scratchDbName)
+
+        # declare DVO file types of interest
+        self.ingestFileTypes = ['cpm','cpt']
+
+    '''
+    Ingests detections for this region
+    '''
+    def ingestRegion(self, region):
+
+       cpmPath = self.config.dvoLocation + "/" + region + ".cpm"
+       cptPath = self.config.dvoLocation + "/" + region + ".cpt"
+
+       cpmTableName = self.scratchDb.getDbFriendlyTableName(region + ".cpm")
+       cptTableName = self.scratchDb.getDbFriendlyTableName(region + ".cpt")
+
+       # if we have not already ingested the cpm table, then do it now
+       if not self.scratchDb.alreadyImportedThisDvoTable(cpmPath):
+   
+           # import cpm table and index
+           self.importFits(
+                   cpmPath,
+                   "IMAGE_ID DET_ID OBJ_ID CAT_ID EXT_ID DB_FLAGS",
+                   cpmTableName)
+
+           self.scratchDb.createIndex(cpmTableName, "IMAGE_ID")
+           self.scratchDb.createIndex(cpmTableName, "CAT_ID")
+           self.scratchDb.createIndex(cpmTableName, "OBJ_ID")
+
+           # we can now report that we have imported this table
+           self.scratchDb.setImportedThisDvoTable(cpmPath, region)
+
+       # get the id for this cpm file so we can insert it in the dvoDetection table
+       fileId = self.scratchDb.getDvoFileId(cpmPath)
+
+       # import cpt table and index
+       self.importFits(
+               cptPath,
+               "OBJ_ID CAT_ID EXT_ID",
+               cptTableName)
+
+       self.scratchDb.createIndex(cptTableName, "IMAGE_ID")
+       self.scratchDb.createIndex(cptTableName, "CAT_ID")
+       self.scratchDb.createIndex(cptTableName, "OBJ_ID")
+
+       self.logger.infoPair("Adding","PSPS objIDs")
+       # first try to add a column for PSPS_OBJ_ID. catch failure and continue
+       try:
+           sql = "ALTER TABLE " + cpmTableName + " ADD COLUMN (PSPS_OBJ_ID BIGINT)"
+           self.scratchDb.execute(sql)
+       except:
+           self.logger.infoPair("Already added PSPS_OBJ_ID column to", cpmTableName)
+               
+       # shove PSPS objIDs from cpt table into measurement table
+       sql = "UPDATE " + cpmTableName + " AS a, " + cptTableName + " AS b \
+              SET a.PSPS_OBJ_ID = b.EXT_ID \
+              WHERE a.CAT_ID = b.CAT_ID \
+              AND a.OBJ_ID = b.OBJ_ID"
+       self.scratchDb.execute(sql)
+
+       # NB we use an INSERT IGNORE here. This is because of a known issue where multiple DVO cpm
+       # files can include the same detection, with the same IMAGE_ID/DET_ID pairing, but different
+       # PSPS object IDs assigned in the corresponding cpt file. This is believed to be a chip-boundary 
+       # issue within DVO. So, for now, we take the first IMAGE_ID/DET_ID detection we find, and ignore the rest
+       self.logger.infoPair("Merging into", self.scratchDb.dvoDetectionTable)
+       sql = "INSERT IGNORE INTO " + self.scratchDb.dvoDetectionTable + " (\
+              imageID \
+              ,ippDetectID \
+              ,detectID \
+              ,ippObjID \
+              ,objID \
+              ,flags \
+              ,fileID \
+              ) SELECT \
+              IMAGE_ID \
+              ,DET_ID \
+              ,EXT_ID \
+              ,CAT_ID * 1000000000 + OBJ_ID \
+              ,PSPS_OBJ_ID \
+              ,DB_FLAGS \
+              , " + str(fileId) + " \
+              FROM " + cpmTableName
+       try:
+           self.scratchDb.execute(sql)
+       except:
+           self.logger.error("FAILED: " + sql)
+           return False
+       finally:
+           self.logger.infoPair("Dropping tables", "%s and %s" % (cpmTableName, cptTableName))
+           self.scratchDb.dropTable(cpmTableName)
+           self.scratchDb.dropTable(cptTableName)
+
+       self.scratchDb.setImportedThisDvoTable(cptPath, region)
+
+       return True
+
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/dvoobjects.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/dvoobjects.py	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/dvoobjects.py	(revision 34041)
@@ -0,0 +1,48 @@
+#!/usr/bin/env jython
+
+import stilts
+import datetime
+import re
+import sys
+import os
+import logging
+import glob
+
+from dvo import Dvo
+
+
+'''
+A class for ingesting DVO detections into MySQL
+'''
+class DvoObjects(Dvo):
+
+    '''
+    Constructor
+    '''
+    def __init__(self, logger, config, scratchDbName=None):
+
+        super(DvoObjects, self).__init__(logger, config, scratchDbName)
+
+        # declare DVO file types of interest
+        self.ingestFileTypes = ['cpt', 'cps']
+        self.loadPhotcodes()
+
+    '''
+    Ingests object files for this region
+    '''
+    def ingestRegion(self, region):
+
+       self.logger.infoPair("Ingesting objects for", region)
+
+       for fileType in self.ingestFileTypes:
+
+           path = self.config.dvoLocation + "/" + region + "." + fileType
+           tableName = self.scratchDb.getDbFriendlyTableName(region + "." + fileType)
+
+           self.importFits(path, "*", tableName)
+
+           self.scratchDb.setImportedThisDvoTable(path, region)
+
+       return True
+
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/gpc1db.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/gpc1db.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/gpc1db.py	(revision 34041)
@@ -32,26 +32,26 @@
 
     '''
-    Gets a list of ids in this DVO database for this stage, could be cam or staticsky, for a box with defined center and side length
-    '''
-    def getIDsInThisDVODbForThisStageInThisBox(self, dvoDb, batchType, ra=180., dec=0., side=181.):
+    Gets a list of ids, ra and dec in this DVO database for this stage, could be cam or staticsky, for a box with defined center and side length
+    '''
+    def getItemsInThisDVODbForThisStageInThisBox(self, dvoDb, batchType, ra=180., dec=0., side=181.):
 
         halfSide = side/2.0
-        return self.getIDsInThisDVODbForThisStage(dvoDb, batchType, ra-halfSide, ra+halfSide, dec-halfSide, dec+halfSide)
-
-
-    '''
-    Gets a list of ids in this DVO database for this stage, could be cam or staticsky, and a box can be defined with equatorial coordinates
-    '''
-    def getIDsInThisDVODbForThisStage(self, dvoDb, batchType, minRA=-999, maxRA=999, minDec=-999, maxDec=999):
+        return self.getItemsInThisDVODbForThisStage(dvoDb, batchType, ra-halfSide, ra+halfSide, dec-halfSide, dec+halfSide)
+
+    '''
+    Gets a list of ids, ra and dec in this DVO database for this stage, could be cam or staticsky, and a box can be defined with equatorial coordinates
+    NB this uses Bill's potentially temporary 'skycells' database when finding RA/Dec for stacks.
+    '''
+    def getItemsInThisDVODbForThisStage(self, dvoDb, batchType, minRA=-999, maxRA=999, minDec=-999, maxDec=999):
 
         self.logger.debugPair("GPC1 RA range", "%.2f -> %.2f" % (minRA, maxRA))
         self.logger.debugPair("GPC1 Dec range", "%.2f -> %.2f" % (minDec, maxDec))
 
-        ids = []
-
-        if batchType == "P2": # TODO define these someplace 
+        rows = []
+
+        if batchType == "P2": # TODO define these some place 
 
             stage = "cam"
-            sql = "SELECT DISTINCT stage_id \
+            sql = "SELECT DISTINCT stage_id, DEGREES(ra), DEGREES(decl) \
                    FROM addRun \
                    JOIN minidvodbRun USING(minidvodb_name) \
@@ -72,27 +72,30 @@
         elif batchType == "ST":       
 
-            stage = "staticsky_multi"
-            sql = "SELECT DISTINCT stack_id FROM staticskyInput \
+            stage = "staticsky"
+            sql = "SELECT DISTINCT stack_id, radeg, decdeg FROM staticskyInput \
                    JOIN addRun ON(staticskyInput.sky_id = addRun.stage_id) \
                    JOIN minidvodbRun USING(minidvodb_name) \
                    JOIN minidvodbProcessed USING(minidvodb_id) \
+                   JOIN  stackRun USING(stack_id) JOIN skycell USING(skycell_id) \
                    WHERE minidvodbRun.minidvodb_group = '" + dvoDb + "' \
                    AND minidvodbRun.state = 'merged' \
                    AND minidvodbProcessed.fault = 0 \
                    AND addRun.stage = '" + stage + "' \
-                   AND addRun.state = 'full'"
-
-        try:
-            rs = self.executeQuery(sql)
-            while (rs.next()): ids.append(rs.getInt(1))
+                   AND addRun.state = 'full' \
+                   AND decdeg BETWEEN " + str(minDec) + " AND " + str(maxDec) + " \
+                   AND radeg BETWEEN " + str(minRA) + " AND " + str(maxRA) 
+
+        try:
+            rs = self.executeQuery(sql)
+            while (rs.next()): 
+               rows.append([rs.getInt(1), rs.getFloat(2), rs.getFloat(3)])
             rs.close()
         except:
             self.logger.exception("Can't query for ids in DVO")
-            return ids
-
-
-        self.logger.debug("Found %d items in DVO database '%s' for stage='%s'" % (len(ids), dvoDb, stage))
-
-        return ids
+            return rows
+
+        self.logger.debug("Found %d items in DVO database '%s' for stage='%s'" % (len(rows), dvoDb, stage))
+
+        return rows
 
     '''
@@ -263,5 +266,5 @@
                AND minidvodbRun.minidvodb_group = '" + dvoDb + "' \
                AND minidvodbRun.state = 'merged' \
-               AND stage = 'staticsky_multi'"
+               AND stage = 'staticsky'"
         '''
 
@@ -279,5 +282,5 @@
                AND mergedvodbRun.state = 'full' \
                AND mergedvodbRun.mergedvodb = '" + dvoDb + "' \
-               AND stage = 'staticsky_multi'"
+               AND stage = 'staticsky'"
 
 
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/initbatch.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/initbatch.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/initbatch.py	(revision 34041)
@@ -50,5 +50,6 @@
     '''
     def importIppTables(self, filter=""):
-        self.logger.debug("importIppTables method here to satidfy base-class")
+        self.logger.debug("importIppTables method here to satisfy base-class")
+        return True
 
     '''
@@ -63,4 +64,4 @@
     def populatePspsTables(self):
         self.logger.debug("No processing required for this batch type")
-        return 1
+        return True
 
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/ipptopsps.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/ipptopsps.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/ipptopsps.py	(revision 34041)
@@ -11,13 +11,8 @@
 from pslogger import PSLogger
 from ipptopspsdb import IppToPspsDb
-from dxlayer import DXLayer
-from datastore import Datastore
-from dvo import Dvo
-from odm import Odm
-
 
 '''
 Abstract base class for all ippToPsps programs
-handle command-line args, setting up of Config and logger objects, clean exiting etc 
+Handles command-line args, setting up of Config and logger objects, clean exiting etc
 '''
 class IppToPsps(object):
@@ -26,5 +21,5 @@
     Constructor
     '''
-    def __init__(self, argv):
+    def __init__(self, argv, logToStdout=1, logToFile=0):
 
         # are the arsg ok? all programs require a config name
@@ -35,5 +30,5 @@
         # some class constants
         self.PROGNAME = sys.argv[0]
-        self.CONFIGNAME = sys.argv[1]
+        CONFIGNAME = sys.argv[1]
         self.HOST = socket.gethostname()
         self.PID = os.getpid()
@@ -43,10 +38,21 @@
         self.SECONDS = None
 
+        self.createNewConfig = False
+        self.rotateConfigs = False
+        # a new config?
+        if CONFIGNAME == "edit": self.createNewConfig = True
+        # should we rotate configs for this program?
+        elif CONFIGNAME == "all": self.rotateConfigs = True
+
         # set up config object
-        self.config = Config(self.PROGNAME, self.CONFIGNAME)
-        self.logger = self.config.getLogger(self.HOST, self.PID, 1, 1)
+        self.config = Config(self.PROGNAME, CONFIGNAME)
+        self.logger = self.config.getLogger(self.HOST, self.PID, logToStdout, logToFile)
 
         # create connection to databases database
-        self.ippToPspsDb = IppToPspsDb(self.logger, self.config)
+        try:
+            self.ippToPspsDb = IppToPspsDb(self.logger, self.config)
+        except:
+            self.exitProgram("Could not connect to ipptopsps Db")
+            raise
 
         self.checkClientStatus()
@@ -58,4 +64,7 @@
         self.logger.infoSeparator()
         self.logger.infoTitle("ippToPsps '" + self.PROGNAME + "' started")
+        self.logger.infoPair("Host", self.HOST)
+        self.logger.infoPair("PID", "%d" % self.PID)
+        self.logger.infoPair("Config", self.config.name)
 
     '''
@@ -70,5 +79,4 @@
         except:
             pass
-
 
     '''
@@ -93,8 +101,12 @@
     Prints usage to stdout
     '''
-    def printUsage(self):
-        # using sys.stdout to avoid newline in case sub-classes need to add further args
-        sys.stdout.write("** Usage: " + sys.argv[0] + " <configPath>")
+    def printUsage(self, extra=""):
 
+        # write message to log or stdout if no logger set up
+        msg = sys.argv[0] + " <configName|all|edit> " + extra
+        try:
+            self.logger.errorPair("Usage:", msg)
+        except: 
+            print "*** Usage: " + msg
 
     '''
@@ -102,4 +114,26 @@
     '''
     def refreshConfig(self):
+
+        # new config?
+        if self.createNewConfig: 
+            self.ippToPspsDb.editConfig()
+            self.ippToPspsDb.setConfigForThisClient(self.config.name, self.HOST, self.PID)
+            self.createNewConfig = False
+
+        # if we are rotating configs, then look for next active one in list
+        if self.rotateConfigs:
+            self.ippToPspsDb.getConfigForThisClient(self.HOST, self.PID)
+            configs = self.ippToPspsDb.getActiveConfigList()
+             
+            i = 1
+            for config in configs:
+               if config == self.config.name: break
+               i += 1
+
+            if i >= len(configs): newConfig = configs[0]
+            else: newConfig = configs[i]
+
+            self.ippToPspsDb.setConfigForThisClient(newConfig, self.HOST, self.PID)
+
         return self.ippToPspsDb.readConfig(self.HOST, self.PID)
 
@@ -109,5 +143,5 @@
     def checkClientStatus(self):
 
-        self.ippToPspsDb.updateClient(self.PROGNAME, self.HOST, self.PID, self.config.name)
+        self.ippToPspsDb.updateClient(self.PROGNAME, self.HOST, self.PID)
 
         if self.ippToPspsDb.isKilled(self.HOST, self.PID): 
@@ -115,9 +149,12 @@
        
         # this loop pauses the process if we have no config or we have set it to pause
+        firstTimeIn = True
         while not self.refreshConfig() or self.ippToPspsDb.isPaused(self.HOST, self.PID):
 
-            self.ippToPspsDb.updateClient(self.PROGNAME, self.HOST, self.PID,  self.config.name)
-            if self.ippToPspsDb.isKilled(self.HOST, self.PID): self.exitProgram("killed while paused")
-            self.logger.infoPair("Paused. Will check again in", "%d secs" % self.PAUSEPERIOD)
+            self.ippToPspsDb.updateClient(self.PROGNAME, self.HOST, self.PID)
+            if self.ippToPspsDb.isKilled(self.HOST, self.PID): 
+                self.exitProgram("killed while paused")
+            if firstTimeIn: self.logger.infoPair("Paused. Will check again every", "%d secs" % self.PAUSEPERIOD)
+            firstTimeIn = False
             time.sleep(self.PAUSEPERIOD)
 
@@ -134,11 +171,11 @@
     Exits the program cleanly, removes info from ipptopsps database
     '''
-    def exitProgram(self, exitReason):
+    def exitProgram(self, exitReason="quit"):
 
         # write message to log or stdout if no logger set up
         try:
-            self.logger.infoPair("Program exited", exitReason)
+            self.logger.infoPair(self.PROGNAME + " exited", exitReason)
         except: 
-            print "** program exited: " + exitReason
+            print "*** Program exited: " + exitReason
 
         # remove from database if possible
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/ipptopspsdb.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/ipptopspsdb.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/ipptopspsdb.py	(revision 34041)
@@ -25,11 +25,11 @@
     Returns a list of merged batch IDs that are merged but not yet deleted
     '''
-    def getMergedButNotDeletedBatchIDs(self, batchType, epoch, dvoGpc1Label, column):
+    def getMergedButNotDeletedBatchIDs(self, batchType, column):
 
         sql = "SELECT DISTINCT batch_id \
                FROM batch \
-               WHERE timestamp > '" + epoch + "' \
+               WHERE timestamp > '" + self.config.epoch + "' \
                AND batch_type = '" + batchType + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND merged = 1 \
                AND " + column + " = 0"
@@ -50,11 +50,11 @@
     Returns a list of batch IDs marked as 'purged' but not yet deleted
     '''
-    def getPurgedButNotDeletedBatchIDs(self, batchType, epoch, dvoGpc1Label, column):
+    def getPurgedButNotDeletedBatchIDs(self, batchType, column):
 
         sql = "SELECT DISTINCT batch_id \
                FROM batch \
-               WHERE timestamp > '" + epoch + "' \
+               WHERE timestamp > '" + self.config.epoch + "' \
                AND batch_type = '" + batchType + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND purged = 1 \
                AND " + column + " = 0"
@@ -76,11 +76,11 @@
     Returns a list of processed batch IDs that have been loaded to the ODM but not yet deleted
     '''
-    def getLoadedToODMButNotDeletedBatchIDs(self, batchType, epoch, dvoGpc1Label, column):
+    def getLoadedToODMButNotDeletedBatchIDs(self, batchType, column):
 
         sql = "SELECT DISTINCT batch_id \
                FROM batch \
-               WHERE timestamp > '" + epoch + "' \
+               WHERE timestamp > '" + self.config.epoch + "' \
                AND batch_type = '" + batchType + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND (loaded_to_ODM = -1 OR merge_worthy = 1) \
                AND " + column + " = 0"
@@ -101,36 +101,36 @@
     Returns a list of merged batch IDs that are not deleted from local disk
     '''
-    def getMergedButNotDeletedFromLocalDisk(self, batchType, epoch, dvoGpc1Label):
-        return self.getMergedButNotDeletedBatchIDs(batchType, epoch, dvoGpc1Label, "deleted_local")
+    def getMergedButNotDeletedFromLocalDisk(self, batchType):
+        return self.getMergedButNotDeletedBatchIDs(batchType, "deleted_local")
 
     '''
     Returns a list of processed batch IDs that are loaded to the ODM, but not deleted from local disk
     '''
-    def getLoadedToODMButNotDeletedFromLocalDisk(self, batchType, epoch, dvoGpc1Label):
-        return self.getLoadedToODMButNotDeletedBatchIDs(batchType, epoch, dvoGpc1Label, "deleted_local")
+    def getLoadedToODMButNotDeletedFromLocalDisk(self, batchType):
+        return self.getLoadedToODMButNotDeletedBatchIDs(batchType, "deleted_local")
 
     '''
     Returns a list of processed batch IDs that are loaded to the ODM, but not deleted from datastore
     '''
-    def getLoadedToODMButNotDeletedFromDatastore(self, batchType, epoch, dvoGpc1Label):
-        return self.getLoadedToODMButNotDeletedBatchIDs(batchType, epoch, dvoGpc1Label, "deleted_datastore")
+    def getLoadedToODMButNotDeletedFromDatastore(self, batchType):
+        return self.getLoadedToODMButNotDeletedBatchIDs(batchType, "deleted_datastore")
 
     '''
     Returns a list of processed batch IDs that are loaded to the ODM, but not deleted from DXLayer
     '''
-    def getLoadedToODMButNotDeletedFromDXLayer(self, batchType, epoch, dvoGpc1Label):
-        return self.getLoadedToODMButNotDeletedBatchIDs(batchType, epoch, dvoGpc1Label, "deleted_dxlayer")
+    def getLoadedToODMButNotDeletedFromDXLayer(self, batchType):
+        return self.getLoadedToODMButNotDeletedBatchIDs(batchType, "deleted_dxlayer")
 
     '''
     Returns a list of purged  batch IDs that not deleted from local disk
     '''
-    def getPurgedButNotDeletedFromLocalDisk(self, batchType, epoch, dvoGpc1Label):
-        return self.getPurgedButNotDeletedBatchIDs(batchType, epoch, dvoGpc1Label, "deleted_local")
+    def getPurgedButNotDeletedFromLocalDisk(self, batchType):
+        return self.getPurgedButNotDeletedBatchIDs(batchType, "deleted_local")
 
     '''
     Returns a list of purged batch IDs that are not deleted from datastore
     '''
-    def getPurgedButNotDeletedFromDatastore(self, batchType, epoch, dvoGpc1Label):
-        return self.getPurgedButNotDeletedBatchIDs(batchType, epoch, dvoGpc1Label, "deleted_datastore")
+    def getPurgedButNotDeletedFromDatastore(self, batchType):
+        return self.getPurgedButNotDeletedBatchIDs(batchType, "deleted_datastore")
 
 
@@ -141,18 +141,18 @@
     want to load a test batch to PSPS
 
-    We also check that these batches are more than 4 HOURs old, so that we don't attempt to 
+    We also check that these batches are more than 12 HOURs old, so that we don't attempt to 
     publish something simulataneously with the client that it producing it
     '''
-    def getProcessedButFailedDatastoreBatchIDs(self, epoch, dvoGpc1Label, batchType):
+    def getProcessedButFailedDatastoreBatchIDs(self, batchType):
 
         sql = "SELECT DISTINCT batch_id \
                FROM batch \
-               WHERE timestamp > '" + epoch + "' \
+               WHERE timestamp > '" + self.config.epoch + "' \
                AND batch_type = '" + batchType + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND processed = 1\
                AND loaded_to_datastore != 1 \
                AND timestamp > '2011-10-27' \
-               AND timestamp < now() -  INTERVAL 4 HOUR"
+               AND timestamp < now() -  INTERVAL 12 HOUR"
 
         ids = []
@@ -161,8 +161,7 @@
             while (rs.next()):
                 ids.append(rs.getInt(1))
+            rs.close()
         except:
             self.logger.exception("Can't query for processed batch ids not loaded to datastore ipptopsps Db")
-
-        rs.close()
 
         self.logger.debug("Found %d processed but-not-on-datastore items" % len(ids))
@@ -174,10 +173,10 @@
     NOTE we exclude batches already deleted from the datastore, as sometimes we delete stuff prior to loading to ODM if there is a known problem with the batch
     '''
-    def getUnloadedBatchIDs(self, epoch, dvoGpc1Label, batchType):
+    def getUnloadedBatchIDs(self, batchType):
 
         sql = "SELECT batch_id \
                FROM batch \
-               WHERE timestamp > '" + epoch + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               WHERE timestamp > '" + self.config.epoch + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND loaded_to_datastore = 1 \
                AND batch_type = '" + batchType + "' \
@@ -192,6 +191,6 @@
         except:
             self.logger.exception("Can't query for unloaded batch ids in ipptopsps Db")
-
-        rs.close()
+        finally:
+            rs.close()
 
         self.logger.debug("Found %d unloaded items" % len(ids))
@@ -203,10 +202,10 @@
     NOTE we exclude batches already deleted from the datastore, as sometimes we delete stuff prior to loading to ODM if there is a known problem with the batch
     '''
-    def getUnmergeWorthyBatchIDs(self, epoch, dvoGpc1Label, batchType):
+    def getUnmergeWorthyBatchIDs(self, batchType):
 
         sql = "SELECT batch_id \
                FROM batch \
-               WHERE timestamp > '" + epoch + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               WHERE timestamp > '" + self.config.epoch + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND loaded_to_datastore = 1 \
                AND batch_type = '" + batchType + "' \
@@ -222,6 +221,6 @@
         except:
             self.logger.exception("Can't query for un-mergeworthy batch ids in ipptopsps Db")
-
-        rs.close()
+        finally:
+            rs.close()
 
         self.logger.debug("Found %d unloaded items" % len(ids))
@@ -232,10 +231,10 @@
     Returns a list of processed batch IDs that are merge_worthy, but not yet merged, for this epoch and dvo label
     '''
-    def getUnmergedBatchIDs(self, epoch, dvoGpc1Label, batchType):
+    def getUnmergedBatchIDs(self, batchType):
 
         sql = "SELECT batch_id \
                FROM batch \
-               WHERE timestamp > '" + epoch + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               WHERE timestamp > '" + self.config.epoch + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND merge_worthy = 1 \
                AND batch_type = '" + batchType + "' \
@@ -249,6 +248,6 @@
         except:
             self.logger.exception("Can't query for unmerged batch ids in ipptopsps Db")
-
-        rs.close()
+        finally:
+            rs.close()
 
         self.logger.debug("Found %d un-merged items" % len(ids))
@@ -259,10 +258,10 @@
     Returns a list of batch IDs for this epoch and dvo label for which the specified column is set to value
     '''
-    def getBatchIDs(self, epoch, dvoGpc1Label, column, value):
+    def getBatchIDs(self, column, value):
 
         sql = "SELECT DISTINCT batch_id \
                FROM batch \
-               WHERE timestamp > '" + epoch + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               WHERE timestamp > '" + self.config.epoch + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND " + column + " = " + str(value)
 
@@ -274,6 +273,6 @@
         except:
             self.logger.exception("Can't query for batch ids with " + column + " = " + str(value) + " in ipptopsps Db")
-
-        rs.close()
+        finally:
+            rs.close()
 
         self.logger.debug("Found %d batches with %s = %d" % (len(ids), column, value))
@@ -284,13 +283,14 @@
     Returns the total detections published to the datastore for this epoch, dvo label and batch type
     '''
-    def getTotalDetectionsPublished(self, batchType, epoch, dvoGpc1Label):
+    def getTotalDetectionsPublished(self, batchType, interval="10 YEAR"):
 
         sql = "SELECT SUM(total_detections) \
                FROM batch \
                WHERE batch_type = '" + batchType + "' \
-               AND timestamp > '" + epoch + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               AND timestamp > '" + self.config.epoch + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND processed = 1 \
-               AND loaded_to_datastore = 1"
+               AND loaded_to_datastore = 1 \
+               AND timestamp BETWEEN now() - INTERVAL " + interval + " AND now()"
 
         total = -1
@@ -300,9 +300,7 @@
             total =  rs.getLong(1)
         except:
-            self.logger.exception("Can't query for total detections published")
-
-        rs.close()
-
-        self.logger.debug("Found %d detections" % total)
+            self.logger.errorPair("Can't get total detections published", sql)
+        finally:
+            rs.close()
 
         return total
@@ -312,11 +310,11 @@
             cam_ids or stack_ids) for which the specified column is set to value
     '''
-    def getStageIDs(self, batchType, epoch, dvoGpc1Label, column, value):
+    def getStageIDs(self, batchType, column, value):
 
         sql = "SELECT DISTINCT stage_id \
                FROM batch \
                WHERE batch_type = '" + batchType + "' \
-               AND timestamp > '" + epoch + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               AND timestamp > '" + self.config.epoch + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND " + column + " = " + str(value)
 
@@ -328,8 +326,6 @@
         except:
             self.logger.exception("Can't query for ids with " + column + " = " + str(value) + " in ipptopsps Db")
-
-        rs.close()
-
-        self.logger.debug("Found %d batches with %s = 1 for batch type='%s'" % (len(ids), column, batchType))
+        finally:
+            rs.close()
 
         return ids
@@ -338,8 +334,8 @@
     Series of getter methods that utilise getBatchIDs() method above
     '''
-    def getloadedToDatastoreBatchIDs(self, epoch, dvoGpc1Label):
-        return self.getBatchIDs(epoch, dvoGpc1Label, "loaded_to_datastore", 1)
-    def getFailedLoadedToODMBatchIDs(self, epoch, dvoGpc1Label):
-        return self.getBatchIDs(epoch, dvoGpc1Label, "loaded_to_ODM", -1)
+    def getloadedToDatastoreBatchIDs(self):
+        return self.getBatchIDs("loaded_to_datastore", 1)
+    def getFailedLoadedToODMBatchIDs(self):
+        return self.getBatchIDs("loaded_to_ODM", -1)
 
     '''
@@ -347,24 +343,24 @@
     Series of getter methods that utilise getStageIDs() method above
     '''
-    def getProcessedIDs(self, batchType, epoch, dvoGpc1Label):
-        return self.getStageIDs(batchType, epoch, dvoGpc1Label, "processed", 1)
-    def getFailedProcessedIDs(self, batchType, epoch, dvoGpc1Label):
-        return self.getStageIDs(batchType, epoch, dvoGpc1Label, "processed", -1)
-    def getLoadedToDatastoreIDs(self, batchType, epoch, dvoGpc1Label):
-        return self.getStageIDs(batchType, epoch, dvoGpc1Label, "loaded_to_datastore", 1)
-    def getFailedLoadedToDatastoreIDs(self, batchType, epoch, dvoGpc1Label):
-        return self.getStageIDs(batchType, epoch, dvoGpc1Label, "loaded_to_datastore", -1)
-    def getLoadedToODMIDs(self, batchType, epoch, dvoGpc1Label):
-        return self.getStageIDs(batchType, epoch, dvoGpc1Label, "loaded_to_ODM", 1)
-    def getFailedLoadedToODMIDs(self, batchType, epoch, dvoGpc1Label):
-        return self.getStageIDs(batchType, epoch, dvoGpc1Label, "loaded_to_ODM", -1)
-    def getMergeWorthyIDs(self, batchType, epoch, dvoGpc1Label):
-        return self.getStageIDs(batchType, epoch, dvoGpc1Label, "merge_worthy", 1)
-    def getFailedMergeWorthyIDs(self, batchType, epoch, dvoGpc1Label):
-        return self.getStageIDs(batchType, epoch, dvoGpc1Label, "merge_worthy", -1)
-    def getMergedIDs(self, batchType, epoch, dvoGpc1Label):
-        return self.getStageIDs(batchType, epoch, dvoGpc1Label, "merged", 1)
-    def getFailedMergedIDs(self, batchType, epoch, dvoGpc1Label):
-        return self.getStageIDs(batchType, epoch, dvoGpc1Label, "merged", -1)
+    def getProcessedIDs(self, batchType):
+        return self.getStageIDs(batchType, "processed", 1)
+    def getFailedProcessedIDs(self, batchType):
+        return self.getStageIDs(batchType, "processed", -1)
+    def getLoadedToDatastoreIDs(self, batchType):
+        return self.getStageIDs(batchType, "loaded_to_datastore", 1)
+    def getFailedLoadedToDatastoreIDs(self, batchType):
+        return self.getStageIDs(batchType, "loaded_to_datastore", -1)
+    def getLoadedToODMIDs(self, batchType):
+        return self.getStageIDs(batchType, "loaded_to_ODM", 1)
+    def getFailedLoadedToODMIDs(self, batchType):
+        return self.getStageIDs(batchType, "loaded_to_ODM", -1)
+    def getMergeWorthyIDs(self, batchType):
+        return self.getStageIDs(batchType, "merge_worthy", 1)
+    def getFailedMergeWorthyIDs(self, batchType):
+        return self.getStageIDs(batchType, "merge_worthy", -1)
+    def getMergedIDs(self, batchType):
+        return self.getStageIDs(batchType, "merged", 1)
+    def getFailedMergedIDs(self, batchType):
+        return self.getStageIDs(batchType, "merged", -1)
 
     '''
@@ -372,10 +368,18 @@
     '''
     def getStages(self):
-        return ['processed', 'loaded_to_datastore', 'loaded_to_ODM', 'merge_worthy', 'deleted_datastore', 'deleted_dxlayer', 'merged', 'deleted_local' ]
+        return [
+        'processed', 
+        'loaded_to_datastore', 
+        'loaded_to_ODM', 
+        'merge_worthy', 
+        'deleted_datastore', 
+        'deleted_dxlayer', 
+        'merged', 
+        'deleted_local' ]
 
     '''
     Returns a count of batches processed in the specified time period.
     '''
-    def countBatchesInLastPeriod(self, batchType, epoch, dvoGpc1Label, interval):
+    def countBatches(self, batchType, interval="10 YEAR"):
 
         sql = "SELECT COUNT(batch_id) \
@@ -383,6 +387,6 @@
                WHERE batch_type = '" + batchType + "' \
                AND processed = 1 \
-               AND timestamp > '" + epoch + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               AND timestamp > '" + self.config.epoch + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND timestamp BETWEEN now() - INTERVAL " + interval + " AND now()"
 
@@ -393,4 +397,6 @@
             self.logger.exception("Unable to count batches in interval")
             return 0
+        finally:
+            rs.close()
 
     '''
@@ -398,5 +404,5 @@
     this epoch, dvo label and batch type
     '''
-    def getTimeOfLastBatchPublished(self, batchType, epoch, dvoGpc1Label):
+    def getTimeOfLastBatchPublished(self, batchType):
 
         seconds = None
@@ -406,6 +412,6 @@
                WHERE batch_type = '" + batchType + "' \
                AND loaded_to_datastore = 1 \
-               AND timestamp > '" + epoch + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               AND timestamp > '" + self.config.epoch + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                ORDER BY timestamp DESC LIMIT 1"
 
@@ -497,7 +503,7 @@
 
     '''
-    Is someone processing this item right now? Checks whether this was attempted within the last 2 HOUR
-    '''
-    def processingNow(self, batchType, stage_id, epoch, dvoGpc1Label):
+    Is someone processing this item right now? Checks whether this was attempted within the last 12 HOUR
+    '''
+    def processingNow(self, batchType, stage_id):
 
         sql = "SELECT COUNT(*) \
@@ -505,6 +511,7 @@
                WHERE stage_id = " + str(stage_id) + " \
                AND batch_type = '" + batchType + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
-               AND timestamp BETWEEN now() - INTERVAL 4 HOUR AND now()"
+               AND dvo_db = '" + self.config.dvoLabel + "' \
+               AND batch_type != 'IN' \
+               AND timestamp BETWEEN now() - INTERVAL 12 HOUR AND now()"
 
         try:
@@ -541,5 +548,5 @@
     Have we already processed this stage_id?
     '''
-    def alreadyProcessed(self, batchType, stage_id, epoch, dvoGpc1Label):
+    def alreadyProcessed(self, batchType, stage_id):
 
         sql = "SELECT COUNT(*) \
@@ -547,6 +554,7 @@
                WHERE stage_id = " + str(stage_id) + " \
                AND batch_type = '" + batchType + "' \
-               AND timestamp > '" + epoch + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               AND timestamp > '" + self.config.epoch + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
+               AND batch_type != 'IN' \
                AND processed = 1"
 
@@ -565,5 +573,5 @@
     Has this stage_id consistently failed to process?
     '''
-    def consistentlyFailed(self, batchType, stage_id, epoch, dvoGpc1Label):
+    def consistentlyFailed(self, batchType, stage_id):
 
         sql = "SELECT COUNT(*) \
@@ -571,6 +579,6 @@
                WHERE stage_id = " + str(stage_id) + " \
                AND batch_type = '" + batchType + "' \
-               AND timestamp > '" + epoch + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               AND timestamp > '" + self.config.epoch + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND processed = -1"
 
@@ -589,11 +597,11 @@
     Returns a list of stage_ids that have failed the max number of times
     '''
-    def getConsistentlyFailedIDs(self, batchType, epoch, dvoGpc1Label):
+    def getConsistentlyFailedIDs(self, batchType):
 
         sql = "SELECT DISTINCT stage_id, COUNT(stage_id) AS numoccur \
                FROM batch \
                WHERE batch_type = '" + batchType + "' \
-               AND timestamp > '" + epoch + "' \
-               AND dvo_db = '" + dvoGpc1Label + "' \
+               AND timestamp > '" + self.config.epoch + "' \
+               AND dvo_db = '" + self.config.dvoLabel + "' \
                AND processed = -1 \
                GROUP BY stage_id HAVING numoccur >= " + str(self.MAX_FAILS)
@@ -620,14 +628,14 @@
 
     '''
-    Creates a new batch. This is done with a locked table in order that no two clients can start work on the same item
-    '''
-    def createNewBatch(self, batchType, stageID, config):
+    Creates a new batch. This is done with a locked table in order that no two clients can start work on the same item, i.e. this is a crital section
+    '''
+    def createNewBatch(self, batchType, stageID):
 
         batchID = -1;
 
-        if config.force or \
-            (not self.alreadyProcessed(batchType, stageID, config.epoch, config.dvoLabel) \
-            and not self.processingNow(batchType, stageID, config.epoch, config.dvoLabel) \
-            and not self.consistentlyFailed(batchType, stageID, config.epoch, config.dvoLabel)): 
+        if self.config.force or \
+            (not self.alreadyProcessed(batchType, stageID) \
+            and not self.processingNow(batchType, stageID) \
+            and not self.consistentlyFailed(batchType, stageID)): 
 
             sql = "INSERT INTO batch ( \
@@ -640,7 +648,7 @@
                        '" + batchType + "', \
                        " + str(stageID) + ", \
-                       '" + config.survey + "', \
-                       '" + config.dvoLabel + "', \
-                       '" + config.datastoreProduct + "' \
+                       '" + self.config.survey + "', \
+                       '" + self.config.dvoLabel + "', \
+                       '" + self.config.datastoreProduct + "' \
                        )"
 
@@ -695,4 +703,18 @@
 
     '''
+    Inserts some object metadata for this batch ID
+    '''
+    def insertObjectMeta(self, batchID, region):
+
+        sql = "INSERT INTO object ( \
+               batch_id \
+               ,region \
+               ) VALUES ( \
+               " + str(batchID) + " \
+               ,'" + region + "' \
+               )"
+
+        self.execute(sql)
+    '''
     Resets a batch ready for re-loading to the datastore
     '''
@@ -712,4 +734,54 @@
 
     '''
+    Pause loading clients
+    '''
+    def pauseLoaders(self, bool, ids):
+        self.setColForLoaders("paused", bool, ids)
+
+    '''
+    Kill loading clients
+    '''
+    def killLoaders(self, bool, ids):
+        self.setColForLoaders("killed", bool, ids)
+
+    '''
+    Sets the config field for this client
+    '''
+    def setConfigForThisClient(self, config, host, pid):
+
+        self.execute("UPDATE clients SET config = '" + config + "' \
+                WHERE host = '" + host + "' \
+                AND pid = " + str(pid))
+    '''
+    Sets the config field for a set of loader clients
+    '''
+    def setConfigForLoaders(self, config, ids):
+
+        for id in ids:
+            self.execute("UPDATE clients SET config = '" + config + "' \
+                    WHERE type = 'loader.py' \
+                    AND id = " + str(id))
+
+    '''
+    Sets the value for a given column for a set of loader clients
+    '''
+    def setColForLoaders(self, col, bool, ids):
+
+        if bool: value = 1
+        else: value = 0
+
+        for id in ids:
+            self.execute("UPDATE clients SET " + col + " = " + str(value) + " \
+                    WHERE type = 'loader.py' \
+                    AND id = " + str(id))
+
+    '''
+    Remove client by id
+    '''
+    def removeClientsByIds(self, ids):
+        for id in ids:
+            self.execute("DELETE FROM clients WHERE id = " + str(id))
+
+    '''
     Remove client
     '''
@@ -720,14 +792,14 @@
     Insert client
     '''
-    def insertClient(self, type, host, pid, config):
-        self.execute("INSERT INTO clients (timestamp, type, host, pid, config) VALUES (now(), '" + type + "', '" + host + "', " + str(pid) + ", '" + config + "')")
+    def insertClient(self, type, host, pid):
+        self.execute("INSERT INTO clients (timestamp, type, host, pid, config) VALUES (now(), '" + type + "', '" + host + "', " + str(pid) + ", '" + self.config.name + "')")
 
     '''
     Update clients, or inserts it for the first time
     '''
-    def updateClient(self, type, host, pid, config):
-
-        try:
-            self.insertClient(type, host, pid, config)
+    def updateClient(self, type, host, pid):
+
+        try:
+            self.insertClient(type, host, pid)
         except:
             self.execute("UPDATE clients SET timestamp = now() WHERE host = '" + host + "' AND pid = " + str(pid))
@@ -764,11 +836,82 @@
         return False
 
-
-    '''
-    Populates Config object
-    '''
-    def readConfig(self, host, pid):
-
-        # first get config defined for this client
+    '''
+    Returns a list of available configs
+    '''
+    def getActiveConfigList(self):
+        
+        sql = "SELECT DISTINCT name FROM config WHERE active = 1 ORDER BY name"
+
+        configs = []
+        try:
+            rs = self.executeQuery(sql)
+            while (rs.next()): configs.append(rs.getString(1))
+        except:
+            self.logger.errorPair("Can't get config names", sql)
+        finally:
+            rs.close()
+
+        return configs
+
+    '''
+    Prompts user for info about a new or existing config and lets them neter the various details
+    '''
+    def editConfig(self):
+
+       print " ********************************************************************"
+       print " *              Config editor"
+       print " *"
+       response = raw_input(" * Name for new config, or existing config to edit? ")
+       if response == "": return
+       self.config.name = response
+
+       # attempt to insert new config, if it already exists then carry on with update
+       sql = "INSERT INTO config (name) VALUES ('" + self.config.name + "')"
+       try:        
+           self.execute(sql) 
+       except: pass
+
+       # for each column in the config table
+       sql = "SHOW COLUMNS FROM config"
+       rs = self.executeQuery(sql)
+       while (rs.next()):
+
+           field = rs.getString(1)
+           type = rs.getString(2)
+           null = rs.getString(3)
+
+           # things we don;t want the user to edit
+           if field == 'timestamp': continue
+           if field == 'name': continue
+
+           # get current value for this field, if any
+           try:
+               rs2 = self.executeQuery("SELECT " + field + " FROM config WHERE name = '" + self.config.name + "'")
+               rs2.first()
+               default = rs2.getString(1)
+           except: pass
+
+           question = " * " + field + " (" + type + ")"
+
+           # there may not be a default value
+           try: question = question +  " hit return to accept default of: '" + default + "'"
+           except: pass
+
+           # prompt the user for new value or to accept existing value
+           question = question +  "? "
+           response = raw_input(question)
+           if response != "":
+               if type.find("varchar") != -1 or type.find("timestamp") != -1: quotes = "'"
+               else: quotes = ""
+               self.execute("UPDATE config SET " + field + " = " + quotes + response + quotes + " WHERE name = '" + self.config.name + "'")
+       
+       print " *"
+       print " ********************************************************************"
+
+    '''
+    Returns config for this client
+    '''
+    def getConfigForThisClient(self, host, pid):
+
         sql = "SELECT config \
                FROM clients \
@@ -785,26 +928,37 @@
             return False
 
+        return True
+
+    '''
+    Reads config from the database and populates Config object
+    '''
+    def readConfig(self, host, pid):
+
+        # first get config defined for this client
+        if not self.getConfigForThisClient(host, pid): return False
+
         # now load that config
         sql = "SELECT \
-        datastore_product, \
-        datastore_type, \
-        datastore_publish, \
-        dvo_label, \
-        dvo_location, \
-        min_ra, \
-        max_ra, \
-        min_dec, \
-        max_dec, \
-        box_size, \
-        base_path, \
-        data_release, \
-        delete_local, \
-        delete_datastore, \
-        delete_dxlayer, \
-        epoch, \
-        survey, \
-        psps_survey, \
-        queue_P2, \
-        queue_ST \
+        datastore_product \
+        ,datastore_type \
+        ,datastore_publish \
+        ,dvo_label \
+        ,dvo_location \
+        ,min_ra \
+        ,max_ra \
+        ,min_dec \
+        ,max_dec \
+        ,box_size \
+        ,base_path \
+        ,data_release \
+        ,delete_local \
+        ,delete_datastore \
+        ,delete_dxlayer \
+        ,epoch \
+        ,survey \
+        ,psps_survey \
+        ,queue_P2 \
+        ,queue_ST \
+        ,queue_OB \
         FROM config \
         WHERE name = '" + self.config.name + "'"
@@ -819,4 +973,7 @@
             else: self.config.datastorePublishing = False
             self.config.dvoLabel = rs.getString(4)
+
+            # if dvoLabel is null is can break queries, so set to something
+            if not self.config.dvoLabel: self.config.dvoLabel = "none"
             self.config.dvoLocation = rs.getString(5)
             self.config.minRa = rs.getDouble(6)
@@ -839,4 +996,5 @@
             if rs.getInt(19) == 1: self.config.batchTypes.append("P2")
             if rs.getInt(20) == 1: self.config.batchTypes.append("ST")
+            if rs.getInt(21) == 1: self.config.batchTypes.append("OB")
             self.config.force = False # TODO
             self.config.test = False # TODO
@@ -851,11 +1009,11 @@
     Gets id of box with these coords
     '''
-    def getBoxId(self, config, ra, dec, boxSide):
+    def getBoxId(self, ra, dec):
 
         sql = "SELECT id FROM box \
-               WHERE config  = '" + config + "' \
+               WHERE config  = '" + self.config.name + "' \
                AND ra_center = " + str(ra) + " \
                AND dec_center = " + str(dec) + " \
-               AND box_side = " + str(boxSide)
+               AND box_side = " + str(self.config.boxSize)
 
         id = -1
@@ -869,27 +1027,16 @@
         return id
 
-
     '''
     Remove all boxes and associated ids in pending table
     '''
-    def removeAllBoxes(self, config):
-        self.execute("DELETE FROM box WHERE config = '" + config + "'")
-
-    '''
-    Removes a box and it's associated ids in the pending table
-    '''
-    def removeBox(self, config, ra, dec, boxSide):
-        self.execute("DELETE FROM box \
-                WHERE config = '" + config + "' \
-                AND ra_center = " + str(ra) + " \
-                AND dec_center = " + str(dec) + " \
-                AND box_side = " + str(boxSide))
+    def removeAllBoxes(self):
+        self.execute("DELETE FROM box WHERE config = '" + self.config.name + "'")
 
     '''
     Inserts new box into box table. If it already exisits, it returns existing box id 
     '''
-    def insertBox(self, config, ra, dec, boxSide):
-
-        id = self.getBoxId(config, ra, dec, boxSide)
+    def insertBox(self, ra, dec):
+
+        id = self.getBoxId(ra, dec)
 
         # does not already exists so insert
@@ -899,8 +1046,8 @@
                    (config, ra_center, dec_center, box_side) \
                    VALUES \
-                   ('" + config + "', " + str(ra) + ", " + str(dec) + ", " + str(boxSide) + ")"
+                   ('" + self.config.name + "', " + str(ra) + ", " + str(dec) + ", " + str(self.config.boxSize) + ")"
 
             self.execute(sql)
-            id = self.getBoxId(config, ra, dec, boxSide)
+            id = self.getBoxId(ra, dec)
 
         return id
@@ -912,8 +1059,10 @@
 
         # first delete old pending items
-        self.execute("DELETE FROM pending WHERE box_id = " + str(box_id))
+        self.execute("DELETE FROM pending \
+                WHERE box_id = " + str(box_id) + " \
+                AND batch_type = '" + batchType + "'")
 
         for id in ids:
-            sql = "INSERT INTO pending \
+            sql = "INSERT IGNORE INTO pending \
                (box_id, batch_type, stage_id) \
                VALUES \
@@ -923,15 +1072,58 @@
 
     '''
-    Returns ids for all boxes with pending items
-    '''
-    def getBoxIds(self, config):
-
+    Returns ids for all boxes with pending items in a stripe of RA not already being processed
+    by another client. If none are available, then it uses the stripe already used by another 
+    client that has the most pending items
+    '''
+    def getStripeBoxIds(self, host, pid, batchType):
+
+        self.execute("LOCK TABLES box READ, pending READ, stripe WRITE, clients WRITE")
+
+        ids = []
+        raCenter = -1.0
+        sql = "SELECT ra_center \
+               FROM box \
+               JOIN pending ON (id = box_id) \
+               WHERE config = '" + self.config.name + "' \
+               AND batch_type = '" + batchType + "' \
+               AND ra_center NOT IN \
+               (SELECT ra_center \
+                FROM stripe \
+                WHERE config = '" + self.config.name + "') \
+               GROUP BY ra_center LIMIT 1"
+
+        try:
+            rs = self.executeQuery(sql)
+            rs.first()
+            raCenter = rs.getFloat(1)
+            rs.close()
+        except:
+            self.logger.errorPair("No free stripes", "trying to share with other client...")
+            sql = "SELECT ra_center, COUNT(*) AS numPending\
+                   FROM box \
+                   JOIN pending ON (id = box_id) \
+                   WHERE config = '" + self.config.name + "' \
+                   AND batch_type = '" + batchType + "' \
+                   GROUP BY ra_center \
+                   ORDER BY numPending \
+                   DESC LIMIT 1"
+
+            try:
+                rs = self.executeQuery(sql)
+                rs.first()
+                raCenter = rs.getFloat(1)
+                rs.close()
+            except:
+                self.logger.errorPair("No available stripes to share", "no stripe obtained")
+
+        self.logger.infoPair("Using RA stripe", "%f" % raCenter)
         sql = "SELECT DISTINCT id \
                FROM box \
-               JOIN pending ON (id = box_id)  \
-               WHERE config = '" + config + "' \
-               ORDER BY ra_center, dec_center"
-
-        ids = []
+               JOIN pending ON (id = box_id) \
+               WHERE ra_center = " + str(raCenter) + " \
+               AND batch_type = '" + batchType + "' \
+               AND config = '" + self.config.name + "' \
+               ORDER BY dec_center DESC"
+
         try:
             rs = self.executeQuery(sql)
@@ -939,7 +1131,39 @@
             rs.close()
         except:
-            self.logger.errorPair("Can't get boxes", sql)
+            self.logger.errorPair("Can't get stripe boxes", sql)
+
+        self.registerStripe(host, pid, raCenter)
+
+        self.unlockTables()
 
         return ids
+
+    '''
+    Inserts row into strip table
+    '''
+    def registerStripe(self, host, pid, raCenter):
+       
+        # first, delete any existing record
+        try:
+            self.execute("DELETE FROM stripe \
+                    WHERE client_id = \
+                    (SELECT id FROM clients \
+                     WHERE host = '" + host + "' AND pid = " + str(pid) + ")")
+        except:
+            self.logger.errorPair("Can't delete from stripe table", sql)
+
+
+        # now insert new stripe entry
+        sql = "INSERT INTO stripe \
+               (client_id, config, ra_center) \
+               SELECT clients.id, clients.config, " + str(raCenter) + " \
+               FROM clients \
+               WHERE host = '" + host + "' \
+               AND pid = " + str(pid)
+        try:
+            self.execute(sql)
+        except:
+            self.logger.errorPair("Can't insert into stripe", sql)
+
 
     '''
@@ -961,7 +1185,28 @@
 
     '''
+    Returns ids for pending items for this config
+    '''
+    def getPendingIds(self, batchType):
+
+        sql = "SELECT DISTINCT stage_id \
+               FROM pending \
+               JOIN box ON (box_id = id) \
+               WHERE config = '" + self.config.name + "' \
+               AND batch_type = '" + batchType + "'"
+
+        ids = []
+        try:
+            rs = self.executeQuery(sql)
+            while (rs.next()): ids.append(rs.getInt(1))
+            rs.close()
+        except:
+            self.logger.errorPair("Can't get pending ids for this config", sql)
+
+        return ids
+
+    '''
     Returns ids for pending items in this box for this batch type
     '''
-    def getPendingIds(self, boxId, batchType):
+    def getPendingIdsForThisBox(self, boxId, batchType):
 
         sql = "SELECT stage_id FROM pending WHERE batch_type = '" + batchType + "' AND box_id = " + str(boxId)
@@ -978,42 +1223,125 @@
 
     '''
-    Returns max number of pensing items in a box for this config
-    '''
-    def getMaxPendingInBox(self, config):
-
-        sql = "SELECT MAX(pending) \
-               FROM (SELECT COUNT(stage_id) AS pending \
+    Deletes an item from the pending table
+    '''
+    def deletePendingItem(self, batchType, stageID):
+
+        sql = "DELETE pending \
+               FROM pending \
+               JOIN box ON (id = box_id) \
+               WHERE stage_id = " + str(stageID) + " \
+               AND batch_type = '" + batchType + "' \
+               AND config = '" + self.config.name + "'"
+
+        self.execute(sql)
+
+    '''
+    Writes density-plot data to file for pending stuff over sky for given config
+    '''
+    def createPendingDensityPlotData(self, batchType, DATFILE):
+
+        sql = "SELECT id, ra_center, dec_center \
+               FROM box \
+               WHERE config = '" + self.config.name + "' \
+               ORDER BY ra_center, dec_center"
+
+        maxPending = 0
+        try:
+            rs = self.executeQuery(sql)
+            while (rs.next()):
+                
+                boxId = rs.getInt(1)
+
+                sql = "SELECT COUNT(stage_id) \
                        FROM pending \
-                       JOIN box ON (id = box_id) \
-                       WHERE config = '" + config + "' \
-                       GROUP BY box_id) AS t"
-
-        try:
-            rs = self.executeQuery(sql)
-            rs.first()
-            return rs.getInt(1)
-        except:
-            self.logger.errorPair("Could not count max pending", sql)
-            return 100
-
-    '''
-    Writes density-plot data to file for pending stuff over sky for given config
-    '''
-    def createPendingDensityPlotData(self, config, DATFILE):
-
-        sql = "SELECT ra_center, dec_center, COUNT(stage_id) \
-               FROM box \
-               LEFT JOIN pending ON (id = box_id) \
-               WHERE config = '" + config + "' \
-               GROUP BY id \
-               ORDER BY ra_center, dec_center"
-
+                       WHERE box_id = " + str(boxId) + " \
+                       AND batch_type = '" + batchType + "'"
+                rs2 = self.executeQuery(sql)
+                rs2.first()
+                max = rs2.getInt(1)
+                rs2.close() 
+                print >> DATFILE, rs.getFloat(2), rs.getFloat(3), max
+                if max > maxPending: maxPending = max
+            rs.close()
+        except:
+            self.logger.errorPair("Can't get density plot data", sql)
+
+        return maxPending
+
+    '''
+    Creates a temporary table and shoves it full of stage_ids and ra/dec coords
+    '''
+    def storeAllItems(self, rows):
+
+        try:
+            self.execute("DROP TABLE all_pending")
+        except:
+            pass
+
+        self.execute("CREATE TEMPORARY TABLE all_pending (stage_id bigint(20), ra_bore float, dec_bore float)")
+        for row in rows:
+
+            try:
+                sql = "INSERT INTO all_pending (stage_id, ra_bore, dec_bore) \
+                       VALUES (%d, %f, %f)" % (row[0], row[1], row[2]) 
+                self.execute(sql)
+            except: continue
+
+        count = self.getRowCount("all_pending")
+        self.logger.infoPair("Items written to Db", "%d" % count)
+
+    '''
+    Gets all items in the all_pending temporary table within the bounds of this box
+    '''
+    def getItemsInThisThisBox(self, ra, dec):
+
+        halfSide = self.config.boxSize/2.0
+        minRa =  ra-halfSide
+        maxRa = ra+halfSide
+        minDec = dec-halfSide
+        maxDec = dec+halfSide
+
+        ids = []
+
+        sql = "SELECT DISTINCT stage_id \
+               FROM all_pending \
+               WHERE ra_bore BETWEEN " + str(minRa) + " AND " + str(maxRa) + " \
+               AND dec_bore BETWEEN " + str(minDec) + " AND " + str(maxDec)
+
+        try:
+            rs = self.executeQuery(sql)
+            while (rs.next()): ids.append(rs.getInt(1))
+        except:
+            self.logger.errorPair("Can't get items in this box", sql)
+
+        return ids
+
+    '''
+    Gets client info
+    '''
+    def getClientInfo(self):
+
+        sql = "SELECT id, host, started, timestamp, ra_center, paused, killed \
+               FROM stripe \
+               JOIN clients ON (client_id = id) \
+               WHERE clients.config = '" + self.config.name + "' \
+               ORDER BY host, started"
+
+        rows = []
         try:
             rs = self.executeQuery(sql)
             while (rs.next()):
-                print >> DATFILE, rs.getFloat(1), rs.getFloat(2), rs.getInt(3)
-            rs.close()
-        except:
-            self.logger.errorPair("Can't get density plot data", sql)
+                rows.append([rs.getInt(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getFloat(5), rs.getInt(6), rs.getInt(7)])
+            rs.close()
+        except:
+            self.logger.errorPair("Can't query for client data", sql)
+
+        return rows
+
+    '''
+    Purges old clients that may have died, i.e. those with a timestamp older than n hours
+    '''
+    def purgeDeadClients(self):
+        self.execute("DELETE FROM clients WHERE timestamp < now() - INTERVAL 14 HOUR")
 
     '''
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/loader.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/loader.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/loader.py	(revision 34041)
@@ -16,9 +16,10 @@
 from datastore import Datastore
 from batch import Batch
-from dvo import Dvo
+from dvodetections import DvoDetections
 
 from initbatch import InitBatch
 from stackbatch import StackBatch
 from detectionbatch import DetectionBatch
+from objectbatch import ObjectBatch
 
 '''
@@ -31,5 +32,5 @@
     '''
     def __init__(self, argv):
-        super(Loader, self).__init__(argv)
+        super(Loader, self).__init__(argv, 1, 1)
 
         # create gpc1 database objects
@@ -44,17 +45,16 @@
                 self.scratchDb.disconnect()
                 continue
-            self.logger.infoPair("Using scratch Db", self.scratchDb.dbName)
             break
 
-        if not self.scratchDb.connected: 
-            self.logger.errorPair("Cannot connect to a", "scratch database")
-            raise Exception("No scratch Db")
-        
-        # now pass scratch Db to dvo object
-        self.dvo.setScratchDb(self.scratchDb.dbName)
+        if not self.scratchDb.connected:
+            self.exitProgram("Cannot connect to a scratch database")
+            raise
+       
+        # create Datastore objects
+        self.datastore = Datastore(self.logger, self.config, self.ippToPspsDb)
 
         # if an IN batch is requested, create and quit
         if len(sys.argv) > 2 and sys.argv[2] == "init":
-           batchID = self.ippToPspsDb.createNewBatch("IN", 0, self.config)
+           batchID = self.ippToPspsDb.createNewBatch("IN", 0)
            if batchID > 0:
                batch = InitBatch(self.logger, 
@@ -65,9 +65,12 @@
                        batchID)
                batch.run()
-    
+           else:
+               self.logger.errorPair("Could not create batch ID", "%d" % batchID)
+               self.exitProgram("failed to create init batch")
+               
            self.exitProgram("init batch created")
     
 
-        # set a poll time of about 1 minutes
+        # set a poll time of about 1 minute
         self.parsePollTimeArg("0.0166")
 
@@ -75,73 +78,103 @@
 
     '''
-    Overrides base-class version
+    Overrides base-class version so we can ensure our scratch Db is using the right DVO Db
     '''
     def refreshConfig(self):
 
         ret = super(Loader, self).refreshConfig()
-        self.dvo = Dvo(self.logger, self.config)
-        try: self.dvo.setScratchDb(self.scratchDb.dbName)
-        except: pass
-        self.datastore = Datastore(self.logger, self.config, self.ippToPspsDb)
+        try: self.scratchDb
+        except: return ret
+           
+        self.dvoDetections = DvoDetections(self.logger, self.config, self.scratchDb.dbName)
 
         return ret
 
     '''
+    Overrides base_class version so we can break out of processing loops if the config changes
+    '''
+    def checkClientStatus(self):
+
+        oldConfigName = self.config.name
+        super(Loader, self).checkClientStatus()
+        if oldConfigName != self.config.name:
+            self.logger.infoPair("Config changed",  "from '" + oldConfigName + "' to '" + self.config.name + "'")
+            self.config.printAll()
+            return False
+
+        return True
+
+    '''
     Main processing loop
     '''
     def run(self):
 
+        if not self.scratchDb.connected: return
+
+        numAttempts = 0
         while True:
 
-            boxIds = self.ippToPspsDb.getBoxIds(self.config.name)
-   
-            self.logger.infoPair("Boxes with unprocessed data", "%d" % len(boxIds))
-
-            for boxId in boxIds:
-      
-                self.checkClientStatus()
-
-                # get box info. if boxes have changed, break and start again
-                try:
-                    boxDim = self.ippToPspsDb.getBoxDimensions(boxId)
-                except:
-                   self.logger.infoPair("Can't get details for this box", "%d" % boxId)
-                   break
-                 
-                for batchType in self.config.batchTypes:
-                    
-                    ids = self.ippToPspsDb.getPendingIds(boxId, batchType)
-            
+            abort = False
+            for batchType in self.config.batchTypes:
+
+                # get a stripe's worth of box IDs
+                boxIds = self.ippToPspsDb.getStripeBoxIds(self.HOST, self.PID, batchType)
+
+                numAttempts += 1
+
+                self.logger.infoPair("Boxes with unprocessed data", "%d" % len(boxIds))
+    
+                if len(boxIds) > 0: numAttempts = 0
+
+                for boxId in boxIds:
+          
+                    if not self.checkClientStatus():
+                        abort = True
+                        break
+    
+                    # get box info. if boxes have changed, break and start again
+                    try:
+                        boxDim = self.ippToPspsDb.getBoxDimensions(boxId)
+                    except:
+                        self.logger.infoPair("Can't get details for this box", "%d" % boxId)
+                        break
+     
+                    ids = self.ippToPspsDb.getPendingIdsForThisBox(boxId, batchType)
+                
                     if len(ids) < 1: 
                         self.logger.debugPair("No " + batchType + " items found in this box", "skipping")
                         continue
-            
+                
                     self.logger.infoSeparator()
+                    self.logger.infoTitle("New box")
                     self.logger.infoPair("Box dimensions", "%.1f / %.1f / %.1f" % (boxDim['RA'], boxDim['DEC'], boxDim['SIDE']))
                     self.logger.infoPair(batchType + " items found in this box", "%d" % len(ids))
                     boxSizeWithBorder = boxDim['SIDE'] + (self.config.BORDER * 2)
-   
-                    # look in DVO for this box (with extra border)
-                    self.dvo.setSkyAreaAsBox(boxDim['RA'], boxDim['DEC'], boxSizeWithBorder)
-                    sizeToBeIngested = self.dvo.getDiskSizeOfRegionsToBeIngested()
-                    if sizeToBeIngested == 0.0: smfsPerGB = 999999999
-                    else: smfsPerGB = len(ids)/sizeToBeIngested
-                    self.logger.infoPair("DVO to be ingested", "%.1f GB" % sizeToBeIngested)
-                    self.logger.infoPair("smfs-per-GB", "%.1f" % smfsPerGB)
-            
-                    # should do we pre-ingest stuff from DVO?
-                    if smfsPerGB > 40:
-                        if not self.dvo.sync():
-                            self.logger.errorPair("Could not sync DVO with MySQL", "skipping")
-                            continue
      
-                        useFullTables = 1
-                    else: useFullTables = 0
-            
+                    useFullTables = 0
+                    if batchType != "OB":
+                        # look in DVO for this box (with extra border)
+                        self.logger.infoPair("Querying DVO for this sky area", "")
+                        self.dvoDetections.setSkyAreaAsBox(boxDim['RA'], boxDim['DEC'], boxSizeWithBorder)
+                        #self.dvoDetections.setSkyArea()
+                        sizeToBeIngested = self.dvoDetections.getDiskSizeOfRegionsToBeIngested()
+                        if sizeToBeIngested == 0.0: smfsPerGB = 999999999
+                        else: smfsPerGB = len(ids)/sizeToBeIngested
+                        self.logger.infoPair("DVO to be ingested", "%.1f GB" % sizeToBeIngested)
+                        self.logger.infoPair("smfs-per-GB", "%.1f" % smfsPerGB)
+                        # should do we pre-ingest stuff from DVO?
+                        if batchType == 'P2' and smfsPerGB > 30:
+                            if not self.dvoDetections.sync():
+                                self.logger.errorPair("Could not sync DVO with MySQL", "skipping")
+                                continue
+     
+                            useFullTables = 1
+                
                     self.logger.infoBool("Using pre-ingested DVO data?", useFullTables)
-                    self.processTheseItems(batchType, ids, useFullTables)
-
-            self.checkClientStatus()
-            if not self.waitForPollTime(): break
+                    if not self.processTheseItems(batchType, ids, useFullTables):
+                        abort = True
+                        break
+
+            if abort or not self.checkClientStatus(): abort = True
+            elif numAttempts > 1 and not self.waitForPollTime():  break
 
         
@@ -158,5 +191,5 @@
         for id in ids:
     
-            batchID = self.ippToPspsDb.createNewBatch(batchType, id, self.config)
+            batchID = self.ippToPspsDb.createNewBatch(batchType, id)
             
             if batchID < 0: 
@@ -165,38 +198,54 @@
     
             self.ippToPspsDb.unlockTables()
-    
-            if batchType == "P2":
-                batch = DetectionBatch(self.logger,
-                        self.config,
-                        self.gpc1Db,
-                        self.ippToPspsDb,
-                        self.scratchDb,
-                        id,
-                        batchID,
-                        useFullTables)
-            elif batchType == "ST":
-                batch = StackBatch(self.logger,
-                        self.config,
-                        self.gpc1Db,
-                        self.ippToPspsDb,
-                        self.scratchDb,
-                        id,
-                        batchID,
-                        useFullTables)
-    
-            batch.run()
-    
-            # check that we should continue
-            self.checkClientStatus()
+            self.ippToPspsDb.deletePendingItem(batchType, id)
+
+            # catch any raised exceptions in batch constructors
+            try:
+                if batchType == "P2":
+                    batch = DetectionBatch(self.logger,
+                            self.config,
+                            self.gpc1Db,
+                            self.ippToPspsDb,
+                            self.scratchDb,
+                            id,
+                            batchID,
+                            useFullTables)
+                elif batchType == "ST":
+                    batch = StackBatch(self.logger,
+                            self.config,
+                            self.gpc1Db,
+                            self.ippToPspsDb,
+                            self.scratchDb,
+                            id,
+                            batchID,
+                            useFullTables)
+    
+                elif batchType == "OB":
+                    batch = ObjectBatch(self.logger,
+                            self.config,
+                            self.gpc1Db,
+                            self.ippToPspsDb,
+                            self.scratchDb,
+                            id,
+                            batchID,
+                            useFullTables)
+    
+                batch.run()
+   
+            # if batch fails, ignore and move on to the next one
+            except: 
+                self.logger.errorPair("Problem with this %s batch (%d)" % (batchType, id), "skipping")
+                pass
+
+            if not self.checkClientStatus(): return False
     
             self.ippToPspsDb.lockBatchTable()
     
             self.logger.infoSeparator()
-    
-            # if in test mode, then quit after one batch
-            if self.config.test: break
     
         self.ippToPspsDb.unlockTables()
         self.logger.infoPair("Unattempted batches", "%d" % unattemptedCount)
+
+        return True
     
     '''
@@ -204,6 +253,5 @@
     '''
     def printUsage(self):
-        super(Cleanup, self).printUsage()
-        print " [init]"
+        super(Cleanup, self).printUsage("<[init]>")
 
     
@@ -214,6 +262,7 @@
     loader = Loader(sys.argv)
     loader.run()
-    loader.exitProgram("finished")
+    loader.exitProgram("completed")
 except Exception, e:
     print str(e)
-    traceback.print_exc() 
+    traceback.print_exc()
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/metrics.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/metrics.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/metrics.py	(revision 34041)
@@ -9,5 +9,5 @@
 from ipptopsps import IppToPsps
 from czardb import CzarDb
-from gpc1db import Gpc1Db
+from plot import Plot
 
 '''
@@ -24,7 +24,6 @@
         if len(sys.argv) > 2: self.parsePollTimeArg(sys.argv[2])
     
-        # create database objects
         self.czarDb = CzarDb(self.logger, self.config)
-        self.gpc1Db = Gpc1Db(self.logger, self.config)
+        self.plot = Plot(self.logger, self.config, self.ippToPspsDb)
    
     '''
@@ -38,4 +37,5 @@
             now = datetime.datetime.now()
             self.logger.infoPair("Time now", now.strftime("%Y-%m-%d %H:%M:%S"))
+            self.logger.infoPair("Config", self.config.name)
             self.logger.infoPair("Loading epoch", self.config.epoch)
             self.logger.infoPair("DVO label", self.config.dvoLabel)
@@ -43,8 +43,9 @@
         
             self.logger.info("+----+------------------+---------------+-------------------+------------------+----------------+")
-            self.logger.info("|Type| batches per hour | last 24 hours | per day this week | total detections | last published |")
+            self.logger.info("|Type| batches per hour | last 24 hours | per day this week | detections/batch | last published |")
             self.logger.info("+----+------------------+---------------+-------------------+------------------+----------------+")
             rateP2 = self.printStats("P2")
             rateST = self.printStats("ST")
+            rateOB = self.printStats("OB")
             self.logger.info("+----+------------------+---------------+-------------------+------------------+----------------+")
         
@@ -54,9 +55,9 @@
             colCount = len(stages)
             self.writeTableSeparator(colCount)
-            sys.stdout.write("|Type|  DVO  ")
+            sys.stdout.write("|Type")
         
             for stage in stages: sys.stdout.write("|%19s" % stage)
             sys.stdout.write("|\n")
-            sys.stdout.write("|    |       ")
+            sys.stdout.write("|    ")
             for stage in stages: sys.stdout.write("| Pend  Succ  Fail  ")
             sys.stdout.write("|\n")
@@ -64,4 +65,5 @@
             pendP2Processed = self.printTableRow(stages, "P2")
             pendSTProcessed = self.printTableRow(stages, "ST")
+            pendOBProcessed = self.printTableRow(stages, "OB")
             self.writeTableSeparator(colCount)
 
@@ -71,6 +73,16 @@
             try: self.logger.infoPair("Estimated time for STs", "%.1f hours" % (pendSTProcessed / rateST)) 
             except: pass
+            try: self.logger.infoPair("Estimated time for OBs", "%.1f hours" % (pendOBProcessed / rateOB)) 
+            except: pass
        
             self.checkClientStatus()
+
+            # create a density plot of pending stuff for czartool
+            self.plot.createDensityPlot("P2", True)
+            self.plot.createDensityPlot("ST", True)
+            self.plot.createDensityPlot("OB", True)
+
+            # some clean-up before going to sleep
+            self.ippToPspsDb.purgeDeadClients()
             if not self.waitForPollTime(): break
 
@@ -88,21 +100,19 @@
     def printTableRow(self, stages, batchType):
     
-        # get a master list of IDs in DVO for this batch type
-        #allIDs = self.gpc1Db.getIDsInThisDVODbForThisStage(self.config.dvoLabel, batchType, self.config.minRa, self.config.maxRa, self.config.minDec, self.config.maxDec)
-        allIDs = self.gpc1Db.getIDsInThisDVODbForThisStage(self.config.dvoLabel, batchType)
-        prevList = allIDs
-        numEverything = len(allIDs)
-    
-        sys.stdout.write("| %2s |%6d " % (batchType, numEverything))
-    
-        tempFilename = batchType + '.dat'
-        DATFILE = open(tempFilename,'w')
-        print >> DATFILE, "DVO", numEverything, 0, 0
+        pending = self.ippToPspsDb.getPendingIds(batchType)
+
+        sys.stdout.write("| %2s " % (batchType))
+   
+        firstStage = True
         for stage in stages:
     
            # get lists. Use unions with prev list to make sure the right stuff is included
-           success = list(set(self.ippToPspsDb.getStageIDs(batchType, self.config.epoch, self.config.dvoLabel, stage, 1)) & set(prevList)) 
-           fail = list(set(self.ippToPspsDb.getStageIDs(batchType, self.config.epoch, self.config.dvoLabel, stage, -1)) & set(prevList) - set(success))
-           pending = list(set(prevList) - set(success) - set(fail))
+           if firstStage:
+               success = self.ippToPspsDb.getStageIDs(batchType, stage, 1)
+               fail = list(set(self.ippToPspsDb.getStageIDs(batchType, stage, -1)) - set(success))
+           else: 
+               success = list(set(self.ippToPspsDb.getStageIDs(batchType, stage, 1)) & set(prevList)) 
+               fail = list(set(self.ippToPspsDb.getStageIDs(batchType, stage, -1)) & set(prevList) - set(success))
+               pending = list(set(prevList) - set(success) - set(fail))
     
            # count stuff
@@ -114,16 +124,19 @@
            #    for n in fail: print n
     
-           str = "\033[1;34m%5s\033[1;m \033[1;32m%5s\033[1;m \033[1;31m%5s\033[1;m  " % (self.getIntAsString(numPending), self.getIntAsString(numSuccess), self.getIntAsString(numFail))
+           str = "\033[1;34m%5s\033[1;m \033[1;32m%5s\033[1;m \033[1;31m%5s\033[1;m  " % (
+                   self.getIntAsString(numPending), 
+                   self.getIntAsString(numSuccess), 
+                   self.getIntAsString(numFail))
            sys.stdout.write("|%-19s" % str)
     
            prevList = success
-           print >> DATFILE, stage, numSuccess, numFail, numPending
-    
-           self.czarDb.insertStats(stage, self.config.dvoLabel, batchType, numPending, numSuccess, numFail)
+    
+           self.czarDb.insertStats(stage, self.config.name, batchType, numPending, numSuccess, numFail)
     
            if stage == 'processed': numPendingProcessed = numPending
     
+           firstStage = False
+
         sys.stdout.write("|\n")
-        DATFILE.close()
     
         return numPendingProcessed
@@ -134,8 +147,15 @@
     def writeTableSeparator(self, colCount):
     
-        sys.stdout.write("+----+-------")
+        sys.stdout.write("+----")
         for i in range(0, colCount): sys.stdout.write("+-------------------")
         sys.stdout.write("+\n")
-    
+   
+    '''
+    Safe divide function
+    '''
+    def divide(self, num, denom):
+        if denom == 0: return 0
+        else: return num / denom
+
     '''
     Prints various timing stats for this batch type
@@ -143,13 +163,17 @@
     def printStats(self, batchType):
     
-        rate = self.ippToPspsDb.countBatchesInLastPeriod(batchType, self.config.epoch, self.config.dvoLabel, "1 HOUR") / 1.0 
-    
+        rate = self.ippToPspsDb.countBatches(batchType, "1 HOUR") / 1.0 
+   
+
+        batchesInLast24Hours = self.ippToPspsDb.countBatches(batchType, "24 HOUR")
+        detectionsInLast24Hours = self.ippToPspsDb.getTotalDetectionsPublished(batchType, "24 HOUR")
+
         self.logger.info("| %2s | %16.1f | %13d | %17.1f | %16d | %14s |" % 
                 (batchType,
                  rate,
-                 self.ippToPspsDb.countBatchesInLastPeriod(batchType, self.config.epoch, self.config.dvoLabel, "24 HOUR"),
-                 self.ippToPspsDb.countBatchesInLastPeriod(batchType, self.config.epoch, self.config.dvoLabel, "1 WEEK") / 7.0, 
-                 self.ippToPspsDb.getTotalDetectionsPublished(batchType, self.config.epoch, self.config.dvoLabel),
-                 self.ippToPspsDb.getTimeOfLastBatchPublished(batchType, self.config.epoch, self.config.dvoLabel)))
+                 batchesInLast24Hours,
+                 self.ippToPspsDb.countBatches(batchType, "1 WEEK") / 7.0, 
+                 self.divide(detectionsInLast24Hours, batchesInLast24Hours),
+                 self.ippToPspsDb.getTimeOfLastBatchPublished(batchType)))
     
         return rate
@@ -160,6 +184,5 @@
     '''
     def printUsage(self):
-        super(Metrics, self).printUsage()
-        print " [hours]"
+        super(Metrics, self).printUsage("[<hours>]")
 
 
@@ -168,8 +191,10 @@
 Start of program.
 '''
-metrics = Metrics(sys.argv)
-metrics.run()
-metrics.exitProgram("finished")
-
-
-
+try:
+    metrics = Metrics(sys.argv)
+    metrics.run()
+    metrics.exitProgram("completed")
+except: pass
+
+
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/mysql.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/mysql.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/mysql.py	(revision 34041)
@@ -19,5 +19,4 @@
     '''
     Constructor
-
     '''
     def __init__(self, logger, config, dbType, dbName=None):
@@ -35,17 +34,18 @@
         self.dbPass = config.getDbPassword(dbType)
 
+        # a user friendly connection sring
+        connectionStr = self.dbName + "@" + self.dbHost
+
         # set up JDBC connection
-        self.url = "jdbc:mysql://"+self.dbHost+"/"+self.dbName+"?user="+self.dbUser+"&password="+self.dbPass
+        self.url = "jdbc:mysql://"+self.dbHost+"/"+self.dbName+"?autoReconnect=true&user="+self.dbUser+"&password="+self.dbPass
         try:
             self.con = DriverManager.getConnection(self.url)
             self.connectionID = self.getLastConnectionID()
-            self.logger.debug("MySQL connection to %s with ID %d" % (dbType, self.connectionID))
+            self.logger.infoPair("Connected to MySQL Db", connectionStr)
         except:
-            self.logger.error("Unable to connect to " + self.url)
-            self.everythingOK = False # TODO need this?
+            self.logger.errorPair("Unable to connect to", connectionStr)
             self.connected = False
-            return
-
-        self.everythingOK = True
+            raise
+
         self.connected = True
 
@@ -89,4 +89,25 @@
         sql = "KILL %d" % connectionID
         self.execute(sql)
+
+    '''
+    Checks whether this table exists
+    '''
+    def tableExists(self, tableName):
+
+        sql = "SELECT COUNT(*) \
+               FROM information_schema.tables \
+               WHERE table_schema = '" + self.dbName + "' \
+               AND table_name = '" + tableName + "'"
+
+        try:
+            rs = self.executeQuery(sql)
+            rs.first()
+            if rs.getInt(1) > 0: return True
+            else: return False
+        except:
+            self.logger.errorPair("Could not check if table exists", sql)
+            pass
+
+        return False
 
     '''
@@ -151,4 +172,19 @@
 
     '''
+    Drops a column from a table
+    '''
+    def dropColumn(self, table, column):
+
+        sql = "ALTER TABLE " + table + " DROP " + column
+        try: self.execute(sql)
+        except: return
+
+    '''
+    Drops a list of tables
+    '''
+    def dropTables(self, tables):
+        for table in tables: self.dropTable(table)
+
+    '''
     Drops a table
     '''
@@ -185,4 +221,24 @@
             #self.logger.warn("Index already in place on '" + column + "' for table '" + table + "'")
     '''
+    Changes the database engine for this table to InnoDb
+    '''
+    def changeEngineToInnoDB(self, table):
+        self.changeEngine(table, "InnoDB")
+
+    '''
+    Changes the database engine for this table
+    '''
+    def changeEngine(self, table, engine):
+
+        sql = "ALTER TABLE " + table + " ENGINE=" + engine
+        try: 
+            self.execute(sql)
+        except: 
+            self.logger.errorPair("Could not change table engine", sql)
+            return False
+
+        return True
+
+    '''
     Adds an index to the supplied table and column
     '''
@@ -196,8 +252,25 @@
         except: pass
             #self.logger.warn("Index already in place on '" + column + "' for table '" + table + "'")
+
+    '''
+    Checks that we have a connection
+    '''
+    def isConnected(self):
+
+        try: 
+            self.con
+            self.connected = True
+        except:
+            self.logger.errorPair("Not connected to", self.url)
+            self.connected = False
+
+        return self.connected
+
     '''
     TODO
     '''
     def execute(self, sql):
+
+        if not self.isConnected(): raise
 
         stmt = self.con.createStatement()
@@ -210,4 +283,6 @@
     def executeQuery(self, sql):
 
+        if not self.isConnected(): raise
+  
         stmt = self.con.createStatement()
         rs = stmt.executeQuery(sql)
@@ -336,3 +411,12 @@
             return -1
 
-
+    '''
+    Adds a column to this table which contains a row count
+    '''
+    def addRowCountColumn(self, table, colName):
+
+        self.execute("ALTER TABLE " + table + " ADD COLUMN " + colName + " INTEGER FIRST")
+        self.execute("SET @i = 0")
+        self.execute("UPDATE " + table + " SET " + colName + "=(@i:=@i+1)")
+        self.execute("ALTER TABLE " + table + " ADD PRIMARY KEY (" + colName + ")")
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/objectbatch.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/objectbatch.py	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/objectbatch.py	(revision 34041)
@@ -0,0 +1,264 @@
+#!/usr/bin/env jython
+
+import os.path
+import sys
+
+import stilts
+from java.lang import *
+from java.sql import *
+
+from xml.etree.ElementTree import ElementTree, Element, tostring
+
+from batch import Batch
+from gpc1db import Gpc1Db
+from ipptopspsdb import IppToPspsDb
+from scratchdb import ScratchDb
+from dvoobjects import DvoObjects
+
+import logging.config
+
+'''
+ObjectBatch class
+
+This class, a sub-class of Batch, processes individual DVO region file pairs (cpt and cps files). The cpt file contains a list of all objects in that region, the cps file contains the magnitudes and so has a row per filter per object (so, generally, has rows = 5 x number of objects). The Photcode.dat table us used to figure out the number and order of filters as they appear in the cps file.
+
+'''
+class ObjectBatch(Batch):
+
+    '''
+    Constructor
+    '''
+    def __init__(self, 
+                 logger, 
+                 config,
+                 gpc1Db,
+                 ippToPspsDb,
+                 scratchDb,
+                 dvoID,
+                 batchID,
+                 useFullTables):
+
+       super(ObjectBatch, self).__init__(
+               logger,
+               config,
+               gpc1Db,
+               ippToPspsDb,
+               scratchDb,
+               dvoID,
+               batchID,
+               "OB", 
+               None,
+               1)
+
+       try:
+           self.dvoObjects = DvoObjects(self.logger, self.config, self.scratchDb.dbName)
+       except:
+           self.logger.errorPair("Unable to create instance of", "DvoObjects")
+           raise
+
+       # create an output filename, which is {dvoINDEX}.FITS
+       self.outputFitsFile = "%08d.FITS" % self.id
+       self.outputFitsPath = "%s/%s" % (self.localOutPath, self.outputFitsFile)
+
+       # dump stuff to log
+       self.logger.infoPair("DVO INDEX", "%d" % self.id)
+
+    '''
+    Overriden from batch base-class. We import from DVO directly for objects
+    '''
+    def importIppTables(self, columns="*", filter=""):
+
+        self.region = self.scratchDb.getRegionNameFromThisDvoIndex(self.id)
+        self.ippToPspsDb.insertObjectMeta(self.batchID, self.region)
+        self.dvoObjects.ingestRegion(self.region)
+
+        return True
+
+    '''
+    Applies indexes to the PSPS tables
+    '''
+    def alterPspsTables(self):
+
+        # dec is reserved in MySQL, so STILTS replaces if with dec_, which PSPS doesn't like. so, force it back again using ``
+        self.scratchDb.execute("ALTER TABLE Object CHANGE dec_ `dec` double")
+
+        return True
+
+    '''
+    Applies indexes to the IPP tables
+    '''
+    def indexIppTables(self):
+
+        self.logger.infoPair("Creating indexes on", "IPP tables")
+
+        return True
+
+    '''
+    Inserts stuff for all mags
+    '''
+    def insertMags(self, cpsTable):
+
+        # list of all filters PSPS is interested in
+        interestedFilters = ['g', 'r', 'i', 'z', 'y']
+        
+        filters = self.scratchDb.getOrderedListOfFiltersFromPhotcodesTable(interestedFilters)
+    
+        # get a count of the available filters
+        filterCount = len(filters)
+
+        self.logger.infoPair("Available filters in Photcodes", filters)
+
+        # the 'code' now defines the order in the cps file that the mags are listed for a given filter
+        self.logger.infoPair("Adding magnitudes from", "cps table")
+        for filter in filters:
+
+            sql = "UPDATE Object \
+                   JOIN " + cpsTable + " AS cps ON (cps.row = (Object.row*" + str(filterCount) + ")-(" + str(filterCount) + " - " + str(filter[0]) + ")) \
+                   SET \
+                   n" + filter[1] + " = NCODE \
+                   ," + filter[1] + "MeanMag = MAG \
+                   ," + filter[1] + "MeanFlux = 3631 * POW(10.0, (-0.4*MAG)) \
+                   ," + filter[1] + "MeanMagErr = MAG_ERR \
+                   ," + filter[1] + "Min = MAG_20/1000 \
+                   ," + filter[1] + "Max = MAG_80/1000 \
+                   "
+            
+            self.scratchDb.execute(sql)
+
+        # now set to null all MeanMagErr values > 0.5 (cut set by Gene, 2012-04-12)
+        cut = 0.5
+        self.logger.infoPair("Setting to NULL all MeanMagErr value >", "%f" % cut)
+        for filter in filters:
+
+            sql = "UPDATE Object \
+                   SET " + filter[1] + "MeanMagErr = null \
+                   WHERE " + filter[1] + "MeanMagErr > " + str(cut)
+            self.scratchDb.execute(sql)
+
+    '''
+    Inserts colors
+    '''
+    def updateColors(self):
+
+        self.logger.infoPair("Calculating", "colors")
+        sql = "UPDATE Object \
+               SET \
+               grMeanColor = (gMeanMag - rMeanMag) \
+               ,riMeanColor = (rMeanMag - iMeanMag) \
+               ,izMeanColor = (iMeanMag - zMeanMag) \
+               ,zyMeanColor = (zMeanMag - yMeanMag) \
+               ,grMeanColorErr = SQRT(POW(gMeanMagErr,2) + POW(rMeanMagErr,2)) \
+               ,riMeanColorErr = SQRT(POW(rMeanMagErr,2) + POW(iMeanMagErr,2)) \
+               ,izMeanColorErr = SQRT(POW(iMeanMagErr,2) + POW(zMeanMagErr,2)) \
+               ,zyMeanColorErr = SQRT(POW(zMeanMagErr,2) + POW(yMeanMagErr,2)) \
+                   "
+        try:
+            self.scratchDb.execute(sql)
+        except:
+            self.logger.errorPair("Couldn't calculate colors", sql)
+
+    '''
+    Populates the Object table
+    '''
+    def populateObjectTable(self):
+
+        cptTableName = self.scratchDb.getDbFriendlyTableName(self.region + ".cpt")
+        cpsTableName = self.scratchDb.getDbFriendlyTableName(self.region + ".cps")
+
+        self.logger.infoPair("Populating", "ObjectCalColor")
+        self.logger.infoPair("Inserting objects from", "cpt file")
+
+        # note `` around dec here, as this is a reserved word in MySQL
+        sql = "INSERT IGNORE INTO Object (\
+               objID \
+               ,ippObjID \
+               ,objInfoFlag \
+               ,varFlag \
+               ,surveyID \
+               ,ra \
+               ,`dec` \
+               ,raErr \
+               ,decErr \
+               ,nDetections \
+               ,dataRelease \
+               ) \
+               SELECT \
+               EXT_ID \
+               ,CAT_ID*1000000000 + OBJ_ID \
+               ,FLAGS \
+               ,0 \
+               ," + str(self.surveyID) + " \
+               ,RA \
+               ,DEC_ \
+               ,RA_ERR \
+               ,DEC_ERR \
+               ,NMEASURE \
+               , " + str(self.config.dataRelease) + "\
+               FROM " + cptTableName
+
+        try:
+            self.scratchDb.execute(sql)
+        except:
+            self.logger.errorPair("Couldn't populate Object table", sql)
+            return False
+
+        # add row count columns so we can perform joins to get colors
+        self.logger.infoPair("Adding 'row' columns to", "Object and cps tables")
+        self.scratchDb.addRowCountColumn("Object", "row")
+        self.scratchDb.addRowCountColumn(cpsTableName, "row")
+
+        self.insertMags(cpsTableName)
+
+        self.updateColors()
+
+        self.logger.infoPair("Dropping row column from", "Object table")
+        self.scratchDb.dropColumn("Object", "row")
+        self.logger.infoPair("Purging from scratch Db", self.region + " region")
+        self.dvoObjects.purgeRegion(self.region)
+
+        self.setMinMaxObjID(["Object"])
+
+        return True
+
+    '''
+    Populates the ObjectCalColor table
+    '''
+    def populateObjectCalColorTable(self):
+
+        self.logger.infoPair("Populating", "ObjectCalColor")
+
+        sql = "INSERT INTO ObjectCalColor ( \
+               objID \
+               ,ippObjID \
+               ,dataRelease \
+               ) \
+               SELECT \
+               objID \
+               ,ippObjID \
+               ,dataRelease \
+               FROM Object"
+        try:
+            self.scratchDb.execute(sql)
+        except:
+            self.logger.errorPair("Couldn't populate ObjectCalColor table", sql)
+            return False
+
+        return True
+
+    '''
+    Does the processing, i.e. pulling stuff from IPP tables into PSPS tables
+    '''
+    def populatePspsTables(self):
+
+        if not self.populateObjectTable(): return False
+        #if not self.populateObjectCalColorTable(): return False
+
+        # now remove the objID duplicates. We could not do this before as cpt/cps tables relate by row number
+        self.logger.infoPair("Forcing uniqueness on", "objID in Object table")
+        rowCountBefore = self.scratchDb.getRowCount("Object")
+        self.scratchDb.execute("ALTER IGNORE TABLE Object ADD UNIQUE INDEX(objID)")
+        rowCountAfter = self.scratchDb.getRowCount("Object")
+        self.logger.infoPair("Number of duplicated objIDs removed", "%d out of %d" % ((rowCountBefore - rowCountAfter), rowCountBefore))
+
+        return True
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/odm.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/odm.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/odm.py	(revision 34041)
@@ -19,8 +19,7 @@
     Constructor
     '''
-    def __init__(self, logger, doc):
+    def __init__(self, logger):
 
         self.logger = logger
-        self.doc = doc
 
     '''
@@ -79,5 +78,5 @@
                 DETAILS = doc.find("{%s}OdmBatchState/{%s}Details" % (NAMESPACE, NAMESPACE)).text
                 results['DETAILS'] = DETAILS
-            if re.search("processing", STATE): 
+            elif re.search("processing", STATE): 
                 loadedToODM = 1
             if re.search("MergeWorthy", MESSAGE): 
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/plot.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/plot.py	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/plot.py	(revision 34041)
@@ -0,0 +1,66 @@
+#!/usr/bin/env jython
+
+import tempfile
+import os
+import time
+
+from ipptopsps import IppToPsps
+
+'''
+Plot class
+'''
+class Plot(object):
+
+    '''
+    Constructor
+    '''
+    def __init__(self, logger, config, ippToPspsDb):
+
+        self.logger = logger
+        self.config = config 
+        self.ippToPspsDb = ippToPspsDb
+
+    '''
+    Creates a density plot of pending exposures for this config
+    '''
+    def createDensityPlot(self, batchType, forCzartool=False):
+
+        tempFilename = "./" + self.config.name + "_" + batchType + "_plotData.dat"
+        DATFILE = open(tempFilename,'w')
+        max = self.ippToPspsDb.createPendingDensityPlotData(batchType, DATFILE)
+        DATFILE.close()
+
+        if max == 0: max = 1
+
+        timestamp = time.strftime('%Y_%m%d_%H%M%S')
+
+        if forCzartool:
+            OUTPUTFILE = self.config.czarPlotsPath + "/ippToPsps_density_" + self.config.name + "_" + batchType + ".png"
+        else:
+            OUTPUTFILE = self.config.name + "_" + batchType + "_" + timestamp + ".png"
+
+        f = os.popen('gnuplot', 'w')
+            
+        if 0:
+            TERM = "X11"
+        else:
+            TERM = "png font \"/usr/share/fonts/corefonts/arial.ttf\" 8"
+                     
+        print >> f, "set term " + TERM + "; \
+            set output \"" + OUTPUTFILE + "\"; \
+            set title \"Unprocessed " + batchType + " items for '" + self.config.name + "' as of " + timestamp + "\"; \
+            set grid; \
+            set xrange [" + str(self.config.minRa) + ":" + str(self.config.maxRa) + "] reverse; \
+            set yrange [" + str(self.config.minDec) + ":" + str(self.config.maxDec) + "]; \
+            unset key; \
+            set palette rgb 22,13,10; \
+            set ylabel \"Dec\"; \
+            set ylabel \"RA\"; \
+            set cbrange [0:" + str(max) + "]; \
+            set datafile missing \"NaN\"; \
+            plot '" + tempFilename + "' using 1:2:3 with image"
+
+        f.flush()
+        f.close()
+        #os.remove(tempFilename)
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/plotter.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/plotter.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/plotter.py	(revision 34041)
@@ -1,9 +1,8 @@
 #!/usr/bin/env jython
 
-import tempfile
-import os
 import sys
 
 from ipptopsps import IppToPsps
+from plot import Plot
 
 
@@ -19,39 +18,14 @@
         super(Plotter, self).__init__(argv)
 
-    '''
-    Runs...
-    '''
-    def run(self):
+        self.plot = Plot(self.logger, self.config, self.ippToPspsDb)
+ 
+        if len(argv) < 3:
+            self.printUsage()
+            self.exitProgram("No plot type specified")
 
-        tempFilename = "./plotData.dat"
-        DATFILE = open(tempFilename,'w')
-        self.ippToPspsDb.createPendingDensityPlotData(self.config.name, DATFILE)
-        DATFILE.close()
-
-        OUTPUTFILE = self.config.name + ".png"
-        f = os.popen('gnuplot', 'w')
-            
-        max = self.ippToPspsDb.getMaxPendingInBox(self.config.name)
-
-        if 0:
-            TERM = "X11"
-        else:
-            TERM = "png font \"/usr/share/fonts/corefonts/arial.ttf\" 8"
-                     
-        print >> f, "set term " + TERM + "; \
-            set output \"" + OUTPUTFILE + "\"; \
-            set title \"Density plot of unprocessed stuff\"; \
-            set grid; \
-            set xrange [" + str(self.config.minRa) + ":" + str(self.config.maxRa) + "] reverse; \
-            set yrange [" + str(self.config.minDec) + ":" + str(self.config.maxDec) + "]; \
-            unset key; \
-            set palette rgb 22,13,10; \
-            set ylabel \"Dec\"; \
-            set ylabel \"RA\"; \
-            set cbrange [0:" + str(max) + "]; \
-            set datafile missing \"NaN\"; \
-            plot '" + tempFilename + "' using 1:2:3 with image"
-
-        f.flush()
+        if argv[2] == "density": 
+            self.plot.createDensityPlot("P2")
+            self.plot.createDensityPlot("ST")
+            self.plot.createDensityPlot("OB")
 
     '''
@@ -59,6 +33,5 @@
     '''
     def printUsage(self):
-        super(Plotter, self).printUsage()
-        print " [<density>]"
+        super(Plotter, self).printUsage("[density]")
 
 
@@ -66,5 +39,6 @@
 Start of program
 '''
-plotter = Plotter(sys.argv)
-plotter.run()
-plotter.exitProgram("finished")
+try:
+    plotter = Plotter(sys.argv)
+    plotter.exitProgram("completed")
+except: pass
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/pollOdm.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/pollOdm.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/pollOdm.py	(revision 34041)
@@ -33,4 +33,7 @@
             self.exitProgram("incorrect args")
 
+        # create Odm object
+        self.odm = Odm(self.logger)
+
         # get poll time arg
         if len(sys.argv) > 4: self.parsePollTimeArg(sys.argv[4]) 
@@ -39,17 +42,9 @@
         else: self.stages = [self.STAGE]
 
-        if self.BATCHTYPE == "all": self.batchTypes = ['P2', 'ST']
+        if self.BATCHTYPE == "all": self.batchTypes = ['IN', 'P2', 'ST', 'OB']
         else: self.batchTypes = [self.BATCHTYPE]
 
         for stage in self.stages: self.logger.infoPair("Checking stage", stage)
         for batchType in self.batchTypes: self.logger.infoPair("Checking batch type", batchType)
-
-    '''
-    Overrides base-class version
-    '''
-    def refreshConfig(self):
-        ret = super(PollOdm, self).refreshConfig()
-        self.odm = Odm(self.logger, self.config)
-        return ret
 
     '''
@@ -59,4 +54,7 @@
 
         while True:
+
+            self.logger.infoSeparator()
+            self.logger.infoPair("Config", self.config.name)
 
             for stage in self.stages: 
@@ -71,11 +69,13 @@
     '''
     def poll(self, batchType, stage):
-      
+     
+        
+
         if stage == "unloaded":
-            ids = self.ippToPspsDb.getUnloadedBatchIDs(self.config.epoch, self.config.dvoLabel, batchType)
+            ids = self.ippToPspsDb.getUnloadedBatchIDs(batchType)
         elif stage == "unmergeworthy":
-            ids = self.ippToPspsDb.getUnmergeWorthyBatchIDs(self.config.epoch, self.config.dvoLabel, batchType)
+            ids = self.ippToPspsDb.getUnmergeWorthyBatchIDs(batchType)
         elif stage == "unmerged":
-            ids = self.ippToPspsDb.getUnmergedBatchIDs(self.config.epoch, self.config.dvoLabel, batchType)
+            ids = self.ippToPspsDb.getUnmergedBatchIDs(batchType)
     
         self.logger.infoTitle("Checking %d %s %s batches" % (len(ids), stage, batchType))
@@ -117,5 +117,5 @@
     
             else:
-                    self.logger.info("| %9s | failed to poll ODM                                                                                                   |" % Batch.getNameFromID(id))
+                    self.logger.info("| %9s | failed to poll ODM                                                                                  |" % Batch.getNameFromID(id))
     
         self.logger.info("+-----------+----------------+----------------+----------------+----------------+----------------+----------------+")
@@ -126,7 +126,5 @@
     '''
     def printUsage(self):
-        super(PollOdm, self).printUsage()
-        print " <P2|ST|all> <unloaded|unmergeworthy|unmerged|all> [hours]"
-    
+        super(PollOdm, self).printUsage("<IN|P2|ST|OB|all> <unloaded|unmergeworthy|unmerged|all> [hours]")
     
     
@@ -134,5 +132,7 @@
 Program starts here
 '''
-pollodm = PollOdm(sys.argv)
-pollodm.run()
-pollodm.exitProgram("finished")
+try:
+    pollodm = PollOdm(sys.argv)
+    pollodm.run()
+    pollodm.exitProgram("completed")
+except: pass
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/queue.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/queue.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/queue.py	(revision 34041)
@@ -13,4 +13,5 @@
 from gpc1db import Gpc1Db
 from datastore import Datastore
+from dvoobjects import DvoObjects
 from batch import Batch
 
@@ -28,87 +29,112 @@
         # create various objects
         self.gpc1Db = Gpc1Db(self.logger, self.config)
+        self.datastore = Datastore(self.logger, self.config, self.ippToPspsDb)
+        try:
+            self.dvoObjects = DvoObjects(self.logger, self.config)
+        except:
+            self.exitProgram("Unable to create instance of DvoObject")
+            raise
 
-        # set a poll time in hours
-        self.parsePollTimeArg("12")
+        self.config.printAll()
+
+        if len(argv) > 2: self.parsePollTimeArg(sys.argv[2])
     
 
     '''
     Main processing loop.
-    Tiles area defined in config and looks for available stage_ids for each tile and writes them to ippToPsps database ready for processing
+    Tiled area is defined in config and looks for available stage_ids for each tile and writes them to ippToPsps database ready for processing
     by one or more loading clients that may be running on any host
     '''
     def run(self):
 
-        # this outer while loop simply waits a few minutes then starts queuing again as more stuff may appear in DVO over time
+        # this outer while loop simply waits a few minutes then starts queuing again (as more stuff may appear in DVO over time)
         while True:
+
+            self.ippToPspsDb.removeAllBoxes()
         
             # queue up batches that are processed but not loaded to datastore
-            self.logger.infoTitle("Previous failed datastore loads")
-            for batchType in self.config.batchTypes: self.publishAnyUnpublishedBatches(batchType)
+            for batchType in self.config.batchTypes: 
 
-            # get totals for whole area to check if there is anything to do
-            processedIDs = self.ippToPspsDb.getProcessedIDs(batchType, self.config.epoch, self.config.dvoLabel)
-            consistantlyFailedIDs = self.ippToPspsDb.getConsistentlyFailedIDs(batchType, self.config.epoch, self.config.dvoLabel)
-            allIDs = self.gpc1Db.getIDsInThisDVODbForThisStage(self.config.dvoLabel, batchType, self.config.minRa, self.config.maxRa, self.config.minDec, self.config.maxDec)
-            #allIDs = self.gpc1Db.getIDsInThisDVODbForThisStage(self.config.dvoLabel, batchType)
-            ids = list(set(allIDs) - set(processedIDs) - set(consistantlyFailedIDs))
+                self.logger.infoTitle("Previous failed datastore loads")
+                self.publishAnyUnpublishedBatches(batchType)
 
-            # loop through full range of RA/Dec queueing stuff in boxes of size self.config.boxSize
-            self.logger.info("+---------------------------------------------------------------------+")
-            self.logger.info("|                All unprocessed items in area: %12d          |" % len(ids))
+                # get totals for whole area to check if there is anything to do
+                processedIDs = self.ippToPspsDb.getProcessedIDs(batchType)
+                consistantlyFailedIDs = self.ippToPspsDb.getConsistentlyFailedIDs(batchType)
 
-            if len(ids) > 0:
+                # for object batches, get full list of stuff from Dvo
+                if batchType == "OB":
+                    self.dvoObjects.setSkyArea(
+                            self.config.minRa,
+                            self.config.maxRa,
+                            self.config.minDec,
+                            self.config.maxDec)
+                    rows = self.dvoObjects.allPopulatedRegionInfo
+                    self.dvoObjects.printSummary()
 
-                self.logger.info("+-------------+-------------+-------------+-------------+-------------+")
-                self.logger.info("|     RA      |     Dec     |   box size  |    in DVO   | unprocessed |")
-                self.logger.info("+-------------+-------------+-------------+-------------+-------------+")
+                # for other batches, info comes from gpc1 database
+                else:
+                    rows = self.gpc1Db.getItemsInThisDVODbForThisStage(
+                            self.config.dvoLabel, 
+                            batchType, 
+                            self.config.minRa, 
+                            self.config.maxRa, 
+                            self.config.minDec, 
+                            self.config.maxDec)
+
+                # first report total stuff
+                allIDs = []
+                for row in rows:
+                    try: allIDs.append(row[0])
+                    except: pass
+
+                ids = list(set(allIDs) - set(processedIDs) - set(consistantlyFailedIDs))
+                self.logger.infoPair("All unprocessed items", "%d" % len(ids))
+
+                # now trim full list down to only pending stuff
+                pending = [[], [], []]
+                for row in rows:
+                    try:
+                        findId = row[0]
+                    except: continue
+                    if findId in ids: pending.append([row[0], row[1], row[2]])
+
+                # store all items in temp table
+                self.logger.infoPair("Inserting all pending items into", "ippToPsps database")
+                self.ippToPspsDb.storeAllItems(pending)
+
+                # loop through full range of RA/Dec queueing stuff in boxes of size self.config.boxSize
+                if len(ids) > 0:
+
+                    self.logger.info("+-------------+-------------+-------------+-------------+")
+                    self.logger.info("|     RA      |     Dec     |   box size  | unprocessed |")
+                    self.logger.info("+-------------+-------------+-------------+-------------+")
     
-                # starting positions
-                ra = self.config.minRa + self.config.halfBox
-                dec = self.config.minDec + self.config.halfBox
+                    # starting positions
+                    ra = self.config.minRa + self.config.halfBox
+                    dec = self.config.minDec + self.config.halfBox
     
-                while ra <= self.config.maxRa:
-                   while dec <= self.config.maxDec:
+                    while ra <= self.config.maxRa:
+                       while dec <= self.config.maxDec:
             
-                       self.checkClientStatus()
-                       box_id = self.ippToPspsDb.insertBox(self.config.name, ra, dec, self.config.boxSize)
+                           box_id = self.ippToPspsDb.insertBox(ra, dec)
             
-                       # for each batch type look for items to queue in this box
-                       for batchType in self.config.batchTypes: 
-            
-                           allIDs = self.gpc1Db.getIDsInThisDVODbForThisStageInThisBox(
-                                   self.config.dvoLabel, 
-                                   batchType, 
-                                   ra, 
-                                   dec, 
-                                   self.config.boxSize)
+                           ids = self.ippToPspsDb.getItemsInThisThisBox(ra, dec)
     
-                           if len(allIDs) < 1:
-                               self.logger.info("|    %5.1f    |    %5.1f    |  %9d  |  %9d  |  %9d  |" % (
-                                           ra, 
-                                           dec, 
-                                           self.config.boxSize, 
-                                           len(allIDs), 
-                                           0))
-                               continue    
-    
-                           ids = list(set(allIDs) - set(processedIDs) - set(consistantlyFailedIDs))
-                           self.logger.info("|    %5.1f    |    %5.1f    |  %9d  |  %9d  |  %9d  |" % (
+                           self.logger.info("|    %5.1f    |    %5.1f    |  %9d  |  %9d  |" % (
                                        ra, 
                                        dec, 
                                        self.config.boxSize, 
-                                       len(allIDs), 
                                        len(ids)))
-                           if len(ids) < 1: continue
+                
+                           if len(ids) > 0: self.ippToPspsDb.insertPending(box_id, batchType, ids)
+
+                           dec = dec + self.config.boxSize
+                       dec = self.config.minDec + self.config.halfBox
+                       ra = ra + self.config.boxSize
             
-                           #self.logger.infoPair("write IDs to database", "NOW")
-                           self.ippToPspsDb.insertPending(box_id, batchType, ids)
+                self.logger.info("+-------------+-------------+-------------+-------------+")
 
-                       dec = dec + self.config.boxSize
-                   dec = self.config.minDec + self.config.halfBox
-                   ra = ra + self.config.boxSize
-            
-            self.logger.info("+-------------+-------------+-------------+-------------+-------------+")
-
+            self.checkClientStatus()
             if not self.waitForPollTime(): break
 
@@ -118,5 +144,5 @@
     def publishAnyUnpublishedBatches(self, batchType):
     
-        batchIDs = self.ippToPspsDb.getProcessedButFailedDatastoreBatchIDs(self.config.epoch, self.config.dvoLabel, batchType)
+        batchIDs = self.ippToPspsDb.getProcessedButFailedDatastoreBatchIDs(batchType)
         self.logger.infoPair("%s batches" % batchType, "%d" % len(batchIDs))
     
@@ -129,9 +155,20 @@
     
             Batch.publishToDatastore(self.datastore, batchID, batchName, subDir, tarballFile)
-    
+   
+
+    '''
+    Overrides base-class version
+    '''
+    def printUsage(self):
+        super(Queue, self).printUsage("[<repeat time in hours>]")
+
+
 '''
 Start of program.
 '''
-queue = Queue(sys.argv)
-queue.run()
-queue.exitProgram("finished")                             
+try:
+    queue = Queue(sys.argv)
+    queue.run()
+    queue.exitProgram("completed")
+except: pass
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/regionTest.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/regionTest.py	(revision 33597)
+++ 	(revision )
@@ -1,96 +1,0 @@
-from pslogger import PSLogger
-from ipptopspsdb import IppToPspsDb
-from gpc1db import Gpc1Db
-from dvo import Dvo
-
-import sys
-from xml.etree.ElementTree import ElementTree, Element, tostring
-import logging
-
-'''
-Start of program.
-'''
-
-if len(sys.argv) > 1: CONFIG  = sys.argv[1]
-else:
-    print "** Usage: " + sys.argv[0] + " <configPath>"
-    sys.exit(1)
-
-# open config file
-configDoc = ElementTree(file=CONFIG)
-
-logging.setLoggerClass(PSLogger)
-logger = logging.getLogger("regionTest")
-logger.setup(configDoc, "regionTest")
-
-
-gpc1Db = Gpc1Db(logger, configDoc)
-dvo = Dvo(logger, configDoc)
-#dvo.resetAllTables()
-
-DVOLABEL = configDoc.find("dvo/gpc1Label").text
-
-# get equatorial coord constraints, if any
-try:
-    MINRA = float(configDoc.find("dvo/minRA").text)
-    MAXRA = float(configDoc.find("dvo/maxRA").text)
-    MINDEC = float(configDoc.find("dvo/minDec").text)
-    MAXDEC = float(configDoc.find("dvo/maxDec").text)
-except:
-    MINRA = 0.0
-    MAXRA = 360.0
-    MINDEC = -30.0
-    MAXDEC = 90.0
-
-BORDER = 1.60
-#BOXSIZE = 4
-BOXSIZE = 1.0
-HALFBOX = BOXSIZE/2.0
-
-
-
-ra = MINRA + HALFBOX
-dec = MINDEC + HALFBOX
-
-while ra <= MAXRA:
-   while dec <= MAXDEC:
-    
-       logger.infoSeparator()
-       logger.infoPair("BOXSIZE", "%d" % BOXSIZE)
-       allIDs = gpc1Db.getIDsInThisDVODbForThisStageInThisBox(DVOLABEL, "P2", ra, dec, BOXSIZE)
-       logger.infoPair("Found", "%d exposures" % len(allIDs))
-
-       dvo.loadRegionInThisBoxWithBorder(ra, dec, BOXSIZE, BORDER)
-
-       '''
-       regionsToIngest = []
-       regionsToPurge = []
-
-       dvo.getRegionsInThisBoxWithBorder(regionsToIngest, regionsToPurge, ra, dec, BOXSIZE, BORDER)
-
-       size = dvo.getDiskSizeOfDvoRegions(regionsToIngest)/1073741824.0
-       if size == 0: smfsPerGB = 0
-       else: smfsPerGB = len(allIDs)/size
-       logger.infoPair("smf files per GB", "%f" % smfsPerGB)
-       '''
-       dec = dec + BOXSIZE
-       break
-   ra = ra + BOXSIZE
-   break
-
-#regionsToIngest = []
-#regionsToPurge = []
-#dvo.getRegions(regionsToIngest, regionsToPurge)
-#dvo.getRegions(regionsToIngest, regionsToPurge, MINRA-BORDER, MAXRA+BORDER, MINDEC-BORDER, MAXDEC+BORDER)
-#size = dvo.getSizeOfDvoRegionFromFiles(files)
-#logger.infoPair("Size of region in DVO", dvo.getFileSizeStr(size))
-#logger.infoPair("Average region file size", dvo.getFileSizeStr(size/len(files)))
-
-#dvo.loadRegion(329, 331.1, 1.4, 2)
-#dvo.loadRegion(MINRA-BORDER, MAXRA+BORDER, MINDEC-BORDER, MAXDEC+BORDER)
-#dvo.loadRegion()
-
-logger.infoPair("Program...", "complete")
-
-
-
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/removeFromDatastore.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/removeFromDatastore.py	(revision 33597)
+++ 	(revision )
@@ -1,31 +1,0 @@
-#!/usr/bin/env jython
-
-from datastore import Datastore
-import logging
-import sys
-import getopt
-
-
-from config import Config
-from pslogger import PSLogger
-from ipptopspsdb import IppToPspsDb
-
-
-
-if len(sys.argv) < 3:
-    print "** Usage: " + sys.argv[0] + " <configPath> <firstBatchToRemove> [<lastBatchToRemove>]"
-    sys.exit(1)
-
-CONFIGFILE = sys.argv[1]
-
-# create objects
-config = Config(CONFIGPATH)
-logger = config.getLogger(sys.argv[0])
-ippToPspsDb = IppToPspsDb(logger, config)
-datastore = Datastore(logger, config, ippToPspsDb)
-
-if len(sys.argv) < 4:
-    datastore.remove(str(sys.argv[2]))
-else:
-    datastore.removeRange(str(sys.argv[2]), str(sys.argv[3]))
-
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/reportloadfailures.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/reportloadfailures.py	(revision 33597)
+++ 	(revision )
@@ -1,50 +1,0 @@
-#!/usr/bin/env jython
-
-from subprocess import call, PIPE, Popen
-import tempfile
-from xml.etree.ElementTree import ElementTree, Element, tostring
-import re
-import sys
-
-import logging.config
-from pslogger import PSLogger
-from ipptopspsdb import IppToPspsDb
-from odm import Odm
-from batch import Batch
-
-
-if len(sys.argv) > 1: CONFIG  = sys.argv[1]
-else:
-    print "\n** Usage: " + sys.argv[0] + " <configPath>\n"
-    sys.exit(1)
-
-# open config file
-configDoc = ElementTree(file=CONFIG)
-
-# set up logging
-logging.setLoggerClass(PSLogger)
-logger = logging.getLogger(sys.argv[0])
-logger.setup(configDoc, sys.argv[0])
-
-ippToPspsDb = IppToPspsDb(logger, configDoc)
-odm = Odm(logger, configDoc)
-
-DVOLABEL = configDoc.find("dvo/gpc1Label").text
-EPOCH = configDoc.find("options/epoch").text
-
-ids = ippToPspsDb.getFailedLoadedToODMBatchIDs(EPOCH, DVOLABEL)
-
-
-logger.infoPair("Batches failed load to ODM", "%d" % len(ids))
-
-
-results = {}
-
-for id in ids:
-
-   if odm.checkBatch(id, results):
-       logger.info("  %9s : %s" % (Batch.getNameFromID(id), results['DETAILS']))
-   else:
-       logger.info("  %9s : failed to poll ODM" % Batch.getNameFromID(id))
-
-
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/republishbatch.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/republishbatch.py	(revision 33597)
+++ 	(revision )
@@ -1,60 +1,0 @@
-import sys
-
-from pslogger import PSLogger
-import logging
-from xml.etree.ElementTree import ElementTree, Element, tostring
-
-from ipptopspsdb import IppToPspsDb
-from datastore import Datastore
-from batch import Batch
-
-
-'''
-A program that republishes a bath to the datastore.
-
-It first 'resets' the batch in the ippToPsps database, i.e. pretends it has never been published, then re-publishes it to the datastore
-'''
-if len(sys.argv) > 2: 
-    CONFIG  = sys.argv[1]
-    BATCHID  = int(sys.argv[2])
-else:
-    print "** Usage: " + sys.argv[0] + " <configPath> <batchid>"
-    sys.exit(1)
-
-# open config file
-configDoc = ElementTree(file=CONFIG)
-
-logging.setLoggerClass(PSLogger)
-logger = logging.getLogger(sys.argv[0])
-logger.setup(configDoc, sys.argv[0])
-
-ippToPspsDb = IppToPspsDb(logger, configDoc)
-datastore = Datastore(logger, configDoc, ippToPspsDb)
-
-DVOLABEL = configDoc.find("dvo/gpc1Label").text
-EPOCH = configDoc.find("options/epoch").text
-BASEPATH = configDoc.find("localOutPath").text
-DATASTOREPRODUCT = configDoc.find("datastore/product").text
-
-logger.infoTitle("Batch republisher")
-logger.infoPair("Loading epoch", EPOCH)
-logger.infoPair("DVO label", DVOLABEL)
-
-
-batchName = Batch.getNameFromID(BATCHID)
-BATCHTYPE = ippToPspsDb.getBatchType(BATCHID)
-subDir = Batch.getSubDir(BASEPATH, BATCHTYPE, DVOLABEL)
-tarballFile = Batch.getTarballFile(BATCHID)
-
-logger.infoPair("batch ID", "%d" % BATCHID)
-logger.infoPair("batchname", batchName)
-logger.infoPair("batch type", BATCHTYPE)
-logger.infoPair("subdir", subDir)
-logger.infoPair("tarballfile", tarballFile)
-logger.infoPair("Reseting batch in database", "%d" % BATCHID)
-ippToPspsDb.resetBatch(BATCHID)
-logger.infoPair("publishing to", DATASTOREPRODUCT)
-Batch.publishToDatastore(datastore, BATCHID, batchName, subDir, tarballFile)
-
-
-
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/run.sh
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/run.sh	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/run.sh	(revision 34041)
@@ -1,1 +1,1 @@
-~/jre1.6.0_24/bin/java -Xbootclasspath/a:../jars/stilts.jar:../jars/commons-math-2.2.jar:../jars/mysql-connector-java-5.1.14-bin.jar -jar ~/jython2.5.2/jython.jar $1 $2 $3 $4 $5 $6 $7 $8 $9
+~ipp/jre1.7.0_03/bin/java -Xbootclasspath/a:../jars/stilts.jar:../jars/commons-math-2.2.jar:../jars/mysql-connector-java-5.1.14-bin.jar -jar ~/jython2.5.3b1/jython.jar $1 $2 $3 $4 $5 $6 $7 $8 $9
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/scratchdb.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/scratchdb.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/scratchdb.py	(revision 34041)
@@ -24,5 +24,5 @@
         self.dvoDoneTable = "dvoDone"
         self.dvoSkyTable = "dvoSkyTable"
-
+        self.dvoPhotcodesTable = "dvoPhotcodes"
 
     '''
@@ -249,21 +249,4 @@
 
     '''
-    Gets the id for the cpm file for the provided region
-    '''
-    def getDvoCpmFileIdForRegion(self, region):
-
-        id = -1
-        sql = "SELECT id FROM " + self.dvoDoneTable + " WHERE region = '" + region + "' AND path LIKE '%.cpm'";
-        try:
-            rs = self.executeQuery(sql)
-            rs.first()
-            id = rs.getInt(1)
-        except:
-            self.logger.errorPair("Could not get file id from " + self.dvoDoneTable, "for region: " + region)
-
-        return id
-
-
-    '''
     Gets the id for the provided file
     '''
@@ -277,5 +260,5 @@
             id = rs.getInt(1)
         except:
-            self.logger.errprPair("Could not get file id from " + self.dvoDoneTable + "for", path)
+            self.logger.errorPair("Could not get file id from " + self.dvoDoneTable + "for", path)
 
         return id
@@ -295,5 +278,5 @@
             rs.close()
         except:
-            self.logger.errorPai("Can't query for ingested regions", sql)
+            self.logger.errorPair("Can't query for ingested regions", sql)
 
         return regions
@@ -318,9 +301,10 @@
 
     '''
-    Checks whether DVO files we have ingested are form the DVO path provided
+    Checks whether DVO files we have ingested are from the DVO path provided
+    Does this by checking the original path of the SkyTable.fits file
     '''
     def isCorrectDvo(self, path):
 
-        sql = "SELECT path FROM " + self.dvoDoneTable + " where path LIKE '%Images.dat'"
+        sql = "SELECT path FROM " + self.dvoDoneTable + " WHERE path LIKE '%SkyTable.fits'"
         try:
             rs = self.executeQuery(sql)  
@@ -336,5 +320,6 @@
                 return False
 
-        except:
+        except Exception, e:
+            print str(e)
             self.logger.errorPair("No DVO files ingested for this path", path)
             return False
@@ -342,5 +327,5 @@
     '''
     Checks whether the astrometric solution is ok for this chip
-    TODO the value of 50 for numAstroRef is hardcoded here, but this should be temporary anyway
+    TODO the value of 50 for numAstroRef (provided by Gene) is hardcoded here, but this should be temporary anyway
     '''
     def astrometricSolutionOK(self, ota):
@@ -410,51 +395,59 @@
     '''
     Removes the provided DVO FITS files from from dvoDone and dvoDetection tables
-    Returns a count of the number of detections deleted
-    '''
-    def purgeTheseDvoRegions(self, regions):
+    Returns a count of the number of detections deleted, if any
+    '''
+    def purgeTheseDvoRegions(self, regions, fileTypes):
 
         detectionCount = self.getRowCount(self.dvoDetectionTable)
         for region in regions:
+          
+           for fileType in fileTypes:
+               sql = "DELETE FROM " + self.dvoDoneTable + " WHERE region = '" + region + "' AND path LIKE '%" + fileType + "'"
+               try: self.execute(sql)
+               except:
+                    self.logger.errorPair("Unable to delete " + fileType + " file from", self.dvoDoneTable)
+
+               tableName = self.getDbFriendlyTableName(region + "." + fileType) 
+               sql = "DROP TABLE " + tableName
+               try: self.execute(sql)
+               except:
+                    self.logger.errorPair("Unable to drop table", tableName)
+                    pass
+
+        deletedDetectionCount = detectionCount - self.getRowCount(self.dvoDetectionTable)
+
+        # after a big detection delete, we should OPTIMIZE the table
+        if deletedDetectionCount > 0:
+            self.logger.infoPair("Running OPTIMIZE on ", self.dvoDetectionTable)
+            self.optimizeTable(self.dvoDetectionTable)
+
+        return deletedDetectionCount
            
-           fileId = self.getDvoCpmFileIdForRegion(region)
-
-           if fileId < 0:
-               self.logger.errorPair("Unable to get file ID to delete " + region + " from", self.dvoDoneTable)
-               continue
-
-           sql = "DELETE FROM " + self.dvoDetectionTable + " WHERE fileID = " + str(fileId)
-           try: self.execute(sql)
-           except: 
-               self.logger.errorPair("Unable to delete from " + self.dvoDetectionTable, "for file ID: %d" % fileId)
-               return False
-
-           sql = "DELETE FROM " + self.dvoDoneTable + " WHERE region = '" + region + "'"
-           try: self.execute(sql)
-           except:
-               self.logger.errorPair("Unable to delete " + region + " from", self.dvoDoneTable)
-
-        finalCount = detectionCount - self.getRowCount(self.dvoDetectionTable)
-
-        # after a big delete, we should OPTIMIZE the table
-        self.logger.infoPair("Running OPTIMIZE on ", self.dvoDetectionTable)
-        if finalCount > 0: self.optimizeTable(self.dvoDetectionTable)
-
-        return finalCount
-           
-    '''
-    Drops DVO stuff pertaining to detections
-    '''
-    def resetDvoDetectionTables(self):
-
-       self.logger.infoPair("Deleting detections from", self.dvoDoneTable)
-       sql = "DELETE FROM " + self.dvoDoneTable + " WHERE path LIKE '%cpm' OR path LIKE '%cpt'"
+    '''
+    Drops and recreates tables necessary for dvoToMySQL program. Be very careful before using this...
+    '''
+    def resetAllDvoTables(self):
+
+       # drop all dvo tables - NB detections have to be deleted prior to dvoDone due to foreign key constraint
+       self.logger.infoPair("Dropping table", self.dvoImagesTable)
+       self.dropTable(self.dvoImagesTable) 
+       self.logger.infoPair("Dropping table", self.dvoSkyTable)
+       self.dropTable(self.dvoSkyTable) 
+       self.logger.infoPair("Dropping table", self.dvoDetectionTable)
+       self.dropTable(self.dvoDetectionTable)
+       self.logger.infoPair("Dropping table", self.dvoDoneTable)
+       self.dropTable(self.dvoDoneTable) 
+
+       # create dvoDone table
+       self.logger.infoPair("Creating table", self.dvoDoneTable)
+       sql = "CREATE TABLE " + self.dvoDoneTable + " (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, region VARCHAR(100), path VARCHAR(1000), modifiedDate BIGINT, size BIGINT)"
        try: self.execute(sql)
        except: 
-           self.logger.errorPair("Unable to delete from", self.dvoDoneTable)
+           self.logger.errorPair("Unable to create table", self.dvoDoneTable)
            return False
 
-       self.logger.infoPair("Dropping table", self.dvoDetectionTable)
-       self.dropTable(self.dvoDetectionTable)
-
+       self.changeEngineToInnoDB(self.dvoDoneTable)
+
+       # create detections table
        self.logger.infoPair("Creating table", self.dvoDetectionTable)
        sql = "CREATE TABLE " + self.dvoDetectionTable + " LIKE dvoDetection"
@@ -463,6 +456,7 @@
            self.logger.errorPair("Unable to create table", self.dvoDetectionTable)
            return False
-
-       # TODO
+       self.changeEngineToInnoDB(self.dvoDetectionTable)
+
+       # add fileID column
        sql = "ALTER TABLE " + self.dvoDetectionTable + " ADD fileID INT NOT NULL"
        try: self.execute(sql)
@@ -471,23 +465,19 @@
            return False
 
-    '''
-    Drops and recreates tables necessary for dvoToMySQL program. Be very careful before using this...
-    '''
-    def resetAllDvoTables(self):
-
-       self.logger.infoPair("Dropping table", self.dvoImagesTable)
-       self.dropTable(self.dvoImagesTable) 
-       self.logger.infoPair("Dropping table", self.dvoSkyTable)
-       self.dropTable(self.dvoSkyTable) 
-       self.logger.infoPair("Dropping table", self.dvoDoneTable)
-       self.dropTable(self.dvoDoneTable) 
-
-       # create dvoDone table
-       self.logger.infoPair("Creating table", self.dvoDoneTable )
-       sql = "CREATE TABLE " + self.dvoDoneTable + " (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, region VARCHAR(100), path VARCHAR(1000), modifiedDate BIGINT, size BIGINT)"
+       # add an index to the fileID column
+       self.createIndex(self.dvoDetectionTable, "fileID")
+
+       # now add a delete cascading foreign key constraint on fileID
+       sql = "ALTER TABLE dvoDetectionFull \
+              ADD CONSTRAINT fk_fileID \
+              FOREIGN KEY (fileID) \
+              REFERENCES dvoDone(id) \
+              ON DELETE CASCADE"
        try: self.execute(sql)
-       except: self.logger.errorPair("Unable to create table", self.dvoDoneTable)
-
-       self.resetDvoDetectionTables()
+       except: 
+           self.logger.errorPair("Unable to create foreign key on", self.dvoDoneTable)
+           return False
+
+       return True
 
     '''
@@ -512,5 +502,10 @@
     def getDvoRegionsForThisBox(self, regions, minRa, maxRa, minDec, maxDec):
 
-        sql = "SELECT name FROM " + self.dvoSkyTable + " \
+        sql = "SELECT \
+               INDEX_, \
+               R_MIN+ (R_MAX - R_MIN)/2.0, \
+               D_MIN + (D_MAX - D_MIN)/2.0, \
+               NAME \
+               FROM " + self.dvoSkyTable + " \
                WHERE NOT ((" + str(maxRa) + " <= R_MIN) OR \
                        (" + str(minRa) + " >= R_MAX) OR \
@@ -520,5 +515,10 @@
         try:
             rs = self.executeQuery(sql)
-            while (rs.next()): regions.append(rs.getString(1))
+            while (rs.next()): regions.append([
+                    rs.getInt(1), 
+                    rs.getFloat(2), 
+                    rs.getFloat(3), 
+                    rs.getString(4)])
+
             rs.close()
         except:
@@ -526,2 +526,47 @@
 
 
+    '''
+    Gets the id for the provided file
+    '''
+    def getRegionNameFromThisDvoIndex(self, index):
+
+        region = ""
+        sql = "SELECT NAME FROM " + self.dvoSkyTable + " WHERE INDEX_ = " + str(index)
+        try:
+            rs = self.executeQuery(sql)
+            rs.first()
+            region = rs.getString(1)
+            rs.close()
+        except:
+            self.logger.errorPair("Could not get region using index", sql )
+
+        return region
+
+    '''
+    Gets a list of filters ordered as thy are in the DVO Photcodes table, as this reflects the order they apper in the cps file
+    '''
+    def getOrderedListOfFiltersFromPhotcodesTable(self, interestedFilters):
+
+        sql = "SELECT NAME FROM " + self.dvoPhotcodesTable + " WHERE "
+
+        count = 0
+        for filter in interestedFilters:
+           if count != 0: sql = sql + " OR "
+           sql = sql + " name = '" + filter + "'"
+           count += 1
+
+        sql = sql + " ORDER BY CODE"
+
+        orderedFilters = []
+        try:
+            rs = self.executeQuery(sql)
+            row = 1
+            while (rs.next()):
+                orderedFilters.append([row,rs.getString(1)])
+                row += 1
+            rs.close()
+        except:
+            self.logger.errorPair("Could not get ordered filter list", sql )
+
+        return orderedFilters
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/setupScratchDb.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/setupScratchDb.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/setupScratchDb.py	(revision 34041)
@@ -1,49 +1,64 @@
 #!/usr/bin/env jython
 
-import os.path
 import sys
-import time
 import stilts
 from java.lang import *
 from java.sql import *
-import logging.config
 
-from java.lang import Math
-from org.apache.commons.math.special import Erf
-from xml.etree.ElementTree import ElementTree, Element, tostring
 
-from pslogger import PSLogger
+from ipptopsps import IppToPsps
 from scratchdb import ScratchDb
 
 '''
-Start of program.
+SetupScratchDb class
 '''
+class SetupScratchDb(IppToPsps):
 
-if len(sys.argv) > 1: CONFIG = sys.argv[1]
-else:
-    print "** Usage: " + sys.argv[0] + " <configPath> [init]"
-    sys.exit(1)
+    '''
+    Constructor
+    '''
+    def __init__(self, argv):
+        super(SetupScratchDb, self).__init__(argv)
 
-# open config file
-configDoc = ElementTree(file=CONFIG)
+        if len(argv) < 3:
+            self.printUsage()
+            self.exitProgram("incorrect args")
 
-# set up logging
-logging.setLoggerClass(PSLogger)
-logger = logging.getLogger("setupScratchDb")
-logger.setup(configDoc, "setupScratchDb")
+        try:
+            self.scratchDb = ScratchDb(self.logger, self.config, argv[2])
+        except:
+            self.exitProgram("Could not connect to a scratch Db")
+            raise
 
-scratchDb = ScratchDb(logger, configDoc)
 
-# install stored procedure
-logger.info("Installing psfLikelihood() stored procedure")
-scratchDb.createPsfLikelihoodFunction()
+    def run(self):
 
-# install IN tables
-logger.info("Installing initialization tables")
-tables = stilts.treads("../config/IN/tables.vot")
-for table in tables:
-    logger.debug("Creating IN table: " + table.name)
-    table.write(scratchDb.url + '#' + table.name)
+        self.logger.infoSeparator()
 
-logger.info("Done")
+        # install stored procedure
+        self.logger.infoPair("Installing",  "psfLikelihood() stored procedure")
+        self.scratchDb.createPsfLikelihoodFunction()
 
+        # install IN tables
+        self.logger.infoPair("Installing", "initialization tables")
+        tables = stilts.treads("../config/IN/tables.vot")
+        for table in tables:
+            self.logger.debug("Creating IN table: " + table.name)
+            table.write(self.scratchDb.url + '#' + table.name)
+
+    '''
+    Overrides base-class version
+    '''
+    def printUsage(self):
+        super(SetupScratchDb, self).printUsage("<scratchdb_name>")
+
+'''
+Program starts here
+'''
+try:
+    setupScratchDb = SetupScratchDb(sys.argv)
+    setupScratchDb.run()
+    setupScratchDb.exitProgram("completed")
+except: pass
+
+
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/stackbatch.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/stackbatch.py	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/jython/stackbatch.py	(revision 34041)
@@ -50,6 +50,4 @@
                useFullTables)
 
-       if not self.everythingOK: return
-
        self.stackType = "DEEP_STACK" # TODO
 
@@ -57,6 +55,6 @@
        meta = self.gpc1Db.getStackStageMeta(self.id)
        if not meta:
-           self.everythingOK = False
-           return
+           self.logger.errorPair("Could not get stack", "metadata")
+           raise
 
        self.filter = meta[0];
@@ -80,7 +78,6 @@
        self.analysisVer = meta[2];
 
-       self.expTime = gpc1Db.getStackExpTime(self.id)
-
-       self.logger.debug("Got exp time of %d" % self.expTime)
+       #self.expTime = gpc1Db.getStackExpTime(self.id)
+       self.expTime = self.header['EXPTIME']
 
        # delete PSPS tables
@@ -284,7 +281,7 @@
         " + str(self.id) + " \
         ," + self.skycell + " \
-        ," + str(self.scratchDb.getPhotoCalID(self.header['SOURCEID'], self.header['IMAGEID'])) + " \
+        ," + str(self.scratchDb.getPhotoCalID(self.header['IMAGEID'])) + " \
         ," + self.header['FPA.ZP'] + " \
-        ," + str(self.expTime) + " \
+        ," + self.expTime + " \
         ,'" + self.safeDictionaryAccess(self.header, 'PSFMODEL') + "' \
         ,'" + self.safeDictionaryAccess(self.header, 'FWHM_MAJ') + "' \
@@ -367,7 +364,7 @@
                ,X_PSF_SIG \
                ,Y_PSF_SIG \
-               ,POW(10.0, (-0.4*PSF_INST_MAG)) / "+str(self.expTime)+" \
-               ,ABS((PSF_INST_MAG_SIG*(POW(10.0, (-0.4*PSF_INST_MAG)) / "+str(self.expTime)+")) / 1.085736) \
-               ,POW(10.0, (-0.4*PEAK_FLUX_AS_MAG)) / "+str(self.expTime)+" \
+               ,POW(10.0, (-0.4*PSF_INST_MAG)) / " + str(self.expTime) + " \
+               ,ABS((PSF_INST_MAG_SIG*(POW(10.0, (-0.4*PSF_INST_MAG)) / " + str(self.expTime) + ")) / 1.085736) \
+               ,POW(10.0, (-0.4*PEAK_FLUX_AS_MAG)) / " + str(self.expTime) + " \
                ,SKY \
                ,SKY_SIGMA \
@@ -390,6 +387,6 @@
                ,AP_MAG \
                , NULL \
-               ,KRON_FLUX \
-               ,KRON_FLUX_ERR \
+               ,KRON_FLUX / " + str(self.expTime) + " \
+               ,KRON_FLUX_ERR / " + str(self.expTime) + " \
                , NULL \
                , NULL \
@@ -416,5 +413,5 @@
             #if deep stack and instFlux = null and err not null
             sql = "UPDATE StackDetection AS a, SkyChip_psf AS b \
-                   SET instFlux = 2*b.PSF_INST_FLUX_SIG \
+                   SET instFlux = 2*b.PSF_INST_FLUX_SIG / " + str(self.expTime) + " \
                    WHERE instFlux IS NULL \
                    AND a.ippDetectID = b.IPP_IDET  \
@@ -501,5 +498,5 @@
         self.scratchDb.updateAllRows("StackModelFit", "surveyID", str(self.surveyID))
         self.scratchDb.updateFilterID("StackModelFit", self.filter)
-        self.scratchDb.updateAllRows("StackModelFit", "dataRelease", str(self.dataRelease))
+        self.scratchDb.updateAllRows("StackModelFit", "dataRelease", str(self.config.dataRelease))
         self.scratchDb.updateAllRows("StackModelFit", "primaryF", "0")
         self.scratchDb.updateAllRows("StackModelFit", "activeFlag", "0")
@@ -566,5 +563,5 @@
 
         self.scratchDb.updateAllRows("SkinnyObject", "surveyID", str(self.surveyID))
-        self.scratchDb.updateAllRows("SkinnyObject", "dataRelease", str(self.dataRelease))
+        self.scratchDb.updateAllRows("SkinnyObject", "dataRelease", str(self.config.dataRelease))
 
     '''
@@ -586,5 +583,5 @@
 
         self.scratchDb.updateFilterID("ObjectCalColor", self.filter)
-        self.scratchDb.updateAllRows("ObjectCalColor", "dataRelease", str(self.dataRelease))
+        self.scratchDb.updateAllRows("ObjectCalColor", "dataRelease", str(self.config.dataRelease))
 
 
@@ -620,5 +617,5 @@
     def updateDvoIDs(self, table):
 
-        imageID = self.scratchDb.getImageIDFromExternID(self.header['SOURCEID'], self.header['IMAGEID'])
+        imageID = self.scratchDb.getImageIDFromExternID(self.header['IMAGEID'])
         self.logger.debug("Updating table '" + table + "' with DVO IDs...")
         sql = "UPDATE " + table + " AS a, " + self.scratchDb.dvoDetectionTable + " AS b SET \
@@ -627,5 +624,4 @@
                a.objID = b.objID \
                WHERE a.ippDetectID = b.ippDetectID \
-               AND b.sourceID = " + self.header['SOURCEID'] + "\
                AND b.imageID = " + str(imageID)
         self.scratchDb.execute(sql)
Index: branches/meh_branches/ppstack_test/ippToPsps/jython/stilts.py
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/jython/stilts.py	(revision 33597)
+++ 	(revision )
@@ -1,5850 +1,0 @@
-# This module auto-generated by java class uk.ac.starlink.ttools.build.JyStilts.
-
-'''Provides access to STILTS commands.
-
-See the manual, http://www.starlink.ac.uk/stilts/sun256/
-for tutorial and full usage information.
-'''
-
-from __future__ import generators
-__author__ = 'Mark Taylor'
-
-
-import jarray.array
-import java.io.ByteArrayInputStream as _ByteArrayInputStream
-import java.io.OutputStream as _OutputStream
-import java.lang.Class as _Class
-import java.lang.System as _System
-import java.lang.reflect.Array as _Array
-import java.util.ArrayList as _ArrayList
-import uk.ac.starlink.table.ColumnInfo as _ColumnInfo
-import uk.ac.starlink.table.MultiStarTableWriter as _MultiStarTableWriter
-import uk.ac.starlink.table.StarTable as _StarTable
-import uk.ac.starlink.table.StarTableFactory as _StarTableFactory
-import uk.ac.starlink.table.StarTableOutput as _StarTableOutput
-import uk.ac.starlink.table.TableSequence as _TableSequence
-import uk.ac.starlink.table.Tables as _Tables
-import uk.ac.starlink.table.WrapperStarTable as _WrapperStarTable
-import uk.ac.starlink.table.WrapperRowSequence as _WrapperRowSequence
-import uk.ac.starlink.task.InvokeUtils as _InvokeUtils
-import uk.ac.starlink.ttools.Stilts as _Stilts
-import uk.ac.starlink.ttools.filter.StepFactory as _StepFactory
-import uk.ac.starlink.ttools.task.MapEnvironment as _MapEnvironment
-import uk.ac.starlink.util.DataSource as _DataSource
-import uk.ac.starlink.ttools.func.Arithmetic as Arithmetic
-import uk.ac.starlink.ttools.func.Arrays as Arrays
-import uk.ac.starlink.ttools.func.Conversions as Conversions
-import uk.ac.starlink.ttools.func.Coords as Coords
-import uk.ac.starlink.ttools.func.Distances as Distances
-import uk.ac.starlink.ttools.func.Fluxes as Fluxes
-import uk.ac.starlink.ttools.func.Formats as Formats
-import uk.ac.starlink.ttools.func.Maths as Maths
-import uk.ac.starlink.ttools.func.Strings as Strings
-import uk.ac.starlink.ttools.func.Tilings as Tilings
-import uk.ac.starlink.ttools.func.Times as Times
-
-class JyStarTable(_WrapperStarTable):
-    '''StarTable wrapper class for use within Jython.
-
-Decorates a uk.ac.starlink.table.StarTable
-java object with methods for use within jython.
-These include special bound functions to make it an
-iterable object (with items which are table rows),
-arithmetic + and * overloads for concatenation,
-a write method for table viewing or output,
-and methods representing STILTS filter functionality,
-namely cmd_* methods for filters and mode_* methods
-for output modes.
-
-As a general rule, any StarTable object which is
-intented for use by JyStilts program code should be
-wrapped in an instance of this class.
-    '''
-    def __init__(self, base_table):
-        _WrapperStarTable.__init__(self, base_table)
-    def __iter__(self):
-        rowseq = self.getRowSequence()
-        while rowseq.next():
-            yield self._create_row(rowseq.getRow())
-    def __str__(self):
-        return '%s (?x%d)' % (self.getName(), self.getColumnCount())
-    def __add__(self, other):
-        return tcat([self, other])
-    def __mul__(self, count):
-        return tcat([self] * count)
-    def __rmul__(self, count):
-        return tcat([self] * count)
-    def columns(self):
-        '''Returns a tuple of ColumnInfo objects describing the columns of this table.'''
-        if hasattr(self, '_columns'):
-            return self._columns
-        else:
-            col_list = []
-            for i in xrange(self.getColumnCount()):
-                col_list.append(_JyColumnInfo(self.getColumnInfo(i)))
-            self._columns = tuple(col_list)
-            return self.columns()
-    def parameters(self):
-        '''
-Returns a mapping of table parameter names to values.
-
-This does not provide all the information about the parameters,
-for instance units and UCDs are not included.
-For more detail, use the relevant StarTable methods.
-Currently, this is not a live list, in the sense that changing
-the returned dictionary will not affect the table parameter values.
-        '''
-        if hasattr(self, '_parameters'):
-            return self._parameters
-        else:
-            params = {}
-            for p in self.getParameters():
-                params[p.getInfo().getName()] = p.getValue()
-            self._parameters = params
-            return self.parameters()
-    def coldata(self, key):
-        '''Returns a sequence of all the values in a given column.'''
-        icol = self._column_index(key)
-        rowseq = self.getRowSequence()
-        while rowseq.next():
-            yield rowseq.getCell(icol)
-    def _create_row(self, array):
-        row = _JyRow(array)
-        row.table = self
-        return row
-    def _column_index(self, key):
-        if type(key) is type(1):
-            if key >= 0:
-                return key
-            else:
-                return key + self.getColumnCount()
-        if hasattr(self, '_colmap'):
-            return self._colmap[key]
-        else:
-            colmap = {}
-            for ic, col in enumerate(self.columns()):
-                if not col in colmap:
-                    colmap[col] = ic
-                colname = col.getName()
-                if not colname in colmap:
-                    colmap[colname] = ic
-            self._colmap = colmap
-            return self._column_index(key)
-    def write(self, location=None, fmt='(auto)'):
-        '''Writes table to a file.
-    
-        The location parameter may give a filename or a
-        python file object open for writing.
-        if it is not supplied, standard output is used.
-    
-        The fmt parameter specifies output format.
-        Known output formats:
-           (auto)
-           jdbc
-           fits
-           fits-plus
-           fits-basic
-           fits-var
-           colfits-plus
-           colfits-basic
-           votable-tabledata
-           votable-binary-inline
-           votable-fits-href
-           votable-binary-href
-           votable-fits-inline
-           text
-           ascii
-           csv
-           csv-noheader
-           tst
-           html
-           html-element
-           latex
-           latex-document
-           mirage
-        '''
-        sto = _StarTableOutput()
-        if hasattr(location, 'write') and hasattr(location, 'flush'):
-            ostrm = _JyOutputStream(location)
-            name = getattr(location, 'name', None)
-            handler = sto.getHandler(fmt, name)
-            sto.writeStarTable(self, ostrm, handler)
-        else:
-            if location is None:
-                location = '-'
-            sto.writeStarTable(self, location, fmt)
-    def cmd_addcol(self, *args):
-        '''\
-    Add a new column called <col-name> defined by the algebraic
-    expression <expr>. By default the new column appears after the last
-    column of the table, but you can position it either before or after
-    a specified column using the -before or -after flags respectively.
-    The -units, -ucd and -desc flags can be used to define metadata
-    values for the new column.
-    
-    Syntax for the <expr> and <col-id> arguments is described in the
-    manual.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [-after <col-id> | -before <col-id>]
-        [-units <units>] [-ucd <ucd>] [-desc <description>]
-        <col-name> <expr>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("addcol")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_addresolve(self, *args):
-        '''\
-    Performs name resolution on the string-valued column
-    >col-id-objname< and appends two new columns >col-name-ra< and
-    >col-name-dec< containing the resolved Right Ascension and
-    Declination in degrees.
-    
-    Syntax for the <col-id-objname> argument is described in SUN/256.
-    
-    UCDs are added to the new columns in a way which tries to be
-    consistent with any UCDs already existing in the table.
-    
-    Since this filter works by interrogating a remote service, it will
-    obviously be slow. The current implementation is experimental; it
-    may be replaced in a future release by some way of doing the same
-    thing (perhaps a new STILTS task) which is able to work more
-    efficiently by dispatching multiple concurrent requests.
-    
-    This software uses source code created at the Centre de Donnees
-    astronomiques de Strasbourg, France.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <col-id-objname> <col-name-ra> <col-name-dec>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("addresolve")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_addskycoords(self, *args):
-        '''\
-    Add new columns to the table representing position on the sky. The
-    values are determined by converting a sky position whose coordinates
-    are contained in existing columns. The <col-id> arguments give
-    identifiers for the two input coordinate columns in the coordinate
-    system named by <insys>, and the <col-name> arguments name the two
-    new columns, which will be in the coordinate system named by
-    <outsys>. The <insys> and <outsys> coordinate system specifiers are
-    one of
-    
-     * icrs: ICRS (Hipparcos) (Right Ascension, Declination)
-     * fk5: FK5 J2000.0 (Right Ascension, Declination)
-     * fk4: FK4 B1950.0 (Right Ascension, Declination)
-     * galactic: IAU 1958 Galactic (Longitude, Latitude)
-     * supergalactic: de Vaucouleurs Supergalactic (Longitude, Latitude)
-     * ecliptic: Ecliptic (Longitude, Latitude)
-    
-    The -inunit and -outunit flags may be used to indicate the units of
-    the existing coordinates and the units for the new coordinates
-    respectively; use one of degrees, radians or sexagesimal (may be
-    abbreviated), otherwise degrees will be assumed. For sexagesimal,
-    the two corresponding columns must be string-valued in forms like
-    hh:mm:ss.s and dd:mm:ss.s respectively.
-    
-    For certain conversions, the value specified by the -epoch flag is
-    of significance. Where significant its value defaults to 2000.0.
-    
-    Syntax for the <expr> , <col-id1> and <col-id2> arguments is
-    described in the manual.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [-epoch <expr>] [-inunit deg|rad|sex] [-outunit deg|rad|sex]
-        <insys> <outsys> <col-id1> <col-id2> <col-name1> <col-name2>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("addskycoords")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_assert(self, *args):
-        '''\
-    Check that a boolean expression is true for each row. If the
-    expression <expr> does not evaluate true for any row of the table,
-    execution terminates with an error. As long as no error occurs, the
-    output table is identical to the input one.
-    
-    The exception generated by an assertion violation is of class
-    uk.ac.starlink.ttools.filter.AssertException although that is not
-    usually obvious if you are running from the shell in the usual way.
-    
-    Syntax for the <expr> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <expr>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("assert")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_badval(self, *args):
-        '''\
-    For each column specified in <colid-list> any occurrence of the
-    value <bad-val> is replaced by a blank entry.
-    
-    Syntax for the <colid-list> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <bad-val> <colid-list>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("badval")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_cache(self):
-        '''\
-    Stores in memory or on disk a temporary copy of the table at this
-    point in the pipeline. This can provide improvements in efficiency
-    if there is an expensive step upstream and a step which requires
-    more than one read of the data downstream. If you see an error like
-    "Can't re-read data from stream" then adding this step near the
-    start of the filters might help.
-    
-    The result of this filter is guaranteed to be random-access.
-    
-    See also the random filter, which caches only when the input table
-    is not random-access.
-    
-    The filtered table is returned.
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("cache")
-        sargs = []
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_check(self):
-        '''\
-    Runs checks on the table at the indicated point in the processing
-    pipeline. This is strictly a debugging measure, and may be
-    time-consuming for large tables.
-    
-    The filtered table is returned.
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("check")
-        sargs = []
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_clearparams(self, *args):
-        '''\
-    Clears the value of one or more named parameters. Each of the
-    <pname> values supplied may be either a parameter name or a simple
-    wildcard expression matching parameter names. Currently the only
-    wildcarding is a "*" to match any sequence of characters.
-    clearparams * will clear all the parameters in the table.
-    
-    It is not an error to supply <pname>s which do not exist in the
-    table - these have no effect.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <pname> ...
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("clearparams")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_colmeta(self, *args):
-        '''\
-    Modifies the metadata of one or more columns. Some or all of the
-    name, units, ucd and description of the column(s), identified by
-    <colid-list> can be set by using some or all of the listed flags.
-    Typically, <colid-list> will simply be the name of a single column.
-    
-    Syntax for the <colid-list> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [-name <name>] [-units <units>] [-ucd <ucd>] [-desc <descrip>]
-        <colid-list>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("colmeta")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_delcols(self, *args):
-        '''\
-    Delete the specified columns. The same column may harmlessly be
-    specified more than once.
-    
-    Syntax for the <colid-list> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <colid-list>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("delcols")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_every(self, *args):
-        '''\
-    Include only every <step>'th row in the result, starting with the
-    first row.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <step>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("every")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_explodecols(self, *args):
-        '''\
-    Takes a list of specified columns which represent N-element arrays
-    and replaces each one with N scalar columns. Each of the columns
-    specified by <colid-list> must have a fixed-length array type,
-    though not all the arrays need to have the same number of elements.
-    
-    Syntax for the <colid-list> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <colid-list>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("explodecols")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_explodeall(self, *args):
-        '''\
-    Replaces any columns which is an N-element arrays with N scalar
-    columns. Only columns with fixed array sizes are affected. The
-    action can be restricted to only columns of a certain shape using
-    the flags.
-    
-    If the -ifndim flag is used, then only columns of dimensionality
-    <ndim> will be exploded. <ndim> may be 1, 2, ....
-    
-    If the -ifshape flag is used, then only columns with a specific
-    shape will be exploded; <dims> is a space- or comma-separated list
-    of dimension extents, with the most rapidly-varying first, e.g. '2 5
-    ' to explode all 2 x 5 element array columns.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [-ifndim <ndim>] [-ifshape <dims>]
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("explodeall")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_fixcolnames(self):
-        '''\
-    Renames all columns and parameters in the input table so that they
-    have names which have convenient syntax for STILTS. For the most
-    part this means replacing spaces and other non-alphanumeric
-    characters with underscores. This is a convenience which lets you
-    use column names in algebraic expressions and other STILTS syntax.
-    
-    The filtered table is returned.
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("fixcolnames")
-        sargs = []
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_head(self, *args):
-        '''\
-    Include only the first <nrows> rows of the table. If the table has
-    fewer than <nrows> rows then it will be unchanged.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <nrows>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("head")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_keepcols(self, *args):
-        '''\
-    Select the columns from the input table which will be included in
-    the output table. The output table will include only those columns
-    listed in <colid-list>, in that order. The same column may be listed
-    more than once, in which case it will appear in the output table
-    more than once.
-    
-    Syntax for the <colid-list> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <colid-list>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("keepcols")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_meta(self, *args):
-        '''\
-    Provides information about the metadata for each column. This filter
-    turns the table sideways, so that each row of the output corresponds
-    to a column of the input. The columns of the output table contain
-    metadata items such as column name, units, UCD etc corresponding to
-    each column of the input table.
-    
-    By default the output table contains columns for the following
-    items:
-    
-     * Index: Position of column in table
-     * Name: Column name
-     * Class: Data type of objects in column
-     * Shape: Shape of array values
-     * ElSize: Size of each element in column (mostly useful for
-          strings)
-     * Units: Unit string
-     * Description: Description of data in the column
-     * UCD: Unified Content Descriptor
-    
-    as well as any table-specific column metadata items that the table
-    contains.
-    
-    However, the output may be customised by supplying one or more
-    <item> headings. These may be selected from the above as well as the
-    following:
-    
-     * UCD_desc: Textual description of UCD
-    
-    as well as any table-specific metadata. It is not an error to
-    specify an item for which no metadata exists in any of the columns
-    (such entries will result in empty columns).
-    
-    Any table parameters of the input table are propagated to the output
-    one.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [<item> ...]
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("meta")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_progress(self):
-        '''\
-    Monitors progress by displaying the number of rows processed so far
-    on the terminal (standard error). This number is updated every
-    second or thereabouts; if all the processing is done in under a
-    second you may not see any output. If the total number of rows in
-    the table is known, an ASCII-art progress bar is updated, otherwise
-    just the number of rows seen so far is written.
-    
-    The filtered table is returned.
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("progress")
-        sargs = []
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_random(self):
-        '''\
-    Ensures that random access is available on this table. If the table
-    currently has random access, it has no effect. If only sequential
-    access is available, the table is cached so that downstream steps
-    will see the cached, hence random-access, copy.
-    
-    The filtered table is returned.
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("random")
-        sargs = []
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_randomview(self):
-        '''\
-    Ensures that steps downstream only use random access methods for
-    table access. If the table is sequential only, this will result in
-    an error. Only useful for debugging.
-    
-    The filtered table is returned.
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("randomview")
-        sargs = []
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_repeat(self, *args):
-        '''\
-    Repeats the rows of a table multiple times to produce a longer
-    table. The output table will have <count> times as many rows as the
-    input table.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <count>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("repeat")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_replacecol(self, *args):
-        '''\
-    Replaces the content of a column with the value of an algebraic
-    expression. The old values are discarded in favour of the result of
-    evaluating <expr>. You can specify the metadata for the new column
-    using the -name, -units, -ucd and -desc flags; for any of these
-    items which you do not specify, they will take the values from the
-    column being replaced.
-    
-    It is legal to reference the replaced column in the expression, so
-    for example "replacecol pixsize pixsize*2" just multiplies the
-    values in column pixsize by 2.
-    
-    Syntax for the <col-id> and <expr> arguments is described in the
-    manual.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [-name <name>] [-units <units>] [-ucd <ucd>] [-desc <descrip>]
-        <col-id> <expr>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("replacecol")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_replaceval(self, *args):
-        '''\
-    For each column specified in <colid-list> any instance of <old-val>
-    is replaced by <new-val>. The value string 'null' can be used for
-    either <old-value> or <new-value> to indicate a blank value (but see
-    also the badval filter).
-    
-    Syntax for the <colid-list> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <old-val> <new-val> <colid-list>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("replaceval")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_rowrange(self, *args):
-        '''\
-    Includes only rows in a given range. The range can either be
-    supplied as "<first> <last>", where row indices are inclusive, or "
-    <first> +<count>". In either case, the first row is numbered 1.
-    
-    Thus, to get the first hundred rows, use either "rowrange 1 100" or
-    "rowrange 1 +100" and to get the second hundred, either "rowrange
-    101 200" or "rowrange 101 +100"
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <first> <last>|+<count>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("rowrange")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_select(self, *args):
-        '''\
-    Include in the output table only rows for which the expression
-    <expr> evaluates to true. <expr> must be an expression which
-    evaluates to a boolean value (true/false).
-    
-    Syntax for the <expr> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <expr>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("select")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_seqview(self):
-        '''\
-    Ensures that steps downstream see the table as sequential access.
-    Any attempts at random access will fail. Only useful for debugging.
-    
-    The filtered table is returned.
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("seqview")
-        sargs = []
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_setparam(self, *args):
-        '''\
-    Sets a named parameter in the table to a given value. The parameter
-    named <pname> is set to the value <pval>. By default the type of the
-    parameter is determined automatically (if it looks like an integer
-    it's an integer etc) but this can be overridden using the -type
-    flag. The parameter description may be set using the -desc flag.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [-type byte|short|int|long|float|double|boolean|string]
-        [-desc <descrip>] [-unit <units>] [-ucd <ucd>]
-        <pname> <pval>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("setparam")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_sort(self, *args):
-        '''\
-    Sorts the table according to the value of one or more algebraic
-    expressions. The sort key expressions appear, as separate
-    (space-separated) words, in <key-list>; sorting is done on the first
-    expression first, but if that results in a tie then the second one
-    is used, and so on.
-    
-    Each expression must evaluate to a type that it makes sense to sort,
-    for instance numeric. If the -down flag is used, the sort order is
-    descending rather than ascending.
-    
-    Blank entries are by default considered to come at the end of the
-    collation sequence, but if the -nullsfirst flag is given then they
-    are considered to come at the start instead.
-    
-    Syntax for the <key-list> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [-down] [-nullsfirst] <key-list>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("sort")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_sorthead(self, *args):
-        '''\
-    Performs a sort on the table according to the value of one or more
-    algebraic expressions, retaining only <nrows> rows at the head of
-    the resulting sorted table. The sort key expressions appear, as
-    separate (space-separated) words, in <key-list>; sorting is done on
-    the first expression first, but if that results in a tie then the
-    second one is used, and so on. Each expression must evaluate to a
-    type that it makes sense to sort, for instance numeric.
-    
-    If the -tail flag is used, then the last <nrows> rows rather than
-    the first ones are retained.
-    
-    If the -down flag is used the sort order is descending rather than
-    ascending.
-    
-    Blank entries are by default considered to come at the end of the
-    collation sequence, but if the -nullsfirst flag is given then they
-    are considered to come at the start instead.
-    
-    This filter is functionally equivalent to using sort followed by
-    head, but it can be done in one pass and is usually cheaper on
-    memory and faster, as long as <nrows> is significantly lower than
-    the size of the table.
-    
-    Syntax for the <key-list> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [-tail] [-down] [-nullsfirst] <nrows> <key-list>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("sorthead")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_stats(self, *args):
-        '''\
-    Calculates statistics on the data in the table. This filter turns
-    the table sideways, so that each row of the output corresponds to a
-    column of the input. The columns of the output table contain
-    statistical items such as mean, standard deviation etc corresponding
-    to each column of the input table.
-    
-    By default the output table contains columns for the following
-    items:
-    
-     * Name: Column name
-     * Mean: Average
-     * StDev: Population Standard deviation
-     * Minimum: Numeric minimum
-     * Maximum: Numeric maximum
-     * NGood: Number of non-blank cells
-    
-    However, the output may be customised by supplying one or more
-    <item> headings. These may be selected from the above as well as the
-    following:
-    
-     * NBad: Number of blank cells
-     * Variance: Population Variance
-     * SampStDev: Sample Standard Deviation
-     * SampVariance: Sample Variance
-     * Skew: Gamma 1 skewness measure
-     * Kurtosis: Gamma 2 peakedness measure
-     * Sum: Sum of values
-     * MinPos: Row index of numeric minimum
-     * MaxPos: Row index of numeric maximum
-     * Cardinality: Number of distinct values in column; values >100
-          ignored
-     * Median: Middle value in sequence
-     * Quartile1: First quartile
-     * Quartile2: Second quartile
-     * Quartile3: Third quartile
-    
-    Additionally, the form "Q.nn" may be used to represent the quantile
-    corresponding to the proportion 0.nn, e.g.:
-    
-     * Q.25: First quartile
-     * Q.625: Fifth octile
-    
-    Any parameters of the input table are propagated to the output one.
-    
-    Note that quantile calculations (including median and quartiles) can
-    be expensive on memory. If you want to calculate quantiles for large
-    tables, it may be wise to reduce the number of columns to only those
-    you need the quantiles for earlier in the pipeline. No interpolation
-    is performed when calculating quantiles.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [<item> ...]
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("stats")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_tablename(self, *args):
-        '''\
-    Sets the table's name attribute to the given string.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <name>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("tablename")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_tail(self, *args):
-        '''\
-    Include only the last <nrows> rows of the table. If the table has
-    fewer than <nrows> rows then it will be unchanged.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        <nrows>
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("tail")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_transpose(self, *args):
-        '''\
-    Transposes the input table so that columns become rows and vice
-    versa. The -namecol flag can be used to specify a column in the
-    input table which will provide the column names for the output
-    table. The first column of the output table will contain the column
-    names of the input table.
-    
-    Syntax for the <col-id> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [-namecol <col-id>]
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("transpose")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def cmd_uniq(self, *args):
-        '''\
-    Eliminates adjacent rows which have the same values. If used with no
-    arguments, then any row which has identical values to its
-    predecessor is removed.
-    
-    If the <colid-list> parameter is given then only the values in the
-    specified columns must be equal in order for the row to be removed.
-    
-    If the -count flag is given, then an additional column with the name
-    DupCount will be prepended to the table giving a count of the number
-    of duplicated input rows represented by each output row. A unique
-    row has a DupCount value of 1.
-    
-    Syntax for the <colid-list> argument is described in SUN/256.
-    
-    The filtered table is returned.
-    
-    args is a list with words as elements:
-        [-count] [<colid-list>]
-    '''
-        pfilt = _StepFactory.getInstance().getFilterFactory().createObject("uniq")
-        sargs = [str(a) for a in args]
-        argList = _ArrayList(sargs)
-        step = pfilt.createStep(argList.iterator())
-        return import_star_table(step.wrap(self))
-    def mode_out(self, out='-', ofmt='(auto)'):
-        '''\
-    Writes a new table.
-    
-    Parameters:
-    
-       out = <out-table>
-          The location of the output table. This is usually a filename
-          to write to. If it is equal to the special value "-" (the
-          default) the output table will be written to standard output.
-    
-          [Default: -]
-    
-       ofmt = <out-format>
-          Specifies the format in which the output table will be written
-          (one of the ones in SUN/256 - matching is case-insensitive and
-          you can use just the first few letters). If it has the special
-          value "(auto)" (the default), then the output filename will be
-          examined to try to guess what sort of file is required usually
-          by looking at the extension. If it's not obvious from the
-          filename what output format is intended, an error will result.
-    
-          [Default: (auto)]
-    '''
-        env = _JyEnvironment()
-        env.setValue('out', _map_env_value(out))
-        env.setValue('ofmt', _map_env_value(ofmt))
-        mode = _stilts.getModeFactory().createObject('out')
-        consumer = mode.createConsumer(env)
-        _check_unused_args(env)
-        consumer.consume(self)
-    def mode_meta(self):
-        '''\
-    Prints the table metadata to standard output. The name and type etc
-    of each column is tabulated, and table parameters are also shown.
-    
-    See the meta filter for more flexible output of table metadata.
-    '''
-        env = _JyEnvironment()
-        mode = _stilts.getModeFactory().createObject('meta')
-        consumer = mode.createConsumer(env)
-        _check_unused_args(env)
-        consumer.consume(self)
-    def mode_stats(self):
-        '''\
-    Calculates and displays univariate statistics for each of the
-    numeric columns in the table. The following entries are shown for
-    each column as appropriate:
-    
-     * mean
-     * population standard deviation
-     * minimum
-     * maximum
-     * number of non-null entries
-    
-    See the stats filter for more flexible statistical calculations.
-    '''
-        env = _JyEnvironment()
-        mode = _stilts.getModeFactory().createObject('stats')
-        consumer = mode.createConsumer(env)
-        _check_unused_args(env)
-        consumer.consume(self)
-    def mode_count(self):
-        '''\
-    Counts the number of rows and columns and writes the result to
-    standard output.
-    '''
-        env = _JyEnvironment()
-        mode = _stilts.getModeFactory().createObject('count')
-        consumer = mode.createConsumer(env)
-        _check_unused_args(env)
-        consumer.consume(self)
-    def mode_cgi(self, ofmt='votable'):
-        '''\
-    Writes a table to standard output in a way suitable for use as
-    output from a CGI (Common Gateway Interface) program. This is very
-    much like out mode but a short CGI header giving the MIME
-    Content-Type is prepended to the output
-    
-    Parameters:
-    
-       ofmt = <out-format>
-          Specifies the format in which the output table will be written
-          (one of the ones in SUN/256 - matching is case-insensitive and
-          you can use just the first few letters).
-    
-          [Default: votable]
-    '''
-        env = _JyEnvironment()
-        env.setValue('ofmt', _map_env_value(ofmt))
-        mode = _stilts.getModeFactory().createObject('cgi')
-        consumer = mode.createConsumer(env)
-        _check_unused_args(env)
-        consumer.consume(self)
-    def mode_discard(self):
-        '''\
-    Reads all the data in the table in sequential mode and discards it.
-    May be useful in conjunction with the assert filter.
-    '''
-        env = _JyEnvironment()
-        mode = _stilts.getModeFactory().createObject('discard')
-        consumer = mode.createConsumer(env)
-        _check_unused_args(env)
-        consumer.consume(self)
-    def mode_topcat(self):
-        '''\
-    Attempts to display the output table directly in TOPCAT. If a TOPCAT
-    instance is already running on the local host, an attempt will be
-    made to open the table in that. A variety of mechanisms are used to
-    attempt communication with an existing TOPCAT instance. In order:
-     * SAMP using existing hub (TOPCAT v3.4+ only, requires SAMP hub to
-          be running)
-     * PLASTIC using existing hub (requires PLASTIC hub to be running)
-     * SOAP (requires TOPCAT to run with somewhat deprecated -soap flag,
-          may be limitations on table size)
-     * SAMP using internal, short-lived hub (TOPCAT v3.4+ only, running
-          hub not required, but may be slow. It's better to start an
-          external hub, e.g. topcat -exthub) Failing that, an attempt
-    will be made to launch a new TOPCAT instance for display. This only
-    works if the TOPCAT classes are on the class path.
-    
-    If large tables are involved, starting TOPCAT with the -disk flag is
-    probably a good idea.
-    '''
-        env = _JyEnvironment()
-        mode = _stilts.getModeFactory().createObject('topcat')
-        consumer = mode.createConsumer(env)
-        _check_unused_args(env)
-        consumer.consume(self)
-    def mode_samp(self, format='votable fits', client=None):
-        '''\
-    Sends the table to registered SAMP-aware applications subscribed to
-    a suitable table load MType. SAMP, the Simple Application Messaging
-    Protocol, is a tool interoperability protocol. A SAMP Hub must be
-    running for this to work.
-    
-    Parameters:
-    
-       format = <value>
-          Gives one or more table format types for attempting the table
-          transmission over SAMP. If multiple values are supplied, they
-          should be separated by spaces. Each value supplied for this
-          parameter corresponds to a different MType which may be used
-          for the transmission. If a single value is used, a SAMP
-          broadcast will be used. If multiple values are used, each
-          registered client will be interrogated to see whether it
-          subscribes to the corresponding MTypes in order; the first one
-          to which it is subscribed will be used to send the table. The
-          standard options are
-    
-           * votable: use MType table.load.votable
-           * fits: use MType table.load.fits
-    
-          If any other string is used which corresponds to one of
-          STILTS's known table output formats, an attempt will be made
-          to use an ad-hoc MType of the form table.load.format.
-    
-          [Default: votable fits]
-    
-       client = <name-or-id>
-          Identifies a registered SAMP client which is to receive the
-          table. Either the client ID or the (case-insensitive)
-          application name may be used. If a non-null value is given,
-          then the table will be sent to only the first client with the
-          given name or ID. If no value is supplied the table will be
-          sent to all suitably subscribed clients.
-    '''
-        env = _JyEnvironment()
-        env.setValue('format', _map_env_value(format))
-        env.setValue('client', _map_env_value(client))
-        mode = _stilts.getModeFactory().createObject('samp')
-        consumer = mode.createConsumer(env)
-        _check_unused_args(env)
-        consumer.consume(self)
-    def mode_plastic(self, transport=None, client=None):
-        '''\
-    Broadcasts the table to any registered Plastic-aware applications.
-    PLASTIC, the PLatform for AStronomical Tool InterConnection, is a
-    tool interoperability protocol. A Plastic hub must be running in
-    order for this to work.
-    
-    Parameters:
-    
-       transport = string|file
-          Determines the method (PLASTIC message) used to perform the
-          PLASTIC communication. The choices are
-    
-           * string: VOTable serialized as a string and passed as a call
-                parameter (ivo://votech.org/votable/load). Not suitable
-                for very large files.
-           * file: VOTable written to a temporary file and the filename
-                passed as a call parameter (
-                ivo://votech.org/votable/loadFromURL). The file ought to
-                be deleted once it has been loaded. Not suitable for
-                inter-machine communication.
-    
-          If no value is set (null) then a decision will be taken based
-          on the apparent size of the table.
-    
-       client = <app-name>
-          Gives the name of a PLASTIC listener application which is to
-          receive the broadcast table. If a non-null value is given,
-          then only the first registered application which reports its
-          application name as that value will receive the message. If no
-          value is supplied, the broadcast will be to all listening
-          applications.
-    '''
-        env = _JyEnvironment()
-        env.setValue('transport', _map_env_value(transport))
-        env.setValue('client', _map_env_value(client))
-        mode = _stilts.getModeFactory().createObject('plastic')
-        consumer = mode.createConsumer(env)
-        _check_unused_args(env)
-        consumer.consume(self)
-    def mode_tosql(self, protocol, db, dbtable, host='localhost', write='create', user='mbt', password=None):
-        '''\
-    Writes a new table to an SQL database. You need the appropriate JDBC
-    drivers and -Djdcb.drivers set as usual (see SUN/256).
-    
-    Parameters:
-    
-       protocol = <jdbc-protocol>
-          The driver-specific sub-protocol specifier for the JDBC
-          connection. For MySQL's Connector/J driver, this is mysql, and
-          for PostgreSQL's driver it is postgresql. For other drivers,
-          you may have to consult the driver documentation.
-    
-       host = <value>
-          The host which is acting as a database server.
-    
-          [Default: localhost]
-    
-       db = <db-name>
-          The name of the database on the server into which the new
-          table will be written.
-    
-       dbtable = <table-name>
-          The name of the table which will be written to the database.
-    
-       write = create|dropcreate|append
-          Controls how the values are written to a table in the
-          database. The options are:
-    
-           * create: Creates a new table before writing. It is an error
-                if a table of the same name already exists.
-           * dropcreate: Creates a new database table before writing. If
-                a table of the same name already exists, it is dropped
-                first.
-           * append: Appends to an existing table. An error results if
-                the named table has the wrong structure (number or types
-                of columns) for the data being written.
-    
-          [Default: create]
-    
-       user = <username>
-          User name for the SQL connection to the database.
-    
-          [Default: mbt]
-    
-       password = <passwd>
-          Password for the SQL connection to the database.
-    '''
-        env = _JyEnvironment()
-        env.setValue('protocol', _map_env_value(protocol))
-        env.setValue('db', _map_env_value(db))
-        env.setValue('dbtable', _map_env_value(dbtable))
-        env.setValue('host', _map_env_value(host))
-        env.setValue('write', _map_env_value(write))
-        env.setValue('user', _map_env_value(user))
-        env.setValue('password', _map_env_value(password))
-        mode = _stilts.getModeFactory().createObject('tosql')
-        consumer = mode.createConsumer(env)
-        _check_unused_args(env)
-        consumer.consume(self)
-
-class RandomJyStarTable(JyStarTable):
-    '''Extends the JyStarTable wrapper class for random access.
-
-    Instances of this class can be subscripted.
-    '''
-    def __init__(self, base_table):
-        JyStarTable.__init__(self, base_table)
-    def __len__(self):
-        return int(self.getRowCount())
-    def __getitem__(self, key):
-        if type(key) is type(slice(0)):
-            return [self._create_row(self.getRow(irow))
-                    for irow in _slice_range(key, len(self))]
-        elif key < 0:
-            irow = self.getRowCount() + key
-            return self._create_row(self.getRow(irow))
-        else:
-            return self._create_row(self.getRow(key))
-    def __str__(self):
-        return str(self.getName()) + '(' + str(self.getRowCount()) + 'x' + str(self.getColumnCount()) + ')'
-    def coldata(self, key):
-        '''Returns a sequence of all the values in a given column.'''
-        icol = self._column_index(key)
-        return _Coldata(self, icol)
-
-class _Coldata(object):
-    def __init__(self, table, icol):
-        self.table = table
-        self.icol = icol
-        self.nrow = len(table)
-    def __iter__(self):
-        rowseq = self.table.getRowSequence()
-        while rowseq.next():
-            yield rowseq.getCell(self.icol)
-    def __len__(self):
-        return self.nrow
-    def __getitem__(self, key):
-        if type(key) is type(slice(0)):
-            return [self.table.getCell(irow, self.icol)
-                    for irow in _slice_range(key, self.nrow)]
-        elif key < 0:
-            irow = self.nrow + key
-            return self.table.getCell(irow, self.icol)
-        else:
-            return self.table.getCell(key, self.icol)
-
-class _JyColumnInfo(_ColumnInfo):
-    def __init__(self, base):
-        _ColumnInfo.__init__(self, base)
-    def __str__(self):
-        return self.getName()
-
-class _JyRow(tuple):
-    def __init__(self, array):
-        tuple.__init__(self, array)
-    def __getitem__(self, key):
-        icol = self.table._column_index(key)
-        return tuple.__getitem__(self, icol)
-
-class _JyEnvironment(_MapEnvironment):
-    def __init__(self, grab_output=False):
-        _MapEnvironment.__init__(self)
-        if grab_output:
-            self._out = _MapEnvironment.getOutputStream(self)
-        else:
-            self._out = _System.out
-        self._err = _System.err
-        self._used = {}
-    def getOutputStream(self):
-        return self._out
-    def getErrorStream(self):
-        return self._err
-    def acquireValue(self, param):
-        _MapEnvironment.acquireValue(self, param)
-        self._used[param.getName()] = True
-    def getUnusedArgs(self):
-        return filter(lambda n: n not in self._used, self.getNames())
-
-def _check_unused_args(env):
-    names = env.getUnusedArgs()
-    if (names):
-        raise SyntaxError('Unused STILTS parameters %s' % str(tuple([str(n) for n in names])))
-
-def _check_multi_handler(handler):
-    if not _Class.forName('uk.ac.starlink.table.MultiStarTableWriter').isInstance(handler):
-        raise TypeError('Handler %s cannot write multiple tables' % handler.getFormatName())
-
-def _slice_range(slice, leng):
-    start = slice.start
-    stop = slice.stop
-    step = slice.step
-    if start is None:
-        start = 0
-    elif start < 0:
-        start += leng
-    if stop is None:
-        stop = leng
-    elif stop < 0:
-        stop += leng
-    if step is None:
-        return xrange(start, stop)
-    else:
-        return xrange(start, stop, step)
-
-class _JyOutputStream(_OutputStream):
-    def __init__(self, file):
-        self._file = file
-    def write(self, *args):
-        narg = len(args)
-        if narg is 1:
-            arg0 = args[0]
-            if type(arg0) is type(1):
-                pyarg = chr(arg0)
-            else:
-                pyarg = arg0
-        elif narg is 3:
-            buf, off, leng = args
-            pyarg = buf[off:off + leng].tostring()
-        else:
-            raise SyntaxError('%d args?' % narg)
-        self._file.write(pyarg)
-    def close(self):
-        self._file.close()
-    def flush(self):
-        self._file.flush()
-
-class _JyTableSequence(_TableSequence):
-    def __init__(self, seq):
-        self._iter = iter(seq)
-    def nextTable(self):
-        try:
-            return self._iter.next()
-        except StopIteration:
-            return None
-
-class _JyDataSource(_DataSource):
-    def __init__(self, file):
-        buf = file.read(-1)
-        self._buffer = jarray.array(buf, 'b')
-        if hasattr(file, 'name'):
-            self.setName(file.name)
-    def getRawInputStream(self):
-        return _ByteArrayInputStream(self._buffer)
-def import_star_table(table):
-    '''Imports a StarTable instance for use with JyStilts.
-
-    This factory function takes an instance of the Java class
-    uk.ac.starlink.table.StarTable
-    and returns an instance of a wrapper subclass which has some
-    decorations useful in a python environment.
-    This includes stilts cmd_* and mode_* methods, as well as
-    python-friendly standard methods to make it behave as an
-    iterable, and where possible a container, of data rows,
-    and overloaded addition and multiplication operators
-    with the semantics of concatenation.
-    '''
-    if table.isRandom():
-        return RandomJyStarTable(table)
-    else:
-        return JyStarTable(table)
-
-def _map_env_value(pval):
-    if pval is None:
-        return None
-    elif pval is True:
-        return 'true'
-    elif pval is False:
-        return 'false'
-    elif isinstance(pval, _StarTable):
-        return pval
-    elif _is_container(pval, _StarTable):
-        return jarray.array(pval, _StarTable)
-    else:
-        return str(pval)
-
-def _is_container(value, type):
-    try:
-        if len(value) > 0:
-            for item in value:
-                if not isinstance(item, type):
-                    return False
-            return True
-        else:
-            return False
-    except TypeError:
-        return False
-
-_stilts = _Stilts()
-
-_InvokeUtils.configureLogging(0, False)
-
-_param_alias_dict = {}
-_param_alias_dict['in']='in_'
-
-
-_stilts_lib_version = _stilts.getVersion()
-_stilts_script_version = '2.2-1'
-if _stilts_lib_version != _stilts_script_version:
-    print('WARNING: STILTS script/class library version mismatch (' + _stilts_script_version + '/' + _stilts_lib_version + ').')
-    print('         This may or may not cause trouble.')
-
-def tread(location, fmt='(auto)', random=False):
-    '''Reads a table from a filename, URL or python file object.
-
-    The random argument determines whether random access is required
-    for the table.
-    Setting it true may improve efficiency, but perhaps at the cost
-    of memory usage and load time for large tables.
-
-    The fmt argument must be supplied if the table format cannot
-    be auto-detected.
-
-    In general supplying a filename is preferred; the current implementation
-    may be much more expensive on memory if a python file object is used.
-
-    Auto-detected in-formats:
-       fits-plus
-       colfits-plus
-       colfits-basic
-       fits
-       votable
- 
-    Known in-formats:
-       fits-plus
-       colfits-plus
-       colfits-basic
-       fits
-       votable
-       ascii
-       csv
-       tst
-       ipac
-       wdc
-
-    The result of the function is a JyStilts table object.
-    '''
-    fact = _StarTableFactory(random)
-    if hasattr(location, 'read'):
-        datsrc = _JyDataSource(location)
-        table = fact.makeStarTable(datsrc, fmt)
-    else:
-        table = fact.makeStarTable(location, fmt)
-    return import_star_table(table)
-
-def treads(location, fmt='(auto)', random=False):
-    '''Reads multiple tables from a filename, URL or python file object.
-
-    It only makes sense to use this function rather than tread() if the
-    format is, or may be, one which can contain multiple tables.
-    Generally this means VOTable or FITS or one of their variants.
-
-    The random argument determines whether random access is required
-    for the table.
-    Setting it true may improve efficiency, but perhaps at the cost
-    of memory usage and load time for large tables.
-
-    The fmt argument must be supplied if the table format cannot
-    be auto-detected.
-
-    In general supplying a filename is preferred; the current implementation
-    may be much more expensive on memory if a python file object is used.
-
-    The result of the function is a list of JyStilts table objects.
-    '''
-    fact = _StarTableFactory(random)
-    if hasattr(location, 'read'):
-        datsrc = _JyDataSource(location)
-    else:
-        datsrc = _DataSource.makeDataSource(location)
-    tseq = fact.makeStarTables(datsrc, fmt)
-    tables = _Tables.tableArray(tseq)
-    return map(import_star_table, tables)
-
-def twrite(table, location=None, fmt='(auto)'):
-    '''Writes table to a file.
-
-    The location parameter may give a filename or a
-    python file object open for writing.
-    if it is not supplied, standard output is used.
-
-    The fmt parameter specifies output format.
-    Known output formats:
-       (auto)
-       jdbc
-       fits
-       fits-plus
-       fits-basic
-       fits-var
-       colfits-plus
-       colfits-basic
-       votable-tabledata
-       votable-binary-inline
-       votable-fits-href
-       votable-binary-href
-       votable-fits-inline
-       text
-       ascii
-       csv
-       csv-noheader
-       tst
-       html
-       html-element
-       latex
-       latex-document
-       mirage
-    '''
-    sto = _StarTableOutput()
-    if hasattr(location, 'write') and hasattr(location, 'flush'):
-        ostrm = _JyOutputStream(location)
-        name = getattr(location, 'name', None)
-        handler = sto.getHandler(fmt, name)
-        sto.writeStarTable(table, ostrm, handler)
-    else:
-        if location is None:
-            location = '-'
-        sto.writeStarTable(table, location, fmt)
-
-def twrites(tables, location=None, fmt='(auto)'):
-    '''Writes a sequence of tables to a single container file.
-
-    The tables parameter gives an iterable over JyStilts table objects
-    The location parameter may give a filename or a python file object
-    open for writing.  If it is not supplied,  standard output is used.
-
-    The fmt parameter specifies output format.
-    Note that not all formats can write multiple tables;
-    an error will result if an attempt is made to write
-    multiple tables to a single-table only format.
-    Known multi-table output formats:
-       (auto)
-       fits
-       fits-plus
-       fits-basic
-       fits-var
-       colfits-plus
-       colfits-basic
-       votable-tabledata
-       votable-binary-inline
-       votable-fits-href
-       votable-binary-href
-       votable-fits-inline
-       text
-       html
-       html-element
-    '''
-    sto = _StarTableOutput()
-    tseq = _JyTableSequence(tables)
-    if hasattr(location, 'write') and hasattr(location, 'flush'):
-        ostrm = _JyOutputStream(location)
-        name = getattr(location, 'name', None)
-        handler = sto.getHandler(fmt, name)
-        _check_multi_handler(handler)
-        handler.writeStarTables(tseq, ostrm)
-    else:
-        if location is None:
-            location = '-'
-        handler = sto.getHandler(fmt, location)
-        _check_multi_handler(handler)
-        handler.writeStarTables(tseq, location, sto)
-
-def tfilter(table, cmd):
-    '''Applies a filter operation to a table and returns the result.
-    In most cases, it's better to use one of the cmd_* functions.
-    '''
-    step = _StepFactory.getInstance().createStep(cmd)
-    return import_star_table(step.wrap(table))
-
-def calc(expression, **kwargs):
-    '''\
-Evaluates expressions.
-
-The return value is the output string.
-
-Parameters:
-
-   expression = <expr>
-      An expression to evaluate. The functions in SUN/256 can be
-      used.
-
-   table = <table>
-      Input table.
-'''
-    task = _stilts.getTaskFactory().createObject('calc')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment(grab_output=True)
-    env.setValue('expression', _map_env_value(expression))
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-    txt = env.getOutputText()
-    return str(txt.strip())
-
-def coneskymatch(in_, **kwargs):
-    '''\
-Crossmatches table on sky position against remote cone service.
-
-The return value is the resulting table.
-
-Parameters:
-
-   in_ = <table>
-      Input table.
-
-   ra = <expr>
-      Expression which evaluates to the right ascension in degrees
-      in the ICRS coordinate system for the request at each row of
-      the input table. This will usually be the name or ID of a
-      column in the input table, or a function involving one.
-
-   dec = <expr>
-      Expression which evaluates to the declination in degrees in
-      the ICRS coordinate system for the request at each row of the
-      input table. This will usually be the name or ID of a column
-      in the input table, or a function involving one.
-
-   sr = <expr>
-      Expression which evaluates to the search radius in degrees for
-      the request at each row of the input table. This will often be
-      a constant numerical value, but may be the name or ID of a
-      column in the input table, or a function involving one.
-
-   find = best|all|each
-      Determines which matches are retained.
-
-       * best: Only the matching query table row closest to the
-            input table row will be output. Input table rows with no
-            matches will be omitted.
-       * all: All query table rows which match the input table row
-            will be output. Input table rows with no matches will be
-            omitted.
-       * each: There will be one output table row for each input
-            table row. If matches are found, the closest one from
-            the query table will be output, and in the case of no
-            matches, the query table columns will be blank.
-
-      [Default: all]
-
-   copycols = <colid-list>
-      List of columns from the input table which are to be copied to
-      the output table. Each column identified here will be
-      prepended to the columns of the combined output table, and its
-      value for each row taken from the input table row which
-      provided the parameters of the query which produced it. See
-      SUN/256 for list syntax. The default setting is "*", which
-      means that all columns from the input table are included in
-      the output.
-
-      [Default: *]
-
-   scorecol = <col-name>
-      Gives the name of a column in the output table to contain the
-      distance between the requested central position and the actual
-      position of the returned row. The distance returned is an
-      angular distance in degrees. If a null value is chosen, no
-      distance column will appear in the output table.
-
-      [Default: Separation]
-
-   parallel = <n>
-      Allows multiple cone searches to be performed concurrently. If
-      set to the default value, 1, the cone query corresponding to
-      the first row of the input table will be dispatched, when that
-      is completed the query corresponding to the second row will be
-      dispatched, and so on. If set to <n>, then queries will be
-      overlapped in such a way that up to approximately <n> may be
-      running at any one time. Whether this is a good idea, and what
-      might be a sensible maximum value for <n>, depends on the
-      characteristics of the service being queried.
-
-      [Default: 1]
-
-   erract = abort|ignore|retry|retry<n>
-      Determines what will happen if any of the individual cone
-      search requests fails. By default the task aborts. That may be
-      the best thing to do, but for unreliable or poorly implemented
-      services you may find that some searches fail and others
-      succeed so it can be best to continue operation in the face of
-      a few failures. The options are:
-
-       * abort: failure of any query terminates the task
-       * ignore: failure of a query is treated the same as a query
-            which returns no rows
-       * retry: failed queries are retried until they succeed; use
-            with care - if the failure is for some good, or at least
-            reproducible reason this could prevent the task from
-            ever completing
-       * retry<n>: failed queries are retried at most a fixed number
-            <n> of times If they still fail the task terminates.
-
-      [Default: abort]
-
-   ostream = true|false
-      If set true, this will cause the operation to stream on
-      output, so that the output table is built up as the results
-      are obtained from the cone search service. The disadvantage of
-      this is that some output modes and formats need multiple
-      passes through the data to work, so depending on the output
-      destination, the operation may fail if this is set. Use with
-      care (or be prepared for the operation to fail).
-
-      [Default: false]
-
-   fixcols = none|dups|all
-      Determines how input columns are renamed before use in the
-      output table. The choices are:
-
-       * none: columns are not renamed
-       * dups: columns which would otherwise have duplicate names in
-            the output will be renamed to indicate which table they
-            came from
-       * all: all columns will be renamed to indicate which table
-            they came from
-
-      If columns are renamed, the new ones are determined by
-      suffix* parameters.
-
-      [Default: dups]
-
-   suffix0 = <label>
-      If the fixcols parameter is set so that input columns are
-      renamed for insertion into the output table, this parameter
-      determines how the renaming is done. It gives a suffix which
-      is appended to all renamed columns from the input table.
-
-      [Default: _0]
-
-   suffix1 = <label>
-      If the fixcols parameter is set so that input columns are
-      renamed for insertion into the output table, this parameter
-      determines how the renaming is done. It gives a suffix which
-      is appended to all renamed columns from the cone result table.
-
-      [Default: _1]
-
-   servicetype = cone|sia|ssa
-      Selects the type of data access service to contact. Most
-      commonly this will be the Cone Search service itself, but
-      there are one or two other possibilities:
-
-       * cone: Cone Search protocol - returns a table of objects
-            found near each location. See Cone Search standard.
-       * sia: Simple Image Access protocol - returns a table of
-            images near each location. See SIA standard.
-       * ssa: Simple Spectral Access protocol - returns a table of
-            spectra near each location. See SSA standard.
-
-      [Default: cone]
-
-   serviceurl = <value>
-      The base part of a URL which defines the queries to be made.
-      Additional parameters will be appended to this using CGI
-      syntax ("name=value", separated by '&' characters). If this
-      value does not end in either a '?' or a '&', one will be added
-      as appropriate.
-
-      See SUN/256 for discussion of how to locate service URLs
-      corresponding to given datasets.
-
-   verb = 1|2|3
-      Verbosity level of the tables returned by the query service. A
-      value of 1 indicates the bare minimum and 3 indicates all
-      available information.
-
-   dataformat = <value>
-      Indicates the format of data objects described in the returned
-      table. The meaning of this is dependent on the value of the
-      servicetype parameter:
-
-       * servicetype=cone: not used
-       * servicetype=sia: gives the MIME type of images referenced
-            in the output table, also special values "GRAPHIC" and "
-            ALL".(value of the SIA FORMAT parameter)
-       * servicetype=ssa: gives the MIME type of spectra referenced
-            in the output table, also special values "votable", "
-            fits", "compliant", "graphic", "all", and others (value
-            of the SSA FORMAT parameter).
-
-   emptyok = true|false
-      Whether the table metadata which is returned from a search
-      result with zero rows is to be believed. According to the
-      spirit, though not the letter, of the cone search standard, a
-      cone search service which returns no data ought nevertheless
-      to return the correct column headings. Unfortunately this is
-      not always the case. If this parameter is set true, it is
-      assumed that the service behaves properly in this respect; if
-      it does not an error may result. In that case, set this
-      parameter false. A consequence of setting it false is that in
-      the event of no results being returned, the task will return
-      no table at all, rather than an empty one.
-
-      [Default: true]
-'''
-    import uk.ac.starlink.ttools.task.MultiCone
-    class _coneskymatch_task(uk.ac.starlink.ttools.task.MultiCone):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.MultiCone.__init__(self)
-    task = _coneskymatch_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    env.setValue('in_', _map_env_value(in_))
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def funcs(**kwargs):
-    '''\
-Browses functions used by algebraic expression langauage.
-'''
-    task = _stilts.getTaskFactory().createObject('funcs')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def regquery(**kwargs):
-    '''\
-Queries the VO registry.
-
-The return value is the resulting table.
-
-Parameters:
-
-   query = <value>
-      Text of an ADQL WHERE clause targeted at the VOResource 1.0
-      schema defining which resource records you wish to retrieve
-      from the registry. Some examples are:
-
-       * @xsi:type like '%Organisation%'
-       * capability/@standardID = 'ivo://ivoa.net/std/ConeSearch'
-            and title like '%SDSS%'
-       * curation/publisher like 'CDS%' and title like '%galax%'
-
-      A full description of ADQL syntax and of the VOResource schema
-      is well beyond the scope of this documentation, but in general
-      you want to use <field-name> like '<value>' where '%' is a
-      wildcard character. Logical operators and and or and
-      parentheses can be used to group and combine expressions. To
-      work out the various <field-name>s you need to look at the
-      VOResource 1.0 schema; you can find some more discussion in
-      the documentation of the NVO IVOARegistry package.
-
-   regurl = <value>
-      The URL of a SOAP endpoint which provides a VOResource1.0 IVOA
-      registry service. Some known suitable registry endpoints at
-      time of writing are
-
-       *
-            http://registry.astrogrid.org/astrogrid-registry/services/RegistryQueryv1_0
-       * http://registry.euro-vo.org/services/RegistrySearch
-       * http://nvo.stsci.edu/vor10/ristandardservice.asmx
-
-      [Default:
-      http://registry.astrogrid.org/astrogrid-registry/services/RegistryQueryv1_0
-      ]
-'''
-    import uk.ac.starlink.ttools.task.RegQuery
-    class _regquery_task(uk.ac.starlink.ttools.task.RegQuery):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.RegQuery.__init__(self)
-    task = _regquery_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def plot2d(**kwargs):
-    '''\
-2D Scatter Plot.
-
-Parameters:
-
-   xpix = <int-value>
-      The width of the output graphic in pixels.
-
-      [Default: 400]
-
-   ypix = <int-value>
-      The height of the output graphic in pixels.
-
-      [Default: 300]
-
-   font = dialog|serif|...
-      Determines the font that will be used for textual annotation
-      of the plot, including axes etc. The available names are:
-
-       * bitstream_charter
-       * bitstream_vera_sans
-       * bitstream_vera_sans_mono
-       * bitstream_vera_serif
-       * century_schoolbook_l
-       * courier
-       * courier_10_pitch
-       * cursor
-       * dejavu_lgc_sans
-       * dejavu_lgc_sans_condensed
-       * dejavu_lgc_sans_light
-       * dejavu_lgc_sans_mono
-       * dejavu_lgc_serif
-       * dejavu_lgc_serif_condensed
-       * dialog
-       * dialoginput
-       * dingbats
-       * hershey
-       * liberation_mono
-       * liberation_sans
-       * liberation_serif
-       * lucida_bright
-       * lucida_sans
-       * lucida_sans_typewriter
-       * luxi_mono
-       * luxi_sans
-       * luxi_serif
-       * monospaced
-       * nimbus_mono_l
-       * nimbus_roman_no9_l
-       * nimbus_sans_l
-       * nimbus_sans_l_condensed
-       * sansserif
-       * serif
-       * standard_symbols_l
-       * urw_bookman_l
-       * urw_chancery_l
-       * urw_gothic_l
-       * urw_palladio_l
-       * utopia
-
-      [Default: dialog]
-
-   fontsize = <int-value>
-      Sets the font size used for plot annotations.
-
-      [Default: 12]
-
-   fontstyle = plain|bold|italic|bold-italic
-      Gives a style in which the font is to be applied for plot
-      annotations. Options are plain, bold, italic and bold-italic.
-
-      [Default: plain]
-
-   legend = true|false
-      Determines whether a legend showing which plotting style is
-      used for each data set. Defaults to true if there is more than
-      one set, false otherwise.
-
-   title = <value>
-      A one-line title to display at the top of the plot.
-
-   omode = swing|out|cgi|discard|auto
-      Determines how the drawn plot will be output.
-
-       * swing: Plot will be displayed in a window on the screen.
-       * out: Plot will be written to a file given by out using the
-            graphics format given by ofmt.
-       * cgi: Plot will be written in a way suitable for CGI use
-            direct from a web server. The output is in the graphics
-            format given by ofmt, preceded by a suitable
-            "Content-type" declaration.
-       * discard: Plot is drawn, but discarded. There is no output.
-       * auto: Behaves as swing or out mode depending on presence of
-            out parameter
-
-      [Default: auto]
-
-   out = <out-file>
-      The location of the output file. This is usually a filename to
-      write to. If it is equal to the special value "-" the output
-      will be written to standard output.
-
-   ofmt = png|gif|jpeg|pdf|eps|eps-gzip
-      Graphics format in which the plot is written to the output
-      file. One of:
-
-       * png: image/png format
-       * gif: image/gif format
-       * jpeg: image/jpeg format
-       * pdf: application/pdf format
-       * eps: application/postscript format
-       * eps-gzip: application/postscript (gzip) format
-
-      May default to a sensible value depending on the filename
-      given by out.
-
-   inN = <table>
-      Input table.
-
-   xdataN = <expr>
-      Gives a column name or expression for the x axis data for
-      table N. The expression is a numeric algebraic expression
-      based on column names as described in SUN/256
-
-   ydataN = <expr>
-      Gives a column name or expression for the y axis data for
-      table N. The expression is a numeric algebraic expression
-      based on column names as described in SUN/256
-
-   auxdataN = <expr>
-      Gives a column name or expression for the aux axis data for
-      table N. The expression is a numeric algebraic expression
-      based on column names as described in SUN/256
-
-   xlo = <float-value>
-      The lower limit for the plotted x axis. If not set, a value
-      will be chosen which is low enough to accommodate all the
-      data.
-
-   ylo = <float-value>
-      The lower limit for the plotted y axis. If not set, a value
-      will be chosen which is low enough to accommodate all the
-      data.
-
-   auxlo = <float-value>
-      The lower limit for the plotted aux axis. If not set, a value
-      will be chosen which is low enough to accommodate all the
-      data.
-
-   xhi = <float-value>
-      The upper limit for the plotted x axis. If not set, a value
-      will be chosen which is high enough to accommodate all the
-      data.
-
-   yhi = <float-value>
-      The upper limit for the plotted y axis. If not set, a value
-      will be chosen which is high enough to accommodate all the
-      data.
-
-   auxhi = <float-value>
-      The upper limit for the plotted aux axis. If not set, a value
-      will be chosen which is high enough to accommodate all the
-      data.
-
-   xlog = true|false
-      If false (the default), the scale on the x axis is linear; if
-      true it is logarithmic.
-
-      [Default: false]
-
-   ylog = true|false
-      If false (the default), the scale on the y axis is linear; if
-      true it is logarithmic.
-
-      [Default: false]
-
-   auxlog = true|false
-      If false (the default), the scale on the aux axis is linear;
-      if true it is logarithmic.
-
-      [Default: false]
-
-   xflip = true|false
-      If set true, the scale on the x axis will increase in the
-      opposite sense from usual (e.g. right to left rather than left
-      to right).
-
-      [Default: false]
-
-   yflip = true|false
-      If set true, the scale on the y axis will increase in the
-      opposite sense from usual (e.g. right to left rather than left
-      to right).
-
-      [Default: false]
-
-   auxflip = true|false
-      If set true, the scale on the aux axis will increase in the
-      opposite sense from usual (e.g. right to left rather than left
-      to right).
-
-      [Default: false]
-
-   xlabel = <value>
-      Specifies a label to be used for annotating axis x. A default
-      values based on the plotted data will be used if no value is
-      supplied for this parameter.
-
-   ylabel = <value>
-      Specifies a label to be used for annotating axis y. A default
-      values based on the plotted data will be used if no value is
-      supplied for this parameter.
-
-   auxlabel = <value>
-      Specifies a label to be used for annotating axis aux. A
-      default values based on the plotted data will be used if no
-      value is supplied for this parameter.
-
-   xerrorN = <expr>|[<lo-expr>],[<hi-expr>]
-      Gives expressions for the errors on X coordinates for table N.
-      The following forms are permitted:
-
-       * <expr>: symmetric error value
-       * <lo-expr>,<hi-expr>:distinct lower and upper error values
-       * <lo-expr>,: lower error value only
-       * ,<hi-expr>: upper error value only
-       * null: no errors
-
-      The expression in each case is a numeric algebraic expression
-      based on column names as described in SUN/256.
-
-   yerrorN = <expr>|[<lo-expr>],[<hi-expr>]
-      Gives expressions for the errors on Y coordinates for table N.
-      The following forms are permitted:
-
-       * <expr>: symmetric error value
-       * <lo-expr>,<hi-expr>:distinct lower and upper error values
-       * <lo-expr>,: lower error value only
-       * ,<hi-expr>: upper error value only
-       * null: no errors
-
-      The expression in each case is a numeric algebraic expression
-      based on column names as described in SUN/256.
-
-   auxshader = rainbow|pastel|...
-      Determines how data from auxiliary axes will be displayed.
-      Generally this is some kind of colour ramp. These are the
-      available colour fixing options:
-
-       * rainbow
-       * pastel
-       * standard
-       * heat
-       * colour
-       * hue
-       * greyscale
-       * red-blue
-
-      and these are the available colour modifying options:
-
-       * hsv_h
-       * hsv_s
-       * hsv_v
-       * intensity
-       * rgb_red
-       * rgb_green
-       * rgb_blue
-       * yuv_y
-       * yuv_u
-       * yuv_v
-       * transparency
-
-      [Default: rainbow]
-
-   txtlabelN = <value>
-      Gives an expression which will label each plotted point. If
-      given, the text (or number) resulting from evaluating the
-      expression will be written near each point which is plotted.
-
-   subsetNS = <expr>
-      Gives the selection criterion for the subset labelled "NS".
-      This is a boolean expression which may be the name of a
-      boolean-valued column or any other boolean-valued expression.
-      Rows for which the expression evaluates true will be included
-      in the subset, and those for which it evaluates false will
-      not.
-
-   nameNS = <value>
-      Provides a name to use for a subset with the symbolic label
-      NS. This name will be used for display in the legend, if one
-      is displayed.
-
-   colourNS = <rrggbb>|red|blue|...
-      Defines the colour of markers plotted. The value may be a
-      6-digit hexadecimal number giving red, green and blue
-      intensities, e.g. "ff00ff" for magenta. Alternatively it may
-      be the name of one of the pre-defined colours. These are
-      currently red, blue, green, grey, magenta, cyan, orange, pink,
-      yellow, black and white.
-
-      For most purposes, either the American or the British spelling
-      is accepted for this parameter name.
-
-   shapeNS = filled_circle|open_circle|...
-      Defines the shapes for the markers that are plotted in data
-      set NS. The following shapes are available:
-
-       * filled_circle
-       * open_circle
-       * cross
-       * x
-       * open_square
-       * open_diamond
-       * open_triangle_up
-       * open_triangle_down
-       * filled_square
-       * filled_diamond
-       * filled_triangle_up
-       * filled_triangle_down
-
-   sizeNS = <int-value>
-      Defines the marker size in pixels for markers plotted in data
-      set NS. If the value is negative, an attempt will be made to
-      use a suitable size according to how many points there are to
-      be plotted.
-
-      [Default: -1]
-
-   transparencyNS = <int-value>
-      Determines the transparency of plotted markers for data set
-      NS. A value of <n> means that opacity is only achieved (the
-      background is only blotted out) when <n> pixels of this colour
-      have been plotted on top of each other.
-
-      The minimum value is 1, which means opaque markers.
-
-   lineNS = DotToDot|LinearRegression
-      Determines what line if any will be plotted along with the
-      data points. The options are:
-
-       * null: No line is plotted.
-       * DotToDot: Each point is joined to the next one in sequence
-            by a straight line.
-       * LinearRegression: A linear regression line is plotted based
-            on all the points which are visible in the plot. Note
-            that the regression coefficients take no account of
-            points out of the visible range.
-
-   hideNS = true|false
-      Indicates whether the actual markers plotted for each point
-      should be hidden. Normally this is false, but you may want to
-      set it to true if the point positions are being revealed in
-      some other way, for instance by error markers or lines drawn
-      between them.
-
-      [Default: false]
-
-   errstyleNS = lines|capped_lines|...
-      Defines the way in which error bars (or ellipses, or...) will
-      be represented for data set NS if errors are being displayed.
-      The following options are available:
-
-       * none
-       * lines
-       * capped_lines
-       * caps
-       * arrows
-       * ellipse
-       * crosshair_ellipse
-       * rectangle
-       * crosshair_rectangle
-       * filled_ellipse
-       * filled_rectangle
-
-      [Default: lines]
-
-   grid = true|false
-      If true, grid lines are drawn on the plot. If false, they are
-      absent.
-
-      [Default: true]
-
-   antialias = true|false
-      Controls whether lines are drawn using antialiasing, where
-      applicable. If lines are drawn to a bitmapped-type graphics
-      output format setting this parameter to true smooths the lines
-      out by using gradations of colour for diagonal lines, and
-      setting it false simply sets each pixel in the line to on or
-      off. For vector-type graphics output formats, or for cases in
-      which no diagonal lines are drawn, the setting of this
-      parameter has no effect. Setting it true may slow the plot
-      down slightly.
-
-      [Default: true]
-
-   sequence = <suffix>,<suffix>,...
-      Can be used to control the sequence in which different
-      datasets and subsets are plotted. This will affect which
-      symbols are plotted on top of, and so potentially obscure,
-      which other ones. The value of this parameter is a
-      comma-separated list of the "NS" suffixes which appear on the
-      parameters which apply to subsets. The sets which are named
-      will be plotted in order, so the first-named one will be at
-      the bottom (most likely to be obscured). Note that if this
-      parameter is supplied, then only those sets which are named
-      will be plotted, so this parameter may also be used to
-      restrict which plots appear (though it may not be the most
-      efficient way of doing this). If no explicit value is supplied
-      for this parameter, sets will be plotted in some sequence
-      decided by STILTS (probably alphabetic by suffix).
-'''
-    task = _stilts.getTaskFactory().createObject('plot2d')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def plot3d(**kwargs):
-    '''\
-3D Scatter Plot.
-
-Parameters:
-
-   xpix = <int-value>
-      The width of the output graphic in pixels.
-
-      [Default: 300]
-
-   ypix = <int-value>
-      The height of the output graphic in pixels.
-
-      [Default: 300]
-
-   font = dialog|serif|...
-      Determines the font that will be used for textual annotation
-      of the plot, including axes etc. The available names are:
-
-       * bitstream_charter
-       * bitstream_vera_sans
-       * bitstream_vera_sans_mono
-       * bitstream_vera_serif
-       * century_schoolbook_l
-       * courier
-       * courier_10_pitch
-       * cursor
-       * dejavu_lgc_sans
-       * dejavu_lgc_sans_condensed
-       * dejavu_lgc_sans_light
-       * dejavu_lgc_sans_mono
-       * dejavu_lgc_serif
-       * dejavu_lgc_serif_condensed
-       * dialog
-       * dialoginput
-       * dingbats
-       * hershey
-       * liberation_mono
-       * liberation_sans
-       * liberation_serif
-       * lucida_bright
-       * lucida_sans
-       * lucida_sans_typewriter
-       * luxi_mono
-       * luxi_sans
-       * luxi_serif
-       * monospaced
-       * nimbus_mono_l
-       * nimbus_roman_no9_l
-       * nimbus_sans_l
-       * nimbus_sans_l_condensed
-       * sansserif
-       * serif
-       * standard_symbols_l
-       * urw_bookman_l
-       * urw_chancery_l
-       * urw_gothic_l
-       * urw_palladio_l
-       * utopia
-
-      [Default: dialog]
-
-   fontsize = <int-value>
-      Sets the font size used for plot annotations.
-
-      [Default: 12]
-
-   fontstyle = plain|bold|italic|bold-italic
-      Gives a style in which the font is to be applied for plot
-      annotations. Options are plain, bold, italic and bold-italic.
-
-      [Default: plain]
-
-   legend = true|false
-      Determines whether a legend showing which plotting style is
-      used for each data set. Defaults to true if there is more than
-      one set, false otherwise.
-
-   title = <value>
-      A one-line title to display at the top of the plot.
-
-   omode = swing|out|cgi|discard|auto
-      Determines how the drawn plot will be output.
-
-       * swing: Plot will be displayed in a window on the screen.
-       * out: Plot will be written to a file given by out using the
-            graphics format given by ofmt.
-       * cgi: Plot will be written in a way suitable for CGI use
-            direct from a web server. The output is in the graphics
-            format given by ofmt, preceded by a suitable
-            "Content-type" declaration.
-       * discard: Plot is drawn, but discarded. There is no output.
-       * auto: Behaves as swing or out mode depending on presence of
-            out parameter
-
-      [Default: auto]
-
-   out = <out-file>
-      The location of the output file. This is usually a filename to
-      write to. If it is equal to the special value "-" the output
-      will be written to standard output.
-
-   ofmt = png|gif|jpeg|pdf|eps|eps-gzip
-      Graphics format in which the plot is written to the output
-      file. One of:
-
-       * png: image/png format
-       * gif: image/gif format
-       * jpeg: image/jpeg format
-       * pdf: application/pdf format
-       * eps: application/postscript format
-       * eps-gzip: application/postscript (gzip) format
-
-      May default to a sensible value depending on the filename
-      given by out.
-
-   inN = <table>
-      Input table.
-
-   xdataN = <expr>
-      Gives a column name or expression for the x axis data for
-      table N. The expression is a numeric algebraic expression
-      based on column names as described in SUN/256
-
-   ydataN = <expr>
-      Gives a column name or expression for the y axis data for
-      table N. The expression is a numeric algebraic expression
-      based on column names as described in SUN/256
-
-   zdataN = <expr>
-      Gives a column name or expression for the z axis data for
-      table N. The expression is a numeric algebraic expression
-      based on column names as described in SUN/256
-
-   auxdataN = <expr>
-      Gives a column name or expression for the aux axis data for
-      table N. The expression is a numeric algebraic expression
-      based on column names as described in SUN/256
-
-   xlo = <float-value>
-      The lower limit for the plotted x axis. If not set, a value
-      will be chosen which is low enough to accommodate all the
-      data.
-
-   ylo = <float-value>
-      The lower limit for the plotted y axis. If not set, a value
-      will be chosen which is low enough to accommodate all the
-      data.
-
-   zlo = <float-value>
-      The lower limit for the plotted z axis. If not set, a value
-      will be chosen which is low enough to accommodate all the
-      data.
-
-   auxlo = <float-value>
-      The lower limit for the plotted aux axis. If not set, a value
-      will be chosen which is low enough to accommodate all the
-      data.
-
-   xhi = <float-value>
-      The upper limit for the plotted x axis. If not set, a value
-      will be chosen which is high enough to accommodate all the
-      data.
-
-   yhi = <float-value>
-      The upper limit for the plotted y axis. If not set, a value
-      will be chosen which is high enough to accommodate all the
-      data.
-
-   zhi = <float-value>
-      The upper limit for the plotted z axis. If not set, a value
-      will be chosen which is high enough to accommodate all the
-      data.
-
-   auxhi = <float-value>
-      The upper limit for the plotted aux axis. If not set, a value
-      will be chosen which is high enough to accommodate all the
-      data.
-
-   xlog = true|false
-      If false (the default), the scale on the x axis is linear; if
-      true it is logarithmic.
-
-      [Default: false]
-
-   ylog = true|false
-      If false (the default), the scale on the y axis is linear; if
-      true it is logarithmic.
-
-      [Default: false]
-
-   zlog = true|false
-      If false (the default), the scale on the z axis is linear; if
-      true it is logarithmic.
-
-      [Default: false]
-
-   auxlog = true|false
-      If false (the default), the scale on the aux axis is linear;
-      if true it is logarithmic.
-
-      [Default: false]
-
-   xflip = true|false
-      If set true, the scale on the x axis will increase in the
-      opposite sense from usual (e.g. right to left rather than left
-      to right).
-
-      [Default: false]
-
-   yflip = true|false
-      If set true, the scale on the y axis will increase in the
-      opposite sense from usual (e.g. right to left rather than left
-      to right).
-
-      [Default: false]
-
-   zflip = true|false
-      If set true, the scale on the z axis will increase in the
-      opposite sense from usual (e.g. right to left rather than left
-      to right).
-
-      [Default: false]
-
-   auxflip = true|false
-      If set true, the scale on the aux axis will increase in the
-      opposite sense from usual (e.g. right to left rather than left
-      to right).
-
-      [Default: false]
-
-   xlabel = <value>
-      Specifies a label to be used for annotating axis x. A default
-      values based on the plotted data will be used if no value is
-      supplied for this parameter.
-
-   ylabel = <value>
-      Specifies a label to be used for annotating axis y. A default
-      values based on the plotted data will be used if no value is
-      supplied for this parameter.
-
-   zlabel = <value>
-      Specifies a label to be used for annotating axis z. A default
-      values based on the plotted data will be used if no value is
-      supplied for this parameter.
-
-   auxlabel = <value>
-      Specifies a label to be used for annotating axis aux. A
-      default values based on the plotted data will be used if no
-      value is supplied for this parameter.
-
-   xerrorN = <expr>|[<lo-expr>],[<hi-expr>]
-      Gives expressions for the errors on X coordinates for table N.
-      The following forms are permitted:
-
-       * <expr>: symmetric error value
-       * <lo-expr>,<hi-expr>:distinct lower and upper error values
-       * <lo-expr>,: lower error value only
-       * ,<hi-expr>: upper error value only
-       * null: no errors
-
-      The expression in each case is a numeric algebraic expression
-      based on column names as described in SUN/256.
-
-   yerrorN = <expr>|[<lo-expr>],[<hi-expr>]
-      Gives expressions for the errors on Y coordinates for table N.
-      The following forms are permitted:
-
-       * <expr>: symmetric error value
-       * <lo-expr>,<hi-expr>:distinct lower and upper error values
-       * <lo-expr>,: lower error value only
-       * ,<hi-expr>: upper error value only
-       * null: no errors
-
-      The expression in each case is a numeric algebraic expression
-      based on column names as described in SUN/256.
-
-   zerrorN = <expr>|[<lo-expr>],[<hi-expr>]
-      Gives expressions for the errors on Z coordinates for table N.
-      The following forms are permitted:
-
-       * <expr>: symmetric error value
-       * <lo-expr>,<hi-expr>:distinct lower and upper error values
-       * <lo-expr>,: lower error value only
-       * ,<hi-expr>: upper error value only
-       * null: no errors
-
-      The expression in each case is a numeric algebraic expression
-      based on column names as described in SUN/256.
-
-   auxshader = rainbow|pastel|...
-      Determines how data from auxiliary axes will be displayed.
-      Generally this is some kind of colour ramp. These are the
-      available colour fixing options:
-
-       * rainbow
-       * pastel
-       * standard
-       * heat
-       * colour
-       * hue
-       * greyscale
-       * red-blue
-
-      and these are the available colour modifying options:
-
-       * hsv_h
-       * hsv_s
-       * hsv_v
-       * intensity
-       * rgb_red
-       * rgb_green
-       * rgb_blue
-       * yuv_y
-       * yuv_u
-       * yuv_v
-       * transparency
-
-      [Default: rainbow]
-
-   txtlabelN = <value>
-      Gives an expression which will label each plotted point. If
-      given, the text (or number) resulting from evaluating the
-      expression will be written near each point which is plotted.
-
-   subsetNS = <expr>
-      Gives the selection criterion for the subset labelled "NS".
-      This is a boolean expression which may be the name of a
-      boolean-valued column or any other boolean-valued expression.
-      Rows for which the expression evaluates true will be included
-      in the subset, and those for which it evaluates false will
-      not.
-
-   nameNS = <value>
-      Provides a name to use for a subset with the symbolic label
-      NS. This name will be used for display in the legend, if one
-      is displayed.
-
-   colourNS = <rrggbb>|red|blue|...
-      Defines the colour of markers plotted. The value may be a
-      6-digit hexadecimal number giving red, green and blue
-      intensities, e.g. "ff00ff" for magenta. Alternatively it may
-      be the name of one of the pre-defined colours. These are
-      currently red, blue, green, grey, magenta, cyan, orange, pink,
-      yellow, black and white.
-
-      For most purposes, either the American or the British spelling
-      is accepted for this parameter name.
-
-   shapeNS = filled_circle|open_circle|...
-      Defines the shapes for the markers that are plotted in data
-      set NS. The following shapes are available:
-
-       * filled_circle
-       * open_circle
-       * cross
-       * x
-       * open_square
-       * open_diamond
-       * open_triangle_up
-       * open_triangle_down
-       * filled_square
-       * filled_diamond
-       * filled_triangle_up
-       * filled_triangle_down
-
-   sizeNS = <int-value>
-      Defines the marker size in pixels for markers plotted in data
-      set NS. If the value is negative, an attempt will be made to
-      use a suitable size according to how many points there are to
-      be plotted.
-
-      [Default: -1]
-
-   transparencyNS = <int-value>
-      Determines the transparency of plotted markers for data set
-      NS. A value of <n> means that opacity is only achieved (the
-      background is only blotted out) when <n> pixels of this colour
-      have been plotted on top of each other.
-
-      The minimum value is 1, which means opaque markers.
-
-   lineNS = DotToDot|LinearRegression
-      Determines what line if any will be plotted along with the
-      data points. The options are:
-
-       * null: No line is plotted.
-       * DotToDot: Each point is joined to the next one in sequence
-            by a straight line.
-       * LinearRegression: A linear regression line is plotted based
-            on all the points which are visible in the plot. Note
-            that the regression coefficients take no account of
-            points out of the visible range.
-
-   hideNS = true|false
-      Indicates whether the actual markers plotted for each point
-      should be hidden. Normally this is false, but you may want to
-      set it to true if the point positions are being revealed in
-      some other way, for instance by error markers or lines drawn
-      between them.
-
-      [Default: false]
-
-   errstyleNS = lines|capped_lines|...
-      Defines the way in which error bars (or ellipses, or...) will
-      be represented for data set NS if errors are being displayed.
-      The following options are available:
-
-       * none
-       * lines
-       * capped_lines
-       * caps
-       * arrows
-       * cuboid
-       * ellipse
-       * crosshair_ellipse
-       * rectangle
-       * crosshair_rectangle
-       * filled_ellipse
-       * filled_rectangle
-
-      [Default: lines]
-
-   grid = true|false
-      If true, grid lines are drawn on the plot. If false, they are
-      absent.
-
-      [Default: true]
-
-   antialias = true|false
-      Controls whether lines are drawn using antialiasing, where
-      applicable. If lines are drawn to a bitmapped-type graphics
-      output format setting this parameter to true smooths the lines
-      out by using gradations of colour for diagonal lines, and
-      setting it false simply sets each pixel in the line to on or
-      off. For vector-type graphics output formats, or for cases in
-      which no diagonal lines are drawn, the setting of this
-      parameter has no effect. Setting it true may slow the plot
-      down slightly.
-
-      [Default: true]
-
-   sequence = <suffix>,<suffix>,...
-      Can be used to control the sequence in which different
-      datasets and subsets are plotted. This will affect which
-      symbols are plotted on top of, and so potentially obscure,
-      which other ones. The value of this parameter is a
-      comma-separated list of the "NS" suffixes which appear on the
-      parameters which apply to subsets. The sets which are named
-      will be plotted in order, so the first-named one will be at
-      the bottom (most likely to be obscured). Note that if this
-      parameter is supplied, then only those sets which are named
-      will be plotted, so this parameter may also be used to
-      restrict which plots appear (though it may not be the most
-      efficient way of doing this). If no explicit value is supplied
-      for this parameter, sets will be plotted in some sequence
-      decided by STILTS (probably alphabetic by suffix).
-
-   fog = <float-value>
-      Sets the level of fogging used to provide a visual indication
-      of depth. Object plotted further away from the viewer appear
-      more washed-out by a white fog. The default value gives a bit
-      of fogging; increase it to make the fog thicker, or set to
-      zero if no fogging is required.
-
-      [Default: 1.0]
-
-   phi = <float-value>
-      Angle in degrees through which the 3D plot is rotated abound
-      the Z axis prior to drawing.
-
-      [Default: 30.0]
-
-   theta = <float-value>
-      Angle in degrees through which the 3D plot is rotated towards
-      the viewer (i.e. about the horizontal axis of the viewing
-      plane) prior to drawing.
-
-      [Default: 15.0]
-'''
-    task = _stilts.getTaskFactory().createObject('plot3d')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def plothist(**kwargs):
-    '''\
-Histogram.
-
-Parameters:
-
-   xpix = <int-value>
-      The width of the output graphic in pixels.
-
-      [Default: 400]
-
-   ypix = <int-value>
-      The height of the output graphic in pixels.
-
-      [Default: 300]
-
-   font = dialog|serif|...
-      Determines the font that will be used for textual annotation
-      of the plot, including axes etc. The available names are:
-
-       * bitstream_charter
-       * bitstream_vera_sans
-       * bitstream_vera_sans_mono
-       * bitstream_vera_serif
-       * century_schoolbook_l
-       * courier
-       * courier_10_pitch
-       * cursor
-       * dejavu_lgc_sans
-       * dejavu_lgc_sans_condensed
-       * dejavu_lgc_sans_light
-       * dejavu_lgc_sans_mono
-       * dejavu_lgc_serif
-       * dejavu_lgc_serif_condensed
-       * dialog
-       * dialoginput
-       * dingbats
-       * hershey
-       * liberation_mono
-       * liberation_sans
-       * liberation_serif
-       * lucida_bright
-       * lucida_sans
-       * lucida_sans_typewriter
-       * luxi_mono
-       * luxi_sans
-       * luxi_serif
-       * monospaced
-       * nimbus_mono_l
-       * nimbus_roman_no9_l
-       * nimbus_sans_l
-       * nimbus_sans_l_condensed
-       * sansserif
-       * serif
-       * standard_symbols_l
-       * urw_bookman_l
-       * urw_chancery_l
-       * urw_gothic_l
-       * urw_palladio_l
-       * utopia
-
-      [Default: dialog]
-
-   fontsize = <int-value>
-      Sets the font size used for plot annotations.
-
-      [Default: 12]
-
-   fontstyle = plain|bold|italic|bold-italic
-      Gives a style in which the font is to be applied for plot
-      annotations. Options are plain, bold, italic and bold-italic.
-
-      [Default: plain]
-
-   legend = true|false
-      Determines whether a legend showing which plotting style is
-      used for each data set. Defaults to true if there is more than
-      one set, false otherwise.
-
-   title = <value>
-      A one-line title to display at the top of the plot.
-
-   omode = swing|out|cgi|discard|auto
-      Determines how the drawn plot will be output.
-
-       * swing: Plot will be displayed in a window on the screen.
-       * out: Plot will be written to a file given by out using the
-            graphics format given by ofmt.
-       * cgi: Plot will be written in a way suitable for CGI use
-            direct from a web server. The output is in the graphics
-            format given by ofmt, preceded by a suitable
-            "Content-type" declaration.
-       * discard: Plot is drawn, but discarded. There is no output.
-       * auto: Behaves as swing or out mode depending on presence of
-            out parameter
-
-      [Default: auto]
-
-   out = <out-file>
-      The location of the output file. This is usually a filename to
-      write to. If it is equal to the special value "-" the output
-      will be written to standard output.
-
-   ofmt = png|gif|jpeg|pdf|eps|eps-gzip
-      Graphics format in which the plot is written to the output
-      file. One of:
-
-       * png: image/png format
-       * gif: image/gif format
-       * jpeg: image/jpeg format
-       * pdf: application/pdf format
-       * eps: application/postscript format
-       * eps-gzip: application/postscript (gzip) format
-
-      May default to a sensible value depending on the filename
-      given by out.
-
-   inN = <table>
-      Input table.
-
-   xdataN = <expr>
-      Gives a column name or expression for the x axis data for
-      table N. The expression is a numeric algebraic expression
-      based on column names as described in SUN/256
-
-   xlo = <float-value>
-      The lower limit for the plotted x axis. If not set, a value
-      will be chosen which is low enough to accommodate all the
-      data.
-
-   xhi = <float-value>
-      The upper limit for the plotted x axis. If not set, a value
-      will be chosen which is high enough to accommodate all the
-      data.
-
-   xlog = true|false
-      If false (the default), the scale on the x axis is linear; if
-      true it is logarithmic.
-
-      [Default: false]
-
-   xflip = true|false
-      If set true, the scale on the x axis will increase in the
-      opposite sense from usual (e.g. right to left rather than left
-      to right).
-
-      [Default: false]
-
-   xlabel = <value>
-      Specifies a label to be used for annotating axis x. A default
-      values based on the plotted data will be used if no value is
-      supplied for this parameter.
-
-   subsetNS = <expr>
-      Gives the selection criterion for the subset labelled "NS".
-      This is a boolean expression which may be the name of a
-      boolean-valued column or any other boolean-valued expression.
-      Rows for which the expression evaluates true will be included
-      in the subset, and those for which it evaluates false will
-      not.
-
-   nameNS = <value>
-      Provides a name to use for a subset with the symbolic label
-      NS. This name will be used for display in the legend, if one
-      is displayed.
-
-   colourNS = <rrggbb>|red|blue|...
-      Defines the colour of bars plotted for data set NS. The value
-      may be a 6-digit hexadecimal number giving red, green and blue
-      intensities, e.g. "ff00ff" for magenta. Alternatively it may
-      be the name of one of the pre-defined colours. These are
-      currently red, blue, green, grey, magenta, cyan, orange, pink,
-      yellow, black and white.
-
-      For most purposes, either the American or the British spelling
-      is accepted for this parameter name.
-
-   barstyleNS = fill|open|...
-      Defines how histogram bars will be drawn for dataset NS. The
-      options are:
-
-       * fill
-       * open
-       * tops
-       * spikes
-       * fillover
-       * openover
-
-      [Default: fill]
-
-   linewidthNS = <int-value>
-      Defines the line width for lines drawn as part of the bars for
-      dataset NS. Only certain bar styles are affected by the line
-      width.
-
-      [Default: 2]
-
-   dashNS = dot|dash|...|<a,b,...>
-      Defines the dashing pattern for lines drawn for dataset NS. To
-      generate a dashed line the value may be one of the named dash
-      types:
-
-       * dot
-       * dash
-       * longdash
-       * dotdash
-
-      or may be a comma-separated string of on/off length values
-      such as "4,2,8,2". A null value indicates a solid line. Only
-      certain bar styles are affected by the dash pattern.
-
-   grid = true|false
-      If true, grid lines are drawn on the plot. If false, they are
-      absent.
-
-      [Default: true]
-
-   antialias = true|false
-      Controls whether lines are drawn using antialiasing, where
-      applicable. If lines are drawn to a bitmapped-type graphics
-      output format setting this parameter to true smooths the lines
-      out by using gradations of colour for diagonal lines, and
-      setting it false simply sets each pixel in the line to on or
-      off. For vector-type graphics output formats, or for cases in
-      which no diagonal lines are drawn, the setting of this
-      parameter has no effect. Setting it true may slow the plot
-      down slightly.
-
-      [Default: true]
-
-   sequence = <suffix>,<suffix>,...
-      Can be used to control the sequence in which different
-      datasets and subsets are plotted. This will affect which
-      symbols are plotted on top of, and so potentially obscure,
-      which other ones. The value of this parameter is a
-      comma-separated list of the "NS" suffixes which appear on the
-      parameters which apply to subsets. The sets which are named
-      will be plotted in order, so the first-named one will be at
-      the bottom (most likely to be obscured). Note that if this
-      parameter is supplied, then only those sets which are named
-      will be plotted, so this parameter may also be used to
-      restrict which plots appear (though it may not be the most
-      efficient way of doing this). If no explicit value is supplied
-      for this parameter, sets will be plotted in some sequence
-      decided by STILTS (probably alphabetic by suffix).
-
-   ylo = <float-value>
-      Lower bound for Y axis.
-
-      [Default: 0]
-
-   yhi = <float-value>
-      Upper bound for Y axis. Autogenerated from the data if not
-      supplied.
-
-   ylog = true|false
-      Whether to use a logarithmic scale for the Y axis.
-
-      [Default: false]
-
-   ylabel = <value>
-      Specifies a label for annotating the vertical axis. A default
-      value based on the type of histogram will be used if no value
-      is supplied for this parameter.
-
-      [Default: Count]
-
-   weightN = <value>
-      Defines a weighting for each point accumulated to determine
-      the height of plotted bars. If this parameter has a value
-      other than 1 (the default) then instead of simply accumulating
-      the number of points per bin to determine bar height, the bar
-      height will be the sum over the weighting expression for the
-      points in each bin. Note that with weighting, the figure drawn
-      is no longer strictly speaking a histogram.
-
-      When weighted, bars can be of negative height. An anomaly of
-      the plot as currently implemented is that the Y axis never
-      descends below zero, so any such bars are currently invisible.
-      This may be amended in a future release (contact the author to
-      lobby for such an amendment).
-
-      [Default: 1]
-
-   binwidth = <float-value>
-      Defines the width on the X axis of histogram bins. If the X
-      axis is logarithmic, then this is a multiplicative value.
-
-   norm = true|false
-      Determines whether bin counts are normalised. If true,
-      histogram bars are scaled such that summed height of all bars
-      over the whole dataset is equal to one. Otherwise (the
-      default), no scaling is done.
-
-      [Default: false]
-
-   cumulative = true|false
-      Determines whether historams are cumulative. When false (the
-      default), the height of each bar is determined by counting the
-      number of points which fall into the range on the X axis that
-      it covers. When true, the height is determined by counting all
-      the points between negative infinity and the upper bound of
-      the range on the X axis that it covers.
-
-      [Default: false]
-
-   binbase = <float-value>
-      Adjusts the offset of the bins. By default zero (or one for
-      logarithmic X axis) is a boundary between bins; other
-      boundaries are defined by this and the bin width. If this
-      value is adjusted, the lower bound of one of the bins will be
-      set to this value, so all the bins move along by the
-      corresponding distance.
-
-      [Default: 0]
-'''
-    task = _stilts.getTaskFactory().createObject('plothist')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def server(**kwargs):
-    '''\
-Runs an HTTP server to perform STILTS commands.
-
-Parameters:
-
-   port = <int-value>
-      Port number on which the server should run.
-
-      [Default: 2112]
-
-   basepath = <value>
-      Base path on the server at which request URLs are rooted. The
-      default is /stilts, which means that for instance requests to
-      execute task plot2d should be directed to the URL
-      http://host:portnum/stilts/task/plot2d?name=value&name=value...
-
-      [Default: /stilts]
-
-   tasks = <task-name> ...
-      Gives a space-separated list of tasks which will be provided
-      by the running server. If the value is null then all tasks
-      will be available. However, some tasks don't make a lot of
-      sense to run from the server, so the default value is a
-      somewhat restricted list. If the server is being exposed to
-      external users, you might also want to reduce the list for
-      security reasons.
-
-      [Default: calc coneskymatch regquery plot2d plot3d plothist
-      sqlclient sqlskymatch sqlupdate tcat tcatn tcopy tcube tjoin
-      tmatch1 tmatch2 tmatchn tmulti tmultin tpipe tskymatch2
-      votcopy votlint]
-
-   tablefactory = file|dirs:...|locator:...
-      This parameter determines how input table names (typically the
-      in parameter of table processing commands) are used to acquire
-      references to actual table data. The default behaviour is for
-      input table names to be treated as filenames, in conjunction
-      with some file type parameter. While this is usually sensible
-      for local use, in server situations it may be inappropriate,
-      since you don't want external users to have read access to
-      your entire filesystem.
-
-      This parameter gives options for alternative ways of mapping
-      table names to table data items. The currently available
-      options are:
-
-       * file: default behaviour - names are treated as filenames
-       * dirs:<dir>:<dir>:...: following the "dirs:" prefix a list
-            of directories is specified which will be searched for
-            the file named. Note that the directory separator
-            character differs between operating systems; it is a
-            colon (":") for Unix-like OSs and a semi-colon (";") for
-            MS Windows. If a given name is identical to the
-            path-less filename in one of the <dir> directories, that
-            file is used as the referenced table. File type
-            information is ignored in this case, so the files must
-            be one of the types which STILTS can autodetect,
-            currently FITS or VOTable (FITS is more efficient). By
-            using this option, clients can be restricted to using a
-            fixed set of tables in a restricted part of the server's
-            file system.
-       * locator:<class-name>: the <class-name> must be the name of
-            a Java class on the classpath which implements the
-            interface uk.ac.starlink.ttools.task.TableLocator and
-            which has a no-arg constructor. An instance of this
-            class will be used to resolve names to tables.
-
-      The usage and functionality of this parameter is experimental,
-      and may change significantly in future releases.
-
-      [Default: file]
-'''
-    task = _stilts.getTaskFactory().createObject('server')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def sqlclient(**kwargs):
-    '''\
-Executes SQL statements.
-
-Parameters:
-
-   db = <jdbc-url>
-      URL which defines a connection to a database. This has the
-      form jdbc:<subprotocol>:<subname> - the details are database-
-      and driver-dependent. Consult Sun's JDBC documentation and
-      that for the particular JDBC driver you are using for details.
-      Note that the relevant driver class will need to be on your
-      classpath and referenced in the jdbc.drivers system property
-      as well for the connection to be made.
-
-   user = <value>
-      User name for logging in to SQL database. Defaults to the
-      current username.
-
-      [Default: mbt]
-
-   password = <value>
-      Password for logging in to SQL database.
-
-   sql = <sql>
-      Text of an SQL statement for execution. This parameter may be
-      repeated, or statements may be separated by semicolon (";")
-      characters.
-'''
-    task = _stilts.getTaskFactory().createObject('sqlclient')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def sqlskymatch(in_, **kwargs):
-    '''\
-Crossmatches table on sky position against SQL table.
-
-The return value is the resulting table.
-
-Parameters:
-
-   in_ = <table>
-      Input table.
-
-   ra = <expr>
-      Expression which evaluates to the right ascension in degrees
-      for the request at each row of the input table. This will
-      usually be the name or ID of a column in the input table, or a
-      function involving one.
-
-   dec = <expr>
-      Expression which evaluates to the declination in degrees for
-      the request at each row of the input table. This will usually
-      be the name or ID of a column in the input table, or a
-      function involving one.
-
-   sr = <expr>
-      Expression which evaluates to the search radius in degrees for
-      the request at each row of the input table. This will often be
-      a constant numerical value, but may be the name or ID of a
-      column in the input table, or a function involving one.
-
-   find = best|all|each
-      Determines which matches are retained.
-
-       * best: Only the matching query table row closest to the
-            input table row will be output. Input table rows with no
-            matches will be omitted.
-       * all: All query table rows which match the input table row
-            will be output. Input table rows with no matches will be
-            omitted.
-       * each: There will be one output table row for each input
-            table row. If matches are found, the closest one from
-            the query table will be output, and in the case of no
-            matches, the query table columns will be blank.
-
-      [Default: all]
-
-   copycols = <colid-list>
-      List of columns from the input table which are to be copied to
-      the output table. Each column identified here will be
-      prepended to the columns of the combined output table, and its
-      value for each row taken from the input table row which
-      provided the parameters of the query which produced it. See
-      SUN/256 for list syntax. The default setting is "*", which
-      means that all columns from the input table are included in
-      the output.
-
-      [Default: *]
-
-   scorecol = <col-name>
-      Gives the name of a column in the output table to contain the
-      distance between the requested central position and the actual
-      position of the returned row. The distance returned is an
-      angular distance in degrees. If a null value is chosen, no
-      distance column will appear in the output table.
-
-      [Default: Separation]
-
-   erract = abort|ignore|retry|retry<n>
-      Determines what will happen if any of the individual cone
-      search requests fails. By default the task aborts. That may be
-      the best thing to do, but for unreliable or poorly implemented
-      services you may find that some searches fail and others
-      succeed so it can be best to continue operation in the face of
-      a few failures. The options are:
-
-       * abort: failure of any query terminates the task
-       * ignore: failure of a query is treated the same as a query
-            which returns no rows
-       * retry: failed queries are retried until they succeed; use
-            with care - if the failure is for some good, or at least
-            reproducible reason this could prevent the task from
-            ever completing
-       * retry<n>: failed queries are retried at most a fixed number
-            <n> of times If they still fail the task terminates.
-
-      [Default: abort]
-
-   ostream = true|false
-      If set true, this will cause the operation to stream on
-      output, so that the output table is built up as the results
-      are obtained from the cone search service. The disadvantage of
-      this is that some output modes and formats need multiple
-      passes through the data to work, so depending on the output
-      destination, the operation may fail if this is set. Use with
-      care (or be prepared for the operation to fail).
-
-      [Default: false]
-
-   fixcols = none|dups|all
-      Determines how input columns are renamed before use in the
-      output table. The choices are:
-
-       * none: columns are not renamed
-       * dups: columns which would otherwise have duplicate names in
-            the output will be renamed to indicate which table they
-            came from
-       * all: all columns will be renamed to indicate which table
-            they came from
-
-      If columns are renamed, the new ones are determined by
-      suffix* parameters.
-
-      [Default: dups]
-
-   suffix0 = <label>
-      If the fixcols parameter is set so that input columns are
-      renamed for insertion into the output table, this parameter
-      determines how the renaming is done. It gives a suffix which
-      is appended to all renamed columns from the input table.
-
-      [Default: _0]
-
-   suffix1 = <label>
-      If the fixcols parameter is set so that input columns are
-      renamed for insertion into the output table, this parameter
-      determines how the renaming is done. It gives a suffix which
-      is appended to all renamed columns from the cone result table.
-
-      [Default: _1]
-
-   db = <jdbc-url>
-      URL which defines a connection to a database. This has the
-      form jdbc:<subprotocol>:<subname> - the details are database-
-      and driver-dependent. Consult Sun's JDBC documentation and
-      that for the particular JDBC driver you are using for details.
-      Note that the relevant driver class will need to be on your
-      classpath and referenced in the jdbc.drivers system property
-      as well for the connection to be made.
-
-   user = <value>
-      User name for logging in to SQL database. Defaults to the
-      current username.
-
-      [Default: mbt]
-
-   password = <value>
-      Password for logging in to SQL database.
-
-   dbtable = <table-name>
-      The name of the table in the SQL database which provides the
-      remote data.
-
-   dbra = <sql-col>
-      The name of a column in the SQL database table dbtable which
-      gives the right ascension. Units are given by dbunit.
-
-   dbdec = <sql-col>
-      The name of a column in the SQL database table dbtable which
-      gives the declination. Units are given by dbunit.
-
-   dbunit = deg|rad
-      Units of the right ascension and declination columns
-      identified in the database table. May be either deg[rees] (the
-      default) or rad[ians].
-
-      [Default: deg]
-
-   tiling = htm<level>|healpixnest<nside>|healpixring<nside>
-      Describes the sky tiling scheme that is in use. One of the
-      following values may be used:
-
-       * htm<level>: Hierarchical Triangular Mesh with a level value
-            of level.
-       * healpixnest<nside>: HEALPix using the Nest scheme with an
-            nside value of nside.
-       * healpixring<nside>: HEALPix using the Ring scheme with an
-            nside value of nside.
-
-   dbtile = <sql-col>
-      The name of a column in the SQL database table dbtable which
-      contains a sky tiling pixel index. The tiling scheme is given
-      by the tiling parameter. Use of a tiling column is optional,
-      but if present (and if the column is indexed in the database
-      table) it may serve to speed up searches. Set to null if the
-      database table contains no tiling column or if you do not wish
-      to use one.
-
-   selectcols = <sql-cols>
-      An SQL expression for the list of columns to be selected from
-      the table in the database. A value of "*" retrieves all
-      columns.
-
-      [Default: *]
-
-   where = <sql-condition>
-      An SQL expression further limiting the rows to be selected
-      from the database. This will be combined with the constraints
-      on position implied by the cone search centres and radii. The
-      value of this parameter should just be a condition, it should
-      not contain the WHERE keyword. A null value indicates no
-      additional criteria.
-
-   preparesql = true|false
-      If true, the JDBC connection will use PreparedStatements for
-      the SQL SELECTs otherwise it will use simple Statements. This
-      is a tuning parameter and affects only performance. On some
-      database/driver combinations it's a lot faster set false (the
-      default); on others it may be faster, who knows?
-
-      [Default: false]
-'''
-    import uk.ac.starlink.ttools.task.SqlCone
-    class _sqlskymatch_task(uk.ac.starlink.ttools.task.SqlCone):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.SqlCone.__init__(self)
-    task = _sqlskymatch_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    env.setValue('in_', _map_env_value(in_))
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def sqlupdate(**kwargs):
-    '''\
-Updates values in an SQL table.
-
-Parameters:
-
-   db = <jdbc-url>
-      URL which defines a connection to a database. This has the
-      form jdbc:<subprotocol>:<subname> - the details are database-
-      and driver-dependent. Consult Sun's JDBC documentation and
-      that for the particular JDBC driver you are using for details.
-      Note that the relevant driver class will need to be on your
-      classpath and referenced in the jdbc.drivers system property
-      as well for the connection to be made.
-
-   user = <value>
-      User name for logging in to SQL database. Defaults to the
-      current username.
-
-      [Default: mbt]
-
-   password = <value>
-      Password for logging in to SQL database.
-
-   select = <select-stmt>
-      Gives the full text (including "SELECT") of the SELECT
-      statement to identify which rows undergo updates.
-
-   assign = <col>=<expr>
-      Assigns new values for a given column. The assignment is made
-      in the form <colname>=<expr> where <colname> is the name of a
-      column in the SQL table and <expr> is the text of an
-      expression using STILTS's expression language, as described in
-      SUN/256. SQL table column names or $ID identifiers may be used
-      as variables in the usual way.
-
-      This parameter may be supplied more than once to effect
-      multiple assignments, or multiple assignments may be made by
-      separating them with semicolons in the value of this
-      parameter.
-
-   progress = true|false
-      If true, a spinner will be drawn on standard error which shows
-      how many rows have been updated so far.
-
-      [Default: true]
-'''
-    task = _stilts.getTaskFactory().createObject('sqlupdate')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def tcat(in_, **kwargs):
-    '''\
-Concatenates multiple similar tables.
-
-The return value is the resulting table.
-
-Parameters:
-
-   in_ = <table> [<table> ...]
-      Array of input tables.
-
-   multi = true|false
-      Determines whether all tables, or just the first one, from
-      input table files will be used. If set false, then just the
-      first table from each file named by in will be used. If true,
-      then all tables present in those input files will be used.
-      This only has an effect for file formats which are capable of
-      containing more than one table, which effectively means FITS
-      and VOTable and their variants.
-
-      [Default: false]
-
-   seqcol = <colname>
-      Name of a column to be added to the output table which will
-      contain the sequence number of the input table from which each
-      row originated. This column will contain 1 for the rows from
-      the first concatenated table, 2 for the second, and so on.
-
-   loccol = <colname>
-      Name of a column to be added to the output table which will
-      contain the location (as specified in the input parameter(s))
-      of the input table from which each row originated.
-
-   uloccol = <colname>
-      Name of a column to be added to the output table which will
-      contain the unique part of the location (as specified in the
-      input parameter(s)) of the input table from which each row
-      originated. If not null, parameters will also be added to the
-      output table giving the pre- and post-fix string common to all
-      the locations. For example, if the input tables are
-      "/data/cat_a1.fits" and "/data/cat_b2.fits" then the output
-      table will contain a new column <colname> which takes the
-      value "a1" for rows from the first table and "b2" for rows
-      from the second, and new parameters "<colname>_prefix" and
-      "<colname>_postfix" with the values "/data/cat_" and ".fits"
-      respectively.
-
-   lazy = true|false
-      Whether to perform table resolution lazily. If true, each
-      table is only accessed when the time comes to add its rows to
-      the output; if false, then all the tables are accessed up
-      front. This is mostly a tuning parameter, and on the whole it
-      doesn't matter much how it is set, but for joining an enormous
-      number of tables setting it true may avoid running out of
-      resources.
-
-      [Default: false]
-
-   countrows = true|false
-      Whether to count the rows in the table before starting the
-      output. This is essentially a tuning parameter - if writing to
-      an output format which requires the number of rows up front
-      (such as normal FITS) it may result in skipping the number of
-      passes through the input files required for processing. Unless
-      you have a good understanding of the internals of the
-      software, your best bet for working out whether to set this
-      true or false is to try it both ways
-
-      [Default: false]
-'''
-    import uk.ac.starlink.ttools.task.TableCat
-    class _tcat_task(uk.ac.starlink.ttools.task.TableCat):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.TableCat.__init__(self)
-    task = _tcat_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    env.setValue('in_', _map_env_value(in_))
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def tcatn(**kwargs):
-    '''\
-Concatenates multiple tables.
-
-The return value is the resulting table.
-
-Parameters:
-
-   nin = <count>
-      The number of input tables for this task. For each of the
-      input tables N there will be associated parameters ifmtN, inN
-      and icmdN.
-
-   inN = <tableN>
-      Input table.
-
-   seqcol = <colname>
-      Name of a column to be added to the output table which will
-      contain the sequence number of the input table from which each
-      row originated. This column will contain 1 for the rows from
-      the first concatenated table, 2 for the second, and so on.
-
-   loccol = <colname>
-      Name of a column to be added to the output table which will
-      contain the location (as specified in the input parameter(s))
-      of the input table from which each row originated.
-
-   uloccol = <colname>
-      Name of a column to be added to the output table which will
-      contain the unique part of the location (as specified in the
-      input parameter(s)) of the input table from which each row
-      originated. If not null, parameters will also be added to the
-      output table giving the pre- and post-fix string common to all
-      the locations. For example, if the input tables are
-      "/data/cat_a1.fits" and "/data/cat_b2.fits" then the output
-      table will contain a new column <colname> which takes the
-      value "a1" for rows from the first table and "b2" for rows
-      from the second, and new parameters "<colname>_prefix" and
-      "<colname>_postfix" with the values "/data/cat_" and ".fits"
-      respectively.
-
-   countrows = true|false
-      Whether to count the rows in the table before starting the
-      output. This is essentially a tuning parameter - if writing to
-      an output format which requires the number of rows up front
-      (such as normal FITS) it may result in skipping the number of
-      passes through the input files required for processing. Unless
-      you have a good understanding of the internals of the
-      software, your best bet for working out whether to set this
-      true or false is to try it both ways
-
-      [Default: false]
-'''
-    import uk.ac.starlink.ttools.task.TableCatN
-    class _tcatn_task(uk.ac.starlink.ttools.task.TableCatN):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.TableCatN.__init__(self)
-    task = _tcatn_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def tcopy(in_, **kwargs):
-    '''\
-Converts between table formats.
-
-Parameters:
-
-   in_ = <table>
-      Input table.
-'''
-    task = _stilts.getTaskFactory().createObject('tcopy')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    env.setValue('in_', _map_env_value(in_))
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def tcube(in_, **kwargs):
-    '''\
-Calculates N-dimensional histograms.
-
-The return value is the resulting table.
-
-Parameters:
-
-   cols = <col-id> ...
-      Columns to use for this task. One or more <col-id> elements,
-      separated by spaces, should be given. Each one represents a
-      column in the table, using either its name or index.
-
-      The number of columns listed in the value of this parameter
-      defines the dimensionality of the output data cube.
-
-   in_ = <table>
-      Input table.
-
-   bounds = [<lo>]:[<hi>] ...
-      Gives the bounds for each dimension of the cube in data
-      coordinates. The form of the value is a space-separated list
-      of words, each giving an optional lower bound, then a colon,
-      then an optional upper bound, for instance "1:100 0:20" to
-      represent a range for two-dimensional output between 1 and 100
-      of the first coordinate (table column) and between 0 and 20
-      for the second. Either or both numbers may be omitted to
-      indicate that the bounds should be determined automatically by
-      assessing the range of the data in the table. A null value for
-      the parameter indicates that all bounds should be determined
-      automatically for all the dimensions.
-
-      If any of the bounds need to be determined automatically in
-      this way, two passes through the data will be required, the
-      first to determine bounds and the second to populate the cube.
-
-   binsizes = <size> ...
-      Gives the extent of of the data bins (cube pixels) in each
-      dimension in data coordinates. The form of the value is a
-      space-separated list of values, giving a list of extents for
-      the first, second, ... dimension. Either this parameter or the
-      nbins parameter must be supplied.
-
-   nbins = <num> ...
-      Gives the number of bins (cube pixels) in each dimension. The
-      form of the value is a space-separated list of integers,
-      giving the number of pixels for the output cube in the first,
-      second, ... dimension. Either this parameter or the binsizes
-      parameter must be supplied.
-
-   out = <out-file>
-      The location of the output file. This is usually a filename to
-      write to. If it is equal to the special value "-" the output
-      will be written to standard output.
-
-      The output cube is currently written as a single-HDU FITS
-      file.
-
-      [Default: -]
-
-   otype = byte|short|int|long|float|double
-      The type of numeric value which will fill the output array. If
-      no selection is made, the output type will be determined
-      automatically as the shortest type required to hold all the
-      values in the array. Currently, integers are always signed (no
-      BSCALE/BZERO), so for instance the largest value that can be
-      recorded in 8 bits is 127.
-
-   scale = <col-id>
-      Optionally gives a value by which the count in each bin is
-      scaled. If this value is null (the default) then for each row
-      that falls within the bounds of a pixel, the pixel value will
-      be incremented by 1. If a column ID is given, then instead of
-      1 being added, the value of that column for the row in
-      question is added. The effect of this is that the output image
-      contains the mean of the given column for the rows
-      corresponding to each pixel rather than just a count of them.
-'''
-    import uk.ac.starlink.ttools.task.TableCube
-    class _tcube_task(uk.ac.starlink.ttools.task.TableCube):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.TableCube.__init__(self)
-    task = _tcube_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    env.setValue('in_', _map_env_value(in_))
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def tjoin(**kwargs):
-    '''\
-Joins multiple tables side-to-side.
-
-The return value is the resulting table.
-
-Parameters:
-
-   nin = <count>
-      The number of input tables for this task. For each of the
-      input tables N there will be associated parameters ifmtN, inN
-      and icmdN.
-
-   inN = <tableN>
-      Input table.
-
-   fixcols = none|dups|all
-      Determines how input columns are renamed before use in the
-      output table. The choices are:
-
-       * none: columns are not renamed
-       * dups: columns which would otherwise have duplicate names in
-            the output will be renamed to indicate which table they
-            came from
-       * all: all columns will be renamed to indicate which table
-            they came from
-
-      If columns are renamed, the new ones are determined by
-      suffix* parameters.
-
-      [Default: dups]
-
-   suffixN = <label>
-      If the fixcols parameter is set so that input columns are
-      renamed for insertion into the output table, this parameter
-      determines how the renaming is done. It gives a suffix which
-      is appended to all renamed columns from table N.
-
-      [Default: _N]
-'''
-    import uk.ac.starlink.ttools.task.TableJoinN
-    class _tjoin_task(uk.ac.starlink.ttools.task.TableJoinN):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.TableJoinN.__init__(self)
-    task = _tjoin_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def tmatch1(in_, **kwargs):
-    '''\
-Performs a crossmatch internal to a single table.
-
-The return value is the resulting table.
-
-Parameters:
-
-   matcher = <matcher-name>
-      Defines the nature of the matching that will be performed.
-      Depending on the name supplied, this may be positional
-      matching using celestial or Cartesian coordinates, exact
-      matching on the value of a string column, or other things. A
-      list and explanation of the available matching algorithms is
-      given in SUN/256. The value supplied for this parameter
-      determines the meanings of the values required by the params,
-      values* and tuning parameter(s).
-
-      [Default: sky]
-
-   params = <match-params>
-      Determines the parameters of this match. This is typically one
-      or more tolerances such as error radii. It may contain zero or
-      more values; the values that are required depend on the match
-      type selected by the matcher parameter. If it contains
-      multiple values, they must be separated by spaces; values
-      which contain a space can be 'quoted' or "quoted".
-
-   tuning = <tuning-params>
-      Tuning values for the matching process, if appropriate. It may
-      contain zero or more values; the values that are permitted
-      depend on the match type selected by the matcher parameter. If
-      it contains multiple values, they must be separated by spaces;
-      values which contain a space can be 'quoted' or "quoted". If
-      this optional parameter is not supplied, sensible defaults
-      will be chosen.
-
-   values = <expr-list>
-      Defines the values from the input table which are used to
-      determine whether a match has occurred. These will typically
-      be coordinate values such as RA and Dec and perhaps some
-      per-row error values as well, though exactly what values are
-      required is determined by the kind of match as determined by
-      matcher. Depending on the kind of match, the number and type
-      of the values required will be different. Multiple values
-      should be separated by whitespace; if whitespace occurs within
-      a single value it must be 'quoted' or "quoted". Elements of
-      the expression list are commonly just column names, but may be
-      algebraic expressions calculated from zero or more columns as
-      explained in SUN/256.
-
-   action = identify|keep0|keep1|wide2|wideN
-      Determines the form of the table which will be output as a
-      result of the internal match.
-
-       * identify: The output table is the same as the input table
-            except that it contains two additional columns, GroupID
-            and GroupSize, following the input columns. Each group
-            of rows which matched is assigned a unique integer,
-            recorded in the GroupID column, and the size of each
-            group is recorded in the GroupSize column. Rows which
-            don't match any others (singles) have null values in
-            both these columns.
-       * keep0: The result is a new table containing only "single"
-            rows, that is ones which don't match any other rows in
-            the table. Any other rows are thrown out.
-       * keep1: The result is a new table in which only one row (the
-            first in the input table order) from each group of
-            matching ones is retained. A subsequent intra-table
-            match with the same criteria would therefore show no
-            matches.
-       * wideN: The result is a new "wide" table consisting of
-            matched rows in the input table stacked next to each
-            other. Only groups of exactly N rows in the input table
-            are used to form the output table; each row of the
-            output table consists of the columns of the first group
-            member, followed by the columns of the second group
-            member and so on. The output table therefore has N times
-            as many columns as the input table. The column names in
-            the new table have _1, _2, ... appended to them to avoid
-            duplication.
-
-      [Default: identify]
-
-   progress = none|log|profile
-      Determines whether information on progress of the match should
-      be output to the standard error stream as it progresses. For
-      lengthy matches this is a useful reassurance and can give
-      guidance about how much longer it will take. It can also be
-      useful as a performance diagnostic.
-
-      The options are:
-
-       * none: no progress is shown
-       * log: progress information is shown
-       * profile: progress information and limited time/memory
-            profiling information are shown
-
-      [Default: log]
-
-   in_ = <table>
-      Input table.
-'''
-    import uk.ac.starlink.ttools.task.TableMatch1
-    class _tmatch1_task(uk.ac.starlink.ttools.task.TableMatch1):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.TableMatch1.__init__(self)
-    task = _tmatch1_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    env.setValue('in_', _map_env_value(in_))
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def tmatch2(in1, in2, **kwargs):
-    '''\
-Crossmatches 2 tables using flexible criteria.
-
-The return value is the resulting table.
-
-Parameters:
-
-   in1 = <table1>
-      Input table.
-
-   in2 = <table2>
-      Input table.
-
-   matcher = <matcher-name>
-      Defines the nature of the matching that will be performed.
-      Depending on the name supplied, this may be positional
-      matching using celestial or Cartesian coordinates, exact
-      matching on the value of a string column, or other things. A
-      list and explanation of the available matching algorithms is
-      given in SUN/256. The value supplied for this parameter
-      determines the meanings of the values required by the params,
-      values* and tuning parameter(s).
-
-      [Default: sky]
-
-   values1 = <expr-list>
-      Defines the values from table 1 which are used to determine
-      whether a match has occurred. These will typically be
-      coordinate values such as RA and Dec and perhaps some per-row
-      error values as well, though exactly what values are required
-      is determined by the kind of match as determined by matcher.
-      Depending on the kind of match, the number and type of the
-      values required will be different. Multiple values should be
-      separated by whitespace; if whitespace occurs within a single
-      value it must be 'quoted' or "quoted". Elements of the
-      expression list are commonly just column names, but may be
-      algebraic expressions calculated from zero or more columns as
-      explained in SUN/256.
-
-   values2 = <expr-list>
-      Defines the values from table 2 which are used to determine
-      whether a match has occurred. These will typically be
-      coordinate values such as RA and Dec and perhaps some per-row
-      error values as well, though exactly what values are required
-      is determined by the kind of match as determined by matcher.
-      Depending on the kind of match, the number and type of the
-      values required will be different. Multiple values should be
-      separated by whitespace; if whitespace occurs within a single
-      value it must be 'quoted' or "quoted". Elements of the
-      expression list are commonly just column names, but may be
-      algebraic expressions calculated from zero or more columns as
-      explained in SUN/256.
-
-   params = <match-params>
-      Determines the parameters of this match. This is typically one
-      or more tolerances such as error radii. It may contain zero or
-      more values; the values that are required depend on the match
-      type selected by the matcher parameter. If it contains
-      multiple values, they must be separated by spaces; values
-      which contain a space can be 'quoted' or "quoted".
-
-   tuning = <tuning-params>
-      Tuning values for the matching process, if appropriate. It may
-      contain zero or more values; the values that are permitted
-      depend on the match type selected by the matcher parameter. If
-      it contains multiple values, they must be separated by spaces;
-      values which contain a space can be 'quoted' or "quoted". If
-      this optional parameter is not supplied, sensible defaults
-      will be chosen.
-
-   join = 1and2|1or2|all1|all2|1not2|2not1|1xor2
-      Determines which rows are included in the output table. The
-      matching algorithm determines which of the rows from the first
-      table correspond to which rows from the second. This parameter
-      determines what to do with that information. Perhaps the most
-      obvious thing is to write out a table containing only rows
-      which correspond to a row in both of the two input tables.
-      However, you may also want to see the unmatched rows from one
-      or both input tables, or rows present in one table but
-      unmatched in the other, or other possibilities. The options
-      are:
-
-       * 1and2: An output row for each row represented in both input
-            tables
-       * 1or2: An output row for each row represented in either or
-            both of the input tables
-       * all1: An output row for each matched or unmatched row in
-            table 1
-       * all2: An output row for each matched or unmatched row in
-            table 2
-       * 1not2: An output row only for rows which appear in the
-            first table but are not matched in the second table
-       * 2not1: An output row only for rows which appear in the
-            second table but are not matched in the first table
-       * 1xor2: An output row only for rows represented in one of
-            the input tables but not the other one
-
-      [Default: 1and2]
-
-   find = best|all
-      Determines which matches are retained. If best is selected,
-      then only the best match between the two tables will be
-      retained; in this case the data from a row of either input
-      table will appear in at most one row of the output table. If
-      all is selected, then all pairs of rows from the two input
-      tables which match the input criteria will be represented in
-      the output table.
-
-      [Default: best]
-
-   fixcols = none|dups|all
-      Determines how input columns are renamed before use in the
-      output table. The choices are:
-
-       * none: columns are not renamed
-       * dups: columns which would otherwise have duplicate names in
-            the output will be renamed to indicate which table they
-            came from
-       * all: all columns will be renamed to indicate which table
-            they came from
-
-      If columns are renamed, the new ones are determined by
-      suffix* parameters.
-
-      [Default: dups]
-
-   suffix1 = <label>
-      If the fixcols parameter is set so that input columns are
-      renamed for insertion into the output table, this parameter
-      determines how the renaming is done. It gives a suffix which
-      is appended to all renamed columns from table 1.
-
-      [Default: _1]
-
-   suffix2 = <label>
-      If the fixcols parameter is set so that input columns are
-      renamed for insertion into the output table, this parameter
-      determines how the renaming is done. It gives a suffix which
-      is appended to all renamed columns from table 2.
-
-      [Default: _2]
-
-   scorecol = <col-name>
-      Gives the name of a column in the output table to contain the
-      "match score" for each pairwise match. The meaning of this
-      column is dependent on the chosen matcher, but it typically
-      represents a distance of some kind between the two matching
-      points. If a null value is chosen, no score column will be
-      inserted in the output table. The default value of this
-      parameter depends on matcher.
-
-      [Default: Score]
-
-   progress = none|log|profile
-      Determines whether information on progress of the match should
-      be output to the standard error stream as it progresses. For
-      lengthy matches this is a useful reassurance and can give
-      guidance about how much longer it will take. It can also be
-      useful as a performance diagnostic.
-
-      The options are:
-
-       * none: no progress is shown
-       * log: progress information is shown
-       * profile: progress information and limited time/memory
-            profiling information are shown
-
-      [Default: log]
-'''
-    import uk.ac.starlink.ttools.task.TableMatch2
-    class _tmatch2_task(uk.ac.starlink.ttools.task.TableMatch2):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.TableMatch2.__init__(self)
-    task = _tmatch2_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    env.setValue('in1', _map_env_value(in1))
-    env.setValue('in2', _map_env_value(in2))
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def tmatchn(**kwargs):
-    '''\
-Crossmatches multiple tables using flexible criteria.
-
-The return value is the resulting table.
-
-Parameters:
-
-   nin = <count>
-      The number of input tables for this task. For each of the
-      input tables N there will be associated parameters ifmtN, inN
-      and icmdN.
-
-   inN = <tableN>
-      Input table.
-
-   multimode = pairs|group
-      Defines what is meant by a multi-table match. There are two
-      possibilities:
-
-       * pairs: Each output row corresponds to a single row of the
-            reference table (see parameter iref) and contains
-            entries from other tables which are pair matches to
-            that. If a reference table row matches multiple rows
-            from one of the other tables, only the best one is
-            included.
-       * group: Each output row corresponds to a group of entries
-            from the input tables which are mutually linked by pair
-            matches between them. This means that although you can
-            get from any entry to any other entry via one or more
-            pair matches, there is no guarantee that any entry is a
-            pair match with any other entry. No table has privileged
-            status in this case. If there are multiple entries from
-            a given table in the match group, an arbitrary one is
-            chosen for inclusion (there is no unique way to select
-            the best). See SUN/256 for more discussion.
-
-      In the case of well-separated objects these modes will give
-      the same results. For crowded fields however it will make a
-      difference which is chosen.
-
-      [Default: pairs]
-
-   iref = <table-index>
-      If multimode=pairs this parameter gives the index of the table
-      in the input table list which is to serve as the reference
-      table (the one which must be matched by other tables). Ignored
-      in other modes.
-
-      Row ordering in the output table is usually tidiest if the
-      default setting of 1 is used (i.e. if the first input table is
-      used as the reference table).
-
-      [Default: 1]
-
-   matcher = <matcher-name>
-      Defines the nature of the matching that will be performed.
-      Depending on the name supplied, this may be positional
-      matching using celestial or Cartesian coordinates, exact
-      matching on the value of a string column, or other things. A
-      list and explanation of the available matching algorithms is
-      given in SUN/256. The value supplied for this parameter
-      determines the meanings of the values required by the params,
-      values* and tuning parameter(s).
-
-      [Default: sky]
-
-   params = <match-params>
-      Determines the parameters of this match. This is typically one
-      or more tolerances such as error radii. It may contain zero or
-      more values; the values that are required depend on the match
-      type selected by the matcher parameter. If it contains
-      multiple values, they must be separated by spaces; values
-      which contain a space can be 'quoted' or "quoted".
-
-   tuning = <tuning-params>
-      Tuning values for the matching process, if appropriate. It may
-      contain zero or more values; the values that are permitted
-      depend on the match type selected by the matcher parameter. If
-      it contains multiple values, they must be separated by spaces;
-      values which contain a space can be 'quoted' or "quoted". If
-      this optional parameter is not supplied, sensible defaults
-      will be chosen.
-
-   valuesN = <expr-list>
-      Defines the values from table N which are used to determine
-      whether a match has occurred. These will typically be
-      coordinate values such as RA and Dec and perhaps some per-row
-      error values as well, though exactly what values are required
-      is determined by the kind of match as determined by matcher.
-      Depending on the kind of match, the number and type of the
-      values required will be different. Multiple values should be
-      separated by whitespace; if whitespace occurs within a single
-      value it must be 'quoted' or "quoted". Elements of the
-      expression list are commonly just column names, but may be
-      algebraic expressions calculated from zero or more columns as
-      explained in SUN/256.
-
-   joinN = default|match|nomatch|always
-      Determines which rows from input table N are included in the
-      output table. The matching algorithm determines which of the
-      rows in each of the input tables correspond to which rows in
-      the other input tables, and this parameter determines what to
-      do with that information.
-
-      The default behaviour is that a row will appear in the output
-      table if it represents a match of rows from two or more of the
-      input tables. This can be altered on a per-input-table basis
-      however by choosing one of the non-default options below:
-
-       * match: Rows are included only if they contain an entry from
-            input table N.
-       * nomatch: Rows are included only if they do not contain an
-            entry from input table N.
-       * always: Rows are included if they contain an entry from
-            input table N (overrides any match and nomatch settings
-            of other tables).
-       * default: Input table N has no special effect on whether
-            rows are included.
-
-      [Default: default]
-
-   fixcols = none|dups|all
-      Determines how input columns are renamed before use in the
-      output table. The choices are:
-
-       * none: columns are not renamed
-       * dups: columns which would otherwise have duplicate names in
-            the output will be renamed to indicate which table they
-            came from
-       * all: all columns will be renamed to indicate which table
-            they came from
-
-      If columns are renamed, the new ones are determined by
-      suffix* parameters.
-
-      [Default: dups]
-
-   suffixN = <label>
-      If the fixcols parameter is set so that input columns are
-      renamed for insertion into the output table, this parameter
-      determines how the renaming is done. It gives a suffix which
-      is appended to all renamed columns from table N.
-
-      [Default: _N]
-
-   progress = none|log|profile
-      Determines whether information on progress of the match should
-      be output to the standard error stream as it progresses. For
-      lengthy matches this is a useful reassurance and can give
-      guidance about how much longer it will take. It can also be
-      useful as a performance diagnostic.
-
-      The options are:
-
-       * none: no progress is shown
-       * log: progress information is shown
-       * profile: progress information and limited time/memory
-            profiling information are shown
-
-      [Default: log]
-'''
-    import uk.ac.starlink.ttools.task.TableMatchN
-    class _tmatchn_task(uk.ac.starlink.ttools.task.TableMatchN):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.TableMatchN.__init__(self)
-    task = _tmatchn_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def tmulti(in_, **kwargs):
-    '''\
-Writes multiple tables to a single container file.
-
-Parameters:
-
-   in_ = <table> [<table> ...]
-      Array of input tables.
-
-   multi = true|false
-      Determines whether all tables, or just the first one, from
-      input table files will be used. If set false, then just the
-      first table from each file named by in will be used. If true,
-      then all tables present in those input files will be used.
-      This only has an effect for file formats which are capable of
-      containing more than one table, which effectively means FITS
-      and VOTable and their variants.
-
-      [Default: false]
-
-   out = <out-file>
-      The location of the output file. This is usually a filename to
-      write to. If it is equal to the special value "-" the output
-      will be written to standard output.
-
-      [Default: -]
-'''
-    task = _stilts.getTaskFactory().createObject('tmulti')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    env.setValue('in_', _map_env_value(in_))
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def tmultin(**kwargs):
-    '''\
-Writes multiple processed tables to single container file.
-
-Parameters:
-
-   nin = <count>
-      The number of input tables for this task. For each of the
-      input tables N there will be associated parameters ifmtN, inN
-      and icmdN.
-
-   inN = <tableN>
-      Input table.
-
-   out = <out-file>
-      The location of the output file. This is usually a filename to
-      write to. If it is equal to the special value "-" the output
-      will be written to standard output.
-
-      [Default: -]
-'''
-    task = _stilts.getTaskFactory().createObject('tmultin')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def tpipe(in_, **kwargs):
-    '''\
-Performs pipeline processing on a table.
-
-The return value is the resulting table.
-
-Parameters:
-
-   in_ = <table>
-      Input table.
-'''
-    import uk.ac.starlink.ttools.task.TablePipe
-    class _tpipe_task(uk.ac.starlink.ttools.task.TablePipe):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.TablePipe.__init__(self)
-    task = _tpipe_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    env.setValue('in_', _map_env_value(in_))
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def tskymatch2(in1, in2, **kwargs):
-    '''\
-Crossmatches 2 tables on sky position.
-
-The return value is the resulting table.
-
-Parameters:
-
-   in1 = <table1>
-      Input table.
-
-   in2 = <table2>
-      Input table.
-
-   ra1 = <expr/degs>
-      Value in degrees for the right ascension of positions in table
-      1 to be matched. This may simply be a column name, or it may
-      be an algebraic expression calculated from columns as
-      explained in SUN/256. If left blank, an attempt is made to
-      guess from UCDs, column names and unit annotations what
-      expression to use.
-
-   dec1 = <expr/degs>
-      Value in degrees for the declination of positions in table 1
-      to be matched. This may simply be a column name, or it may be
-      an algebraic expression calculated from columns as explained
-      in SUN/256. If left blank, an attempt is made to guess from
-      UCDs, column names and unit annotations what expression to
-      use.
-
-   ra2 = <expr/degs>
-      Value in degrees for the right ascension of positions in table
-      2 to be matched. This may simply be a column name, or it may
-      be an algebraic expression calculated from columns as
-      explained in SUN/256. If left blank, an attempt is made to
-      guess from UCDs, column names and unit annotations what
-      expression to use.
-
-   dec2 = <expr/degs>
-      Value in degrees for the declination of positions in table 2
-      to be matched. This may simply be a column name, or it may be
-      an algebraic expression calculated from columns as explained
-      in SUN/256. If left blank, an attempt is made to guess from
-      UCDs, column names and unit annotations what expression to
-      use.
-
-   error = <value/arcsec>
-      The maximum separation permitted between two objects for them
-      to count as a match. Units are arc seconds.
-
-   tuning = <healpix-k>
-      Tuning parameter that controls the pixel size used when
-      binning the rows. The legal range is from 0 (corresponding to
-      pixel size of about 60 degrees) to 20 (about 0.2 arcsec). The
-      value of this parameter will not affect the result but may
-      affect the performance in terms of CPU and memory resources
-      required. A default value will be chosen based on the size of
-      the error parameter, but it may be possible to improve
-      performance by adjusting the default value. The value used can
-      be seen by examining the progress output. If your match is
-      taking a long time or is failing from lack of memory it may be
-      worth trying different values for this parameter.
-
-   join = 1and2|1or2|all1|all2|1not2|2not1|1xor2
-      Determines which rows are included in the output table. The
-      matching algorithm determines which of the rows from the first
-      table correspond to which rows from the second. This parameter
-      determines what to do with that information. Perhaps the most
-      obvious thing is to write out a table containing only rows
-      which correspond to a row in both of the two input tables.
-      However, you may also want to see the unmatched rows from one
-      or both input tables, or rows present in one table but
-      unmatched in the other, or other possibilities. The options
-      are:
-
-       * 1and2: An output row for each row represented in both input
-            tables
-       * 1or2: An output row for each row represented in either or
-            both of the input tables
-       * all1: An output row for each matched or unmatched row in
-            table 1
-       * all2: An output row for each matched or unmatched row in
-            table 2
-       * 1not2: An output row only for rows which appear in the
-            first table but are not matched in the second table
-       * 2not1: An output row only for rows which appear in the
-            second table but are not matched in the first table
-       * 1xor2: An output row only for rows represented in one of
-            the input tables but not the other one
-
-      [Default: 1and2]
-
-   find = best|all
-      Determines which matches are retained. If best is selected,
-      then only the best match between the two tables will be
-      retained; in this case the data from a row of either input
-      table will appear in at most one row of the output table. If
-      all is selected, then all pairs of rows from the two input
-      tables which match the input criteria will be represented in
-      the output table.
-
-      [Default: best]
-'''
-    import uk.ac.starlink.ttools.task.SkyMatch2
-    class _tskymatch2_task(uk.ac.starlink.ttools.task.SkyMatch2):
-        def __init__(self):
-            uk.ac.starlink.ttools.task.SkyMatch2.__init__(self)
-    task = _tskymatch2_task()
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    env.setValue('in1', _map_env_value(in1))
-    env.setValue('in2', _map_env_value(in2))
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    table = task.createProducer(env).getTable()
-    _check_unused_args(env)
-    return import_star_table(table)
-
-def votcopy(in_='-', out='-', format='tabledata', **kwargs):
-    '''\
-Transforms between VOTable encodings.
-
-Parameters:
-
-   in_ = <location>
-      Location of the input VOTable. May be a URL, filename, or "-"
-      to indicate standard input. The input table may be compressed
-      using one of the known compression formats (Unix compress,
-      gzip or bzip2).
-
-      [Default: -]
-
-   out = <location>
-      Location of the output VOTable. May be a filename or "-" to
-      indicate standard output.
-
-      [Default: -]
-
-   format = TABLEDATA|BINARY|FITS
-      Determines the encoding format of the table data in the output
-      document. If null is selected, then the tables will be
-      data-less (will contain no DATA element), leaving only the
-      document structure. Data-less tables are legal VOTable
-      elements.
-
-      [Default: tabledata]
-
-   charset = <xml-encoding>
-      Selects the Unicode encoding used for the output XML. The
-      available options and default are dependent on your JVM, but
-      the default probably corresponds to UTF-8. Use help=charset
-      for a full listing.
-
-   cache = true|false
-      Determines whether the input tables are read into a cache
-      prior to being written out. The default is selected
-      automatically depending on the input table; so you should
-      normally leave this flag alone.
-
-   href = true|false
-      In the case of BINARY or FITS encoding, this determines
-      whether the STREAM elements output will contain their data
-      inline or externally. If set false, the output document will
-      be self-contained, with STREAM data inline as base64-encoded
-      characters. If true, then for each TABLE in the document the
-      binary data will be written to a separate file and referenced
-      by an href attribute on the corresponding STREAM element. The
-      name of these files is usually determined by the name of the
-      main output file; but see also the base flag.
-
-   base = <location>
-      Determines the name of external output files written when the
-      href flag is true. Normally these are given names based on the
-      name of the output file. But if this flag is given, the names
-      will be based on the <location> string. This flag is
-      compulsory if href is true and out=- (output is to standard
-      out), since in this case there is no default base name to use.
-'''
-    task = _stilts.getTaskFactory().createObject('votcopy')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def votlint(votable='-', **kwargs):
-    '''\
-Validates VOTable documents.
-
-Parameters:
-
-   votable = <location>
-      Location of the VOTable to be checked. This may be a filename,
-      URL or "-" (the default), to indicate standard input. The
-      input may be compressed using one of the known compression
-      formats (Unix compress, gzip or bzip2).
-
-      [Default: -]
-
-   validate = true|false
-      Whether to validate the input document aganist the VOTable
-      DTD. If true (the default), then as well as votlint's own
-      checks, it is validated against an appropriate version of the
-      VOTable DTD which picks up such things as the presence of
-      unknown elements and attributes, elements in the wrong place,
-      and so on. Sometimes however, particularly when XML namespaces
-      are involved, the validator can get confused and may produce a
-      lot of spurious errors. Setting this flag false prevents this
-      validation step so that only votlint's own checks are
-      performed. In this case many violations of the VOTable
-      standard concerning document structure will go unnoticed.
-
-      [Default: true]
-
-   version = 1.0|1.1|1.2
-      Selects the version of the VOTable standard which the input
-      table is supposed to exemplify. Currently the version can be
-      1.0, 1.1 or 1.2. The version may also be specified within the
-      document using the "version" attribute of the document's
-      VOTABLE element; if it is and it conflicts with the value
-      specified by this flag, a warning is issued.
-
-   out = <location>
-      Destination file for output messages. May be a filename or "-"
-      to indicate standard output.
-
-      [Default: -]
-'''
-    task = _stilts.getTaskFactory().createObject('votlint')
-    for param in task.getParameters():
-        pname = param.getName()
-        if pname in _param_alias_dict:
-            param.setName(_param_alias_dict[pname])
-    env = _JyEnvironment()
-    for kw in kwargs.iteritems():
-        key = kw[0]
-        value = kw[1]
-        env.setValue(key, _map_env_value(value))
-    exe = task.createExecutable(env)
-    _check_unused_args(env)
-    exe.execute()
-
-def cmd_addcol(table, *args):
-    '''\
-Add a new column called <col-name> defined by the algebraic
-expression <expr>. By default the new column appears after the last
-column of the table, but you can position it either before or after
-a specified column using the -before or -after flags respectively.
-The -units, -ucd and -desc flags can be used to define metadata
-values for the new column.
-
-Syntax for the <expr> and <col-id> arguments is described in the
-manual.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [-after <col-id> | -before <col-id>]
-    [-units <units>] [-ucd <ucd>] [-desc <description>]
-    <col-name> <expr>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("addcol")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_addresolve(table, *args):
-    '''\
-Performs name resolution on the string-valued column
->col-id-objname< and appends two new columns >col-name-ra< and
->col-name-dec< containing the resolved Right Ascension and
-Declination in degrees.
-
-Syntax for the <col-id-objname> argument is described in SUN/256.
-
-UCDs are added to the new columns in a way which tries to be
-consistent with any UCDs already existing in the table.
-
-Since this filter works by interrogating a remote service, it will
-obviously be slow. The current implementation is experimental; it
-may be replaced in a future release by some way of doing the same
-thing (perhaps a new STILTS task) which is able to work more
-efficiently by dispatching multiple concurrent requests.
-
-This software uses source code created at the Centre de Donnees
-astronomiques de Strasbourg, France.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <col-id-objname> <col-name-ra> <col-name-dec>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("addresolve")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_addskycoords(table, *args):
-    '''\
-Add new columns to the table representing position on the sky. The
-values are determined by converting a sky position whose coordinates
-are contained in existing columns. The <col-id> arguments give
-identifiers for the two input coordinate columns in the coordinate
-system named by <insys>, and the <col-name> arguments name the two
-new columns, which will be in the coordinate system named by
-<outsys>. The <insys> and <outsys> coordinate system specifiers are
-one of
-
- * icrs: ICRS (Hipparcos) (Right Ascension, Declination)
- * fk5: FK5 J2000.0 (Right Ascension, Declination)
- * fk4: FK4 B1950.0 (Right Ascension, Declination)
- * galactic: IAU 1958 Galactic (Longitude, Latitude)
- * supergalactic: de Vaucouleurs Supergalactic (Longitude, Latitude)
- * ecliptic: Ecliptic (Longitude, Latitude)
-
-The -inunit and -outunit flags may be used to indicate the units of
-the existing coordinates and the units for the new coordinates
-respectively; use one of degrees, radians or sexagesimal (may be
-abbreviated), otherwise degrees will be assumed. For sexagesimal,
-the two corresponding columns must be string-valued in forms like
-hh:mm:ss.s and dd:mm:ss.s respectively.
-
-For certain conversions, the value specified by the -epoch flag is
-of significance. Where significant its value defaults to 2000.0.
-
-Syntax for the <expr> , <col-id1> and <col-id2> arguments is
-described in the manual.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [-epoch <expr>] [-inunit deg|rad|sex] [-outunit deg|rad|sex]
-    <insys> <outsys> <col-id1> <col-id2> <col-name1> <col-name2>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("addskycoords")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_assert(table, *args):
-    '''\
-Check that a boolean expression is true for each row. If the
-expression <expr> does not evaluate true for any row of the table,
-execution terminates with an error. As long as no error occurs, the
-output table is identical to the input one.
-
-The exception generated by an assertion violation is of class
-uk.ac.starlink.ttools.filter.AssertException although that is not
-usually obvious if you are running from the shell in the usual way.
-
-Syntax for the <expr> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <expr>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("assert")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_badval(table, *args):
-    '''\
-For each column specified in <colid-list> any occurrence of the
-value <bad-val> is replaced by a blank entry.
-
-Syntax for the <colid-list> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <bad-val> <colid-list>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("badval")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_cache(table):
-    '''\
-Stores in memory or on disk a temporary copy of the table at this
-point in the pipeline. This can provide improvements in efficiency
-if there is an expensive step upstream and a step which requires
-more than one read of the data downstream. If you see an error like
-"Can't re-read data from stream" then adding this step near the
-start of the filters might help.
-
-The result of this filter is guaranteed to be random-access.
-
-See also the random filter, which caches only when the input table
-is not random-access.
-
-The filtered table is returned.
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("cache")
-    sargs = []
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_check(table):
-    '''\
-Runs checks on the table at the indicated point in the processing
-pipeline. This is strictly a debugging measure, and may be
-time-consuming for large tables.
-
-The filtered table is returned.
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("check")
-    sargs = []
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_clearparams(table, *args):
-    '''\
-Clears the value of one or more named parameters. Each of the
-<pname> values supplied may be either a parameter name or a simple
-wildcard expression matching parameter names. Currently the only
-wildcarding is a "*" to match any sequence of characters.
-clearparams * will clear all the parameters in the table.
-
-It is not an error to supply <pname>s which do not exist in the
-table - these have no effect.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <pname> ...
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("clearparams")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_colmeta(table, *args):
-    '''\
-Modifies the metadata of one or more columns. Some or all of the
-name, units, ucd and description of the column(s), identified by
-<colid-list> can be set by using some or all of the listed flags.
-Typically, <colid-list> will simply be the name of a single column.
-
-Syntax for the <colid-list> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [-name <name>] [-units <units>] [-ucd <ucd>] [-desc <descrip>]
-    <colid-list>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("colmeta")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_delcols(table, *args):
-    '''\
-Delete the specified columns. The same column may harmlessly be
-specified more than once.
-
-Syntax for the <colid-list> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <colid-list>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("delcols")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_every(table, *args):
-    '''\
-Include only every <step>'th row in the result, starting with the
-first row.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <step>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("every")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_explodecols(table, *args):
-    '''\
-Takes a list of specified columns which represent N-element arrays
-and replaces each one with N scalar columns. Each of the columns
-specified by <colid-list> must have a fixed-length array type,
-though not all the arrays need to have the same number of elements.
-
-Syntax for the <colid-list> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <colid-list>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("explodecols")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_explodeall(table, *args):
-    '''\
-Replaces any columns which is an N-element arrays with N scalar
-columns. Only columns with fixed array sizes are affected. The
-action can be restricted to only columns of a certain shape using
-the flags.
-
-If the -ifndim flag is used, then only columns of dimensionality
-<ndim> will be exploded. <ndim> may be 1, 2, ....
-
-If the -ifshape flag is used, then only columns with a specific
-shape will be exploded; <dims> is a space- or comma-separated list
-of dimension extents, with the most rapidly-varying first, e.g. '2 5
-' to explode all 2 x 5 element array columns.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [-ifndim <ndim>] [-ifshape <dims>]
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("explodeall")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_fixcolnames(table):
-    '''\
-Renames all columns and parameters in the input table so that they
-have names which have convenient syntax for STILTS. For the most
-part this means replacing spaces and other non-alphanumeric
-characters with underscores. This is a convenience which lets you
-use column names in algebraic expressions and other STILTS syntax.
-
-The filtered table is returned.
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("fixcolnames")
-    sargs = []
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_head(table, *args):
-    '''\
-Include only the first <nrows> rows of the table. If the table has
-fewer than <nrows> rows then it will be unchanged.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <nrows>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("head")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_keepcols(table, *args):
-    '''\
-Select the columns from the input table which will be included in
-the output table. The output table will include only those columns
-listed in <colid-list>, in that order. The same column may be listed
-more than once, in which case it will appear in the output table
-more than once.
-
-Syntax for the <colid-list> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <colid-list>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("keepcols")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_meta(table, *args):
-    '''\
-Provides information about the metadata for each column. This filter
-turns the table sideways, so that each row of the output corresponds
-to a column of the input. The columns of the output table contain
-metadata items such as column name, units, UCD etc corresponding to
-each column of the input table.
-
-By default the output table contains columns for the following
-items:
-
- * Index: Position of column in table
- * Name: Column name
- * Class: Data type of objects in column
- * Shape: Shape of array values
- * ElSize: Size of each element in column (mostly useful for
-      strings)
- * Units: Unit string
- * Description: Description of data in the column
- * UCD: Unified Content Descriptor
-
-as well as any table-specific column metadata items that the table
-contains.
-
-However, the output may be customised by supplying one or more
-<item> headings. These may be selected from the above as well as the
-following:
-
- * UCD_desc: Textual description of UCD
-
-as well as any table-specific metadata. It is not an error to
-specify an item for which no metadata exists in any of the columns
-(such entries will result in empty columns).
-
-Any table parameters of the input table are propagated to the output
-one.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [<item> ...]
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("meta")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_progress(table):
-    '''\
-Monitors progress by displaying the number of rows processed so far
-on the terminal (standard error). This number is updated every
-second or thereabouts; if all the processing is done in under a
-second you may not see any output. If the total number of rows in
-the table is known, an ASCII-art progress bar is updated, otherwise
-just the number of rows seen so far is written.
-
-The filtered table is returned.
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("progress")
-    sargs = []
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_random(table):
-    '''\
-Ensures that random access is available on this table. If the table
-currently has random access, it has no effect. If only sequential
-access is available, the table is cached so that downstream steps
-will see the cached, hence random-access, copy.
-
-The filtered table is returned.
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("random")
-    sargs = []
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_randomview(table):
-    '''\
-Ensures that steps downstream only use random access methods for
-table access. If the table is sequential only, this will result in
-an error. Only useful for debugging.
-
-The filtered table is returned.
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("randomview")
-    sargs = []
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_repeat(table, *args):
-    '''\
-Repeats the rows of a table multiple times to produce a longer
-table. The output table will have <count> times as many rows as the
-input table.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <count>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("repeat")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_replacecol(table, *args):
-    '''\
-Replaces the content of a column with the value of an algebraic
-expression. The old values are discarded in favour of the result of
-evaluating <expr>. You can specify the metadata for the new column
-using the -name, -units, -ucd and -desc flags; for any of these
-items which you do not specify, they will take the values from the
-column being replaced.
-
-It is legal to reference the replaced column in the expression, so
-for example "replacecol pixsize pixsize*2" just multiplies the
-values in column pixsize by 2.
-
-Syntax for the <col-id> and <expr> arguments is described in the
-manual.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [-name <name>] [-units <units>] [-ucd <ucd>] [-desc <descrip>]
-    <col-id> <expr>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("replacecol")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_replaceval(table, *args):
-    '''\
-For each column specified in <colid-list> any instance of <old-val>
-is replaced by <new-val>. The value string 'null' can be used for
-either <old-value> or <new-value> to indicate a blank value (but see
-also the badval filter).
-
-Syntax for the <colid-list> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <old-val> <new-val> <colid-list>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("replaceval")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_rowrange(table, *args):
-    '''\
-Includes only rows in a given range. The range can either be
-supplied as "<first> <last>", where row indices are inclusive, or "
-<first> +<count>". In either case, the first row is numbered 1.
-
-Thus, to get the first hundred rows, use either "rowrange 1 100" or
-"rowrange 1 +100" and to get the second hundred, either "rowrange
-101 200" or "rowrange 101 +100"
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <first> <last>|+<count>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("rowrange")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_select(table, *args):
-    '''\
-Include in the output table only rows for which the expression
-<expr> evaluates to true. <expr> must be an expression which
-evaluates to a boolean value (true/false).
-
-Syntax for the <expr> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <expr>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("select")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_seqview(table):
-    '''\
-Ensures that steps downstream see the table as sequential access.
-Any attempts at random access will fail. Only useful for debugging.
-
-The filtered table is returned.
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("seqview")
-    sargs = []
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_setparam(table, *args):
-    '''\
-Sets a named parameter in the table to a given value. The parameter
-named <pname> is set to the value <pval>. By default the type of the
-parameter is determined automatically (if it looks like an integer
-it's an integer etc) but this can be overridden using the -type
-flag. The parameter description may be set using the -desc flag.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [-type byte|short|int|long|float|double|boolean|string]
-    [-desc <descrip>] [-unit <units>] [-ucd <ucd>]
-    <pname> <pval>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("setparam")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_sort(table, *args):
-    '''\
-Sorts the table according to the value of one or more algebraic
-expressions. The sort key expressions appear, as separate
-(space-separated) words, in <key-list>; sorting is done on the first
-expression first, but if that results in a tie then the second one
-is used, and so on.
-
-Each expression must evaluate to a type that it makes sense to sort,
-for instance numeric. If the -down flag is used, the sort order is
-descending rather than ascending.
-
-Blank entries are by default considered to come at the end of the
-collation sequence, but if the -nullsfirst flag is given then they
-are considered to come at the start instead.
-
-Syntax for the <key-list> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [-down] [-nullsfirst] <key-list>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("sort")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_sorthead(table, *args):
-    '''\
-Performs a sort on the table according to the value of one or more
-algebraic expressions, retaining only <nrows> rows at the head of
-the resulting sorted table. The sort key expressions appear, as
-separate (space-separated) words, in <key-list>; sorting is done on
-the first expression first, but if that results in a tie then the
-second one is used, and so on. Each expression must evaluate to a
-type that it makes sense to sort, for instance numeric.
-
-If the -tail flag is used, then the last <nrows> rows rather than
-the first ones are retained.
-
-If the -down flag is used the sort order is descending rather than
-ascending.
-
-Blank entries are by default considered to come at the end of the
-collation sequence, but if the -nullsfirst flag is given then they
-are considered to come at the start instead.
-
-This filter is functionally equivalent to using sort followed by
-head, but it can be done in one pass and is usually cheaper on
-memory and faster, as long as <nrows> is significantly lower than
-the size of the table.
-
-Syntax for the <key-list> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [-tail] [-down] [-nullsfirst] <nrows> <key-list>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("sorthead")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_stats(table, *args):
-    '''\
-Calculates statistics on the data in the table. This filter turns
-the table sideways, so that each row of the output corresponds to a
-column of the input. The columns of the output table contain
-statistical items such as mean, standard deviation etc corresponding
-to each column of the input table.
-
-By default the output table contains columns for the following
-items:
-
- * Name: Column name
- * Mean: Average
- * StDev: Population Standard deviation
- * Minimum: Numeric minimum
- * Maximum: Numeric maximum
- * NGood: Number of non-blank cells
-
-However, the output may be customised by supplying one or more
-<item> headings. These may be selected from the above as well as the
-following:
-
- * NBad: Number of blank cells
- * Variance: Population Variance
- * SampStDev: Sample Standard Deviation
- * SampVariance: Sample Variance
- * Skew: Gamma 1 skewness measure
- * Kurtosis: Gamma 2 peakedness measure
- * Sum: Sum of values
- * MinPos: Row index of numeric minimum
- * MaxPos: Row index of numeric maximum
- * Cardinality: Number of distinct values in column; values >100
-      ignored
- * Median: Middle value in sequence
- * Quartile1: First quartile
- * Quartile2: Second quartile
- * Quartile3: Third quartile
-
-Additionally, the form "Q.nn" may be used to represent the quantile
-corresponding to the proportion 0.nn, e.g.:
-
- * Q.25: First quartile
- * Q.625: Fifth octile
-
-Any parameters of the input table are propagated to the output one.
-
-Note that quantile calculations (including median and quartiles) can
-be expensive on memory. If you want to calculate quantiles for large
-tables, it may be wise to reduce the number of columns to only those
-you need the quantiles for earlier in the pipeline. No interpolation
-is performed when calculating quantiles.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [<item> ...]
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("stats")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_tablename(table, *args):
-    '''\
-Sets the table's name attribute to the given string.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <name>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("tablename")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_tail(table, *args):
-    '''\
-Include only the last <nrows> rows of the table. If the table has
-fewer than <nrows> rows then it will be unchanged.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    <nrows>
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("tail")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_transpose(table, *args):
-    '''\
-Transposes the input table so that columns become rows and vice
-versa. The -namecol flag can be used to specify a column in the
-input table which will provide the column names for the output
-table. The first column of the output table will contain the column
-names of the input table.
-
-Syntax for the <col-id> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [-namecol <col-id>]
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("transpose")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def cmd_uniq(table, *args):
-    '''\
-Eliminates adjacent rows which have the same values. If used with no
-arguments, then any row which has identical values to its
-predecessor is removed.
-
-If the <colid-list> parameter is given then only the values in the
-specified columns must be equal in order for the row to be removed.
-
-If the -count flag is given, then an additional column with the name
-DupCount will be prepended to the table giving a count of the number
-of duplicated input rows represented by each output row. A unique
-row has a DupCount value of 1.
-
-Syntax for the <colid-list> argument is described in SUN/256.
-
-The filtered table is returned.
-
-args is a list with words as elements:
-    [-count] [<colid-list>]
-'''
-    pfilt = _StepFactory.getInstance().getFilterFactory().createObject("uniq")
-    sargs = [str(a) for a in args]
-    argList = _ArrayList(sargs)
-    step = pfilt.createStep(argList.iterator())
-    return import_star_table(step.wrap(table))
-
-def mode_out(table, out='-', ofmt='(auto)'):
-    '''\
-Writes a new table.
-
-Parameters:
-
-   out = <out-table>
-      The location of the output table. This is usually a filename
-      to write to. If it is equal to the special value "-" (the
-      default) the output table will be written to standard output.
-
-      [Default: -]
-
-   ofmt = <out-format>
-      Specifies the format in which the output table will be written
-      (one of the ones in SUN/256 - matching is case-insensitive and
-      you can use just the first few letters). If it has the special
-      value "(auto)" (the default), then the output filename will be
-      examined to try to guess what sort of file is required usually
-      by looking at the extension. If it's not obvious from the
-      filename what output format is intended, an error will result.
-
-      [Default: (auto)]
-'''
-    env = _JyEnvironment()
-    env.setValue('out', _map_env_value(out))
-    env.setValue('ofmt', _map_env_value(ofmt))
-    mode = _stilts.getModeFactory().createObject('out')
-    consumer = mode.createConsumer(env)
-    _check_unused_args(env)
-    consumer.consume(table)
-
-def mode_meta(table):
-    '''\
-Prints the table metadata to standard output. The name and type etc
-of each column is tabulated, and table parameters are also shown.
-
-See the meta filter for more flexible output of table metadata.
-'''
-    env = _JyEnvironment()
-    mode = _stilts.getModeFactory().createObject('meta')
-    consumer = mode.createConsumer(env)
-    _check_unused_args(env)
-    consumer.consume(table)
-
-def mode_stats(table):
-    '''\
-Calculates and displays univariate statistics for each of the
-numeric columns in the table. The following entries are shown for
-each column as appropriate:
-
- * mean
- * population standard deviation
- * minimum
- * maximum
- * number of non-null entries
-
-See the stats filter for more flexible statistical calculations.
-'''
-    env = _JyEnvironment()
-    mode = _stilts.getModeFactory().createObject('stats')
-    consumer = mode.createConsumer(env)
-    _check_unused_args(env)
-    consumer.consume(table)
-
-def mode_count(table):
-    '''\
-Counts the number of rows and columns and writes the result to
-standard output.
-'''
-    env = _JyEnvironment()
-    mode = _stilts.getModeFactory().createObject('count')
-    consumer = mode.createConsumer(env)
-    _check_unused_args(env)
-    consumer.consume(table)
-
-def mode_cgi(table, ofmt='votable'):
-    '''\
-Writes a table to standard output in a way suitable for use as
-output from a CGI (Common Gateway Interface) program. This is very
-much like out mode but a short CGI header giving the MIME
-Content-Type is prepended to the output
-
-Parameters:
-
-   ofmt = <out-format>
-      Specifies the format in which the output table will be written
-      (one of the ones in SUN/256 - matching is case-insensitive and
-      you can use just the first few letters).
-
-      [Default: votable]
-'''
-    env = _JyEnvironment()
-    env.setValue('ofmt', _map_env_value(ofmt))
-    mode = _stilts.getModeFactory().createObject('cgi')
-    consumer = mode.createConsumer(env)
-    _check_unused_args(env)
-    consumer.consume(table)
-
-def mode_discard(table):
-    '''\
-Reads all the data in the table in sequential mode and discards it.
-May be useful in conjunction with the assert filter.
-'''
-    env = _JyEnvironment()
-    mode = _stilts.getModeFactory().createObject('discard')
-    consumer = mode.createConsumer(env)
-    _check_unused_args(env)
-    consumer.consume(table)
-
-def mode_topcat(table):
-    '''\
-Attempts to display the output table directly in TOPCAT. If a TOPCAT
-instance is already running on the local host, an attempt will be
-made to open the table in that. A variety of mechanisms are used to
-attempt communication with an existing TOPCAT instance. In order:
- * SAMP using existing hub (TOPCAT v3.4+ only, requires SAMP hub to
-      be running)
- * PLASTIC using existing hub (requires PLASTIC hub to be running)
- * SOAP (requires TOPCAT to run with somewhat deprecated -soap flag,
-      may be limitations on table size)
- * SAMP using internal, short-lived hub (TOPCAT v3.4+ only, running
-      hub not required, but may be slow. It's better to start an
-      external hub, e.g. topcat -exthub) Failing that, an attempt
-will be made to launch a new TOPCAT instance for display. This only
-works if the TOPCAT classes are on the class path.
-
-If large tables are involved, starting TOPCAT with the -disk flag is
-probably a good idea.
-'''
-    env = _JyEnvironment()
-    mode = _stilts.getModeFactory().createObject('topcat')
-    consumer = mode.createConsumer(env)
-    _check_unused_args(env)
-    consumer.consume(table)
-
-def mode_samp(table, format='votable fits', client=None):
-    '''\
-Sends the table to registered SAMP-aware applications subscribed to
-a suitable table load MType. SAMP, the Simple Application Messaging
-Protocol, is a tool interoperability protocol. A SAMP Hub must be
-running for this to work.
-
-Parameters:
-
-   format = <value>
-      Gives one or more table format types for attempting the table
-      transmission over SAMP. If multiple values are supplied, they
-      should be separated by spaces. Each value supplied for this
-      parameter corresponds to a different MType which may be used
-      for the transmission. If a single value is used, a SAMP
-      broadcast will be used. If multiple values are used, each
-      registered client will be interrogated to see whether it
-      subscribes to the corresponding MTypes in order; the first one
-      to which it is subscribed will be used to send the table. The
-      standard options are
-
-       * votable: use MType table.load.votable
-       * fits: use MType table.load.fits
-
-      If any other string is used which corresponds to one of
-      STILTS's known table output formats, an attempt will be made
-      to use an ad-hoc MType of the form table.load.format.
-
-      [Default: votable fits]
-
-   client = <name-or-id>
-      Identifies a registered SAMP client which is to receive the
-      table. Either the client ID or the (case-insensitive)
-      application name may be used. If a non-null value is given,
-      then the table will be sent to only the first client with the
-      given name or ID. If no value is supplied the table will be
-      sent to all suitably subscribed clients.
-'''
-    env = _JyEnvironment()
-    env.setValue('format', _map_env_value(format))
-    env.setValue('client', _map_env_value(client))
-    mode = _stilts.getModeFactory().createObject('samp')
-    consumer = mode.createConsumer(env)
-    _check_unused_args(env)
-    consumer.consume(table)
-
-def mode_plastic(table, transport=None, client=None):
-    '''\
-Broadcasts the table to any registered Plastic-aware applications.
-PLASTIC, the PLatform for AStronomical Tool InterConnection, is a
-tool interoperability protocol. A Plastic hub must be running in
-order for this to work.
-
-Parameters:
-
-   transport = string|file
-      Determines the method (PLASTIC message) used to perform the
-      PLASTIC communication. The choices are
-
-       * string: VOTable serialized as a string and passed as a call
-            parameter (ivo://votech.org/votable/load). Not suitable
-            for very large files.
-       * file: VOTable written to a temporary file and the filename
-            passed as a call parameter (
-            ivo://votech.org/votable/loadFromURL). The file ought to
-            be deleted once it has been loaded. Not suitable for
-            inter-machine communication.
-
-      If no value is set (null) then a decision will be taken based
-      on the apparent size of the table.
-
-   client = <app-name>
-      Gives the name of a PLASTIC listener application which is to
-      receive the broadcast table. If a non-null value is given,
-      then only the first registered application which reports its
-      application name as that value will receive the message. If no
-      value is supplied, the broadcast will be to all listening
-      applications.
-'''
-    env = _JyEnvironment()
-    env.setValue('transport', _map_env_value(transport))
-    env.setValue('client', _map_env_value(client))
-    mode = _stilts.getModeFactory().createObject('plastic')
-    consumer = mode.createConsumer(env)
-    _check_unused_args(env)
-    consumer.consume(table)
-
-def mode_tosql(table, protocol, db, dbtable, host='localhost', write='create', user='mbt', password=None):
-    '''\
-Writes a new table to an SQL database. You need the appropriate JDBC
-drivers and -Djdcb.drivers set as usual (see SUN/256).
-
-Parameters:
-
-   protocol = <jdbc-protocol>
-      The driver-specific sub-protocol specifier for the JDBC
-      connection. For MySQL's Connector/J driver, this is mysql, and
-      for PostgreSQL's driver it is postgresql. For other drivers,
-      you may have to consult the driver documentation.
-
-   host = <value>
-      The host which is acting as a database server.
-
-      [Default: localhost]
-
-   db = <db-name>
-      The name of the database on the server into which the new
-      table will be written.
-
-   dbtable = <table-name>
-      The name of the table which will be written to the database.
-
-   write = create|dropcreate|append
-      Controls how the values are written to a table in the
-      database. The options are:
-
-       * create: Creates a new table before writing. It is an error
-            if a table of the same name already exists.
-       * dropcreate: Creates a new database table before writing. If
-            a table of the same name already exists, it is dropped
-            first.
-       * append: Appends to an existing table. An error results if
-            the named table has the wrong structure (number or types
-            of columns) for the data being written.
-
-      [Default: create]
-
-   user = <username>
-      User name for the SQL connection to the database.
-
-      [Default: mbt]
-
-   password = <passwd>
-      Password for the SQL connection to the database.
-'''
-    env = _JyEnvironment()
-    env.setValue('protocol', _map_env_value(protocol))
-    env.setValue('db', _map_env_value(db))
-    env.setValue('dbtable', _map_env_value(dbtable))
-    env.setValue('host', _map_env_value(host))
-    env.setValue('write', _map_env_value(write))
-    env.setValue('user', _map_env_value(user))
-    env.setValue('password', _map_env_value(password))
-    mode = _stilts.getModeFactory().createObject('tosql')
-    consumer = mode.createConsumer(env)
-    _check_unused_args(env)
-    consumer.consume(table)
-
Index: branches/meh_branches/ppstack_test/ippToPsps/perl/pspsSchema2xml.pl
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/perl/pspsSchema2xml.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/perl/pspsSchema2xml.pl	(revision 34041)
@@ -4,6 +4,6 @@
 #
 # Script that searches a dir containing PSPS schema files, finds those that comtain the 
-# tables on interest then parses them into an XML format. Also generates C-header files 
-# containing enums that detail table column names and numbers.
+# tables on interest then parses them into the VOTable format. Also generates trac-wiki 
+# formatted tables.
 #
 #######################################################################################
@@ -51,20 +51,4 @@
 
 my $enumsHeader = ucfirst($type)."BatchEnums";
-open(OUT, ">".$enumsHeader.".h") or die("Error");
-
-print OUT "#ifndef ".uc($enumsHeader)."_H\n";
-print OUT "#define ".uc($enumsHeader)."_H\n\n";
-
-# tables file
-my $tablesOutput = new IO::File(">tables.xml");
-my $tablesWriter = new XML::Writer(OUTPUT => $tablesOutput, DATA_MODE => 1, DATA_INDENT=>2);
-$tablesWriter->xmlDecl('UTF-8');
-$tablesWriter->startTag('tableDescriptions', "type" => "$type");
-
-# map file
-my $mapOutput = new IO::File(">map.xml");
-my $mapWriter = new XML::Writer(OUTPUT => $mapOutput, DATA_MODE => 1, DATA_INDENT=>2);
-$mapWriter->xmlDecl('UTF-8');
-$mapWriter->startTag('tabledata', "type" => "$type");
 
 # VOTable file
@@ -82,18 +66,8 @@
 
 # finish up XML
-$tablesWriter->endTag();
-$tablesWriter->end();
-
-# finish up XML
-$mapWriter->endTag();
-$mapWriter->end();
-
-# finish up XML
 $votWriter->endTag(); # end RESOURCE tag
 $votWriter->endTag(); # end of TABLE tag
 $votWriter->end();
 
-print OUT "\n#endif";
-close OUT;
 close WIKI;
 
@@ -208,4 +182,5 @@
 
     parseTable("Object");
+    #parseTable("ObjectCalColor");
 }
 
@@ -230,9 +205,4 @@
     print WIKI "|| '''!".$tableNameOut."''' ||||||||||||||\n";
     print WIKI "|| '''ODM attribute''' || '''units''' || '''Data type''' || '''Default''' || '''Description''' || '''IPP source''' || '''IPP variable/notes''' ||\n";
-    print OUT "\ntypedef enum {\n";
-    $tablesWriter->startTag('table', "name" => $tableNameOut);
-    $mapWriter->startTag('table', 
-            "name" => $tableNameOut,
-            "ippfitsextension" => "");
     $votWriter->startTag('TABLE', 
             "name" => "$tableNameOut");
@@ -287,6 +257,4 @@
 
     if (!$found) {print "Could not find table '$tableName'\n";}
-    $tablesWriter->endTag();
-    $mapWriter->endTag();
 
     $votWriter->startTag('DATA');
@@ -295,5 +263,4 @@
         $votWriter->endTag(); # end DATA tag
         $votWriter->endTag(); # end TABLE tag
-        print OUT "} ".$tableNameOut.";\n";
 
     close SCHEMA;
@@ -384,13 +351,5 @@
     $colNum++;
 
-    print OUT "  ".uc($tableName)."_".uc($name)." = ".$colNum.",\n";
     print WIKI "|| ".$name."||".$unit."||".$mstype."||".$default."||".$comment."|| || ||\n";
-
-    $tablesWriter->startTag('column',
-            "name" => $name,
-            "type" => $type,
-            "default" => $default,
-            "comment" => $fullComment);
-    $tablesWriter->endTag();
 
     # get VOTable type
@@ -413,8 +372,4 @@
     $votWriter->endTag();
 
-    $mapWriter->comment(" **MISSING** <map pspsName=\"$name\" ippType=\"$type\" ippName=\"\" comment=\"$fullComment\"/>");
-
-#    $mapWriter->endTag();
-
     return $colNum;
 }
Index: branches/meh_branches/ppstack_test/ippToPsps/src/Dvo.c
===================================================================
--- branches/meh_branches/ppstack_test/ippToPsps/src/Dvo.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippToPsps/src/Dvo.c	(revision 34041)
@@ -47,7 +47,7 @@
         externID = atoi(row[1]);
 
-        this->logger->print(this->logger, MSG_INFO, "Dvo", "---------------------------------------------------------------------\n");
-        this->logger->print(this->logger, MSG_INFO, "Dvo", "Getting skylist from DVO database for source ID = %d and extern ID = %d\n",
-                sourceID, externID); 
+        //this->logger->print(this->logger, MSG_INFO, "Dvo", "---------------------------------------------------------------------\n");
+        //this->logger->print(this->logger, MSG_INFO, "Dvo", "Getting skylist from DVO database for source ID = %d and extern ID = %d\n",
+        //        sourceID, externID); 
         skyList = dvoSkyListByExternID(this->dvoConfig, sourceID, externID, &image);
         if (!skyList) {
@@ -70,16 +70,16 @@
 
         // now get detections
-        this->logger->print(this->logger, MSG_INFO, "Dvo", "Getting detections...\n"); 
+        //this->logger->print(this->logger, MSG_INFO, "Dvo", "Getting detections...\n"); 
         dvoDetection* dvoDetections = NULL;
         int32_t maxDetectionId = -1;
-        int32_t numDetections = 
+        //int32_t numDetections = 
             dvoGetDetections(skyList, image->imageID, &dvoDetections, &maxDetectionId);
 
-        this->logger->print(this->logger, MSG_INFO, "Dvo", 
-                "Found %d detections with a max detection ID of %d\n", 
-                numDetections, maxDetectionId); 
-
-
-        this->logger->print(this->logger, MSG_INFO, "Dvo", "Inserting IDs into dvoDetection table...\n"); 
+        //this->logger->print(this->logger, MSG_INFO, "Dvo", 
+        //        "Found %d detections with a max detection ID of %d\n", 
+        //        numDetections, maxDetectionId); 
+
+
+        //this->logger->print(this->logger, MSG_INFO, "Dvo", "Inserting IDs into dvoDetection table...\n"); 
 
         uint32_t zeroDvoCount = 0;
@@ -188,6 +188,6 @@
     this->dvoConfig = dvoConfigRead(&argc, argv);
 
-    for (int i=0; i<argc; i++) free(argv[i]);
-    free(argv);
+    //for (int i=0; i<argc; i++) free(argv[i]);
+    //free(argv);
 
     // method pointers
Index: branches/meh_branches/ppstack_test/ippTools/share/Makefile.am
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/Makefile.am	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/Makefile.am	(revision 34041)
@@ -8,6 +8,4 @@
 	addtool_find_cam_id_dvo.sql \
 	addtool_find_cam_id.sql \
-	addtool_find_sky_id_dvo.sql \
-	addtool_find_sky_id.sql \
 	addtool_find_sky_id_multi_dvo.sql \
 	addtool_find_sky_id_multi.sql \
@@ -17,10 +15,8 @@
 	addtool_find_pendingexp_cam.sql \
 	addtool_find_pendingexp_stack.sql \
-	addtool_find_pendingexp_staticsky.sql \
 	addtool_find_pendingexp_staticsky_multi.sql \
 	addtool_find_pendingmergeprocess.sql \
 	addtool_find_processedexp_cam.sql \
 	addtool_find_processedexp_stack.sql \
-	addtool_find_processedexp_staticsky.sql \
 	addtool_find_processedexp_staticsky_multi.sql \
 	addtool_find_minidvodbprocessed.sql \
@@ -30,5 +26,4 @@
 	addtool_queue_cam_id.sql \
 	addtool_queue_stack_id.sql \
-	addtool_queue_sky_id.sql \
 	addtool_queue_sky_id_multi.sql \
 	addtool_queue_minidvodbrun.sql \
@@ -455,4 +450,5 @@
 	vptool_pendingrun.sql \
 	vptool_processedcell.sql \
-	vptool_revertrun.sql
+	vptool_revertrun.sql \
+	sctool_list.sql
 
Index: branches/meh_branches/ppstack_test/ippTools/share/addtool_checkminidvodbaddrun.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/addtool_checkminidvodbaddrun.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/addtool_checkminidvodbaddrun.sql	(revision 34041)
@@ -10,5 +10,5 @@
        (SELECT minidvodb_group as minidbg, minidvodb_name as minidbn, count(state) 
         AS cnt 
-        FROM addRun 
+        FROM addRun where minidvodb_group = '%s'
         GROUP BY minidvodb_name ) 
    AS foo1 ON minidvodb_name = minidbn
Index: branches/meh_branches/ppstack_test/ippTools/share/addtool_find_pendingexp_staticsky_multi.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/addtool_find_pendingexp_staticsky_multi.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/addtool_find_pendingexp_staticsky_multi.sql	(revision 34041)
@@ -25,5 +25,5 @@
 WHERE
     staticskyRun.state = 'full'
-    AND stage = 'staticsky_multi'
+    AND stage = 'staticsky'
     AND ((addRun.state = 'new' AND addProcessedExp.add_id IS NULL) OR addRun.state = 'update')
     AND addRun.dvodb IS NOT NULL
Index: branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id.sql	(revision 34041)
@@ -2,6 +2,6 @@
     staticskyRun.*
 FROM 
-     staticskyResult
-join staticskyRun using (sky_id)
+     staticskyRun
+join staticskyResult using (sky_id)
 join staticskyInput using(sky_id)
 JOIN stackRun USING(stack_id)
@@ -19,4 +19,4 @@
     staticskyRun.state = 'full'
     AND staticskyResult.quality = 0
-    AND added_exp_id IS NULL
+    AND added_sky_id IS NULL
     -- addtool adds checks on exposure being added to the dvodb previously
Index: branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id_dvo.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id_dvo.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id_dvo.sql	(revision 34041)
@@ -1,12 +1,13 @@
-SELECT staticskyRun.* FROM staticskyResult
-JOIN staticskyRun USING(sky_id)
+SELECT staticskyRun.* FROM staticskyRun
+JOIN staticskyResult USING(sky_id)
 join staticskyInput using(sky_id)
 JOIN stackRun USING(stack_id)
 
 WHERE staticskyRun.state = 'full' and staticskyResult.quality = 0
-    AND sky_id NOT IN (SELECT sky_id
+    AND stack_id NOT IN (SELECT stack_id
        FROM addRun
        JOIN staticskyResult on staticskyResult.sky_id = addRun.stage_id
        JOIN staticskyRun USING(sky_id)
+       JOIN staticskyInput USING(sky_id)
        WHERE addRun.stage = 'staticsky' AND %s
       )
Index: branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id_multi.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id_multi.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id_multi.sql	(revision 34041)
@@ -2,18 +2,18 @@
      distinct(sky_id) as stage_id,
      staticskyRun.*,
-    staticskyResult.num_inputs
+    staticskyResult.num_inputs, stack_id
 FROM 
-     staticskyResult
-join staticskyRun using (sky_id)
+     staticskyRun
+join staticskyResult using (sky_id)
 join staticskyInput using(sky_id)
 JOIN stackRun USING(stack_id)
 
-LEFT JOIN (SELECT sky_id       AS added_sky_id,
+LEFT JOIN (SELECT stack_id       AS added_stack_id,
                   addRun.dvodb AS previous_dvodb
            FROM addRun
 JOIN staticskyRun on sky_id = stage_id
           ) as foo
-     ON sky_id = added_sky_id 
-     AND stage = 'staticsky_multi'
+     ON stack_id = added_stack_id 
+     AND stage = 'staticsky'
      -- hook for qualifying the join on the previous_dvodb
      AND %s
@@ -21,4 +21,4 @@
     staticskyRun.state = 'full'
     AND staticskyResult.quality = 0
-    AND added_exp_id IS NULL
+    AND added_stack_id IS NULL
     -- addtool adds checks on exposure being added to the dvodb previously
Index: branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id_multi_dvo.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id_multi_dvo.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/addtool_find_sky_id_multi_dvo.sql	(revision 34041)
@@ -1,3 +1,3 @@
-SELECT distinct(sky_id) as stage_id, staticskyRun.*, staticskyResult.num_inputs FROM staticskyResult
+SELECT distinct(sky_id) as stage_id, staticskyRun.*, staticskyResult.num_inputs, stack_id FROM staticskyResult
 JOIN staticskyRun USING(sky_id)
 join staticskyInput using(sky_id)
@@ -5,8 +5,9 @@
 
 WHERE staticskyRun.state = 'full' and staticskyResult.quality = 0
-    AND sky_id NOT IN (SELECT sky_id
+    AND stack_id NOT IN (SELECT stack_id
        FROM addRun
        JOIN staticskyResult on staticskyResult.sky_id = addRun.stage_id
        JOIN staticskyRun USING(sky_id)
-       WHERE addRun.stage = 'staticsky_multi' AND %s
+       JOIN staticskyInput USING(sky_id)
+       WHERE addRun.stage = 'staticsky' AND %s
       )
Index: branches/meh_branches/ppstack_test/ippTools/share/addtool_queue_sky_id_multi.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/addtool_queue_sky_id_multi.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/addtool_queue_sky_id_multi.sql	(revision 34041)
@@ -2,5 +2,5 @@
     SELECT
         0,              -- add_id
-        'staticsky_multi',		-- stage
+        'staticsky',		-- stage
         sky_id,         -- stage_id
 	%d,		-- stage_extra1
Index: branches/meh_branches/ppstack_test/ippTools/share/addtool_revertprocessedexp_staticsky_multi.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/addtool_revertprocessedexp_staticsky_multi.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/addtool_revertprocessedexp_staticsky_multi.sql	(revision 34041)
@@ -5,3 +5,3 @@
     AND addProcessedExp.fault != 0
     AND addRun.state = 'new'
-    AND addRun.stage = 'staticsky_multi'
+    AND addRun.stage = 'staticsky'
Index: branches/meh_branches/ppstack_test/ippTools/share/chiptool_dropprocessedimfile_update.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/chiptool_dropprocessedimfile_update.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/chiptool_dropprocessedimfile_update.sql	(revision 34041)
@@ -1,5 +1,5 @@
-UPDATE chipProcessedImfile 
-    SET quality = %d,
-        data_state = 'full',
-        magicked = 0,
-        fault = 0
+UPDATE chipProcessedImfile LEFT JOIN camRun USING(chip_id)
+    SET chipProcessedImfile.quality = %d,
+        chipProcessedImfile.data_state = 'full',
+        chipProcessedImfile.magicked = 0,
+        chipProcessedImfile.fault = 0
Index: branches/meh_branches/ppstack_test/ippTools/share/chiptool_pendingimfile.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/chiptool_pendingimfile.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/chiptool_pendingimfile.sql	(revision 34041)
@@ -6,4 +6,6 @@
     rawImfile.magicked as raw_magicked,
     (rawImfile.user_1 is not NULL and rawImfile.user_1 > 0.5) as deburned,
+    rawImfile.burntool_state as burntool_state,
+    rawImfile.video_cells as video_cells,
     rawExp.exp_tag,
     rawExp.exp_name,
Index: branches/meh_branches/ppstack_test/ippTools/share/pstamptool_revertreq_deletejobs.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/pstamptool_revertreq_deletejobs.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/pstamptool_revertreq_deletejobs.sql	(revision 34041)
@@ -3,3 +3,4 @@
 FROM pstampJob
     JOIN pstampRequest USING(req_id)
-WHERE pstampRequest.state = 'new'
+WHERE pstampRequest.state = 'new' 
+    AND pstampRequest.fault > 0
Index: branches/meh_branches/ppstack_test/ippTools/share/pxadmin_create_tables.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/pxadmin_create_tables.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/pxadmin_create_tables.sql	(revision 34041)
@@ -2127,4 +2127,20 @@
 ) ENGINE=innodb DEFAULT CHARSET=latin1;
 
+CREATE TABLE skycell (
+    tess_id     VARCHAR(64),
+    skycell_id  VARCHAR(64),
+    radeg       float,
+    decdeg      float,
+    glong       float,
+    glat        float,
+    width       float,
+    height      float,
+    PRIMARY KEY (tess_id, skycell_id),
+    KEY(radeg),
+    KEY(decdeg),
+    KEY(glong),
+    KEY(glat)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+
 
 -- This comment line is here to avoid empty query error.
Index: branches/meh_branches/ppstack_test/ippTools/share/pxadmin_drop_tables.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/pxadmin_drop_tables.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/pxadmin_drop_tables.sql	(revision 34041)
@@ -108,4 +108,5 @@
 DROP TABLE IF EXISTS skycalRun;
 DROP TABLE IF EXISTS skycalResult;
+DROP TABLE IF EXISTS skycell;
 
 SET FOREIGN_KEY_CHECKS=1
Index: branches/meh_branches/ppstack_test/ippTools/share/pztool_pendingimfile.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/pztool_pendingimfile.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/pztool_pendingimfile.sql	(revision 34041)
@@ -1,5 +1,6 @@
 SELECT *
 FROM (
-    SELECT
+    SELECT * FROM 
+    (SELECT
         summitImfile.*,
         summitExp.dateobs
@@ -20,6 +21,8 @@
         AND pzDownloadImfile.class_id IS NULL
 	AND summitImfile.exp_name NOT LIKE '%a'
+    ORDER BY dateobs) AS partA
 UNION
-    SELECT
+    SELECT * FROM 
+    (SELECT
         summitImfile.*,
         summitExp.dateobs
@@ -40,3 +43,4 @@
         AND pzDownloadImfile.class_id IS NULL
 	AND summitImfile.exp_name LIKE '%a'
+    ORDER BY dateobs) AS partB
 ) as Foo
Index: branches/meh_branches/ppstack_test/ippTools/share/sctool_list.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/sctool_list.sql	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippTools/share/sctool_list.sql	(revision 34041)
@@ -0,0 +1,11 @@
+SELECT 
+    skycell.tess_id,
+    skycell.skycell_id,
+    TRUNCATE(skycell.radeg/15., 4) AS rahours,
+    skycell.radeg,
+    skycell.decdeg,
+    skycell.glong,
+    skycell.glat,
+    skycell.width,
+    skycell.height
+FROM skycell
Index: branches/meh_branches/ppstack_test/ippTools/share/staticskytool_definebyquery_inputs.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/staticskytool_definebyquery_inputs.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/staticskytool_definebyquery_inputs.sql	(revision 34041)
@@ -6,4 +6,5 @@
   FROM stackRun
   JOIN stackSumSkyfile USING(stack_id)
+  JOIN skycell USING(tess_id, skycell_id)
   WHERE stackRun.state = 'full'
       AND stackSumSkyfile.fault = 0
Index: branches/meh_branches/ppstack_test/ippTools/share/staticskytool_definebyquery_select.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/staticskytool_definebyquery_select.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/staticskytool_definebyquery_select.sql	(revision 34041)
@@ -10,4 +10,5 @@
   FROM stackRun
   JOIN stackSumSkyfile USING(stack_id)
+  JOIN skycell using(tess_id, skycell_id)
   WHERE stackRun.state = 'full'
       AND stackSumSkyfile.fault = 0
@@ -29,4 +30,5 @@
     JOIN stackRun USING(stack_id)
     JOIN stackSumSkyfile USING(stack_id)
+    JOIN skycell USING(tess_id, skycell_id)
     WHERE 1
     -- restrict by selected filters, stackSumSkyfile.good_frac, stackRun.skycell_id, stackRun.label
Index: branches/meh_branches/ppstack_test/ippTools/share/staticskytool_inputs.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/staticskytool_inputs.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/staticskytool_inputs.sql	(revision 34041)
@@ -2,6 +2,8 @@
   staticskyRun.*,
   staticskyInput.stack_id,
-  stackSumSkyfile.path_base
+  stackSumSkyfile.path_base,
+  stackRun.filter
 FROM staticskyRun
 JOIN staticskyInput USING(sky_id)
 JOIN stackSumSkyfile USING (stack_id)
+JOIN stackRun using(stack_id)
Index: branches/meh_branches/ppstack_test/ippTools/share/staticskytool_result.sql
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/share/staticskytool_result.sql	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/share/staticskytool_result.sql	(revision 34041)
@@ -6,7 +6,10 @@
     stackRun.tess_id,
     stackRun.skycell_id,
-    count(stackRun.filter) AS num_filters
+    count(stackRun.filter) AS num_filters,
+    skycell.glong,
+    skycell.glat
 FROM staticskyRun
 JOIN staticskyResult USING(sky_id)
 JOIN staticskyInput USING(sky_id)
-JOIN stackRun using(stack_id)
+JOIN stackRun USING(stack_id)
+LEFT JOIN skycell USING(tess_id, skycell_id)
Index: branches/meh_branches/ppstack_test/ippTools/src/Makefile.am
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/Makefile.am	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/Makefile.am	(revision 34041)
@@ -31,5 +31,6 @@
 	mergetool \
 	laptool \
-	vptool
+	vptool \
+	sctool
 
 pkginclude_HEADERS = \
@@ -83,5 +84,6 @@
 	mergetool.h \
 	laptool.h \
-	vptool.h
+	vptool.h \
+	sctool.h
 
 lib_LTLIBRARIES = libpxtools.la
@@ -316,4 +318,10 @@
     vptoolConfig.c
 
+sctool_CFLAGS = $(PSLIB_CFLAGS) $(PSMODULES_CFLAGS) $(IPPDB_CFLAGS)
+sctool_LDADD = $(PSLIB_LIBS) $(PSMODULES_LIBS) $(IPPDB_LIBS) libpxtools.la
+sctool_SOURCES = \
+    sctool.c \
+    sctoolConfig.c
+
 clean-local:
 	-rm -f TAGS
Index: branches/meh_branches/ppstack_test/ippTools/src/addtool.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/addtool.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/addtool.c	(revision 34041)
@@ -141,11 +141,4 @@
     pxAddLabelSearchArgs (config, where, "-data_group","staticskyRun.data_group", "=="); // define using camRun label
     PXOPT_COPY_STR(config->args, where,  "-reduction", "staticskyyRun.reduction", "==");
-    pxAddLabelSearchArgs (config, where, "-filter",     "stackRun.filter", "=="); // define using camRun label
-    }
-        if (strcmp(stage, "staticsky_multi")== 0) {
-
-    pxAddLabelSearchArgs (config, where, "-label",     "staticskyRun.label", "=="); // define using camRun label
-    pxAddLabelSearchArgs (config, where, "-data_group","staticskyRun.data_group", "=="); // define using camRun label
-    PXOPT_COPY_STR(config->args, where,  "-reduction", "staticskyyRun.reduction", "==");
     //no filter here
     }
@@ -227,21 +220,6 @@
     }
     }
+  
     if (strcmp(stage,"staticsky") == 0) {
-    if (dvodb ) {
-      psTrace("addtool.c", PS_LOG_INFO, "dvodb argument found (%s) using addtool_find_sky_id_dvo.sql\n%s\n", dvodb,stage);
-        // find the cam_id of all the exposures that we want to queue up.
-        bare_query = pxDataGet("addtool_find_sky_id_dvo.sql");
-	// user supplied dvodb
-	psStringAppend(&dvodb_string, "addRun.dvodb = '%s'", dvodb);
-    } else {
-      psTrace("addtool.c", PS_LOG_INFO, "dvodb argument not found using addtool_find_sky_id.sql\n%s\n",stage);
-        // find the cam_id of all the exposures that we want to queue up.
-        bare_query = pxDataGet("addtool_find_sky_id.sql");
-        // inherit dvodb from camRun, avoid matching NULL
-        psStringAppend(&dvodb_string, "(staticskyRun.dvodb IS NOT NULL AND previous_dvodb = staticskyRun.dvodb)");
-    }
-    }
-
-    if (strcmp(stage,"staticsky_multi") == 0) {
       if (dvodb ) {
 	psTrace("addtool.c", PS_LOG_INFO, "dvodb argument found (%s) using addtool_find_sky_id_multi_dvo.sql\n%s\n", dvodb,stage);
@@ -310,9 +288,9 @@
 	psStringAppend(&query, " GROUP BY stack_id");
       }
+      //   if (strcmp(stage,"staticsky") == 0) {
+      //   psStringAppend(&query, " GROUP BY stack_id");
+      // }
     if (strcmp(stage,"staticsky") == 0) {
-	psStringAppend(&query, " GROUP BY stack_id");
-      }
-    if (strcmp(stage,"staticsky_multi") == 0) {
-      psStringAppend(&query, " GROUP BY sky_id");  //some reason it needs this
+      psStringAppend(&query, " GROUP BY sky_id, stack_id");  //some reason it needs this
       }
 
@@ -402,31 +380,6 @@
     }
     }
+   
     if (strcmp(stage,"staticsky") == 0) {
-    for (long i = 0; i < psArrayLength(output); i++) {
-        psMetadata *md = output->data[i];
-
-	staticskyRunRow *row = staticskyRunObjectFromMetadata(md);
-	
-        if (!row) {
-            psError(PS_ERR_UNKNOWN, false, "failed to convert metadata into camRun");
-            psFree(output);
-            return false;
-        }
-
-        if (!dvodb) {  //there's no staticsky.dvodb
-            psError(PS_ERR_UNKNOWN, false, "cannot queue addstar run without a defined dvodb: label: %s, sky_id %" PRId64, row->label, row->sky_id);
-            psFree(output);
-            return false;
-        }
-        if (!workdir && !row->workdir) {
-            psError(PS_ERR_UNKNOWN, false, "cannot queue addstar run without a defined workdir: label: %s, sky_id %" PRId64, row->label, row->sky_id);
-            psFree(output);
-            return false;
-        }
-
-        psFree(row);
-    }
-    }
-    if (strcmp(stage,"staticsky_multi") == 0) {
     for (long i = 0; i < psArrayLength(output); i++) {
         psMetadata *md = output->data[i];
@@ -566,9 +519,17 @@
     }
       }
+   
     if (strcmp(stage,"staticsky") == 0) {
     for (long i = 0; i < psArrayLength(output); i++) {
         psMetadata *md = output->data[i];
 	psS64 stage_id =0; 
-	
+	bool status = false;
+	//psS32 num_inputs = psMetadataLookupS32(&status, md, "num_inputs");
+	psS32 stack_id = psMetadataLookupS32(&status, md, "stack_id");
+
+	if (!status) {
+	  psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item stack_id");
+	  return false;
+	}
 	staticskyRunRow *row = staticskyRunObjectFromMetadata(md);
 	stage_id = row->sky_id;
@@ -581,8 +542,9 @@
 
         // queue the exp
-        if (!pxaddQueueByCamID(config,
+      	//for (int filter_id = 0; filter_id < num_inputs; filter_id++) {  
+	  if (!pxaddQueueByCamID(config,
 			       stage,
-                               stage_id,
-			       0,
+			       stage_id,
+			       stack_id,
                                workdir     ? workdir   : row->workdir,
                                reduction   ? reduction : row->reduction,
@@ -595,7 +557,7 @@
                                minidvodb_group,
                                minidvodb_name
-        )) {
+				 )) {
             if (!psDBRollback(config->dbh)) {
-                psError(PS_ERR_UNKNOWN, false, "database error sfg");
+	      psError(PS_ERR_UNKNOWN, false, "database error sfg");
             }
             psError(PS_ERR_UNKNOWN, false,
@@ -604,55 +566,6 @@
             psFree(output);
             return false;
-        }
-        psFree(row);
-    }
-      }
-
-    if (strcmp(stage,"staticsky_multi") == 0) {
-    for (long i = 0; i < psArrayLength(output); i++) {
-        psMetadata *md = output->data[i];
-	psS64 stage_id =0; 
-	bool status = false;
-	psS32 num_inputs = psMetadataLookupS32(&status, md, "num_inputs");
-	if (!status) {
-	  psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item num_inputs");
-	  return false;
-	}
-	staticskyRunRow *row = staticskyRunObjectFromMetadata(md);
-	stage_id = row->sky_id;
-	
-        if (!row) {
-            psError(PS_ERR_UNKNOWN, false, "failed to convert metadata into camRun");
-            psFree(output);
-            return false;
-        }
-
-        // queue the exp
-	for (int filter_id = 0; filter_id < num_inputs; filter_id++) {  
-        if (!pxaddQueueByCamID(config,
-			       stage,
-                               stage_id,
-			       filter_id,
-                               workdir     ? workdir   : row->workdir,
-                               reduction   ? reduction : row->reduction,
-                               label       ? label     : row->label,
-                               data_group  ? data_group : (row->data_group ? row->data_group :  (label ? label : row->label)),
-                               dvodb       ? dvodb     : NULL,
-                               note        ? note      : NULL,
-                               image_only,
-                               minidvodb,
-                               minidvodb_group,
-                               minidvodb_name
-        )) {
-            if (!psDBRollback(config->dbh)) {
-                psError(PS_ERR_UNKNOWN, false, "database error sfg");
-            }
-            psError(PS_ERR_UNKNOWN, false,
-                    "failed to trying to queue stage %s %" PRId64,stage, stage_id);
-            psFree(row);
-            psFree(output);
-            return false;
-        }
-	}
+	  }
+	  //}
         psFree(row);
     }
@@ -705,7 +618,5 @@
     query = psStringCopy("UPDATE addRun JOIN staticskyRun on sky_id = stage_id");
     }
-    if (strcmp(stage, "staticsky_multi")==0) {
-    query = psStringCopy("UPDATE addRun JOIN staticskyRun on sky_id = stage_id");
-    }
+    
 
     // pxUpdateRun gets parameters from config->args and runs the update query
@@ -745,7 +656,4 @@
     }
     if (strcmp(stage, "staticsky")==0) { 
-    query = pxDataGet("addtool_find_pendingexp_staticsky.sql");
-    }
-    if (strcmp(stage, "staticsky_multi")==0) { 
     query = pxDataGet("addtool_find_pendingexp_staticsky_multi.sql");
     }
@@ -768,9 +676,9 @@
       psStringAppend(&query, " GROUP BY %s", "stack_id");
     }
+    //if (strcmp(stage, "staticsky") == 0) {
+    //  //this group by is needed to join against all the warps (to get camera)
+    //  psStringAppend(&query, " GROUP BY %s", "sky_id");
+    //}
     if (strcmp(stage, "staticsky") == 0) {
-      //this group by is needed to join against all the warps (to get camera)
-      psStringAppend(&query, " GROUP BY %s", "sky_id");
-    }
-    if (strcmp(stage, "staticsky_multi") == 0) {
       //this group by is needed to join against all the warps (to get camera)
       psStringAppend(&query, " GROUP BY %s", "sky_id, stage_extra1");
@@ -787,4 +695,5 @@
         return false;
     }
+    psTrace("addtool.c", PS_LOG_INFO, "used this query:\n %s\n",query); 
     psFree(query);
 
@@ -977,7 +886,4 @@
     }
     if (strcmp (stage,"staticsky") == 0) {
-    query = pxDataGet("addtool_find_processedexp_staticsky.sql");
-    }
-    if (strcmp (stage,"staticsky_multi") == 0) {
     query = pxDataGet("addtool_find_processedexp_staticsky_multi.sql");
     }
@@ -1090,8 +996,5 @@
 	 query = pxDataGet("addtool_revertprocessedexp_stack.sql");
       }
-     if (strcmp(stage, "staticsky") == 0) {
-	 query = pxDataGet("addtool_revertprocessedexp_staticsky.sql");
-      }
-   if (strcmp(stage, "staticsky_multi") == 0) {
+    if (strcmp(stage, "staticsky") == 0) {
 	 query = pxDataGet("addtool_revertprocessedexp_staticsky_multi.sql");
       }
@@ -1480,6 +1383,6 @@
   PXOPT_COPY_STR(config->args, where, "-minidvodb_name", "minidvodbRun.minidvodb_name", "==");
   PXOPT_COPY_STR(config->args, where, "-state", "minidvodbRun.state", "==");
-
-
+  PXOPT_LOOKUP_STR(minidvodb_group,  config->args, "-minidvodb_group", false, false);
+  
   PXOPT_LOOKUP_U64(limit,      config->args, "-limit", false, false);
   PXOPT_LOOKUP_BOOL(all_addrun_states, config->args, "-all_addrun_states", false);
@@ -1493,18 +1396,33 @@
   }
 
-  psString query = pxDataGet("addtool_checkminidvodbaddrun.sql");
-
-  if (!query) {
+  if (!minidvodb_group) {
+    psError(PXTOOLS_ERR_CONFIG, false, "minidvodb_group  required");
+    return false;
+  }
+
+
+  psString bare_query = pxDataGet("addtool_checkminidvodbaddrun.sql");
+  
+  if (!bare_query) {
         psError(PXTOOLS_ERR_SYS, false, "failed to retreive SQL statement");
         return false;
   }
 
-
+  psString where_string = NULL;
   if (psListLength(where->list)) {
     psString whereClause = psDBGenerateWhereConditionSQL(where, NULL);
-        psStringAppend(&query, " WHERE %s", whereClause);
+        psStringAppend(&where_string, " WHERE %s", whereClause);
         psFree(whereClause);
-  }
-
+	//search params are defined above
+  }
+
+  psString query = NULL;
+  psStringAppend(&query, bare_query, minidvodb_group);
+  psStringAppend(&query," %s ", where_string);
+
+
+
+
+  
   if (!all_addrun_states) {
     psStringAppend(&query, " AND (cnt2 = cnt) ");
@@ -1519,5 +1437,5 @@
 
   if (!p_psDBRunQuery(config->dbh, query)) {
-    psError(PS_ERR_UNKNOWN, false, "database error");
+    psError(PS_ERR_UNKNOWN, false, "database error,\n\n%s", query);
     psFree(query);
     return false;
Index: branches/meh_branches/ppstack_test/ippTools/src/chiptool.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/chiptool.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/chiptool.c	(revision 34041)
@@ -1015,5 +1015,9 @@
     PXOPT_COPY_S64(config->args, where, "-chip_id", "chipProcessedImfile.chip_id", "==");
     PXOPT_COPY_STR(config->args, where, "-class_id", "chipProcessedImfile.class_id", "==");
-    PXOPT_LOOKUP_S64(chip_id, config->args, "-chip_id", true, false);
+    PXOPT_COPY_S64(config->args, where, "-cam_id", "cam_id", "==");
+
+    PXOPT_LOOKUP_S64(cam_id, config->args, "-cam_id", false, false);
+    // if cam_id is not supplied chip_id is required
+    PXOPT_LOOKUP_S64(chip_id, config->args, "-chip_id", cam_id ? false : true, false);
     PXOPT_LOOKUP_S64(class_id, config->args, "-class_id", true, false);
     PXOPT_LOOKUP_S16(quality, config->args, "-set_quality", true, false);
@@ -1026,5 +1030,5 @@
     if (psListLength(where->list) == 0) {
         // won't get here
-        psError(PXTOOLS_ERR_CONFIG, true, "-chip_id and -class_id are required");
+        psError(PXTOOLS_ERR_CONFIG, true, "-chip_id (or -cam_id) and -class_id are required");
         return false;
     }
Index: branches/meh_branches/ppstack_test/ippTools/src/chiptoolConfig.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/chiptoolConfig.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/chiptoolConfig.c	(revision 34041)
@@ -242,5 +242,6 @@
     // -dropprocessedimfile
     psMetadata *dropprocessedimfileArgs = psMetadataAlloc();
-    psMetadataAddS64(dropprocessedimfileArgs, PS_LIST_TAIL, "-chip_id",  0,            "search by chip ID (required)", 0);
+    psMetadataAddS64(dropprocessedimfileArgs, PS_LIST_TAIL, "-chip_id",  0,            "search by chip ID", 0);
+    psMetadataAddS64(dropprocessedimfileArgs, PS_LIST_TAIL, "-cam_id",  0,            "search by cam ID", 0);
     psMetadataAddStr(dropprocessedimfileArgs,  PS_LIST_TAIL, "-class_id",           0, "search by class ID (required)", NULL);
     psMetadataAddS16(dropprocessedimfileArgs, PS_LIST_TAIL, "-set_quality",  0,        "set quality (required)", 0);
Index: branches/meh_branches/ppstack_test/ippTools/src/magicdstool.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/magicdstool.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/magicdstool.c	(revision 34041)
@@ -779,5 +779,5 @@
     case IPP_STAGE_CAMERA:
         query = NULL;
-        clearRunQuery = "UPDATE chipBackgroundRun SET magicked = 0 where chip_bg_id = %" PRId64;
+        clearRunQuery = "UPDATE camRun SET magicked = 0 where cam_id = %" PRId64;
         break;
     case IPP_STAGE_WARP:
@@ -1242,4 +1242,6 @@
         } else if (!strcmp(state, "failed_cleanup")) {
             new_state = "goto_cleaned";
+        } else if (!strcmp(state, "failed_restore")) {
+            new_state = "goto_restored";
         } else {
             psError(PS_ERR_UNKNOWN, true, "unexpected value for state: %s", state);
@@ -1410,4 +1412,5 @@
           (strcmp(state, "drop") == 0) ||
           (strcmp(state, "wait") == 0) ||
+          (strcmp(state, "failed_restore") == 0) ||
           (strcmp(state, "failed_revert") == 0) ||
           (strcmp(state, "failed_revert_ud") == 0) ||
Index: branches/meh_branches/ppstack_test/ippTools/src/pstamptoolConfig.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/pstamptoolConfig.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/pstamptoolConfig.c	(revision 34041)
@@ -125,4 +125,6 @@
     psMetadataAddStr(revertreqArgs, PS_LIST_TAIL, "-state", 0,      "state to revert", NULL);
     psMetadataAddStr(revertreqArgs, PS_LIST_TAIL, "-label", PS_META_DUPLICATE_OK, "search by pstampRequest label (LIKE comparision)", NULL);
+    // this argument is supplied by pantasks so we accept it but don't use it
+    psMetadataAddU64(revertreqArgs, PS_LIST_TAIL, "-limit", 0,      "not used", 0);
 
     // -pendingcleanup
Index: branches/meh_branches/ppstack_test/ippTools/src/pxadd.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/pxadd.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/pxadd.c	(revision 34041)
@@ -157,8 +157,4 @@
       }
       if (strcmp(stage,"staticsky") == 0) {
-	query = pxDataGet("addtool_queue_sky_id.sql");
-        psMemSetPersistent(query, true);
-      }
-      if (strcmp(stage,"staticsky_multi") == 0) {
 	query = pxDataGet("addtool_queue_sky_id_multi.sql");
         psMemSetPersistent(query, true);
Index: branches/meh_branches/ppstack_test/ippTools/src/pxspace.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/pxspace.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/pxspace.c	(revision 34041)
@@ -56,2 +56,27 @@
     psMetadataAddF64(md, PS_LIST_TAIL, "-decl", 0,             "DEC value for radius search (degrees)", false);
 }
+
+void pxskycellAddArguments(psMetadata *md)
+{
+    psMetadataAddF32(md,  PS_LIST_TAIL, "-ra_min",            0, "search by right ascension (degrees)", NAN);
+    psMetadataAddF32(md,  PS_LIST_TAIL, "-dec_min",           0, "search by declination (degrees)", NAN);
+    psMetadataAddF32(md,  PS_LIST_TAIL, "-ra_max",            0, "search by right ascension (degrees)", NAN);
+    psMetadataAddF32(md,  PS_LIST_TAIL, "-dec_max",           0, "search by declination (degrees)", NAN);
+    psMetadataAddF32(md,  PS_LIST_TAIL, "-glong_min",         0, "search by galactic longitude (degrees)", NAN);
+    psMetadataAddF32(md,  PS_LIST_TAIL, "-glat_min",          0, "search by galactic latitude (degrees)", NAN);
+    psMetadataAddF32(md,  PS_LIST_TAIL, "-glong_max",         0, "search by galactic longitude (degrees)", NAN);
+    psMetadataAddF32(md,  PS_LIST_TAIL, "-glat_max",          0, "search by galactic latitude (degrees)", NAN);
+}
+
+bool pxskycellAddWhere(pxConfig *config, psMetadata *where)
+{
+    PXOPT_COPY_F32(config->args, where, "-ra_min", "skycell.radeg", ">=");
+    PXOPT_COPY_F32(config->args, where, "-dec_min", "skycell.decdeg", ">=");
+    PXOPT_COPY_F32(config->args, where, "-ra_max", "skycell.radeg", "<");
+    PXOPT_COPY_F32(config->args, where, "-dec_max", "skycell.decdeg", "<");
+    PXOPT_COPY_F32(config->args, where, "-glong_min", "skycell.glong", ">=");
+    PXOPT_COPY_F32(config->args, where, "-glat_min", "skycell.glat", ">=");
+    PXOPT_COPY_F32(config->args, where, "-glong_max", "skycell.glong", "<");
+    PXOPT_COPY_F32(config->args, where, "-glat_max", "skycell.glat", "<");
+    return true;
+}
Index: branches/meh_branches/ppstack_test/ippTools/src/pxspace.h
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/pxspace.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/pxspace.h	(revision 34041)
@@ -1,4 +1,4 @@
 /*
- * pxmagic.h
+ * pxspace.h
  *
  * Copyright (C) 2009  IfA
@@ -24,3 +24,6 @@
 extern void pxspaceAddArguments(psMetadata *md);
 
+extern bool pxskycellAddWhere(pxConfig *config, psMetadata *where);
+extern void pxskycellAddArguments(psMetadata *md);
+
 #endif // PXSPACE_H
Index: branches/meh_branches/ppstack_test/ippTools/src/pztool.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/pztool.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/pztool.c	(revision 34041)
@@ -338,8 +338,8 @@
         }
 
-        psStringAppend(&query, " ORDER BY dateobs");
-        if (desc) {
-            psStringAppend(&query, " DESC");
-        }
+/*         psStringAppend(&query, " ORDER BY dateobs"); */
+/*         if (desc) { */
+/*             psStringAppend(&query, " DESC"); */
+/*         } */
 
         // request the full "limit" from each known camera and throw away any
Index: branches/meh_branches/ppstack_test/ippTools/src/sctool.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/sctool.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippTools/src/sctool.c	(revision 34041)
@@ -0,0 +1,198 @@
+/*
+ * sctool.c
+ *
+ * Copyright (C) 2012 IfA University of Hawaii
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the Free
+ * Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * program; see the file COPYING. If not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdio.h>
+#include <string.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <math.h>
+
+#include "pxtools.h"
+#include "pxdata.h"
+#include "pxchip.h"
+#include "pxspace.h"
+
+#include "sctool.h"
+
+static bool defineskycellsMode(pxConfig *config);
+static bool listMode(pxConfig *config);
+
+# define MODECASE(caseName, func) \
+    case caseName: \
+    if (!func(config)) { \
+        goto FAIL; \
+    } \
+    break;
+
+int main(int argc, char **argv) {
+    psLibInit(NULL);
+
+    pxConfig *config = sctoolConfig(NULL, argc, argv);
+    if (!config) {
+        psError(PXTOOLS_ERR_CONFIG, false, "failed to configure");
+        goto FAIL;
+    }
+
+    switch (config->mode) {
+        MODECASE(SCTOOL_MODE_DEFINESKYCELLS,    defineskycellsMode);
+        MODECASE(SCTOOL_MODE_LIST,              listMode);
+        default:
+            psAbort("invalid option (this should not happen)");
+    }
+
+    psFree(config);
+    pmConfigDone();
+    psLibFinalize();
+
+    exit(EXIT_SUCCESS);
+
+FAIL:
+    psErrorStackPrint(stderr, "\n");
+    int exit_status = pxerrorGetExitStatus();
+
+    psFree(config);
+    pmConfigDone();
+    psLibFinalize();
+
+    exit(exit_status);
+}
+
+
+static bool defineskycellsMode(pxConfig *config)
+{
+    PS_ASSERT_PTR_NON_NULL(config, NULL);
+
+    PXOPT_LOOKUP_STR(inputFile, config->args, "-input", true, false);
+
+    unsigned int numBad = 0;
+    psMetadata *skycells = psMetadataConfigRead(NULL, &numBad, inputFile, false);
+    if (!skycells || numBad > 0) {
+        psError(PXTOOLS_ERR_UNKNOWN, false, "failed to read %s", inputFile);
+        return false;
+    }
+
+    if (!psDBTransaction(config->dbh)) {
+        psError(PS_ERR_UNKNOWN, false, "database error");
+        return false;
+    }
+
+    psMetadataIterator *iter = psMetadataIteratorAlloc(skycells, PS_LIST_HEAD, NULL);
+
+    psMetadataItem *item;
+    int numSkycells = 0;
+    while ((item = psMetadataGetAndIncrement(iter))) {
+        if (item->type != PS_DATA_METADATA) {
+            psError(PS_ERR_UNKNOWN, true, "unexpected item in metadata type: %d", item->type);
+            return false;
+        }
+        psMetadata *md = item->data.md;
+        psString tess_id = psMetadataLookupStr(NULL, md, "tess_id");
+        psString skycell_id = psMetadataLookupStr(NULL, md, "skycell_id");
+
+        skycellRow *skycell = skycellObjectFromMetadata(md);
+        if (!skycell) {
+            psError(PS_ERR_UNKNOWN, false, "failed to create skycellRow from Metadata");
+            return false;
+        }
+
+        numSkycells++;
+        if (!skycellInsertObject(config->dbh, skycell)) {
+            psError(PS_ERR_UNKNOWN, false, "failed to insert skycell %s %s", tess_id, skycell_id);
+            return false;
+        }
+    } 
+    psFree(iter);
+    psFree(skycells);
+
+   if (!psDBCommit(config->dbh)) {
+        psError(PS_ERR_UNKNOWN, false, "database error");
+        return false;
+    }
+
+    psLogMsg("sctool", PS_LOG_INFO, "%d skycells added", numSkycells);
+
+    return true;
+}
+static bool listMode(pxConfig *config)
+{
+    PS_ASSERT_PTR_NON_NULL(config, NULL);
+
+    PXOPT_LOOKUP_U64(limit, config->args, "-limit", false, false);
+    PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false);
+    psMetadata *where = psMetadataAlloc();
+
+    PXOPT_COPY_STR(config->args, where, "-skycell_id", "skycell.skycell_id", "LIKE");
+    PXOPT_COPY_STR(config->args, where, "-tess_id", "skycell.tess_id", "LIKE");
+    pxskycellAddWhere(config, where);
+
+    psString query = pxDataGet("sctool_list.sql");
+    if (!query) {
+        psError(PXTOOLS_ERR_SYS, false, "failed to retreive SQL statement");
+        return false;
+    }
+
+    if (!psListLength(where->list)) {
+        psError(PXTOOLS_ERR_CONFIG, false, "search paramters are required\n");
+        psFree(where);
+        return false;
+    }
+    psString whereClause = psDBGenerateWhereConditionSQL(where, NULL);
+    psStringAppend(&query, " WHERE %s", whereClause);
+    psFree(whereClause);
+
+    if (limit) {
+        psString limitString = psDBGenerateLimitSQL(limit);
+        psStringAppend(&query, " %s", limitString);
+        psFree(limitString);
+    }
+
+    if (!p_psDBRunQuery(config->dbh, query)) {
+        psError(PS_ERR_UNKNOWN, false, "database error");
+        psFree(query);
+        return false;
+    }
+    psFree(query);
+
+    psArray *output = p_psDBFetchResult(config->dbh);
+    if (!output) {
+        psError(PS_ERR_UNKNOWN, false, "database error");
+        return false;
+    }
+
+    if (!psArrayLength(output)) {
+        psTrace("sctool", PS_LOG_INFO, "no rows found");
+        psFree(output);
+        return true;
+    }
+
+    if (!ippdbPrintMetadatas(stdout, output, "skycell", !simple)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to print array");
+        psFree(output);
+        return false;
+    }
+
+    psFree(output);
+
+
+    return true;
+}
Index: branches/meh_branches/ppstack_test/ippTools/src/sctool.h
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/sctool.h	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippTools/src/sctool.h	(revision 34041)
@@ -0,0 +1,33 @@
+/*
+ * sctool.h
+ *
+ * Copyright (C) 2012 University of Hawaii IFA 
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the Free
+ * Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * program; see the file COPYING. If not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#ifndef SCTOOL_H
+#define SCTOOL_H 1
+
+#include "pxtools.h"
+
+typedef enum {
+    SCTOOL_MODE_NONE      = 0x0,
+    SCTOOL_MODE_DEFINESKYCELLS,
+    SCTOOL_MODE_LIST,
+} sctoolMode;
+
+pxConfig *sctoolConfig(pxConfig *config, int argc, char **argv);
+
+#endif // SCTOOL_H
Index: branches/meh_branches/ppstack_test/ippTools/src/sctoolConfig.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/sctoolConfig.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippTools/src/sctoolConfig.c	(revision 34041)
@@ -0,0 +1,86 @@
+/*
+ * sctoolConfig.c
+ *
+ * Copyright (C) 2012 IfA University of Hawaii
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the Free
+ * Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * program; see the file COPYING. If not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdint.h>
+
+#include <psmodules.h>
+
+#include "pxtools.h"
+#include "pxspace.h"
+#include "sctool.h"
+
+pxConfig *sctoolConfig(pxConfig *config, int argc, char **argv)
+{
+    if (!config) {
+        config = pxConfigAlloc();
+    }
+
+    pmConfigReadParamsSet(false);
+
+    config->modules = pmConfigRead(&argc, argv, NULL);
+    if (! config->modules) {
+        psError(psErrorCodeLast(), false, "Can't find site configuration");
+        psFree(config);
+        return NULL;
+    }
+
+    // -defineskycells
+    psMetadata *defineskycellsArgs = psMetadataAlloc();
+    psMetadataAddStr(defineskycellsArgs, PS_LIST_TAIL, "-input", 0, "file containing skycell data (required)", NULL);
+
+    // -list
+    psMetadata *listArgs = psMetadataAlloc();
+    psMetadataAddStr(listArgs,  PS_LIST_TAIL, "-skycell_id",        0, "search by skycell_id (LIKE comparision)", NULL);
+    psMetadataAddStr(listArgs,  PS_LIST_TAIL, "-tess_id",           0, "search by tess_id (LIKE comparision)", NULL);
+    // add skycell coordinate search arguments
+    pxskycellAddArguments(listArgs);
+    psMetadataAddU64(listArgs,  PS_LIST_TAIL, "-limit",             0, "limit result set to N items", 0);
+    psMetadataAddBool(listArgs, PS_LIST_TAIL, "-simple",            0, "use the simple output format", false);
+
+    psMetadata *argSets = psMetadataAlloc();
+    psMetadata *modes = psMetadataAlloc();
+
+    PXOPT_ADD_MODE("-defineskycells",        "insert skycells from mdc file",  SCTOOL_MODE_DEFINESKYCELLS,        defineskycellsArgs);
+    PXOPT_ADD_MODE("-list",                   "list skycell parameters",       SCTOOL_MODE_LIST,        listArgs);
+
+    if (!pxGetOptions(stderr, argc, argv, config, modes, argSets)) {
+        psError(PS_ERR_UNKNOWN, false, "option parsing failed");
+        psFree(argSets);
+        psFree(modes);
+        psFree(config);
+        return NULL;
+    }
+
+    psFree(argSets);
+    psFree(modes);
+
+    // define Database handle, if used
+    config->dbh = psMemIncrRefCounter(pmConfigDB(config->modules));
+    if (!config->dbh) {
+        psError(PS_ERR_UNKNOWN, false, "Can't configure database");
+        psFree(config);
+        return NULL;
+    }
+
+    return config;
+}
Index: branches/meh_branches/ppstack_test/ippTools/src/stacktool.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/stacktool.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/stacktool.c	(revision 34041)
@@ -232,4 +232,8 @@
     PXOPT_COPY_F32(config->args,  where, "-select_fwhm_minor_min",     "camProcessedExp.fwhm_minor", ">=");
     PXOPT_COPY_F32(config->args,  where, "-select_fwhm_minor_max",     "camProcessedExp.fwhm_minor", "<=");
+    PXOPT_COPY_F32(config->args,  where, "-select_fwhm_iq_major_max",  "(camProcessedExp.fwhm_major - camProcessedExp.iq_fwhm_major)", "<=");
+    PXOPT_COPY_F32(config->args,  where, "-select_fwhm_iq_major_min",  "(camProcessedExp.fwhm_major - camProcessedExp.iq_fwhm_major)", ">=");
+    PXOPT_COPY_F32(config->args,  where, "-select_elong_max",          "(camProcessedExp.fwhm_major / camProcessedExp.fwhm_minor)", "<=");
+    PXOPT_COPY_F32(config->args,  where, "-select_iq_elong_max",       "(camProcessedExp.iq_fwhm_major / camProcessedExp.iq_fwhm_minor)", "<=");
     PXOPT_COPY_F32(config->args,  where, "-select_iq_m2_max",          "camProcessedExp.iq_m2", "<=");
     PXOPT_COPY_F32(config->args,  where, "-select_iq_m2_min",          "camProcessedExp.iq_m2", ">=");
@@ -239,6 +243,7 @@
     PXOPT_COPY_F32(config->args,  where, "-select_zpt_obs_min",        "camProcessedExp.zpt_obs", ">=");
     PXOPT_COPY_F32(config->args,  where, "-select_zpt_obs_max",        "camProcessedExp.zpt_obs", "<=");
+    PXOPT_COPY_F32(config->args,  where, "-select_bg_max",             "camProcessedExp.bg", "<=");
+    PXOPT_COPY_F32(config->args,  where, "-select_bg_stdev_max",       "camProcessedExp.bg_stdev", "<=");
     PXOPT_COPY_F32(config->args,  where, "-select_astrom",             "sqrt(POWER(camProcessedExp.sigma_ra, 2) + POWER(camProcessedExp.sigma_dec, 2))", "<=");
-
     PXOPT_COPY_STR(config->args,  where, "-select_exp_type",           "rawExp.exp_type", "==");
     PXOPT_COPY_F32(config->args,  where, "-select_good_frac_min",      "warpSkyfile.good_frac", ">=");
Index: branches/meh_branches/ppstack_test/ippTools/src/stacktoolConfig.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/stacktoolConfig.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/stacktoolConfig.c	(revision 34041)
@@ -82,4 +82,8 @@
     psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_fwhm_minor_min", 0, "define min fwhm (minor axis)", NAN);
     psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_fwhm_minor_max", 0, "define max fwhm (minor axis)", NAN);
+    psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_fwhm_iq_major_max", 0, "define max difference between fwhm and iq major ", NAN);
+    psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_fwhm_iq_major_min", 0, "define min difference between fwhm and iq major ", NAN);
+    psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_elong_max", 0, "define max elongation from fwhm ", NAN);
+    psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_iq_elong_max", 0, "define max elongation from iq_fwhm ", NAN);
     psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_iq_m2_min", 0, "define min iq_m2", NAN);
     psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_iq_m2_max", 0, "define max iq_m2", NAN);
@@ -90,4 +94,6 @@
     psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_zpt_obs_min", 0, "define min zero point", NAN);
     psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_zpt_obs_max", 0, "define max zero point", NAN);
+    psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_bg_max", 0, "define max background", NAN);
+    psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_bg_stdev_max", 0, "define max background stdev", NAN);    
     psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_astrom", 0, "define max astrometry rms", NAN);
     psMetadataAddS64(definebyqueryArgs, PS_LIST_TAIL, "-warp_id", PS_META_DUPLICATE_OK, "include this warp ID (multiple OK)", 0);
Index: branches/meh_branches/ppstack_test/ippTools/src/staticskytool.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/staticskytool.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/staticskytool.c	(revision 34041)
@@ -29,4 +29,5 @@
 
 #include "pxtools.h"
+#include "pxspace.h"
 #include "staticskytool.h"
 
@@ -131,4 +132,6 @@
     pxAddLabelSearchArgs(config, whereMD, "-select_data_group",    "stackRun.data_group",       "LIKE");
     pxAddLabelSearchArgs(config, whereMD, "-select_filter",        "stackRun.filter",           "LIKE");
+    PXOPT_COPY_F32(config->args, whereMD, "-select_glat_min",      "skycell.glat",              ">=");
+    PXOPT_COPY_F32(config->args, whereMD, "-select_glat_max",      "skycell.glat",              "<=");
 
     // find the number of requested filters:
@@ -390,7 +393,13 @@
 
     psMetadata *where = psMetadataAlloc();
-    PXOPT_COPY_S64(config->args, where, "-sky_id",  "sky_id",   "==");
-    PXOPT_COPY_STR(config->args, where, "-label",   "label",    "==");
-    PXOPT_COPY_STR(config->args, where, "-state",   "state",    "==");
+    PXOPT_COPY_S64(config->args, where, "-sky_id",      "sky_id",   "==");
+    PXOPT_COPY_STR(config->args, where, "-label",       "staticskyRun.label",    "==");
+    PXOPT_COPY_STR(config->args, where, "-state",       "staticskyRun.state",    "==");
+    PXOPT_COPY_STR(config->args, where, "-tess_id",     "stackRun.tess_id",    "==");
+    PXOPT_COPY_STR(config->args, where, "-skycell_id",  "stackRun.skycell_id",    "==");
+    if (!pxskycellAddWhere(config, where)) {
+        psError(PXTOOLS_ERR_CONFIG, false, "failed to add skycell search arguments");
+        return false;
+    }
     if (!psListLength(where->list)) {
         psFree(where);
@@ -399,5 +408,5 @@
     }
 
-    psString query = psStringCopy("UPDATE staticskyRun");
+    psString query = psStringCopy("UPDATE staticskyRun JOIN staticskyInput USING(sky_id) JOIN stackRun using(stack_id) JOIN skycell USING(tess_id, skycell_id)");
 
     // pxUpdateRun gets parameters from config->args and updates
@@ -638,4 +647,5 @@
     PXOPT_COPY_STR(config->args, where, "-skycell_id", "stackRun.skycell_id", "LIKE");
     PXOPT_COPY_S16(config->args, where, "-fault",      "staticskyResult.fault", "==");
+    pxskycellAddWhere(config, where);
     PXOPT_LOOKUP_S32(num_filters, config->args, "-num_filters", false, false);
 
Index: branches/meh_branches/ppstack_test/ippTools/src/staticskytoolConfig.c
===================================================================
--- branches/meh_branches/ppstack_test/ippTools/src/staticskytoolConfig.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippTools/src/staticskytoolConfig.c	(revision 34041)
@@ -55,4 +55,6 @@
     psMetadataAddStr(definebyqueryArgs,  PS_LIST_TAIL, "-select_data_group", PS_META_DUPLICATE_OK, "search by stackRun data_group (LIKE comparison, multiple OK)", NULL);
     psMetadataAddStr(definebyqueryArgs,  PS_LIST_TAIL, "-select_filter", PS_META_DUPLICATE_OK, "search by filter (LIKE comparison, multiple OK)", NULL);
+    psMetadataAddF32(definebyqueryArgs,  PS_LIST_TAIL, "-select_glat_min", 0, "define min galactic latitude", NAN);
+    psMetadataAddF32(definebyqueryArgs,  PS_LIST_TAIL, "-select_glat_max", 0, "define max galactic latitude", NAN);
     psMetadataAddStr(definebyqueryArgs,  PS_LIST_TAIL, "-set_workdir", 0, "define workdir (required)", NULL);
     psMetadataAddStr(definebyqueryArgs,  PS_LIST_TAIL, "-set_label", 0, "define label (required)", NULL);
@@ -73,4 +75,7 @@
     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-state", 0, "search by state", NULL);
     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-label", 0, "search by label", 0);
+    psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-tess_id", 0, "search by tess_id", NULL);
+    psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-skycell_id", 0, "search by skycell_id", NULL);
+    pxskycellAddArguments(updaterunArgs);
     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_label", 0, "define new value for label", NULL);
     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_state", 0, "define new state", NULL);
@@ -113,4 +118,5 @@
     psMetadataAddStr(resultArgs, PS_LIST_TAIL, "-data_group", 0, "search by data_group (LIKE comparison)", NULL);
     psMetadataAddS16(resultArgs, PS_LIST_TAIL, "-num_filters", 0, "search by number of filters in the inputs (>=)", 0);
+    pxskycellAddArguments(resultArgs);
     psMetadataAddS16(resultArgs, PS_LIST_TAIL, "-fault", 0, "search by fault code", 0);
     psMetadataAddU64(resultArgs, PS_LIST_TAIL, "-limit", 0, "limit result set to N items", 0);
Index: branches/meh_branches/ppstack_test/ippconfig/Makefile.am
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/Makefile.am	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/Makefile.am	(revision 34041)
@@ -3,4 +3,5 @@
 	isp \
 	gpc1 \
+	gpc1-tdi \
 	cfh12k \
 	megacam \
Index: branches/meh_branches/ppstack_test/ippconfig/cfh12k/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/cfh12k/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/cfh12k/camera.config	(revision 34041)
@@ -122,4 +122,5 @@
   CMF.XSRC STR {CHIP.NAME}.xsrc # use .PSF and .EXT?
   CMF.XFIT STR {CHIP.NAME}.xfit # use .PSF and .EXT?
+  CMF.XRAD STR {CHIP.NAME}.xrad # use .PSF and .EXT?
   CMF.DETEFF STR {CHIP.NAME}.deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/configure.ac
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/configure.ac	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/configure.ac	(revision 34041)
@@ -14,4 +14,5 @@
   isp/Makefile
   gpc1/Makefile
+  gpc1-tdi/Makefile
   cfh12k/Makefile
   megacam/Makefile
Index: branches/meh_branches/ppstack_test/ippconfig/dvo.photcodes
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/dvo.photcodes	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/dvo.photcodes	(revision 34041)
@@ -1,3 +1,2 @@
-
 # this file contains the list of valid photometry codes.  there should
 # be one code for each combination of CCD, filter, and telescope (and
@@ -23,41 +22,44 @@
 # PS1 GPC1: g: 3201-3264, r: 3301-3364, i: 3401-3464, z: 3501-3564, y: 3601-3664
 
+# NOTE 2012.03.30 EAM : I have added 'poor' and 'bad' bitsets for GPC1 data using psphot
+# I have also set the current best guess values for the GPC1 zero points
+
 # external references: 1000 - 2999
 
-#                                                                                       astrometry  photometry     astr mask      phot mask
-# code name		    type  zero  airmass offset  c1    c2  slope  <color> eq     sys  scale  sys  scale     poor   bad     poor   bad 
-  1     g                    sec   0.000  0.000 0.000    1     3  0.0000     0  1051   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  2     r                    sec   0.000  0.000 0.000    2     3  0.0000     0  1052   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  3     i                    sec   0.000  0.000 0.000    2     3  0.0000     0  1053   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4     z                    sec   0.000  0.000 0.000    3     4  0.0000     0  1054   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  5     y                    sec   0.000  0.000 0.000    4     4  0.0000     0  1054   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
-
-  1010  U_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1011  B_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1012  V_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1013  R_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1014  I_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  1020  U_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1021  B_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1022  V_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1023  R_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1024  I_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  1050  u_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1051  g_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1052  r_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1053  i_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1054  z_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  1055  U_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1056  G_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1057  R_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1058  I_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1059  Z_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-# the 30 different SDSS photcodes for the SDSSmosaic camera... 6 columns of CCDs (camcols) x 5 filters.
-# Added by Sebastian Jester jester@mpia.de
-# These likely need work!
+#                                           airmass      color                         astrometry  mag    photom  astrom mask    photom mask
+# code  name                type    zero  slope offset c1    c2   slope   zero  equiv  sys scale   scale  sys     poor   bad     poor   bad
+  1     g                    sec   0.000  0.000 0.000     1     3 0.0000     0  1051   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2     r                    sec   0.000  0.000 0.000     2     3 0.0000     0  1052   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  3     i                    sec   0.000  0.000 0.000     2     3 0.0000     0  1053   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4     z                    sec   0.000  0.000 0.000     3     4 0.0000     0  1054   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  5     y                    sec   0.000  0.000 0.000     4     5 0.0000     0  1054   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  6     J                    sec   0.000  0.000 0.000     -     - 0.0000     0  2011   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  7     H                    sec   0.000  0.000 0.000     -     - 0.0000     0  2012   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  8     K                    sec   0.000  0.000 0.000     -     - 0.0000     0  2013   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  1010  U_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1011  B_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1012  V_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1013  R_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1014  I_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  1020  U_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1021  B_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1022  V_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1023  R_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1024  I_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  1050  u_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1051  g_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1052  r_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1053  i_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1054  z_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  1055  U_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1056  G_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1057  R_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1058  I_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1059  Z_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+
   1060  SDSS.r.11            dep   0.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
   1061  SDSS.r.12            dep   0.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
@@ -91,825 +93,789 @@
   1089  SDSS.g.56            dep   0.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
 
-  1100  GSC                  ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  1000  USNO_BLUE            ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1001  USNO_RED             ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1002  USNO_J               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1003  USNO_F               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1004  USNO_N               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  1110  USNO.098.RED         dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1111  USNO.098-0.RED70     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1112  USNO.098-0.RG630     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1113  USNO.103AD.MULTI     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1114  USNO.103AD.YEL3      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1115  USNO.103AD.YEL8      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1116  USNO.103AE.#12       dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1117  USNO.103AE.AMB2      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1118  USNO.103AE.AMB3      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1119  USNO.103AE.AMB4      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1120  USNO.103AE.AMB5      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1121  USNO.103AE.AMB6      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1122  USNO.103AE.AMB7      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1123  USNO.103AE.AMB8      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1124  USNO.103AE.NONE      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1125  USNO.103AE.RED66     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1126  USNO.103AE.RED67     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1127  USNO.103AE.RED68     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1128  USNO.103AE.RED69     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1129  USNO.103AE.RED70     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1130  USNO.103AE.RED71     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1131  USNO.103AE.RED73     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1132  USNO.103AE.RG2444    dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1133  USNO.103AE.RP2444    dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1134  USNO.103AO.NONE      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1135  USNO.IIIAF.OG590     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1136  USNO.IIIAF.RG600     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1137  USNO.IIIAF.RG610     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1138  USNO.IIIAF.RG630     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1139  USNO.IIIAJ.GG358     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1140  USNO.IIIAJ.GG385     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1141  USNO.IIIAJ.GG395     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1142  USNO.IVN.RG715       dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1143  USNO.IVN.RG9         dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  1144  USNO.IVN.WR88A       dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  2020  TYCHO_B              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  2021  TYCHO_V              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  2011  2MASS_J              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.050 0.000 1.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  2012  2MASS_H              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.050 0.000 1.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  2013  2MASS_K              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.050 0.000 1.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-# these were used for the synthetic photometry catalog based on 2mass
-  3001  SYNTH.g              ref   0.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  3002  SYNTH.r              ref   0.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  3003  SYNTH.i              ref   0.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  3004  SYNTH.z              ref   0.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  3005  SYNTH.y              ref   0.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-### megacam photcodes:
-  100   MEGACAM.u.00         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  101   MEGACAM.u.01         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  102   MEGACAM.u.02         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  103   MEGACAM.u.03         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  104   MEGACAM.u.04         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  105   MEGACAM.u.05         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  106   MEGACAM.u.06         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  107   MEGACAM.u.07         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  108   MEGACAM.u.08         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  109   MEGACAM.u.09         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  110   MEGACAM.u.10         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  111   MEGACAM.u.11         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  112   MEGACAM.u.12         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  113   MEGACAM.u.13         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  114   MEGACAM.u.14         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  115   MEGACAM.u.15         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  116   MEGACAM.u.16         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  117   MEGACAM.u.17         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  118   MEGACAM.u.18         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  119   MEGACAM.u.19         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  120   MEGACAM.u.20         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  121   MEGACAM.u.21         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  122   MEGACAM.u.22         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  123   MEGACAM.u.23         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  124   MEGACAM.u.24         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  125   MEGACAM.u.25         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  126   MEGACAM.u.26         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  127   MEGACAM.u.27         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  128   MEGACAM.u.28         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  129   MEGACAM.u.29         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  130   MEGACAM.u.30         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  131   MEGACAM.u.31         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  132   MEGACAM.u.32         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  133   MEGACAM.u.33         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  134   MEGACAM.u.34         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  135   MEGACAM.u.35         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  136   MEGACAM.u.36         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  137   MEGACAM.u.37         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  138   MEGACAM.u.38         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  139   MEGACAM.u.39         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  200   MEGACAM.g.00         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  201   MEGACAM.g.01         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  202   MEGACAM.g.02         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  203   MEGACAM.g.03         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  204   MEGACAM.g.04         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  205   MEGACAM.g.05         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  206   MEGACAM.g.06         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  207   MEGACAM.g.07         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  208   MEGACAM.g.08         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  209   MEGACAM.g.09         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  210   MEGACAM.g.10         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  211   MEGACAM.g.11         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  212   MEGACAM.g.12         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  213   MEGACAM.g.13         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  214   MEGACAM.g.14         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  215   MEGACAM.g.15         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  216   MEGACAM.g.16         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  217   MEGACAM.g.17         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  218   MEGACAM.g.18         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  219   MEGACAM.g.19         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  220   MEGACAM.g.20         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  221   MEGACAM.g.21         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  222   MEGACAM.g.22         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  223   MEGACAM.g.23         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  224   MEGACAM.g.24         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  225   MEGACAM.g.25         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  226   MEGACAM.g.26         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  227   MEGACAM.g.27         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  228   MEGACAM.g.28         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  229   MEGACAM.g.29         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  230   MEGACAM.g.30         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  231   MEGACAM.g.31         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  232   MEGACAM.g.32         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  233   MEGACAM.g.33         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  234   MEGACAM.g.34         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  235   MEGACAM.g.35         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  236   MEGACAM.g.36         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  237   MEGACAM.g.37         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  238   MEGACAM.g.38         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  239   MEGACAM.g.39         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  300   MEGACAM.r.00         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  301   MEGACAM.r.01         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  302   MEGACAM.r.02         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  303   MEGACAM.r.03         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  304   MEGACAM.r.04         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  305   MEGACAM.r.05         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  306   MEGACAM.r.06         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  307   MEGACAM.r.07         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  308   MEGACAM.r.08         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  309   MEGACAM.r.09         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  310   MEGACAM.r.10         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  311   MEGACAM.r.11         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  312   MEGACAM.r.12         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  313   MEGACAM.r.13         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  314   MEGACAM.r.14         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  315   MEGACAM.r.15         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  316   MEGACAM.r.16         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  317   MEGACAM.r.17         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  318   MEGACAM.r.18         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  319   MEGACAM.r.19         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  320   MEGACAM.r.20         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  321   MEGACAM.r.21         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  322   MEGACAM.r.22         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  323   MEGACAM.r.23         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  324   MEGACAM.r.24         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  325   MEGACAM.r.25         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  326   MEGACAM.r.26         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  327   MEGACAM.r.27         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  328   MEGACAM.r.28         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  329   MEGACAM.r.29         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  330   MEGACAM.r.30         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  331   MEGACAM.r.31         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  332   MEGACAM.r.32         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  333   MEGACAM.r.33         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  334   MEGACAM.r.34         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  335   MEGACAM.r.35         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  336   MEGACAM.r.36         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  337   MEGACAM.r.37         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  338   MEGACAM.r.38         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  339   MEGACAM.r.39         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  400   MEGACAM.i.00         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  401   MEGACAM.i.01         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  402   MEGACAM.i.02         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  403   MEGACAM.i.03         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  404   MEGACAM.i.04         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  405   MEGACAM.i.05         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  406   MEGACAM.i.06         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  407   MEGACAM.i.07         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  408   MEGACAM.i.08         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  409   MEGACAM.i.09         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  410   MEGACAM.i.10         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  411   MEGACAM.i.11         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  412   MEGACAM.i.12         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  413   MEGACAM.i.13         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  414   MEGACAM.i.14         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  415   MEGACAM.i.15         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  416   MEGACAM.i.16         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  417   MEGACAM.i.17         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  418   MEGACAM.i.18         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  419   MEGACAM.i.19         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  420   MEGACAM.i.20         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  421   MEGACAM.i.21         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  422   MEGACAM.i.22         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  423   MEGACAM.i.23         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  424   MEGACAM.i.24         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  425   MEGACAM.i.25         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  426   MEGACAM.i.26         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  427   MEGACAM.i.27         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  428   MEGACAM.i.28         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  429   MEGACAM.i.29         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  430   MEGACAM.i.30         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  431   MEGACAM.i.31         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  432   MEGACAM.i.32         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  433   MEGACAM.i.33         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  434   MEGACAM.i.34         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  435   MEGACAM.i.35         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  436   MEGACAM.i.36         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  437   MEGACAM.i.37         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  438   MEGACAM.i.38         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  439   MEGACAM.i.39         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  500   MEGACAM.z.00         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  501   MEGACAM.z.01         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  502   MEGACAM.z.02         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  503   MEGACAM.z.03         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  504   MEGACAM.z.04         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  505   MEGACAM.z.05         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  506   MEGACAM.z.06         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  507   MEGACAM.z.07         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  508   MEGACAM.z.08         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  509   MEGACAM.z.09         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  510   MEGACAM.z.10         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  511   MEGACAM.z.11         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  512   MEGACAM.z.12         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  513   MEGACAM.z.13         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  514   MEGACAM.z.14         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  515   MEGACAM.z.15         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  516   MEGACAM.z.16         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  517   MEGACAM.z.17         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  518   MEGACAM.z.18         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  519   MEGACAM.z.19         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  520   MEGACAM.z.20         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  521   MEGACAM.z.21         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  522   MEGACAM.z.22         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  523   MEGACAM.z.23         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  524   MEGACAM.z.24         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  525   MEGACAM.z.25         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  526   MEGACAM.z.26         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  527   MEGACAM.z.27         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  528   MEGACAM.z.28         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  529   MEGACAM.z.29         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  530   MEGACAM.z.30         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  531   MEGACAM.z.31         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  532   MEGACAM.z.32         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  533   MEGACAM.z.33         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  534   MEGACAM.z.34         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  535   MEGACAM.z.35         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  536   MEGACAM.z.36         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  537   MEGACAM.z.37         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  538   MEGACAM.z.38         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  539   MEGACAM.z.39         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-### cfh12k photcodes
-  140   CFH12K.B.00          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  141   CFH12K.B.01          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  142   CFH12K.B.02          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  143   CFH12K.B.03          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  144   CFH12K.B.04          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  145   CFH12K.B.05          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  146   CFH12K.B.06          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  147   CFH12K.B.07          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  148   CFH12K.B.08          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  149   CFH12K.B.09          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  150   CFH12K.B.10          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  151   CFH12K.B.11          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  240   CFH12K.V.00          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  241   CFH12K.V.01          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  242   CFH12K.V.02          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  243   CFH12K.V.03          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  244   CFH12K.V.04          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  245   CFH12K.V.05          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  246   CFH12K.V.06          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  247   CFH12K.V.07          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  248   CFH12K.V.08          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  249   CFH12K.V.09          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  250   CFH12K.V.10          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  251   CFH12K.V.11          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  340   CFH12K.R.00          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  341   CFH12K.R.01          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  342   CFH12K.R.02          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  343   CFH12K.R.03          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  344   CFH12K.R.04          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  345   CFH12K.R.05          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  346   CFH12K.R.06          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  347   CFH12K.R.07          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  348   CFH12K.R.08          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  349   CFH12K.R.09          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  350   CFH12K.R.10          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  351   CFH12K.R.11          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  440   CFH12K.I.00          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  441   CFH12K.I.01          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  442   CFH12K.I.02          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  443   CFH12K.I.03          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  444   CFH12K.I.04          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  445   CFH12K.I.05          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  446   CFH12K.I.06          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  447   CFH12K.I.07          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  448   CFH12K.I.08          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  449   CFH12K.I.09          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  450   CFH12K.I.10          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  451   CFH12K.I.11          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  540   CFH12K.Z.00          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  541   CFH12K.Z.01          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  542   CFH12K.Z.02          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  543   CFH12K.Z.03          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  544   CFH12K.Z.04          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  545   CFH12K.Z.05          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  546   CFH12K.Z.06          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  547   CFH12K.Z.07          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  548   CFH12K.Z.08          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  549   CFH12K.Z.09          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  550   CFH12K.Z.10          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  551   CFH12K.Z.11          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  600   CFH12K.Ha.00         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  601   CFH12K.Ha.01         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  602   CFH12K.Ha.02         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  603   CFH12K.Ha.03         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  604   CFH12K.Ha.04         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  605   CFH12K.Ha.05         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  606   CFH12K.Ha.06         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  607   CFH12K.Ha.07         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  608   CFH12K.Ha.08         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  609   CFH12K.Ha.09         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  610   CFH12K.Ha.10         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  611   CFH12K.Ha.11         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  612   CFH12K.HaOff.00      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  613   CFH12K.HaOff.01      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  614   CFH12K.HaOff.02      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  615   CFH12K.HaOff.03      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  616   CFH12K.HaOff.04      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  617   CFH12K.HaOff.05      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  618   CFH12K.HaOff.06      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  619   CFH12K.HaOff.07      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  620   CFH12K.HaOff.08      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  621   CFH12K.HaOff.09      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  622   CFH12K.HaOff.10      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  623   CFH12K.HaOff.11      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  624   CFH12K.CN.00         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  625   CFH12K.CN.01         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  626   CFH12K.CN.02         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  627   CFH12K.CN.03         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  628   CFH12K.CN.04         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  629   CFH12K.CN.05         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  630   CFH12K.CN.06         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  631   CFH12K.CN.07         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  632   CFH12K.CN.08         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  633   CFH12K.CN.09         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  634   CFH12K.CN.10         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  635   CFH12K.CN.11         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  636   CFH12K.TiO.00        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  637   CFH12K.TiO.01        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  638   CFH12K.TiO.02        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  639   CFH12K.TiO.03        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  640   CFH12K.TiO.04        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  641   CFH12K.TiO.05        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  642   CFH12K.TiO.06        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  643   CFH12K.TiO.07        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  644   CFH12K.TiO.08        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  645   CFH12K.TiO.09        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  646   CFH12K.TiO.10        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  647   CFH12K.TiO.11        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  648   CFH12K.NB920.00      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  649   CFH12K.NB920.01      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  650   CFH12K.NB920.02      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  651   CFH12K.NB920.03      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  652   CFH12K.NB920.04      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  653   CFH12K.NB920.05      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  654   CFH12K.NB920.06      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  655   CFH12K.NB920.07      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  678   CFH12K.NB920.08      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  679   CFH12K.NB920.09      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  680   CFH12K.NB920.10      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  681   CFH12K.NB920.11      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  682   CFH12K.B2F.00        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  683   CFH12K.B2F.01        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  684   CFH12K.B2F.02        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  685   CFH12K.B2F.03        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  686   CFH12K.B2F.04        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  687   CFH12K.B2F.05        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  688   CFH12K.B2F.06        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  689   CFH12K.B2F.07        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  690   CFH12K.B2F.08        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  691   CFH12K.B2F.09        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  692   CFH12K.B2F.10        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  693   CFH12K.B2F.11        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  3200  ISP-Apogee-01.g      dep  19.250  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  3300  ISP-Apogee-01.r      dep  19.150  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  3400  ISP-Apogee-01.i      dep  18.500  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  3500  ISP-Apogee-01.z      dep  17.250  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  3600  ISP-Apogee-01.y      dep  14.150  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  # VYSOS photcodes -- add as needed
-  5002  VYSOS5.r             dep  17.200  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  5022  VYSOS20.r            dep  21.400  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  5023  VYSOS20.i            dep  20.500  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  4100  SIMTEST.g.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4200  SIMTEST.r.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4300  SIMTEST.i.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4400  SIMTEST.z.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4500  SIMTEST.y.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
- 14100  SIMTEST.g.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
- 14200  SIMTEST.r.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
- 14300  SIMTEST.i.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
- 14400  SIMTEST.z.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
- 14500  SIMTEST.y.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-
-  4101  SIMMOSAIC.g.00       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4102  SIMMOSAIC.g.01       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4103  SIMMOSAIC.g.02       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4104  SIMMOSAIC.g.03       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4201  SIMMOSAIC.r.00       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4202  SIMMOSAIC.r.01       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4203  SIMMOSAIC.r.02       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4204  SIMMOSAIC.r.03       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4301  SIMMOSAIC.i.00       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4302  SIMMOSAIC.i.01       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4303  SIMMOSAIC.i.02       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4304  SIMMOSAIC.i.03       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4401  SIMMOSAIC.z.00       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4402  SIMMOSAIC.z.01       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4403  SIMMOSAIC.z.02       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4404  SIMMOSAIC.z.03       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4501  SIMMOSAIC.y.00       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4502  SIMMOSAIC.y.01       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4503  SIMMOSAIC.y.02       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  4504  SIMMOSAIC.y.03       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-# 2007.10.02 : predicted g zero-points from 2006 NSF proposal was 24.90
-# 2010.05.14 : nominal zero point as measured by Eddie Schlafly (http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/GPC_Zero_Points_July09)
-# 2010.05.14 : airmass slope from Megacam (not measured)
-  10001 GPC1.g.XY01          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10002 GPC1.g.XY02          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10003 GPC1.g.XY03          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10004 GPC1.g.XY04          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10005 GPC1.g.XY05          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10006 GPC1.g.XY06          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10010 GPC1.g.XY10          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10011 GPC1.g.XY11          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10012 GPC1.g.XY12          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10013 GPC1.g.XY13          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10014 GPC1.g.XY14          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10015 GPC1.g.XY15          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10016 GPC1.g.XY16          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10017 GPC1.g.XY17          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10020 GPC1.g.XY20          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10021 GPC1.g.XY21          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10022 GPC1.g.XY22          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10023 GPC1.g.XY23          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10024 GPC1.g.XY24          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10025 GPC1.g.XY25          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10026 GPC1.g.XY26          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10027 GPC1.g.XY27          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10030 GPC1.g.XY30          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10031 GPC1.g.XY31          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10032 GPC1.g.XY32          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10033 GPC1.g.XY33          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10034 GPC1.g.XY34          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10035 GPC1.g.XY35          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10036 GPC1.g.XY36          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10037 GPC1.g.XY37          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10040 GPC1.g.XY40          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10041 GPC1.g.XY41          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10042 GPC1.g.XY42          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10043 GPC1.g.XY43          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10044 GPC1.g.XY44          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10045 GPC1.g.XY45          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10046 GPC1.g.XY46          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10047 GPC1.g.XY47          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10050 GPC1.g.XY50          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10051 GPC1.g.XY51          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10052 GPC1.g.XY52          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10053 GPC1.g.XY53          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10054 GPC1.g.XY54          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10055 GPC1.g.XY55          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10056 GPC1.g.XY56          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10057 GPC1.g.XY57          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10060 GPC1.g.XY60          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10061 GPC1.g.XY61          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10062 GPC1.g.XY62          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10063 GPC1.g.XY63          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10064 GPC1.g.XY64          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10065 GPC1.g.XY65          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10066 GPC1.g.XY66          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10067 GPC1.g.XY67          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10071 GPC1.g.XY71          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10072 GPC1.g.XY72          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10073 GPC1.g.XY73          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10074 GPC1.g.XY74          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10075 GPC1.g.XY75          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10076 GPC1.g.XY76          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-# 2007.10.02 : predicted r zero-points from 2006 NSF proposal was 25.10
-# 2010.05.14 : nominal zero point as measured by Eddie Schlafly (http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/GPC_Zero_Points_July09)
-# 2010.05.14 : airmass slope from Megacam (not measured)
-  10101 GPC1.r.XY01          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10102 GPC1.r.XY02          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10103 GPC1.r.XY03          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10104 GPC1.r.XY04          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10105 GPC1.r.XY05          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10106 GPC1.r.XY06          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10110 GPC1.r.XY10          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10111 GPC1.r.XY11          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10112 GPC1.r.XY12          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10113 GPC1.r.XY13          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10114 GPC1.r.XY14          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10115 GPC1.r.XY15          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10116 GPC1.r.XY16          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10117 GPC1.r.XY17          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10120 GPC1.r.XY20          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10121 GPC1.r.XY21          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10122 GPC1.r.XY22          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10123 GPC1.r.XY23          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10124 GPC1.r.XY24          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10125 GPC1.r.XY25          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10126 GPC1.r.XY26          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10127 GPC1.r.XY27          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10130 GPC1.r.XY30          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10131 GPC1.r.XY31          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10132 GPC1.r.XY32          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10133 GPC1.r.XY33          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10134 GPC1.r.XY34          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10135 GPC1.r.XY35          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10136 GPC1.r.XY36          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10137 GPC1.r.XY37          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10140 GPC1.r.XY40          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10141 GPC1.r.XY41          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10142 GPC1.r.XY42          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10143 GPC1.r.XY43          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10144 GPC1.r.XY44          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10145 GPC1.r.XY45          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10146 GPC1.r.XY46          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10147 GPC1.r.XY47          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10150 GPC1.r.XY50          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10151 GPC1.r.XY51          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10152 GPC1.r.XY52          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10153 GPC1.r.XY53          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10154 GPC1.r.XY54          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10155 GPC1.r.XY55          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10156 GPC1.r.XY56          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10157 GPC1.r.XY57          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10160 GPC1.r.XY60          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10161 GPC1.r.XY61          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10162 GPC1.r.XY62          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10163 GPC1.r.XY63          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10164 GPC1.r.XY64          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10165 GPC1.r.XY65          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10166 GPC1.r.XY66          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10167 GPC1.r.XY67          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10171 GPC1.r.XY71          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10172 GPC1.r.XY72          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10173 GPC1.r.XY73          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10174 GPC1.r.XY74          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10175 GPC1.r.XY75          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10176 GPC1.r.XY76          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-# 2007.10.02 : predicted i zero-points from 2006 NSF proposal was 25.00
-# 2010.05.14 : nominal zero point as measured by Eddie Schlafly (http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/GPC_Zero_Points_July09)
-# 2010.05.14 : airmass slope from Megacam (not measured)
-  10201 GPC1.i.XY01          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10202 GPC1.i.XY02          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10203 GPC1.i.XY03          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10204 GPC1.i.XY04          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10205 GPC1.i.XY05          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10206 GPC1.i.XY06          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10210 GPC1.i.XY10          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10211 GPC1.i.XY11          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10212 GPC1.i.XY12          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10213 GPC1.i.XY13          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10214 GPC1.i.XY14          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10215 GPC1.i.XY15          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10216 GPC1.i.XY16          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10217 GPC1.i.XY17          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10220 GPC1.i.XY20          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10221 GPC1.i.XY21          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10222 GPC1.i.XY22          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10223 GPC1.i.XY23          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10224 GPC1.i.XY24          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10225 GPC1.i.XY25          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10226 GPC1.i.XY26          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10227 GPC1.i.XY27          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10230 GPC1.i.XY30          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10231 GPC1.i.XY31          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10232 GPC1.i.XY32          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10233 GPC1.i.XY33          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10234 GPC1.i.XY34          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10235 GPC1.i.XY35          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10236 GPC1.i.XY36          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10237 GPC1.i.XY37          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10240 GPC1.i.XY40          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10241 GPC1.i.XY41          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10242 GPC1.i.XY42          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10243 GPC1.i.XY43          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10244 GPC1.i.XY44          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10245 GPC1.i.XY45          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10246 GPC1.i.XY46          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10247 GPC1.i.XY47          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10250 GPC1.i.XY50          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10251 GPC1.i.XY51          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10252 GPC1.i.XY52          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10253 GPC1.i.XY53          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10254 GPC1.i.XY54          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10255 GPC1.i.XY55          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10256 GPC1.i.XY56          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10257 GPC1.i.XY57          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10260 GPC1.i.XY60          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10261 GPC1.i.XY61          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10262 GPC1.i.XY62          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10263 GPC1.i.XY63          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10264 GPC1.i.XY64          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10265 GPC1.i.XY65          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10266 GPC1.i.XY66          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10267 GPC1.i.XY67          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10271 GPC1.i.XY71          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10272 GPC1.i.XY72          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10273 GPC1.i.XY73          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10274 GPC1.i.XY74          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10275 GPC1.i.XY75          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10276 GPC1.i.XY76          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-# 2007.10.02 : predicted z zero-points from 2006 NSF proposal was 24.60
-# 2010.05.14 : nominal zero point as measured by Eddie Schlafly (http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/GPC_Zero_Points_July09)
-# 2010.05.14 : airmass slope from Megacam (not measured)
-  10301 GPC1.z.XY01          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10302 GPC1.z.XY02          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10303 GPC1.z.XY03          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10304 GPC1.z.XY04          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10305 GPC1.z.XY05          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10306 GPC1.z.XY06          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10310 GPC1.z.XY10          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10311 GPC1.z.XY11          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10312 GPC1.z.XY12          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10313 GPC1.z.XY13          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10314 GPC1.z.XY14          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10315 GPC1.z.XY15          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10316 GPC1.z.XY16          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10317 GPC1.z.XY17          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10320 GPC1.z.XY20          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10321 GPC1.z.XY21          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10322 GPC1.z.XY22          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10323 GPC1.z.XY23          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10324 GPC1.z.XY24          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10325 GPC1.z.XY25          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10326 GPC1.z.XY26          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10327 GPC1.z.XY27          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10330 GPC1.z.XY30          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10331 GPC1.z.XY31          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10332 GPC1.z.XY32          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10333 GPC1.z.XY33          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10334 GPC1.z.XY34          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10335 GPC1.z.XY35          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10336 GPC1.z.XY36          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10337 GPC1.z.XY37          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10340 GPC1.z.XY40          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10341 GPC1.z.XY41          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10342 GPC1.z.XY42          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10343 GPC1.z.XY43          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10344 GPC1.z.XY44          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10345 GPC1.z.XY45          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10346 GPC1.z.XY46          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10347 GPC1.z.XY47          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10350 GPC1.z.XY50          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10351 GPC1.z.XY51          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10352 GPC1.z.XY52          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10353 GPC1.z.XY53          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10354 GPC1.z.XY54          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10355 GPC1.z.XY55          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10356 GPC1.z.XY56          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10357 GPC1.z.XY57          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10360 GPC1.z.XY60          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10361 GPC1.z.XY61          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10362 GPC1.z.XY62          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10363 GPC1.z.XY63          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10364 GPC1.z.XY64          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10365 GPC1.z.XY65          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10366 GPC1.z.XY66          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10367 GPC1.z.XY67          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10371 GPC1.z.XY71          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10372 GPC1.z.XY72          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10373 GPC1.z.XY73          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10374 GPC1.z.XY74          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10375 GPC1.z.XY75          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10376 GPC1.z.XY76          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-# 2007.10.02 : predicted y zero-points from 2006 NSF proposal was 23.00
-# 2007.10.02 : measured y zero-points for the y2 filter was 22.20
-# 2010.05.14 : nominal zero point as measured by Eddie Schlafly (http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/GPC_Zero_Points_July09)
-# 2010.05.14 : airmass slope from Megacam (not measured)
-  10401 GPC1.y.XY01          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10402 GPC1.y.XY02          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10403 GPC1.y.XY03          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10404 GPC1.y.XY04          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10405 GPC1.y.XY05          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10406 GPC1.y.XY06          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10410 GPC1.y.XY10          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10411 GPC1.y.XY11          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10412 GPC1.y.XY12          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10413 GPC1.y.XY13          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10414 GPC1.y.XY14          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10415 GPC1.y.XY15          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10416 GPC1.y.XY16          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10417 GPC1.y.XY17          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10420 GPC1.y.XY20          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10421 GPC1.y.XY21          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10422 GPC1.y.XY22          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10423 GPC1.y.XY23          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10424 GPC1.y.XY24          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10425 GPC1.y.XY25          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10426 GPC1.y.XY26          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10427 GPC1.y.XY27          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10430 GPC1.y.XY30          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10431 GPC1.y.XY31          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10432 GPC1.y.XY32          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10433 GPC1.y.XY33          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10434 GPC1.y.XY34          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10435 GPC1.y.XY35          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10436 GPC1.y.XY36          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10437 GPC1.y.XY37          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10440 GPC1.y.XY40          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10441 GPC1.y.XY41          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10442 GPC1.y.XY42          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10443 GPC1.y.XY43          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10444 GPC1.y.XY44          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10445 GPC1.y.XY45          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10446 GPC1.y.XY46          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10447 GPC1.y.XY47          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10450 GPC1.y.XY50          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10451 GPC1.y.XY51          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10452 GPC1.y.XY52          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10453 GPC1.y.XY53          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10454 GPC1.y.XY54          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10455 GPC1.y.XY55          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10456 GPC1.y.XY56          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10457 GPC1.y.XY57          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10460 GPC1.y.XY60          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10461 GPC1.y.XY61          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10462 GPC1.y.XY62          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10463 GPC1.y.XY63          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10464 GPC1.y.XY64          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10465 GPC1.y.XY65          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10466 GPC1.y.XY66          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10467 GPC1.y.XY67          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10471 GPC1.y.XY71          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10472 GPC1.y.XY72          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10473 GPC1.y.XY73          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10474 GPC1.y.XY74          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10475 GPC1.y.XY75          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  10476 GPC1.y.XY76          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-  11000 GPC1.g.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  11100 GPC1.r.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  11200 GPC1.i.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  11300 GPC1.z.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-  11400 GPC1.y.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
-
-# mosaic2 photcodes
-
-  160  MOSAIC2.B.00          dep  25.107  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  161  MOSAIC2.B.01          dep  25.120  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  162  MOSAIC2.B.02          dep  25.115  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  163  MOSAIC2.B.03          dep  25.111  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  164  MOSAIC2.B.04          dep  25.111  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  165  MOSAIC2.B.05          dep  25.101  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  166  MOSAIC2.B.06          dep  25.106  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  167  MOSAIC2.B.07          dep  25.104  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  260  MOSAIC2.V.00          dep  25.448  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  261  MOSAIC2.V.01          dep  25.472  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  262  MOSAIC2.V.02          dep  25.472  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  263  MOSAIC2.V.03          dep  25.476  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  264  MOSAIC2.V.04          dep  25.475  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  265  MOSAIC2.V.05          dep  25.471  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  266  MOSAIC2.V.06          dep  25.472  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  267  MOSAIC2.V.07          dep  25.475  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  360  MOSAIC2.VR.00         dep  25.636  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  361  MOSAIC2.VR.01         dep  25.633  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  362  MOSAIC2.VR.02         dep  25.648  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  363  MOSAIC2.VR.03         dep  25.632  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  364  MOSAIC2.VR.04         dep  25.628  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  365  MOSAIC2.VR.05         dep  25.616  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  366  MOSAIC2.VR.06         dep  25.629  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  367  MOSAIC2.VR.07         dep  25.624  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  460  MOSAIC2.R.00          dep  25.636  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  461  MOSAIC2.R.01          dep  25.633  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  462  MOSAIC2.R.02          dep  25.648  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  463  MOSAIC2.R.03          dep  25.632  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  464  MOSAIC2.R.04          dep  25.628  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  465  MOSAIC2.R.05          dep  25.616  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  466  MOSAIC2.R.06          dep  25.629  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  467  MOSAIC2.R.07          dep  25.624  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-
-  560  MOSAIC2.I.00          dep  24.911  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  561  MOSAIC2.I.01          dep  24.882  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  562  MOSAIC2.I.02          dep  24.924  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  563  MOSAIC2.I.03          dep  24.906  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  564  MOSAIC2.I.04          dep  24.906  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  565  MOSAIC2.I.05          dep  24.877  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  566  MOSAIC2.I.06          dep  24.887  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
-  567  MOSAIC2.I.07          dep  24.912  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  1100  GSC                  ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1000  USNO_BLUE            ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1001  USNO_RED             ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1002  USNO_J               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1003  USNO_F               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1004  USNO_N               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  1110  USNO.098.RED         dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1111  USNO.098-0.RED70     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1112  USNO.098-0.RG630     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1113  USNO.103AD.MULTI     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1114  USNO.103AD.YEL3      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1115  USNO.103AD.YEL8      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1116  USNO.103AE.#12       dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1117  USNO.103AE.AMB2      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1118  USNO.103AE.AMB3      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1119  USNO.103AE.AMB4      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1120  USNO.103AE.AMB5      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1121  USNO.103AE.AMB6      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1122  USNO.103AE.AMB7      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1123  USNO.103AE.AMB8      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1124  USNO.103AE.NONE      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1125  USNO.103AE.RED66     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1126  USNO.103AE.RED67     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1127  USNO.103AE.RED68     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1128  USNO.103AE.RED69     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1129  USNO.103AE.RED70     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1130  USNO.103AE.RED71     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1131  USNO.103AE.RED73     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1132  USNO.103AE.RG2444    dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1133  USNO.103AE.RP2444    dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1134  USNO.103AO.NONE      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1135  USNO.IIIAF.OG590     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1136  USNO.IIIAF.RG600     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1137  USNO.IIIAF.RG610     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1138  USNO.IIIAF.RG630     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1139  USNO.IIIAJ.GG358     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1140  USNO.IIIAJ.GG385     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1141  USNO.IIIAJ.GG395     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1142  USNO.IVN.RG715       dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1143  USNO.IVN.RG9         dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1144  USNO.IVN.WR88A       dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  1150  SCOS.103a.E          dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.100 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1151  SCOS.4414.OG590      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.100 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1152  SCOS.4415.OG590      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.100 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1153  SCOS.IIIaF.OG590     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.100 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1154  SCOS.IIIaF.RG610     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.100 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1155  SCOS.IIIaF.RG630     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.100 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1156  SCOS.IIIaJ.GG385     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.100 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1157  SCOS.IIIaJ.GG395     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.100 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1158  SCOS.IVN.RG715       dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.100 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1159  SCOS.IVN.RG9         dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.100 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  2020  TYCHO_B              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2021  TYCHO_V              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  2011  2MASS_J              ref   0.000  0.000 0.000     -     - 0.0000     0     6   0.080 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2012  2MASS_H              ref   0.000  0.000 0.000     -     - 0.0000     0     7   0.080 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2013  2MASS_K              ref   0.000  0.000 0.000     -     - 0.0000     0     8   0.080 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  2014  WISE_W1              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2015  WISE_W2              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2016  WISE_W3              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2017  WISE_W4              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  3001  SYNTH.g              ref   0.000  0.000 0.000     -     - 0.0000     0     1     nan 0.000 2.000  0.600   0x0000 0x0000  0x0000 0x0000
+  3002  SYNTH.r              ref   0.000  0.000 0.000     -     - 0.0000     0     2     nan 0.000 2.000  0.600   0x0000 0x0000  0x0000 0x0000
+  3003  SYNTH.i              ref   0.000  0.000 0.000     -     - 0.0000     0     3     nan 0.000 2.000  0.600   0x0000 0x0000  0x0000 0x0000
+  3004  SYNTH.z              ref   0.000  0.000 0.000     -     - 0.0000     0     4     nan 0.000 2.000  0.600   0x0000 0x0000  0x0000 0x0000
+  3005  SYNTH.y              ref   0.000  0.000 0.000     -     - 0.0000     0     5     nan 0.000 2.000  0.600   0x0000 0x0000  0x0000 0x0000
+
+  100   MEGACAM.u.00         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  101   MEGACAM.u.01         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  102   MEGACAM.u.02         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  103   MEGACAM.u.03         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  104   MEGACAM.u.04         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  105   MEGACAM.u.05         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  106   MEGACAM.u.06         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  107   MEGACAM.u.07         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  108   MEGACAM.u.08         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  109   MEGACAM.u.09         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  110   MEGACAM.u.10         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  111   MEGACAM.u.11         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  112   MEGACAM.u.12         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  113   MEGACAM.u.13         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  114   MEGACAM.u.14         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  115   MEGACAM.u.15         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  116   MEGACAM.u.16         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  117   MEGACAM.u.17         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  118   MEGACAM.u.18         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  119   MEGACAM.u.19         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  120   MEGACAM.u.20         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  121   MEGACAM.u.21         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  122   MEGACAM.u.22         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  123   MEGACAM.u.23         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  124   MEGACAM.u.24         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  125   MEGACAM.u.25         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  126   MEGACAM.u.26         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  127   MEGACAM.u.27         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  128   MEGACAM.u.28         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  129   MEGACAM.u.29         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  130   MEGACAM.u.30         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  131   MEGACAM.u.31         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  132   MEGACAM.u.32         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  133   MEGACAM.u.33         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  134   MEGACAM.u.34         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  135   MEGACAM.u.35         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  136   MEGACAM.u.36         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  137   MEGACAM.u.37         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  138   MEGACAM.u.38         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  139   MEGACAM.u.39         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  200   MEGACAM.g.00         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  201   MEGACAM.g.01         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  202   MEGACAM.g.02         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  203   MEGACAM.g.03         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  204   MEGACAM.g.04         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  205   MEGACAM.g.05         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  206   MEGACAM.g.06         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  207   MEGACAM.g.07         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  208   MEGACAM.g.08         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  209   MEGACAM.g.09         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  210   MEGACAM.g.10         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  211   MEGACAM.g.11         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  212   MEGACAM.g.12         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  213   MEGACAM.g.13         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  214   MEGACAM.g.14         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  215   MEGACAM.g.15         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  216   MEGACAM.g.16         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  217   MEGACAM.g.17         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  218   MEGACAM.g.18         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  219   MEGACAM.g.19         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  220   MEGACAM.g.20         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  221   MEGACAM.g.21         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  222   MEGACAM.g.22         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  223   MEGACAM.g.23         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  224   MEGACAM.g.24         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  225   MEGACAM.g.25         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  226   MEGACAM.g.26         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  227   MEGACAM.g.27         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  228   MEGACAM.g.28         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  229   MEGACAM.g.29         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  230   MEGACAM.g.30         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  231   MEGACAM.g.31         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  232   MEGACAM.g.32         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  233   MEGACAM.g.33         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  234   MEGACAM.g.34         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  235   MEGACAM.g.35         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  236   MEGACAM.g.36         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  237   MEGACAM.g.37         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  238   MEGACAM.g.38         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  239   MEGACAM.g.39         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  300   MEGACAM.r.00         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  301   MEGACAM.r.01         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  302   MEGACAM.r.02         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  303   MEGACAM.r.03         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  304   MEGACAM.r.04         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  305   MEGACAM.r.05         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  306   MEGACAM.r.06         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  307   MEGACAM.r.07         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  308   MEGACAM.r.08         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  309   MEGACAM.r.09         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  310   MEGACAM.r.10         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  311   MEGACAM.r.11         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  312   MEGACAM.r.12         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  313   MEGACAM.r.13         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  314   MEGACAM.r.14         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  315   MEGACAM.r.15         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  316   MEGACAM.r.16         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  317   MEGACAM.r.17         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  318   MEGACAM.r.18         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  319   MEGACAM.r.19         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  320   MEGACAM.r.20         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  321   MEGACAM.r.21         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  322   MEGACAM.r.22         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  323   MEGACAM.r.23         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  324   MEGACAM.r.24         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  325   MEGACAM.r.25         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  326   MEGACAM.r.26         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  327   MEGACAM.r.27         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  328   MEGACAM.r.28         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  329   MEGACAM.r.29         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  330   MEGACAM.r.30         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  331   MEGACAM.r.31         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  332   MEGACAM.r.32         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  333   MEGACAM.r.33         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  334   MEGACAM.r.34         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  335   MEGACAM.r.35         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  336   MEGACAM.r.36         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  337   MEGACAM.r.37         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  338   MEGACAM.r.38         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  339   MEGACAM.r.39         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  400   MEGACAM.i.00         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  401   MEGACAM.i.01         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  402   MEGACAM.i.02         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  403   MEGACAM.i.03         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  404   MEGACAM.i.04         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  405   MEGACAM.i.05         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  406   MEGACAM.i.06         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  407   MEGACAM.i.07         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  408   MEGACAM.i.08         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  409   MEGACAM.i.09         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  410   MEGACAM.i.10         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  411   MEGACAM.i.11         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  412   MEGACAM.i.12         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  413   MEGACAM.i.13         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  414   MEGACAM.i.14         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  415   MEGACAM.i.15         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  416   MEGACAM.i.16         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  417   MEGACAM.i.17         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  418   MEGACAM.i.18         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  419   MEGACAM.i.19         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  420   MEGACAM.i.20         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  421   MEGACAM.i.21         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  422   MEGACAM.i.22         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  423   MEGACAM.i.23         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  424   MEGACAM.i.24         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  425   MEGACAM.i.25         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  426   MEGACAM.i.26         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  427   MEGACAM.i.27         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  428   MEGACAM.i.28         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  429   MEGACAM.i.29         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  430   MEGACAM.i.30         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  431   MEGACAM.i.31         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  432   MEGACAM.i.32         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  433   MEGACAM.i.33         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  434   MEGACAM.i.34         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  435   MEGACAM.i.35         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  436   MEGACAM.i.36         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  437   MEGACAM.i.37         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  438   MEGACAM.i.38         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  439   MEGACAM.i.39         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  500   MEGACAM.z.00         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  501   MEGACAM.z.01         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  502   MEGACAM.z.02         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  503   MEGACAM.z.03         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  504   MEGACAM.z.04         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  505   MEGACAM.z.05         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  506   MEGACAM.z.06         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  507   MEGACAM.z.07         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  508   MEGACAM.z.08         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  509   MEGACAM.z.09         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  510   MEGACAM.z.10         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  511   MEGACAM.z.11         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  512   MEGACAM.z.12         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  513   MEGACAM.z.13         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  514   MEGACAM.z.14         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  515   MEGACAM.z.15         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  516   MEGACAM.z.16         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  517   MEGACAM.z.17         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  518   MEGACAM.z.18         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  519   MEGACAM.z.19         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  520   MEGACAM.z.20         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  521   MEGACAM.z.21         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  522   MEGACAM.z.22         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  523   MEGACAM.z.23         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  524   MEGACAM.z.24         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  525   MEGACAM.z.25         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  526   MEGACAM.z.26         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  527   MEGACAM.z.27         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  528   MEGACAM.z.28         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  529   MEGACAM.z.29         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  530   MEGACAM.z.30         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  531   MEGACAM.z.31         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  532   MEGACAM.z.32         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  533   MEGACAM.z.33         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  534   MEGACAM.z.34         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  535   MEGACAM.z.35         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  536   MEGACAM.z.36         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  537   MEGACAM.z.37         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  538   MEGACAM.z.38         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  539   MEGACAM.z.39         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  140   CFH12K.B.00          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  141   CFH12K.B.01          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  142   CFH12K.B.02          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  143   CFH12K.B.03          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  144   CFH12K.B.04          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  145   CFH12K.B.05          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  146   CFH12K.B.06          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  147   CFH12K.B.07          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  148   CFH12K.B.08          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  149   CFH12K.B.09          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  150   CFH12K.B.10          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  151   CFH12K.B.11          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  240   CFH12K.V.00          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  241   CFH12K.V.01          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  242   CFH12K.V.02          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  243   CFH12K.V.03          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  244   CFH12K.V.04          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  245   CFH12K.V.05          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  246   CFH12K.V.06          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  247   CFH12K.V.07          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  248   CFH12K.V.08          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  249   CFH12K.V.09          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  250   CFH12K.V.10          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  251   CFH12K.V.11          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  340   CFH12K.R.00          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  341   CFH12K.R.01          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  342   CFH12K.R.02          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  343   CFH12K.R.03          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  344   CFH12K.R.04          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  345   CFH12K.R.05          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  346   CFH12K.R.06          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  347   CFH12K.R.07          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  348   CFH12K.R.08          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  349   CFH12K.R.09          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  350   CFH12K.R.10          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  351   CFH12K.R.11          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  440   CFH12K.I.00          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  441   CFH12K.I.01          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  442   CFH12K.I.02          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  443   CFH12K.I.03          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  444   CFH12K.I.04          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  445   CFH12K.I.05          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  446   CFH12K.I.06          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  447   CFH12K.I.07          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  448   CFH12K.I.08          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  449   CFH12K.I.09          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  450   CFH12K.I.10          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  451   CFH12K.I.11          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  540   CFH12K.Z.00          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  541   CFH12K.Z.01          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  542   CFH12K.Z.02          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  543   CFH12K.Z.03          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  544   CFH12K.Z.04          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  545   CFH12K.Z.05          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  546   CFH12K.Z.06          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  547   CFH12K.Z.07          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  548   CFH12K.Z.08          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  549   CFH12K.Z.09          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  550   CFH12K.Z.10          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  551   CFH12K.Z.11          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  600   CFH12K.Ha.00         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  601   CFH12K.Ha.01         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  602   CFH12K.Ha.02         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  603   CFH12K.Ha.03         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  604   CFH12K.Ha.04         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  605   CFH12K.Ha.05         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  606   CFH12K.Ha.06         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  607   CFH12K.Ha.07         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  608   CFH12K.Ha.08         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  609   CFH12K.Ha.09         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  610   CFH12K.Ha.10         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  611   CFH12K.Ha.11         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  612   CFH12K.HaOff.00      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  613   CFH12K.HaOff.01      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  614   CFH12K.HaOff.02      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  615   CFH12K.HaOff.03      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  616   CFH12K.HaOff.04      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  617   CFH12K.HaOff.05      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  618   CFH12K.HaOff.06      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  619   CFH12K.HaOff.07      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  620   CFH12K.HaOff.08      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  621   CFH12K.HaOff.09      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  622   CFH12K.HaOff.10      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  623   CFH12K.HaOff.11      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  624   CFH12K.CN.00         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  625   CFH12K.CN.01         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  626   CFH12K.CN.02         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  627   CFH12K.CN.03         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  628   CFH12K.CN.04         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  629   CFH12K.CN.05         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  630   CFH12K.CN.06         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  631   CFH12K.CN.07         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  632   CFH12K.CN.08         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  633   CFH12K.CN.09         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  634   CFH12K.CN.10         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  635   CFH12K.CN.11         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  636   CFH12K.TiO.00        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  637   CFH12K.TiO.01        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  638   CFH12K.TiO.02        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  639   CFH12K.TiO.03        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  640   CFH12K.TiO.04        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  641   CFH12K.TiO.05        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  642   CFH12K.TiO.06        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  643   CFH12K.TiO.07        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  644   CFH12K.TiO.08        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  645   CFH12K.TiO.09        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  646   CFH12K.TiO.10        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  647   CFH12K.TiO.11        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  648   CFH12K.NB920.00      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  649   CFH12K.NB920.01      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  650   CFH12K.NB920.02      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  651   CFH12K.NB920.03      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  652   CFH12K.NB920.04      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  653   CFH12K.NB920.05      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  654   CFH12K.NB920.06      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  655   CFH12K.NB920.07      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  678   CFH12K.NB920.08      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  679   CFH12K.NB920.09      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  680   CFH12K.NB920.10      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  681   CFH12K.NB920.11      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  682   CFH12K.B2F.00        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  683   CFH12K.B2F.01        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  684   CFH12K.B2F.02        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  685   CFH12K.B2F.03        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  686   CFH12K.B2F.04        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  687   CFH12K.B2F.05        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  688   CFH12K.B2F.06        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  689   CFH12K.B2F.07        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  690   CFH12K.B2F.08        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  691   CFH12K.B2F.09        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  692   CFH12K.B2F.10        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  693   CFH12K.B2F.11        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  3200  ISP-Apogee-01.g      dep  19.250  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  3300  ISP-Apogee-01.r      dep  19.150  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  3400  ISP-Apogee-01.i      dep  18.500  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  3500  ISP-Apogee-01.z      dep  17.250  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  3600  ISP-Apogee-01.y      dep  14.150  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  5002  VYSOS5.r             dep  17.200  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  5022  VYSOS20.r            dep  21.400  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  5023  VYSOS20.i            dep  20.500  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4100  SIMTEST.g.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4200  SIMTEST.r.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4300  SIMTEST.i.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4400  SIMTEST.z.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4500  SIMTEST.y.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  14100 SIMTEST.g.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  14200 SIMTEST.r.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  14300 SIMTEST.i.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  14400 SIMTEST.z.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  14500 SIMTEST.y.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4101  SIMMOSAIC.g.00       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4102  SIMMOSAIC.g.01       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4103  SIMMOSAIC.g.02       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4104  SIMMOSAIC.g.03       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4201  SIMMOSAIC.r.00       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4202  SIMMOSAIC.r.01       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4203  SIMMOSAIC.r.02       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4204  SIMMOSAIC.r.03       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4301  SIMMOSAIC.i.00       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4302  SIMMOSAIC.i.01       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4303  SIMMOSAIC.i.02       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4304  SIMMOSAIC.i.03       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4401  SIMMOSAIC.z.00       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4402  SIMMOSAIC.z.01       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4403  SIMMOSAIC.z.02       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4404  SIMMOSAIC.z.03       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4501  SIMMOSAIC.y.00       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4502  SIMMOSAIC.y.01       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4503  SIMMOSAIC.y.02       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4504  SIMMOSAIC.y.03       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  10001 GPC1.g.XY01          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10002 GPC1.g.XY02          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10003 GPC1.g.XY03          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10004 GPC1.g.XY04          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10005 GPC1.g.XY05          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10006 GPC1.g.XY06          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10010 GPC1.g.XY10          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10011 GPC1.g.XY11          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10012 GPC1.g.XY12          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10013 GPC1.g.XY13          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10014 GPC1.g.XY14          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10015 GPC1.g.XY15          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10016 GPC1.g.XY16          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10017 GPC1.g.XY17          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10020 GPC1.g.XY20          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10021 GPC1.g.XY21          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10022 GPC1.g.XY22          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10023 GPC1.g.XY23          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10024 GPC1.g.XY24          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10025 GPC1.g.XY25          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10026 GPC1.g.XY26          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10027 GPC1.g.XY27          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10030 GPC1.g.XY30          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10031 GPC1.g.XY31          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10032 GPC1.g.XY32          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10033 GPC1.g.XY33          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10034 GPC1.g.XY34          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10035 GPC1.g.XY35          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10036 GPC1.g.XY36          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10037 GPC1.g.XY37          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10040 GPC1.g.XY40          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10041 GPC1.g.XY41          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10042 GPC1.g.XY42          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10043 GPC1.g.XY43          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10044 GPC1.g.XY44          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10045 GPC1.g.XY45          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10046 GPC1.g.XY46          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10047 GPC1.g.XY47          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10050 GPC1.g.XY50          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10051 GPC1.g.XY51          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10052 GPC1.g.XY52          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10053 GPC1.g.XY53          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10054 GPC1.g.XY54          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10055 GPC1.g.XY55          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10056 GPC1.g.XY56          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10057 GPC1.g.XY57          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10060 GPC1.g.XY60          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10061 GPC1.g.XY61          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10062 GPC1.g.XY62          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10063 GPC1.g.XY63          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10064 GPC1.g.XY64          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10065 GPC1.g.XY65          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10066 GPC1.g.XY66          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10067 GPC1.g.XY67          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10071 GPC1.g.XY71          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10072 GPC1.g.XY72          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10073 GPC1.g.XY73          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10074 GPC1.g.XY74          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10075 GPC1.g.XY75          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10076 GPC1.g.XY76          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10101 GPC1.r.XY01          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10102 GPC1.r.XY02          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10103 GPC1.r.XY03          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10104 GPC1.r.XY04          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10105 GPC1.r.XY05          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10106 GPC1.r.XY06          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10110 GPC1.r.XY10          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10111 GPC1.r.XY11          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10112 GPC1.r.XY12          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10113 GPC1.r.XY13          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10114 GPC1.r.XY14          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10115 GPC1.r.XY15          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10116 GPC1.r.XY16          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10117 GPC1.r.XY17          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10120 GPC1.r.XY20          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10121 GPC1.r.XY21          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10122 GPC1.r.XY22          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10123 GPC1.r.XY23          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10124 GPC1.r.XY24          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10125 GPC1.r.XY25          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10126 GPC1.r.XY26          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10127 GPC1.r.XY27          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10130 GPC1.r.XY30          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10131 GPC1.r.XY31          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10132 GPC1.r.XY32          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10133 GPC1.r.XY33          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10134 GPC1.r.XY34          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10135 GPC1.r.XY35          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10136 GPC1.r.XY36          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10137 GPC1.r.XY37          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10140 GPC1.r.XY40          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10141 GPC1.r.XY41          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10142 GPC1.r.XY42          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10143 GPC1.r.XY43          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10144 GPC1.r.XY44          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10145 GPC1.r.XY45          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10146 GPC1.r.XY46          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10147 GPC1.r.XY47          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10150 GPC1.r.XY50          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10151 GPC1.r.XY51          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10152 GPC1.r.XY52          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10153 GPC1.r.XY53          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10154 GPC1.r.XY54          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10155 GPC1.r.XY55          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10156 GPC1.r.XY56          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10157 GPC1.r.XY57          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10160 GPC1.r.XY60          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10161 GPC1.r.XY61          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10162 GPC1.r.XY62          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10163 GPC1.r.XY63          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10164 GPC1.r.XY64          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10165 GPC1.r.XY65          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10166 GPC1.r.XY66          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10167 GPC1.r.XY67          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10171 GPC1.r.XY71          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10172 GPC1.r.XY72          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10173 GPC1.r.XY73          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10174 GPC1.r.XY74          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10175 GPC1.r.XY75          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10176 GPC1.r.XY76          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10201 GPC1.i.XY01          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10202 GPC1.i.XY02          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10203 GPC1.i.XY03          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10204 GPC1.i.XY04          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10205 GPC1.i.XY05          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10206 GPC1.i.XY06          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10210 GPC1.i.XY10          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10211 GPC1.i.XY11          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10212 GPC1.i.XY12          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10213 GPC1.i.XY13          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10214 GPC1.i.XY14          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10215 GPC1.i.XY15          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10216 GPC1.i.XY16          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10217 GPC1.i.XY17          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10220 GPC1.i.XY20          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10221 GPC1.i.XY21          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10222 GPC1.i.XY22          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10223 GPC1.i.XY23          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10224 GPC1.i.XY24          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10225 GPC1.i.XY25          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10226 GPC1.i.XY26          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10227 GPC1.i.XY27          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10230 GPC1.i.XY30          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10231 GPC1.i.XY31          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10232 GPC1.i.XY32          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10233 GPC1.i.XY33          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10234 GPC1.i.XY34          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10235 GPC1.i.XY35          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10236 GPC1.i.XY36          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10237 GPC1.i.XY37          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10240 GPC1.i.XY40          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10241 GPC1.i.XY41          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10242 GPC1.i.XY42          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10243 GPC1.i.XY43          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10244 GPC1.i.XY44          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10245 GPC1.i.XY45          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10246 GPC1.i.XY46          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10247 GPC1.i.XY47          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10250 GPC1.i.XY50          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10251 GPC1.i.XY51          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10252 GPC1.i.XY52          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10253 GPC1.i.XY53          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10254 GPC1.i.XY54          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10255 GPC1.i.XY55          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10256 GPC1.i.XY56          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10257 GPC1.i.XY57          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10260 GPC1.i.XY60          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10261 GPC1.i.XY61          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10262 GPC1.i.XY62          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10263 GPC1.i.XY63          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10264 GPC1.i.XY64          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10265 GPC1.i.XY65          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10266 GPC1.i.XY66          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10267 GPC1.i.XY67          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10271 GPC1.i.XY71          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10272 GPC1.i.XY72          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10273 GPC1.i.XY73          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10274 GPC1.i.XY74          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10275 GPC1.i.XY75          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10276 GPC1.i.XY76          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10301 GPC1.z.XY01          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10302 GPC1.z.XY02          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10303 GPC1.z.XY03          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10304 GPC1.z.XY04          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10305 GPC1.z.XY05          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10306 GPC1.z.XY06          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10310 GPC1.z.XY10          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10311 GPC1.z.XY11          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10312 GPC1.z.XY12          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10313 GPC1.z.XY13          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10314 GPC1.z.XY14          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10315 GPC1.z.XY15          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10316 GPC1.z.XY16          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10317 GPC1.z.XY17          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10320 GPC1.z.XY20          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10321 GPC1.z.XY21          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10322 GPC1.z.XY22          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10323 GPC1.z.XY23          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10324 GPC1.z.XY24          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10325 GPC1.z.XY25          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10326 GPC1.z.XY26          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10327 GPC1.z.XY27          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10330 GPC1.z.XY30          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10331 GPC1.z.XY31          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10332 GPC1.z.XY32          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10333 GPC1.z.XY33          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10334 GPC1.z.XY34          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10335 GPC1.z.XY35          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10336 GPC1.z.XY36          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10337 GPC1.z.XY37          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10340 GPC1.z.XY40          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10341 GPC1.z.XY41          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10342 GPC1.z.XY42          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10343 GPC1.z.XY43          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10344 GPC1.z.XY44          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10345 GPC1.z.XY45          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10346 GPC1.z.XY46          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10347 GPC1.z.XY47          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10350 GPC1.z.XY50          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10351 GPC1.z.XY51          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10352 GPC1.z.XY52          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10353 GPC1.z.XY53          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10354 GPC1.z.XY54          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10355 GPC1.z.XY55          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10356 GPC1.z.XY56          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10357 GPC1.z.XY57          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10360 GPC1.z.XY60          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10361 GPC1.z.XY61          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10362 GPC1.z.XY62          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10363 GPC1.z.XY63          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10364 GPC1.z.XY64          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10365 GPC1.z.XY65          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10366 GPC1.z.XY66          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10367 GPC1.z.XY67          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10371 GPC1.z.XY71          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10372 GPC1.z.XY72          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10373 GPC1.z.XY73          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10374 GPC1.z.XY74          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10375 GPC1.z.XY75          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10376 GPC1.z.XY76          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10401 GPC1.y.XY01          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10402 GPC1.y.XY02          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10403 GPC1.y.XY03          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10404 GPC1.y.XY04          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10405 GPC1.y.XY05          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10406 GPC1.y.XY06          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10410 GPC1.y.XY10          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10411 GPC1.y.XY11          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10412 GPC1.y.XY12          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10413 GPC1.y.XY13          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10414 GPC1.y.XY14          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10415 GPC1.y.XY15          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10416 GPC1.y.XY16          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10417 GPC1.y.XY17          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10420 GPC1.y.XY20          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10421 GPC1.y.XY21          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10422 GPC1.y.XY22          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10423 GPC1.y.XY23          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10424 GPC1.y.XY24          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10425 GPC1.y.XY25          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10426 GPC1.y.XY26          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10427 GPC1.y.XY27          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10430 GPC1.y.XY30          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10431 GPC1.y.XY31          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10432 GPC1.y.XY32          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10433 GPC1.y.XY33          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10434 GPC1.y.XY34          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10435 GPC1.y.XY35          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10436 GPC1.y.XY36          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10437 GPC1.y.XY37          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10440 GPC1.y.XY40          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10441 GPC1.y.XY41          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10442 GPC1.y.XY42          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10443 GPC1.y.XY43          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10444 GPC1.y.XY44          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10445 GPC1.y.XY45          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10446 GPC1.y.XY46          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10447 GPC1.y.XY47          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10450 GPC1.y.XY50          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10451 GPC1.y.XY51          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10452 GPC1.y.XY52          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10453 GPC1.y.XY53          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10454 GPC1.y.XY54          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10455 GPC1.y.XY55          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10456 GPC1.y.XY56          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10457 GPC1.y.XY57          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10460 GPC1.y.XY60          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10461 GPC1.y.XY61          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10462 GPC1.y.XY62          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10463 GPC1.y.XY63          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10464 GPC1.y.XY64          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10465 GPC1.y.XY65          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10466 GPC1.y.XY66          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10467 GPC1.y.XY67          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10471 GPC1.y.XY71          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10472 GPC1.y.XY72          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10473 GPC1.y.XY73          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10474 GPC1.y.XY74          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10475 GPC1.y.XY75          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10476 GPC1.y.XY76          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  11000 GPC1.g.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  11100 GPC1.r.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  11200 GPC1.i.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  11300 GPC1.z.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  11400 GPC1.y.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  160   MOSAIC2.B.00         dep  25.107  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  161   MOSAIC2.B.01         dep  25.120  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  162   MOSAIC2.B.02         dep  25.115  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  163   MOSAIC2.B.03         dep  25.111  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  164   MOSAIC2.B.04         dep  25.111  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  165   MOSAIC2.B.05         dep  25.101  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  166   MOSAIC2.B.06         dep  25.106  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  167   MOSAIC2.B.07         dep  25.104  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  260   MOSAIC2.V.00         dep  25.448  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  261   MOSAIC2.V.01         dep  25.472  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  262   MOSAIC2.V.02         dep  25.472  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  263   MOSAIC2.V.03         dep  25.476  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  264   MOSAIC2.V.04         dep  25.475  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  265   MOSAIC2.V.05         dep  25.471  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  266   MOSAIC2.V.06         dep  25.472  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  267   MOSAIC2.V.07         dep  25.475  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  360   MOSAIC2.VR.00        dep  25.636  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  361   MOSAIC2.VR.01        dep  25.633  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  362   MOSAIC2.VR.02        dep  25.648  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  363   MOSAIC2.VR.03        dep  25.632  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  364   MOSAIC2.VR.04        dep  25.628  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  365   MOSAIC2.VR.05        dep  25.616  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  366   MOSAIC2.VR.06        dep  25.629  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  367   MOSAIC2.VR.07        dep  25.624  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  460   MOSAIC2.R.00         dep  25.636  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  461   MOSAIC2.R.01         dep  25.633  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  462   MOSAIC2.R.02         dep  25.648  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  463   MOSAIC2.R.03         dep  25.632  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  464   MOSAIC2.R.04         dep  25.628  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  465   MOSAIC2.R.05         dep  25.616  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  466   MOSAIC2.R.06         dep  25.629  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  467   MOSAIC2.R.07         dep  25.624  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  560   MOSAIC2.I.00         dep  24.911  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  561   MOSAIC2.I.01         dep  24.882  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  562   MOSAIC2.I.02         dep  24.924  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  563   MOSAIC2.I.03         dep  24.906  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  564   MOSAIC2.I.04         dep  24.906  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  565   MOSAIC2.I.05         dep  24.877  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  566   MOSAIC2.I.06         dep  24.887  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
+  567   MOSAIC2.I.07         dep  24.912  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000
Index: branches/meh_branches/ppstack_test/ippconfig/dvo.photcodes.pre20120329
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/dvo.photcodes.pre20120329	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippconfig/dvo.photcodes.pre20120329	(revision 34041)
@@ -0,0 +1,931 @@
+
+# this file contains the list of valid photometry codes.  there should
+# be one code for each combination of CCD, filter, and telescope (and
+# possibly additional ones if filter transmission reduces with time).
+# The code on each line is a unique number, while the name is a
+# representative name.  The type defines how the photometry is
+# treated.  There can only be one primary photcode.  There should only
+# be a few secondary photcodes: these are the calibrated values for
+# stars.  The dependent photcodes are those which are equivalent to a
+# primary or secondary photcode, and are equated after photometric
+# solutions.  Reference photcodes are for anything without a dynamic
+# solution: the reference values are provided externally.
+
+# NOTE: the photcodes defined below supplement CFHT Elixir values.
+# Do not use this photcode file with old CFHT DVO databases.
+
+# camera ranges used in this file:
+# megacam:  u: 100-139, g: 200-239, r: 300-339, i: 400-439, z: 500-539
+# cfh12k:   B: 140-152, V: 240-252, R: 340-352, I: 440-452, Z: 540-552, NB: 600-693
+# mosaic2:  B: 160-167, V: 260-267, VR: 360-367, R: 460-467, I: 560-567
+# PS1 ISP:  g: 3200,      r: 3300,      i: 3400,      z: 3500,      y: 3600
+# PS1 TC3:  g: 3280-3296, r: 3380-3396, i: 3480-3496, z: 3580-3596, y: 3680-3696, 
+# PS1 GPC1: g: 3201-3264, r: 3301-3364, i: 3401-3464, z: 3501-3564, y: 3601-3664
+
+# external references: 1000 - 2999
+
+#                                                                                       astrometry  photometry     astr mask      phot mask
+# code name		    type  zero  airmass offset  c1    c2  slope  <color> eq     sys  scale  sys  scale     poor   bad     poor   bad 
+  1     g                    sec   0.000  0.000 0.000    1     3  0.0000     0  1051   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  2     r                    sec   0.000  0.000 0.000    2     3  0.0000     0  1052   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  3     i                    sec   0.000  0.000 0.000    2     3  0.0000     0  1053   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4     z                    sec   0.000  0.000 0.000    3     4  0.0000     0  1054   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  5     y                    sec   0.000  0.000 0.000    4     4  0.0000     0  1054   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  1010  U_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1011  B_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1012  V_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1013  R_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1014  I_L92                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  1020  U_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1021  B_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1022  V_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1023  R_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1024  I_STET               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  1050  u_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1051  g_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1052  r_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1053  i_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1054  z_SDSS               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  1055  U_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1056  G_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1057  R_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1058  I_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1059  Z_SDSS               dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+# the 30 different SDSS photcodes for the SDSSmosaic camera... 6 columns of CCDs (camcols) x 5 filters.
+# Added by Sebastian Jester jester@mpia.de
+# These likely need work!
+  1060  SDSS.r.11            dep   0.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1061  SDSS.r.12            dep   0.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1062  SDSS.r.13            dep   0.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1063  SDSS.r.14            dep   0.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1064  SDSS.r.15            dep   0.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1065  SDSS.r.16            dep   0.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1066  SDSS.i.21            dep   0.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1067  SDSS.i.22            dep   0.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1068  SDSS.i.23            dep   0.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1069  SDSS.i.24            dep   0.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1070  SDSS.i.25            dep   0.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1071  SDSS.i.26            dep   0.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1072  SDSS.u.31            dep   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1073  SDSS.u.32            dep   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1074  SDSS.u.33            dep   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1075  SDSS.u.34            dep   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1076  SDSS.u.35            dep   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1077  SDSS.u.36            dep   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1078  SDSS.z.41            dep   0.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1079  SDSS.z.42            dep   0.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1080  SDSS.z.43            dep   0.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1081  SDSS.z.44            dep   0.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1082  SDSS.z.45            dep   0.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1083  SDSS.z.46            dep   0.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1084  SDSS.g.51            dep   0.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1085  SDSS.g.52            dep   0.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1086  SDSS.g.53            dep   0.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1087  SDSS.g.54            dep   0.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1088  SDSS.g.55            dep   0.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1089  SDSS.g.56            dep   0.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  1100  GSC                  ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  1000  USNO_BLUE            ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1001  USNO_RED             ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1002  USNO_J               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1003  USNO_F               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1004  USNO_N               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  1110  USNO.098.RED         dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1111  USNO.098-0.RED70     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1112  USNO.098-0.RG630     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1113  USNO.103AD.MULTI     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1114  USNO.103AD.YEL3      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1115  USNO.103AD.YEL8      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1116  USNO.103AE.#12       dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1117  USNO.103AE.AMB2      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1118  USNO.103AE.AMB3      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1119  USNO.103AE.AMB4      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1120  USNO.103AE.AMB5      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1121  USNO.103AE.AMB6      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1122  USNO.103AE.AMB7      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1123  USNO.103AE.AMB8      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1124  USNO.103AE.NONE      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1125  USNO.103AE.RED66     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1126  USNO.103AE.RED67     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1127  USNO.103AE.RED68     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1128  USNO.103AE.RED69     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1129  USNO.103AE.RED70     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1130  USNO.103AE.RED71     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1131  USNO.103AE.RED73     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1132  USNO.103AE.RG2444    dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1133  USNO.103AE.RP2444    dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1134  USNO.103AO.NONE      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1135  USNO.IIIAF.OG590     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1136  USNO.IIIAF.RG600     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1137  USNO.IIIAF.RG610     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1138  USNO.IIIAF.RG630     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1139  USNO.IIIAJ.GG358     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1140  USNO.IIIAJ.GG385     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1141  USNO.IIIAJ.GG395     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1142  USNO.IVN.RG715       dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1143  USNO.IVN.RG9         dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1144  USNO.IVN.WR88A       dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  1150  SCOS.103a.E          dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1151  SCOS.4414.OG590      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1152  SCOS.4415.OG590      dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1153  SCOS.IIIaF.OG590     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1154  SCOS.IIIaF.RG610     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1155  SCOS.IIIaF.RG630     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1156  SCOS.IIIaJ.GG385     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1157  SCOS.IIIaJ.GG395     dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1158  SCOS.IVN.RG715       dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  1159  SCOS.IVN.RG9         dep  20.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  2020  TYCHO_B              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  2021  TYCHO_V              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  2011  2MASS_J              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.080 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  2012  2MASS_H              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.080 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  2013  2MASS_K              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.080 0.000 2.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  2014  WISE_W1              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2015  WISE_W2              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2016  WISE_W3              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2017  WISE_W4              ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+# these were used for the synthetic photometry catalog based on 2mass
+  3001  SYNTH.g              ref   0.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  3002  SYNTH.r              ref   0.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  3003  SYNTH.i              ref   0.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  3004  SYNTH.z              ref   0.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  3005  SYNTH.y              ref   0.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+### megacam photcodes:
+  100   MEGACAM.u.00         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  101   MEGACAM.u.01         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  102   MEGACAM.u.02         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  103   MEGACAM.u.03         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  104   MEGACAM.u.04         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  105   MEGACAM.u.05         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  106   MEGACAM.u.06         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  107   MEGACAM.u.07         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  108   MEGACAM.u.08         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  109   MEGACAM.u.09         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  110   MEGACAM.u.10         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  111   MEGACAM.u.11         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  112   MEGACAM.u.12         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  113   MEGACAM.u.13         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  114   MEGACAM.u.14         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  115   MEGACAM.u.15         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  116   MEGACAM.u.16         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  117   MEGACAM.u.17         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  118   MEGACAM.u.18         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  119   MEGACAM.u.19         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  120   MEGACAM.u.20         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  121   MEGACAM.u.21         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  122   MEGACAM.u.22         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  123   MEGACAM.u.23         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  124   MEGACAM.u.24         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  125   MEGACAM.u.25         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  126   MEGACAM.u.26         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  127   MEGACAM.u.27         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  128   MEGACAM.u.28         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  129   MEGACAM.u.29         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  130   MEGACAM.u.30         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  131   MEGACAM.u.31         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  132   MEGACAM.u.32         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  133   MEGACAM.u.33         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  134   MEGACAM.u.34         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  135   MEGACAM.u.35         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  136   MEGACAM.u.36         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  137   MEGACAM.u.37         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  138   MEGACAM.u.38         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  139   MEGACAM.u.39         dep  25.280 -0.350 0.000     -     - 0.0000     0     -   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  200   MEGACAM.g.00         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  201   MEGACAM.g.01         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  202   MEGACAM.g.02         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  203   MEGACAM.g.03         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  204   MEGACAM.g.04         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  205   MEGACAM.g.05         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  206   MEGACAM.g.06         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  207   MEGACAM.g.07         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  208   MEGACAM.g.08         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  209   MEGACAM.g.09         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  210   MEGACAM.g.10         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  211   MEGACAM.g.11         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  212   MEGACAM.g.12         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  213   MEGACAM.g.13         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  214   MEGACAM.g.14         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  215   MEGACAM.g.15         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  216   MEGACAM.g.16         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  217   MEGACAM.g.17         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  218   MEGACAM.g.18         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  219   MEGACAM.g.19         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  220   MEGACAM.g.20         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  221   MEGACAM.g.21         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  222   MEGACAM.g.22         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  223   MEGACAM.g.23         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  224   MEGACAM.g.24         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  225   MEGACAM.g.25         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  226   MEGACAM.g.26         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  227   MEGACAM.g.27         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  228   MEGACAM.g.28         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  229   MEGACAM.g.29         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  230   MEGACAM.g.30         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  231   MEGACAM.g.31         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  232   MEGACAM.g.32         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  233   MEGACAM.g.33         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  234   MEGACAM.g.34         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  235   MEGACAM.g.35         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  236   MEGACAM.g.36         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  237   MEGACAM.g.37         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  238   MEGACAM.g.38         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  239   MEGACAM.g.39         dep  26.460 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  300   MEGACAM.r.00         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  301   MEGACAM.r.01         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  302   MEGACAM.r.02         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  303   MEGACAM.r.03         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  304   MEGACAM.r.04         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  305   MEGACAM.r.05         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  306   MEGACAM.r.06         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  307   MEGACAM.r.07         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  308   MEGACAM.r.08         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  309   MEGACAM.r.09         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  310   MEGACAM.r.10         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  311   MEGACAM.r.11         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  312   MEGACAM.r.12         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  313   MEGACAM.r.13         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  314   MEGACAM.r.14         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  315   MEGACAM.r.15         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  316   MEGACAM.r.16         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  317   MEGACAM.r.17         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  318   MEGACAM.r.18         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  319   MEGACAM.r.19         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  320   MEGACAM.r.20         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  321   MEGACAM.r.21         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  322   MEGACAM.r.22         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  323   MEGACAM.r.23         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  324   MEGACAM.r.24         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  325   MEGACAM.r.25         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  326   MEGACAM.r.26         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  327   MEGACAM.r.27         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  328   MEGACAM.r.28         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  329   MEGACAM.r.29         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  330   MEGACAM.r.30         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  331   MEGACAM.r.31         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  332   MEGACAM.r.32         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  333   MEGACAM.r.33         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  334   MEGACAM.r.34         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  335   MEGACAM.r.35         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  336   MEGACAM.r.36         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  337   MEGACAM.r.37         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  338   MEGACAM.r.38         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  339   MEGACAM.r.39         dep  25.978 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  400   MEGACAM.i.00         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  401   MEGACAM.i.01         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  402   MEGACAM.i.02         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  403   MEGACAM.i.03         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  404   MEGACAM.i.04         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  405   MEGACAM.i.05         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  406   MEGACAM.i.06         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  407   MEGACAM.i.07         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  408   MEGACAM.i.08         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  409   MEGACAM.i.09         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  410   MEGACAM.i.10         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  411   MEGACAM.i.11         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  412   MEGACAM.i.12         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  413   MEGACAM.i.13         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  414   MEGACAM.i.14         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  415   MEGACAM.i.15         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  416   MEGACAM.i.16         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  417   MEGACAM.i.17         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  418   MEGACAM.i.18         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  419   MEGACAM.i.19         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  420   MEGACAM.i.20         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  421   MEGACAM.i.21         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  422   MEGACAM.i.22         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  423   MEGACAM.i.23         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  424   MEGACAM.i.24         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  425   MEGACAM.i.25         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  426   MEGACAM.i.26         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  427   MEGACAM.i.27         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  428   MEGACAM.i.28         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  429   MEGACAM.i.29         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  430   MEGACAM.i.30         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  431   MEGACAM.i.31         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  432   MEGACAM.i.32         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  433   MEGACAM.i.33         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  434   MEGACAM.i.34         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  435   MEGACAM.i.35         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  436   MEGACAM.i.36         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  437   MEGACAM.i.37         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  438   MEGACAM.i.38         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  439   MEGACAM.i.39         dep  25.744 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  500   MEGACAM.z.00         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  501   MEGACAM.z.01         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  502   MEGACAM.z.02         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  503   MEGACAM.z.03         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  504   MEGACAM.z.04         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  505   MEGACAM.z.05         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  506   MEGACAM.z.06         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  507   MEGACAM.z.07         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  508   MEGACAM.z.08         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  509   MEGACAM.z.09         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  510   MEGACAM.z.10         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  511   MEGACAM.z.11         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  512   MEGACAM.z.12         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  513   MEGACAM.z.13         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  514   MEGACAM.z.14         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  515   MEGACAM.z.15         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  516   MEGACAM.z.16         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  517   MEGACAM.z.17         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  518   MEGACAM.z.18         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  519   MEGACAM.z.19         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  520   MEGACAM.z.20         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  521   MEGACAM.z.21         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  522   MEGACAM.z.22         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  523   MEGACAM.z.23         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  524   MEGACAM.z.24         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  525   MEGACAM.z.25         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  526   MEGACAM.z.26         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  527   MEGACAM.z.27         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  528   MEGACAM.z.28         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  529   MEGACAM.z.29         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  530   MEGACAM.z.30         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  531   MEGACAM.z.31         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  532   MEGACAM.z.32         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  533   MEGACAM.z.33         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  534   MEGACAM.z.34         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  535   MEGACAM.z.35         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  536   MEGACAM.z.36         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  537   MEGACAM.z.37         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  538   MEGACAM.z.38         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  539   MEGACAM.z.39         dep  24.800 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+### cfh12k photcodes
+  140   CFH12K.B.00          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  141   CFH12K.B.01          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  142   CFH12K.B.02          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  143   CFH12K.B.03          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  144   CFH12K.B.04          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  145   CFH12K.B.05          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  146   CFH12K.B.06          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  147   CFH12K.B.07          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  148   CFH12K.B.08          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  149   CFH12K.B.09          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  150   CFH12K.B.10          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  151   CFH12K.B.11          dep  26.000 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  240   CFH12K.V.00          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  241   CFH12K.V.01          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  242   CFH12K.V.02          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  243   CFH12K.V.03          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  244   CFH12K.V.04          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  245   CFH12K.V.05          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  246   CFH12K.V.06          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  247   CFH12K.V.07          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  248   CFH12K.V.08          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  249   CFH12K.V.09          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  250   CFH12K.V.10          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  251   CFH12K.V.11          dep  26.150 -0.120 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  340   CFH12K.R.00          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  341   CFH12K.R.01          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  342   CFH12K.R.02          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  343   CFH12K.R.03          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  344   CFH12K.R.04          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  345   CFH12K.R.05          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  346   CFH12K.R.06          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  347   CFH12K.R.07          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  348   CFH12K.R.08          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  349   CFH12K.R.09          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  350   CFH12K.R.10          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  351   CFH12K.R.11          dep  26.190 -0.090 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  440   CFH12K.I.00          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  441   CFH12K.I.01          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  442   CFH12K.I.02          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  443   CFH12K.I.03          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  444   CFH12K.I.04          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  445   CFH12K.I.05          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  446   CFH12K.I.06          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  447   CFH12K.I.07          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  448   CFH12K.I.08          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  449   CFH12K.I.09          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  450   CFH12K.I.10          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  451   CFH12K.I.11          dep  26.135 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  540   CFH12K.Z.00          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  541   CFH12K.Z.01          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  542   CFH12K.Z.02          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  543   CFH12K.Z.03          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  544   CFH12K.Z.04          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  545   CFH12K.Z.05          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  546   CFH12K.Z.06          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  547   CFH12K.Z.07          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  548   CFH12K.Z.08          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  549   CFH12K.Z.09          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  550   CFH12K.Z.10          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  551   CFH12K.Z.11          dep  25.830 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  600   CFH12K.Ha.00         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  601   CFH12K.Ha.01         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  602   CFH12K.Ha.02         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  603   CFH12K.Ha.03         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  604   CFH12K.Ha.04         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  605   CFH12K.Ha.05         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  606   CFH12K.Ha.06         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  607   CFH12K.Ha.07         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  608   CFH12K.Ha.08         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  609   CFH12K.Ha.09         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  610   CFH12K.Ha.10         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  611   CFH12K.Ha.11         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  612   CFH12K.HaOff.00      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  613   CFH12K.HaOff.01      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  614   CFH12K.HaOff.02      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  615   CFH12K.HaOff.03      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  616   CFH12K.HaOff.04      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  617   CFH12K.HaOff.05      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  618   CFH12K.HaOff.06      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  619   CFH12K.HaOff.07      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  620   CFH12K.HaOff.08      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  621   CFH12K.HaOff.09      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  622   CFH12K.HaOff.10      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  623   CFH12K.HaOff.11      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  624   CFH12K.CN.00         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  625   CFH12K.CN.01         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  626   CFH12K.CN.02         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  627   CFH12K.CN.03         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  628   CFH12K.CN.04         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  629   CFH12K.CN.05         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  630   CFH12K.CN.06         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  631   CFH12K.CN.07         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  632   CFH12K.CN.08         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  633   CFH12K.CN.09         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  634   CFH12K.CN.10         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  635   CFH12K.CN.11         dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  636   CFH12K.TiO.00        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  637   CFH12K.TiO.01        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  638   CFH12K.TiO.02        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  639   CFH12K.TiO.03        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  640   CFH12K.TiO.04        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  641   CFH12K.TiO.05        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  642   CFH12K.TiO.06        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  643   CFH12K.TiO.07        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  644   CFH12K.TiO.08        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  645   CFH12K.TiO.09        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  646   CFH12K.TiO.10        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  647   CFH12K.TiO.11        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  648   CFH12K.NB920.00      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  649   CFH12K.NB920.01      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  650   CFH12K.NB920.02      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  651   CFH12K.NB920.03      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  652   CFH12K.NB920.04      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  653   CFH12K.NB920.05      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  654   CFH12K.NB920.06      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  655   CFH12K.NB920.07      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  678   CFH12K.NB920.08      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  679   CFH12K.NB920.09      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  680   CFH12K.NB920.10      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  681   CFH12K.NB920.11      dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  682   CFH12K.B2F.00        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  683   CFH12K.B2F.01        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  684   CFH12K.B2F.02        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  685   CFH12K.B2F.03        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  686   CFH12K.B2F.04        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  687   CFH12K.B2F.05        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  688   CFH12K.B2F.06        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  689   CFH12K.B2F.07        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  690   CFH12K.B2F.08        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  691   CFH12K.B2F.09        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  692   CFH12K.B2F.10        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  693   CFH12K.B2F.11        dep  25.000  0.040 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  3200  ISP-Apogee-01.g      dep  19.250  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  3300  ISP-Apogee-01.r      dep  19.150  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  3400  ISP-Apogee-01.i      dep  18.500  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  3500  ISP-Apogee-01.z      dep  17.250  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  3600  ISP-Apogee-01.y      dep  14.150  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  # VYSOS photcodes -- add as needed
+  5002  VYSOS5.r             dep  17.200  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  5022  VYSOS20.r            dep  21.400  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  5023  VYSOS20.i            dep  20.500  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+  4100  SIMTEST.g.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4200  SIMTEST.r.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4300  SIMTEST.i.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4400  SIMTEST.z.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4500  SIMTEST.y.Chip       dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+ 14100  SIMTEST.g.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+ 14200  SIMTEST.r.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+ 14300  SIMTEST.i.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+ 14400  SIMTEST.z.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+ 14500  SIMTEST.y.SkyChip    dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+
+  4101  SIMMOSAIC.g.00       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4102  SIMMOSAIC.g.01       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4103  SIMMOSAIC.g.02       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4104  SIMMOSAIC.g.03       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4201  SIMMOSAIC.r.00       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4202  SIMMOSAIC.r.01       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4203  SIMMOSAIC.r.02       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4204  SIMMOSAIC.r.03       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4301  SIMMOSAIC.i.00       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4302  SIMMOSAIC.i.01       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4303  SIMMOSAIC.i.02       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4304  SIMMOSAIC.i.03       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4401  SIMMOSAIC.z.00       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4402  SIMMOSAIC.z.01       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4403  SIMMOSAIC.z.02       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4404  SIMMOSAIC.z.03       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4501  SIMMOSAIC.y.00       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4502  SIMMOSAIC.y.01       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4503  SIMMOSAIC.y.02       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4504  SIMMOSAIC.y.03       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+# 2007.10.02 : predicted g zero-points from 2006 NSF proposal was 24.90
+# 2010.05.14 : nominal zero point as measured by Eddie Schlafly (http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/GPC_Zero_Points_July09)
+# 2010.05.14 : airmass slope from Megacam (not measured)
+  10001 GPC1.g.XY01          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10002 GPC1.g.XY02          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10003 GPC1.g.XY03          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10004 GPC1.g.XY04          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10005 GPC1.g.XY05          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10006 GPC1.g.XY06          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10010 GPC1.g.XY10          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10011 GPC1.g.XY11          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10012 GPC1.g.XY12          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10013 GPC1.g.XY13          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10014 GPC1.g.XY14          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10015 GPC1.g.XY15          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10016 GPC1.g.XY16          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10017 GPC1.g.XY17          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10020 GPC1.g.XY20          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10021 GPC1.g.XY21          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10022 GPC1.g.XY22          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10023 GPC1.g.XY23          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10024 GPC1.g.XY24          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10025 GPC1.g.XY25          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10026 GPC1.g.XY26          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10027 GPC1.g.XY27          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10030 GPC1.g.XY30          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10031 GPC1.g.XY31          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10032 GPC1.g.XY32          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10033 GPC1.g.XY33          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10034 GPC1.g.XY34          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10035 GPC1.g.XY35          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10036 GPC1.g.XY36          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10037 GPC1.g.XY37          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10040 GPC1.g.XY40          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10041 GPC1.g.XY41          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10042 GPC1.g.XY42          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10043 GPC1.g.XY43          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10044 GPC1.g.XY44          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10045 GPC1.g.XY45          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10046 GPC1.g.XY46          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10047 GPC1.g.XY47          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10050 GPC1.g.XY50          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10051 GPC1.g.XY51          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10052 GPC1.g.XY52          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10053 GPC1.g.XY53          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10054 GPC1.g.XY54          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10055 GPC1.g.XY55          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10056 GPC1.g.XY56          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10057 GPC1.g.XY57          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10060 GPC1.g.XY60          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10061 GPC1.g.XY61          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10062 GPC1.g.XY62          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10063 GPC1.g.XY63          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10064 GPC1.g.XY64          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10065 GPC1.g.XY65          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10066 GPC1.g.XY66          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10067 GPC1.g.XY67          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10071 GPC1.g.XY71          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10072 GPC1.g.XY72          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10073 GPC1.g.XY73          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10074 GPC1.g.XY74          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10075 GPC1.g.XY75          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10076 GPC1.g.XY76          dep  24.580 -0.150 0.000     -     - 0.0000     0     1   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+
+# 2007.10.02 : predicted r zero-points from 2006 NSF proposal was 25.10
+# 2010.05.14 : nominal zero point as measured by Eddie Schlafly (http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/GPC_Zero_Points_July09)
+# 2010.05.14 : airmass slope from Megacam (not measured)
+  10101 GPC1.r.XY01          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10102 GPC1.r.XY02          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10103 GPC1.r.XY03          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10104 GPC1.r.XY04          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10105 GPC1.r.XY05          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10106 GPC1.r.XY06          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10110 GPC1.r.XY10          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10111 GPC1.r.XY11          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10112 GPC1.r.XY12          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10113 GPC1.r.XY13          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10114 GPC1.r.XY14          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10115 GPC1.r.XY15          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10116 GPC1.r.XY16          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10117 GPC1.r.XY17          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10120 GPC1.r.XY20          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10121 GPC1.r.XY21          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10122 GPC1.r.XY22          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10123 GPC1.r.XY23          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10124 GPC1.r.XY24          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10125 GPC1.r.XY25          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10126 GPC1.r.XY26          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10127 GPC1.r.XY27          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10130 GPC1.r.XY30          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10131 GPC1.r.XY31          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10132 GPC1.r.XY32          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10133 GPC1.r.XY33          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10134 GPC1.r.XY34          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10135 GPC1.r.XY35          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10136 GPC1.r.XY36          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10137 GPC1.r.XY37          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10140 GPC1.r.XY40          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10141 GPC1.r.XY41          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10142 GPC1.r.XY42          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10143 GPC1.r.XY43          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10144 GPC1.r.XY44          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10145 GPC1.r.XY45          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10146 GPC1.r.XY46          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10147 GPC1.r.XY47          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10150 GPC1.r.XY50          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10151 GPC1.r.XY51          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10152 GPC1.r.XY52          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10153 GPC1.r.XY53          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10154 GPC1.r.XY54          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10155 GPC1.r.XY55          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10156 GPC1.r.XY56          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10157 GPC1.r.XY57          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10160 GPC1.r.XY60          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10161 GPC1.r.XY61          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10162 GPC1.r.XY62          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10163 GPC1.r.XY63          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10164 GPC1.r.XY64          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10165 GPC1.r.XY65          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10166 GPC1.r.XY66          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10167 GPC1.r.XY67          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10171 GPC1.r.XY71          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10172 GPC1.r.XY72          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10173 GPC1.r.XY73          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10174 GPC1.r.XY74          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10175 GPC1.r.XY75          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10176 GPC1.r.XY76          dep  24.800 -0.100 0.000     -     - 0.0000     0     2   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+
+# 2007.10.02 : predicted i zero-points from 2006 NSF proposal was 25.00
+# 2010.05.14 : nominal zero point as measured by Eddie Schlafly (http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/GPC_Zero_Points_July09)
+# 2010.05.14 : airmass slope from Megacam (not measured)
+  10201 GPC1.i.XY01          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10202 GPC1.i.XY02          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10203 GPC1.i.XY03          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10204 GPC1.i.XY04          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10205 GPC1.i.XY05          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10206 GPC1.i.XY06          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10210 GPC1.i.XY10          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10211 GPC1.i.XY11          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10212 GPC1.i.XY12          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10213 GPC1.i.XY13          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10214 GPC1.i.XY14          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10215 GPC1.i.XY15          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10216 GPC1.i.XY16          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10217 GPC1.i.XY17          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10220 GPC1.i.XY20          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10221 GPC1.i.XY21          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10222 GPC1.i.XY22          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10223 GPC1.i.XY23          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10224 GPC1.i.XY24          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10225 GPC1.i.XY25          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10226 GPC1.i.XY26          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10227 GPC1.i.XY27          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10230 GPC1.i.XY30          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10231 GPC1.i.XY31          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10232 GPC1.i.XY32          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10233 GPC1.i.XY33          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10234 GPC1.i.XY34          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10235 GPC1.i.XY35          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10236 GPC1.i.XY36          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10237 GPC1.i.XY37          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10240 GPC1.i.XY40          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10241 GPC1.i.XY41          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10242 GPC1.i.XY42          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10243 GPC1.i.XY43          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10244 GPC1.i.XY44          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10245 GPC1.i.XY45          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10246 GPC1.i.XY46          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10247 GPC1.i.XY47          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10250 GPC1.i.XY50          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10251 GPC1.i.XY51          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10252 GPC1.i.XY52          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10253 GPC1.i.XY53          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10254 GPC1.i.XY54          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10255 GPC1.i.XY55          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10256 GPC1.i.XY56          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10257 GPC1.i.XY57          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10260 GPC1.i.XY60          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10261 GPC1.i.XY61          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10262 GPC1.i.XY62          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10263 GPC1.i.XY63          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10264 GPC1.i.XY64          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10265 GPC1.i.XY65          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10266 GPC1.i.XY66          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10267 GPC1.i.XY67          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10271 GPC1.i.XY71          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10272 GPC1.i.XY72          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10273 GPC1.i.XY73          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10274 GPC1.i.XY74          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10275 GPC1.i.XY75          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10276 GPC1.i.XY76          dep  24.740 -0.040 0.000     -     - 0.0000     0     3   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+
+# 2007.10.02 : predicted z zero-points from 2006 NSF proposal was 24.60
+# 2010.05.14 : nominal zero point as measured by Eddie Schlafly (http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/GPC_Zero_Points_July09)
+# 2010.05.14 : airmass slope from Megacam (not measured)
+  10301 GPC1.z.XY01          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10302 GPC1.z.XY02          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10303 GPC1.z.XY03          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10304 GPC1.z.XY04          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10305 GPC1.z.XY05          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10306 GPC1.z.XY06          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10310 GPC1.z.XY10          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10311 GPC1.z.XY11          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10312 GPC1.z.XY12          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10313 GPC1.z.XY13          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10314 GPC1.z.XY14          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10315 GPC1.z.XY15          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10316 GPC1.z.XY16          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10317 GPC1.z.XY17          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10320 GPC1.z.XY20          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10321 GPC1.z.XY21          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10322 GPC1.z.XY22          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10323 GPC1.z.XY23          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10324 GPC1.z.XY24          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10325 GPC1.z.XY25          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10326 GPC1.z.XY26          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10327 GPC1.z.XY27          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10330 GPC1.z.XY30          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10331 GPC1.z.XY31          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10332 GPC1.z.XY32          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10333 GPC1.z.XY33          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10334 GPC1.z.XY34          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10335 GPC1.z.XY35          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10336 GPC1.z.XY36          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10337 GPC1.z.XY37          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10340 GPC1.z.XY40          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10341 GPC1.z.XY41          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10342 GPC1.z.XY42          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10343 GPC1.z.XY43          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10344 GPC1.z.XY44          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10345 GPC1.z.XY45          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10346 GPC1.z.XY46          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10347 GPC1.z.XY47          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10350 GPC1.z.XY50          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10351 GPC1.z.XY51          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10352 GPC1.z.XY52          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10353 GPC1.z.XY53          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10354 GPC1.z.XY54          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10355 GPC1.z.XY55          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10356 GPC1.z.XY56          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10357 GPC1.z.XY57          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10360 GPC1.z.XY60          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10361 GPC1.z.XY61          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10362 GPC1.z.XY62          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10363 GPC1.z.XY63          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10364 GPC1.z.XY64          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10365 GPC1.z.XY65          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10366 GPC1.z.XY66          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10367 GPC1.z.XY67          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10371 GPC1.z.XY71          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10372 GPC1.z.XY72          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10373 GPC1.z.XY73          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10374 GPC1.z.XY74          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10375 GPC1.z.XY75          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10376 GPC1.z.XY76          dep  24.260 -0.030 0.000     -     - 0.0000     0     4   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+
+# 2007.10.02 : predicted y zero-points from 2006 NSF proposal was 23.00
+# 2007.10.02 : measured y zero-points for the y2 filter was 22.20
+# 2010.05.14 : nominal zero point as measured by Eddie Schlafly (http://svn.pan-starrs.ifa.hawaii.edu/trac/ipp/wiki/GPC_Zero_Points_July09)
+# 2010.05.14 : airmass slope from Megacam (not measured)
+  10401 GPC1.y.XY01          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10402 GPC1.y.XY02          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10403 GPC1.y.XY03          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10404 GPC1.y.XY04          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10405 GPC1.y.XY05          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10406 GPC1.y.XY06          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10410 GPC1.y.XY10          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10411 GPC1.y.XY11          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10412 GPC1.y.XY12          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10413 GPC1.y.XY13          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10414 GPC1.y.XY14          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10415 GPC1.y.XY15          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10416 GPC1.y.XY16          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10417 GPC1.y.XY17          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10420 GPC1.y.XY20          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10421 GPC1.y.XY21          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10422 GPC1.y.XY22          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10423 GPC1.y.XY23          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10424 GPC1.y.XY24          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10425 GPC1.y.XY25          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10426 GPC1.y.XY26          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10427 GPC1.y.XY27          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10430 GPC1.y.XY30          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10431 GPC1.y.XY31          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10432 GPC1.y.XY32          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10433 GPC1.y.XY33          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10434 GPC1.y.XY34          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10435 GPC1.y.XY35          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10436 GPC1.y.XY36          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10437 GPC1.y.XY37          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10440 GPC1.y.XY40          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10441 GPC1.y.XY41          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10442 GPC1.y.XY42          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10443 GPC1.y.XY43          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10444 GPC1.y.XY44          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10445 GPC1.y.XY45          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10446 GPC1.y.XY46          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10447 GPC1.y.XY47          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10450 GPC1.y.XY50          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10451 GPC1.y.XY51          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10452 GPC1.y.XY52          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10453 GPC1.y.XY53          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10454 GPC1.y.XY54          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10455 GPC1.y.XY55          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10456 GPC1.y.XY56          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10457 GPC1.y.XY57          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10460 GPC1.y.XY60          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10461 GPC1.y.XY61          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10462 GPC1.y.XY62          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10463 GPC1.y.XY63          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10464 GPC1.y.XY64          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10465 GPC1.y.XY65          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10466 GPC1.y.XY66          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10467 GPC1.y.XY67          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10471 GPC1.y.XY71          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10472 GPC1.y.XY72          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10473 GPC1.y.XY73          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10474 GPC1.y.XY74          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10475 GPC1.y.XY75          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+  10476 GPC1.y.XY76          dep  23.410 -0.030 0.000     -     - 0.0000     0     5   0.020 0.000 0.000  1.000   0x0000 0x0000  0x0000 0x0000	
+
+  11000 GPC1.g.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  11100 GPC1.r.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  11200 GPC1.i.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  11300 GPC1.z.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  11400 GPC1.y.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+# mosaic2 photcodes
+
+  160  MOSAIC2.B.00          dep  25.107  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  161  MOSAIC2.B.01          dep  25.120  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  162  MOSAIC2.B.02          dep  25.115  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  163  MOSAIC2.B.03          dep  25.111  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  164  MOSAIC2.B.04          dep  25.111  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  165  MOSAIC2.B.05          dep  25.101  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  166  MOSAIC2.B.06          dep  25.106  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  167  MOSAIC2.B.07          dep  25.104  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  260  MOSAIC2.V.00          dep  25.448  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  261  MOSAIC2.V.01          dep  25.472  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  262  MOSAIC2.V.02          dep  25.472  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  263  MOSAIC2.V.03          dep  25.476  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  264  MOSAIC2.V.04          dep  25.475  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  265  MOSAIC2.V.05          dep  25.471  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  266  MOSAIC2.V.06          dep  25.472  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  267  MOSAIC2.V.07          dep  25.475  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  360  MOSAIC2.VR.00         dep  25.636  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  361  MOSAIC2.VR.01         dep  25.633  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  362  MOSAIC2.VR.02         dep  25.648  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  363  MOSAIC2.VR.03         dep  25.632  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  364  MOSAIC2.VR.04         dep  25.628  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  365  MOSAIC2.VR.05         dep  25.616  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  366  MOSAIC2.VR.06         dep  25.629  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  367  MOSAIC2.VR.07         dep  25.624  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  460  MOSAIC2.R.00          dep  25.636  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  461  MOSAIC2.R.01          dep  25.633  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  462  MOSAIC2.R.02          dep  25.648  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  463  MOSAIC2.R.03          dep  25.632  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  464  MOSAIC2.R.04          dep  25.628  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  465  MOSAIC2.R.05          dep  25.616  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  466  MOSAIC2.R.06          dep  25.629  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  467  MOSAIC2.R.07          dep  25.624  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+
+  560  MOSAIC2.I.00          dep  24.911  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  561  MOSAIC2.I.01          dep  24.882  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  562  MOSAIC2.I.02          dep  24.924  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  563  MOSAIC2.I.03          dep  24.906  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  564  MOSAIC2.I.04          dep  24.906  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  565  MOSAIC2.I.05          dep  24.877  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  566  MOSAIC2.I.06          dep  24.887  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
+  567  MOSAIC2.I.07          dep  24.912  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 1.000  0.000   0x0000 0x3888  0x0000 0x0000	
Index: branches/meh_branches/ppstack_test/ippconfig/esowfi/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/esowfi/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/esowfi/camera.config	(revision 34041)
@@ -89,4 +89,5 @@
   CMF.XSRC   STR {CHIP.NAME}.xsrc # use .PSF and .EXT?
   CMF.XFIT   STR {CHIP.NAME}.xfit # use .PSF and .EXT?
+  CMF.XRAD   STR {CHIP.NAME}.xrad # use .PSF and .EXT?
   CMF.DETEFF STR {CHIP.NAME}.deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/gpc1-tdi/Makefile.am
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/gpc1-tdi/Makefile.am	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippconfig/gpc1-tdi/Makefile.am	(revision 34041)
@@ -0,0 +1,15 @@
+
+installdir = $(datadir)/ippconfig/gpc1-tdi
+
+install_files = \
+	camera.config \
+	format_tdi_20120416.config 
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: branches/meh_branches/ppstack_test/ippconfig/gpc1-tdi/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/gpc1-tdi/camera.config	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippconfig/gpc1-tdi/camera.config	(revision 34041)
@@ -0,0 +1,165 @@
+# Camera configuration file for GPC1: describes the camera
+
+# File formats that we know about
+FORMATS		METADATA
+	TDI_20120416	STR	gpc1-tdi/format_tdi_20120416.config
+END
+
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA	METADATA
+        XY01  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY02  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY03  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY04  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY05  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY06  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY10  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY11  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY12  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY13  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY14  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY15  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY16  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY17  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY20  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY21  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY22  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY23  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY24  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY25  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY26  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY27  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY30  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY31  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY32  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY33  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY34  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY35  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY36  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY37  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY40  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY41  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY42  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY43  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY44  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY45  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY46  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY47  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY50  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY51  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY52  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY53  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY54  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY55  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY56  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY57  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY60  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY61  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY62  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY63  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY64  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY65  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY66  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY67  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY71  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY72  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY73  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY74  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY75  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+        XY76  STR xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70
+END	   
+
+# internal to external filter names
+FILTER.ID       METADATA
+   g        STR   g.00000
+   r        STR   r.00000
+   i        STR   i.00000
+   z        MULTI
+   z        STR   z.00000
+   z        STR   ?.00000
+   y        STR   y.00000
+   w        STR   w.00000
+   # the following were needed for detrend.correct because input and output images seem to be inconsistent sometimes:
+   # g        STR   g
+   # r        STR   r
+   # i        STR   i
+   # z        STR   z
+   # y        STR   y
+   # w        STR   w
+   OPEN     STR   OPEN
+END
+
+# Table of strings to use for the class identifier (see ippdb) according to the file level.
+CLASSID         METADATA
+        FPA     STR     fpa
+        CHIP    STR     {CHIP.NAME}
+        CELL    STR     {CHIP.NAME}:{CELL.NAME}
+        fpa     STR     fpa
+        chip    STR     {CHIP.NAME}
+        cell    STR     {CHIP.NAME}:{CELL.NAME}
+END
+
+DVO.CAMERADIR	STR	gpc1		# Camera directory for DVO
+
+# Recipe options
+RECIPES		METADATA
+	PPIMAGE		STR	gpc1/ppImage.config
+	PPMERGE		STR	gpc1/ppMerge.config
+	PSASTRO		STR	gpc1/psastro.config
+	PSPHOT		STR	gpc1/psphot.config
+	PSWARP		STR	gpc1/pswarp.config
+        PSVIDEOPHOT     STR     gpc1/psvideophot.config
+	REJECTIONS      STR     gpc1/rejections.config       # rejection recipe
+	PPSTACK		STR	gpc1/ppStack.config
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES	STR	recipes/filerules-split.mdc
+
+EXTNAME.RULES METADATA
+  CMF.HEAD STR {CHIP.NAME}.hdr
+  CMF.DATA STR {CHIP.NAME}.psf # use .PSF and .EXT?
+  CMF.XSRC STR {CHIP.NAME}.xsrc # use .PSF and .EXT?
+  CMF.XRAD STR {CHIP.NAME}.xrad # use .PSF and .EXT?
+  CMF.XFIT STR {CHIP.NAME}.xfit # use .PSF and .EXT?
+  CMF.DETEFF STR {CHIP.NAME}.deteff
+
+  PSF.HEAD  STR	{CHIP.NAME}.hdr
+  PSF.TABLE STR {CHIP.NAME}.psf_model
+  PSF.RESID STR {CHIP.NAME}.psf_resid
+END
+
+BLANK.HEADERS	METADATA
+	FPA.TIME	STR	MJD-OBS
+	FPA.EXPOSURE	STR	EXPTIME
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.OBS		STR	EXPNUM
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}.{CHIP.NAME}	# Rule for generating photcode
+
+BURNTOOL.STATE.GOOD        S16  14  # Value for burntool_state with the most recent bt version.
+BURNTOOL.STATE.GOOD.UPDATE S16  13  # for upddate processing accept earlier version
+
+FOV_REF                     F32     20930   # Field of view of unvignetted region in FPA pixels.
+FOV_MAX			    F32	    22720
+#NPIX_REF		    S32	    1357799527
+#NPIX_MAX		    S32	    1482790357
+NPIX_REF 		    S32	    1333206539
+NPIX_MAX		    S32	    1455690816
+NPIX_INTERCHIP          S32     103794483
+
+# This sets the maximum size for the fwhm_major.  This is roughly 3", and 98.67% of all exposures in the database are less than this.
+MAX_ALLOWED_FWHM          F32         12
+
+# The set of maskbits that should not be set to NAN in "released" images
+# This value is equal to CONV.POOR | STARCORE | SPIKE | SUSPECT  = 0x5280
+# unfortunately the perl parser won't accept a hex value
+MASK.NO.CENSOR               U32      21120
+
+METADATA.COMPRESSION         STR      7f # compression mode (nM): n = 1-9, M = f (filtered), h (Huffman), R (run-length)
Index: branches/meh_branches/ppstack_test/ippconfig/gpc1-tdi/format_tdi_20120416.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/gpc1-tdi/format_tdi_20120416.config	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippconfig/gpc1-tdi/format_tdi_20120416.config	(revision 34041)
@@ -0,0 +1,615 @@
+# Refurbished GPC1
+# Change effective from 22 January 2010 (TJD=5219): new CCD temperature keywords
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS1
+        TELESCOP        STR     PS1
+	INSTRUME	STR	gpc1
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     8
+	MJD-OBS		F64	55400.0		# OP: >=
+END
+
+# How to read this data
+FILE    METADATA
+        PHU             STR     CHIP       # The FITS file represents a single chip
+        EXTENSIONS      STR     CELL       # The extensions represent cells
+        FPA.OBS         STR     FILENAME   # A PHU keyword for unique identifier within the hierarchy level
+        CONTENT         STR     DETECTOR   # How to determine content of FITS file
+        CONTENT.RULE    STR     {CHIP.ID}  # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS        METADATA
+        # CONTENT      =    chip name : type
+        CCID58-2-15a1  STR  XY01:GPCChip  # chip 00
+        CCID58-2-18a1  STR  XY02:GPCChip  # chip 01
+        CCID58-2-04a2  STR  XY03:GPCChip  # chip 02
+        CCID58-1-01b1  STR  XY04:GPCChip  # chip 03
+        CCID58-1-09b1  STR  XY05:GPCChip  # chip 04
+        CCID58-2-09b1  STR  XY06:GPCChip  # chip 05
+        CCID58-2-22a1  STR  XY10:GPCChip  # chip 06
+        CCID58-2-01a1  STR  XY11:GPCChip  # chip 07
+        CCID58-3-11a1  STR  XY12:GPCChip  # chip 08
+        CCID58-3-06a1  STR  XY13:GPCChip  # chip 09
+        CCID58-3-05b1  STR  XY14:GPCChip  # chip 10
+        CCID58-3-08b1  STR  XY15:GPCChip  # chip 11
+        CCID58-1-02b1  STR  XY16:GPCChip  # chip 12
+        CCID58-2-07b2  STR  XY17:GPCChip  # chip 13
+        CCID58-1-19a1  STR  XY20:GPCChip  # chip 14
+        CCID58-1-04a1  STR  XY21:GPCChip  # chip 15
+        CCID58-2-09a2  STR  XY22:GPCChip  # chip 16
+        CCID58-1-02a1  STR  XY23:GPCChip  # chip 17
+        CCID58-3-10b1  STR  XY24:GPCChip  # chip 18
+        CCID58-3-05b2  STR  XY25:GPCChip  # chip 19
+        CCID58-3-04b1  STR  XY26:GPCChip  # chip 20
+        CCID58-1-18b1  STR  XY27:GPCChip  # chip 21
+        CCID58-3-13a2  STR  XY30:GPCChip  # chip 22
+        CCID58-3-05a1  STR  XY31:GPCChip  # chip 23
+        CCID58-2-01a2  STR  XY32:GPCChip  # chip 24
+        CCID58-1-02a2  STR  XY33:GPCChip  # chip 25
+        CCID58-3-03b1  STR  XY34:GPCChip  # chip 26
+        CCID58-1-01b2  STR  XY35:GPCChip  # chip 27
+        CCID58-3-14b1  STR  XY36:GPCChip  # chip 28
+        CCID58-2-23b2  STR  XY37:GPCChip  # chip 29
+        CCID58-3-02b1  STR  XY40:GPCChip  # chip 30
+        CCID58-1-03b2  STR  XY41:GPCChip  # chip 31
+        CCID58-1-07b1  STR  XY42:GPCChip  # chip 32
+        CCID58-2-11b2  STR  XY43:GPCChip  # chip 33
+        CCID58-2-09a1  STR  XY44:GPCChip  # chip 34
+        CCID58-3-04a2  STR  XY45:GPCChip  # chip 35
+        CCID58-3-02a1  STR  XY46:GPCChip  # chip 36
+        CCID58-3-14a1  STR  XY47:GPCChip  # chip 37
+        CCID58-1-17b1  STR  XY50:GPCChip  # chip 38
+        CCID58-2-09b2  STR  XY51:GPCChip  # chip 39
+        CCID58-1-04b1  STR  XY52:GPCChip  # chip 40
+        CCID58-1-05b2  STR  XY53:GPCChip  # chip 41
+        CCID58-3-05a2  STR  XY54:GPCChip  # chip 42
+        CCID58-3-03a2  STR  XY55:GPCChip  # chip 43
+        CCID58-3-02a2  STR  XY56:GPCChip  # chip 44
+        CCID58-3-11a2  STR  XY57:GPCChip  # chip 45
+        CCID58-2-16b1  STR  XY60:GPCChip  # chip 46
+        CCID58-1-03b1  STR  XY61:GPCChip  # chip 47
+        CCID58-3-03b2  STR  XY62:GPCChip  # chip 48
+        CCID58-1-02b2  STR  XY63:GPCChip  # chip 49
+        CCID58-1-07a1  STR  XY64:GPCChip  # chip 50
+        CCID58-2-04a1  STR  XY65:GPCChip  # chip 51
+        CCID58-3-10a1  STR  XY66:GPCChip  # chip 52
+        CCID58-1-09a1  STR  XY67:GPCChip  # chip 53
+        CCID58-2-13b1  STR  XY71:GPCChip  # chip 54
+        CCID58-1-14b1  STR  XY72:GPCChip  # chip 55
+        CCID58-3-11b2  STR  XY73:GPCChip  # chip 56
+        CCID58-1-05a2  STR  XY74:GPCChip  # chip 57
+        CCID58-1-21a1  STR  XY75:GPCChip  # chip 58
+        CCID58-2-05a1  STR  XY76:GPCChip  # chip 59
+END
+
+CHIPS   METADATA
+        GPCChip         METADATA
+                # Extension name, cellName:cellType
+                xy00   STR  xy00:GPCCell
+                xy10   STR  xy10:GPCCell
+                xy20   STR  xy20:GPCCell
+                xy30   STR  xy30:GPCCell
+                xy40   STR  xy40:GPCCell
+                xy50   STR  xy50:GPCCell
+                xy60   STR  xy60:GPCCell
+                xy70   STR  xy70:GPCCell
+        END
+END
+
+# Specify the cell data
+CELLS   METADATA
+        GPCCell         METADATA
+                CELL.TRIMSEC.SOURCE     STR     HEADER
+                CELL.TRIMSEC            STR     DATASEC
+                CELL.BIASSEC.SOURCE     STR     HEADER
+                CELL.BIASSEC            STR     BIASSEC
+        END
+END
+
+
+# How to translate PS concepts into FITS headers
+TRANSLATION     METADATA
+        FPA.FILTERID    STR     FILTERID
+        FPA.FILTER      STR     FILTERID
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     EQUINOX
+        FPA.OBSTYPE     STR     OBSTYPE
+        FPA.OBJECT      STR     OBJECT
+        FPA.OBS.MODE    STR     OBS_MODE
+        FPA.COMMENT     STR     CMMTOBS
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.POSANGLE    STR     POSANGLE
+	FPA.ROTANGLE	STR	ROT
+        FPA.FOCUS       STR     M2Z
+        FPA.TIME        STR     SHUTOUTC
+        FPA.ALT         STR     ALT
+        FPA.AZ          STR     AZ
+         FPA.TEMP        STR     DETTEM
+        FPA.M1X         STR     M1X
+        FPA.M1Y         STR     M1Y   
+        FPA.M1Z         STR     M1Z   
+        FPA.M1TIP       STR     M1TIP 
+        FPA.M1TILT      STR     M1TILT
+        FPA.M2X         STR     M2X
+        FPA.M2Y         STR     M2Y   
+        FPA.M2Z         STR     M2Z   
+        FPA.M2TIP       STR     M2TIP 
+        FPA.M2TILT      STR     M2TILT
+        FPA.ENV.TEMP    STR     ENVTEM
+        FPA.ENV.HUMID   STR     ENVHUM
+        FPA.ENV.WIND    STR     ENVWIN
+        FPA.ENV.DIR     STR     ENVDIR
+
+        FPA.TELTEMP.M1     STR  TELTEMM1 # Primary mirror temps (C) 
+        FPA.TELTEMP.M1CELL STR  TELTEMMS # Primary mirror support temps (C)   
+        FPA.TELTEMP.M2     STR  TELTEMM2 # Secondary mirror temps (C
+        FPA.TELTEMP.SPIDER STR  TELTEMSP # Spider temperatures (C)  
+        FPA.TELTEMP.TRUSS  STR  TELTEMTR # Mid truss temperatures (C
+        FPA.TELTEMP.EXTRA  STR  TELTEMEX # Miscellaneous temperatures (C)     
+
+        FPA.BURNTOOL.APPLIED STR BTOOLAPP
+	CHIP.VIDEOCELL  STR     CELLMODE
+
+        FPA.PON.TIME    STR     PONTIME
+
+        CHIP.ID         STR     DETECTOR
+        CELL.XBIN       STR     CCDSUM
+        CELL.YBIN       STR     CCDSUM
+        CELL.X0         STR     IMNPIX1
+        CELL.Y0         STR     IMNPIX2
+        CELL.XPARITY    STR     ATM1_1
+        CELL.YPARITY    STR     ATM2_2
+	CHIP.TEMP	STR	CDETTEM
+	CHIP.TEMPERATURE STR	DETTEM
+        FPA.EXPOSURE    STR     EXPREQ          # Requested exposure time, presumably camera exposure time
+        CELL.EXPOSURE   STR     EXPTIME         # Exposure time measured by shutter
+        CELL.DARKTIME   STR     DARKTIME        # Exposure time for camera
+        CELL.TIME       STR     SHUTOUTC	# Observation time
+        CELL.GAIN       STR     GAIN		# Cell gain (e/ADU)
+        CELL.READNOISE  STR     RDNOISE		# Cell read noise (ADU)
+        CELL.SATURATION STR     MAXLIN		# Saturation point (ADU)
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+        FPA.TELESCOPE   STR     PS1
+        FPA.INSTRUMENT  STR     GPC1
+        FPA.LONGITUDE   STR     10:25:01.417 # West Longitude in Hours 10.4170608521
+        FPA.LATITUDE    STR     20:42:25.558 # North Latitude in Degrees 20.7070999146
+        FPA.ELEVATION   F32     3048.0 # altitude in meters
+        FPA.DETECTOR    STR     GPC1
+        FPA.TIMESYS     STR     UTC
+	CHIP.XSIZE	S32	4846
+	CHIP.YSIZE	S32	4868
+        CHIP.XPARITY    S32     1
+        CHIP.YPARITY    S32     1
+        CHIP.X0.DEPEND          STR     CHIP.NAME
+        CHIP.X0         METADATA
+          XY01  S32     4971
+          XY02  S32     4971
+          XY03  S32     4971
+          XY04  S32     4971
+          XY05  S32     4971
+          XY06  S32     4971
+          XY10  S32     9942
+          XY11  S32     9942
+          XY12  S32     9942
+          XY13  S32     9942
+          XY14  S32     9942
+          XY15  S32     9942
+          XY16  S32     9942
+          XY17  S32     9942
+          XY20  S32     14913
+          XY21  S32     14913
+          XY22  S32     14913
+          XY23  S32     14913
+          XY24  S32     14913
+          XY25  S32     14913
+          XY26  S32     14913
+          XY27  S32     14913
+          XY30  S32     19884
+          XY31  S32     19884
+          XY32  S32     19884
+          XY33  S32     19884 # should be 19872
+          XY34  S32     19884
+          XY35  S32     19884
+          XY36  S32     19884
+          XY37  S32     19884
+          XY40  S32     20041
+          XY41  S32     20041
+          XY42  S32     20041
+          XY43  S32     20041 # should be 20029
+          XY44  S32     20041
+          XY45  S32     20041
+          XY46  S32     20041
+          XY47  S32     20041
+          XY50  S32     25012
+          XY51  S32     25012
+          XY52  S32     25012
+          XY53  S32     25012
+          XY54  S32     25012
+          XY55  S32     25012
+          XY56  S32     25012
+          XY57  S32     25012
+          XY60  S32     29983
+          XY61  S32     29983
+          XY62  S32     29983
+          XY63  S32     29983
+          XY64  S32     29983
+          XY65  S32     29983
+          XY66  S32     29983
+          XY67  S32     29983
+          XY71  S32     34954
+          XY72  S32     34954
+          XY73  S32     34954
+          XY74  S32     34954
+          XY75  S32     34954
+          XY76  S32     34954
+        END
+        CHIP.Y0.DEPEND          STR     CHIP.NAME
+        CHIP.Y0         METADATA
+          XY01  S32     10286
+          XY02  S32     15429
+          XY03  S32     20572
+          XY04  S32     25715
+          XY05  S32     30858
+          XY06  S32     36001
+          XY10  S32     5143
+          XY11  S32     10286
+          XY12  S32     15429
+          XY13  S32     20572
+          XY14  S32     25715
+          XY15  S32     30858
+          XY16  S32     36001
+          XY17  S32     41144
+          XY20  S32     5143
+          XY21  S32     10286
+          XY22  S32     15429
+          XY23  S32     20572
+          XY24  S32     25715
+          XY25  S32     30858
+          XY26  S32     36001
+          XY27  S32     41144
+          XY30  S32     5143
+          XY31  S32     10286
+          XY32  S32     15429
+          XY33  S32     20572
+          XY34  S32     25715 # should be 25755
+          XY35  S32     30858
+          XY36  S32     36001
+          XY37  S32     41144
+          XY40  S32     306
+          XY41  S32     5449
+          XY42  S32     10592
+          XY43  S32     15735 # should be 15707
+          XY44  S32     20878 # should be 20890
+          XY45  S32     26021
+          XY46  S32     31164
+          XY47  S32     36307
+          XY50  S32     306
+          XY51  S32     5449
+          XY52  S32     10592
+          XY53  S32     15735
+          XY54  S32     20878
+          XY55  S32     26021
+          XY56  S32     31164
+          XY57  S32     36307
+          XY60  S32     306
+          XY61  S32     5449
+          XY62  S32     10592
+          XY63  S32     15735
+          XY64  S32     20878
+          XY65  S32     26021
+          XY66  S32     31164
+          XY67  S32     36307
+          XY71  S32     5449
+          XY72  S32     10592
+          XY73  S32     15735
+          XY74  S32     20878
+          XY75  S32     26021
+          XY76  S32     31164
+        END
+        CHIP.XPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.XPARITY    METADATA
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY04  S32     -1
+          XY05  S32     -1
+          XY06  S32     -1
+          XY10  S32     -1
+          XY11  S32     -1
+          XY12  S32     -1
+          XY13  S32     -1
+          XY14  S32     -1
+          XY15  S32     -1
+          XY16  S32     -1
+          XY17  S32     -1
+          XY20  S32     -1
+          XY21  S32     -1
+          XY22  S32     -1
+          XY23  S32     -1
+          XY24  S32     -1
+          XY25  S32     -1
+          XY26  S32     -1
+          XY27  S32     -1
+          XY30  S32     -1
+          XY31  S32     -1
+          XY32  S32     -1
+          XY33  S32     -1
+          XY34  S32     -1
+          XY35  S32     -1
+          XY36  S32     -1
+          XY37  S32     -1
+          XY40  S32     1
+          XY41  S32     1
+          XY42  S32     1
+          XY43  S32     1
+          XY44  S32     1
+          XY45  S32     1
+          XY46  S32     1
+          XY47  S32     1
+          XY50  S32     1
+          XY51  S32     1
+          XY52  S32     1
+          XY53  S32     1
+          XY54  S32     1
+          XY55  S32     1
+          XY56  S32     1
+          XY57  S32     1
+          XY60  S32     1
+          XY61  S32     1
+          XY62  S32     1
+          XY63  S32     1
+          XY64  S32     1
+          XY65  S32     1
+          XY66  S32     1
+          XY67  S32     1
+          XY71  S32     1
+          XY72  S32     1
+          XY73  S32     1
+          XY74  S32     1
+          XY75  S32     1
+          XY76  S32     1
+        END
+        CHIP.YPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.YPARITY    METADATA
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY04  S32     -1
+          XY05  S32     -1
+          XY06  S32     -1
+          XY10  S32     -1
+          XY11  S32     -1
+          XY12  S32     -1
+          XY13  S32     -1
+          XY14  S32     -1
+          XY15  S32     -1
+          XY16  S32     -1
+          XY17  S32     -1
+          XY20  S32     -1
+          XY21  S32     -1
+          XY22  S32     -1
+          XY23  S32     -1
+          XY24  S32     -1
+          XY25  S32     -1
+          XY26  S32     -1
+          XY27  S32     -1
+          XY30  S32     -1
+          XY31  S32     -1
+          XY32  S32     -1
+          XY33  S32     -1
+          XY34  S32     -1
+          XY35  S32     -1
+          XY36  S32     -1
+          XY37  S32     -1
+          XY40  S32     1
+          XY41  S32     1
+          XY42  S32     1
+          XY43  S32     1
+          XY44  S32     1
+          XY45  S32     1
+          XY46  S32     1
+          XY47  S32     1
+          XY50  S32     1
+          XY51  S32     1
+          XY52  S32     1
+          XY53  S32     1
+          XY54  S32     1
+          XY55  S32     1
+          XY56  S32     1
+          XY57  S32     1
+          XY60  S32     1
+          XY61  S32     1
+          XY62  S32     1
+          XY63  S32     1
+          XY64  S32     1
+          XY65  S32     1
+          XY66  S32     1
+          XY67  S32     1
+          XY71  S32     1
+          XY72  S32     1
+          XY73  S32     1
+          XY74  S32     1
+          XY75  S32     1
+          XY76  S32     1
+        END
+        CELL.READDIR    S32     1
+        CELL.BAD        S32     0
+	CELL.XSIZE	S32	590
+	CELL.YSIZE	S32	598
+        CELL.TIMESYS    STR     UTC
+END
+
+# How to translation PS concepts into database lookups
+DATABASE        METADATA
+	# this rule is fragile : does not match the camera
+#        FPA.TEMP        STR     SELECT ccd_temp FROM rawExp WHERE dateobs >= '{FPA.DATE}' and abs(timediff(dateobs, cast('{FPA.TIME}' as datetime))) < 2
+END
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS         METADATA
+        FPA.RA          STR     DEGREES
+        FPA.DEC         STR     DEGREES
+	FPA.LONGITUDE	STR	HOURS
+	FPA.LATITUDE	STR	DEGREES
+        FPA.TIME        STR     YEAR.FIRST
+        CELL.TIME       STR     YEAR.FIRST
+        CELL.BINNING    STR     TOGETHER
+        # CELL.X0         STR     FORTRAN
+        # CELL.Y0         STR     FORTRAN
+	CELL.READNOISE	STR	ADU
+END
+
+# Pattern correction information:
+
+# PATTERN.ROW		BOOL 	TRUE	# Do any row pattern correction at all?
+PATTERN.ROW.SUBSET	METADATA	# List of chips and whether to do row pattern correction
+	XY01	BOOL	FALSE
+#	XY02	STR     0000000000000000000000000000000000000000000000000000000000000001 # xy77
+	XY02	BOOL	FALSE
+	XY03	BOOL	FALSE
+	XY04	BOOL	FALSE
+	XY05	BOOL	FALSE
+	XY06	BOOL	FALSE
+	XY10	BOOL	FALSE
+	XY11	STR	0011100100000000000000000000000000000000000000000000000000000000
+	XY12	BOOL	FALSE
+	XY13	BOOL	FALSE
+	XY14	STR     0000000000000000000100000000000000000000000000000000000000000000 # xy23
+	XY15	STR     1111111100000000000000000000000000000000000000000000000000000000 # cols: 0
+	XY16	BOOL	FALSE
+	XY17	BOOL	FALSE
+	XY20	BOOL	FALSE
+	XY21	BOOL	FALSE
+	XY22	BOOL	FALSE
+	XY23	BOOL	FALSE
+	XY24	BOOL	FALSE
+	XY25	BOOL	FALSE
+	XY26	BOOL	FALSE
+	XY27	STR     1111111111111111111111111111111100000000000000000000000011111111 # cols: 0,1,2,3,7
+	XY30	BOOL	FALSE
+	XY31	STR     0000000000000000000000000000000000000000000000000000000011111111 # cols: 7
+	XY32	STR     0000000000000000000000001111111100000000000000000000000011111111 # cols: 3,7
+	XY33	BOOL	FALSE
+	XY34	BOOL	FALSE
+	XY35	BOOL	FALSE
+	XY36	BOOL	FALSE
+	XY37	BOOL	FALSE
+	XY40	BOOL	FALSE
+	XY41	BOOL	FALSE
+	XY42	BOOL	FALSE
+	XY43	BOOL	FALSE
+	XY44	BOOL	FALSE
+	XY45	STR     0000000000000000000000001111111100000000000000000000000011111111 # cols: 3,7
+	XY46	BOOL	FALSE
+	XY47	STR     1111111100000000000000001111111100000000111111110000000011111111 # cols: 0,3,5,7
+	XY50	BOOL	FALSE
+	XY51	BOOL	FALSE
+	XY52	BOOL	FALSE
+	XY53	BOOL	FALSE
+	XY54	BOOL	FALSE
+	XY55	BOOL	FALSE
+	XY56	BOOL	FALSE
+	XY57	STR     1111111111111111111111110000000000000000000000001111111111111111 # cols: 0,1,2,6,7
+	XY60	STR	0000000000000000000000000000000000000000000001000000000000000000 # cell xy55
+	XY61	BOOL	FALSE
+	XY62	BOOL	FALSE
+	XY63	BOOL	FALSE
+	XY64	BOOL	FALSE
+	XY65	BOOL	FALSE
+#	XY66	STR	0000000000000000000000000000000000000000000000000000000000000100 # cell xy75
+	XY66	BOOL	FALSE
+	XY67	BOOL	FALSE
+	XY71	BOOL	FALSE
+	XY72	BOOL	FALSE
+	XY73	BOOL	FALSE
+	XY74	STR     0000000000000000111111110000000000000000000000000000000011111111 # cols: 2,7
+	XY75	BOOL	FALSE
+	XY76	BOOL	FALSE
+END
+
+PATTERN.CONTINUITY BOOL TRUE
+ PATTERN.CELL	BOOL 	FALSE		# by default, do not do any cell pattern correction
+# PATTERN.CELL.SUBSET	METADATA	# List of chips and whether to do cell pattern correction
+# 	XY01	BOOL	FALSE
+# 	XY02	BOOL	FALSE
+# 	XY03	BOOL	FALSE
+# 	XY04	BOOL	FALSE
+# 	XY05	BOOL	FALSE
+# #	XY06    STR     0101000000010000000110000100000000000000000000000000000000000000
+# 	XY06	BOOL	FALSE
+# 	XY10	BOOL	FALSE
+# 	XY11	BOOL	FALSE
+# 	XY12	BOOL	FALSE
+# 	XY13	BOOL	FALSE
+# 	XY14	STR     0000000000000000111111110000000000000000000000000000000000000000
+# 	XY15	STR     1111111110000000100000000000000000000000000000000000000000000000
+# #	XY16	STR     0000000100000000000000000000000000000001000000000000000000000000
+# 	XY16	BOOL	FALSE
+# 	XY17	BOOL	FALSE
+# 	XY20	BOOL	FALSE
+# 	XY21	BOOL	FALSE
+# 	XY22	BOOL	FALSE
+# 	XY23	BOOL	FALSE
+# #	XY24	STR     0000000000100000000000000110100000100000001000000011100000000000
+# 	XY24	BOOL	FALSE
+# #	XY25	STR     0100010000001001001011000000001000000111000110000000100000000010
+# 	XY25	BOOL	FALSE
+# #	XY26	STR     0000000000000100000000000000000000001000001000000000000000000000
+# 	XY26	BOOL	FALSE
+# 	XY27	BOOL	FALSE
+# 	XY30	BOOL	FALSE
+# 	XY31	BOOL	FALSE
+# 	XY32	BOOL	FALSE
+# 	XY33	BOOL	FALSE
+# #	XY34	STR     0000000000000000000000000000000000000001000011000000101000111111
+# 	XY34	BOOL	FALSE
+# 	XY35	BOOL	FALSE
+# #	XY36	STR     0001000000000000000000000000000000010000000000000000000000000000
+# 	XY36	BOOL	FALSE
+# #	XY37	STR     0000000000000000000000000000000100010001000000001011000010110110 ?
+# 	XY37	BOOL	FALSE
+# #	XY40	STR     0000000000000000000000000010110000000000000001110000001000011111
+# 	XY40	BOOL	FALSE
+# 	XY41	BOOL	FALSE
+# #	XY42	BOOL	FALSE
+# 	XY42	STR	0000000000000000000100000001000000000000000000000000000000000000
+# #	XY43	STR     0000000000000000000000010000000100000000000010000100000100000100
+# 	XY43	STR 	0000000000000000000000000000000000000000000010000000000000000000
+# 	XY44	BOOL	FALSE
+# 	XY45	BOOL	FALSE
+# 	XY46	BOOL	FALSE
+# 	XY47	BOOL	FALSE
+# 	XY50	BOOL	FALSE
+# 	XY51	BOOL	FALSE
+# 	XY52	BOOL	FALSE
+# 	XY53	BOOL	FALSE
+# 	XY54	BOOL	FALSE
+# 	XY55	BOOL	FALSE
+# 	XY56	BOOL	FALSE
+# 	XY57	BOOL	FALSE
+# 	XY60	BOOL	FALSE
+# 	XY61	BOOL	FALSE
+# #	XY62	STR     0000000000000000000000000000000000000000000000000000000000000010
+# 	XY62	BOOL	FALSE
+# 	XY63	BOOL	FALSE
+# 	XY64	BOOL	FALSE
+# 	XY65	BOOL	FALSE
+# 	XY66	BOOL	FALSE
+# 	XY67	BOOL	FALSE
+# 	XY71	BOOL	FALSE
+# #	XY72	STR     0000000000000000000000000000000000000000000000000000000000000001
+# 	XY72	BOOL	FALSE
+# #	XY73	STR     0001100000000000000000000000001000000000000000000000000000000000
+# 	XY73	BOOL	FALSE
+# 	XY74	BOOL	FALSE
+# 	XY75	BOOL	FALSE
+# 	XY76	BOOL	FALSE
+# END
Index: branches/meh_branches/ppstack_test/ippconfig/gpc1/ghost.model.mdc
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/gpc1/ghost.model.mdc	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/gpc1/ghost.model.mdc	(revision 34041)
@@ -1,15 +1,83 @@
+# Original center models
+# GHOST.CENTER.X METADATA
+#   NORDER_X S32 3
+#   NORDER_Y S32 3
+#   VAL_X00_Y00  F64 -4.421024e+01
+#   VAL_X01_Y00  F64 1.216270e-02
+#   VAL_X02_Y00  F64 -9.721643e-08
+#   VAL_X03_Y00  F64 9.976554e-11
+#   VAL_X00_Y01  F64 -1.762476e-03
+#   VAL_X01_Y01  F64 1.247212e-07
+#   VAL_X02_Y01  F64 3.629557e-11
+#   VAL_X00_Y02  F64 -1.040174e-07
+#   VAL_X01_Y02  F64 1.074674e-10
+#   VAL_X00_Y03  F64 1.564112e-11
+#   NELEMENTS  S32 10
+# END
+
+# GHOST.CENTER.Y METADATA
+#   NORDER_X S32 3
+#   NORDER_Y S32 3
+#   VAL_X00_Y00  F64 -2.189470e+00
+#   VAL_X01_Y00  F64 -4.186514e-03
+#   VAL_X02_Y00  F64 1.131554e-07
+#   VAL_X03_Y00  F64 1.415192e-11
+#   VAL_X00_Y01  F64 1.569104e-02
+#   VAL_X01_Y01  F64 -1.782801e-07
+#   VAL_X02_Y01  F64 8.179602e-11
+#   VAL_X00_Y02  F64 2.577055e-07
+#   VAL_X01_Y02  F64 8.879423e-11
+#   VAL_X00_Y03  F64 5.767429e-11
+#   NELEMENTS  S32 10
+# END
+
+# Updated models of 2012-05-07
+# Corrected(?) parity
+# GHOST.CENTER.X METADATA
+#   NORDER_X S32 3
+#   NORDER_Y S32 3
+#   VAL_X00_Y00  F64  3.314569e+01
+#   VAL_X01_Y00  F64  1.110664e-02
+#   VAL_X02_Y00  F64 -1.904158e-07
+#   VAL_X03_Y00  F64  8.470224e-11
+#   VAL_X00_Y01  F64 -1.616877e-03
+#   VAL_X01_Y01  F64  1.646508e-07
+#   VAL_X02_Y01  F64  5.623381e-11
+#   VAL_X00_Y02  F64 -2.342888e-07
+#   VAL_X01_Y02  F64  1.023761e-10
+#   VAL_X00_Y03  F64  2.836980e-11
+#   NELEMENTS  S32 10
+# END
+
+# GHOST.CENTER.Y METADATA
+#   NORDER_X S32 3
+#   NORDER_Y S32 3
+#   VAL_X00_Y00  F64 -2.860068e+01
+#   VAL_X01_Y00  F64 -8.790076e-03
+#   VAL_X02_Y00  F64  2.456534e-07
+#   VAL_X03_Y00  F64  2.947749e-11
+#   VAL_X00_Y01  F64  1.948855e-02
+#   VAL_X01_Y01  F64 -2.639927e-07
+#   VAL_X02_Y01  F64  4.951474e-11
+#   VAL_X00_Y02  F64  4.341716e-07
+#   VAL_X01_Y02  F64  1.643046e-10
+#   VAL_X00_Y03  F64 -1.737983e-12
+#   NELEMENTS  S32 10
+# END
+
+# Switched order
 GHOST.CENTER.X METADATA
   NORDER_X S32 3
   NORDER_Y S32 3
-  VAL_X00_Y00  F64 -4.421024e+01
-  VAL_X01_Y00  F64 1.216270e-02
-  VAL_X02_Y00  F64 -9.721643e-08
-  VAL_X03_Y00  F64 9.976554e-11
-  VAL_X00_Y01  F64 -1.762476e-03
-  VAL_X01_Y01  F64 1.247212e-07
-  VAL_X02_Y01  F64 3.629557e-11
-  VAL_X00_Y02  F64 -1.040174e-07
-  VAL_X01_Y02  F64 1.074674e-10
-  VAL_X00_Y03  F64 1.564112e-11
+  VAL_X00_Y00  F64 -1.215661e+02
+  VAL_X01_Y00  F64  1.321875e-02
+  VAL_X02_Y00  F64 -4.017026e-09
+  VAL_X03_Y00  F64  1.148288e-10
+  VAL_X00_Y01  F64 -1.908074e-03
+  VAL_X01_Y01  F64  8.479150e-08
+  VAL_X02_Y01  F64  1.635732e-11
+  VAL_X00_Y02  F64  2.625405e-08
+  VAL_X01_Y02  F64  1.125586e-10
+  VAL_X00_Y03  F64  2.912432e-12
   NELEMENTS  S32 10
 END
@@ -18,17 +86,54 @@
   NORDER_X S32 3
   NORDER_Y S32 3
-  VAL_X00_Y00  F64 -2.189470e+00
-  VAL_X01_Y00  F64 -4.186514e-03
-  VAL_X02_Y00  F64 1.131554e-07
-  VAL_X03_Y00  F64 1.415192e-11
-  VAL_X00_Y01  F64 1.569104e-02
-  VAL_X01_Y01  F64 -1.782801e-07
-  VAL_X02_Y01  F64 8.179602e-11
-  VAL_X00_Y02  F64 2.577055e-07
-  VAL_X01_Y02  F64 8.879423e-11
-  VAL_X00_Y03  F64 5.767429e-11
+  VAL_X00_Y00  F64  2.422174e+01
+  VAL_X01_Y00  F64  4.170486e-04
+  VAL_X02_Y00  F64 -1.934260e-08
+  VAL_X03_Y00  F64 -1.173657e-12
+  VAL_X00_Y01  F64  1.189352e-02
+  VAL_X01_Y01  F64 -9.256748e-08
+  VAL_X02_Y01  F64  1.140772e-10
+  VAL_X00_Y02  F64  8.123932e-08
+  VAL_X01_Y02  F64  1.328378e-11
+  VAL_X00_Y03  F64  1.170865e-10
   NELEMENTS  S32 10
 END
 
+
+
+# These are semi-major/minor axes
+# These are my (CZW) quadratic solutions
+# GHOST.INNER.MAJOR METADATA
+#   NORDER_X S32 2
+#   VAL_X00  F64 2.2622e+01
+#   VAL_X01  F64 1.3822e-02
+#   VAL_X02  F64 -3.7005e-07
+#   NELEMENTS  S32 3
+# END
+
+# GHOST.INNER.MINOR METADATA
+#   NORDER_X S32 2
+#   VAL_X00  F64 4.9626e+01
+#   VAL_X01  F64 -2.4257e-04
+#   VAL_X02  F64 -1.2007e-07
+#   NELEMENTS  S32 3
+# END
+
+# GHOST.OUTER.MAJOR METADATA
+#   NORDER_X S32 2
+#   VAL_X00  F64 9.6490e+01
+#   VAL_X01  F64 9.4250e-03
+#   VAL_X02  F64 6.5680e-07
+#   NELEMENTS  S32 3
+# END
+
+# GHOST.OUTER.MINOR METADATA
+#   NORDER_X S32 2
+#   VAL_X00  F64 9.5450e+01
+#   VAL_X01  F64 2.8775e-03
+#   VAL_X02  F64 -3.1409e-07
+#   NELEMENTS  S32 3
+# END
+
+# These are the original linear solutions
 GHOST.INNER.MAJOR METADATA
   NORDER_X S32 1
Index: branches/meh_branches/ppstack_test/ippconfig/gpc1/ppImage.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/gpc1/ppImage.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/gpc1/ppImage.config	(revision 34041)
@@ -25,5 +25,8 @@
 NOISEMAP                BOOL    FALSE          # Apply read noise map
 
-
+# Final detrending options 
+HAS.VIDEO       BOOL    FALSE           # Treat this OTA as if it has video data
+USE.VIDEO.DARK  BOOL    FALSE           # Use a video dark if we have video data?
+USE.VIDEO.MASK  BOOL    TRUE            # Use a video mask if we have video data?
 
 
@@ -159,4 +162,5 @@
   BIAS               BOOL    FALSE           # Bias subtraction
   DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP	     BOOL    TRUE	     
   REMNANCE           BOOL    FALSE           # Remnance masking
   SHUTTER            BOOL    FALSE           # Shutter correction
@@ -227,5 +231,6 @@
   MASK.BURNTOOL      BOOL    TRUE            # Mask potential burntool trails
   PATTERN.ROW        BOOL    TRUE            # Row pattern correction
-  PATTERN.CELL	     BOOL    TRUE	     # Cell pattern correction
+  PATTERN.CELL	     BOOL    FALSE	     # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    TRUE
   FRINGE             BOOL    TRUE            # Fringe subtraction
   BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
@@ -311,4 +316,36 @@
   END
 END
+
+CHIP_NOISEMAP METADATA
+  BASE.FITS          BOOL    FALSE           # Save base detrended image?
+  BASE.MASK.FITS     BOOL    FALSE           # Save base detrended image?
+  BASE.VARIANCE.FITS BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS          BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.MASK.FITS     BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL    TRUE            # Save chip-mosaic-ed image? 
+  OVERSCAN           BOOL    TRUE            # Overscan subtraction
+  NONLIN             BOOL    TRUE            # apply non-linearity correction 
+  NOISEMAP	     BOOL    TRUE	     
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  REMNANCE           BOOL    FALSE           # Remnance masking
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	     BOOL    TRUE	     # Build internal mask?
+  MASK.BURNTOOL      BOOL    TRUE            # Mask potential burntool trails
+  PATTERN.ROW        BOOL    TRUE            # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE	     # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    TRUE            # Cell pattern correction using edge continuity
+  FRINGE             BOOL    TRUE            # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  BACKGROUND         BOOL    TRUE            # Subtract background?
+  CROSSTALK.MEASURE  BOOL    TRUE            # Subtract model background?
+END
+
  
 # Standard chip processing
@@ -1030,4 +1067,40 @@
     END
   END   
+END
+
+PPIMAGE_NOISEMAP     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base image?
+  BASE.MASK.FITS   BOOL    TRUE            # Save base detrended image?
+  BASE.VARIANCE.FITS BOOL  TRUE            # Save base detrended image?
+  CHIP.FITS        BOOL    FALSE           # Save chip-mosaic-ed image? 
+  CHIP.MASK.FITS   BOOL    FALSE           # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL  FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN         BOOL    TRUE            # Overscan subtraction
+  NONLIN             BOOL    FALSE           # Non-linearity correction; not implemented
+  BIAS             BOOL    FALSE            # Bias subtraction
+  DARK             BOOL    FALSE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  MASK.BUILD       BOOL    FALSE 	   # Build internal mask?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PHOTOM           BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+  CHECK.CTE        BOOL    FALSE            # measure CTE errors?
+  CHECK.NOISE      BOOL    TRUE            # measure cell level noise.
+
+#   DETREND.CONSTRAINTS  METADATA
+#     DARK METADATA
+#       DETTYPE STR DARK_PREMASK
+#       EXPTIME STR FPA.EXPOSURE
+#     END
+#     FLAT METADATA
+#       DETTYPE STR FLAT_PREMASK
+#       FILTER  STR FPA.FILTERID
+#     END
+#   END   
 END
 
@@ -1294,2 +1367,96 @@
   END
 END
+
+# test recipes
+# currently : default CHIP recipe
+APTEST_V1 METADATA
+  BASE.FITS          BOOL    FALSE           # Save base detrended image?
+  BASE.MASK.FITS     BOOL    FALSE           # Save base detrended image?
+  BASE.VARIANCE.FITS BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS          BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.MASK.FITS     BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL    TRUE            # Save chip-mosaic-ed image? 
+  OVERSCAN           BOOL    TRUE            # Overscan subtraction
+  NONLIN             BOOL    TRUE            # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  REMNANCE           BOOL    FALSE           # Remnance masking
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	     BOOL    TRUE	     # Build internal mask?
+  MASK.BURNTOOL      BOOL    TRUE            # Mask potential burntool trails
+  PATTERN.ROW        BOOL    TRUE            # Row pattern correction
+  PATTERN.CELL	     BOOL    TRUE	     # Cell pattern correction
+  FRINGE             BOOL    TRUE            # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  BACKGROUND         BOOL    TRUE            # Subtract background?
+  CROSSTALK.MEASURE  BOOL    TRUE            # Subtract model background?
+END
+
+# test recipes
+# currently : default CHIP recipe as normal
+APTEST_V2 METADATA
+  BASE.FITS          BOOL    FALSE           # Save base detrended image?
+  BASE.MASK.FITS     BOOL    FALSE           # Save base detrended image?
+  BASE.VARIANCE.FITS BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS          BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.MASK.FITS     BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL    TRUE            # Save chip-mosaic-ed image? 
+  OVERSCAN           BOOL    TRUE            # Overscan subtraction
+  NONLIN             BOOL    TRUE            # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  REMNANCE           BOOL    FALSE           # Remnance masking
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	     BOOL    TRUE	     # Build internal mask?
+  MASK.BURNTOOL      BOOL    TRUE            # Mask potential burntool trails
+  PATTERN.ROW        BOOL    TRUE            # Row pattern correction
+  PATTERN.CELL	     BOOL    TRUE	     # Cell pattern correction
+  FRINGE             BOOL    TRUE            # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  BACKGROUND         BOOL    TRUE            # Subtract background?
+  CROSSTALK.MEASURE  BOOL    TRUE            # Subtract model background?
+END
+
+# test recipes
+# currently : default CHIP recipe
+APTEST_V3 METADATA
+  BASE.FITS          BOOL    FALSE           # Save base detrended image?
+  BASE.MASK.FITS     BOOL    FALSE           # Save base detrended image?
+  BASE.VARIANCE.FITS BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS          BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.MASK.FITS     BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL    TRUE            # Save chip-mosaic-ed image? 
+  OVERSCAN           BOOL    TRUE            # Overscan subtraction
+  NONLIN             BOOL    TRUE            # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  REMNANCE           BOOL    FALSE           # Remnance masking
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	     BOOL    TRUE	     # Build internal mask?
+  MASK.BURNTOOL      BOOL    TRUE            # Mask potential burntool trails
+  PATTERN.ROW        BOOL    TRUE            # Row pattern correction
+  PATTERN.CELL	     BOOL    TRUE	     # Cell pattern correction
+  FRINGE             BOOL    TRUE            # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  BACKGROUND         BOOL    TRUE            # Subtract background?
+  CROSSTALK.MEASURE  BOOL    TRUE            # Subtract model background?
+END
+
Index: branches/meh_branches/ppstack_test/ippconfig/gpc1/psastro.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/gpc1/psastro.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/gpc1/psastro.config	(revision 34041)
@@ -113,5 +113,9 @@
 
 # *** make sure the choice of CATDIR (dvo database) contains the photcodes desired below
-PSASTRO.CATDIR              STR      SYNTH.GRIZY 
+# PSASTRO.CATDIR              STR      SYNTH.GRIZY 
+# PSASTRO.CATDIR		STR	PS1.REF.20120503
+PSASTRO.CATDIR               STR     PS1.REF.20120524
+
+
 DVO.GETSTAR.PHOTCODE        STR      i
 DVO.GETSTAR.MAX.RHO         F32      3000.0
@@ -120,5 +124,5 @@
 
 # rather than mean, use specified EDGE:
-ZERO.POINT.USE.MEAN	      	BOOL     FALSE
+ZERO.POINT.USE.MEAN	      	BOOL     TRUE
 ZERO.POINT.EDGE.FRACTION      	F32      0.9
 ZERO.POINT.EDGE.SAMPLE        	S32      25
@@ -128,11 +132,11 @@
 PHOTCODE.DATA METADATA
   FILTER   STR g
-  ZEROPT   F32 24.9
+  ZEROPT   F32 24.563
   PHOTCODE STR g
-  GHOST_MAX_MAG                   F32 -20.0
+  GHOST_MAX_MAG                   F32 -16.5
 END
 PHOTCODE.DATA METADATA
   FILTER   STR r
-  ZEROPT   F32 25.1
+  ZEROPT   F32 24.750
   PHOTCODE STR r
   GHOST_MAX_MAG                   F32 -20.0
@@ -140,5 +144,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR i
-  ZEROPT   F32 25.0
+  ZEROPT   F32 24.611
   PHOTCODE STR i
   GHOST_MAX_MAG                   F32 -25.0
@@ -146,5 +150,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR z
-  ZEROPT   F32 24.6
+  ZEROPT   F32 24.250
   PHOTCODE STR z
   GHOST_MAX_MAG                   F32 -25.0
@@ -152,5 +156,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR y
-  ZEROPT   F32 22.2
+  ZEROPT   F32 23.320
   PHOTCODE STR y
   GHOST_MAX_MAG                   F32 -25.0
@@ -261,4 +265,5 @@
 PS1_REFERENCE METADATA
   PSASTRO.CATDIR              STR      PS1.GRIZY
+#   PSASTRO.CATDIR	       STR	PS1.REF.20120325
   ## PHOTCODE.DATA MULTI UPDATE
   ## PHOTCODE.DATA METADATA
@@ -345,9 +350,27 @@
   PSASTRO.MATCH.FIT.NITER S32    5
 
-  PSASTRO.CATDIR    	STR 	STS.PP5.REFCAT
+  # CATDIR with PS1 astrometry from PP5 pointing. Only works for that field
+  # PSASTRO.CATDIR    	STR 	STS.PP5.REFCAT
+END
+
+DEFAULT_RECIPE METADATA
+#   PSASTRO.CATDIR               STR     PS1.REF.20120503
+   PSASTRO.CATDIR		STR	PS1.REF.20120524
+   ZERO.POINT.USE.MEAN		BOOL	TRUE  
 END
 
 LAP_ASTRO METADATA
 #  PSASTRO.CATDIR                STR      3PI.20110505.REFCAT
-   PSASTRO.CATDIR		 STR	  SYNTH.GRIZY
-END
+#   PSASTRO.CATDIR		 STR	  SYNTH.GRIZY
+#   PSASTRO.CATDIR		 STR     PS1.REF.20120503
+   PSASTRO.CATDIR               STR     PS1.REF.20120524
+   ZERO.POINT.USE.MEAN		BOOL	TRUE  
+END
+
+SYNTH_CAT METADATA
+   PSASTRO.CATDIR		STR SYNTH.GRIZY
+END
+
+TEST_REFCAT METADATA
+   PSASTRO.CATDIR		STR /data/ipp064.0/ipp/ippRefs/catdir.refcat.20120524.v0
+END
Index: branches/meh_branches/ppstack_test/ippconfig/isp/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/isp/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/isp/camera.config	(revision 34041)
@@ -62,4 +62,5 @@
   CMF.XSRC STR {CHIP.NAME}.xsrc # use .PSF and .EXT?
   CMF.XFIT STR {CHIP.NAME}.xfit # use .PSF and .EXT?
+  CMF.XRAD STR {CHIP.NAME}.xrad # use .PSF and .EXT?
   CMF.DETEFF STR {CHIP.NAME}.deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/lulin/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/lulin/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/lulin/camera.config	(revision 34041)
@@ -63,4 +63,5 @@
   CMF.XSRC STR {CHIP.NAME}.xsrc # use .PSF and .EXT?
   CMF.XFIT STR {CHIP.NAME}.xfit # use .PSF and .EXT?
+  CMF.XRAD STR {CHIP.NAME}.xrad # use .PSF and .EXT?
   CMF.DETEFF STR {CHIP.NAME}.deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/megacam/Makefile.am
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/megacam/Makefile.am	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/megacam/Makefile.am	(revision 34041)
@@ -16,4 +16,5 @@
 	psphot.config \
 	pswarp.config \
+	ppStack.config \
 	rejections.config
 
Index: branches/meh_branches/ppstack_test/ippconfig/megacam/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/megacam/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/megacam/camera.config	(revision 34041)
@@ -122,4 +122,5 @@
 	REJECTIONS      STR     megacam/rejections.config       # rejection recipe
 	PPMERGE		STR	megacam/ppMerge.config		# ppMerge recipe
+	PPSTACK		STR	megacam/ppStack.config          # ppStack recipe
 END
 
@@ -136,4 +137,5 @@
   CMF.XSRC STR {CHIP.NAME}.xsrc # use .PSF and .EXT?
   CMF.XFIT STR {CHIP.NAME}.xfit # use .PSF and .EXT?
+  CMF.XRAD STR {CHIP.NAME}.xrad # use .PSF and .EXT?
   CMF.DETEFF STR {CHIP.NAME}.deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/megacam/ppStack.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/megacam/ppStack.config	(revision 34041)
+++ branches/meh_branches/ppstack_test/ippconfig/megacam/ppStack.config	(revision 34041)
@@ -0,0 +1,2 @@
+    CONVOLVE        BOOL   FALSE    
+# we don't need this for megacam
Index: branches/meh_branches/ppstack_test/ippconfig/mosaic2/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/mosaic2/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/mosaic2/camera.config	(revision 34041)
@@ -90,4 +90,5 @@
   CMF.XSRC STR {CHIP.NAME}.xsrc # use .PSF and .EXT?
   CMF.XFIT STR {CHIP.NAME}.xfit # use .PSF and .EXT?
+  CMF.XRAD STR {CHIP.NAME}.xrad # use .PSF and .EXT?
   CMF.DETEFF STR {CHIP.NAME}.deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/recipes/filerules-mef.mdc
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/recipes/filerules-mef.mdc	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/recipes/filerules-mef.mdc	(revision 34041)
@@ -59,6 +59,8 @@
 PPIMAGE.INPUT.SRC       INPUT    @FILES        CHIP       CMF
 PPIMAGE.MASK            INPUT    @DETDB        CHIP       MASK
+PPIMAGE.VIDEOMASK       INPUT    @DETDB        CHIP       MASK
 PPIMAGE.BIAS            INPUT    @DETDB        CHIP       IMAGE
 PPIMAGE.DARK            INPUT    @DETDB        CHIP       DARK
+PPIMAGE.VIDEODARK       INPUT    @DETDB        CHIP       DARK
 PPIMAGE.FLAT            INPUT    @DETDB        CHIP       IMAGE
 PPIMAGE.FRINGE          INPUT    @DETDB        CHIP       FRINGE
@@ -85,4 +87,5 @@
 PSPHOT.INPUT.CMF        INPUT    @FILES        CHIP       CMF       
 PSPHOT.INPUT.TEXT       INPUT    @FILES        CHIP       SRCTEXT       
+PSPHOT.EXPNUM           INPUT    @FILES        CHIP       MASK       
 
 ## files used by psastro 
@@ -203,4 +206,5 @@
 PPMERGE.OUTPUT.SHUTTER  OUTPUT {OUTPUT}.fits                     IMAGE     NONE       CHIP       TRUE      NONE
 PPMERGE.OUTPUT.FLAT     OUTPUT {OUTPUT}.fits                     IMAGE     NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.NOISEMAP OUTPUT {OUTPUT}.fits                     IMAGE     NONE       CHIP       TRUE      NONE
 PPMERGE.OUTPUT.FRINGE   OUTPUT {OUTPUT}.fits                     FRINGE    NONE       CHIP       TRUE      NONE
 PPMERGE.OUTPUT.SIGMA    OUTPUT {OUTPUT}.sigma.fits               IMAGE     NONE       CHIP       TRUE      NONE
@@ -235,5 +239,5 @@
 PSPHOT.CHISQ.MASK       OUTPUT {OUTPUT}.{CHIP.NAME}.chisq.mk.fits MASK     NONE       FPA        TRUE      SIMPLE
 PSPHOT.CHISQ.VARIANCE   OUTPUT {OUTPUT}.{CHIP.NAME}.chisq.wt.fits VARIANCE NONE       FPA        TRUE      SIMPLE
-PSPHOT.STACK.OUTPUT     OUTPUT {OUTPUT}.{CHIP.NAME}.{FILE.ID}.cmf CMF      NONE       FPA        TRUE      NONE
+PSPHOT.STACK.OUTPUT     OUTPUT {OUTPUT}.{CHIP.NAME}.sky.{FILE.ID}.cmf CMF      NONE       FPA        TRUE      NONE
                                                      
 SOURCE.PLOT.MOMENTS     OUTPUT {OUTPUT}.mnt.png                  KAPA      NONE       FPA        TRUE      NONE
@@ -307,11 +311,14 @@
 PPSTACK.CONFIG          OUTPUT {OUTPUT}.ppStack.mdc              TEXT      NONE       FPA        TRUE      NONE
                                                                                      
-PPSTAMP.OUTPUT          OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   FPA        TRUE      NONE
-PPSTAMP.OUTPUT.DIFF     OUTPUT {OUTPUT}.fits                     IMAGE     COMP_SUB   FPA        TRUE      NONE
-PPSTAMP.OUTPUT.MASK     OUTPUT {OUTPUT}.mk.fits                  MASK      COMP_MASK  FPA        TRUE      NONE
-PPSTAMP.OUTPUT.VARIANCE OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    FPA        TRUE      NONE
-PPSTAMP.OUTPUT.JPEG     OUTPUT {OUTPUT}.jpg                      JPEG      NONE       FPA        TRUE      NONE
-PPSTAMP.OUTPUT.JPEG.FLIP OUTPUT {OUTPUT}.jpg                     JPEG      NONE       FPA        TRUE      NONE
-PPSTAMP.CHIP.MEF        OUTPUT {OUTPUT}.ch.fits                  IMAGE     NONE       CHIP       FALSE     MEF
+PPSTAMP.OUTPUT                 OUTPUT {OUTPUT}.fits              IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPSTAMP.OUTPUT.NOCOMP          OUTPUT {OUTPUT}.fits              IMAGE     NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.DIFF            OUTPUT {OUTPUT}.fits              IMAGE     COMP_SUB   FPA        TRUE      NONE
+PPSTAMP.OUTPUT.DIFF.NOCOMP     OUTPUT {OUTPUT}.fits              IMAGE     NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.MASK            OUTPUT {OUTPUT}.mk.fits           MASK      COMP_MASK  FPA        TRUE      NONE
+PPSTAMP.OUTPUT.MASK.NOCMOP     OUTPUT {OUTPUT}.mk.fits           MASK      NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.VARIANCE        OUTPUT {OUTPUT}.wt.fits           VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSTAMP.OUTPUT.VARIANCE.NOCOMP OUTPUT {OUTPUT}.wt.fits           VARIANCE  NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.JPEG            OUTPUT {OUTPUT}.jpg               JPEG      NONE       FPA        TRUE      NONE
+PPSTAMP.CHIP.MEF               OUTPUT {OUTPUT}.ch.fits           IMAGE     NONE       CHIP       FALSE     MEF
                                                                                      
 PPSIM.OUTPUT.MEF        OUTPUT {OUTPUT}.fits                     IMAGE     NONE       CHIP       TRUE      NONE
Index: branches/meh_branches/ppstack_test/ippconfig/recipes/filerules-simple.mdc
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/recipes/filerules-simple.mdc	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/recipes/filerules-simple.mdc	(revision 34041)
@@ -23,6 +23,8 @@
 PPIMAGE.INPUT.SRC         INPUT    @FILES        READOUT    CMF       
 PPIMAGE.MASK              INPUT    @DETDB        CHIP       MASK
+PPIMAGE.VIDEOMASK         INPUT    @DETDB        CHIP       MASK
 PPIMAGE.BIAS              INPUT    @DETDB        CHIP       IMAGE     
 PPIMAGE.DARK              INPUT    @DETDB        CHIP       DARK     
+PPIMAGE.VIDEODARK         INPUT    @DETDB        CHIP       DARK
 PPIMAGE.FLAT              INPUT    @DETDB        CHIP       IMAGE     
 PPIMAGE.FRINGE            INPUT    @DETDB        CHIP       FRINGE
@@ -56,4 +58,5 @@
 PSPHOT.INPUT.CMF          INPUT    @FILES        CHIP       CMF       
 PSPHOT.INPUT.TEXT         INPUT    @FILES        CHIP       SRCTEXT       
+PSPHOT.EXPNUM             INPUT    @FILES        CHIP       MASK
 
 ## files used by psphotStack
@@ -179,4 +182,5 @@
 PPMERGE.OUTPUT.SHUTTER       OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      SIMPLE
 PPMERGE.OUTPUT.FLAT          OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      SIMPLE
+PPMERGE.OUTPUT.NOISEMAP      OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      SIMPLE
 PPMERGE.OUTPUT.FRINGE        OUTPUT {OUTPUT}.fits                 FRINGE          NONE       FPA        TRUE      SIMPLE
 PPMERGE.OUTPUT.SIGMA         OUTPUT {OUTPUT}.sigma.fits           IMAGE           NONE       FPA        TRUE      SIMPLE
@@ -212,8 +216,8 @@
 PSPHOT.CHISQ.MASK            OUTPUT {OUTPUT}.chisq.mk.fits        MASK            NONE       FPA        TRUE      NONE
 PSPHOT.CHISQ.VARIANCE        OUTPUT {OUTPUT}.chisq.wt.fits        VARIANCE        NONE       FPA        TRUE      NONE
-PSPHOT.STACK.OUTPUT.IMAGE    OUTPUT {OUTPUT}.{FILE.ID}.im.fits    IMAGE           NONE       FPA        TRUE      NONE
-PSPHOT.STACK.OUTPUT.MASK     OUTPUT {OUTPUT}.{FILE.ID}.mk.fits    MASK            NONE       FPA        TRUE      NONE
-PSPHOT.STACK.OUTPUT.VARIANCE OUTPUT {OUTPUT}.{FILE.ID}.wt.fits    VARIANCE        NONE       FPA        TRUE      NONE
-PSPHOT.STACK.OUTPUT          OUTPUT {OUTPUT}.{FILE.ID}.cmf        CMF             NONE       FPA        TRUE      NONE
+PSPHOT.STACK.OUTPUT.IMAGE    OUTPUT {OUTPUT}.stk.{FILE.ID}.im.fits    IMAGE           NONE       FPA        TRUE      NONE
+PSPHOT.STACK.OUTPUT.MASK     OUTPUT {OUTPUT}.stk.{FILE.ID}.mk.fits    MASK            NONE       FPA        TRUE      NONE
+PSPHOT.STACK.OUTPUT.VARIANCE OUTPUT {OUTPUT}.stk.{FILE.ID}.wt.fits    VARIANCE        NONE       FPA        TRUE      NONE
+PSPHOT.STACK.OUTPUT          OUTPUT {OUTPUT}.stk.{FILE.ID}.cmf        CMF             NONE       FPA        TRUE      NONE
                                                      
 SOURCE.PLOT.MOMENTS          OUTPUT {OUTPUT}.mnt.png              KAPA            NONE       FPA        TRUE      NONE
@@ -287,11 +291,14 @@
 PPSTACK.CONFIG               OUTPUT {OUTPUT}.ppStack.mdc          TEXT            NONE       FPA        TRUE      NONE
                                              
-PPSTAMP.OUTPUT               OUTPUT {OUTPUT}.fits                 IMAGE           COMP_IMG   FPA        TRUE      NONE
-PPSTAMP.OUTPUT.DIFF          OUTPUT {OUTPUT}.fits                 IMAGE           COMP_SUB   FPA        TRUE      NONE
-PPSTAMP.OUTPUT.MASK          OUTPUT {OUTPUT}.mk.fits              MASK            COMP_MASK  FPA        TRUE      NONE
-PPSTAMP.OUTPUT.VARIANCE      OUTPUT {OUTPUT}.wt.fits              VARIANCE        COMP_WT    FPA        TRUE      NONE
-PPSTAMP.OUTPUT.JPEG          OUTPUT {OUTPUT}.jpg                  JPEG            NONE       FPA        TRUE      NONE
-PPSTAMP.OUTPUT.JPEG.FLIP     OUTPUT {OUTPUT}.jpg                  JPEG            NONE       FPA        TRUE      NONE
-PPSTAMP.CHIP                 OUTPUT {OUTPUT}.ch.fits              IMAGE           NONE       CHIP       FALSE     NONE
+PPSTAMP.OUTPUT                 OUTPUT {OUTPUT}.fits              IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPSTAMP.OUTPUT.NOCOMP          OUTPUT {OUTPUT}.fits              IMAGE     NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.DIFF            OUTPUT {OUTPUT}.fits              IMAGE     COMP_SUB   FPA        TRUE      NONE
+PPSTAMP.OUTPUT.DIFF.NOCOMP     OUTPUT {OUTPUT}.fits              IMAGE     NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.MASK            OUTPUT {OUTPUT}.mk.fits           MASK      COMP_MASK  FPA        TRUE      NONE
+PPSTAMP.OUTPUT.MASK.NOCMOP     OUTPUT {OUTPUT}.mk.fits           MASK      NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.VARIANCE        OUTPUT {OUTPUT}.wt.fits           VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSTAMP.OUTPUT.VARIANCE.NOCOMP OUTPUT {OUTPUT}.wt.fits           VARIANCE  NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.JPEG            OUTPUT {OUTPUT}.jpg               JPEG      NONE       FPA        TRUE      NONE
+PPSTAMP.CHIP.MEF               OUTPUT {OUTPUT}.ch.fits           IMAGE     NONE       CHIP       FALSE     MEF
                                                      
 PPSIM.OUTPUT                 OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      SIMPLE
Index: branches/meh_branches/ppstack_test/ippconfig/recipes/filerules-split.mdc
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/recipes/filerules-split.mdc	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/recipes/filerules-split.mdc	(revision 34041)
@@ -36,4 +36,5 @@
 PPIMAGE.INPUT             INPUT    @FILES        CHIP       IMAGE
 PPIMAGE.INPUT.MASK        INPUT    @FILES        CHIP       MASK
+PPIMAGE.VIDEOMASK         INPUT    @DETDB        CHIP       MASK
 PPIMAGE.INPUT.VARIANCE    INPUT    @FILES        CHIP       VARIANCE
 PPIMAGE.INPUT.PSF         INPUT    @FILES        CHIP       PSF
@@ -43,4 +44,5 @@
 PPIMAGE.NOISEMAP          INPUT    @DETDB        CHIP       IMAGE
 PPIMAGE.DARK              INPUT    @DETDB        CHIP       DARK
+PPIMAGE.VIDEODARK         INPUT    @DETDB        CHIP       DARK
 PPIMAGE.FLAT              INPUT    @DETDB        CHIP       IMAGE
 PPIMAGE.FRINGE            INPUT    @DETDB        CHIP       FRINGE
@@ -74,4 +76,5 @@
 PSPHOT.INPUT.CMF          INPUT    @FILES        CHIP       CMF       
 PSPHOT.INPUT.TEXT         INPUT    @FILES        CHIP       SRCTEXT       
+PSPHOT.EXPNUM             INPUT    @FILES        CHIP       EXPNUM
 
 ## files used by psphotStack
@@ -79,8 +82,10 @@
 PSPHOT.STACK.MASK.RAW     INPUT    @FILES        CHIP       MASK     
 PSPHOT.STACK.VARIANCE.RAW INPUT    @FILES        CHIP       VARIANCE     
+PSPHOT.STACK.EXPNUM.RAW   INPUT    @FILES        CHIP       EXPNUM     
 PSPHOT.STACK.PSF.RAW      INPUT    @FILES        CHIP       PSF       
 PSPHOT.STACK.INPUT.CNV    INPUT    @FILES        CHIP       IMAGE
 PSPHOT.STACK.MASK.CNV     INPUT    @FILES        CHIP       MASK     
 PSPHOT.STACK.VARIANCE.CNV INPUT    @FILES        CHIP       VARIANCE     
+PSPHOT.STACK.EXPNUM.CNV   INPUT    @FILES        CHIP       EXPNUM     
 PSPHOT.STACK.PSF.CNV      INPUT    @FILES        CHIP       PSF       
 PSPHOT.STACK.SOURCES      INPUT    @FILES        FPA        CMF
@@ -197,4 +202,5 @@
 PPMERGE.OUTPUT.SHUTTER       OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
 PPMERGE.OUTPUT.FLAT          OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.NOISEMAP      OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
 PPMERGE.OUTPUT.FRINGE        OUTPUT {OUTPUT}.{CHIP.NAME}.fits         FRINGE          NONE       CELL       TRUE      NONE
 PPMERGE.OUTPUT.SIGMA         OUTPUT {OUTPUT}.{CHIP.NAME}.sigma.fits   IMAGE           NONE       CELL       TRUE      NONE
@@ -229,8 +235,8 @@
 PSPHOT.CHISQ.MASK            OUTPUT {OUTPUT}.chisq.mk.fits            MASK            NONE       FPA        TRUE      NONE
 PSPHOT.CHISQ.VARIANCE        OUTPUT {OUTPUT}.chisq.wt.fits            VARIANCE        NONE       FPA        TRUE      NONE
-PSPHOT.STACK.OUTPUT.IMAGE    OUTPUT {OUTPUT}.{FILE.ID}.im.fits        IMAGE           NONE       FPA        TRUE      NONE
-PSPHOT.STACK.OUTPUT.MASK     OUTPUT {OUTPUT}.{FILE.ID}.mk.fits        MASK            NONE       FPA        TRUE      NONE
-PSPHOT.STACK.OUTPUT.VARIANCE OUTPUT {OUTPUT}.{FILE.ID}.wt.fits        VARIANCE        NONE       FPA        TRUE      NONE
-PSPHOT.STACK.OUTPUT          OUTPUT {OUTPUT}.{FILE.ID}.cmf            CMF             NONE       FPA        TRUE      NONE
+PSPHOT.STACK.OUTPUT.IMAGE    OUTPUT {OUTPUT}.stk.{FILE.ID}.im.fits        IMAGE           NONE       FPA        TRUE      NONE
+PSPHOT.STACK.OUTPUT.MASK     OUTPUT {OUTPUT}.stk.{FILE.ID}.mk.fits        MASK            NONE       FPA        TRUE      NONE
+PSPHOT.STACK.OUTPUT.VARIANCE OUTPUT {OUTPUT}.stk.{FILE.ID}.wt.fits        VARIANCE        NONE       FPA        TRUE      NONE
+PSPHOT.STACK.OUTPUT          OUTPUT {OUTPUT}.stk.{FILE.ID}.cmf            CMF             NONE       FPA        TRUE      NONE
 PSPHOT.STACK.CONFIG          OUTPUT {OUTPUT}.psphotStack.mdc          TEXT            NONE       FPA        TRUE      NONE
                                                      
@@ -319,9 +325,12 @@
 
 PPSTAMP.OUTPUT               OUTPUT {OUTPUT}.fits                     IMAGE           COMP_IMG   FPA        TRUE      NONE
+PPSTAMP.OUTPUT.NOCOMP        OUTPUT {OUTPUT}.fits                     IMAGE           NONE       FPA        TRUE      NONE
 PPSTAMP.OUTPUT.DIFF          OUTPUT {OUTPUT}.fits                     IMAGE           COMP_SUB   FPA        TRUE      NONE
+PPSTAMP.OUTPUT.DIFF.NOCOMP   OUTPUT {OUTPUT}.fits                     IMAGE           NONE       FPA        TRUE      NONE
 PPSTAMP.OUTPUT.MASK          OUTPUT {OUTPUT}.mk.fits                  MASK            COMP_MASK  FPA        TRUE      NONE
+PPSTAMP.OUTPUT.MASK.NOCOMP   OUTPUT {OUTPUT}.mk.fits                  MASK            NONE       FPA        TRUE      NONE
 PPSTAMP.OUTPUT.VARIANCE      OUTPUT {OUTPUT}.wt.fits                  VARIANCE        COMP_WT    FPA        TRUE      NONE
-PPSTAMP.OUTPUT.JPEG         OUTPUT {OUTPUT}.jpg                      JPEG            NONE       FPA        TRUE      NONE
-PPSTAMP.OUTPUT.JPEG.FLIP    OUTPUT {OUTPUT}.jpg                      JPEG            NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.VARIANCE.NOCOMP OUTPUT {OUTPUT}.wt.fits                VARIANCE        NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.JPEG          OUTPUT {OUTPUT}.jpg                      JPEG            NONE       FPA        TRUE      NONE
 # mosaic image used for making stamps of raw images. Not saved.
 PPSTAMP.CHIP                 OUTPUT {OUTPUT}.ch.fits                  IMAGE           NONE       CHIP       FALSE     MEF
Index: branches/meh_branches/ppstack_test/ippconfig/recipes/jpeg.mdc
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/recipes/jpeg.mdc	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/recipes/jpeg.mdc	(revision 34041)
@@ -236,4 +236,21 @@
 	END
 END
+NOISEMAP	METADATA
+	PPIMAGE.JPEG1		 METADATA
+		COLORMAP	STR	rainbow
+		SCALE.MODE	STR	VALUE
+		SCALE.MIN	F32	0.0
+		SCALE.MAX	F32	10.0
+		OPTIONS		STR	+SB,-X,+Y
+	END
+
+	PPIMAGE.JPEG2		 METADATA
+		COLORMAP	STR	rainbow
+		SCALE.MODE	STR	VALUE
+		SCALE.MIN	F32	0.0
+		SCALE.MAX	F32	10.0
+		OPTIONS		STR	-SB,-X,+Y
+	END
+END
 
 
Index: branches/meh_branches/ppstack_test/ippconfig/recipes/ppImage.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/recipes/ppImage.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/recipes/ppImage.config	(revision 34041)
@@ -36,4 +36,5 @@
 BACKGROUND         BOOL    FALSE           # Subtract model background?
 CHECK.CTE          BOOL    FALSE           # measure CTE errors?
+CHECK.NOISE        BOOL    FALSE         
 USE.DEBURNED.IMAGE BOOL    FALSE           # use burntool-repaired image?
 USE.BEST.BURNTOOL  BOOL    FALSE           # require the best burntooled data
@@ -110,5 +111,5 @@
 PATTERN.ROW.MEAN       STR     SAMPLE_MEAN     # Statistic for mean for row pattern
 PATTERN.ROW.STDEV      STR     SAMPLE_STDEV    # Statistic for standard deviation for row pattern
-PATTERN.CELL.BG	       STR     ROBUST_MEDIAN   # Statistic for background for cell pattern
+PATTERN.CELL.BG	       STR     FITTED_MEAN     # Statistic for background for cell pattern
 PATTERN.CELL.MEAN      STR     SAMPLE_MEDIAN   # Statistic for mean for cell pattern
 
@@ -131,4 +132,7 @@
 CTE.YBIN                S32     20
 
+NOISE.XBIN		S32     20
+NOISE.YBIN		S32	20
+
 PPIMAGE.JPEG1  METADATA
   COLORMAP      STR     -greyscale
@@ -149,4 +153,9 @@
 
 GAIN.OVERRIDE	BOOL	FALSE		# Override a non-finite gain?
+
+# Final detrending options 
+HAS.VIDEO       BOOL    FALSE           # Treat this OTA as if it has video data
+USE.VIDEO.DARK  BOOL    FALSE           # Use a video dark if we have video data?
+USE.VIDEO.MASK  BOOL    FALSE           # Use a video mask if we have video data?
 
 DETREND.CONSTRAINTS  METADATA
@@ -244,4 +253,28 @@
 END
  
+CHIP_NOISEMAP	METADATA
+  BASE.FITS          BOOL    FALSE           # Save base detrended image?
+  BASE.MASK.FITS     BOOL    FALSE           # Save base detrended image?
+  BASE.VARIANCE.FITS BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS          BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.MASK.FITS     BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL    TRUE            # Save chip-mosaic-ed image? 
+  OVERSCAN           BOOL    TRUE            # Overscan subtraction
+  NONLIN             BOOL    FALSE           # Non-linearity correction; not implemented
+  NOISEMAP	     BOOL    TRUE
+  BIAS               BOOL    TRUE            # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    TRUE            # Mask bad pixels
+  FRINGE             BOOL    TRUE            # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  BACKGROUND         BOOL    TRUE            # Subtract background?
+  MASK.STATS         BOOL    TRUE            # Calculate Mask statistics.
+END
 
 
@@ -1872,4 +1905,65 @@
   END   
 END
+
+PPIMAGE_NOISEMAP     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base image?
+  BASE.MASK.FITS   BOOL    TRUE            # Save base detrended image?
+  BASE.VARIANCE.FITS BOOL  TRUE            # Save base detrended image?
+  CHIP.FITS        BOOL    FALSE           # Save chip-mosaic-ed image? 
+  CHIP.MASK.FITS   BOOL    FALSE           # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL  FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN         BOOL    TRUE            # Overscan subtraction
+  NONLIN             BOOL    FALSE           # Non-linearity correction; not implemented
+  BIAS             BOOL    FALSE            # Bias subtraction
+  DARK             BOOL    FALSE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  MASK.BUILD       BOOL    FALSE 	   # Build internal mask?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PHOTOM           BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+  CHECK.CTE        BOOL    FALSE            # measure CTE errors?
+  CHECK.NOISE      BOOL    TRUE            # measure cell level noise.
+
+#   DETREND.CONSTRAINTS  METADATA
+#     DARK METADATA
+#       DETTYPE STR DARK_PREMASK
+#       EXPTIME STR FPA.EXPOSURE
+#     END
+#     FLAT METADATA
+#       DETTYPE STR FLAT_PREMASK
+#       FILTER  STR FPA.FILTERID
+#     END
+#   END   
+END
+PPIMAGE_NM          METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended image?
+  BASE.MASK.FITS   BOOL    FALSE           # Save base detrended image?
+  BASE.VARIANCE.FITS BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS        BOOL    FALSE           # Save chip-mosaic-ed image? 
+  CHIP.MASK.FITS   BOOL    FALSE           # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  NONLIN           BOOL    FALSE           # Non-linearity correction; not implemented
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD       BOOL    FALSE	   # Build internal mask?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PHOTOM           BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+  NOISEMAP	   BOOL    TRUE
+  CHECK.NOISE	   BOOL	   TRUE
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+END
+
 
 # For SDSS cameras
@@ -2108,2 +2202,81 @@
   END
 END
+
+# test recipes (not necessarily consistent over time)
+# currently: default CHIP recipe
+APTEST_V1	METADATA
+  BASE.FITS          BOOL    FALSE           # Save base detrended image?
+  BASE.MASK.FITS     BOOL    FALSE           # Save base detrended image?
+  BASE.VARIANCE.FITS BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS          BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.MASK.FITS     BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL    TRUE            # Save chip-mosaic-ed image? 
+  OVERSCAN           BOOL    TRUE            # Overscan subtraction
+  NONLIN             BOOL    FALSE           # Non-linearity correction; not implemented
+  BIAS               BOOL    TRUE            # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    TRUE            # Mask bad pixels
+  FRINGE             BOOL    TRUE            # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  BACKGROUND         BOOL    TRUE            # Subtract background?
+  MASK.STATS         BOOL    TRUE            # Calculate Mask statistics.
+END
+
+# test recipes (not necessarily consistent over time)
+# currently: default CHIP recipe
+APTEST_V2	METADATA
+  BASE.FITS          BOOL    FALSE           # Save base detrended image?
+  BASE.MASK.FITS     BOOL    FALSE           # Save base detrended image?
+  BASE.VARIANCE.FITS BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS          BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.MASK.FITS     BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL    TRUE            # Save chip-mosaic-ed image? 
+  OVERSCAN           BOOL    TRUE            # Overscan subtraction
+  NONLIN             BOOL    FALSE           # Non-linearity correction; not implemented
+  BIAS               BOOL    TRUE            # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    TRUE            # Mask bad pixels
+  FRINGE             BOOL    TRUE            # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  BACKGROUND         BOOL    TRUE            # Subtract background?
+  MASK.STATS         BOOL    TRUE            # Calculate Mask statistics.
+END
+
+# test recipes (not necessarily consistent over time)
+# currently: default CHIP recipe
+APTEST_V3	METADATA
+  BASE.FITS          BOOL    FALSE           # Save base detrended image?
+  BASE.MASK.FITS     BOOL    FALSE           # Save base detrended image?
+  BASE.VARIANCE.FITS BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS          BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.MASK.FITS     BOOL    TRUE            # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL    TRUE            # Save chip-mosaic-ed image? 
+  OVERSCAN           BOOL    TRUE            # Overscan subtraction
+  NONLIN             BOOL    FALSE           # Non-linearity correction; not implemented
+  BIAS               BOOL    TRUE            # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    TRUE            # Mask bad pixels
+  FRINGE             BOOL    TRUE            # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  BACKGROUND         BOOL    TRUE            # Subtract background?
+  MASK.STATS         BOOL    TRUE            # Calculate Mask statistics.
+END
+
Index: branches/meh_branches/ppstack_test/ippconfig/recipes/ppMerge.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/recipes/ppMerge.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/recipes/ppMerge.config	(revision 34041)
@@ -123,4 +123,12 @@
 END
 
+
+PPMERGE_NOISEMAP METADATA
+        REJ            F32      3.0
+        ITER           S32      2
+	VARIANCES      BOOL	FALSE
+	COMBINE        STR      MEAN
+END
+
 # Shutter generation --- already included in default, above
 PPMERGE_SHUTTER METADATA
Index: branches/meh_branches/ppstack_test/ippconfig/recipes/ppSub.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/recipes/ppSub.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/recipes/ppSub.config	(revision 34041)
@@ -85,5 +85,5 @@
 # Recipe overrides for STACK
 STACK	METADATA
-	SYS.ERR		F32	0.0	 # current use of SYS.ERR not appropriate for stacks
+	SYS.ERR         F32     0.0      # current use of SYS.ERR not appropriate for stacks
 END
 
Index: branches/meh_branches/ppstack_test/ippconfig/recipes/psastro.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/recipes/psastro.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/recipes/psastro.config	(revision 34041)
@@ -254,6 +254,11 @@
 END
 
-LAP_ASTRO METADATA
-  
+LAP_ASTRO METADATA 
+END
+
+SYNTH_CAT METADATA
+END
+
+TEST_REFCAT METADATA
 END
 
Index: branches/meh_branches/ppstack_test/ippconfig/recipes/psphot.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/recipes/psphot.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/recipes/psphot.config	(revision 34041)
@@ -38,4 +38,5 @@
 SKY_CLIP_SIGMA                      F32   2.0             # statistic used to measure background
 SKY_SIG                             F32   1.0             # optional sky error for 
+SKY_SLOPE_MIN                       F32   3.0             # exit radial profile loop when abs(slope) is less than this
 
 # allowed values for SKY_STAT: 
@@ -57,4 +58,6 @@
 PEAKS_POS2_NSIGMA_LIMIT             F32   25.0            # peak signficance threshold for POS2 sources. (ppSub)
 				    	  		  # input pixels contribute less than this fraction of the flux
+PEAKS_NMAX_TOTAL                    S32   0               # maximum allowed number of peaks 0 == unlimited
+
 # parameters which adjust the footprint analysis
 USE_FOOTPRINTS                      BOOL  TRUE       	  # use new pmFootprint peak packaging
@@ -65,4 +68,5 @@
 FOOTPRINT_CULL_NSIGMA_MIN           F32   1       	  # Minimum height of colls in units of skyStdev
 FOOTPRINT_CULL_NSIGMA_PAD           F32   0.01       	  # Fractional Padding for stdev
+FOOTPRINT_USE_UNSUBTRACTED          BOOL  TRUE            # find footprints without sources subtracted
 
 # parameter for the simple deblending
@@ -159,5 +163,5 @@
  
 # this model is used for approximate subtraction in the main object analysis step
-EXT_MODEL                           STR   PS_MODEL_SERSIC
+EXT_MODEL                           STR   PS_MODEL_GAUSS
 EXT_FIT_NSIGMA                      F32   1               # significance for pixel included in fit
 EXT_FIT_PADDING                     F32   5               # extra annulus to use for fit 
@@ -184,4 +188,12 @@
 EXTENDED_SOURCE_KRON                BOOL  FALSE
 PETROSIAN_FOR_STARS                 BOOL  FALSE
+
+KRON_ITERATIONS                     S32   2
+KRON_APPLY_WEIGHT                   BOOL  FALSE
+KRON_APPLY_WINDOW                   BOOL  FALSE
+KRON_SMOOTH                         BOOL  TRUE      # smooth pixels before measuring kron radii
+KRON_SMOOTH_SIGMA                   F32   1.7
+KRON_SMOOTH_NSIGMA                  S32   2
+KRON_SB_MIN_FACTOR                  F32   2
 
 # Extended source fit parameters
@@ -261,4 +273,9 @@
 POISSON.ERRORS.PARAMS               BOOL  TRUE
 
+# psphotFitSourcesLinear has 3 options for the weighting: CONSTANT,
+# IMAGE_VAR, MODEL_VA the first of these used to be folded into the
+# boolean CONSTANT_PHOTOMETRIC_WEIGHTS above.
+LINEAR_FIT_VARIANCE_MODE	    STR  CONSTANT
+
 PCM_BOX_SIZE                        S32   8
 
@@ -348,5 +365,8 @@
   PSPHOT.STACK.MATCH.PSF.SOURCE       STR   AUTO # which inputs to convolve? (RAW, CNV, AUTO)
   PSPHOT.STACK.TARGET.PSF.AUTO        BOOL  F    # automatically determine target PSF size?
-  PSPHOT.STACK.USE.RAW                BOOL  F    # perform photometry & morphology analysis on the raw image
+  # NOTE: if PSPHOT.STACK.USE.RAW is set to False, KRON.SMOOTH should be
+  # set to false as well in order to get the best MOMENTS_R1 measurement
+  PSPHOT.STACK.USE.RAW                BOOL  T    # perform photometry & morphology analysis on the raw image
+  KRON_SMOOTH                         BOOL  T    # smooth before kron radius measurement
   @PSPHOT.STACK.TARGET.PSF.FWHM       F32   6.0 8.0 # FWHM of target PSF (if NOT AUTO sized; pixels)
   RADIAL_APERTURES                    BOOL  T    # calculate flux in circular radial apertures?
@@ -359,6 +379,7 @@
 
   EXT_FIT_MAX_RADIUS                  F32   50.0
-  PSF_MODEL                           STR   PS_MODEL_GAUSS 
+  PSF_MODEL                           STR   PS_MODEL_PS1_V1 
   EXT_MODEL                           STR   PS_MODEL_QGAUSS
+  PEAKS_NMAX_TOTAL                    S32   50000 # maximum allowed number of peaks - To avoid memory explosion
 END
 
@@ -439,39 +460,21 @@
 # Extended source fit parameters
 APTEST_V1                     METADATA
-  OUTPUT.FORMAT                       STR   PS1_V3
-
-  # CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE
-  # POISSON.ERRORS.PHOT.LMM             BOOL  FALSE
   CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  FALSE
   POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
-
-  PSF_APERTURE_SCALE                  F32   4.5
-  PSF_REF_RADIUS                      F32   25
+  SKY_STAT                            STR   FITTED_MEAN
 END
 
 # Extended source fit parameters
 APTEST_V2                     METADATA
-  OUTPUT.FORMAT                       STR   PS1_V3
-
-  # CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE
-  # POISSON.ERRORS.PHOT.LMM             BOOL  FALSE
   CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  FALSE
   POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
-
-  PSF_APERTURE_SCALE                  F32   4.5
-  PSF_REF_RADIUS                      F32   30
+  SKY_STAT                            STR   ROBUST_MEDIAN
 END
 
 # Extended source fit parameters
 APTEST_V3                     METADATA
-  OUTPUT.FORMAT                       STR   PS1_V3
-
-  # CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE
-  # POISSON.ERRORS.PHOT.LMM             BOOL  FALSE
-  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  FALSE
+  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE
   POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
-
-  PSF_APERTURE_SCALE                  F32   4.5
-  PSF_REF_RADIUS                      F32   35
+  SKY_STAT                            STR   FITTED_MEAN
 END
 
Index: branches/meh_branches/ppstack_test/ippconfig/recipes/reductionClasses.mdc
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/recipes/reductionClasses.mdc	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/recipes/reductionClasses.mdc	(revision 34041)
@@ -140,4 +140,11 @@
 	FRINGE_JPEG_IMAGE	STR	FRINGE
 	FRINGE_JPEG_RESID	STR	FRINGE_RESID
+
+	NOISEMAP_PROCESS        STR     PPIMAGE_NOISEMAP
+ 	NOISEMAP_RESID          STR     PPIMAGE_NM
+	NOISEMAP_VERIFY		STR	PPIMAGE_NM
+	NOISEMAP_STACK		STR	PPMERGE_NOISEMAP
+	NOISEMAP_JPEG_IMAGE	STR	NOISEMAP
+	NOISEMAP_JPEG_RESID	STR	NOISEMAP
 END
 
@@ -171,5 +178,5 @@
 # basic science analysis
 APTEST_V1		METADATA
-	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PPIMAGE	  STR	  APTEST_V1
 	CHIP_PSPHOT	  STR	  APTEST_V1
 	PSASTRO		  STR	  DEFAULT_RECIPE
@@ -180,5 +187,5 @@
 # basic science analysis
 APTEST_V2		METADATA
-	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PPIMAGE	  STR	  APTEST_V2
 	CHIP_PSPHOT	  STR	  APTEST_V2
 	PSASTRO		  STR	  DEFAULT_RECIPE
@@ -189,5 +196,5 @@
 # basic science analysis
 APTEST_V3		METADATA
-	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PPIMAGE	  STR	  APTEST_V3
 	CHIP_PSPHOT	  STR	  APTEST_V3
 	PSASTRO		  STR	  DEFAULT_RECIPE
@@ -219,4 +226,29 @@
 END
 
+DEFAULT_SYNTHCAT		METADATA
+	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PSPHOT	  STR	  CHIP
+	WARP_PSWARP	  STR	  WARP
+	STACK_PPSTACK	  STR	  STACK
+	STACK_PPSUB	  STR	  STACK
+	STACK_PSPHOT	  STR	  STACK
+	DIFF_PPSUB	  STR	  DIFF
+	DIFF_PSPHOT	  STR	  DIFF
+	JPEG_BIN1	  STR	  PPIMAGE_J1
+	JPEG_BIN2	  STR	  PPIMAGE_J2
+	FAKEPHOT	  STR	  FAKEPHOT
+	ADDSTAR		  STR	  ADDSTAR
+	PSASTRO		  STR	  SYNTH_CAT
+	STACKPHOT_PSPHOT  STR     STACKPHOT
+	STACKPHOT_PPSUB   STR     STACKPHOT
+	STACKPHOT_PPSTACK STR     STACKPHOT
+	STACKPHOT_SINGLE_PSPHOT  STR     STACKPHOT_SINGLE
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+        PSVIDEOPHOT             STR     PSVIDEOPHOT
+        STATICSKY_CALIBRATION   STR     STATICSKY_CAL
+END
+
+
 # Sweetspot reduction class
 SWEETSPOT		METADATA
@@ -311,4 +343,30 @@
  	BACKGROUND_PSWARP	STR	BACKGROUND
 END
+
+DEFAULT_NMTEST		METADATA
+	CHIP_PPIMAGE	  STR	  CHIP_NOISEMAP
+	CHIP_PSPHOT	  STR	  CHIP
+	WARP_PSWARP	  STR	  WARP
+	STACK_PPSTACK	  STR	  STACK
+	STACK_PPSUB	  STR	  STACK
+	STACK_PSPHOT	  STR	  STACK
+	DIFF_PPSUB	  STR	  DIFF
+	DIFF_PSPHOT	  STR	  DIFF
+	JPEG_BIN1	  STR	  PPIMAGE_J1
+	JPEG_BIN2	  STR	  PPIMAGE_J2
+	FAKEPHOT	  STR	  FAKEPHOT
+	ADDSTAR		  STR	  ADDSTAR
+	PSASTRO		  STR	  DEFAULT_RECIPE
+	STACKPHOT_PSPHOT  STR     STACKPHOT
+	STACKPHOT_PPSUB   STR     STACKPHOT
+	STACKPHOT_PPSTACK STR     STACKPHOT
+	STACKPHOT_SINGLE_PSPHOT  STR     STACKPHOT_SINGLE
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+        PSVIDEOPHOT             STR     PSVIDEOPHOT
+        STATICSKY_CALIBRATION   STR     STATICSKY_CAL
+END
+
+
 
 # SSTF tests
@@ -900,4 +958,28 @@
 END
 
+CNP_DATASET	METADATA
+	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PSPHOT	  STR	  CHIP
+	WARP_PSWARP	  STR	  WARP
+	STACK_PPSTACK	  STR	  STACK
+	STACK_PPSUB	  STR	  STACK
+	STACK_PSPHOT	  STR	  STACK
+	DIFF_PPSUB	  STR	  DIFF
+	DIFF_PSPHOT	  STR	  DIFF
+	JPEG_BIN1	  STR	  PPIMAGE_J1
+	JPEG_BIN2	  STR	  PPIMAGE_J2
+	FAKEPHOT	  STR	  FAKEPHOT
+	ADDSTAR		  STR	  ADDSTAR
+	PSASTRO		  STR	  CNP_DATASET
+	STACKPHOT_PSPHOT  STR     STACKPHOT
+	STACKPHOT_PPSUB   STR     STACKPHOT
+	STACKPHOT_PPSTACK STR     STACKPHOT
+	STACKPHOT_SINGLE_PSPHOT  STR     STACKPHOT_SINGLE
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+        PSVIDEOPHOT             STR     PSVIDEOPHOT
+        STATICSKY_CALIBRATION   STR     STATICSKY_CAL
+END
+
 # random user tests (may not be stable or consistent)
 TEST1 METADATA
@@ -919,2 +1001,26 @@
 END
     
+TEST_REFCAT		METADATA
+	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PSPHOT	  STR	  CHIP
+	WARP_PSWARP	  STR	  WARP
+	STACK_PPSTACK	  STR	  STACK
+	STACK_PPSUB	  STR	  STACK
+	STACK_PSPHOT	  STR	  STACK
+	DIFF_PPSUB	  STR	  DIFF
+	DIFF_PSPHOT	  STR	  DIFF
+	JPEG_BIN1	  STR	  PPIMAGE_J1
+	JPEG_BIN2	  STR	  PPIMAGE_J2
+	FAKEPHOT	  STR	  FAKEPHOT
+	ADDSTAR		  STR	  ADDSTAR
+	PSASTRO		  STR	  TEST_REFCAT
+	STACKPHOT_PSPHOT  STR     STACKPHOT
+	STACKPHOT_PPSUB   STR     STACKPHOT
+	STACKPHOT_PPSTACK STR     STACKPHOT
+	STACKPHOT_SINGLE_PSPHOT  STR     STACKPHOT_SINGLE
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+        PSVIDEOPHOT             STR     PSVIDEOPHOT
+        STATICSKY_CALIBRATION   STR     STATICSKY_CAL
+END
+
Index: branches/meh_branches/ppstack_test/ippconfig/recipes/rejections.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/recipes/rejections.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/recipes/rejections.config	(revision 34041)
@@ -459,4 +459,28 @@
 END
 
+NOISEMAP METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  0.0
+  IMFILE.STDEV       F32  0.0
+  IMFILE.MEANSTDEV   F32  0.0
+  IMFILE.SKEWNESS    F32  0.0
+  IMFILE.KURTOSIS    F32  0.0
+  IMFILE.SNR         F32  0.0
+  IMFILE.BIN.STDEV   F32  0.0
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  0.0
+  EXP.STDEV          F32  0.0
+  EXP.MEANSTDEV      F32  0.0
+  EXP.SNR            F32  0.0
+  EXP.BIN.STDEV      F32  0.0
+  EXP.BIN.SNR        F32  0.0
+  EXP.FLUX           F32  0.0
+  ENSEMBLE.MEAN      F32  0.0
+  ENSEMBLE.STDEV     F32  0.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
 # FILTER is an additional qualifier, and may be "*" (or absent!), in which case it matches everything
 # EXPECTED is the expected mean value
Index: branches/meh_branches/ppstack_test/ippconfig/sdssmosaic/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/sdssmosaic/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/sdssmosaic/camera.config	(revision 34041)
@@ -93,4 +93,5 @@
   CMF.XSRC STR cmf.xsrc
   CMF.XFIT STR cmf.xfit
+  CMF.XRAD STR cmf.xrad # use .PSF and .EXT?
   CMF.DETEFF STR cmf.deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/simmosaic/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/simmosaic/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/simmosaic/camera.config	(revision 34041)
@@ -72,4 +72,5 @@
         CMF.XSRC        STR     {CHIP.NAME}.xsrc # use .PSF and .EXT?
         CMF.XFIT        STR     {CHIP.NAME}.xfit # use .PSF and .EXT?
+        CMF.XRAD        STR     {CHIP.NAME}.xrad # use .PSF and .EXT?
         CMF.DETEFF      STR     {CHIP.NAME}.deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/simple/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/simple/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/simple/camera.config	(revision 34041)
@@ -58,4 +58,5 @@
   CMF.DATA STR psf
   CMF.XSRC STR xsrc
+  CMF.XRAD STR xrad
   CMF.XFIT STR xfit
   CMF.DETEFF STR deteff
Index: branches/meh_branches/ppstack_test/ippconfig/ssp/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/ssp/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/ssp/camera.config	(revision 34041)
@@ -59,4 +59,5 @@
   CMF.XSRC STR xsrc
   CMF.XFIT STR xfit
+  CMF.XRAD STR xrad
   CMF.DETEFF STR deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/ssp/format.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/ssp/format.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/ssp/format.config	(revision 34041)
@@ -5,4 +5,5 @@
 	SIMPLE		BOOL	TRUE
 ###	NAXIS		S32	2
+ 	DETECTOR	STR	rspiusb0
 END
 
Index: branches/meh_branches/ppstack_test/ippconfig/system.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/system.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/system.config	(revision 34041)
@@ -10,4 +10,5 @@
 	SDSS			STR	sdss/camera.config		# Sloan Digital Sky Survey
 	GPC1			STR	gpc1/camera.config		# Pan-STARRS GPC1
+	GPC1-TDI		STR	gpc1-tdi/camera.config		# Pan-STARRS GPC1 with TDI guiding
 	ESOWFI			STR	esowfi/camera.config		# ESO Wide-Field Imager
 	LBCRED                  STR     lbc_red/camera.config           # Large Binocular Camera Red
Index: branches/meh_branches/ppstack_test/ippconfig/tek/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/tek/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/tek/camera.config	(revision 34041)
@@ -60,4 +60,5 @@
   CMF.XSRC STR {CHIP.NAME}.xsrc # use .PSF and .EXT?
   CMF.XFIT STR {CHIP.NAME}.xfit # use .PSF and .EXT?
+  CMF.XRAD STR {CHIP.NAME}.xrad # use .PSF and .EXT?
   CMF.DETEFF STR {CHIP.NAME}.deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/uh8k/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/uh8k/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/uh8k/camera.config	(revision 34041)
@@ -70,4 +70,5 @@
   CMF.XSRC STR {CHIP.NAME}.xsrc # use .PSF and .EXT?
   CMF.XFIT STR {CHIP.NAME}.xfit # use .PSF and .EXT?
+  CMF.XRAD STR {CHIP.NAME}.xrad # use .PSF and .EXT?
   CMF.DETEFF STR {CHIP.NAME}.deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/vysos20/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/vysos20/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/vysos20/camera.config	(revision 34041)
@@ -63,4 +63,5 @@
   CMF.XSRC STR {CHIP.NAME}.xsrc # use .PSF and .EXT?
   CMF.XFIT STR {CHIP.NAME}.xfit # use .PSF and .EXT?
+  CMF.XRAD STR {CHIP.NAME}.xrad # use .PSF and .EXT?
   CMF.DETEFF STR {CHIP.NAME}.deteff
 
Index: branches/meh_branches/ppstack_test/ippconfig/vysos5/camera.config
===================================================================
--- branches/meh_branches/ppstack_test/ippconfig/vysos5/camera.config	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippconfig/vysos5/camera.config	(revision 34041)
@@ -63,4 +63,5 @@
   CMF.XSRC STR {CHIP.NAME}.xsrc # use .PSF and .EXT?
   CMF.XFIT STR {CHIP.NAME}.xfit # use .PSF and .EXT?
+  CMF.XRAD STR {CHIP.NAME}.xrad # use .PSF and .EXT?
   CMF.DETEFF STR {CHIP.NAME}.deteff
 
Index: branches/meh_branches/ppstack_test/ippdor/doc/Full/administration.tex
===================================================================
--- branches/meh_branches/ppstack_test/ippdor/doc/Full/administration.tex	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippdor/doc/Full/administration.tex	(revision 34041)
@@ -29,4 +29,23 @@
 \label{sec-adm-newnode}
 
+Log in as the \texttt{ippdor} user on any host of the cluster.
+
+To install the condor on any \texttt{host}, run:
+\begin{verbatim}
+ippdor@ippc18 ~ $ ssh <host> ./deploy_condor.sh
+\end{verbatim}
+
+\section{Starting Condor where it does not run}
+\label{sec-adm-start_condor}
+
+It's been a long time that Condor has not been used. We don't know
+where it runs and don't want to try to restart it where it does not
+run...
+
+Simply run (use auto-completion):
+\begin{verbatim}
+ippdor@ippc30 ~ $ start_condor_where_it_does_not_run.sh 
+\end{verbatim}
+
 \section{Updating Condor}
 \label{sec-adm-update}
Index: branches/meh_branches/ppstack_test/ippdor/doc/Full/ippdor.tex
===================================================================
--- branches/meh_branches/ppstack_test/ippdor/doc/Full/ippdor.tex	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippdor/doc/Full/ippdor.tex	(revision 34041)
@@ -9,6 +9,8 @@
 \usepackage{enumitem}
 
+\newcommand{\docversion}{0.2}
+
 \title{Condor in the IPP}
-\author{S.~Chastel\\Version 0.1}
+\author{S.~Chastel\\Version \docversion{}}
 \date{2011-11-23}
 
@@ -66,4 +68,5 @@
   \textbf{Version} & \textbf{Date} & \textbf{Comment} \\
   \hline
+  0.2 & 2012-04-17 & "Changing" the IPP section. Deployment. Starting where Condor doesn't run\\
   0.1 & 2011-11-23 & First draft \\
   \hline
Index: branches/meh_branches/ppstack_test/ippdor/doc/Full/link_ipp.tex
===================================================================
--- branches/meh_branches/ppstack_test/ippdor/doc/Full/link_ipp.tex	(revision 33597)
+++ branches/meh_branches/ppstack_test/ippdor/doc/Full/link_ipp.tex	(revision 34041)
@@ -2,3 +2,39 @@
 \label{chap-ipp}
 
-TODO
+\section{Changing the IPP}
+\label{sec-changing-ipp}
+
+\begin{enumerate}
+\item Checkout the new tag from the SVN repository in the dedicated
+  \texttt{ipp} directory, e.g. (for the ipp-20120404 tag):
+\begin{verbatim}
+ippdor@ippc18 ~ $ cd ipp
+ippdor@ippc18 ~/ipp $ svn co https://svn.pan-starrs.ifa.hawaii.edu/repo/ipp/tags/ipp-20120404
+\end{verbatim}
+\item Redefine (locally, that is, for the shell session where the IPP
+  will be compiled) the IPP version with the \texttt{psconfig} command, e.g.:
+\begin{verbatim}
+ippdor@ippc18 ~/ipp $ psconfig 20120404
+\end{verbatim}
+\item Compile and install the IPP as usual, e.g.:
+\begin{verbatim}
+ippdor@ippc18 ~/ipp $ cd ipp-20120404/psconfig
+ippdor@ippc18 ~/ipp $ ./psbuild -dev -extbuild
+\end{verbatim}
+\item Have a cup of coffee
+\item Change the symbolic links in the
+  \texttt{\$HOME/psconfig/20110920}\footnote{\texttt{20110920} is
+    related to the ippdor version and has nothing to do with the IPP
+    version} directory for \texttt{current} and
+  \texttt{current.lin64}, e.g.:
+\begin{verbatim}
+ippdor@ippc18 ~/ipp $ cd ~/psconfig/20110920
+ippdor@ippc18 ~/ipp $ rm current current.lin64
+ippdor@ippc18 ~/ipp $ ln -s 20120404.lin64 current
+ippdor@ippc18 ~/ipp $ ln -s 20120404.lin64 current.lin64
+\end{verbatim}
+\item Test it on a small sample of data! (even if you can already
+  check if the correct version is used with, for instance,
+  \texttt{ppImage --version})
+\end{enumerate}
+
Index: branches/meh_branches/ppstack_test/magic/censorObjects/src/censor.c
===================================================================
--- branches/meh_branches/ppstack_test/magic/censorObjects/src/censor.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/magic/censorObjects/src/censor.c	(revision 34041)
@@ -46,13 +46,26 @@
     }
 
-    // load the raw detection data (using PSPHOT.SOURCES filerule)
-    // select subset of stars for astrometry
-    if (!censorLoop (config)) {
-        psErrorStackPrint(stderr, "error loading input data\n");
-        psFree(config);
-        exit(PS_EXIT_DATA_ERROR);
+    bool status;
+    bool checkInputOnly = psMetadataLookupBool(&status, config->arguments, 
+        "CHECK.INPUT.ONLY");
+
+    if (!checkInputOnly) {
+        // load the raw detection data (using PSPHOT.SOURCES filerule)
+        // select subset of stars for astrometry
+        if (!censorLoop (config)) {
+            psErrorStackPrint(stderr, "error loading input data\n");
+            psFree(config);
+            exit(PS_EXIT_DATA_ERROR);
+        }
+
+        psLogMsg("censor", 3, "complete censor run: %f sec\n", psTimerMark ("complete"));
+    } else {
+        if (!checkInputLoop (config)) {
+            psErrorStackPrint(stderr, "error loading input data\n");
+            psFree(config);
+            exit(PS_EXIT_DATA_ERROR);
+        }
+        psLogMsg("censor", 3, "complete check input run: %f sec\n", psTimerMark ("complete"));
     }
-
-    psLogMsg("censor", 3, "complete censor run: %f sec\n", psTimerMark ("complete"));
 
     censorCleanup(config);
Index: branches/meh_branches/ppstack_test/magic/censorObjects/src/censor.h
===================================================================
--- branches/meh_branches/ppstack_test/magic/censorObjects/src/censor.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/magic/censorObjects/src/censor.h	(revision 34041)
@@ -31,4 +31,5 @@
 bool censorParseCamera (pmConfig *config);
 bool censorLoop (pmConfig *config);
+bool checkInputLoop (pmConfig *config);
 bool censorReadout (pmReadout *readout, pmConfig *config, const pmFPAview *view, bool badMaskFile);
 void censorCleanup (pmConfig *config);
Index: branches/meh_branches/ppstack_test/magic/censorObjects/src/censorArguments.c
===================================================================
--- branches/meh_branches/ppstack_test/magic/censorObjects/src/censorArguments.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/magic/censorObjects/src/censorArguments.c	(revision 34041)
@@ -32,4 +32,17 @@
     }
 
+    status = pmConfigFileSetsMD (config->arguments, &argc, argv, "INPUT", "-file", "-list");
+    if (!status) {
+        psError(CENSOR_ERR_ARGUMENTS, true, "Missing -file (input) or -list (input)");
+        psErrorStackPrint(stderr, "exit");
+        return NULL;
+    }
+
+    if ((N = psArgumentGet (argc, argv, "-checkinputonly"))) {
+        psArgumentRemove (N, &argc, argv);
+        psMetadataAddBool(config->arguments, PS_LIST_TAIL, "CHECK.INPUT.ONLY", PS_META_REPLACE, "do not censor just check input sources", true);
+        return config;
+    }
+        
     // define the input mask
     status = pmConfigFileSetsMD (config->arguments, &argc, argv, "INPUT.MASK", "-mask", "-masklist");
@@ -42,10 +55,4 @@
     }
 
-    status = pmConfigFileSetsMD (config->arguments, &argc, argv, "INPUT", "-file", "-list");
-    if (!status) {
-        psError(CENSOR_ERR_ARGUMENTS, true, "Missing -file (input) or -list (input)");
-        psErrorStackPrint(stderr, "exit");
-        return NULL;
-    }
 
     if (argc != 2) {
Index: branches/meh_branches/ppstack_test/magic/censorObjects/src/censorLoop.c
===================================================================
--- branches/meh_branches/ppstack_test/magic/censorObjects/src/censorLoop.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/magic/censorObjects/src/censorLoop.c	(revision 34041)
@@ -155,2 +155,95 @@
     return true;
 }
+
+/**
+ * \brief this loop loads the data from the input smf file(s) and mask(s).  call censorReadout
+ * to perform the actual rejection.
+ */
+bool checkInputLoop (pmConfig *config) {
+    pmChip *chip;
+    pmCell *cell;
+    pmReadout *readout;
+
+    psTimerStart ("checksources");
+
+    // select the input data sources
+    pmFPAfile *input = psMetadataLookupPtr (NULL, config->files, "CENSOR.INPUT");
+    if (!input) {
+	psError(CENSOR_ERR_CONFIG, true, "Can't find input data!\n");
+	return false;
+    }
+
+    pmFPAview *view = pmFPAviewAlloc (0);
+
+    // files associated with the science image
+    if (!pmFPAfileIOChecks (config, view, PM_FPA_BEFORE)) ESCAPE;
+
+    // check PHU header to see if we are using mosaic-level or per-chip astrometry
+    bool bilevelAstrometry = false;
+    pmHDU *phu = pmFPAviewThisPHU (view, input->fpa);
+    if (phu) {
+      char *ctype = psMetadataLookupStr (NULL, phu->header, "CTYPE1");
+      if (ctype) bilevelAstrometry = !strcmp (&ctype[4], "-DIS");
+    }
+    if (bilevelAstrometry) {
+      pmAstromReadBilevelMosaic (input->fpa, phu->header);
+    } 
+
+    while ((chip = pmFPAviewNextChip (view, input->fpa, 1)) != NULL) {
+	psTrace ("checksources", 4, "Chip %d: %x %x\n", view->chip, chip->file_exists, chip->process);
+	if (!chip->process || !chip->file_exists) { continue; }
+	
+	if (!pmFPAfileIOChecks (config, view, PM_FPA_BEFORE)) ESCAPE;
+
+	// read WCS data from the corresponding header
+
+	pmHDU *hdu = pmFPAviewThisHDU (view, input->fpa);
+	
+	if (bilevelAstrometry) {
+	  if (!pmAstromReadBilevelChip (chip, hdu->header)) {
+	    psWarning("Could not get WCS information from header for chip %d, skipping", view->chip); 
+	    continue;
+	  }
+	} else {
+	  if (!pmAstromReadWCS(input->fpa, chip, hdu->header, 1.0)) {
+	    psWarning( "Unable to read WCS astrometry from chip %d, skipping", view->chip);
+	    continue;
+	  }
+	}
+
+	while ((cell = pmFPAviewNextCell (view, input->fpa, 1)) != NULL) {
+	    psTrace ("checksources", 4, "Cell %d: %x %x\n", view->cell, cell->file_exists, cell->process);
+	    if (!cell->process || !cell->file_exists) { continue; }
+
+	    if (!pmFPAfileIOChecks (config, view, PM_FPA_BEFORE)) ESCAPE;
+
+	    // process each of the readouts
+	    while ((readout = pmFPAviewNextReadout (view, input->fpa, 1)) != NULL) {
+
+		if (!pmFPAfileIOChecks (config, view, PM_FPA_BEFORE)) ESCAPE;
+		if (!readout->data_exists) { continue; }
+                
+                // select the raw objects for this readout, flag is they fall in a mask
+                pmDetections *detections = psMetadataLookupPtr (NULL, readout->analysis, "PSPHOT.DETECTIONS");
+                if (detections == NULL) {
+                    psError(CENSOR_ERR_CONFIG, true, "Can't find detections for this readout");
+                    return false;
+                }
+                if (!detections->allSources) {
+                    psError(CENSOR_ERR_CONFIG, true, "Can't find sources for this readout");
+                    return false;
+                }
+
+		if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE;
+	    }
+	    if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE;
+	}
+	if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE;
+    }
+    if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE;
+
+    psLogMsg ("checksources", 3, "checkInputLoop done : %f sec\n", psTimerMark ("checksources"));
+
+    psFree (view);
+    return true;
+}
Index: branches/meh_branches/ppstack_test/magic/censorObjects/src/censorParseCamera.c
===================================================================
--- branches/meh_branches/ppstack_test/magic/censorObjects/src/censorParseCamera.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/magic/censorObjects/src/censorParseCamera.c	(revision 34041)
@@ -23,4 +23,11 @@
 	return false;
     }
+
+    bool checkInputOnly = psMetadataLookupBool(&status, config->arguments, "CHECK.INPUT.ONLY");
+    if (checkInputOnly) {
+        // nothing else to do
+        return true;
+    }
+
 
     pmFPAfile *output = pmFPAfileDefineOutput (config, input->fpa, "CENSOR.OUTPUT");
Index: branches/meh_branches/ppstack_test/ppImage/src/Makefile.am
===================================================================
--- branches/meh_branches/ppstack_test/ppImage/src/Makefile.am	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppImage/src/Makefile.am	(revision 34041)
@@ -59,4 +59,5 @@
 	ppImageParityFlip.c \
 	ppImageCheckCTE.c \
+	ppImageCheckNoise.c \
 	ppImageFileCheck.c \
 	ppImageVersion.c \
Index: branches/meh_branches/ppstack_test/ppImage/src/ppImage.h
===================================================================
--- branches/meh_branches/ppstack_test/ppImage/src/ppImage.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppImage/src/ppImage.h	(revision 34041)
@@ -48,4 +48,5 @@
     bool doStats;                       // call ppStats on the image
     bool checkCTE;                      // measure pixel-based variance
+    bool checkNoise;                    // measure cell-level variance
     bool applyParity;                   // Apply Cell parities
 
@@ -56,4 +57,8 @@
     bool addNoise;                      // Add noise to degrade MD image to 3pi
 
+  bool hasVideo;                      // Determine if this OTA has a video cell
+  bool useVideoDark;                  // Should we use a video dark if we can?
+  bool useVideoMask;                  // Should we use a video mask if we can?
+  
     // output files requested
     bool BaseFITS;
@@ -172,4 +177,6 @@
 bool ppImageCheckCTE(pmConfig *config, ppImageOptions *options, pmFPAview *view);
 
+bool ppImageCheckNoise(pmConfig *config, ppImageOptions *options, pmFPAview *view);
+
 bool ppImageBurntoolMask(pmConfig *config, ppImageOptions *options, pmFPAview *view, pmReadout *mask);
 
Index: branches/meh_branches/ppstack_test/ppImage/src/ppImageCheckNoise.c
===================================================================
--- branches/meh_branches/ppstack_test/ppImage/src/ppImageCheckNoise.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/ppImage/src/ppImageCheckNoise.c	(revision 34041)
@@ -0,0 +1,127 @@
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "ppImage.h"
+
+// XXX I originally coded this to create a new pmFPAfile, but in retrospect it makes more sense
+// to treat this function as an operation on the input image
+
+// XXX make the choice of stats optional
+bool ppImageCheckNoise(pmConfig *config, ppImageOptions *options, pmFPAview *view)
+{
+    bool status;
+
+    // this step is complete optional.
+    if (!options->checkNoise) {
+        return true;
+    }
+
+    // add recipe options supplied on command line
+    psMetadata *recipe  = psMetadataLookupPtr(&status, config->recipes, RECIPE_NAME);
+
+    // find the currently selected readout
+    pmReadout *inReadout = pmFPAfileThisReadout(config->files, view, "PPIMAGE.INPUT");
+
+    psImage *image    = inReadout->image;
+    psImage *mask     = inReadout->mask;
+    // psImage *variance = inReadout->variance;
+
+    // I have the fine image size, I know the binning factor, determine the ruff image size
+    psImageBinning *binning = psImageBinningAlloc();
+    binning->nXfine = image->numCols;
+    binning->nYfine = image->numRows;
+    binning->nXbin  = psMetadataLookupS32 (&status, recipe, "NOISE.XBIN");
+    binning->nYbin  = psMetadataLookupS32 (&status, recipe, "NOISE.YBIN");
+
+    psImageBinningSetRuffSize(binning, PS_IMAGE_BINNING_CENTER);
+    psImageBinningSetSkip(binning, image);
+
+    psStats *stats = psStatsAlloc (PS_STAT_ROBUST_MEDIAN);
+    psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS);
+    psImageBackground (stats, NULL, image, mask, 0xffff, rng);
+    //    float cellMedian = stats->robustMedian;
+    psFree (stats);
+
+    // stats = psStatsAlloc (PS_STAT_SAMPLE_STDEV);
+    // psStats *statsDefaults = psStatsAlloc (PS_STAT_SAMPLE_STDEV);
+
+    stats = psStatsAlloc (PS_STAT_ROBUST_STDEV);
+    psStats *statsDefaults = psStatsAlloc (PS_STAT_ROBUST_STDEV);
+
+    // measure median and variance for subimages
+    psRegion ruffRegion = {0,0,0,0};
+    psRegion fineRegion = {0,0,0,0};
+    for (int iy = 0; iy < binning->nYruff; iy++) {
+        for (int ix = 0; ix < binning->nXruff; ix++) {
+
+            // convert the ruff grid cell to the equivalent fine grid cell
+            ruffRegion = psRegionSet (ix, ix + 1, iy, iy + 1);
+            fineRegion = psImageBinningSetFineRegion (binning, ruffRegion);
+            fineRegion = psRegionForImage (image, fineRegion);
+            if (fineRegion.x0 >= image->numCols) continue;
+	    if (fineRegion.y0 >= image->numRows) continue;
+
+            psImage *subset  = psImageSubset (image, fineRegion);
+            if (!subset->numCols || !subset->numRows) {
+                psFree (subset);
+                continue;
+            }
+            psImage *submask = NULL;
+            if (mask) {
+                submask = psImageSubset (mask, fineRegion);
+            }
+
+            // reset the default values
+            statsDefaults->tmpData = stats->tmpData; // XXX this is fairly hackish: tmpData is internal storage for stats; the assign drops the reference...
+            *stats = *statsDefaults;
+            statsDefaults->tmpData = NULL;
+	    
+            psImageStats (stats, subset, submask, 0xffff);
+
+	    // XXX need to apply the gain as well
+	    float normVariance = stats->robustStdev;
+	    // float normVariance = PS_SQR(stats->sampleStdev) / cellMedian;
+	    // if (!isfinite(normVariance)) fprintf (stderr, "** normVariance is nan **\n");
+	    psTrace("ppImage.noise",3,
+		    "PPIM.N: %s %s %d %d (%d %d) %f\n",
+		    psMetadataLookupStr(NULL,inReadout->parent->parent->concepts,"CHIP.NAME"),
+		    psMetadataLookupStr(NULL,inReadout->parent->concepts,"CELL.NAME"),
+		    ix,iy,subset->numCols,subset->numRows,normVariance);
+		    
+	    for (int dy = 0; dy < subset->numRows; dy++) {
+	      for (int dx = 0; dx < subset->numCols; dx++) {
+		psTrace("ppImage.noise",5,
+			"PPIN: %s %s %d %d %d %d %f %d %f\n",
+			psMetadataLookupStr(NULL,inReadout->parent->parent->concepts,"CHIP.NAME"),
+			psMetadataLookupStr(NULL,inReadout->parent->concepts,"CELL.NAME"),
+			ix,iy,dx,dy,
+			subset->data.F32[dy][dx],
+			(int) submask->data.PS_TYPE_VECTOR_MASK_DATA[dy][dx],
+			normVariance);
+	      }
+	    }
+	    //	    binning->data.F32[iy][ix] = normVariance;
+	    // apply resulting value to the input pixels
+	    for (int jy = fineRegion.y0; jy < fineRegion.y1; jy++) {
+	      if (jy < 0) continue;
+	      if (jy >= image->numRows) continue;
+	      for (int jx = fineRegion.x0; jx < fineRegion.x1; jx++) {
+		if (jx < 0) continue;
+		if (jx >= image->numCols) continue;
+		image->data.F32[jy][jx] = normVariance;
+	      }
+	    }
+
+            psFree (subset);
+            psFree (submask);
+        }
+    }
+    
+    psFree (rng);
+    psFree (binning);
+    psFree (stats);
+    psFree (statsDefaults);
+
+    return true;
+}
Index: branches/meh_branches/ppstack_test/ppImage/src/ppImageDetrendReadout.c
===================================================================
--- branches/meh_branches/ppstack_test/ppImage/src/ppImageDetrendReadout.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppImage/src/ppImageDetrendReadout.c	(revision 34041)
@@ -35,5 +35,18 @@
       }
     }
-
+    // Check to see if we're in a chip that contains video
+    bool hasVideo = false;
+    {
+      if (psMetadataLookupStr(NULL,input->parent->parent->hdu->header,"CELLMODE")) {
+	psWarning("VIDEO: %d %d %d\n",(int) options->hasVideo,(int) options->useVideoDark, (int) options->useVideoMask);
+	char *Vptr = strchr(psMetadataLookupStr(NULL,input->parent->parent->hdu->header,"CELLMODE"),'V');
+	if (Vptr) {
+	  hasVideo = true;
+	  psWarning("VIDEO: %d %d %d\n",(int) options->hasVideo,(int) options->useVideoDark, (int) options->useVideoMask);
+	}
+      }
+    }
+
+    
     // Masking on the basis of pixel value needs to be done before anything else, so the values are pristine.
     if (options->doMaskBuild) {
@@ -44,6 +57,12 @@
     // apply the externally supplied mask to the input->mask pixels
     if (options->doMask) {
-        pmReadout *mask = pmFPAfileThisReadout(config->files, detview, "PPIMAGE.MASK");
-        pmMaskBadPixels(input, mask, options->maskValue);
+      pmReadout *mask;
+      if ((options->useVideoMask)&&(hasVideo)) {
+        mask = pmFPAfileThisReadout(config->files, detview, "PPIMAGE.VIDEOMASK");
+      }
+      else {
+	mask = pmFPAfileThisReadout(config->files, detview, "PPIMAGE.MASK");
+      }
+      pmMaskBadPixels(input, mask, options->maskValue);
     }
     if (options->doMaskBurntool) {
@@ -80,9 +99,19 @@
         psMetadata *recipe = psMetadataLookupPtr (&mdok, config->recipes, RECIPE_NAME);
         assert(mdok && recipe);
-        if (psMetadataLookupBool(&mdok, recipe, "OLDDARK")) {
+
+	if ((options->useVideoDark)&&(hasVideo)) {
+	  if (psMetadataLookupBool(&mdok, recipe, "OLDDARK")) {
+            oldDark = pmFPAfileThisReadout(config->files, detview, "PPIMAGE.VIDEODARK");
+	  } else {
+            dark = pmFPAfileThisCell(config->files, detview, "PPIMAGE.VIDEODARK");
+	  }
+	}
+	else {
+	  if (psMetadataLookupBool(&mdok, recipe, "OLDDARK")) {
             oldDark = pmFPAfileThisReadout(config->files, detview, "PPIMAGE.DARK");
-        } else {
+	  } else {
             dark = pmFPAfileThisCell(config->files, detview, "PPIMAGE.DARK");
-        }
+	  }
+	}
     }
 
@@ -110,4 +139,6 @@
             // offset information, we are not really getting exactly the right mapping from the
             // original file.
+	    // CZW 2012-03-21: I do not believe this is true anymore.  In any case, this seems to be what
+	    //                 ppImageReplaceBackground does to do sky subtraction.
             psImageBinning *binning = psImageBinningAlloc();
             binning->nXruff = noiseMap->image->numCols;
@@ -119,4 +150,39 @@
             psImageUnbin (noiseImage, noiseMap->image, binning);
             psFree (binning);
+	    // Stolen from pmSkySubtract.c
+	    // CZW: Unneeded, as psImageUnbin does the bilinear interpolation?  It still looks blocky. 
+/* 	    psMetadata *recipe = psMetadataLookupMetadata(NULL, config->recipes, RECIPE_NAME); // Recipe */
+/* 	    psAssert(recipe, "Should be there!"); */
+
+/* 	    psS32 xBinFactor = psMetadataLookupS32(NULL,recipe,"NOISE.XBIN"); */
+/* 	    psS32 yBinFactor = psMetadataLookupS32(NULL,recipe,"NOISE.YBIN"); */
+/* 	    psImageInterpolateOptions *interp = psImageInterpolateOptionsAlloc(PS_INTERPOLATE_BILINEAR, */
+/* 									       noiseMap->image, */
+/* 									       NULL, NULL, */
+/* 									       0, 0.0, 0.0, 0, 0, 0.0); */
+/* 	    for (psS32 row = 0; row < input->image->numRows; row++) { */
+/* 	      for (psS32 col = 0; col < input->image->numCols; col++) { */
+/* 		// We calculate the F32 value of the pixel coordinates in the */
+/* 		// binned image and then use a pixel interpolation routine to */
+/* 		// determine the value of the pixel at that location. */
+/* 		psF32 binRowF64 = ((psF32) row) / ((psF32) yBinFactor); */
+/* 		psF32 binColF64 = ((psF32) col) / ((psF32) xBinFactor); */
+/* 		// We add 0.5 to the pixel locations since the pixel */
+/* 		// interpolation routine defines the location of pixel */
+/* 		// (i, j) as (i+0.5, j+0.5). */
+/* 		binRowF64+= 0.5; */
+/* 		binColF64+= 0.5; */
+
+/* 		double binPixel; */
+/* 		if (!psImagePixelInterpolate(&binPixel, NULL, NULL, binColF64, binRowF64, interp)) { */
+/* 		  psError(PS_ERR_UNKNOWN, false, "Unable to interpolate image."); */
+/* 		  psFree(interp); */
+/* 		  psFree(noiseImage); */
+/* 		  return NULL; */
+/* 		} */
+/* 		noiseImage->data.F32[row][col] = binPixel; */
+/* 	      } */
+/* 	    } */
+/* 	    psFree(interp); */
         }
 
Index: branches/meh_branches/ppstack_test/ppImage/src/ppImageLoop.c
===================================================================
--- branches/meh_branches/ppstack_test/ppImage/src/ppImageLoop.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppImage/src/ppImageLoop.c	(revision 34041)
@@ -126,4 +126,8 @@
                 }
 
+		if (!ppImageCheckNoise (config, options, view)) {
+		    ESCAPE("Unable to generate noisemap");
+		}
+		
 		// optionally degrade a MD image to 3pi exposure times
 		if (!ppImageAddNoise(config, options, view, input->fpa)){
Index: branches/meh_branches/ppstack_test/ppImage/src/ppImageOptions.c
===================================================================
--- branches/meh_branches/ppstack_test/ppImage/src/ppImageOptions.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppImage/src/ppImageOptions.c	(revision 34041)
@@ -41,8 +41,11 @@
     options->doStats         = false;   // Measure and save image statistics
     options->checkCTE        = false;   // Measure pixel-based variance
+    options->checkNoise      = false;   // Measure cell-level variances.
     options->applyParity     = false;   // Apply Cell parities
     options->doMaskStats     = false;   // Calculate mask fractions
     options->addNoise        = false;  //Degrade an MD image to a 3pi image
-
+    options->hasVideo        = false;   // Determine if this OTA has a video cell
+    options->useVideoDark    = false;   // Use video dark if we can?
+    options->useVideoMask    = false;   // Use video mask if we can?
     // output files requested
     options->BaseFITS        = false;   // create output image
@@ -319,4 +322,5 @@
 
     options->checkCTE       = psMetadataLookupBool(NULL, recipe, "CHECK.CTE");
+    options->checkNoise     = psMetadataLookupBool(NULL, recipe, "CHECK.NOISE");
 
     /* doMaskBuild : there are some cases where we require a mask, so we force doMaskBuild to be set even if the user specified 'FALSE'
@@ -360,4 +364,12 @@
     options->fringeKeep = psMetadataLookupF32(NULL, recipe, "FRINGE.KEEP");
 
+    // Video cell options
+    if (psMetadataLookup(recipe, "USE.VIDEO.DARK")) {
+      options->useVideoDark = psMetadataLookupBool(NULL,recipe,"USE.VIDEO.DARK");
+    }
+    if (psMetadataLookup(recipe, "USE.VIDEO.MASK")) {
+      options->useVideoMask = psMetadataLookupBool(NULL,recipe,"USE.VIDEO.MASK");
+    }
+
     // Pattern correction
     if (psMetadataLookup(format, "PATTERN.ROW.ORDER")) {
@@ -416,5 +428,5 @@
       options->patternContinuityEdgeWidth = psMetadataLookupS32(NULL, recipe, "PATTERN.CONTINUITY.WIDTH");
     }
-    
+
 
     // Remnance options
Index: branches/meh_branches/ppstack_test/ppImage/src/ppImageParseCamera.c
===================================================================
--- branches/meh_branches/ppstack_test/ppImage/src/ppImageParseCamera.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppImage/src/ppImageParseCamera.c	(revision 34041)
@@ -22,4 +22,28 @@
     ppImageOptions *options = ppImageOptionsParse(config);
 
+    // parse the header to extract out whether this OTA has video cells.
+    // CZW: 2012-05-01 I'm somewhat ashamed of what needs to be done to get to the header. There has to be a simpler way, right?
+/*     pmFPAview *view = pmFPAviewAlloc(0);// View for level of interest */
+/*     pmChip *chip;                       // Chip from FPA */
+/*     while ((chip = pmFPAviewNextChip(view, input->fpa, 1)) != NULL) { */
+/*       if (!chip->process || !chip->file_exists) { */
+/* 	continue; */
+/*       } */
+/* /\*       if (!pmFPAfileIOChecks(config, view, PM_FPA_BEFORE)) { *\/ */
+/* /\* 	continue; *\/ */
+/* /\*       } *\/ */
+/*       psWarning("VIDEO: %d %d %d\n",(int) options->hasVideo,(int) options->useVideoDark, (int) options->useVideoMask); */
+/*       if (psMetadataLookupStr(NULL,chip->hdu->header,"CELLMODE")) { */
+/* 	psWarning("VIDEO: %d %d %d\n",(int) options->hasVideo,(int) options->useVideoDark, (int) options->useVideoMask); */
+/* 	char *Vptr = strchr(psMetadataLookupStr(NULL,chip->hdu->header,"CELLMODE"),'V'); */
+/* 	if (Vptr) { */
+/* 	  options->hasVideo = true; */
+/* 	  psWarning("VIDEO: %d %d %d\n",(int) options->hasVideo,(int) options->useVideoDark, (int) options->useVideoMask); */
+/* 	} */
+/*       } */
+/*     } */
+/*     pmFPAviewReset(view); */
+/*     psFree(view); */
+    
     // the following are defined from the argument list, if given,
     // otherwise they revert to the config information
@@ -42,18 +66,38 @@
     }
     if (options->doDark) {
-        if (!ppImageDefineFile(config, input->fpa, "PPIMAGE.DARK", "DARK",
-                               PM_FPA_FILE_DARK, PM_DETREND_TYPE_DARK)) {
+      // Always load the regular Dark
+      if (!ppImageDefineFile(config, input->fpa, "PPIMAGE.DARK", "DARK",
+			     PM_FPA_FILE_DARK, PM_DETREND_TYPE_DARK)) {
+	psError(PS_ERR_IO, false, "Can't find a dark image source");
+	psFree(options);
+	return NULL;
+      }
+      // Sometimes load the video dark if we need it.
+      if (options->useVideoDark) {
+        if (!ppImageDefineFile(config, input->fpa, "PPIMAGE.VIDEODARK", "DARK",
+                               PM_FPA_FILE_DARK, PM_DETREND_TYPE_VIDEODARK)) {
             psError(PS_ERR_IO, false, "Can't find a dark image source");
             psFree(options);
             return NULL;
         }
+      }
     }
     if (options->doMask) {
-        if (!ppImageDefineFile(config, input->fpa, "PPIMAGE.MASK", "MASK",
-                               PM_FPA_FILE_MASK, PM_DETREND_TYPE_MASK)) {
+      // Always load the regular mask
+      if (!ppImageDefineFile(config, input->fpa, "PPIMAGE.MASK", "MASK",
+			     PM_FPA_FILE_MASK, PM_DETREND_TYPE_MASK)) {
+	psError(PS_ERR_IO, false, "Can't find a mask image source");
+	psFree(options);
+	return NULL;
+      }
+
+      if (options->useVideoMask) {
+	if (!ppImageDefineFile(config, input->fpa, "PPIMAGE.VIDEOMASK", "MASK",
+                               PM_FPA_FILE_MASK, PM_DETREND_TYPE_VIDEOMASK)) {
             psError(PS_ERR_IO, false, "Can't find a mask image source");
             psFree(options);
             return NULL;
         }
+      }
     }
     if (options->doShutter) {
Index: branches/meh_branches/ppstack_test/ppMerge/src/ppMerge.c
===================================================================
--- branches/meh_branches/ppstack_test/ppMerge/src/ppMerge.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppMerge/src/ppMerge.c	(revision 34041)
@@ -56,4 +56,5 @@
       case PPMERGE_TYPE_FRINGE:
       case PPMERGE_TYPE_CTEMASK:
+      case PPMERGE_TYPE_NOISEMAP:
         if (!ppMergeScaleZero(config)) {
             psErrorStackPrint(stderr, "Error getting scale and zero-points.");
Index: branches/meh_branches/ppstack_test/ppMerge/src/ppMerge.h
===================================================================
--- branches/meh_branches/ppstack_test/ppMerge/src/ppMerge.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppMerge/src/ppMerge.h	(revision 34041)
@@ -44,4 +44,5 @@
     PPMERGE_TYPE_FLAT,                  ///< Flat-field frame (dome or sky)
     PPMERGE_TYPE_FRINGE,                ///< Fringe frame
+    PPMERGE_TYPE_NOISEMAP,              ///< Noise map
 } ppMergeType;
 
Index: branches/meh_branches/ppstack_test/ppMerge/src/ppMergeArguments.c
===================================================================
--- branches/meh_branches/ppstack_test/ppMerge/src/ppMergeArguments.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppMerge/src/ppMergeArguments.c	(revision 34041)
@@ -289,4 +289,8 @@
         strcasecmp(typeStr, "FLATMASK") == 0) {
       type = PPMERGE_TYPE_MASK;
+      goto VALID;
+    }
+    if (strcasecmp(typeStr, "NOISEMAP") == 0) {
+      type = PPMERGE_TYPE_NOISEMAP;
       goto VALID;
     }
Index: branches/meh_branches/ppstack_test/ppMerge/src/ppMergeCamera.c
===================================================================
--- branches/meh_branches/ppstack_test/ppMerge/src/ppMergeCamera.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppMerge/src/ppMergeCamera.c	(revision 34041)
@@ -224,6 +224,6 @@
             format = (HDU)->format; \
         } else if (format != (HDU)->format) { \
-            psError(PS_ERR_UNKNOWN, true, "Camera format %d doesn't match: %p vs %p", \
-                    i, format, (HDU)->format); \
+	  psError(PS_ERR_UNKNOWN, true, "Camera format %d doesn't match: %p vs %p on %s %s", \
+		  i, format, (HDU)->format, (HDU)->extname, psMetadataLookupStr(NULL,(HDU)->header,"FILENAME")); \
             psFree(phuView); \
             return false; \
@@ -232,4 +232,23 @@
     } \
 }
+    // CZW: 2012-04-10 Version of above to allow different camera formats to be processed together.
+/* #define CHECK_LEVEL(HDU, CHIP, CELL) { \ */
+/*     if (HDU) { \ */
+/*         if (!phuView) { \ */
+/*             phuView = pmFPAviewAlloc(0); \ */
+/*             phuView->chip = CHIP; \ */
+/*             phuView->cell = CELL; \ */
+/*         } else if ((phuView->chip != (CHIP)) && (phuView->cell != (CELL))) { \ */
+/*             psError(PS_ERR_UNKNOWN, true, "Differing PHU for input %d", i); \ */
+/*             psFree(phuView); \ */
+/*             return false; \ */
+/*         } \ */
+/*         if (!format) { \ */
+/*             format = (HDU)->format; \ */
+/*         } else if (format != (HDU)->format) { \ */
+/*         } \ */
+/*         continue; \ */
+/*     } \ */
+/* } */
 
     psMetadata *format = NULL;          ///< Camera format
@@ -334,4 +353,7 @@
         fileType = PM_FPA_FILE_IMAGE;
         break;
+      case PPMERGE_TYPE_NOISEMAP:
+	fileType = PM_FPA_FILE_IMAGE;
+	break;
       case PPMERGE_TYPE_FRINGE:
         fileType = PM_FPA_FILE_FRINGE;
Index: branches/meh_branches/ppstack_test/ppMerge/src/ppMergeFiles.c
===================================================================
--- branches/meh_branches/ppstack_test/ppMerge/src/ppMergeFiles.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppMerge/src/ppMergeFiles.c	(revision 34041)
@@ -221,4 +221,7 @@
         outSuffix = "FRINGE";
 	break;
+      case PPMERGE_TYPE_NOISEMAP:
+	outSuffix = "NOISEMAP";
+	break;
       default:
         psAbort("Unknown frame type: %x", type);
Index: branches/meh_branches/ppstack_test/ppMerge/src/ppMergeLoop.c
===================================================================
--- branches/meh_branches/ppstack_test/ppMerge/src/ppMergeLoop.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppMerge/src/ppMergeLoop.c	(revision 34041)
@@ -125,4 +125,5 @@
       case PPMERGE_TYPE_DARK:
       case PPMERGE_TYPE_CTEMASK:
+      case PPMERGE_TYPE_NOISEMAP:
         break;
       default:
@@ -280,4 +281,5 @@
               case PPMERGE_TYPE_FLAT:
               case PPMERGE_TYPE_FRINGE:
+  	      case PPMERGE_TYPE_NOISEMAP:
                 psAssert (fileGroups->n > 0, "no valid file groups defined");
                 fileGroup = fileGroups->data[0];
@@ -324,4 +326,5 @@
                   case PPMERGE_TYPE_BIAS:
                   case PPMERGE_TYPE_FLAT:
+  		  case PPMERGE_TYPE_NOISEMAP:
                   case PPMERGE_TYPE_FRINGE: {
                       psThreadJob *job = psThreadJobAlloc("PPMERGE_READOUT_COMBINE"); ///< Job to start
Index: branches/meh_branches/ppstack_test/ppMerge/src/ppMergeScaleZero.c
===================================================================
--- branches/meh_branches/ppstack_test/ppMerge/src/ppMergeScaleZero.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppMerge/src/ppMergeScaleZero.c	(revision 34041)
@@ -36,4 +36,5 @@
       case PPMERGE_TYPE_DARK:
       case PPMERGE_TYPE_CTEMASK:
+      case PPMERGE_TYPE_NOISEMAP:
         // Nothing to measure
         return true;
Index: branches/meh_branches/ppstack_test/ppStack/src/ppStackMatch.c
===================================================================
--- branches/meh_branches/ppstack_test/ppStack/src/ppStackMatch.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppStack/src/ppStackMatch.c	(revision 34041)
@@ -9,4 +9,5 @@
 //MEH - modified TESTING to be outputs only, reuse convolved now own
 //#define TESTING_REUSE_CONV              // Enable debugging re-using convolved outputs from previous run
+// #define TESTING_REUSE_CONV		// Enable debugging for re-using convolved outputs from previous run
 
 #ifdef TESTING_REUSE_CONV
@@ -57,5 +58,7 @@
     psAssert(psphotRecipe, "Need PSPHOT recipe");
 
-    psString maskBadStr = psMetadataLookupStr(NULL, ppStackRecipe, "MASK.BAD");// Name of bits to mask for bad
+    //MEH - bill found this should be MASK.VAL
+//    psString maskBadStr = psMetadataLookupStr(NULL, ppStackRecipe, "MASK.BAD");// Name of bits to mask for bad
+    psString maskBadStr = psMetadataLookupStr(NULL, ppStackRecipe, "MASK.VAL");// Name of bits to mask for bad
     psMaskType maskBad = pmConfigMaskGet(maskBadStr, config); // Bits to mask for bad pixels
 
@@ -261,6 +264,9 @@
             fake->image = psImageCopy(NULL, target, PS_TYPE_F32);
             fake->mask = psImageCopy(NULL, readout->mask, PS_TYPE_IMAGE_MASK);
-	    //MEH add fake->variance just as fake->image for testing passing along fully make difference in soln
+	    //MEH test add fake->variance just as fake->image for testing passing along fully make difference in soln
             //fake->variance = psImageCopy(NULL, target, PS_TYPE_F32);
+
+	    //MEH -- could add TESTING to output start_ here before adding background - but not same as includes all/merged target sources?
+	    //    -- useless as now is essentially the target.fits anyways
 
 #if 1
Index: branches/meh_branches/ppstack_test/ppStack/src/ppStackPSF.c
===================================================================
--- branches/meh_branches/ppstack_test/ppStack/src/ppStackPSF.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppStack/src/ppStackPSF.c	(revision 34041)
@@ -55,4 +55,5 @@
 	}
 
+	//MEH -- 2.35 or 2.355 as seen elsewhere? small difference though
 	float Mxx = M_SQRT2 * psfFWHM / 2.35;
 
Index: branches/meh_branches/ppstack_test/ppStack/src/ppStackPhotometry.c
===================================================================
--- branches/meh_branches/ppstack_test/ppStack/src/ppStackPhotometry.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppStack/src/ppStackPhotometry.c	(revision 34041)
@@ -54,4 +54,11 @@
     }
 
+    // Add the expnum image to the photometry readout's analysis metadata so that it is available to
+    // psphotSetNFrames
+    pmReadout *photRO = pmFPAviewThisReadout(photView, photFile->fpa);
+    if (photRO && options->expRO->mask) {
+        psMetadataAddImage(photRO->analysis, PS_LIST_TAIL, "EXPNUM", PS_META_REPLACE, "EXPNUM image", options->expRO->mask);
+    }
+
     pmModelClassSetLimits(PM_MODEL_LIMITS_LAX);
     if (!psphotReadoutKnownSources(config, photView, "PSPHOT.INPUT", inSources)) {
Index: branches/meh_branches/ppstack_test/ppStack/src/ppStackPrepare.c
===================================================================
--- branches/meh_branches/ppstack_test/ppStack/src/ppStackPrepare.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppStack/src/ppStackPrepare.c	(revision 34041)
@@ -289,4 +289,6 @@
 
         psStringAppend(&log, "Input %d: %f\n", i, options->inputSeeing->data.F32[i]);
+	//MEH - add other params to output - better to just add in pmPSFtoFWHM called for psf?
+
     }
     if (havePSFs) {
@@ -315,4 +317,13 @@
         }
     }
+
+    //MEH - try runnning every thing that can reject images before target psf and conv - 
+    // Zero point calibration
+    if (!ppStackSourcesTransparency(options, view, config)) {
+        psError(PPSTACK_ERR_DATA, false, "Unable to calculate transparency differences");
+        psFree(view);
+        return false;
+    }
+
 
     // Generate target PSF
@@ -352,10 +363,12 @@
     }
 
+    // MEH - move up since may exclude additional images that transparency calc fail for inputs to target psf?
     // Zero point calibration
-    if (!ppStackSourcesTransparency(options, view, config)) {
-        psError(PPSTACK_ERR_DATA, false, "Unable to calculate transparency differences");
-        psFree(view);
-        return false;
-    }
+//    if (!ppStackSourcesTransparency(options, view, config)) {
+//        psError(PPSTACK_ERR_DATA, false, "Unable to calculate transparency differences");
+//        psFree(view);
+//        return false;
+//    }
+
     psFree(view);
 
Index: branches/meh_branches/ppstack_test/ppStack/src/ppStackSources.c
===================================================================
--- branches/meh_branches/ppstack_test/ppStack/src/ppStackSources.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppStack/src/ppStackSources.c	(revision 34041)
@@ -9,4 +9,7 @@
 //#define FAKE_COLS 4861
 //#define FAKE_ROWS 4913
+// MEH - new warp sizes and simtests used -- will just make smaller output sample images and needs to be 1k for simstest
+//#define FAKE_COLS 6400
+//#define FAKE_ROWS 6400
 #define FAKE_COLS 1000
 #define FAKE_ROWS 1000
@@ -170,6 +173,8 @@
         pmFPAfile *file = pmFPAfileSelectSingle(config->files, "PPSTACK.INPUT", i); // File of interest
 
-//MEH 0->1
-#if defined(TESTING) && 1
+//MEH 0->1 -- remember this is manually set to size FAKE_COLS/ROWS and may not overlap on edges
+//MEH - breaks if move SourcesTrans before target psf section in ppStackPrepare.. move to ppStackMatch 
+//      since silly if not conv?
+#if defined(TESTING) && 0
         pmReadout *fake = pmReadoutAlloc(NULL); // Fake readout
         pmPSF *psf = psMetadataLookupPtr(NULL, config->arguments, "PSF.TARGET"); // PSF for fake image
@@ -184,4 +189,6 @@
         psFitsClose(fits);
         psFree(fake);
+	//MEH - should also free psf..
+	psFree(psf);
 #endif
 
@@ -477,7 +484,11 @@
 
         // XXX something of a hack: require at least 2 detections or the nominated fraction of the max possible
-        int minMatches = PS_MAX(2, fracMatch * num);// Minimum number of matches required
+        //int minMatches = PS_MAX(2, fracMatch * num);// Minimum number of matches required
+	//MEH - if many poor images will hit oddity with num fraction, use numGoodImages? does it change another threshold?
+        int minMatches = PS_MAX(2, fracMatch * numGoodImages);// Minimum number of matches required
         for (int i = 0; i < matches->n; i++) {
             pmSourceMatch *match = matches->data[i]; // Match of interest
+	    //MEH
+	    psLogMsg("ppStack", PS_LOG_INFO, "TESTING:sources: i:%d %ld %d %f %d", i,matches->n,num,fracMatch,match->num);
             if (match->num < minMatches) {
                 continue;
Index: branches/meh_branches/ppstack_test/ppStack/src/ppStackTarget.c
===================================================================
--- branches/meh_branches/ppstack_test/ppStack/src/ppStackTarget.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/ppStack/src/ppStackTarget.c	(revision 34041)
@@ -32,4 +32,6 @@
     )
 {
+    //MEH
+    psLogMsg("ppStack", PS_LOG_INFO, "TESTING:: sources->n %ld footprint/exclusion %d minMagDiff %f ",sources->n,exclusion,minMagDiff);
     psAssert(sources && sources->n > 0, "Require array of sources");
     if (exclusion <= 0) {
@@ -200,4 +202,8 @@
         }
 
+	// MEH - 
+	psLogMsg("ppStack", PS_LOG_INFO, "TESTING:mean:minVar: %d %f %f ",i,meanVariance,minVariance);
+
+
     DONE:
         psFree(bg);
@@ -222,4 +228,7 @@
     bool oldThreads = pmReadoutFakeThreads(true); // Old threading state
     pmReadout *fake = pmReadoutAlloc(NULL); // Fake readout with target PSF
+    // MEH - really? footprint+size?? fixed and should be now
+    psLogMsg("ppStack", PS_LOG_INFO, "TESTING:: minFlux %f footprint %d size %d ",minFlux,footprint,size);
+
     if (!pmReadoutFakeFromSources(fake, numCols, numRows, stampSources, SOURCE_MASK, NULL, NULL, options->psf,
                                   minFlux, footprint + size, false, true)) {
Index: branches/meh_branches/ppstack_test/psLib/src/fft/psImageFFT.c
===================================================================
--- branches/meh_branches/ppstack_test/psLib/src/fft/psImageFFT.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psLib/src/fft/psImageFFT.c	(revision 34041)
@@ -77,6 +77,6 @@
         input = psMemIncrRefCounter(in->p_rawDataBuffer);
     } else {
-        // Need to copy the data
-        input = psAlloc(numCols * numRows);
+	// Need to copy the data
+	input = psAlloc(numCols * numRows * PSELEMTYPE_SIZEOF(PS_TYPE_F32));
         for (int y = 0; y < numRows; y++) {
             memcpy(&input[y * numRows], in->data.F32[y], numCols);
Index: branches/meh_branches/ppstack_test/psLib/src/fits/psFitsImage.c
===================================================================
--- branches/meh_branches/ppstack_test/psLib/src/fits/psFitsImage.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psLib/src/fits/psFitsImage.c	(revision 34041)
@@ -97,5 +97,5 @@
 
     /* Validate the number of axis */
-    if ((info->nAxis < 2) || (info->nAxis > 3)) {
+    if (info->nAxis > 3) {
         psError(PS_ERR_IO, true,
                 _("Image number of dimensions, %d, is not supported."), info->nAxis);
@@ -108,4 +108,8 @@
         goto bad;
     }
+
+    info->nAxes[0] = PS_MAX (info->nAxes[0], 1);
+    info->nAxes[1] = PS_MAX (info->nAxes[1], 1);
+    info->nAxes[2] = PS_MAX (info->nAxes[2], 1);
 
     info->firstPixel[0] = region.x0 + 1;
Index: branches/meh_branches/ppstack_test/psModules/src/camera/Makefile.am
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/camera/Makefile.am	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/camera/Makefile.am	(revision 34041)
@@ -30,5 +30,6 @@
 	pmReadoutStack.c \
 	pmReadoutFake.c \
-	pmFPABin.c
+	pmFPABin.c \
+	pmFPAExpNumIO.c
 
 pkginclude_HEADERS = \
@@ -59,5 +60,6 @@
 	pmReadoutStack.h \
 	pmReadoutFake.h \
-	pmFPABin.h
+	pmFPABin.h \
+	pmFPAExpNumIO.h
 
 CLEANFILES = *~
Index: branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAExpNumIO.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAExpNumIO.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAExpNumIO.c	(revision 34041)
@@ -0,0 +1,450 @@
+#include <stdio.h>
+#include <pslib.h>
+#include <string.h>
+
+#include "pmHDU.h"
+#include "pmHDUUtils.h"
+#include "pmFPA.h"
+#include "pmFPAview.h"
+#include "pmFPAfile.h"
+#include "pmFPAfileFitsIO.h"
+#include "pmFPAHeader.h"
+#include "pmConceptsRead.h"
+#include "pmConceptsWrite.h"
+
+#include "pmFPAExpNumIO.h"
+
+//////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+
+static bool pmReadoutReadExpNum(pmReadout *ro, psFits *fits)
+{
+    PM_ASSERT_READOUT_NON_NULL(ro, false);
+    PS_ASSERT_FITS_NON_NULL(fits, false);
+
+    pmCell *cell = ro->parent;          // Cell of interest
+    if (!cell) {
+        psError(PS_ERR_UNEXPECTED_NULL, true, "No cell associated with readout.");
+        return false;
+    }
+    pmChip *chip = cell->parent;    // Chip of interest
+    pmFPA *fpa = chip->parent;      // FPA of interest
+    pmHDU *hdu = pmHDUGetLowest(fpa, chip, cell); // HDU for readout
+    if (!hdu) {
+        psError(PS_ERR_UNEXPECTED_NULL, true, "No HDU associated with readout.");
+        return false;
+    }
+
+#ifdef notdef
+    if (!psFitsMoveExtName(fits, hdu->extname)) {
+        psError(PS_ERR_IO, false, "Unable to move to EXPNUM image.");
+        return false;
+    }
+#endif
+    psMetadata *header = psFitsReadHeader(NULL, fits); // Header
+    if (!header) {
+        psError(PS_ERR_UNEXPECTED_NULL, false, "Unable to read header for EXPNUM image.");
+        return false;
+    }
+
+    bool data = false;                  // Did we find any data?
+
+    int naxis = psMetadataLookupS32(NULL, header, "NAXIS"); // Number of axes
+    if (naxis > 0) {
+        psImage *expnum = psFitsReadImage(fits, psRegionSet(0, 0, 0, 0), 0);
+        psMetadataAddImage(ro->analysis, PS_LIST_TAIL, "EXPNUM", PS_META_REPLACE,
+                           "EXPNUM", expnum);
+        psFree(expnum);
+        data = true;
+    }
+
+    if (data) {
+        ro->data_exists = true;
+        ro->parent->data_exists = true;
+        ro->parent->parent->data_exists = true;
+    }
+
+    psFree(header);
+
+    return true;
+}
+
+static bool pmCellReadExpNum(pmCell *cell, const pmFPAview *view,
+                              pmFPAfile *file, pmConfig *config)
+{
+    PS_ASSERT_PTR_NON_NULL(view, false);
+    PS_ASSERT_PTR_NON_NULL(cell, false);
+    PS_ASSERT_PTR_NON_NULL(cell->readouts, false);
+
+    pmFPAview *thisView = pmFPAviewAlloc(view->nRows); // Copy of input view
+    *thisView = *view;
+
+    // Create a readout if none exists
+    if (!cell->readouts || cell->readouts->n == 0) {
+        pmReadout *readout = pmReadoutAlloc(cell); // New readout
+        psFree(readout);                // Drop reference
+    }
+
+    cell->data_exists = false;
+    for (int i = 0; i < cell->readouts->n; i++) {
+        pmReadout *readout = cell->readouts->data[i];
+        thisView->readout = i;
+        if (!pmReadoutReadExpNum(readout, file->fits)) {
+            psError(PS_ERR_IO, false, "Unable to read pattern correction.");
+            return false;
+        }
+    }
+    psFree(thisView);
+
+    if (!pmCellReadHeader(cell, file->fits, config)) {
+        psError(PS_ERR_IO, false, "Unable to read header for cell.");
+        return false;
+    }
+    // load in the concept information for this cell
+    if (!pmConceptsReadCell(cell, PM_CONCEPT_SOURCE_HEADER, true, NULL)) {
+        psErrorClear();
+        psWarning("Difficulty reading concepts for cell; attempting to proceed.");
+    }
+
+    return true;
+}
+
+static bool pmChipReadExpNum(pmChip *chip, const pmFPAview *view,
+                              pmFPAfile *file, pmConfig *config)
+{
+    PS_ASSERT_PTR_NON_NULL(view, false);
+    PS_ASSERT_PTR_NON_NULL(chip, false);
+    PS_ASSERT_PTR_NON_NULL(chip->cells, false);
+
+    pmFPAview *thisView = pmFPAviewAlloc(view->nRows); // Copy of input view
+    *thisView = *view;
+
+    chip->data_exists = false;
+    for (int i = 0; i < chip->cells->n; i++) {
+        pmCell *cell = chip->cells->data[i];
+        thisView->cell = i;
+        pmCellReadExpNum(cell, thisView, file, config);
+        if (!cell->data_exists) {
+            continue;
+        }
+        chip->data_exists = true;
+    }
+    psFree(thisView);
+
+    if (!pmChipReadHeader(chip, file->fits, config)) {
+        psError(PS_ERR_IO, false, "Unable to read header for cell.");
+        return false;
+    }
+    if (!pmConceptsReadChip(chip, PM_CONCEPT_SOURCE_HEADER, true, true, NULL)) {
+        psError(PS_ERR_IO, false, "Failed to read concepts for chip.\n");
+        return false;
+    }
+
+    return true;
+}
+
+static bool pmFPAReadExpNum(pmFPA *fpa, const pmFPAview *view,
+                             pmFPAfile *file, pmConfig *config)
+{
+    PS_ASSERT_PTR_NON_NULL(view, false);
+    PS_ASSERT_PTR_NON_NULL(file, false);
+    PS_ASSERT_PTR_NON_NULL(file->fpa, false);
+    PS_ASSERT_PTR_NON_NULL(file->fpa->chips, false);
+
+    pmFPAview *thisView = pmFPAviewAlloc(view->nRows); // Copy of input view
+    *thisView = *view;
+
+    for (int i = 0; i < fpa->chips->n; i++) {
+        pmChip *chip = fpa->chips->data[i];
+        thisView->chip = i;
+        pmChipReadExpNum(chip, thisView, file, config);
+    }
+    psFree(thisView);
+
+    if (!pmFPAReadHeader(fpa, file->fits, config)) {
+        psError(PS_ERR_IO, false, "Unable to read header for cell.");
+        return false;
+    }
+    if (!pmConceptsReadFPA(fpa, PM_CONCEPT_SOURCE_HEADER, true, NULL)) {
+        psError(PS_ERR_IO, false, "Failed to read concepts for fpa.\n");
+        return false;
+    }
+
+    return true;
+}
+
+//////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+bool pmExpNumRead(const pmFPAview *view, pmFPAfile *file, pmConfig *config)
+{
+    PS_ASSERT_PTR_NON_NULL(view, false);
+    PS_ASSERT_PTR_NON_NULL(file, false);
+    PS_ASSERT_PTR_NON_NULL(file->fpa, false);
+
+    pmFPA *fpa = file->fpa;
+
+    if (view->chip == -1) {
+        pmFPAReadExpNum(fpa, view, file, config);
+        return true;
+    }
+
+    if (view->chip >= fpa->chips->n) {
+        return false;
+    }
+    pmChip *chip = fpa->chips->data[view->chip];
+
+    if (view->cell == -1) {
+        pmChipReadExpNum(chip, view, file, config);
+        return true;
+    }
+
+    if (view->cell >= chip->cells->n) {
+        return false;
+    }
+    pmCell *cell = chip->cells->data[view->cell];
+
+    if (view->readout == -1) {
+        pmCellReadExpNum(cell, view, file, config);
+        return true;
+    }
+
+    if (view->readout >= cell->readouts->n) {
+        return false;
+    }
+    pmReadout *readout = cell->readouts->data[view->readout];
+
+    return pmReadoutReadExpNum(readout, file->fits);
+}
+#ifdef notyet
+// Currently only ppStack writes an EXPNUM image and it uses file type MASK
+bool pmReadoutWriteExpNum(pmReadout *ro, psFits *fits)
+{
+    PM_ASSERT_READOUT_NON_NULL(ro, false);
+    PS_ASSERT_FITS_NON_NULL(fits, false);
+
+    bool gotRow, gotCell;
+    psImage *rowCorr = psMetadataLookupPtr(&gotRow, ro->analysis, PM_PATTERN_ROW_CORRECTION); // Row correction
+    float cellCorr = psMetadataLookupF32(&gotCell, ro->analysis, PM_PATTERN_CELL_CORRECTION); // Cell corr.
+
+    pmCell *cell = ro->parent;          // Cell of interest
+    if (!cell) {
+        psError(PS_ERR_UNEXPECTED_NULL, true, "No cell associated with readout.");
+        return false;
+    }
+    pmChip *chip = cell->parent;    // Chip of interest
+    pmFPA *fpa = chip->parent;      // FPA of interest
+    pmHDU *hdu = pmHDUGetLowest(fpa, chip, cell); // HDU for readout
+    if (!hdu) {
+        psError(PS_ERR_UNEXPECTED_NULL, true, "No HDU associated with readout.");
+        return false;
+    }
+
+    psMetadata *header = psMetadataCopy(NULL, hdu->header); // Header for output
+
+    if (gotCell) {
+        psMetadataAddF32(header, PS_LIST_TAIL, PM_PATTERN_CELL_CORRECTION, PS_META_REPLACE,
+                         "ExpNum cell correction value", cellCorr);
+    }
+
+    if (gotRow) {
+        if (!psFitsWriteImage(fits, header, rowCorr, 0, hdu->extname)) {
+            psError(PS_ERR_IO, false, "Unable to write pattern row correction.");
+            psFree(header);
+            return false;
+        }
+    } else {
+        if (!psFitsWriteBlank(fits, header, hdu->extname)) {
+            psError(PS_ERR_IO, false, "Unable to write pattern cell correction.");
+            psFree(header);
+            return false;
+        }
+    }
+
+    psFree(header);
+    return true;
+}
+
+static bool pmCellWriteExpNum(pmCell *cell, const pmFPAview *view,
+                               pmFPAfile *file, pmConfig *config)
+{
+    PS_ASSERT_PTR_NON_NULL(cell, false);
+    PS_ASSERT_PTR_NON_NULL(cell->readouts, false);
+    PS_ASSERT_PTR_NON_NULL(view, false);
+
+    if (!pmConceptsWriteCell(cell, true, config)) {
+        psError(PS_ERR_IO, false, "Unable to write concepts for cell.");
+        return false;
+    }
+
+    // Only do the FIRST readout --- don't want to write lots of headers
+    pmReadout *readout = cell->readouts->data[0];
+    if (!pmReadoutWriteExpNum(readout, file->fits)) {
+        psError(PS_ERR_IO, false, "Failed to write readout");
+        return false;
+    }
+    return true;
+}
+
+static bool pmChipWriteExpNum(pmChip *chip, const pmFPAview *view,
+                               pmFPAfile *file, pmConfig *config)
+{
+    PS_ASSERT_PTR_NON_NULL(chip, false);
+    PS_ASSERT_PTR_NON_NULL(chip->cells, false);
+    PS_ASSERT_PTR_NON_NULL(view, false);
+
+    if (!pmConceptsWriteChip(chip, true, true, config)) {
+        psError(PS_ERR_IO, false, "Unable to write concepts for chip.\n");
+        return false;
+    }
+
+    pmFPAview *thisView = pmFPAviewAlloc(view->nRows); // Copy of input view
+    *thisView = *view;
+
+    for (int i = 0; i < chip->cells->n; i++) {
+        pmCell *cell = chip->cells->data[i];
+        thisView->cell = i;
+        if (!pmCellWriteExpNum(cell, thisView, file, config)) {
+            psError(PS_ERR_IO, false, "Failed to write %dth cell", i);
+            psFree(thisView);
+            return false;
+        }
+    }
+    psFree(thisView);
+    return true;
+}
+
+static bool pmFPAWriteExpNum(pmFPA *fpa, const pmFPAview *view,
+                              pmFPAfile *file, pmConfig *config)
+{
+    PS_ASSERT_PTR_NON_NULL(view, false);
+    PS_ASSERT_PTR_NON_NULL(fpa, false);
+    PS_ASSERT_PTR_NON_NULL(fpa->chips, false);
+
+    if (!pmConceptsWriteFPA(fpa, true, config)) {
+        psError(PS_ERR_IO, false, "Unable to write concepts for FPA.\n");
+        return false;
+    }
+
+    pmFPAview *thisView = pmFPAviewAlloc(view->nRows); // Copy of input view
+    *thisView = *view;
+
+    for (int i = 0; i < fpa->chips->n; i++) {
+        pmChip *chip = fpa->chips->data[i];
+        thisView->chip = i;
+        if (!pmChipWriteExpNum(chip, thisView, file, config)) {
+            psError(PS_ERR_IO, false, "Failed to write %dth chip", i);
+            psFree(thisView);
+            return false;
+        }
+    }
+    psFree(thisView);
+    return true;
+}
+//////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+// Currently only ppStack writes an EXPNUM image and it uses file type MASK
+bool pmExpNumWrite(const pmFPAview *view, pmFPAfile *file, pmConfig *config)
+{
+    PS_ASSERT_PTR_NON_NULL(view, false);
+    PS_ASSERT_PTR_NON_NULL(file, false);
+    PS_ASSERT_PTR_NON_NULL(file->fpa, false);
+
+    pmFPA *fpa = pmFPAfileSuitableFPA(file, view, config, false); // Suitable FPA for writing
+
+    if (view->chip == -1) {
+        if (!pmFPAWriteExpNum(fpa, view, file, config)) {
+            psError(PS_ERR_IO, false, "Failed to write pattern correction from fpa");
+            psFree(fpa);
+            return false;
+        }
+        psFree(fpa);
+        return true;
+    }
+
+    if (view->chip >= fpa->chips->n) {
+        psError(PS_ERR_UNKNOWN, false, "Writing chip == %d (>= chips->n == %ld)", view->chip, fpa->chips->n);
+        psFree(fpa);
+        return false;
+    }
+    pmChip *chip = fpa->chips->data[view->chip];
+
+    if (view->cell == -1) {
+        if (!pmChipWriteExpNum(chip, view, file, config)) {
+            psError(PS_ERR_IO, false, "Failed to write pattern correction from chip");
+            psFree(fpa);
+            return false;
+        }
+        psFree(fpa);
+        return true;
+    }
+
+    if (view->cell >= chip->cells->n) {
+        psError(PS_ERR_UNKNOWN, false, "Writing cell == %d (>= cells->n == %ld)",
+                view->cell, chip->cells->n);
+        psFree(fpa);
+        return false;
+    }
+    pmCell *cell = chip->cells->data[view->cell];
+
+    if (view->readout == -1) {
+        if (!pmCellWriteExpNum(cell, view, file, config)) {
+            psError(PS_ERR_IO, false, "Failed to write pattern correction from cell");
+            psFree(fpa);
+            return false;
+        }
+        psFree(fpa);
+        return true;
+    }
+
+    if (view->readout >= cell->readouts->n) {
+        psError(PS_ERR_UNKNOWN, false, "Writing readout == %d (>= readouts->n == %ld)",
+                view->readout, cell->readouts->n);
+        psFree(fpa);
+        return false;
+    }
+    pmReadout *readout = cell->readouts->data[view->readout];
+
+    if (!pmReadoutWriteExpNum(readout, file->fits)) {
+        psError(PS_ERR_IO, false, "Failed to write pattern correction from readout %d", view->readout);
+        psFree(fpa);
+        return false;
+    }
+
+    psFree(fpa);
+    return true;
+}
+
+bool pmExpNumWritePHU(const pmFPAview *view, pmFPAfile *file, pmConfig *config)
+{
+    PS_ASSERT_PTR_NON_NULL(view, false);
+    PS_ASSERT_PTR_NON_NULL(file, false);
+
+    if (file->wrote_phu) {
+        return true;
+    }
+
+    // find the FPA phu
+    pmFPA *fpa = pmFPAfileSuitableFPA(file, view, config, false); // Suitable FPA for writing
+    pmHDU *phu = psMemIncrRefCounter(pmFPAviewThisPHU(view, fpa));
+    psFree(fpa);
+
+    // if there is no PHU, this is a single header+image (extension-less) file. This could be the case for an
+    // input SPLIT set of files being written out as a MEF.  if there is a PHU, write it out as a 'blank'
+    psMetadata *outhead = psMetadataAlloc();
+    if (phu) {
+        psMetadataCopy (outhead, phu->header);
+    }
+    psFree(phu);
+
+    pmConfigConformHeader(outhead, file->format);
+
+    psFitsWriteBlank(file->fits, outhead, "");
+    file->wrote_phu = true;
+
+    psTrace("pmFPAfile", 5, "wrote phu %s (type: %d)\n", file->filename, file->type);
+    psFree(outhead);
+
+    return true;
+}
+#endif // notyet
+
Index: branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAExpNumIO.h
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAExpNumIO.h	(revision 34041)
+++ branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAExpNumIO.h	(revision 34041)
@@ -0,0 +1,36 @@
+#ifndef PM_EXPNUM_IO_H
+#define PM_EXPNUM_IO_H
+
+#include <pslib.h>
+
+#include <pmHDU.h>
+#include <pmFPA.h>
+
+
+bool pmExpNumRead(const pmFPAview *view, ///< View into which to read
+                   pmFPAfile *file, ///< File from which to read
+                   pmConfig *config ///< Configuration
+    );
+
+#ifdef notyet
+// Currently we don't need write functions for the EXPNUM images. 
+// Only ppStack creates them and it uses a MASK file type
+
+/// Write pattern correction within a readout to a FITS file
+bool pmReadoutWritePattern(
+    pmReadout *readout,                 ///< Readout for which to write pattern correction (in analysis MD)
+    psFits *fits                        ///< FITS file to which to write
+    );
+bool pmPatternWrite(const pmFPAview *view, ///< View from which to write
+                    pmFPAfile *file, ///< File to which to write
+                    pmConfig *config ///< Configuration
+    );
+
+bool pmPatternWritePHU(const pmFPAview *view, // View to PHU
+                       pmFPAfile *file, ///< File to which to write
+                       pmConfig *config ///< Configuration
+    );
+
+#endif // notyet
+
+#endif
Index: branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAfile.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAfile.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAfile.c	(revision 34041)
@@ -382,5 +382,5 @@
         // Number of the file in list
         psString num = NULL;            // Number to use
-        psStringAppend(&num, "%03d", file->fileID);
+        psStringAppend(&num, "%" PRId64, file->fileID);
         psStringSubstitute(&newRule, num, "{FILE.ID}");
         psFree(num);
@@ -543,4 +543,7 @@
     if (!strcasecmp(type, "PATTERN")) {
         return PM_FPA_FILE_PATTERN;
+    }
+    if (!strcasecmp(type, "EXPNUM")) {
+        return PM_FPA_FILE_EXPNUM;
     }
 
@@ -589,4 +592,6 @@
       case PM_FPA_FILE_PATTERN:
         return "PATTERN";
+      case PM_FPA_FILE_EXPNUM:
+        return "EXPNUM";
       default:
         return ("NONE");
Index: branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAfile.h
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAfile.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAfile.h	(revision 34041)
@@ -51,4 +51,5 @@
     PM_FPA_FILE_PATTERN,
     PM_FPA_FILE_LINEARITY,
+    PM_FPA_FILE_EXPNUM,
 } pmFPAfileType;
 
@@ -113,5 +114,5 @@
 
     int fileIndex;			// Index of file
-    int fileID;				// internal sequence number
+    psS64 fileID;		        // internal sequence number
 
     psS64 imageId, sourceId;            // Image and source identifiers
Index: branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAfileIO.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAfileIO.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/camera/pmFPAfileIO.c	(revision 34041)
@@ -53,4 +53,5 @@
 #include "pmSubtractionIO.h"
 #include "pmPatternIO.h"
+#include "pmFPAExpNumIO.h"
 #include "pmConcepts.h"
 #include "pmConfigRun.h"
@@ -231,4 +232,7 @@
         status = pmAstromModelReadForView (view, file, config);
         break;
+      case PM_FPA_FILE_EXPNUM:
+        status = pmExpNumRead(view, file, config);
+        break;
       case PM_FPA_FILE_ASTROM_REFSTARS:
       case PM_FPA_FILE_JPEG:
@@ -291,4 +295,5 @@
       case PM_FPA_FILE_DARK:
       case PM_FPA_FILE_PATTERN:
+      case PM_FPA_FILE_EXPNUM:
         {
             // create FPA structure component based on view
@@ -500,4 +505,9 @@
         status = pmFPAviewWriteSourcePlot (view, file, config);
         break;
+
+      case PM_FPA_FILE_EXPNUM:
+        // when ppStack output's EXPNUM file it uses a file rule where the file type is MASK
+        psError(PS_ERR_IO, true, "cannot write type EXPNUM (%s)", file->name);
+        return false;
 
       case PM_FPA_FILE_WCS:
@@ -562,4 +572,5 @@
       case PM_FPA_FILE_ASTROM_REFSTARS:
       case PM_FPA_FILE_LINEARITY:
+      case PM_FPA_FILE_EXPNUM:
         psTrace ("psModules.camera", 5, "closing %s (%s) (%d:%d:%d)\n", file->filename, file->name, view->chip, view->cell, view->readout);
         status = psFitsClose (file->fits);
@@ -636,4 +647,5 @@
       case PM_FPA_FILE_ASTROM_MODEL:
       case PM_FPA_FILE_ASTROM_REFSTARS:
+      case PM_FPA_FILE_EXPNUM:
         psTrace ("psModules.camera", 6, "NOT freeing %s (%s) : save for further analysis\n", file->filename, file->name);
         return true;
@@ -797,4 +809,5 @@
       case PM_FPA_FILE_ASTROM_REFSTARS:
       case PM_FPA_FILE_LINEARITY:
+      case PM_FPA_FILE_EXPNUM:
         psTrace ("psModules.camera", 5, "opening %s (%s) (%d:%d:%d)\n",
                  file->filename, file->name, view->chip, view->cell, view->readout);
@@ -996,4 +1009,5 @@
         status = pmAstromRefstarsWritePHU (view, file, config);
         break;
+      case PM_FPA_FILE_EXPNUM:
       case PM_FPA_FILE_ASTROM_MODEL:
       case PM_FPA_FILE_SX:
Index: branches/meh_branches/ppstack_test/psModules/src/camera/pmReadoutFake.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/camera/pmReadoutFake.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/camera/pmReadoutFake.c	(revision 34041)
@@ -162,4 +162,9 @@
             fakeRadius = PS_MAX(fakeRadius, fakeModel->modelRadius(fakeModel->params, minFlux));
         }
+	//MEH - add some outputs to test --
+        psTrace("psModules.camera", 10, "TESTING:: source at %f,%f: radius %f fakeradius %f minflux %f psf params later \n",
+                fakeModel->params->data.F32[PM_PAR_XPOS],fakeModel->params->data.F32[PM_PAR_YPOS],radius,fakeRadius,minFlux);
+	//MEH -- seems radius is passed as float 0.0.. hardcode test - 
+
         if (radius > 0) {
             fakeRadius = PS_MAX(fakeRadius, radius);
@@ -210,9 +215,12 @@
     const pmPSF *psf = args->data[7];         // PSF
     float minFlux = PS_SCALAR_VALUE(args->data[8], F32); // Minimum flux
-    float radius = PS_SCALAR_VALUE(args->data[9], F32);  // Minimum radius
+    float radius = PS_SCALAR_VALUE(args->data[9], S32);  // Minimum radius - typecast to float from S32 outside of PS_SCALAR_VALUE otherwise sets 0.0 
     bool circularise = PS_SCALAR_VALUE(args->data[10], U8); // Circularise PSF?
     bool normalisePeak = PS_SCALAR_VALUE(args->data[11], U8); // Normalise for peak?
     int groupIndex = PS_SCALAR_VALUE(args->data[12], S32); // Group index
     int cellIndex = PS_SCALAR_VALUE(args->data[13], S32);  // Cell index
+
+    //MEH
+    psTrace("psModules.camera", 10, "TESTING:thread: radius %f minflux %f  \n",radius,minFlux);
 
     return readoutFake(readout, groups, x, y, mag, xOffset, yOffset, psf, minFlux, radius, circularise,
@@ -242,5 +250,4 @@
     return old;
 }
-
 
 bool pmReadoutFakeFromVectors(pmReadout *readout, int numCols, int numRows,
@@ -287,4 +294,5 @@
     }
 
+    psTrace("psModules.camera", 10, "TESTING:prethread: radius %d minflux %f threaded %d \n",radius,minFlux,threaded);
     if (threaded) {
         for (int i = 0; i < groups->groups->n; i++) {
@@ -303,4 +311,5 @@
                 psArrayAdd(args, 1, (pmPSF*)psf);
                 PS_ARRAY_ADD_SCALAR(args, minFlux, PS_TYPE_F32);
+		//MEH - S32 is proper type here
                 PS_ARRAY_ADD_SCALAR(args, radius, PS_TYPE_S32);
                 PS_ARRAY_ADD_SCALAR(args, circularise, PS_TYPE_U8);
@@ -349,5 +358,4 @@
 }
 
-
 bool pmReadoutFakeFromSources(pmReadout *readout, int numCols, int numRows, const psArray *sources,
                               pmSourceMode sourceMask, const psVector *xOffset, const psVector *yOffset,
@@ -392,4 +400,7 @@
     mag->n = numGood;
 
+    //MEH -- convert int->float for calling downstream since nothing calls Vectors directly? psphot does.. argh!
+    psTrace("psModules.camera", 10, "TESTING:: radius %d minflux %f  \n",radius,minFlux);
+
     bool status = pmReadoutFakeFromVectors(readout, numCols, numRows, x, y, mag, xOffset, yOffset, psf,
                                            minFlux, radius, circularise, normalisePeak);
Index: branches/meh_branches/ppstack_test/psModules/src/detrend/pmDetrendDB.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/detrend/pmDetrendDB.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/detrend/pmDetrendDB.c	(revision 34041)
@@ -107,4 +107,6 @@
         DETREND_STRING_CASE(ASTROM);
         DETREND_STRING_CASE(NOISEMAP);
+	DETREND_STRING_CASE(VIDEOMASK);
+	DETREND_STRING_CASE(VIDEODARK);
 	DETREND_STRING_CASE(LINEARITY);
     default:
Index: branches/meh_branches/ppstack_test/psModules/src/detrend/pmDetrendDB.h
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/detrend/pmDetrendDB.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/detrend/pmDetrendDB.h	(revision 34041)
@@ -36,4 +36,6 @@
     PM_DETREND_TYPE_ASTROM,
     PM_DETREND_TYPE_NOISEMAP,
+    PM_DETREND_TYPE_VIDEOMASK,
+    PM_DETREND_TYPE_VIDEODARK,
     PM_DETREND_TYPE_LINEARITY,
 } pmDetrendType;
Index: branches/meh_branches/ppstack_test/psModules/src/extras/psVectorBracket.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/extras/psVectorBracket.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/extras/psVectorBracket.c	(revision 34041)
@@ -51,6 +51,6 @@
         }
     }
-    // at this point, index[Nhi] >= key > index[Nlo]
-    N = Nhi;
+    N = (Nhi >= index->n) ? Nhi - 1 : Nhi;
+    // at this point, index[N] >= key > index[Nlo]
     while ((index->data.F32[N] >= key) && (N > Nlo)) {
         N--;
Index: branches/meh_branches/ppstack_test/psModules/src/imcombine/pmSubtraction.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/imcombine/pmSubtraction.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/imcombine/pmSubtraction.c	(revision 34041)
@@ -835,4 +835,5 @@
 //#ifdef TESTING
     //MEH fix index issue - index is supposed to be an image index but from where?
+    //MEH - index conflict or changed in past?
     for (int j = 0; j < kernels->num; j++) {
         if (stamp->convolutions1) {
Index: branches/meh_branches/ppstack_test/psModules/src/imcombine/pmSubtractionStamps.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/imcombine/pmSubtractionStamps.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/imcombine/pmSubtractionStamps.c	(revision 34041)
@@ -1232,5 +1232,13 @@
 	// XXX this is somewhat arbitrary...
 	if (source->psfMagErr > 0.05) continue;
-	if (fabs(source->psfMag - source->apMag) > 0.5) continue;
+        if (isfinite(source->apMag)) {
+            if (fabs(source->psfMag - source->apMag) > 0.5) continue;
+        } else if (isfinite(source->apMagRaw)) {
+            if (fabs(source->psfMag - source->apMagRaw) > 0.5) continue;
+        } else {
+            // XXX: Should we carry on or drop this source?
+            // drop it for now
+            continue;
+        }
 
         if (source->modelPSF) {
Index: branches/meh_branches/ppstack_test/psModules/src/objects/models/pmModel_QGAUSS.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/models/pmModel_QGAUSS.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/models/pmModel_QGAUSS.c	(revision 34041)
@@ -402,4 +402,9 @@
     assert (psf->params->n > PM_PAR_YPOS);
     assert (psf->params->n > PM_PAR_XPOS);
+
+    if (! isfinite(Io)) {
+        fprintf(stderr, "non-finite Io passed to PM_MODEL_PARAMS_FROM_PSF\n");
+        return false;
+    }
 
     PAR[PM_PAR_SKY]  = 0.0;
Index: branches/meh_branches/ppstack_test/psModules/src/objects/models/pmModel_SERSIC.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/models/pmModel_SERSIC.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/models/pmModel_SERSIC.c	(revision 34041)
@@ -192,4 +192,10 @@
     psF32 z0 = PAR[PM_PAR_I0]*f1;
     psF32 f0 = PAR[PM_PAR_SKY] + z0;
+
+    if (!isfinite(z0)) {
+        fprintf(stderr, "z0 is not finite for %f %f %f %f %f.  Parameters: \n", X, Y, radius, z, f1);
+        fprintf(stderr, "%f %f %f %f %f %f %f %f\n", PAR[0], PAR[1], PAR[2], PAR[3], PAR[4],
+            PAR[5], PAR[6], PAR[7]);
+    }
 
     assert (isfinite(f2));
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmFootprintCullPeaks.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmFootprintCullPeaks.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmFootprintCullPeaks.c	(revision 34041)
@@ -178,9 +178,9 @@
 	    psArray *myFP = pmFootprintsFind(subImg, threshold, 5);
 	    if (!myFP) {
-		psWarning ("missing footprint?");
+		psWarning ("missing footprint? threshold: %.f", threshold);
 		continue;
 	    }
 	    if (!myFP->n) {
-		psWarning ("empty footprint?");
+		psWarning ("empty footprint? threshold: %.f", threshold);
 		psFree (myFP);
 		continue;
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmModelFuncs.h
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmModelFuncs.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmModelFuncs.h	(revision 34041)
@@ -29,4 +29,6 @@
 # define PM_MODEL_FUNCS_H
 
+# define HAVE_MODEL_VAR 1
+
 /// @addtogroup Objects Object Detection / Analysis Functions
 /// @{
@@ -46,13 +48,16 @@
 
 typedef enum {
-    PM_MODEL_OP_NONE    = 0x00,
-    PM_MODEL_OP_FUNC    = 0x01,
-    PM_MODEL_OP_RES0    = 0x02,
-    PM_MODEL_OP_RES1    = 0x04,
-    PM_MODEL_OP_FULL    = 0x07,
-    PM_MODEL_OP_SKY     = 0x08,
-    PM_MODEL_OP_CENTER  = 0x10,
-    PM_MODEL_OP_NORM    = 0x20,
-    PM_MODEL_OP_NOISE   = 0x40,
+    PM_MODEL_OP_NONE     = 0x00,
+    PM_MODEL_OP_FUNC     = 0x01,
+    PM_MODEL_OP_RES0     = 0x02,
+    PM_MODEL_OP_RES1     = 0x04,
+    PM_MODEL_OP_FULL     = 0x07,
+    PM_MODEL_OP_SKY      = 0x08,
+    PM_MODEL_OP_CENTER   = 0x10,
+    PM_MODEL_OP_NORM     = 0x20,
+    PM_MODEL_OP_NOISE    = 0x40,
+# if (HAVE_MODEL_VAR)
+    PM_MODEL_OP_MODELVAR = 0x80,
+# endif
 } pmModelOpMode;
 
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmModelUtils.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmModelUtils.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmModelUtils.c	(revision 34041)
@@ -144,8 +144,16 @@
 
     *Io = source->peak->rawFlux;
+
+#ifndef ALLOW_NONFINITE_PEAK
+    // Gene says fail of peak !finite
+    if (!isfinite(*Io)) return false;
+#else 
+    // This is the way it used to be. Somtimes an infinite value Io made it's way down the pipeline
+    // causing assertion failures
     if (!isfinite(*Io) && !source->moments) return false;
 
     *Io = source->moments->Peak;
     if (!isfinite(*Io)) return false;
+#endif
 
     return true;
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmPCMdata.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmPCMdata.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmPCMdata.c	(revision 34041)
@@ -136,4 +136,18 @@
 	    sum += value;
 	}
+    }
+
+    if (!(sum > 0.0)) {
+        // Crazy PSF image print out some debugging information ...
+        fprintf(stderr, "invalid kernel sum %f found by pmPCMkernelFromPSF\n", sum);    for (int j = psf->yMin; j <= psf->yMax; j++) {
+            fprintf(stderr, "Row %d\n", j);
+            for (int i = psf->xMin; i <= psf->xMax; i++) {
+                double value = source->psfImage->data.F32[y0 + j][x0 + i];
+                fprintf(stderr, "  %d %f\n", i, value);
+            }
+        }
+        fflush(stderr);
+        // ... but avoid the asssertion two lines down by escaping
+        goto escape;
     }
     assert (sum > 0.0);
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmPSF.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmPSF.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmPSF.c	(revision 34041)
@@ -455,5 +455,6 @@
         return NAN;
     }
-
+    //MEH -- multiple ways of doing this in past? add param details to log useful for ppStack?
+   
     // get the model full-width at half-max
     float fwhmMajor = 2*model->modelRadius (model->params, 0.5);
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmPSFtryFitEXT.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmPSFtryFitEXT.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmPSFtryFitEXT.c	(revision 34041)
@@ -73,4 +73,12 @@
             continue;
         }
+        // If mask object does not exist, mark the source as bad.
+        // We cannot proceed with it because psImageMaskPixels leaves an uncleared error code last which causes
+        // psphot to exit with a fault. 
+        if (source->maskObj == NULL) {
+            psTrace ("psModules.objects", 4, "source %d (%d,%d) : null maskObj\n", i, source->peak->x, source->peak->y);
+            psfTry->mask->data.PS_TYPE_VECTOR_MASK_DATA[i] = PSFTRY_MASK_EXT_FAIL;
+            continue;
+        }
 
         source->modelEXT = pmSourceModelGuess (source, options->type);
@@ -89,5 +97,5 @@
 
         // clear object mask to define valid pixels
-	psImageMaskPixels (source->maskObj, "AND", PS_NOT_IMAGE_MASK(markVal)); // clear the circular mask
+        psImageMaskPixels (source->maskObj, "AND", PS_NOT_IMAGE_MASK(markVal)); // clear the circular mask
 
         // exclude the poor fits
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSource.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSource.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSource.c	(revision 34041)
@@ -39,4 +39,5 @@
 #include "pmSourceExtendedPars.h"
 #include "pmSourceDiffStats.h"
+#include "pmSourcePhotometry.h"
 #include "pmSource.h"
 
@@ -50,4 +51,7 @@
     psFree(tmp->pixels);
     psFree(tmp->variance);
+# if (HAVE_MODEL_VAR)
+    psFree(tmp->modelVar);
+# endif
     psFree(tmp->maskObj);
     psFree(tmp->maskView);
@@ -76,4 +80,7 @@
     psFree (source->pixels);
     psFree (source->variance);
+# if (HAVE_MODEL_VAR)
+    psFree (source->modelVar);
+# endif
     psFree (source->maskObj);
     psFree (source->maskView);
@@ -83,4 +90,7 @@
     source->pixels = NULL;
     source->variance = NULL;
+# if (HAVE_MODEL_VAR)
+    source->modelVar = NULL;
+# endif
     source->maskObj = NULL;
     source->maskView = NULL;
@@ -112,4 +122,7 @@
     source->pixels = NULL;
     source->variance = NULL;
+# if (HAVE_MODEL_VAR)
+    source->modelVar = NULL;
+# endif
     source->maskObj = NULL;
     source->maskView = NULL;
@@ -159,5 +172,7 @@
     source->radialAper = NULL;
     source->parent = NULL;
+    source->tmpPtr = NULL;
     source->imageID = -1;
+    source->nFrames = 0;
 
     psMemSetDeallocator(source, (psFreeFunc) sourceFree);
@@ -197,4 +212,7 @@
     source->pixels   = in->pixels   ? psImageCopyView(NULL, in->pixels)   : NULL;
     source->variance = in->variance ? psImageCopyView(NULL, in->variance) : NULL;
+# if (HAVE_MODEL_VAR)
+    source->modelVar = NULL;
+# endif
     source->maskView = in->maskView ? psImageCopyView(NULL, in->maskView) : NULL;
 
@@ -1026,4 +1044,9 @@
     bool addNoise = mode & PM_MODEL_OP_NOISE;
 
+# if (HAVE_MODEL_VAR)
+    bool addModelVar = mode & PM_MODEL_OP_MODELVAR;
+    if (addModelVar) psAssert (source->modelVar, "programming error");
+# endif
+
     // require the use of pmModelAddWithOffset if we are adding noise (because the model size and norm are rescaled)
     if (!addNoise && source->modelFlux) {
@@ -1047,5 +1070,9 @@
         }
 
+# if (HAVE_MODEL_VAR)
+        psF32 **target = addModelVar ? source->modelVar->data.F32 : source->pixels->data.F32;
+# else
         psF32 **target = source->pixels->data.F32;
+# endif
 
         for (int iy = 0; iy < source->modelFlux->numRows; iy++) {
@@ -1062,4 +1089,13 @@
             }
         }
+# if (HAVE_MODEL_VAR)
+	if (!addModelVar) {
+	    if (add) {
+		source->tmpFlags &= ~PM_SOURCE_TMPF_SUBTRACTED;
+	    } else {
+		source->tmpFlags |= PM_SOURCE_TMPF_SUBTRACTED;
+	    }
+	}
+# else
 	if (add) {
 	    source->tmpFlags &= ~PM_SOURCE_TMPF_SUBTRACTED;
@@ -1067,4 +1103,5 @@
 	    source->tmpFlags |= PM_SOURCE_TMPF_SUBTRACTED;
 	}
+# endif
         return true;
     }
@@ -1074,11 +1111,24 @@
         target = source->variance;
     }
+# if (HAVE_MODEL_VAR)
+    if (addModelVar) {
+        target = source->modelVar;
+    }
+# endif
 
     if (add) {
 	status = pmModelAddWithOffset (target, source->maskObj, model, PM_MODEL_OP_FULL, maskVal, dx, dy);
+# if (HAVE_MODEL_VAR)
+	if (!addNoise && !addModelVar) source->tmpFlags &= ~PM_SOURCE_TMPF_SUBTRACTED;
+# else
 	source->tmpFlags &= ~PM_SOURCE_TMPF_SUBTRACTED;
+# endif
     } else {
 	status = pmModelSubWithOffset (target, source->maskObj, model, PM_MODEL_OP_FULL, maskVal, dx, dy);
+# if (HAVE_MODEL_VAR)
+	if (!addNoise && !addModelVar) source->tmpFlags |= PM_SOURCE_TMPF_SUBTRACTED;
+# else
 	source->tmpFlags |= PM_SOURCE_TMPF_SUBTRACTED;
+# endif
     }
 
@@ -1156,4 +1206,92 @@
     PAR[PM_PAR_SYY] = oldshape.sy;
     PAR[PM_PAR_SXY] = oldshape.sxy;
+
+    return true;
+}
+
+bool pmSourceSmoothOp (pmSource *source, pmModelOpMode mode, psImage *target, float sigma, bool add, psImageMaskType maskVal, int dx, int dy)
+{
+//    assert (mode & PM_MODEL_OP_NOISE);
+    PS_ASSERT_PTR_NON_NULL(source, false);
+    PS_ASSERT_PTR_NON_NULL(source->peak, false);
+    PS_ASSERT_PTR_NON_NULL(target, false);
+
+    if (add) {
+        psTrace ("psphot", 3, "adding smoothed object at %f,%f\n", source->peak->xf, source->peak->yf);
+    } else {
+        psTrace ("psphot", 3, "removing smooted object at %f,%f\n", source->peak->xf, source->peak->yf);
+    }
+
+    pmModel *model = pmSourceGetModel(NULL, source);
+    if (!model) {
+        return false;
+    }
+    pmSourceSmoothOpModel (model, source, mode, target, sigma, add, maskVal, dx, dy);
+
+    return true;
+}
+
+bool pmSourceSmoothOpModel (pmModel *model, pmSource *source, pmModelOpMode mode, psImage *target, float sigma, bool add, psImageMaskType maskVal, int dx, int dy) 
+{
+    bool status;
+    psEllipseShape oldshape;
+    psEllipseShape newshape;
+    psEllipseAxes axes;
+
+    if (add) {
+	psTrace ("psphot", 4, "adding smoothed object at %f,%f\n", model->params->data.F32[PM_PAR_XPOS], model->params->data.F32[PM_PAR_YPOS]);
+    } else {
+	psTrace ("psphot", 4, "removing smoothed object at %f,%f\n", model->params->data.F32[PM_PAR_XPOS], model->params->data.F32[PM_PAR_YPOS]);
+    }
+
+    psF32 *PAR = model->params->data.F32;
+
+    // Isn't this hanging around somewhere?
+    float oldFlux = NAN;
+    if (!pmSourcePhotometryModel (NULL, &oldFlux, model)) return false;
+
+    // save original values
+    float oldI0  = PAR[PM_PAR_I0];
+    float oldsxx = PAR[PM_PAR_SXX];
+    float oldsyy = PAR[PM_PAR_SYY];
+    float oldsxy = PAR[PM_PAR_SXY];
+
+    // Since we are going to scale the flux correctly we need to get our
+    // factors of sqrt(2) right
+    oldshape.sx  = oldsxx / M_SQRT2;
+    oldshape.sy  = oldsyy / M_SQRT2;
+    oldshape.sxy = oldsxy;
+
+    // XXX can this be done more intelligently?
+    if (oldI0 == 0.0) return false;
+    if (!isfinite(oldI0)) return false;
+
+    // increase size and height of source
+    axes = psEllipseShapeToAxes (oldshape, 20.0);
+    axes.major = sqrt(PS_SQR(axes.major) + PS_SQR(sigma));
+    axes.minor = sqrt(PS_SQR(axes.minor) + PS_SQR(sigma));
+    newshape = psEllipseAxesToShape (axes);
+    PAR[PM_PAR_SXX] = newshape.sx * M_SQRT2;
+    PAR[PM_PAR_SYY] = newshape.sy * M_SQRT2;
+    PAR[PM_PAR_SXY] = newshape.sxy;
+
+    PAR[PM_PAR_I0]  = 1.0;
+
+    float newFlux;
+    if (!pmSourcePhotometryModel (NULL, &newFlux, model)) return false;
+
+    PAR[PM_PAR_I0]  = oldFlux / newFlux;
+
+    if (add) {
+	status = pmModelAddWithOffset (target, source->maskObj, model, mode, maskVal, dx, dy);
+    } else {
+	status = pmModelSubWithOffset (target, source->maskObj, model, mode, maskVal, dx, dy);
+    }
+
+    // restore original values
+    PAR[PM_PAR_I0]  = oldI0;
+    PAR[PM_PAR_SXX] = oldsxx;
+    PAR[PM_PAR_SYY] = oldsyy;
+    PAR[PM_PAR_SXY] = oldsxy;
 
     return true;
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSource.h
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSource.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSource.h	(revision 34041)
@@ -72,4 +72,7 @@
     psImage *pixels;                    ///< Rectangular region including object pixels.
     psImage *variance;			///< Image variance.
+# if (HAVE_MODEL_VAR)
+    psImage *modelVar;			///< variance based on current models
+# endif
     psImage *maskObj;                   ///< unique mask for this object which marks included pixels associated with objects.
     psImage *maskView;                  ///< view into global image mask for this object region
@@ -117,5 +120,7 @@
     psArray *radialAper;		///< radial flux in circular apertures
     pmSource *parent;			///< reference to the master source from which this is derived
+    psPtr *tmpPtr;                      ///< pointer that may be used to store data in a particular module. e.g. psphotKronIterate.
     int imageID;
+    psU16 nFrames;
 };
 
@@ -301,4 +306,7 @@
 bool pmSourceNoiseOp (pmSource *source, pmModelOpMode mode, float FACTOR, float SIZE, bool add, psImageMaskType maskVal, int dx, int dy);
 
+bool pmSourceSmoothOp (pmSource *source, pmModelOpMode mode, psImage *target, float sigma, bool add, psImageMaskType maskVal, int dx, int dy);
+bool pmSourceSmoothOpModel (pmModel *model, pmSource *source, pmModelOpMode mode, psImage *target, float sigma, bool add, psImageMaskType maskVal, int dx, int dy);
+
 bool pmSourceOp (pmSource *source, pmModelOpMode mode, bool add, psImageMaskType maskVal, int dx, int dy);
 bool pmSourceCacheModel (pmSource *source, psImageMaskType maskVal);
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO.c	(revision 34041)
@@ -1069,4 +1069,9 @@
                 for (long i = sources->n -1; i >= 0; i--) {
                     pmSource *source = sources->data[i];
+                    if (source->seq < 0) {
+                        // This can happen cmf files that have been corrupted
+                        psError(PS_ERR_IO, true, "seq < 0 for source %ld: Suspect %s is corrupt", i, file->origname);
+                        return false;
+                    }
                     if (source->seq > seq_max) {
                         seq_max = source->seq;
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF.c.in
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF.c.in	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF.c.in	(revision 34041)
@@ -80,10 +80,9 @@
     table = psArrayAllocEmpty (sources->n);
 
-    short nImageOverlap; 
     float magOffset; 
     float zeroptErr; 
     float fwhmMajor; 
     float fwhmMinor;
-    pmSourceOutputsCommonValues (&nImageOverlap, &magOffset, &zeroptErr, &fwhmMajor, &fwhmMinor, readout, imageHeader);
+    pmSourceOutputsCommonValues (&magOffset, &zeroptErr, &fwhmMajor, &fwhmMinor, readout, imageHeader);
 
     // we write out PSF-fits for all sources, regardless of quality.  the source flags tell us the state
@@ -179,5 +178,5 @@
 
         // XXX not sure how to get this : need to load Nimages with weight?
-        @ALL@     psMetadataAdd (row, PS_LIST_TAIL, "N_FRAMES",         PS_DATA_U16, "Number of frames overlapping source center", nImageOverlap);
+        @ALL@     psMetadataAdd (row, PS_LIST_TAIL, "N_FRAMES",         PS_DATA_U16, "Number of frames overlapping source center", source->nFrames);
         @ALL@     psMetadataAdd (row, PS_LIST_TAIL, "PADDING",          PS_DATA_S16, "padding", 0);
 
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF_PS1_DV1.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF_PS1_DV1.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF_PS1_DV1.c	(revision 34041)
@@ -81,10 +81,9 @@
     }
 
-    short nImageOverlap; 
     float magOffset; 
     float zeroptErr; 
     float fwhmMajor; 
     float fwhmMinor;
-    pmSourceOutputsCommonValues (&nImageOverlap, &magOffset, &zeroptErr, &fwhmMajor, &fwhmMinor, readout, imageHeader);
+    pmSourceOutputsCommonValues (&magOffset, &zeroptErr, &fwhmMajor, &fwhmMinor, readout, imageHeader);
 
     table = psArrayAllocEmpty (sources->n);
@@ -161,6 +160,5 @@
         psMetadataAdd (row, PS_LIST_TAIL, "FLAGS",            PS_DATA_U32, "psphot analysis flags",                      source->mode);
 
-        // XXX not sure how to get this : need to load Nimages with weight?
-        psMetadataAdd (row, PS_LIST_TAIL, "N_FRAMES",         PS_DATA_U16, "Number of frames overlapping source center", nImageOverlap);
+        psMetadataAdd (row, PS_LIST_TAIL, "N_FRAMES",         PS_DATA_U16, "Number of frames overlapping source center", source->nFrames);
         psMetadataAdd (row, PS_LIST_TAIL, "PADDING",          PS_DATA_S16, "padding", 0);
 
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF_PS1_DV2.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF_PS1_DV2.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF_PS1_DV2.c	(revision 34041)
@@ -82,10 +82,9 @@
     table = psArrayAllocEmpty (sources->n);
 
-    short nImageOverlap; 
     float magOffset; 
     float zeroptErr; 
     float fwhmMajor; 
     float fwhmMinor;
-    pmSourceOutputsCommonValues (&nImageOverlap, &magOffset, &zeroptErr, &fwhmMajor, &fwhmMinor, readout, imageHeader);
+    pmSourceOutputsCommonValues (&magOffset, &zeroptErr, &fwhmMajor, &fwhmMinor, readout, imageHeader);
 
     // we write out PSF-fits for all sources, regardless of quality.  the source flags tell us the state
@@ -180,5 +179,5 @@
 
         // XXX not sure how to get this : need to load Nimages with weight?
-        psMetadataAdd (row, PS_LIST_TAIL, "N_FRAMES",         PS_DATA_U16, "Number of frames overlapping source center", nImageOverlap);
+        psMetadataAdd (row, PS_LIST_TAIL, "N_FRAMES",         PS_DATA_U16, "Number of frames overlapping source center", source->nFrames);
         psMetadataAdd (row, PS_LIST_TAIL, "PADDING",          PS_DATA_S16, "padding", 0);
 
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF_PS1_SV1.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF_PS1_SV1.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceIO_CMF_PS1_SV1.c	(revision 34041)
@@ -84,10 +84,9 @@
     table = psArrayAllocEmpty (sources->n);
 
-    short nImageOverlap; 
     float magOffset; 
     float zeroptErr; 
     float fwhmMajor; 
     float fwhmMinor;
-    pmSourceOutputsCommonValues (&nImageOverlap, &magOffset, &zeroptErr, &fwhmMajor, &fwhmMinor, readout, imageHeader);
+    pmSourceOutputsCommonValues (&magOffset, &zeroptErr, &fwhmMajor, &fwhmMinor, readout, imageHeader);
 
     // we write out PSF-fits for all sources, regardless of quality.  the source flags tell us the state
@@ -170,6 +169,5 @@
         psMetadataAdd (row, PS_LIST_TAIL, "FLAGS2",           PS_DATA_U32, "psphot analysis flags",                     source->mode2);
 
-        // XXX not sure how to get this : need to load Nimages with weight?
-        psMetadataAdd (row, PS_LIST_TAIL, "N_FRAMES",         PS_DATA_U16, "Number of frames overlapping source center", nImageOverlap);
+        psMetadataAdd (row, PS_LIST_TAIL, "N_FRAMES",         PS_DATA_U16, "Number of frames overlapping source center", source->nFrames);
         psMetadataAdd (row, PS_LIST_TAIL, "PADDING",          PS_DATA_S16, "padding", 0);
 
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceMoments.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceMoments.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceMoments.c	(revision 34041)
@@ -319,14 +319,14 @@
     }
 
-    source->moments->Mrf = RF/RS;
     source->moments->Mrh = RH/RS;
 
-    // if Mrf (first radial moment) is very small, we are getting into low-significance
+    // if Mrf = RF/RS (first radial moment) is very small, we are getting into low-significance
     // territory.  saturate at minKronRadius.  conversely, if Mrf is >> radius for faint
     // sources, we are clearly making an error.  saturate at radius.
-    float kronRefRadius = MAX(minKronRadius, source->moments->Mrf);
+    float kronRefRadius = MAX(minKronRadius, RF/RS);
     if (source->moments->SN < 10) {
 	kronRefRadius = MIN(radius, kronRefRadius);
     }
+    source->moments->Mrf = kronRefRadius;
 
     // *** now calculate the kron flux values using the 1st radial moment
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceOutputs.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceOutputs.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceOutputs.c	(revision 34041)
@@ -40,5 +40,5 @@
 #include "pmSourceOutputs.h"
 
-bool pmSourceOutputsCommonValues (short *nImageOverlap, float *magOffset, float *zeroptErr, float *fwhmMajor, float *fwhmMinor, pmReadout *readout, psMetadata *header) {
+bool pmSourceOutputsCommonValues (float *magOffset, float *zeroptErr, float *fwhmMajor, float *fwhmMinor, pmReadout *readout, psMetadata *header) {
 
     pmFPA  *fpa  = readout->parent->parent->parent;
@@ -72,5 +72,4 @@
     }
 
-    *nImageOverlap = psMetadataLookupS32 (&status2, header, "NINPUTS");
     return true;
 
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceOutputs.h
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceOutputs.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSourceOutputs.h	(revision 34041)
@@ -56,5 +56,5 @@
 } pmSourceOutputsMoments;
 
-bool pmSourceOutputsCommonValues (short *nImageOverlap, float *magOffset, float *zeroptErr, float *fwhmMajor, float *fwhmMinor, pmReadout *readout, psMetadata *header);
+bool pmSourceOutputsCommonValues (float *magOffset, float *zeroptErr, float *fwhmMajor, float *fwhmMinor, pmReadout *readout, psMetadata *header);
 
 bool pmSourceOutputsSetValues (pmSourceOutputs *outputs, pmSource *source, pmChip *chip, float fwhmMajor, float fwhmMinor, float magOffset);
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSourcePhotometry.c
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSourcePhotometry.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSourcePhotometry.c	(revision 34041)
@@ -899,15 +899,42 @@
 }
 
+# if (HAVE_MODEL_VAR) 
+double pmSourceModelWeight(const pmSource *Mi, int term, const pmSourceFitVarMode fitVarMode, const float covarFactor, psImageMaskType maskVal)
+# else
 double pmSourceModelWeight(const pmSource *Mi, int term, const bool unweighted_sum, const float covarFactor, psImageMaskType maskVal)
+# endif
 {
     PS_ASSERT_PTR_NON_NULL(Mi, NAN);
+# if (HAVE_MODEL_VAR) 
+    double flux = 0, wt = 1.0, factor = 0;
+# else
     double flux = 0, wt = 0, factor = 0;
+# endif
 
     const psImage *Pi = Mi->modelFlux;
     assert (Pi != NULL);
+
+# if (HAVE_MODEL_VAR)
+    const psImage *Wi = NULL;
+    switch (fitVarMode) {
+      case PM_SOURCE_PHOTFIT_CONST:
+	break;
+      case PM_SOURCE_PHOTFIT_IMAGE_VAR:
+	Wi = Mi->variance;
+        psAssert (Wi, "programming error");
+	break;
+      case PM_SOURCE_PHOTFIT_MODEL_VAR:
+	Wi = Mi->modelVar;
+        psAssert (Wi, "programming error");
+	break;
+      case PM_SOURCE_PHOTFIT_NONE:
+	psAbort("programming error");
+    }	
+# else
     const psImage *Wi = Mi->variance;
     if (!unweighted_sum) {
         assert (Wi != NULL);
     }
+# endif
     const psImage *Ti = Mi->maskObj;
     assert (Ti != NULL);
@@ -917,4 +944,10 @@
             if (Ti->data.PS_TYPE_IMAGE_MASK_DATA[yi][xi] & maskVal)
                 continue;
+# if (HAVE_MODEL_VAR)
+            if (fitVarMode != PM_SOURCE_PHOTFIT_CONST) {
+                wt = covarFactor * Wi->data.F32[yi][xi];
+                if (wt == 0) continue;
+            }
+# else
             if (!unweighted_sum) {
                 wt = covarFactor * Wi->data.F32[yi][xi];
@@ -922,4 +955,5 @@
                     continue;
             }
+# endif
 
             switch (term) {
@@ -937,4 +971,8 @@
             }
 
+# if (HAVE_MODEL_VAR)
+	    // wt is 1.0 for CONST
+	    flux += (factor * Pi->data.F32[yi][xi]) / wt;
+# else
             if (unweighted_sum) {
                 flux += (factor * Pi->data.F32[yi][xi]);
@@ -942,4 +980,5 @@
                 flux += (factor * Pi->data.F32[yi][xi]) / wt;
             }
+# endif
         }
     }
@@ -947,5 +986,9 @@
 }
 
+# if (HAVE_MODEL_VAR)
+double pmSourceModelDotModel (const pmSource *Mi, const pmSource *Mj, const pmSourceFitVarMode fitVarMode, const float covarFactor, psImageMaskType maskVal)
+# else
 double pmSourceModelDotModel (const pmSource *Mi, const pmSource *Mj, const bool unweighted_sum, const float covarFactor, psImageMaskType maskVal)
+# endif
 {
     PS_ASSERT_PTR_NON_NULL(Mi, NAN);
@@ -955,5 +998,10 @@
     int xIs, xJs, yIs, yJs;
     int xIe, yIe;
+# if (HAVE_MODEL_VAR)
+    double flux;
+    double wt = 1.0;
+# else
     double flux, wt;
+# endif
 
     const psImage *Pi = Mi->modelFlux;
@@ -962,8 +1010,26 @@
     assert (Pj != NULL);
 
+# if (HAVE_MODEL_VAR)
+    const psImage *Wi = NULL;
+    switch (fitVarMode) {
+      case PM_SOURCE_PHOTFIT_CONST:
+	break;
+      case PM_SOURCE_PHOTFIT_IMAGE_VAR:
+	Wi = Mi->variance;
+        psAssert (Wi, "programming error");
+	break;
+      case PM_SOURCE_PHOTFIT_MODEL_VAR:
+	Wi = Mi->modelVar;
+        psAssert (Wi, "programming error");
+	break;
+      case PM_SOURCE_PHOTFIT_NONE:
+	psAbort("programming error");
+    }	
+# else
     const psImage *Wi = Mi->variance;
     if (!unweighted_sum) {
         assert (Wi != NULL);
     }
+# endif
 
     const psImage *Ti = Mi->maskObj;
@@ -995,4 +1061,22 @@
                 continue;
 
+# if (HAVE_MODEL_VAR)
+	    float value = (Pi->data.F32[yi][xi] * Pj->data.F32[yj][xj]);
+	    switch (fitVarMode) {
+	      case PM_SOURCE_PHOTFIT_CONST:
+		wt = 1.0;
+		break;
+	      case PM_SOURCE_PHOTFIT_IMAGE_VAR:
+	      case PM_SOURCE_PHOTFIT_MODEL_VAR:
+                wt = covarFactor * Wi->data.F32[yi][xi];
+		break;
+	      case PM_SOURCE_PHOTFIT_NONE:
+		psAbort("programming error");
+	    }
+            // skip pixels with nonsense weight values
+	    if (wt <= 0) continue;
+
+	    flux += value / wt;
+# else
             // XXX skip the nonsense weight pixels?
             if (unweighted_sum) {
@@ -1004,4 +1088,5 @@
                 }
             }
+# endif
         }
     }
@@ -1009,5 +1094,9 @@
 }
 
+# if (HAVE_MODEL_VAR)
+double pmSourceDataDotModel (const pmSource *Mi, const pmSource *Mj, const pmSourceFitVarMode fitVarMode, const float covarFactor, psImageMaskType maskVal)
+# else
 double pmSourceDataDotModel (const pmSource *Mi, const pmSource *Mj, const bool unweighted_sum, const float covarFactor, psImageMaskType maskVal)
+# endif
 {
     PS_ASSERT_PTR_NON_NULL(Mi, NAN);
@@ -1017,5 +1106,10 @@
     int xIs, xJs, yIs, yJs;
     int xIe, yIe;
+# if (HAVE_MODEL_VAR)
+    double flux;
+    double wt = 1.0;
+# else
     double flux, wt;
+# endif
 
     const psImage *Pi = Mi->pixels;
@@ -1024,8 +1118,26 @@
     assert (Pj != NULL);
 
+# if (HAVE_MODEL_VAR)
+    const psImage *Wi = NULL;
+    switch (fitVarMode) {
+      case PM_SOURCE_PHOTFIT_CONST:
+	break;
+      case PM_SOURCE_PHOTFIT_IMAGE_VAR:
+	Wi = Mi->variance;
+        psAssert (Wi, "programming error");
+	break;
+      case PM_SOURCE_PHOTFIT_MODEL_VAR:
+	Wi = Mi->modelVar;
+        psAssert (Wi, "programming error");
+	break;
+      case PM_SOURCE_PHOTFIT_NONE:
+	psAbort("programming error");
+    }	
+# else
     const psImage *Wi = Mi->variance;
     if (!unweighted_sum) {
         assert (Wi != NULL);
     }
+# endif
 
     const psImage *Ti = Mi->maskObj;
@@ -1057,4 +1169,23 @@
                 continue;
 
+# if (HAVE_MODEL_VAR)
+	    float value = (Pi->data.F32[yi][xi] * Pj->data.F32[yj][xj]);
+	    switch (fitVarMode) {
+	      case PM_SOURCE_PHOTFIT_CONST:
+		wt = 1.0;
+		break;
+	      case PM_SOURCE_PHOTFIT_IMAGE_VAR:
+	      case PM_SOURCE_PHOTFIT_MODEL_VAR:
+                wt = covarFactor * Wi->data.F32[yi][xi];
+		break;
+	      case PM_SOURCE_PHOTFIT_NONE:
+		psAbort("programming error");
+	    }
+            // skip pixels with nonsense weight values
+	    if (wt <= 0) continue;
+
+	    flux += value / wt;
+
+# else
             // XXX skip the nonsense weight pixels?
             if (unweighted_sum) {
@@ -1066,4 +1197,5 @@
                 }
             }
+# endif
         }
     }
Index: branches/meh_branches/ppstack_test/psModules/src/objects/pmSourcePhotometry.h
===================================================================
--- branches/meh_branches/ppstack_test/psModules/src/objects/pmSourcePhotometry.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/psModules/src/objects/pmSourcePhotometry.h	(revision 34041)
@@ -38,4 +38,13 @@
 } pmSourcePhotometryMode;
 
+# if (HAVE_MODEL_VAR)
+typedef enum {
+    PM_SOURCE_PHOTFIT_NONE       = 0,
+    PM_SOURCE_PHOTFIT_CONST      = 1,
+    PM_SOURCE_PHOTFIT_IMAGE_VAR  = 2,
+    PM_SOURCE_PHOTFIT_MODEL_VAR  = 3,
+} pmSourceFitVarMode;
+# endif
+
 bool pmSourcePhotometryModel(
     float *fitMag,                      ///< integrated fit magnitude
@@ -75,7 +84,13 @@
 bool pmSourceMeasureDiffStats (pmSource *source, psImageMaskType maskVal, psImageMaskType markVal);
 
+# if (HAVE_MODEL_VAR)
+double pmSourceDataDotModel (const pmSource *Mi, const pmSource *Mj, const pmSourceFitVarMode fitVarMode, const float covarFactor, psImageMaskType maskVal);
+double pmSourceModelDotModel (const pmSource *Mi, const pmSource *Mj, const pmSourceFitVarMode fitVarMode, const float covarFactor, psImageMaskType maskVal);
+double pmSourceModelWeight(const pmSource *Mi, int term, const pmSourceFitVarMode fitVarMode, const float covarFactor, psImageMaskType maskVal);
+# else
 double pmSourceDataDotModel (const pmSource *Mi, const pmSource *Mj, const bool unweighted_sum, const float covarFactor, psImageMaskType maskVal);
 double pmSourceModelDotModel (const pmSource *Mi, const pmSource *Mj, const bool unweighted_sum, const float covarFactor, psImageMaskType maskVal);
 double pmSourceModelWeight(const pmSource *Mi, int term, const bool unweighted_sum, const float covarFactor, psImageMaskType maskVal);
+# endif
 
 bool pmSourceNeighborFlags (pmSource *source);
Index: branches/meh_branches/ppstack_test/psastro/src/psastroDataSave.c
===================================================================
--- branches/meh_branches/ppstack_test/psastro/src/psastroDataSave.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psastro/src/psastroDataSave.c	(revision 34041)
@@ -72,4 +72,8 @@
                 if (hdu && hdu != lastHDU) {
                     psastroVersionHeaderFull(hdu->header);
+		    // Append teh reference catalog to the header as well.
+		    psMetadata *recipe = psMetadataLookupPtr(NULL, config->recipes, PSASTRO_RECIPE);
+		    psMetadataAddStr(hdu->header,PS_LIST_TAIL,"PSREFCAT",PS_META_REPLACE,NULL,
+				     psMetadataLookupStr(NULL,recipe,"PSASTRO.CATDIR"));
                     lastHDU = hdu;
                 }
Index: branches/meh_branches/ppstack_test/psastro/src/psastroLoadCrosstalk.c
===================================================================
--- branches/meh_branches/ppstack_test/psastro/src/psastroLoadCrosstalk.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psastro/src/psastroLoadCrosstalk.c	(revision 34041)
@@ -53,5 +53,5 @@
   pmFPAview *viewMask = pmFPAviewAlloc (0);
 
-  float zeropt, exptime, MAX_MAG;
+  float zeropt, exptime, MAX_MAG, SPIKE_MAX_MAG;
 
   psLogMsg ("psastro", PS_LOG_INFO, "determine crosstalk positions");
@@ -105,4 +105,8 @@
   MAX_MAG += MagOffset;
 
+  // Get the spike maximum, as well
+  SPIKE_MAX_MAG = psMetadataLookupF32(&status, recipe, "REFSTAR_MASK_BLEED_MAG_MAX");
+  SPIKE_MAX_MAG += MagOffset;
+  
   psTrace("psastro.crosstalk",2,"%f %f %f %f\n",zeropt,exptime,MAX_MAG,MagOffset);
 
@@ -259,5 +263,5 @@
 
             pmAstromObj *crosstalk = pmAstromObjAlloc();
-
+	    
             crosstalk->Mag = ref->Mag - MagOffset;
             crosstalk->chip->x = x_t_chip;
@@ -274,8 +278,92 @@
             }
             psArrayAdd(crosstalks,100,crosstalk);
-
+	    
             psFree(targetChipName);
             psFree(targetCellName);
             psFree(crosstalk);
+
+	    // Determine if we need to add a spike mask.
+/* 	    psWarning("BLAH: %g %g %g\n",ref->Mag,MagOffset,SPIKE_MAX_MAG); */
+	    if (ref->Mag < SPIKE_MAX_MAG) {
+	      if ((X == 2)&&(! ((U == 3)||(U == 5)||(U == 6)))) {
+		psTrace ("psastro.crosstalk",2,"Cell (%d%d) on chip (%d%d) not a known crosstalk source.",U,V,X,Y);
+		continue;
+	      }
+	      if ((X == 3)&&(! ((U == 3)))) {
+		psTrace ("psastro.crosstalk",2,"Cell (%d%d) on chip (%d%d) not a known crosstalk source.",U,V,X,Y);
+		continue;
+	      }
+	      if ((X == 4)&&(! ((U == 3)))) {
+		psTrace ("psastro.crosstalk",2,"Cell (%d%d) on chip (%d%d) not a known crosstalk source.",U,V,X,Y);
+		continue;
+	      }
+	      if ((X == 5)&&(! ((U == 3)||(U == 5)||(U == 6)))) {
+		psTrace ("psastro.crosstalk",2,"Cell (%d%d) on chip (%d%d) not a known crosstalk source.",U,V,X,Y);
+		continue;
+	      }
+	      
+	      Xt = X;
+	      Yt = Y;
+	      Vt = V;
+	      
+	      for (Ut = 0; Ut < 8; Ut++) {
+
+		psString targetChipName = NULL;
+		psStringAppend(&targetChipName,"XY%d%d",Xt,Yt);
+		psString targetCellName = NULL;
+		psStringAppend(&targetCellName,"xy%d%d",Ut,Vt);
+		
+		psTrace ("psastro.crosstalk",2,"CTsource @ OTA%d%dxy%d%d@%f,%f CTtarget OTA%d%dxy%d%d@%f,%f [%s %s]",
+			 X,Y,U,V,x_cell,y_cell,Xt,Yt,Ut,Vt,x_t_cell,y_t_cell,
+			 targetChipName,targetCellName);
+/* 		psWarning ("CT bleed ct @ OTA%d%dxy%d%d@%f,%f CTtarget OTA%d%dxy%d%d@%f,%f [%s %s]", */
+/* 			 X,Y,U,V,x_cell,y_cell,Xt,Yt,Ut,Vt,x_t_cell,y_t_cell, */
+/* 			 targetChipName,targetCellName); */
+		
+		pmCell *CTtargetCell = getCellByName (CTsourceChip,targetCellName);
+		if (!CTtargetCell) continue;
+		
+		pmChipCoordsForCell(&x_t_chip,&y_t_chip,CTtargetCell,x_t_cell,y_t_cell);
+
+		psTrace ("psastro.crosstalk",2,"CTsource @ OTA%d%dxy%d%d@%f,%f CTtarget OTA%d%dxy%d%d@%f,%f ChipLoc: (%f,%f)",
+			 X,Y,U,V,x_cell,y_cell,Xt,Yt,Ut,Vt,x_t_cell,y_t_cell,x_t_chip,y_t_chip);
+		
+		// Hunt down the readout for the target, and save the chip position and magnitude of source star.
+		pmChip *targetChip = getChipByName(fpa,targetChipName);
+		if (!targetChip) continue;
+		if (!targetChip->cells) continue;
+		if (!targetChip->cells->n) continue;
+		
+		pmCell *targetCell = targetChip->cells->data[0];
+		if (!targetCell) continue;
+		if (!targetCell->readouts) continue;
+		if (!targetCell->readouts->n) continue;
+		pmReadout *targetReadout = targetCell->readouts->data[0];
+		if (!targetReadout) continue;
+		
+		pmAstromObj *crosstalk = pmAstromObjAlloc();
+		
+		crosstalk->Mag = ref->Mag;
+		crosstalk->chip->x = x_t_chip;
+		crosstalk->chip->y = y_t_chip;
+		
+		psArray *crosstalks = psMetadataLookupPtr (&status, targetReadout->analysis, "PSASTRO.CROSSTALKS.SPIKES");
+		if (crosstalks == NULL) {
+		  crosstalks = psArrayAllocEmpty(100);
+		  if (!psMetadataAdd(targetReadout->analysis,PS_LIST_TAIL,"PSASTRO.CROSSTALKS.SPIKES", PS_DATA_ARRAY, "crosstalk locations", crosstalks)) {
+		    psError(PSASTRO_ERR_CONFIG, false, "failure to add crosstalks to readout");
+		    goto escape;
+		  }
+		  psFree(crosstalks);
+		}
+		psArrayAdd(crosstalks,100,crosstalk);
+		
+		psFree(targetChipName);
+		psFree(targetCellName);
+		psFree(crosstalk);
+	      }
+	    } // End satspike crosstalks
+
+	    
           } // refstars
         } // readout
Index: branches/meh_branches/ppstack_test/psastro/src/psastroLoadGhosts.c
===================================================================
--- branches/meh_branches/ppstack_test/psastro/src/psastroLoadGhosts.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psastro/src/psastroLoadGhosts.c	(revision 34041)
@@ -128,4 +128,5 @@
                 for (int i = 0; i < refstars->n; i++) {
                     pmAstromObj *ref = refstars->data[i];
+		    psTrace("psastro.ghost",5,"Begin ghost %d/%ld: MAX_MAG: %g; ref_mag: %g @ (%.10g,%.10g)",i,refstars->n,MAX_MAG,ref->Mag,ref->sky->r * 180 / M_PI,ref->sky->d * 180.0 / M_PI);
                     if (ref->Mag > MAX_MAG) continue;
 
@@ -163,11 +164,46 @@
 		    pmChip *ghostChip = psastroFindChip (&ghost->chip->x, &ghost->chip->y, fpa, -ghost->srcFP->x, -ghost->srcFP->y);
 		    // fprintf (stderr, "raw chip position: %f, %f ", ghost->chip->x, ghost->chip->y);
-
+/* 		    float ref_chip_x = ghost->chip->x; */
+/* 		    float ref_chip_y = ghost->chip->y; */
 		    ghostChip = psastroFindChip (&ghost->chip->x, &ghost->chip->y, fpa, ghost->FP->x, ghost->FP->y);
 		    // fprintf (stderr, "-> model chip position: %f, %f\n", ghost->chip->x, ghost->chip->y);
 
+		    if (ghostChip) {
+		      psTrace("psastro.ghost",5,"   in ghost: %d/%ld: ref: (%f,%f) or (%s) ghost: (%f,%f) or (%f,%f,%s) %f inner: (%f,%f,%f) outer: (%f,%f,%f)",
+			      i,refstars->n,
+			      ref->FP->x,ref->FP->y,
+			      psMetadataLookupStr(NULL,chip->concepts,"CHIP.NAME"),
+			      ghost->FP->x,ghost->FP->y,
+			      ghost->chip->x,ghost->chip->y,psMetadataLookupStr(NULL,ghostChip->concepts,"CHIP.NAME"),
+			      rSrc,
+			      ghost->inner.major,ghost->inner.minor,ghost->inner.theta,
+			      ghost->outer.major,ghost->outer.minor,ghost->outer.theta);
+/* 		      psWarning("   GHOST_DATA: %d/%ld: ref: (%f,%f) or (%f,%f,%s) ghost: (%f,%f) or (%f,%f,%s) %f inner: (%f,%f,%f) outer: (%f,%f,%f)", */
+/* 			      i,refstars->n, */
+/* 			      ref->FP->x,ref->FP->y, */
+/* 			      ref_chip_x,ref_chip_y,psMetadataLookupStr(NULL,chip->concepts,"CHIP.NAME"), */
+/* 			      ghost->FP->x,ghost->FP->y, */
+/* 			      ghost->chip->x,ghost->chip->y,psMetadataLookupStr(NULL,ghostChip->concepts,"CHIP.NAME"), */
+/* 			      rSrc, */
+/* 			      ghost->inner.major,ghost->inner.minor,ghost->inner.theta, */
+/* 			      ghost->outer.major,ghost->outer.minor,ghost->outer.theta); */
+		    }
+		    else {
+		      psTrace("psastro.ghost",5,"   in ghost: %d/%ld: ref: (%f,%f) ghost: (%f,%f) or (%f,%f,%s) inner: (%f,%f,%f) outer: (%f,%f,%f)",
+			      i,refstars->n,
+			      ref->FP->x,ref->FP->y,
+			      ghost->FP->x,ghost->FP->y,
+			      ghost->chip->x,ghost->chip->y,"NONE",
+			      ghost->inner.major,ghost->inner.minor,ghost->inner.theta,
+			      ghost->outer.major,ghost->outer.minor,ghost->outer.theta);
+		    }		      
+		      
+
+			    
 		    if (!ghostChip) goto skip;
 		    if (!ghostChip->cells) goto skip;
 		    if (!ghostChip->cells->n) goto skip;
+
+		    
 		    pmCell *ghostCell = ghostChip->cells->data[0];
 		    if (!ghostCell) goto skip;
@@ -190,4 +226,5 @@
 
 		skip:
+		    
 		    psFree (ghost);
                 }
Index: branches/meh_branches/ppstack_test/psastro/src/psastroLoadRefstars.c
===================================================================
--- branches/meh_branches/ppstack_test/psastro/src/psastroLoadRefstars.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psastro/src/psastroLoadRefstars.c	(revision 34041)
@@ -180,4 +180,36 @@
     }
 
+    // apply a color correction
+    {
+	// from Tonry 
+	// (w-r)_obs = 0.042 + 0.166 (r-i)_obs - 0.398 (r-i)_obs^2,  (r-i)_obs < 0.5
+	// (w-r)_obs = 0.268 - 0.435 (r-i)_obs - 0.078 (r-i)_obs^2,  (r-i)_obs > 0.5
+	// thus, for (r-i < 0.5):
+	// (r - i < 0.5) : w = r + 0.042 + 0.166*(r-i) - 0.398(r-i)^2
+	// (r - i > 0.5) : w = r + 0.268 - 0.435 (r-i) - 0.078(r-i)^2
+
+	// apply a color correction
+	// XXX this is very GPC1 specific and hard-wired -- be very afraid!
+	// select the filter; default to fixed photcode and mag limit otherwise
+	pmFPAfile *input = psMetadataLookupPtr (NULL, config->files, source); // we've already done this before
+	char *filter = psMetadataLookupStr (&status, input->fpa->concepts, "FPA.FILTERID");
+	if (!strcmp(filter, "w")) {
+	    for (int i = 0; i < refstars->n; i++) {
+		pmAstromObj *ref = refstars->data[i];
+		float r = ref->Mag;
+		float ri = ref->Color;
+		// saturate at some valid range limits
+		ri = PS_MAX (PS_MIN(ri, 2.0), -0.2);
+		float w = NAN;
+		if (ri < 0.5) {
+		    w = r + 0.042 + 0.166*(ri) - 0.398*PS_SQR(ri);
+		} else {
+		    w = r + 0.268 - 0.435*(ri) - 0.078*PS_SQR(ri);
+		}
+		ref->Mag = w;
+	    }
+	}
+    }
+
     psLogMsg ("psastro", 3, "loaded %ld reference stars : %f sec\n", refstars->n, psTimerMark ("psastro"));
 
Index: branches/meh_branches/ppstack_test/psastro/src/psastroMaskUpdates.c
===================================================================
--- branches/meh_branches/ppstack_test/psastro/src/psastroMaskUpdates.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psastro/src/psastroMaskUpdates.c	(revision 34041)
@@ -406,4 +406,31 @@
                     // XXX for now, assume cell binning is 1x1 relative to chip
                     psastroMaskCircle (readoutMask->mask, crosstalkMaskValue, ref->chip->x, ref->chip->y, radius, radius);
+                  }
+                }
+		// Crosstalk Bleeds
+                psArray *bleedcrosstalks = psMetadataLookupPtr (&status, readout->analysis, "PSASTRO.CROSSTALKS.SPIKES");
+                if (bleedcrosstalks) {
+                  for (int i = 0; i < bleedcrosstalks->n; i++) {
+                    pmAstromObj *ref = bleedcrosstalks->data[i];
+                    float width = REFSTAR_MASK_BLEED_MAG_SLOPE * (REFSTAR_MASK_BLEED_MAG_MAX - ref->Mag);
+                    psTrace("psastro.crosstalk",2,"Masking spike on Chip %s @ (%f,%f) Magnitude: %f Radius %f\n",
+                            psMetadataLookupStr(&status,readout->parent->parent->concepts,"CHIP.NAME"),
+                            ref->chip->x,ref->chip->y,ref->Mag,width);
+                    // XXX for now, assume cell binning is 1x1 relative to chip
+		    pmCell *refCell = pmCellInChip(refChip,ref->chip->x,ref->chip->y);
+		    if (refCell) {
+		      float xCell = 0.0;
+		      float yCell = 0.0;
+		      pmCellCoordsForChip (&xCell, &yCell, refCell, ref->chip->x, ref->chip->y);
+		      int ySize = psMetadataLookupS32(NULL,refCell->concepts,"CELL.YSIZE");
+/* 		      psWarning("Masking CTspike on Chip %s @ (%f,%f) Magnitude: %f (%f %f) Radius %f Z: %d %d %d %d\n", */
+/* 				psMetadataLookupStr(&status,readout->parent->parent->concepts,"CHIP.NAME"), */
+/* 				ref->chip->x,ref->chip->y,ref->Mag,REFSTAR_MASK_BLEED_MAG_SLOPE,REFSTAR_MASK_BLEED_MAG_MAX,width, */
+/* 				(int) (ref->chip->x - 0.5 * width),   (int) (ref->chip->y - yCell), */
+/* 				(int) (ref->chip->x+0.5 * width + 1), (int) (ref->chip->y + (ySize - yCell))); */
+		      psastroMaskRectangle (readoutMask->mask, crosstalkMaskValue,
+					    (int) (ref->chip->x - 0.5 * width),   (int) (ref->chip->y - yCell),
+					    (int) (ref->chip->x+0.5 * width + 1), (int) (ref->chip->y + (ySize - yCell)));
+		    }
                   }
                 }
Index: branches/meh_branches/ppstack_test/psastro/src/psastroMaskUtils.c
===================================================================
--- branches/meh_branches/ppstack_test/psastro/src/psastroMaskUtils.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psastro/src/psastroMaskUtils.c	(revision 34041)
@@ -135,5 +135,5 @@
 	// XXX optimize this
 	float A = 1.0;
-	float B = shape.sxy*y*PS_SQR(shape.sx);
+	float B = 2.0 * shape.sxy*y*PS_SQR(shape.sx);
 	float C = PS_SQR(y*shape.sx/shape.sy) - PS_SQR(shape.sx);
 
Index: branches/meh_branches/ppstack_test/psastro/src/psastroZeroPoint.c
===================================================================
--- branches/meh_branches/ppstack_test/psastro/src/psastroZeroPoint.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psastro/src/psastroZeroPoint.c	(revision 34041)
@@ -189,4 +189,6 @@
       pmAstromObj *ref = refstars->data[match->ref];
 
+      // XXX I should be applying the airmass term here or in psastroLoadRefstars
+      // (ie, ref->Mag would be a prediction for a given star.
       float value = ref->Mag - raw->Mag - 2.5*log10(exptime);
       psVectorAppend (dMag, value);
@@ -214,12 +216,15 @@
 
     psStats *stats = NULL;
+    float zeroPtObs, zeroPtErr;
     if (useMean) {
         // stats structure and mask for use in measuring the clipping statistic
         // this analysis has too few data points to use the robust median method
-        stats = psStatsAlloc (PS_STAT_CLIPPED_MEAN | PS_STAT_CLIPPED_STDEV);
+        stats = psStatsAlloc (PS_STAT_ROBUST_MEDIAN | PS_STAT_ROBUST_STDEV);
         if (!psVectorStats (stats, dMag, NULL, NULL, 0)) {
             psError(PS_ERR_UNKNOWN, false, "failure to measure zero point by mean");
             return false;
         }
+	zeroPtObs = stats->robustMedian;
+	zeroPtErr = stats->robustStdev;
     } else {
         stats = psastroStatsPercentile (dMag, recipe);
@@ -228,11 +233,13 @@
             return false;
         }
-    }
-    fprintf (stderr, "zero point %f +/- %f using %ld stars; transparency %f\n", stats->clippedMean, stats->clippedStdev, dMag->n, zeropt - stats->clippedMean);
-
-    psMetadataAddF32 (header, PS_LIST_TAIL, "ZPT_OBS", PS_META_REPLACE, "measured zero point", stats->clippedMean);
+	zeroPtObs = stats->clippedMean;
+	zeroPtErr = stats->clippedStdev;
+    }
+    fprintf (stderr, "zero point %f +/- %f using %ld stars; transparency %f\n", zeroPtObs, zeroPtErr, dMag->n, zeropt - zeroPtObs);
+
+    psMetadataAddF32 (header, PS_LIST_TAIL, "ZPT_OBS", PS_META_REPLACE, "measured zero point", zeroPtObs);
     psMetadataAddF32 (header, PS_LIST_TAIL, "ZPT_REF", PS_META_REPLACE, "reference zero point", zeropt);
-    psMetadataAddF32 (header, PS_LIST_TAIL, "ZPT_ERR", PS_META_REPLACE, "error on zero point",  stats->clippedStdev);
-    psMetadataAddF32 (header, PS_LIST_TAIL, "ZPT_OFF", PS_META_REPLACE, "zero point offset",    zeropt - stats->clippedMean);
+    psMetadataAddF32 (header, PS_LIST_TAIL, "ZPT_ERR", PS_META_REPLACE, "error on zero point",  zeroPtErr);
+    psMetadataAddF32 (header, PS_LIST_TAIL, "ZPT_OFF", PS_META_REPLACE, "zero point offset",    zeropt - zeroPtObs);
 
     psFree (stats);
Index: branches/meh_branches/ppstack_test/psphot/src/Makefile.am
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/Makefile.am	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/Makefile.am	(revision 34041)
@@ -206,5 +206,6 @@
         psphotPetrosianStats.c         \
         psphotPetrosianVisual.c        \
-	psphotEfficiency.c
+	psphotEfficiency.c	       \
+	psphotSetNFrames.c
 
 # re-instate these
Index: branches/meh_branches/ppstack_test/psphot/src/psphot.h
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphot.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphot.h	(revision 34041)
@@ -99,5 +99,10 @@
 
 bool            psphotFitSourcesLinear (pmConfig *config, const pmFPAview *view, const char *filerule, bool final);
+
+# if (HAVE_MODEL_VAR)
+bool            psphotFitSourcesLinearReadout (psMetadata *recipe, pmReadout *readout, psArray *sources, pmPSF *psf, bool final, pmSourceFitVarMode fitVarMode);
+# else
 bool            psphotFitSourcesLinearReadout (psMetadata *recipe, pmReadout *readout, psArray *sources, pmPSF *psf, bool final);
+# endif
 
 bool            psphotSourceSize (pmConfig *config, const pmFPAview *view, const char *filerule, bool getPSFsize);
@@ -189,5 +194,5 @@
 // used by psphotFindDetections
 pmReadout      *psphotSignificanceImage (pmReadout *readout, psMetadata *recipe, psImageMaskType maskVal);
-psArray        *psphotFindPeaks (pmReadout *significance, pmReadout *readout, psMetadata *recipe, const float threshold, const int nMax);
+psArray        *psphotFindPeaks (pmReadout *significance, pmReadout *readout, psMetadata *recipe, const float threshold, const int nMax, int *totalPeaks);
 bool            psphotFindFootprints (pmDetections *detections, pmReadout *significance, pmReadout *readout, psMetadata *recipe, const float threshold, const int pass, psImageMaskType maskVal);
 psErrorCode     psphotCullPeaks(const pmReadout *readout, const pmReadout *signifRO, const psMetadata *recipe, psArray *footprints);
@@ -472,5 +477,5 @@
 
 bool psphotKronIterate (pmConfig *config, const pmFPAview *view, const char *filerule);
-bool psphotKronIterateReadout(pmConfig *config, psMetadata *recipe, const pmFPAview *view, pmReadout *readout, psArray *sources, pmPSF *psf);
+bool psphotKronIterateReadout(pmConfig *config, psMetadata *recipe, const pmFPAview *view, const char * filerule, pmReadout *readout, psArray *sources, pmPSF *psf, int index);
 bool psphotKronIterate_Threaded (psThreadJob *job);
 
@@ -481,3 +486,6 @@
 bool psphotStackObjectsSelectForAnalysis (pmConfig *config, const pmFPAview *view, const char *filerule, psArray *objects);
 
+bool psphotSetNFrames (pmConfig *config, const pmFPAview *view, const char *filerule);
+bool psphotSetNFramesReadout (pmConfig *config, const pmFPAview *view, const char *filerule, int index);
+
 #endif
Index: branches/meh_branches/ppstack_test/psphot/src/psphotAddNoise.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotAddNoise.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotAddNoise.c	(revision 34041)
@@ -47,5 +47,7 @@
 
     psArray *sources = detections->allSources;
-    psAssert (sources, "missing sources?");
+    //psAssert (sources, "missing sources?");
+    // if no work, should just return true
+    if (!sources) return true;
 
     psTimerStart ("psphot.noise");
Index: branches/meh_branches/ppstack_test/psphot/src/psphotArguments.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotArguments.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotArguments.c	(revision 34041)
@@ -217,4 +217,5 @@
     pmConfigFileSetsMD (config->arguments, &argc, argv, "PSPHOT.PSF", "-psf",      "-psflist");
     pmConfigFileSetsMD (config->arguments, &argc, argv, "SRC",        "-src",      "-srclist");
+    pmConfigFileSetsMD (config->arguments, &argc, argv, "EXPNUM",     "-expnum",   "-expnumlist");
 
     if (argc == 1) {
Index: branches/meh_branches/ppstack_test/psphot/src/psphotDefineFiles.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotDefineFiles.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotDefineFiles.c	(revision 34041)
@@ -85,4 +85,26 @@
         output->save = true;
     }
+//    // optionally save the smoothed variance model (small FITS image)
+//    if (psMetadataLookupBool(NULL, recipe, "SAVE.BACKMDL")) {
+//        int DX = psMetadataLookupS32 (&status, recipe, "BACKGROUND.XBIN");
+//        int DY = psMetadataLookupS32 (&status, recipe, "BACKGROUND.YBIN");
+//        pmFPAfile *output = pmFPAfileDefineFromFile (config, input, DX, DY, "PSPHOT.VARMDL");
+//        if (!output) {
+//            psError(PSPHOT_ERR_CONFIG, false, "Cannot find a rule for PSPHOT.VARMDL");
+//            return false;
+//        }
+//        output->save = true;
+//    }
+//    // optionally save the smoothed variance model's standard deviation (small FITS image)
+//    if (psMetadataLookupBool(NULL, recipe, "SAVE.VARMDL.STDEV")) {
+//        int DX = psMetadataLookupS32 (&status, recipe, "BACKGROUND.XBIN");
+//        int DY = psMetadataLookupS32 (&status, recipe, "BACKGROUND.YBIN");
+//        pmFPAfile *output = pmFPAfileDefineFromFile (config, input, DX, DY, "PSPHOT.VARMDL.STDEV");
+//        if (!output) {
+//            psError(PSPHOT_ERR_CONFIG, false, "Cannot find a rule for PSPHOT.VARMDL.STDEV");
+//            return false;
+//        }
+//        output->save = true;
+//    }
     // optionally save the PSF Model
     if (psMetadataLookupBool(NULL, recipe, "SAVE.PSF")) {
Index: branches/meh_branches/ppstack_test/psphot/src/psphotEfficiency.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotEfficiency.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotEfficiency.c	(revision 34041)
@@ -420,5 +420,9 @@
 
     // psphotFitSourcesLinearReadout subtracts the model fits
+# if (HAVE_MODEL_VAR)
+    if (!psphotFitSourcesLinearReadout(recipe, readout, fakeSourcesAll, psf, true, PM_SOURCE_PHOTFIT_CONST)) {
+# else
     if (!psphotFitSourcesLinearReadout(recipe, readout, fakeSourcesAll, psf, true)) {
+# endif
         psError(PS_ERR_UNKNOWN, false, "Unable to perform linear fit on fake sources.");
         psFree(fakeSources);
Index: branches/meh_branches/ppstack_test/psphot/src/psphotFindDetections.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotFindDetections.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotFindDetections.c	(revision 34041)
@@ -48,4 +48,5 @@
     // Use the new pmFootprints approach?
     const bool useFootprints = psMetadataLookupBool(NULL, recipe, "USE_FOOTPRINTS");
+    const bool footprintUseUnsubtracted = psMetadataLookupBool(NULL, recipe, "FOOTPRINT_USE_UNSUBTRACTED");
 
     pmDetections *detections = psMetadataLookupPtr (&status, readout->analysis, "PSPHOT.DETECTIONS");
@@ -64,4 +65,5 @@
     }
 
+    bool replaceSourcesForFootprints = false;
     if (firstPass) {
         pass = 1;
@@ -70,4 +72,5 @@
     } else {
         pass = 2;
+        replaceSourcesForFootprints = footprintUseUnsubtracted;    
         NSIGMA_PEAK = psMetadataLookupF32 (&status, recipe, "PEAKS_NSIGMA_LIMIT_2"); PS_ASSERT (status, NULL);
         NMAX = 0; // unlimited number of peaks in final pass: allow a limit (PEAKS_NMAX_2) ?
@@ -96,5 +99,6 @@
 
     // detect the peaks in the significance image
-    detections->peaks = psphotFindPeaks (significance, readout, recipe, threshold, NMAX);
+    int totalPeaks = 0;
+    detections->peaks = psphotFindPeaks (significance, readout, recipe, threshold, NMAX, &totalPeaks);
     psMetadataAddF32  (readout->analysis, PS_LIST_TAIL, "PEAK_THRESHOLD", PS_META_REPLACE, "Peak Detection Threshold", threshold);
     if (!detections->peaks) {
@@ -105,8 +109,26 @@
         return false;
     }
+    // hard limit on number of peaks we will accept. (To avoid memory overload in psphotStack)
+    int maxPeaks = psMetadataLookupS32 (&status, recipe, "PEAKS_NMAX_TOTAL"); PS_ASSERT (status, NULL);
+    if (maxPeaks && (totalPeaks > maxPeaks)) {
+	psFree (detections);
+	psError (PSPHOT_ERR_DATA, true, "Too many peaks %d found PEAKS_NMAX_TOTAL: %d", totalPeaks, maxPeaks);
+        return false;
+    }
 
     // optionally merge peaks into footprints
     if (useFootprints) {
+        if (replaceSourcesForFootprints) {
+            psphotAddOrSubNoiseReadout(config, view, filerule, index, recipe, false);
+            psphotReplaceAllSourcesReadout (config, view, filerule, index, recipe, false);
+            psFree (significance);
+            significance = psphotSignificanceImage (readout, recipe, maskVal);
+        }
+
 	psphotFindFootprints (detections, significance, readout, recipe, threshold, pass, maskVal);
+
+        if (replaceSourcesForFootprints) {
+            psphotRemoveAllSourcesReadout (config, view, filerule, index, recipe, false);
+        }
     }
 
Index: branches/meh_branches/ppstack_test/psphot/src/psphotFindPeaks.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotFindPeaks.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotFindPeaks.c	(revision 34041)
@@ -4,5 +4,5 @@
 // image must be constructed to represent (S/N)^2.  If nMax is non-zero, only return a maximum
 // of nMax peaks
-psArray *psphotFindPeaks (pmReadout *significance, pmReadout *readout, psMetadata *recipe, const float threshold, const int nMax) {
+psArray *psphotFindPeaks (pmReadout *significance, pmReadout *readout, psMetadata *recipe, const float threshold, const int nMax, int *totalPeaks) {
 
     bool status = false;
@@ -18,4 +18,8 @@
         psError(PSPHOT_ERR_DATA, false, "no peaks found in this image");
         return NULL;
+    }
+    // return the total number of peaks found before the nMax limit is applied
+    if (totalPeaks) {
+        *totalPeaks = peaks->n;
     }
 
Index: branches/meh_branches/ppstack_test/psphot/src/psphotFitSourcesLinear.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotFitSourcesLinear.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotFitSourcesLinear.c	(revision 34041)
@@ -12,4 +12,10 @@
 static bool SetBorderMatrixElements (psSparseBorder *border, pmReadout *readout, psArray *sources, bool constant_weights, int SKY_FIT_ORDER, psImageMaskType markVal);
 
+# if (HAVE_MODEL_VAR)
+bool psphotGenerateModelVariance (pmConfig *config, const pmFPAview *view, pmFPAfile *file, int index, psMetadata *recipe, pmReadout *readout, psArray *sources);
+pmSourceFitVarMode psphotGetFitVarMode (psMetadata *recipe);
+bool psphotFreeModelVariance (pmReadout *readout, psArray *sources);
+# endif
+
 // for now, let's store the detections on the readout->analysis for each readout
 bool psphotFitSourcesLinear (pmConfig *config, const pmFPAview *view, const char *filerule, bool final)
@@ -24,4 +30,16 @@
     assert (recipe);
 
+# if (HAVE_MODEL_VAR)
+    pmSourceFitVarMode fitVarMode = psphotGetFitVarMode (recipe);
+    if (!fitVarMode) {
+	psError (PSPHOT_ERR_CONFIG, true, "failed to get LINEAR_FIT_VARIANCE_MODE");
+	return false;
+    }
+    // MODEL_VAR requires 2 passes -- in the first, we get the rough fluxes; in the second, we
+    // use the flux to define the model variance before fitting the objects.  Other modes only
+    // do a single pass.
+    pmSourceFitVarMode fitVarModePass1 = (fitVarMode == PM_SOURCE_PHOTFIT_MODEL_VAR) ? PM_SOURCE_PHOTFIT_CONST : fitVarMode;
+# endif
+
     int num = psphotFileruleCount(config, filerule);
 
@@ -50,8 +68,41 @@
         psAssert (psf, "missing psf?");
 
-        if (!psphotFitSourcesLinearReadout (recipe, readout, sources, psf, final)) {
+# if (HAVE_MODEL_VAR)
+        if (!psphotFitSourcesLinearReadout (recipe, readout, sources, psf, final, fitVarModePass1))
+# else
+        if (!psphotFitSourcesLinearReadout (recipe, readout, sources, psf, final))
+# endif
+	{
             psError (PSPHOT_ERR_CONFIG, false, "failed to fit sources (linear) for %s entry %d", filerule, i);
             return false;
         }
+
+# if (HAVE_MODEL_VAR)
+	// the MODEL_VAR weighting scheme requires knowledge of the model fluxes to generate the variance
+	// after we have determined the initial set of fits, then we can generate the variance image and 
+	// re-run the fit against that variance.
+	if (fitVarMode == PM_SOURCE_PHOTFIT_MODEL_VAR) {
+	    // generate the model variance image & source pointers
+	    if (!psphotGenerateModelVariance (config, view, file, i, recipe, readout, sources)) {
+		psError (PSPHOT_ERR_CONFIG, false, "failed to fit sources (linear) for %s entry %d", filerule, i);
+		return false;
+	    }
+
+	    // replace all sources (use TMPF_SUBTRACTED as test)
+	    psphotReplaceAllSourcesReadout (config, view, filerule, i, recipe, false);
+
+	    // rerun fit with correct fitVarMode
+	    if (!psphotFitSourcesLinearReadout (recipe, readout, sources, psf, final, fitVarMode)) {
+		psError (PSPHOT_ERR_CONFIG, false, "failed to fit sources (linear) for %s entry %d", filerule, i);
+		return false;
+	    }
+
+	    // free the model variance image & source pointers
+	    if (!psphotFreeModelVariance (readout, sources)) {
+		psError (PSPHOT_ERR_CONFIG, false, "failed to fit sources (linear) for %s entry %d", filerule, i);
+		return false;
+	    }
+	}
+# endif
 
 	psphotVisualShowResidualImage (readout, (num > 0)); 
@@ -62,6 +113,41 @@
 }
 
-bool psphotFitSourcesLinearReadout (psMetadata *recipe, pmReadout *readout, psArray *sources, pmPSF *psf, bool final) {
-
+# if (HAVE_MODEL_VAR)
+// look up the fit variance mode from the recipe; older recipes do not have the value
+// 'LINEAR_FIT_VARIANCE_MODE'; in those cases, look for 'CONSTANT_PHOTOMETRIC_WEIGHTS' as a boolean and
+// set the value to either CONST or IMAGE_VAR
+pmSourceFitVarMode psphotGetFitVarMode (psMetadata *recipe) {
+
+    bool status = false;
+
+    char *fitVarModeString = psMetadataLookupStr(&status, recipe, "LINEAR_FIT_VARIANCE_MODE");
+    if (!status) {
+	bool CONSTANT_PHOTOMETRIC_WEIGHTS = psMetadataLookupBool(&status, recipe, "CONSTANT_PHOTOMETRIC_WEIGHTS");
+	if (!status) {
+	    psAbort("You must provide a value for LINEAR_FIT_VARIANCE_MODE or CONSTANT_PHOTOMETRIC_WEIGHTS");
+	}
+	pmSourceFitVarMode fitVarMode = CONSTANT_PHOTOMETRIC_WEIGHTS ? PM_SOURCE_PHOTFIT_CONST : PM_SOURCE_PHOTFIT_IMAGE_VAR;
+	return fitVarMode;
+    } 
+    if (!strcasecmp(fitVarModeString, "CONSTANT") || !strcasecmp(fitVarModeString, "CONST")) {
+	return PM_SOURCE_PHOTFIT_CONST;
+    }
+    if (!strcasecmp(fitVarModeString, "IMAGE") || !strcasecmp(fitVarModeString, "IMAGE_VAR")) {
+	return PM_SOURCE_PHOTFIT_IMAGE_VAR;
+    }
+    if (!strcasecmp(fitVarModeString, "MODEL") || !strcasecmp(fitVarModeString, "MODEL_VAR")) {
+	return PM_SOURCE_PHOTFIT_MODEL_VAR;
+    }
+    psError (PSPHOT_ERR_CONFIG, false, "Invalid value for LINEAR_FIT_VARIANCE_MODE (%s)", fitVarModeString);
+    return PM_SOURCE_PHOTFIT_NONE;
+}
+# endif
+
+# if (HAVE_MODEL_VAR)
+bool psphotFitSourcesLinearReadout (psMetadata *recipe, pmReadout *readout, psArray *sources, pmPSF *psf, bool final, pmSourceFitVarMode fitVarMode)
+# else
+bool psphotFitSourcesLinearReadout (psMetadata *recipe, pmReadout *readout, psArray *sources, pmPSF *psf, bool final)
+# endif
+{
     bool status;
     float x;
@@ -99,4 +185,5 @@
     if (psRegionIsNaN (AnalysisRegion)) psAbort("analysis region mis-defined");
 
+# if (!HAVE_MODEL_VAR)
     bool CONSTANT_PHOTOMETRIC_WEIGHTS =
         psMetadataLookupBool(&status, recipe, "CONSTANT_PHOTOMETRIC_WEIGHTS");
@@ -104,4 +191,5 @@
         psAbort("You must provide a value for the BOOL recipe CONSTANT_PHOTOMETRIC_WEIGHTS");
     }
+# endif
     int SKY_FIT_ORDER = psMetadataLookupS32(&status, recipe, "SKY_FIT_ORDER");
     if (!status) {
@@ -231,4 +319,14 @@
     psSparseBorder *border = psSparseBorderAlloc (sparse, nBorder);
 
+# if (HAVE_MODEL_VAR)
+    // if fitVarMode is MODEL_VAR, then we need to generate the model image variance
+    // XXX we have two possibilities here: 
+
+    // 1) do 2 passes, where in the first case we use the CONST weighting, and in the second
+    // use the fitted model values to define the model
+
+    // 2) do a single pass, and use the model guess to define the model variance (but do I trust the Model Guess?)
+# endif
+
     // fill out the sparse matrix elements and border elements (B)
     // SRCi is the current source of interest
@@ -238,7 +336,20 @@
 
         // diagonal elements of the sparse matrix (auto-cross-product)
+# if (HAVE_MODEL_VAR)
+        f = pmSourceModelDotModel (SRCi, SRCi, fitVarMode, covarFactor, maskVal);
+# else
         f = pmSourceModelDotModel (SRCi, SRCi, CONSTANT_PHOTOMETRIC_WEIGHTS, covarFactor, maskVal);
+# endif
         psSparseMatrixElement (sparse, i, i, f);
 
+# if (HAVE_MODEL_VAR)
+        // if we have used CONSTANT errors, then we need to calculate the value of the parameter error
+        if (fitVarMode != PM_SOURCE_PHOTFIT_IMAGE_VAR) {
+            float var = pmSourceModelDotModel (SRCi, SRCi, PM_SOURCE_PHOTFIT_IMAGE_VAR, covarFactor, maskVal);
+            errors->data.F32[i] = 1.0 / sqrt(var);
+        } else {
+            errors->data.F32[i] = 1.0 / sqrt(f);
+        }
+# else
         // the formal error depends on the weighting scheme
         if (CONSTANT_PHOTOMETRIC_WEIGHTS) {
@@ -248,8 +359,12 @@
             errors->data.F32[i] = 1.0 / sqrt(f);
         }
-
+# endif
 
         // find the image x model value
+# if (HAVE_MODEL_VAR)
+        f = pmSourceDataDotModel (SRCi, SRCi, fitVarMode, covarFactor, maskVal);
+# else
         f = pmSourceDataDotModel (SRCi, SRCi, CONSTANT_PHOTOMETRIC_WEIGHTS, covarFactor, maskVal);
+# endif
         psSparseVectorElement (sparse, i, f);
 
@@ -257,11 +372,22 @@
         switch (SKY_FIT_ORDER) {
           case 1:
+# if (HAVE_MODEL_VAR)
+            f = pmSourceModelWeight (SRCi, 1, fitVarMode, covarFactor, maskVal);
+            psSparseBorderElementB (border, i, 1, f);
+            f = pmSourceModelWeight (SRCi, 2, fitVarMode, covarFactor, maskVal);
+            psSparseBorderElementB (border, i, 2, f);
+# else
             f = pmSourceModelWeight (SRCi, 1, CONSTANT_PHOTOMETRIC_WEIGHTS, covarFactor, maskVal);
             psSparseBorderElementB (border, i, 1, f);
             f = pmSourceModelWeight (SRCi, 2, CONSTANT_PHOTOMETRIC_WEIGHTS, covarFactor, maskVal);
             psSparseBorderElementB (border, i, 2, f);
+# endif
 
           case 0:
+# if (HAVE_MODEL_VAR)
+            f = pmSourceModelWeight (SRCi, 0, fitVarMode, covarFactor, maskVal);
+# else
             f = pmSourceModelWeight (SRCi, 0, CONSTANT_PHOTOMETRIC_WEIGHTS, covarFactor, maskVal);
+# endif
             psSparseBorderElementB (border, i, 0, f);
             break;
@@ -283,5 +409,9 @@
 
             // got an overlap; calculate cross-product and add to output array
+# if (HAVE_MODEL_VAR)
+            f = pmSourceModelDotModel (SRCi, SRCj, fitVarMode, covarFactor, maskVal);
+# else
             f = pmSourceModelDotModel (SRCi, SRCj, CONSTANT_PHOTOMETRIC_WEIGHTS, covarFactor, maskVal);
+# endif
             psSparseMatrixElement (sparse, j, i, f);
         }
@@ -321,5 +451,9 @@
 
     // set the sky, sky_x, sky_y components of border matrix
+# if (HAVE_MODEL_VAR)
+    SetBorderMatrixElements (border, readout, fitSources, (fitVarMode == PM_SOURCE_PHOTFIT_CONST), SKY_FIT_ORDER, markVal);
+# else
     SetBorderMatrixElements (border, readout, fitSources, CONSTANT_PHOTOMETRIC_WEIGHTS, SKY_FIT_ORDER, markVal);
+# endif
 
     psSparseConstraint constraint;
@@ -479,2 +613,114 @@
     return true;
 }
+
+# if (HAVE_MODEL_VAR)
+bool psphotModelBackgroundReadout(psImage *model,  // Model image
+				  psImage *modelStdev, // Model stdev image
+				  psMetadata *analysis, // Analysis metadata for outputs
+				  pmReadout *readout, // Readout for which to generate a background model
+				  psImageBinning *binning, // Binning parameters
+				  const pmConfig *config,// Configuration
+				  bool useVarianceImage
+    );
+
+bool psphotGenerateModelVariance (pmConfig *config, const pmFPAview *view, pmFPAfile *file, int index, psMetadata *recipe, pmReadout *readout, psArray *sources) {
+
+    bool status = false;
+    psRegion fullRegion = psRegionSet (0, 0, 0, 0);
+
+    // bit-masks to test for good/bad pixels
+    psImageMaskType maskVal = psMetadataLookupImageMask(&status, recipe, "MASK.PSPHOT");
+    assert (maskVal);
+
+    // bit-mask to mark pixels not used in analysis
+    psImageMaskType markVal = psMetadataLookupImageMask(&status, recipe, "MARK.PSPHOT");
+    assert (markVal);
+
+    // maskVal is used to test for rejected pixels, and must include markVal
+    maskVal |= markVal;
+
+    // create a model variance image
+    psImage *modelVar = psImageCopy (NULL, readout->variance, PS_TYPE_F32);
+
+    // find the binning information
+    psImageBinning *backBinning = psphotBackgroundBinning (modelVar, config);
+    assert (backBinning);
+    
+    psImage *varModel = psImageAlloc(backBinning->nXruff, backBinning->nYruff, PS_TYPE_F32); // Background model
+    psImage *varModelStdev = psImageAlloc(backBinning->nXruff, backBinning->nYruff, PS_TYPE_F32); // Background model
+
+    if (!psphotModelBackgroundReadout(varModel, varModelStdev, NULL, readout, backBinning, config, true)) {
+	psError(PS_ERR_UNKNOWN, false, "Unable to generate background model");
+	psFree (varModel);
+	psFree (varModelStdev);
+	return false;
+    }
+
+    // linear interpolation to full-scale
+    if (!psImageUnbin (modelVar, varModel, backBinning)) {
+	psError (PSPHOT_ERR_PROG, true, "inconsistent sizes for unbinning");
+	psFree (varModel);
+	psFree (varModelStdev);
+	return false;
+    }
+
+    psFree (varModel);
+    psFree (varModelStdev);
+
+    // XXX for a test:
+    psphotSaveImage (NULL, modelVar, "model.bck.fits");
+
+    // insert all of the source models
+    for (int i = 0; i < sources->n; i++) {
+
+	// source of interest
+	pmSource *source = sources->data[i];
+
+	// skip sources which were not fitted already
+	if (!(source->mode & PM_SOURCE_MODE_LINEAR_FIT)) continue;
+
+	// pixel region appropriate for the source
+	psRegion region = psRegionForImage (source->pixels, fullRegion);
+
+	// define the source->modelVar pixels (view on modelVar image)
+	psAssert (!source->modelVar, "programming error : modelVar should be NULL here");
+	psAssert (source->modelFlux, "programming error : modelFlux should not be NULL here");
+	psAssert (source->modelFlux->data.F32, "programming error : modelFlux should not be NULL here");
+	source->modelVar = psImageSubset(modelVar, region);
+
+	// add the source model to the model variance image
+	pmSourceAdd (source, PM_MODEL_OP_MODELVAR, maskVal);
+    }
+
+    // XXX for a test:
+    psphotSaveImage (NULL, modelVar, "model.var.fits");
+    psphotSaveImage (NULL, readout->variance, "image.var.fits");
+
+    // we save the model variance for future reference
+    psMetadataAddImage(readout->analysis, PS_LIST_TAIL, "PSPHOT.MODEL.VAR", PS_META_REPLACE, "model variance", modelVar);
+    psFree (modelVar);
+
+    return true;
+}
+
+bool psphotFreeModelVariance (pmReadout *readout, psArray *sources) {
+
+    bool status = false;
+
+    // find the binning information
+    psImage *modelVar = psMetadataLookupPtr(&status, readout->analysis, "PSPHOT.MODEL.VAR");
+    assert (modelVar);
+
+    psMetadataRemoveKey (readout->analysis, "PSPHOT.MODEL.VAR"); 
+
+    // clear modelVar pointers for all of the source models
+    for (int i = 0; i < sources->n; i++) {
+
+	// source of interest
+	pmSource *source = sources->data[i];
+	psFree (source->modelVar);
+    }
+
+    return true;
+}
+# endif
Index: branches/meh_branches/ppstack_test/psphot/src/psphotImageLoop.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotImageLoop.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotImageLoop.c	(revision 34041)
@@ -75,8 +75,11 @@
         pmFPAfileActivate (config->files, false, "PSPHOT.MASK");
         pmFPAfileActivate (config->files, false, "PSPHOT.VARIANCE");
+        // do not load the exposure number file yet file until we are done with the psphot analysis
+        pmFPAfileActivate (config->files, false, "PSPHOT.EXPNUM");
         if (!pmFPAfileIOChecks (config, view, PM_FPA_BEFORE)) ESCAPE ("failed input for Chip in psphot.");
 
         // re-activate files so they will be closed and freed below
-        pmFPAfileActivate (config->files, true, NULL);
+//        XXX: Defer this
+//        pmFPAfileActivate (config->files, true, NULL);
 
         // there is now only a single chip (multiple readouts?). loop over it and process
@@ -150,8 +153,26 @@
             }
         }
-        // save output which is saved at the chip level
-        if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE ("failed output for Chip in psphot.");
+        // Defer output and closing of files until we've (possibly) done the NFrames analysis below
+        pmFPAfileActivate (config->files, false, NULL);
+
+        if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE ("failed pmFPAfileIOChecks for Chip in psphot.");
     }
-    // save output which is saved at the fpa level
+    if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE ("failed pmFPAfileIOChecks for FPA in psphot.");
+
+    // activate the EXPNUM image, cause it to be read in (if it exists), use it to set N Frames for the sources
+    // and finally iterate up to trigger writing of the output files
+    pmFPAfileActivate (config->files, true, "PSPHOT.EXPNUM");
+    while ((chip = pmFPAviewNextChip (view, input->fpa, 1)) != NULL) {
+        if (!pmFPAfileIOChecks (config, view, PM_FPA_BEFORE)) ESCAPE ("failed attempting to load EXPNUM input for Chip in psphot.");
+        while ((cell = pmFPAviewNextCell (view, input->fpa, 1)) != NULL) {
+            while ((readout = pmFPAviewNextReadout (view, input->fpa, 1)) != NULL) {
+                if (! readout->data_exists) { continue; }
+                if (!psphotSetNFrames (config, view, "PSPHOT.INPUT")) ESCAPE ("failed to setNFrames.");
+            }
+        }
+        // now activate all files to trigger the output
+        pmFPAfileActivate (config->files, true, NULL);
+        if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE ("failed to iterate up Chip in psphot.");
+    }
     if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE ("failed ouput for FPA in psphot.");
 
Index: branches/meh_branches/ppstack_test/psphot/src/psphotKronIterate.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotKronIterate.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotKronIterate.c	(revision 34041)
@@ -1,9 +1,7 @@
 # include "psphotInternal.h"
-# ifndef ROUND
-# define ROUND(X) ((int) ((X) + 0.5*SIGN(X)))
-# endif
-
-bool psphotKronWindowSetSource(pmSource *source, psImage *kronWindow, bool useKronRadius, bool insert);
-bool psphotKronWindowMag (pmSource *source, psImage *kronWindow, float radius, float minKronRadius, psImageMaskType maskVal);
+
+bool psphotKronWindowSetSource(pmSource *source, psImage *kronWindow, bool useKronRadius, bool insert, bool oldWindow);
+bool psphotKronWindowMag (pmSource *source, psImage *kronWindow, float radius, float minKronRadius, psImageMaskType maskVal, bool applyWeight, psImage *smoothedPixels);
+
 
 bool psphotKronIterate (pmConfig *config, const pmFPAview *view, const char *filerule)
@@ -11,6 +9,4 @@
     bool status = true;
 
-    // return true;
-
     fprintf (stdout, "\n");
     psLogMsg ("psphot", PS_LOG_INFO, "--- psphot Kron Iterate ---");
@@ -46,5 +42,5 @@
         // psAssert (psf, "missing psf?");
 
-        if (!psphotKronIterateReadout (config, recipe, view, readout, sources, psf)) {
+        if (!psphotKronIterateReadout (config, recipe, view, filerule, readout, sources, psf, i)) {
             psError (PSPHOT_ERR_CONFIG, false, "failed to measure magnitudes for %s entry %d", filerule, i);
             return false;
@@ -58,5 +54,5 @@
 bool psphotVisualRangeImage (int kapaFD, psImage *inImage, const char *name, int channel, float min, float max);
 
-bool psphotKronIterateReadout(pmConfig *config, psMetadata *recipe, const pmFPAview *view, pmReadout *readout, psArray *sources, pmPSF *psf) {
+bool psphotKronIterateReadout(pmConfig *config, psMetadata *recipe, const pmFPAview *view, const char * filerule, pmReadout *readout, psArray *sources, pmPSF *psf, int index) {
 
     bool status = false;
@@ -69,4 +65,5 @@
     psTimerStart ("psphot.kron");
 
+
     // determine the number of allowed threads
     int nThreads = psMetadataLookupS32(&status, config->arguments, "NTHREADS"); // Number of threads
@@ -84,4 +81,63 @@
         MIN_KRON_RADIUS = 0.25*RADIUS;
     }
+
+    int KRON_ITERATIONS = psMetadataLookupS32 (&status, recipe, "KRON_ITERATIONS");
+    if (!status) {
+        KRON_ITERATIONS = 1;
+    }
+
+    bool KRON_APPLY_WEIGHT = psMetadataLookupBool (&status, recipe, "KRON_APPLY_WEIGHT");
+    if (!status) {
+        KRON_APPLY_WEIGHT = true;
+    }
+
+    bool KRON_APPLY_WINDOW = psMetadataLookupBool (&status, recipe, "KRON_APPLY_WINDOW");
+    if (!status) {
+        KRON_APPLY_WINDOW = false;
+    }
+    bool KRON_SMOOTH = psMetadataLookupBool (&status, recipe, "KRON_SMOOTH");
+    if (!status) {
+        KRON_SMOOTH = false;
+    }
+    float KRON_SMOOTH_SIGMA = psMetadataLookupF32 (&status, recipe, "KRON_SMOOTH_SIGMA");
+    if (!status) {
+        KRON_SMOOTH_SIGMA = 1.7;
+    }
+    float KRON_SMOOTH_NSIGMA = psMetadataLookupS32 (&status, recipe, "KRON_SMOOTH_NSIGMA");
+    if (!status) {
+        KRON_SMOOTH_NSIGMA = 2;
+    }
+    /*
+     *  Parameter for calculating maximum integration radius based on source's surface
+     *  brightness
+     *  Given minimum surface brightness SBmin and a flux the maximum radius is found from
+     *
+     *  SBmin = source->flux / (pi * Rmax**2)
+     *  Rmax = sqrt (source->flux ) / sqrt (SBmin * pi)
+     *
+     *  Now what do we use for SBmin?
+     *
+     *  SBmin = ( some flux ) / (some area)
+     *  some flux ~ flux of Ns sigma PSF source
+     *  some area ~ K times area of a PSF
+     *  
+     * flux of Ns sigma source ~ Ns * SKY_STDEV * PSF_EFFECTIVE_AREA
+     * PSF_EFFECTIVE_AREA = 4 pi sigma_PSF^2
+     * (the 4 accounts for the fact that 1 sigma is not the total area, it is
+     * actually a larger region).
+     *
+     *   SBmin = Ns * SKY_STDEV * 4 * pi * sigma_PSF^2 / (K * pi * sigma_PSF^2) 
+     *         = Ns * SKY_STDEV * 4 / K
+     *
+     * We combine the two parameters Ns and K, and the constant 4 into a single recipe value
+     * KRON_SB_MIN_FACTOR with Ns = 5 and K = 2 the corresponding value 
+     * for KRON_SB_MIN_FACTOR is 5 * 4 / 2 = 10
+     */
+    float KRON_SB_MIN_FACTOR = psMetadataLookupF32 (&status, recipe, "KRON_SB_MIN_FACTOR");
+    if (!status) {
+        KRON_SB_MIN_FACTOR = 10;
+    }
+    float SKY_STDEV = psMetadataLookupF32 (&status, readout->analysis, "MSKY_DEV");
+    float KRON_SB_MIN_DIVISOR = sqrt ( M_PI * KRON_SB_MIN_FACTOR * SKY_STDEV );
 
     // bit-masks to test for good/bad pixels
@@ -114,5 +170,38 @@
 	// set a window function for each source based on the moments
 	// (this skips really bad sources (no peak, no moments, DEFECT)
-	psphotKronWindowSetSource (source, kronWindow, false, true);
+	psphotKronWindowSetSource (source, kronWindow, false, true, KRON_APPLY_WINDOW);
+    }
+
+    // We measure the Kron Radius on a smoothed copy of the readout image
+    psImage *smoothedImage = NULL;
+    if (KRON_SMOOTH) {
+        // Build the smoothed source image
+        // Replace the subtracted sources
+        psphotReplaceAllSourcesReadout(config, view, filerule, index, recipe, false);
+        // Copy the image and smooth
+        psTimerStart ("psphot.kron.smooth");
+        smoothedImage = psImageCopy(NULL, readout->image, PS_TYPE_F32);
+        psImageSmooth(smoothedImage, KRON_SMOOTH_SIGMA, KRON_SMOOTH_NSIGMA);
+        psLogMsg ("psphot.kron", PS_LOG_INFO, "smoothed image %f sec\n", psTimerMark ("psphot.kron.smooth"));
+
+        // remove the sources
+        psphotRemoveAllSourcesReadout( config, view, filerule, index, recipe, false );
+        // Now subtract smooth versions of the sources from the smoothed image
+        psTimerStart ("psphot.kron.smooth.sources");
+        for (int i=0; i< sources->n; i++) {
+            pmSource *source = sources->data[i];
+            // If source has been subtracted from the readout image subtract a "smoothed" version from the smoothedImage
+	    if (source->tmpFlags & PM_SOURCE_TMPF_SUBTRACTED) {
+                // cache copy of smoothedPixels in the source
+                // tmpPtr is for use by a single "module" and must be null otherwise
+                psAssert(source->tmpPtr == NULL, "source->tmpPtr is not null!");
+
+                psImage *smoothedPixels = psImageSubset(smoothedImage, source->region);
+                source->tmpPtr = (psPtr) smoothedPixels;
+                pmSourceSmoothOp(source, PM_MODEL_OP_FUNC, smoothedPixels, KRON_SMOOTH_SIGMA, false, maskVal, 0, 0);
+            }
+        }
+        psLogMsg ("psphot.kron", PS_LOG_INFO, "removed %ld smoothed sources %f sec\n", sources->n, psTimerMark ("psphot.kron.smooth.sources"));
+
     }
 
@@ -136,8 +225,14 @@
             psArrayAdd(job->args, 1, kronWindow);
             psArrayAdd(job->args, 1, cells->data[j]); // sources
+            psArrayAdd(job->args, 1, smoothedImage);
             PS_ARRAY_ADD_SCALAR(job->args, markVal,            PS_TYPE_IMAGE_MASK);
             PS_ARRAY_ADD_SCALAR(job->args, maskVal,            PS_TYPE_IMAGE_MASK);
             PS_ARRAY_ADD_SCALAR(job->args, RADIUS,             PS_TYPE_F32);
             PS_ARRAY_ADD_SCALAR(job->args, MIN_KRON_RADIUS,    PS_TYPE_F32);
+            PS_ARRAY_ADD_SCALAR(job->args, KRON_ITERATIONS,    PS_TYPE_S32);
+            PS_ARRAY_ADD_SCALAR(job->args, (psS32) KRON_APPLY_WEIGHT, PS_TYPE_S32);
+            PS_ARRAY_ADD_SCALAR(job->args, (psS32) KRON_APPLY_WINDOW, PS_TYPE_S32);
+            PS_ARRAY_ADD_SCALAR(job->args, KRON_SMOOTH_SIGMA,  PS_TYPE_F32);
+            PS_ARRAY_ADD_SCALAR(job->args, KRON_SB_MIN_DIVISOR,PS_TYPE_F32);
 
 // set this to 0 to run without threading
@@ -150,5 +245,5 @@
 	    if (!psphotKronIterate_Threaded(job)) {
 		psError(PS_ERR_UNKNOWN, false, "Unable to guess model.");
-		psFree(AnalysisRegion);
+		// psFree(AnalysisRegion);
 		return false;
 	    }
@@ -174,4 +269,12 @@
     psFree (cellGroups);
     psFree (kronWindow);
+    if (KRON_SMOOTH) {
+        for (int i = 0; i < sources->n; i++) {
+            pmSource *source = sources->data[i];
+            psFree(source->tmpPtr);
+            source->tmpPtr = NULL;
+        }
+    }
+    psFree (smoothedImage);
 
     psLogMsg ("psphot.kron", PS_LOG_WARN, "measure masked kron magnitudes : %f sec for %ld objects\n", psTimerMark ("psphot.kron"), sources->n);
@@ -184,11 +287,16 @@
     psImage *kronWindow             = job->args->data[1];
     psArray *sources                = job->args->data[2];
-    psImageMaskType markVal         = PS_SCALAR_VALUE(job->args->data[3],PS_TYPE_IMAGE_MASK_DATA);
-    psImageMaskType maskVal         = PS_SCALAR_VALUE(job->args->data[4],PS_TYPE_IMAGE_MASK_DATA);
-    float RADIUS                    = PS_SCALAR_VALUE(job->args->data[5],F32);
-    float MIN_KRON_RADIUS           = PS_SCALAR_VALUE(job->args->data[6],F32);
-
-    // XXX TEST : set iteration to 1
-    for (int j = 0; j < 1; j++) {
+    psImage *smoothedImage          = job->args->data[3];
+    psImageMaskType markVal         = PS_SCALAR_VALUE(job->args->data[4],PS_TYPE_IMAGE_MASK_DATA);
+    psImageMaskType maskVal         = PS_SCALAR_VALUE(job->args->data[5],PS_TYPE_IMAGE_MASK_DATA);
+    float RADIUS                    = PS_SCALAR_VALUE(job->args->data[6],F32);
+    float MIN_KRON_RADIUS           = PS_SCALAR_VALUE(job->args->data[7],F32);
+    int KRON_ITERATIONS             = PS_SCALAR_VALUE(job->args->data[8],S32);
+    bool KRON_APPLY_WEIGHT          = PS_SCALAR_VALUE(job->args->data[9],S32);
+    bool KRON_APPLY_WINDOW          = PS_SCALAR_VALUE(job->args->data[10],S32);
+    float KRON_SMOOTH_SIGMA         = PS_SCALAR_VALUE(job->args->data[11],F32);
+    float KRON_SB_MIN_DIVISOR       = PS_SCALAR_VALUE(job->args->data[12],F32);
+
+    for (int j = 0; j < KRON_ITERATIONS; j++) {
 	for (int i = 0; i < sources->n; i++) {
 
@@ -196,54 +304,88 @@
 	    if (!source->peak) continue; // XXX how can we have a peak-less source?
 
-	    // allocate space for moments
+	    // check status of this source's moments
 	    if (!source->moments) continue;
+	    if (!(source->tmpFlags & PM_SOURCE_TMPF_MOMENTS_MEASURED)) continue;
+	    if (source->mode & PM_SOURCE_MODE_MOMENTS_FAILURE) continue;
 
 	    // replace object in image
 	    bool reSubtract = false;
+            psImage *smoothedPixels = NULL;
 	    if (source->tmpFlags & PM_SOURCE_TMPF_SUBTRACTED) {
-		pmSourceAdd (source, PM_MODEL_OP_FULL, maskVal);
+                pmSourceAdd (source, PM_MODEL_OP_FULL, maskVal);
+                smoothedPixels = (psImage *) source->tmpPtr;
+                if (smoothedPixels) {
+                    pmSourceSmoothOp(source, PM_MODEL_OP_FUNC, smoothedPixels, KRON_SMOOTH_SIGMA, true, maskVal, 0, 0);
+                }
 		reSubtract = true;
 	    }
 
-	    // use S/N to control max window size
-	    // float kronSN = source->moments->KronFlux / source->moments->KronFluxErr;
-
-	    // maxWindow -> 1.5*RADIUS for kronSN = 5.0, keeping S.B. constant (kronSN ~ flux)
-	    // (kronSN / maxWindow^2) = (5.0 / (1.5 RADIUS)^2)
-	    // maxWindow = 1.5 * RADIUS * sqrt(kronSN / 5.0)
-	    // XXX float maxWindow = (isfinite(kronSN) && (kronSN > 5.0)) ? 1.5 * RADIUS * sqrt(kronSN / 5.0) : 1.5*RADIUS;
-
-	    // iterate to the window radius
-	    // XXX float windowRadius = PS_MIN(PS_MAX(RADIUS, 4.0*source->moments->Mrf), maxWindow);
-
-	    // XXX TEST : use a window based on the radial profile numbers: max is skyRadius, min is RADIUS
-	    // if we lack the skyRadius (eg MATCHED sources), go to the default value
-	    float maxWindow = isfinite(source->skyRadius) ? source->skyRadius : RADIUS;
+            // On first iteration set window radius to sky radius (if valid) on second iteration
+            // use a factor times the previous radial moment value up to a maximum value that
+            // depends on the surface brightness of the source
+	    float maxWindow;
+            if (j == 0) {
+                maxWindow = isfinite(source->skyRadius) ? source->skyRadius : RADIUS;
+            } else {
+                if (KRON_SB_MIN_DIVISOR) {
+                    if (isfinite(source->moments->KronFlux) && (source->moments->KronFlux > 0)) {
+                        // Limit window radius based on surface brightness
+                        float Rmax = sqrt(source->moments->KronFlux) / KRON_SB_MIN_DIVISOR;
+
+                        if (source->moments->Mrf > 0) {
+                            maxWindow = PS_MIN(6.0*source->moments->Mrf, Rmax);
+                        } else {
+                            maxWindow = Rmax;
+                        }
+                    } else {
+                        maxWindow = RADIUS;
+                    }
+                } else {
+                    // old code
+                    maxWindow = isfinite(source->moments->Mrf) ? 6.0*source->moments->Mrf : RADIUS;
+                }
+            }
 	    float windowRadius = PS_MAX(RADIUS, maxWindow);
 
 	    // re-allocate image, weight, mask arrays for each peak with box big enough to fit BIG_RADIUS
-	    pmSourceRedefinePixels (source, readout, source->peak->x, source->peak->y, windowRadius + 2);
+	    bool extend = pmSourceRedefinePixels (source, readout, source->peak->x, source->peak->y, windowRadius + 2);
 	    psAssert (source->pixels, "WTF?");
+            if (extend && smoothedPixels) {
+                psFree(source->tmpPtr);
+                smoothedPixels = psImageSubset(smoothedImage, source->region);
+                psAssert (smoothedPixels, "WTF?");
+                source->tmpPtr = (psPtr) smoothedPixels ;
+            }
+
 
 	    // clear the window function for this source based on the moments
-	    psphotKronWindowSetSource (source, kronWindow, (j > 0), false);
-
-	    // this function populates moments->Mrf,KronFlux,KronFluxErr
-	    psphotKronWindowMag (source, kronWindow, windowRadius, MIN_KRON_RADIUS, maskVal);
-	    psImageMaskPixels (source->maskObj, "AND", PS_NOT_IMAGE_MASK(markVal));
-
-	    // set a window function for each source based on the moments
-	    psphotKronWindowSetSource (source, kronWindow, true, true);
+            // Note: this function also applies cuts on the source and returns false if it
+            // does not meet the requirements for measuring the Kron Radius or Magnitude.
+            // Note: that it performs the cuts even if KRON_APPLY_WINDOW is false
+	    if (psphotKronWindowSetSource (source, kronWindow, (j > 0), false, KRON_APPLY_WINDOW)) {
+
+                // this function populates moments->Mrf,KronFlux,KronFluxErr
+                psphotKronWindowMag (source, kronWindow, windowRadius, MIN_KRON_RADIUS, maskVal, KRON_APPLY_WEIGHT, smoothedPixels);
+                psImageMaskPixels (source->maskObj, "AND", PS_NOT_IMAGE_MASK(markVal));
+
+                // set a window function for each source based on the moments
+                psphotKronWindowSetSource (source, kronWindow, true, true, KRON_APPLY_WINDOW);
+            }
 
 	    // if we subtracted it above, re-subtract the object, leave local sky
 	    if (reSubtract) {
-		pmSourceSub (source, PM_MODEL_OP_FULL, maskVal);
+                pmSourceSub (source, PM_MODEL_OP_FULL, maskVal);
+                if (smoothedPixels) {
+                    pmSourceSmoothOp(source, PM_MODEL_OP_FUNC, smoothedPixels, KRON_SMOOTH_SIGMA, false, maskVal, 0, 0);
+                }
 	    }
 	}
     }
+
     return true;
 }
 
-bool psphotKronWindowMag (pmSource *source, psImage *kronWindow, float radius, float minKronRadius, psImageMaskType maskVal) {
+bool psphotKronWindowMag (pmSource *source, psImage *kronWindow, float radius, float minKronRadius, psImageMaskType maskVal,
+    bool applyWeight, psImage *smoothedPixels) {
 
     PS_ASSERT_PTR_NON_NULL(source, false);
@@ -253,5 +395,5 @@
 
     psF32 R2 = PS_SQR(radius);
-    float rsigma2 = 0.5 / PS_SQR(radius/2.0);
+    float rsigma2 =  applyWeight ? 0.5 / R2 : 0;
 
     // a note about coordinates: coordinates of objects throughout psphot refer to the primary
@@ -266,4 +408,5 @@
     // Xn  = SUM (x - xc)^n * (z - sky)
 
+
     psF32 RF = 0.0;
     psF32 RS = 0.0;
@@ -284,5 +427,10 @@
     int Ywo = source->pixels->row0;
 
-    psF32 **vPix = source->pixels->data.F32;
+    psF32 **vPix;
+    if (smoothedPixels) {
+        vPix = smoothedPixels->data.F32;
+    } else {
+        vPix = source->pixels->data.F32;
+    }
     psF32 **vWin = kronWindow->data.F32;
     psF32 **vWgt = source->variance->data.F32;
@@ -357,4 +505,9 @@
     float Var = 0.0;
     float Win = 0.0;
+
+    // set vPix to the source pixels (it may have been set to the
+    // smoothed image above)
+    vPix = source->pixels->data.F32;
+
 
     for (psS32 row = 0; row < source->pixels->numRows ; row++) {
@@ -395,5 +548,5 @@
 }
 
-bool psphotKronWindowSetSource(pmSource *source, psImage *kronWindow, bool useKronRadius, bool insert) {
+bool psphotKronWindowSetSource(pmSource *source, psImage *kronWindow, bool useKronRadius, bool insert, bool applyWindow) {
 
     if (!source) return false;
@@ -402,5 +555,13 @@
     if (source->type == PM_SOURCE_TYPE_DEFECT) return false;
     if (source->type == PM_SOURCE_TYPE_SATURATED) return false;
+    if (!(source->tmpFlags & PM_SOURCE_TMPF_MOMENTS_MEASURED)) return false;
+    if (source->mode & PM_SOURCE_MODE_MOMENTS_FAILURE) return false;
     psAssert(kronWindow, "need a window");
+
+    if (!isfinite(source->moments->Mrf) || source->moments->Mrf < 0 ) return false;
+
+    if (!applyWindow) {
+        return true;
+    }
 
     // we have a source with moments Mx, My, Mxx, Mxy, Myy.  we just need to define a Gaussian that has 
@@ -413,19 +574,29 @@
     float Yo = source->moments->My;
 
-    float Mxx = source->moments->Mxx;
-    float Mxy = source->moments->Mxy;
-    float Myy = source->moments->Myy;
-
-    float Mmajor = 0.5*(Mxx + Myy) + 0.5*sqrt(PS_SQR(Mxx - Myy) + 4.0*PS_SQR(Mxy));
-    float Mminor = 0.5*(Mxx + Myy) - 0.5*sqrt(PS_SQR(Mxx - Myy) + 4.0*PS_SQR(Mxy));
-
-    // Mxx, Mxy, Myy define the elliptical shape, but Mrf defines the width 
-    float scale = PS_SQR(0.5 * source->moments->Mrf) / Mmajor;
-
-    float Sxx = scale * Mmajor * Mminor / Myy; // sigma_x^2
-    float Sxy = Mxy / (scale * Mmajor * Mminor);
-    float Syy = scale * Mmajor * Mminor / Mxx; // sigma_y^2
-
-    float Smajor = sqrt(Mmajor);
+    psEllipseMoments moments;
+    moments.x2 = source->moments->Mxx;
+    moments.y2 = source->moments->Myy;
+    moments.xy = source->moments->Mxy;
+
+    psEllipseAxes axes = psEllipseMomentsToAxes(moments, 20.0);
+    if (! (isfinite(axes.major) && isfinite(axes.minor) && isfinite(axes.theta)) ) {
+        // Shall we log a proper warning? This happens often with matched sources (forced photometry)
+        // fprintf(dump, "invalid axes found id: %4d major: %f minor: %f theta: %f\n", source->id, axes.major, axes.minor, axes.theta);
+        return false;
+    }
+
+    // Why this factor of 0.5 ?
+    float scale = 0.5 * source->moments->Mrf / axes.major;
+    axes.major *= scale;
+    axes.minor *= scale;
+
+    psEllipseShape shape = psEllipseAxesToShape(axes);
+    if (! (isfinite(shape.sx) && isfinite(shape.sy) && isfinite(shape.sxy)) ) {
+        // Shall we log a proper warning? This happens often with matched sources (forced photometry)
+        // fprintf(dump, "invalid shape found id: %d sx: %f sy %f sxy: %f\n", source->id, shape.sx, shape.sy, shape.sxy);
+        return false;
+    }
+
+    float Smajor = axes.major;
 
     int minX = PS_MIN(PS_MAX(Xo - 5*Smajor, 0), Nx - 1);
@@ -434,7 +605,9 @@
     int maxY = PS_MIN(PS_MAX(Yo + 5*Smajor, 0), Ny - 1);
 
-    float rMxx = 0.5 / Sxx;
-    float rMyy = 0.5 / Syy;
-    
+    float rMxx = 0.5 / PS_SQR(shape.sx);
+    float rMyy = 0.5 / PS_SQR(shape.sy);
+    float Sxy = -1. * shape.sxy;    // factor of -1 is included to match the previous window function
+                                    // implementation. XXX: Is this correct?
+
     for (int iy = minY; iy < maxY; iy++) {
 	for (int ix = minX; ix < maxX; ix++) {
@@ -447,7 +620,8 @@
 	    float f = insert ? 1.001 - exp(-z) : 1.0 / (1.001 - exp(-z));
 
-	    kronWindow->data.F32[iy][ix] *= f;
+            kronWindow->data.F32[iy][ix] *= f;
 	}
     }
+
     return true;
 }
Index: branches/meh_branches/ppstack_test/psphot/src/psphotMergeSources.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotMergeSources.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotMergeSources.c	(revision 34041)
@@ -677,5 +677,8 @@
       if (sourceOut->modelPSF) {
 	pmSourceRedefinePixels (sourceOut, readoutOut, sourceOut->peak->x, sourceOut->peak->y, sourceOut->modelPSF->fitRadius);
-      }
+      } else {
+        // if we have no pixels we can't use it to determine the psf so make sure this bit is off
+        sourceOut->tmpFlags &= ~PM_SOURCE_TMPF_CANDIDATE_PSFSTAR;
+       }
 
       // child sources have not been subtracted in this image, but this flag may be raised if
@@ -741,6 +744,13 @@
     psAssert (readoutOut, "missing readout?");
 
+    pmDetections *detectionsOutOld = psMetadataLookupPtr (&status, readoutOut->analysis, "PSPHOT.DETECTIONS");
+    psArray *oldFootprints = detectionsOutOld ? detectionsOutOld->footprints : NULL;
+
     // replace any existing DETECTION container on readoutOut->analysis with the new one
     pmDetections *detectionsOut = pmDetectionsAlloc();
+    if (oldFootprints) {
+        // ... but hang on to any existing footprints so that they can be merged with new footprints in pass 2
+        detectionsOut->footprints = psMemIncrRefCounter(oldFootprints);
+    }
     detectionsOut->allSources = psArrayAllocEmpty (100);
     if (!psMetadataAddPtr (readoutOut->analysis, PS_LIST_TAIL, "PSPHOT.DETECTIONS", PS_META_REPLACE | PS_DATA_UNKNOWN, "psphot detections", detectionsOut)) {
@@ -900,6 +910,10 @@
 	    // allocate image, weight, mask for the new image for each peak
 	    if (sourceOut->modelPSF) {
-	      pmSourceRedefinePixels (sourceOut, readout, sourceOut->peak->x, sourceOut->peak->y, sourceOut->modelPSF->fitRadius);
-	    }
+                pmSourceRedefinePixels (sourceOut, readout, sourceOut->peak->x, sourceOut->peak->y, 
+                                                                        sourceOut->modelPSF->fitRadius);
+	    } else {
+                // if we have no pixels we can't use it to determine the psf so make sure this bit is off
+                sourceOut->tmpFlags &= ~PM_SOURCE_TMPF_CANDIDATE_PSFSTAR;
+            }
 
 	    // child sources have not been subtracted in this image, but this flag may be raised if
Index: branches/meh_branches/ppstack_test/psphot/src/psphotModelBackground.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotModelBackground.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotModelBackground.c	(revision 34041)
@@ -37,10 +37,11 @@
 // corresponding to the model.  Other information about the background model is saved on the
 // readout->analysis
-static bool psphotModelBackgroundReadout(psImage *model,  // Model image
-                                  psImage *modelStdev, // Model stdev image
-                                  psMetadata *analysis, // Analysis metadata for outputs
-                                  pmReadout *readout, // Readout for which to generate a background model
-                                  psImageBinning *binning, // Binning parameters
-                                  const pmConfig *config // Configuration
+bool psphotModelBackgroundReadout(psImage *model,  // Model image
+				  psImage *modelStdev, // Model stdev image
+				  psMetadata *analysis, // Analysis metadata for outputs
+				  pmReadout *readout, // Readout for which to generate a background model
+				  psImageBinning *binning, // Binning parameters
+				  const pmConfig *config,// Configuration
+				  bool useVarianceImage
     )
 {
@@ -49,5 +50,6 @@
     bool status = true;
 
-    psImage *image = readout->image, *mask = readout->mask; // Image and mask for readout
+    psImage *image = useVarianceImage ? readout->variance : readout->image;
+    psImage *mask = readout->mask; // Image and mask for readout
 
     // select the appropriate recipe information
@@ -143,5 +145,7 @@
 
     // we save the binning structure for use in psphotMagnitudes
-    psMetadataAddPtr(analysis, PS_LIST_TAIL, "PSPHOT.BACKGROUND.BINNING", PS_DATA_UNKNOWN | PS_META_REPLACE, "Background binning", binning);
+    if (!useVarianceImage) {
+	psMetadataAddPtr(analysis, PS_LIST_TAIL, "PSPHOT.BACKGROUND.BINNING", PS_DATA_UNKNOWN | PS_META_REPLACE, "Background binning", binning);
+    }
 
     psVector *dQ = psVectorAllocEmpty (100, PS_TYPE_F32);
@@ -159,6 +163,6 @@
 
     // measure clipped median for subimages
-    psRegion ruffRegion = {0,0,0,0};
-    psRegion fineRegion = {0,0,0,0};
+    psRegion ruffRegion = psRegionSet (0,0,0,0);
+    psRegion fineRegion = psRegionSet (0,0,0,0);
     for (int iy = 0; iy < model->numRows; iy++) {
         for (int ix = 0; ix < model->numCols; ix++) {
@@ -330,25 +334,30 @@
     psVectorStats (statsDQ, dQ, NULL, NULL, 0);
 
-    psMetadataAddF32(readout->analysis, PS_LIST_TAIL, "SKY_MEAN",  PS_META_REPLACE, "sky mean", Value);
-    psMetadataAddF32(readout->analysis, PS_LIST_TAIL, "SKY_STDEV", PS_META_REPLACE, "sky stdev", ValueStdev);
-    psMetadataAddF32(readout->analysis, PS_LIST_TAIL, "SKY_DQ",    PS_META_REPLACE, "sky quartile slope", statsDQ->sampleMedian);
-    psLogMsg ("psphot", PS_LOG_INFO, "image sky : mean %f, stdev %f, dQ %f", Value, ValueStdev, statsDQ->sampleMedian);
-
-    // measure image and background stats and save for later output
-    psStats *statsBck = psStatsAlloc (PS_STAT_SAMPLE_MEAN |
-                                      PS_STAT_SAMPLE_STDEV |
-                                      PS_STAT_MIN |
-                                      PS_STAT_MAX);
-    psImageStats (statsBck, model, NULL, 0);
-    psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_MN",  PS_META_REPLACE, "sky model mean",          statsBck->sampleMean);
-    psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_SIG", PS_META_REPLACE, "sky model stdev",         statsBck->sampleStdev);
-    psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_DEV", PS_META_REPLACE, "sky stdev",               ValueStdev);
-    psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_DQ",  PS_META_REPLACE, "sky quartile slope",      statsDQ->sampleMedian);
-    psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_MAX", PS_META_REPLACE, "sky model maximum value", statsBck->max);
-    psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_MIN", PS_META_REPLACE, "sky model minimum value", statsBck->min);
-    psMetadataAddS32 (readout->analysis, PS_LIST_TAIL, "MSKY_NX", PS_META_REPLACE, "sky model size (x)",      model->numCols);
-    psMetadataAddS32 (readout->analysis, PS_LIST_TAIL, "MSKY_NY", PS_META_REPLACE, "sky model size (y)",      model->numRows);
-    psLogMsg ("psphot", PS_LOG_INFO, "background sky : min %f mean %f max %f stdev %f",
-              statsBck->min, statsBck->sampleMean, statsBck->max, statsBck->sampleStdev);
+    if (!useVarianceImage) {
+	psMetadataAddF32(readout->analysis, PS_LIST_TAIL, "SKY_MEAN",  PS_META_REPLACE, "sky mean", Value);
+	psMetadataAddF32(readout->analysis, PS_LIST_TAIL, "SKY_STDEV", PS_META_REPLACE, "sky stdev", ValueStdev);
+	psMetadataAddF32(readout->analysis, PS_LIST_TAIL, "SKY_DQ",    PS_META_REPLACE, "sky quartile slope", statsDQ->sampleMedian);
+	psLogMsg ("psphot", PS_LOG_INFO, "image sky : mean %f, stdev %f, dQ %f", Value, ValueStdev, statsDQ->sampleMedian);
+
+	// measure image and background stats and save for later output
+	psStats *statsBck = psStatsAlloc (PS_STAT_SAMPLE_MEAN |
+					  PS_STAT_SAMPLE_STDEV |
+					  PS_STAT_MIN |
+					  PS_STAT_MAX);
+	psImageStats (statsBck, model, NULL, 0);
+	psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_MN",  PS_META_REPLACE, "sky model mean",          statsBck->sampleMean);
+	psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_SIG", PS_META_REPLACE, "sky model stdev",         statsBck->sampleStdev);
+	psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_DEV", PS_META_REPLACE, "sky stdev",               ValueStdev);
+	psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_DQ",  PS_META_REPLACE, "sky quartile slope",      statsDQ->sampleMedian);
+	psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_MAX", PS_META_REPLACE, "sky model maximum value", statsBck->max);
+	psMetadataAddF32 (readout->analysis, PS_LIST_TAIL, "MSKY_MIN", PS_META_REPLACE, "sky model minimum value", statsBck->min);
+	psMetadataAddS32 (readout->analysis, PS_LIST_TAIL, "MSKY_NX", PS_META_REPLACE, "sky model size (x)",      model->numCols);
+	psMetadataAddS32 (readout->analysis, PS_LIST_TAIL, "MSKY_NY", PS_META_REPLACE, "sky model size (y)",      model->numRows);
+	psLogMsg ("psphot", PS_LOG_INFO, "background sky : min %f mean %f max %f stdev %f",
+		  statsBck->min, statsBck->sampleMean, statsBck->max, statsBck->sampleStdev);
+	psFree(statsBck);
+    } else {
+	psLogMsg ("psphot", PS_LOG_INFO, "variance data : mean %f, stdev %f, dQ %f", Value, ValueStdev, statsDQ->sampleMedian);
+    }
 
     psFree(statsDQ);
@@ -356,5 +365,4 @@
 
     psFree(stats);
-    psFree(statsBck);
     psFree(statsDefaults);
     psFree(binning);
@@ -375,5 +383,5 @@
     psImage *modelStdev = psImageAlloc(binning->nXruff, binning->nYruff, PS_TYPE_F32); // Standard deviation
 
-    if (!psphotModelBackgroundReadout(model, modelStdev, readout->analysis, readout, binning, config)) {
+    if (!psphotModelBackgroundReadout(model, modelStdev, readout->analysis, readout, binning, config, false)) {
         psFree(model);
         psFree(modelStdev);
@@ -400,5 +408,5 @@
     pmReadout *modelStdev = pmFPAGenerateReadout(config, view, "PSPHOT.BACKMDL.STDEV", inFPA, binning, index);
 
-    if (!psphotModelBackgroundReadout(model->image, modelStdev->image, model->analysis, readout, binning, config)) {
+    if (!psphotModelBackgroundReadout(model->image, modelStdev->image, model->analysis, readout, binning, config, false)) {
         psError(PS_ERR_UNKNOWN, false, "Unable to generate background model");
         return false;
Index: branches/meh_branches/ppstack_test/psphot/src/psphotParseCamera.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotParseCamera.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotParseCamera.c	(revision 34041)
@@ -2,4 +2,6 @@
 
 // define the needed / desired I/O files
+
+
 bool psphotParseCamera (pmConfig *config) {
 
@@ -40,4 +42,11 @@
     }
 
+    pmFPAfileBindFromArgs (&status, input, config, "PSPHOT.EXPNUM", "EXPNUM");
+    if (!status) {
+        psError (PS_ERR_UNKNOWN, false, "failed to load find definition");
+        return NULL;
+    }
+
+
     // define the additional input/output files associated with psphot
     if (!psphotDefineFiles (config, input)) {
Index: branches/meh_branches/ppstack_test/psphot/src/psphotRadialProfileWings.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotRadialProfileWings.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotRadialProfileWings.c	(revision 34041)
@@ -55,4 +55,5 @@
 static float MIN_RADIUS = NAN;
 static float SKY_STDEV  = NAN;
+static float SKY_SLOPE_MIN = NAN;
 // static FILE *file = NULL;
 
@@ -81,5 +82,5 @@
 
     MIN_RADIUS = psMetadataLookupF32 (&status, readout->analysis, "PSF_MOMENTS_RADIUS");
-    if (!status) {
+    if (!status || (MIN_RADIUS > MAX_RADIUS)) {
         MIN_RADIUS = psMetadataLookupF32 (&status, recipe, "PSF_MOMENTS_RADIUS");
     }
@@ -89,4 +90,10 @@
     if (!status) {
 	SKY_STDEV = 1.0; // a crude default value (why would this not exist?)
+    }
+
+    // SKY_SLOPE_MIN is the sigma of the sky model (ie, smoothed on large scales)
+    SKY_SLOPE_MIN = psMetadataLookupF32 (&status, recipe, "SKY_SLOPE_MIN");
+    if (!status) {
+	SKY_SLOPE_MIN = 3.0; 
     }
 
@@ -302,10 +309,16 @@
 	    limitSlope = slope;
 	}
-	if (!limit && isfinite(slope) && (fabs(slope) < 3.0)) { 
+	if (!limit && isfinite(slope) && (fabs(slope) < SKY_SLOPE_MIN)) { 
 	    // SB no longer changing.	    
 	    limit = true;
 	    // linearly interpolate to the radius at which we hit the sky, using the last flux and the limiting slope
 	    if (isfinite(lastFlux)) {
-		limitRadius = lastRadius + lastFlux / 3.0;
+                float interpolatedRadius = lastRadius + lastFlux / SKY_SLOPE_MIN;
+                if (interpolatedRadius < MAX_RADIUS) {
+                    limitRadius = interpolatedRadius;
+                } else {
+                    // XXX should we keep going in this case?
+                    limitRadius = meanRadius;
+                }
 	    } else {
 		limitRadius = meanRadius;
Index: branches/meh_branches/ppstack_test/psphot/src/psphotReadout.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotReadout.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotReadout.c	(revision 34041)
@@ -185,5 +185,9 @@
 	// remove noise for subtracted objects (ie, return to normal noise level)
 	// NOTE: this needs to operate only on the OLD sources
-	psphotSubNoise (config, view, filerule); // pass 1 (detections->allSources)
+        bool footprintUseUnsubtracted = psMetadataLookupBool(NULL, recipe, "FOOTPRINT_USE_UNSUBTRACTED");
+        // Note: if footprintUseUnsubtracted is true the noise was already subtracted in psphotFindDetections()
+        if (!footprintUseUnsubtracted) {
+	    psphotSubNoise (config, view, filerule); // pass 1 (detections->allSources)
+        }
 
 	// define new sources based on only the new peaks & measure moments
Index: branches/meh_branches/ppstack_test/psphot/src/psphotReadoutKnownSources.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotReadoutKnownSources.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotReadoutKnownSources.c	(revision 34041)
@@ -71,4 +71,7 @@
     psphotSourceFreePixels (config, view, filerule);
 
+    // set source->nFrames
+    psphotSetNFrames (config, view, filerule);
+
     // create the exported-metadata and free local data
     return psphotReadoutCleanup (config, view, filerule);
Index: branches/meh_branches/ppstack_test/psphot/src/psphotReadoutMinimal.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotReadoutMinimal.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotReadoutMinimal.c	(revision 34041)
@@ -64,5 +64,8 @@
     // Construct an initial model for each object, set the radius to fitRadius, set circular
     // fit mask.  NOTE: only applied to sources without guess models
-    psphotGuessModels (config, view, filerule);
+    if (!psphotGuessModels (config, view, filerule)) {
+        psLogMsg ("psphot", 3, "failure to Guess Model");
+        return psphotReadoutCleanup (config, view, filerule);
+    }
 
     // linear PSF fit to source peaks
Index: branches/meh_branches/ppstack_test/psphot/src/psphotReplaceUnfit.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotReplaceUnfit.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotReplaceUnfit.c	(revision 34041)
@@ -60,5 +60,6 @@
 
     psArray *sources = detections->allSources;
-    psAssert (sources, "missing sources?");
+    //psAssert (sources, "missing sources?");
+    if (!sources) return true;
 
     // user-defined masks to test for good/bad pixels (build from recipe list if not yet set)
@@ -139,6 +140,7 @@
 
     psArray *sources = detections->allSources;
-    psAssert (sources, "missing sources?");
-
+    //psAssert (sources, "missing sources?");
+    if (!sources) return true;
+    
     // user-defined masks to test for good/bad pixels (build from recipe list if not yet set)
     psImageMaskType maskVal = psMetadataLookupImageMask(&status, recipe, "MASK.PSPHOT"); // Mask value for bad pixels
Index: branches/meh_branches/ppstack_test/psphot/src/psphotSersicModelClass.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotSersicModelClass.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotSersicModelClass.c	(revision 34041)
@@ -546,4 +546,8 @@
     // set the normalization by linear fit between model and data
     psphotSersicModelNorm (pcm, source);
+    if (!isfinite(PAR[PM_PAR_I0])) {
+        fprintf(stderr, "psphotSersicModelClassGuessPCM: psphotSerisicModelNorm set PM_PAR_I0 to NAN\n");
+        return false;
+    }
 
     if (TIMING) { t5 = psTimerMark ("SersicGuess"); }
Index: branches/meh_branches/ppstack_test/psphot/src/psphotSetNFrames.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotSetNFrames.c	(revision 34041)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotSetNFrames.c	(revision 34041)
@@ -0,0 +1,69 @@
+# include "psphotInternal.h"
+
+# define ESCAPE(MESSAGE) {				\
+	psError(PSPHOT_ERR_DATA, false, MESSAGE);	\
+	psFree (view);					\
+	return false;					\
+    }
+
+
+// Set source->nFrames based on the values in the EXPNUM image at the coordinates of each source's peak
+
+bool psphotSetNFrames (pmConfig *config, const pmFPAview *view, const char *filerule)
+{
+    psLogMsg ("psphot", PS_LOG_INFO, "--- psphot Set N Frames ---");
+
+    int num = psphotFileruleCount(config, filerule);
+
+    // loop over the inputs
+    for (int i = 0; i < num; i++) {
+        if (!psphotSetNFramesReadout (config, view, filerule, i)) {
+            psError (PSPHOT_ERR_CONFIG, false, "failed to set nFrames for %s entry %d", filerule, i);
+            return false;
+        }
+    }
+
+    return true;
+}
+
+bool psphotSetNFramesReadout (pmConfig *config, const pmFPAview *view, const char *filerule, int index)
+{
+    bool status;
+    // find the currently selected readout
+    pmFPAfile *file = pmFPAfileSelectSingle(config->files, filerule, index); // File of interest
+    psAssert (file, "missing file?");
+
+    pmReadout *readout = pmFPAviewThisReadout(view, file->fpa);
+    psAssert (readout, "missing readout?");
+
+    psImage *expnum = psMetadataLookupPtr(&status, readout->analysis, "EXPNUM");
+    if (!status || !expnum) { 
+        psLogMsg ("psphot", PS_LOG_INFO, "No EXPNUM image for input %d", index);
+        return true;
+    }
+    psLogMsg ("psphot", PS_LOG_INFO, "Found EXPNUM image for input %d", index);
+
+    pmDetections *detections = psMetadataLookupPtr (&status, readout->analysis, "PSPHOT.DETECTIONS");
+    psAssert (detections, "missing detections?");
+    psAssert (detections->allSources, "missing sources?");
+
+    psArray *sources = detections->allSources;
+
+    int col0 = expnum->col0;
+    int row0 = expnum->row0;
+    int numCols = expnum->numCols;
+    int numRows = expnum->numRows;
+    
+    for (int i = 0; i < sources->n; i++) {
+        pmSource *source = sources->data[i];
+        int x = source->peak->x;
+        int y = source->peak->y;
+        if (x >= col0 && x < numCols && y >= row0 && y < numRows) {
+            source->nFrames = expnum->data.PS_TYPE_IMAGE_MASK_DATA[y][x];
+        } else {
+            source->nFrames = 0;
+        }
+    }
+
+    return true;
+}
Index: branches/meh_branches/ppstack_test/psphot/src/psphotSetThreads.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotSetThreads.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotSetThreads.c	(revision 34041)
@@ -30,5 +30,5 @@
     psFree(task);
 
-    task = psThreadTaskAlloc("PSPHOT_KRON_ITERATE", 7);
+    task = psThreadTaskAlloc("PSPHOT_KRON_ITERATE", 13);
     task->function = &psphotKronIterate_Threaded;
     psThreadTaskAdd(task);
Index: branches/meh_branches/ppstack_test/psphot/src/psphotSourceMatch.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotSourceMatch.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotSourceMatch.c	(revision 34041)
@@ -3,4 +3,8 @@
 bool psphotMatchSourcesAddMissing (pmConfig *config, const pmFPAview *view, const char *filerule, psArray *objects);
 bool psphotMatchSourcesSetIDs (psArray *objects);
+
+static psArray     *psphotMatchFootprintCacheAlloc (int nImages);
+static pmFootprint *psphotMatchLookupFootprint (psArray *cache, int footprintID, int imageID);
+static pmFootprint *psphotMatchCopyFootprint (psArray *cache, pmFootprint *footprint, int imageID, psImage *image, psArray *footprints);
  
 psArray *psphotMatchSources (pmConfig *config, const pmFPAview *view, const char *filerule) 
@@ -193,4 +197,5 @@
     // vector to track if source for an image is found
     psVector *found = psVectorAlloc(nImages, PS_TYPE_U8);
+    psArray *footprintCache = psphotMatchFootprintCacheAlloc(nImages);
 
     for (int i = 0; i < objects->n; i++) { 
@@ -219,5 +224,5 @@
 
 	// we make a copy of the largest footprint; this will be used for all new sources associated with this object
-	pmFootprint *footprint = NULL;
+	pmFootprint *largestFootprint = NULL;
 	if (iSpansMax != -1) { // copy the footprint info
 	    pmSource *src = obj->sources->data[iSpansMax]; 
@@ -226,6 +231,5 @@
 	    psAssert(src->peak->footprint->nspans == nSpansMax, "wrong footprint?");
 	    
-	    // we only care about the spans, do not worry about the image of this footprint
-	    footprint = pmFootprintCopyData(src->peak->footprint, NULL);
+            largestFootprint = src->peak->footprint;
 	}
 
@@ -248,11 +252,16 @@
 	    
 	    // assign to a footprint on this readout->image
-	    if (footprint) {
-		peak->footprint = pmFootprintCopyData(footprint, readout->image);
-
-		// the peak does not claim ownership of the footprint (it does not free it). save a copy of this 
-		// footprint on detections->footprints so we can free it later
-		psArrayAdd(detections->footprints, 100, peak->footprint); 
-		psFree (peak->footprint);
+	    if (largestFootprint) {
+                // we save the copies that we make of the of the footprints in a hash so that we can reuse them
+                // for all sources that share the fooprint. Without this we had serious memory explosion in
+                // dense fields with lots of footprints (spans are small but when you have enough of them ...)
+                peak->footprint = psphotMatchLookupFootprint(footprintCache, largestFootprint->id, index);
+                if (!peak->footprint) {
+                    // the peak does not claim ownership of the footprint (it does not free it). 
+                    // psphotMatchCopyFootprint saves a copy of this 
+                    // footprint on detections->footprints so we can free it later
+                    peak->footprint = psphotMatchCopyFootprint(footprintCache, largestFootprint,
+                                            index, readout->image, detections->footprints);
+                }
 	    }
 	    
@@ -272,4 +281,9 @@
 	    pmSourceDefinePixels (source, readout, source->peak->x, source->peak->y, OUTER);
 
+#if (0)
+            fprintf(stderr, "Add mising source for obj: %5d %5d image: %d flux: %f size: %4d %4d\n",
+                                                      i, obj->id, index, peakFlux, source->pixels->numRows, source->pixels->numCols);
+#endif
+
 	    peak->assigned = true;
 	    pmPhotObjAddSource(obj, source);
@@ -277,6 +291,6 @@
 	    psFree (source);
 	}
-	psFree (footprint);
-    }
+    }
+    psFree(footprintCache);
 
     // how many sources do we have now?
@@ -309,2 +323,54 @@
     return true;
 }
+
+// Cache of footprints created for unmatched sources.
+static psArray * psphotMatchFootprintCacheAlloc (int nImages) {
+    psArray *cache = psArrayAlloc(nImages);
+    for (int i = 0; i < nImages; i++) {
+        psHash *hash = psHashAlloc(5000);
+        cache->data[i] = hash;
+    }
+    return cache;
+}
+
+// Find copy of footprint with given ID made for a given image
+static pmFootprint *psphotMatchLookupFootprint (psArray *cache, int footprintID, int imageID) {
+    psHash *hash = (psHash *) cache->data[imageID];
+
+    psAssert(hash != NULL, "missing hash for image %d", imageID);
+
+    // footprintID is the id of the original footprint.
+    char key[32];
+    sprintf(key, "%d", footprintID); 
+
+    // The footprints in our hashes are the copies of that footprint for the respective images
+    pmFootprint *copy = psHashLookup(hash, key);
+
+    return copy;
+}
+
+// Create a copy of a given footprint for a given image
+static pmFootprint *psphotMatchCopyFootprint (psArray *cache, pmFootprint *footprint, int imageID, psImage *image, psArray *footprints) {
+
+    psAssert((imageID >= 0 && imageID < cache->n), "invalid imageID %d", imageID);
+
+    psHash *hash = (psHash *) cache->data[imageID];
+
+    psAssert(hash != NULL, "missing hash for image %d", imageID);
+
+    char key[32];
+    sprintf(key, "%d", footprint->id); 
+
+    pmFootprint *copy = pmFootprintCopyData (footprint, image);
+
+    // save a copy in this image's hash
+    psHashAdd(hash, key, copy);
+
+    // save a copy of this footprint on the passed in footprints Array so we can free it later
+    psArrayAdd(footprints, 100, copy);
+
+    // drop our ref
+    psFree(copy);
+
+    return copy;
+}
Index: branches/meh_branches/ppstack_test/psphot/src/psphotSourceStats.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotSourceStats.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotSourceStats.c	(revision 34041)
@@ -605,4 +605,7 @@
     }
     psAssert (isfinite(Sigma), "did we miss a case?");
+    if (!isfinite(minKronRadius)) {
+        minKronRadius = Sigma;
+    }
 
     // choose a grid scale that is a fixed fraction of the psf sigma^2
Index: branches/meh_branches/ppstack_test/psphot/src/psphotStackArguments.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotStackArguments.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotStackArguments.c	(revision 34041)
@@ -53,4 +53,8 @@
         psMetadataAddStr (options, PS_LIST_TAIL, "BREAK_POINT", PS_META_REPLACE, "", argv[N]);
         psArgumentRemove (N, &argc, argv);
+    }
+    if ((N = psArgumentGet (argc, argv, "-ds9regions"))) {
+        psArgumentRemove (N, &argc, argv);
+        pmSubtractionRegions(true);
     }
 
Index: branches/meh_branches/ppstack_test/psphot/src/psphotStackImageLoop.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotStackImageLoop.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotStackImageLoop.c	(revision 34041)
@@ -30,7 +30,17 @@
     }
 
+    psMetadata *recipe = psMetadataLookupPtr (NULL, config->recipes, PSPHOT_RECIPE);
+    bool useRaw = psMetadataLookupBool (NULL, recipe, "PSPHOT.STACK.USE.RAW");
+    if (useRaw && inputRaw == NULL) {
+        psLogMsg ("psphot", 1, "PSPHOT.STACK.USE.RAW set but no raw input.");
+        useRaw = false;
+    }
+
     pmFPAview *view = pmFPAviewAlloc (0);
 
-    // XXX for now, just load the full set of images up front
+
+    // XXX for now, just load the full set of images up front except for EXPNUM which we defer
+    pmFPAfileActivate (config->files, false, "PSPHOT.STACK.EXPNUM.RAW");
+    pmFPAfileActivate (config->files, false, "PSPHOT.STACK.EXPNUM.CNV");
     if (!pmFPAfileIOChecks (config, view, PM_FPA_BEFORE)) ESCAPE ("failed input for fpa in psphot.");
 
@@ -86,6 +96,9 @@
 	UpdateHeadersForChip(config, view);
 
-	// save output which is saved at the chip level
-	if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE ("failed output for Chip in psphot.");
+        // Defer output until we have performed psphotSetNFrames()
+        pmFPAfileActivate (config->files, false, NULL);
+
+	// Iterate up
+	if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE ("failed pmFPAfileIOChecks for Chip in psphot.");
     }
     psMemDump("doneloop");
@@ -93,5 +106,36 @@
     UpdateHeadersForFPA(config, view);
 
-    // save output which is saved at the fpa level
+    // Iterate up output which is saved at the fpa level
+    if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE ("failed ouput pmFPAfileIOChecks FPA in psphot.");
+
+    // Load the appropriate EXPNUM image
+    pmFPAfileActivate (config->files, true, useRaw ? "PSPHOT.STACK.EXPNUM.RAW" : "PSPHOT.STACK.EXPNUM.CNV");
+
+    if (!pmFPAfileIOChecks (config, view, PM_FPA_BEFORE)) ESCAPE ("failed input for fpa EXPNUM in psphot.");
+
+    // for psphot, we force data to be read at the chip level
+    while ((chip = pmFPAviewNextChip (view, input->fpa, 1)) != NULL) {
+        psLogMsg ("psphot", 4, "Chip %d: %x %x\n", view->chip, chip->file_exists, chip->process);
+        if (! chip->process || ! chip->file_exists) { continue; }
+        if (!pmFPAfileIOChecks (config, view, PM_FPA_BEFORE)) ESCAPE ("failed input for Chip EXPNUM in psphotStack.");
+
+        // there is now only a single chip (multiple readouts?). loop over it and process
+        while ((cell = pmFPAviewNextCell (view, input->fpa, 1)) != NULL) {
+            psLogMsg ("psphot", 5, "Cell %d: %x %x\n", view->cell, cell->file_exists, cell->process);
+	    if (!pmFPAfileIOChecks (config, view, PM_FPA_BEFORE)) ESCAPE ("failed input for Cell in psphotStack.");
+
+            // process each of the readouts
+            while ((readout = pmFPAviewNextReadout (view, input->fpa, 1)) != NULL) {
+                psLogMsg ("psphot", 6, "Readout %d: %x %x\n", view->readout, cell->file_exists, cell->process);
+                if (! readout->data_exists) { continue; }
+
+                if (!psphotSetNFrames (config, view, useRaw ? inputRaw->name : inputCnv->name)) ESCAPE ("failed to setNFrames.");
+            }
+        }
+        // now activate all files to trigger final output
+        pmFPAfileActivate (config->files, true, NULL);
+
+        if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE ("failed output for Chip in psphot.");
+    }
     if (!pmFPAfileIOChecks (config, view, PM_FPA_AFTER)) ESCAPE ("failed ouput for FPA in psphot.");
 
Index: branches/meh_branches/ppstack_test/psphot/src/psphotStackMatchPSFsPrepare.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotStackMatchPSFsPrepare.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotStackMatchPSFsPrepare.c	(revision 34041)
@@ -32,7 +32,7 @@
 	pmDetections *detections = psMetadataLookupPtr(NULL, readout->analysis, "PSPHOT.DETECTIONS"); // Sources
 	if (!detections || !detections->allSources) {
-	    psWarning("No detections found for image %d --- rejecting.", index);
-	    options->inputMask->data.PS_TYPE_VECTOR_MASK_DATA[index] = 0x01;
-	    return true;  // XXX not an error: we continue processing other images
+            // An input must have sources. If we got here without any the input file was likely corrupt
+            psError(PSPHOT_ERR_IO, true, "Input %d has no sources.\n\tCheck all instances of: %s", index, inputSrc->origname);
+            return false;
 	}
 	psAssert (detections->allSources, "missing sources?");
Index: branches/meh_branches/ppstack_test/psphot/src/psphotStackMatchPSFsUtils.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotStackMatchPSFsUtils.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotStackMatchPSFsUtils.c	(revision 34041)
@@ -105,9 +105,12 @@
     psAssert(psphotRecipe, "Need PSPHOT recipe");
 
+#if (0) 
+    // DON'T OVERWRITE PSPHOT recipe value
     psString maskBadStr = psMetadataLookupStr(NULL, ppStackRecipe, "MASK.BAD");// Name of bits to mask for bad
     psMaskType maskBad = pmConfigMaskGet(maskBadStr, config); // Bits to mask for bad pixels
 
     // user-defined masks to test for good/bad pixels (build from recipe list if not yet set)
-    psMetadataAddU8(psphotRecipe, PS_LIST_TAIL, "MASK.PSPHOT", PS_META_REPLACE, "user-defined mask", maskBad);
+    psMetadataAddImageMask(psphotRecipe, PS_LIST_TAIL, "MASK.PSPHOT", PS_META_REPLACE, "user-defined mask", maskBad);
+#endif
 
     psImage *binned = psphotModelBackgroundReadoutNoFile(ro, config); // Binned background model
Index: branches/meh_branches/ppstack_test/psphot/src/psphotStackObjects.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotStackObjects.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotStackObjects.c	(revision 34041)
@@ -119,6 +119,4 @@
 	    }
 	    if (!skipSourcePetro) keepObjectPetro = true;
-
-	    keepObjectPetro = true;
 	}
 
Index: branches/meh_branches/ppstack_test/psphot/src/psphotStackParseCamera.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotStackParseCamera.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotStackParseCamera.c	(revision 34041)
@@ -59,4 +59,11 @@
 		}
 	    }
+	    psString expnum = psMetadataLookupStr(&status, input, "RAW:EXPNUM"); // Name of expnum image
+	    if (expnum && strlen(expnum) > 0) {
+		if (!defineFile(config, rawInputFile, "PSPHOT.STACK.EXPNUM.RAW", expnum, PM_FPA_FILE_EXPNUM)) {
+		    psError(PS_ERR_UNKNOWN, false, "Unable to define file from expnum %d (%s)", i, expnum);
+		    return false;
+		}
+	    }
 	    nRaw ++;
 	}
@@ -84,4 +91,11 @@
 		}
 	    }
+	    psString expnum = psMetadataLookupStr(&status, input, "CNV:EXPNUM"); // Name of EXPNUM image
+	    if (expnum && strlen(expnum) > 0) {
+		if (!defineFile(config, cnvInputFile, "PSPHOT.STACK.EXPNUM.CNV", expnum, PM_FPA_FILE_EXPNUM)) {
+		    psError(PS_ERR_UNKNOWN, false, "Unable to define file from expnum %d (%s)", i, expnum);
+		    return false;
+		}
+	    }
 	    psString psf = psMetadataLookupStr(&status, input, "CNV:PSF"); // Name of mask
 	    if (psf && strlen(psf) > 0) {
@@ -115,4 +129,9 @@
 	}
 
+        psS64 stack_id = psMetadataLookupS64(&status, input, "STACK_ID");
+        if (!status) {
+            psError(PS_ERR_UNKNOWN, false, "Unable to find STACK_ID from sources %d", i);
+            return false;
+        }
 	// generate an pmFPAimage for the output convolved image
 	// XXX output of these files should be optional
@@ -125,5 +144,5 @@
 	    }
 	    outputImage->save = true;
-	    outputImage->fileID = i;		// this is used to generate output names
+	    outputImage->fileID = stack_id;		// this is used to generate output names
 
 	    pmFPAfile *outputMask = pmFPAfileDefineOutput(config, outputImage->fpa, "PSPHOT.STACK.OUTPUT.MASK");
@@ -137,5 +156,5 @@
 	    }
 	    outputMask->save = true;
-	    outputMask->fileID = i;		// this is used to generate output names
+	    outputMask->fileID = stack_id;		// this is used to generate output names
 
 	    pmFPAfile *outputVariance = pmFPAfileDefineOutput(config, outputImage->fpa, "PSPHOT.STACK.OUTPUT.VARIANCE");
@@ -149,5 +168,5 @@
 	    }
 	    outputVariance->save = true;
-	    outputVariance->fileID = i;		// this is used to generate output names
+	    outputVariance->fileID = stack_id;		// this is used to generate output names
 
 	    // the output sources are carried on the outputImage->fpa structures
@@ -158,5 +177,5 @@
 	    }
 	    outsources->save = true;
-	    outsources->fileID = i;		// this is used to generate output names
+	    outsources->fileID = stack_id;		// this is used to generate output names
 	}
     }
Index: branches/meh_branches/ppstack_test/psphot/src/psphotStackReadout.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotStackReadout.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotStackReadout.c	(revision 34041)
@@ -89,6 +89,16 @@
 	return psphotReadoutCleanup (config, view, STACK_SRC);
     }
-    if (!psphotSubtractBackground (config, view, STACK_SRC)) {
-	return psphotReadoutCleanup (config, view, STACK_SRC);
+    if (strcmp(STACK_SRC, STACK_DET)) {
+#define MODEL_BACKGROUND_SRC 1
+#ifdef MODEL_BACKGROUND_SRC
+        // work around the fact that the background levels on the convolved
+        // and unconvolved stacks can be different
+        if (!psphotModelBackground (config, view, STACK_SRC)) {
+            return psphotReadoutCleanup (config, view, STACK_SRC);
+        }
+#endif
+        if (!psphotSubtractBackground (config, view, STACK_SRC)) {
+            return psphotReadoutCleanup (config, view, STACK_SRC);
+        }
     }
     if (!strcasecmp (breakPt, "BACKMDL")) {
@@ -190,4 +200,5 @@
     psphotReplaceAllSources (config, view, STACK_SRC, false); // pass 1 (detections->allSources)
 
+
     // if we only do one pass, skip to extended source analysis
     if (!strcasecmp (breakPt, "PASS1")) goto pass1finish;
@@ -211,5 +222,5 @@
 	    //  subtract all sources from DET (this will subtract using the psf model for SRC, which
 	    //  will somewhat oversubtract the sources -- this is OK
-	    psphotRemoveAllSources (config, view, STACK_DET, false); // ignore subtraction state for sources
+	    psphotRemoveAllSources (config, view, STACK_DET, false); // do not ignore subtraction state for sources
 	}
 
@@ -223,5 +234,9 @@
 	// remove noise for subtracted objects (ie, return to normal noise level)
 	// NOTE: this needs to operate only on the OLD sources
-	psphotSubNoise (config, view, STACK_DET); // pass 1 (detections->allSources)
+        // NOTE: if fooprintsUseUnsubtracted, the noise has already been removed by psphotFindDetections
+        bool footprintsUseUnsubtracted = psMetadataLookupBool(NULL, recipe, "FOOTPRINT_USE_UNSUBTRACTED");
+        if (!footprintsUseUnsubtracted) {
+    	    psphotSubNoise (config, view, STACK_DET); // pass 1 (detections->allSources)
+        }
 
 	// if DET and SRC are different images, copy the detections from DET to SRC 
@@ -302,7 +317,7 @@
     psphotExtendedSourceFits (config, view, STACK_SRC); // pass 1 (detections->allSources)
 
-    // create source children for the OUT filerule (for radial aperture photometry) 
-    psArray *objectsRadial = psphotSourceChildrenByObject (config, view, STACK_OUT, objects);
-    if (!objectsRadial) {
+    // create source children for the OUT filerule (for radial aperture photometry and output) 
+    psArray *objectsOut = psphotSourceChildrenByObject (config, view, STACK_OUT, objects);
+    if (!objectsOut) {
 	psFree(objects);
 	psError (PSPHOT_ERR_UNKNOWN, false, "failure in peak analysis");
@@ -310,33 +325,51 @@
     }
 
-    // measure circular, radial apertures (objects sorted by S/N)
-    // this forces photometry on the undetected sources from other images
-    psphotRadialApertures (config, view, STACK_SRC, 0); // XXX entry 0 == unmatched?
-    psMemDump("extmeas");
-
-    int nRadialEntries = psphotStackMatchPSFsEntries(config, view, STACK_OUT);
-
-    for (int entry = 1; entry < nRadialEntries; entry++) {
-	// NOTE: entry 0 is the unmatched image set
-
-	// re-measure the PSF for the smoothed image (using entries in 'allSources')
-	psphotChoosePSF (config, view, STACK_OUT, false);
-
-	// this is necessary to update the models based on the new PSF
-	psphotResetModels (config, view, STACK_OUT);
-
-	// this is necessary to get the right normalization for the new models
-	psphotFitSourcesLinear (config, view, STACK_OUT, false);
-
-	// measure circular, radial apertures (objects sorted by S/N)
-	// entry 0 == unmatched? pass entry + 1?
-	psphotRadialApertures (config, view, STACK_OUT, entry); 
-
-	// replace the flux in the image so it is returned to its original state
-	psphotReplaceAllSources (config, view, STACK_OUT, false);
-
-	// smooth to the next FWHM, or set 'smoothAgain' to false if no more 
-	psphotStackMatchPSFsNext(config, view, STACK_OUT, entry);
-	psMemDump("matched");
+
+    bool radial_apertures = psMetadataLookupBool(NULL, recipe, "RADIAL_APERTURES");
+    if (radial_apertures) {
+        // measure circular, radial apertures (objects sorted by S/N)
+        // this forces photometry on the undetected sources from other images
+
+        // NOTE: we always do the radial apertures analysis on the convolved image since
+        // those are the ones that are psf matched and the source of STACK_OUT's pixels
+        // XXX: Actually if PSPHOT.STACK.MATCH.PSF.SOURCE were set to RAW this wouldn't be true.
+        // but in that case we don't get past the psf matching step because there is no
+        // target psf for the RAW inputs
+
+        // If useRaw copy the sources to the convolved readout
+        if (strcmp(STACK_SRC, STACK_CNV)) {
+            if (!psphotCopySources (config, view, STACK_CNV, STACK_SRC)) {
+                psError (PSPHOT_ERR_UNKNOWN, false, "failure in peak analysis");
+                return psphotReadoutCleanup (config, view, STACK_SRC);
+            }
+        }
+        psphotRadialApertures (config, view, STACK_CNV, 0); // XXX entry 0 == unmatched?
+        psMemDump("extmeas");
+
+        int nRadialEntries = psphotStackMatchPSFsEntries(config, view, STACK_OUT);
+
+        for (int entry = 1; entry < nRadialEntries; entry++) {
+            // NOTE: entry 0 is the unmatched image set
+
+            // re-measure the PSF for the smoothed image (using entries in 'allSources')
+            psphotChoosePSF (config, view, STACK_OUT, false);
+
+            // this is necessary to update the models based on the new PSF
+            psphotResetModels (config, view, STACK_OUT);
+
+            // this is necessary to get the right normalization for the new models
+            psphotFitSourcesLinear (config, view, STACK_OUT, false);
+
+            // measure circular, radial apertures (objects sorted by S/N)
+            // entry 0 == unmatched? pass entry + 1?
+            psphotRadialApertures (config, view, STACK_OUT, entry); 
+
+            // replace the flux in the image so it is returned to its original state
+            psphotReplaceAllSources (config, view, STACK_OUT, false);
+
+            // smooth to the next FWHM, or set 'smoothAgain' to false if no more 
+            psphotStackMatchPSFsNext(config, view, STACK_OUT, entry);
+            psMemDump("matched");
+        }
     }
 
@@ -344,4 +377,5 @@
     if (!psphotApResid (config, view, STACK_SRC)) {
 	psFree (objects);
+	psFree (objectsOut);
         psLogMsg ("psphot", 3, "failed on psphotApResid");
 	return psphotReadoutCleanup (config, view, STACK_SRC);
@@ -375,5 +409,5 @@
 
     psFree (objects);
-    psFree (objectsRadial);
+    psFree (objectsOut);
 
     // create the exported-metadata and free local data
Index: branches/meh_branches/ppstack_test/psphot/src/psphotTest.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotTest.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotTest.c	(revision 34041)
@@ -103,5 +103,5 @@
 # if (0)
 
-    psRegion region = {0,0,0,0};        // a region representing the entire array
+psRegion region = psRegionSet (0,0,0,0);        // a region representing the entire array
     psphotTestArguments (&argc, argv);
 
Index: branches/meh_branches/ppstack_test/psphot/src/psphotTestSourceOutput.c
===================================================================
--- branches/meh_branches/ppstack_test/psphot/src/psphotTestSourceOutput.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/psphot/src/psphotTestSourceOutput.c	(revision 34041)
@@ -136,5 +136,5 @@
 
 	    // generate working image for this source
-	    psRegion region = {ix - dx, ix + dx, iy - dy, iy + dy};
+	    psRegion region = psRegionSet(ix - dx, ix + dx, iy - dy, iy + dy);
 
 	    psImage *vM = psImageSubset (imMo, region);
Index: branches/meh_branches/ppstack_test/psphot/test/tap_psphot_varmodel.pro
===================================================================
--- branches/meh_branches/ppstack_test/psphot/test/tap_psphot_varmodel.pro	(revision 34041)
+++ branches/meh_branches/ppstack_test/psphot/test/tap_psphot_varmodel.pro	(revision 34041)
@@ -0,0 +1,642 @@
+#!/usr/bin/env mana
+# -*-sh-*-
+
+# $KAPA = kapa -noX
+
+# PSF.CONVOLVE : if true, we insert delta functions (and optionally
+#                galaxies) and smooth the image with the psf model
+#                (uses a GAUSS regardless of the model). Note that
+#                PSF.CONVOLVE = T is faster than F, but (a) only
+#                allows Gauss models and (b) only yields quantized
+#                locations
+
+# config for ppImage to generate chip, mask, weight
+$ppImageConfig = -recipe PPIMAGE PPIMAGE_N
+$ppImageConfig = $ppImageConfig -Db BACKGROUND T
+$ppImageConfig = $ppImageConfig -Db CHIP.FITS T
+$ppImageConfig = $ppImageConfig -Db CHIP.MASK.FITS T
+$ppImageConfig = $ppImageConfig -Db CHIP.VARIANCE.FITS T
+$ppImageConfig = $ppImageConfig -Db BASE.FITS F
+$ppImageConfig = $ppImageConfig -Db VARIANCE.BUILD T
+$ppImageConfig = $ppImageConfig -Db PHOTOM F
+
+# basic options for the these images (filter, location, obstype)
+$BaseOptions = -type OBJECT -filter r -skymags 20.86 -ra 270.70 -dec -23.70 -pa 0.0
+$BaseOptions = $BaseOptions -Df PSASTRO:DVO.GETSTAR.MAX.RHO 50000.0
+
+# create an image with fake sources and insert the resulting cmf file into a dvodb
+$RefConfig = -camera SIMTEST 
+$RefConfig = $RefConfig -recipe PPSIM STACKTEST.MAKE 
+$RefConfig = $RefConfig -D PSASTRO:PSASTRO.CATDIR catdir.ref 
+$RefConfig = $RefConfig -Db PSF.CONVOLVE F
+
+# options for the reference image
+$RefOptions = $BaseOptions -exptime 100.0 
+$RefOptions = $RefOptions -seeing 1.0 
+$RefOptions = $RefOptions -D PSF.MODEL PS_MODEL_GAUSS 
+$RefOptions = $RefOptions -Df STARS.DENSITY 10.0 
+$RefOptions = $RefOptions -Df STARS.SIGMA.LIM 0.5
+
+# basic config for ppSim with randomly distributed stars and NO galaxies
+$RealConfig = -camera SIMTEST 
+$RealConfig = $RealConfig -recipe PPSIM STACKTEST.RUN 
+$RealConfig = $RealConfig -D PSASTRO:PSASTRO.CATDIR catdir.ref
+$RealConfig = $RealConfig -Db STARS.FAKE F
+$RealConfig = $RealConfig -Db STARS.REAL T 
+$RealConfig = $RealConfig -Db MATCH.DENSITY F 
+$RealConfig = $RealConfig -Db PSF.CONVOLVE F
+$RealConfig = $RealConfig -Df STARS.DENSITY 10.0
+$RealConfig = $RealConfig -Df STARS.SIGMA.LIM 2.5
+$RealConfig = $RealConfig -Db GALAXY.FAKE F 
+$RealConfig = $RealConfig -Db GALAXY.GRID F 
+
+# options for the repeated images
+$RealOptions = $BaseOptions -exptime 30.0
+  
+$ExtraOptions = -D PSF.MODEL PS_MODEL_GAUSS
+
+# sample alternate options:
+# $ppSimOptions = $FakeOptions -D PSF.MODEL PS_MODEL_PS1_V1
+# $ppSimOptions = $FakeOptions -Df PSF.ARATIO 1.2
+# $ppSimOptions = $FakeOptions -Df PSF.THETA +30.0
+# $ppSimOptions = $FakeOptions -D PSF.MODEL PS_MODEL_GAUSS
+
+list fwhm 
+ 1.0 
+ 1.1 
+ 1.2 
+ 1.5
+end
+
+macro go
+
+  mkdir test
+
+  $ExtraOptions = -D PSF.MODEL PS_MODEL_GAUSS
+  mkexp test/image.00 1.0
+  $ExtraOptions = -D PSF.MODEL PS_MODEL_PGAUSS
+  mkexp test/image.01 1.0
+  $ExtraOptions = -D PSF.MODEL PS_MODEL_PS1_V1
+  mkexp test/image.02 1.0
+end
+
+# create a reference database of fake stars to be used by ppSim below
+macro mkref
+  exec rm -rf catdir.ref
+  exec rm -f refimage.fits
+  
+  exec time ppSim $RefConfig $RefOptions refimage -nx 3000 -ny 3000
+  
+  file synth.photcodes found
+  if (not($found))
+    echo "making photcodes file"
+    mkphotcodes synth.photcodes
+  end
+
+  exec addstar -D CAMERA simtest -D CATDIR catdir.ref -accept-astrom -photcode SYNTH.r -D PHOTCODE_FILE synth.photcodes refimage.cmf
+  exec relphot -averages -D CATDIR catdir.ref -update -region 260 280 -33 -13
+end
+
+# create a realistic distribution of fake stars, GAUSS PSF
+macro mkexp
+  if ($0 != 3)
+    echo "USAGE: mkexp basename fwhm"
+    break
+  end
+
+  local fwhm basename
+  $basename = $1
+  $fwhm = $2
+
+  # create the raw image
+  echo ppSim -seeing $fwhm -nx 3000 -ny 3000 $RealConfig $RealOptions $ExtraOptions $basename
+  exec ppSim -seeing $fwhm -nx 3000 -ny 3000 $RealConfig $RealOptions $ExtraOptions $basename
+  exec /bin/mv -f $basename.cmf $basename.in.cmf
+
+  # create the chip output
+  echo ppImage $ppImageConfig -file $basename.fits $basename
+  exec ppImage $ppImageConfig -file $basename.fits $basename
+end
+
+macro runphot
+  if ($0 != 4)
+    echo "USAGE: runphot basename outname options"
+    break
+  end
+
+  local basename
+  $basename = $1
+  $outname = $2
+  $options = $3
+
+  # create the chip output
+  echo psphot -threads 4 -file $basename.ch.fits -mask $basename.ch.mk.fits -variance $basename.ch.wt.fits $outname $options
+  exec psphot -threads 4 -file $basename.ch.fits -mask $basename.ch.mk.fits -variance $basename.ch.wt.fits $outname $options
+end
+
+# compare two cmf files with extname Chip.psf 
+# things to compare:
+# * completeness (which sources in (1) are not detected in (2)
+# * positions (X_PSF, Y_PSF) 
+# * instrumental psf mags
+# * position errors (no input errors; use a model?)
+# * measured FWHM?
+# * kron mags (fluxes)
+# * etc, etc
+macro ckchip
+  if ($0 != 5)
+    echo "USAGE: ckchip (raw) (out) (output) (zpt_off)"
+    break
+  end
+
+  load.cmf $1 Chip.psf raw
+  load.cmf $2 Chip.psf out
+
+  # images generated with convolution will not have the right output positions
+  set X_raw = int(X_PSF_raw) + 0.5
+  set Y_raw = int(Y_PSF_raw) + 0.5
+  set M_raw = PSF_INST_MAG_raw + $4
+  set K_out = -2.5*log(KRON_FLUX_out)
+  match2d X_PSF_out Y_PSF_out X_PSF_raw Y_PSF_raw 1.5 -index1 index1 -index2 index2
+
+  local i NX NY nx ny N
+
+  device -n compare
+  resize 1000 1000
+
+  # plot trends as a function of mag
+  $NX = 2
+  $NY = 5
+  $nx = 0
+  $ny = 0
+  $N = 0
+  clear -s
+  for i 0 $pairs:n
+    section a$nx\$ny {$nx/$NX} {$ny/$NY} {1/$NX} {1/$NY}
+    show.pair $i
+    $ny ++
+    if ($ny == $NY)
+      $ny = 0
+      $nx ++
+    end
+    if ($nx == $NX)
+      png -name $3.$N.png
+      clear -s
+      $nx = 0
+      $ny = 0
+      $N ++
+    end
+  end
+
+  # plot (input - output) vs mag
+end
+
+macro stchip
+  if ($0 != 5)
+    echo "USAGE: stchip (raw) (out) (output) (zpt_off)"
+    break
+  end
+
+  load.cmf $1 Chip.psf raw
+  load.cmf $2 Chip.psf out
+
+  # images generated with convolution will not have the right output positions
+  set X_raw = int(X_PSF_raw) + 0.5
+  set Y_raw = int(Y_PSF_raw) + 0.5
+  set M_raw = PSF_INST_MAG_raw + $4
+  set K_out = -2.5*log(KRON_FLUX_out)
+  match2d X_PSF_out Y_PSF_out X_PSF_raw Y_PSF_raw 1.5 -index1 index1 -index2 index2
+
+  local i
+
+  for i 0 $spairs:n
+    stats.pair $i $3
+  end
+end
+
+# compare chip to warp
+macro ckwarp
+  if ($0 != 5)
+    echo "USAGE: ckwarp (raw) (out) (output) (zpt_off)"
+    break
+  end
+
+  load.cmf $1 Chip.psf raw
+  load.cmf $2 SkyChip.psf out
+  set X_raw = int(X_PSF_raw) + 0.5
+  set Y_raw = int(Y_PSF_raw) + 0.5
+  set M_raw = PSF_INST_MAG_raw + $4
+  set K_out = -2.5*log(KRON_FLUX_out)
+  match2d X_PSF_out Y_PSF_out X_PSF_raw Y_PSF_raw 1.0 -index1 index1 -index2 index2
+
+  local i nx ny NX NY N
+
+  device -n compare
+  resize 1000 1000
+
+  # plot trends as a function of mag
+  $NX = 2
+  $NY = 5
+  $nx = 0
+  $ny = 0
+  $N = 0
+  clear -s
+
+  for i 0 $pairs:n
+    section a$nx\$ny {$nx/$NX} {$ny/$NY} {1/$NX} {1/$NY}
+    show.pair $i
+    $ny ++
+    if ($ny == $NY)
+      $ny = 0
+      $nx ++
+    end
+    if ($nx == $NX)
+      png -name $3.$N.png
+      clear -s
+      $nx = 0
+      $ny = 0
+      $N ++
+    end
+  end
+end
+
+macro stwarp
+  if ($0 != 5)
+    echo "USAGE: stwarp (raw) (out) (output) (zpt_off)"
+    break
+  end
+
+  load.cmf $1 Chip.psf raw
+  load.cmf $2 SkyChip.psf out
+
+  # images generated with convolution will not have the right output positions
+  set X_raw = int(X_PSF_raw) + 0.5
+  set Y_raw = int(Y_PSF_raw) + 0.5
+  set M_raw = PSF_INST_MAG_raw + $4
+  set K_out = -2.5*log(KRON_FLUX_out)
+  match2d X_PSF_out Y_PSF_out X_PSF_raw Y_PSF_raw 1.5 -index1 index1 -index2 index2
+
+  local i
+
+  for i 0 $spairs:n
+    stats.pair $i $3
+  end
+end
+
+macro stats.pair
+  if ($0 != 3)
+    echo "USAGE: stats.pair (N) (output)"
+    break
+  end
+
+  list word -split $spairs:$1
+  if ($word:n != 8)
+    echo "invalid pair $1"
+    break
+  end
+
+  $Nr = $word:3
+
+  reindex v1 = $word:0 using index1
+  reindex v2 = $word:1 using index2
+  reindex rv = $word:2 using index$Nr
+
+  set delta = v1 - v2
+  subset d1 = delta if ($word:4 < rv) && (rv < $word:5) && (abs(delta) < $word:7)
+  subset d2 = delta if ($word:5 < rv) && (rv < $word:6) && (abs(delta) < $word:7)
+
+  vstats -q d1 -sigma-clip 3.0
+  $M1 = $MEAN
+  $S1 = $SIGMA
+  vstats -q d2 -sigma-clip 3.0
+  $M2 = $MEAN
+  $S2 = $SIGMA
+
+  output $2
+  fprintf "%-18s  %7.4f %7.4f  %7.4f %7.4f" $word:0  $M1 $S1  $M2 $S2
+  output stdout
+end
+
+macro show.pair
+  if ($0 != 2)
+    echo "USAGE: show.pair (N)"
+    break
+  end
+
+  list word -split $pairs:$1
+  if ($word:n != 7)
+    echo "invalid pair $1"
+    break
+  end
+
+  $Nr = $word:3
+
+  reindex v1 = $word:0 using index1
+  if ("$word:6" == "V") 
+    reindex v2 = $word:1 using index2
+  end
+  if ("$word:6" == "S") 
+    set v2 = $word:1 + zero(index1)
+  end
+  reindex rv = $word:2 using index$Nr
+
+  set delta = v1 - v2
+  if (("$word:4" == "def") || ("$word:5" == "def"))
+    lim rv delta; box; plot rv delta
+  else
+    lim rv $word:4 $word:5; box; plot rv delta
+  end
+  label -y '$word:0' -x '$word:2'
+end
+
+# This list is used to compare a pair of vectors (sans error) or a
+# vector and an expected (constant) value.  The last field defines a
+# vector or constant for the comparison.  It is assumed that the
+# vector sets have been loaded and matched with match2d to generate
+# index vectors 'index1' and index2'.  The macro 'show.pair' generates
+# a plot of the range vector vs (v1 - v2).  The indices for v1, v2 are
+# index1 and 2 respectively.  The index for the range vector is defined
+# by the integer following that vector.  the y-limits of the plot are
+# given by the last two numbers
+list pairs
+  X_PSF_out             X_raw                 PSF_INST_MAG_raw 2 -1.01 1.01 V
+  Y_PSF_out             Y_raw                 PSF_INST_MAG_raw 2 -1.01 1.01 V
+  X_PSF_out             X_PSF_raw             PSF_INST_MAG_raw 2 -1.01 1.01 V
+  Y_PSF_out             Y_PSF_raw             PSF_INST_MAG_raw 2 -1.01 1.01 V
+  X_PSF_SIG_out         X_PSF_SIG_raw         PSF_INST_MAG_raw 2 -1.01 1.01 V
+  Y_PSF_SIG_out         Y_PSF_SIG_raw         PSF_INST_MAG_raw 2 -1.01 1.01 V
+  #PSF_INST_MAG_out      PSF_INST_MAG_raw      PSF_INST_MAG_raw 2 -1.01 1.01 V
+  PSF_INST_MAG_out      M_raw                 PSF_INST_MAG_raw 2 -1.01 1.01 V
+  PSF_INST_MAG_SIG_out  PSF_INST_MAG_SIG_raw  PSF_INST_MAG_raw 2 -1.01 1.01 V
+  #PSF_INST_FLUX_out     PSF_INST_FLUX_raw     PSF_INST_MAG_raw 2   def  def V
+  #PSF_INST_FLUX_SIG_out PSF_INST_FLUX_SIG_raw PSF_INST_MAG_raw 2   def  def V
+  AP_MAG_out            M_raw                 PSF_INST_MAG_raw 2 -1.01 1.01 V
+  AP_MAG_RAW_out        M_raw                 PSF_INST_MAG_raw 2 -1.01 1.01 V
+  AP_MAG_RADIUS_out     0.0                   PSF_INST_MAG_raw 2 -0.01 20.1 S
+  SKY_out               0.0                   PSF_INST_MAG_raw 2   def  def S
+  SKY_SIGMA_out         0.0                   PSF_INST_MAG_raw 2   def  def S
+  PSF_CHISQ_out         1.0                   PSF_INST_MAG_raw 2   def  def S
+  CR_NSIGMA_out         0.0   		      PSF_INST_MAG_raw 2   def  def S
+  EXT_NSIGMA_out        0.0   		      PSF_INST_MAG_raw 2 -5.01 5.01 S
+  PSF_MAJOR_out         0.0   		      PSF_INST_MAG_raw 2 -0.01 5.01 S
+  PSF_MINOR_out         0.0   		      PSF_INST_MAG_raw 2 -0.01 5.01 S
+  PSF_THETA_out         0.0   		      PSF_INST_MAG_raw 2 -1.61 1.61 S
+  PSF_QF_out            0.0   		      PSF_INST_MAG_raw 2 -0.10 1.10 S
+  PSF_QF_PERFECT_out    0.0   		      PSF_INST_MAG_raw 2 -0.10 1.10 S
+  PSF_NDOF_out          0.0   		      PSF_INST_MAG_raw 2  def  def  S
+  PSF_NPIX_out          0.0   		      PSF_INST_MAG_raw 2  def  def  S
+  MOMENTS_XX_out        0.0   		      PSF_INST_MAG_raw 2 -0.01 3.01 S
+  MOMENTS_XY_out        0.0   		      PSF_INST_MAG_raw 2 -3.01 3.01 S
+  MOMENTS_YY_out        0.0   		      PSF_INST_MAG_raw 2 -0.01 3.01 S
+  MOMENTS_M3C_out       0.0   		      PSF_INST_MAG_raw 2 -3.01 3.01 S
+  MOMENTS_M3S_out       0.0   		      PSF_INST_MAG_raw 2 -3.01 3.01 S
+  MOMENTS_M4C_out       0.0   		      PSF_INST_MAG_raw 2 -2.01 2.01 S
+  MOMENTS_M4S_out       0.0   		      PSF_INST_MAG_raw 2 -2.01 2.01 S
+  MOMENTS_R1_out        0.0   		      PSF_INST_MAG_raw 2 -5.01 5.01 S
+  MOMENTS_RH_out        0.0   		      PSF_INST_MAG_raw 2 -5.01 5.01 S
+  K_out                 M_raw  		      PSF_INST_MAG_raw 2  def  def  V
+  KRON_FLUX_ERR_out     0.0   		      PSF_INST_MAG_raw 2  def  def  S
+  KRON_FLUX_INNER_out   0.0   		      PSF_INST_MAG_raw 2  def  def  S
+  KRON_FLUX_OUTER_out   0.0   		      PSF_INST_MAG_raw 2  def  def  S
+# CAL_PSF_MAG          CAL_PSF_MAG          none Mraw 2 -1.01 1.01 V
+# CAL_PSF_MAG_SIG      CAL_PSF_MAG_SIG      none Mraw 2 -1.01 1.01 V
+# RA_PSF               RA_PSF               none Mraw 2 -1.01 1.01 V
+# DEC_PSF              DEC_PSF              none Mraw 2 -1.01 1.01 V
+# PEAK_FLUX_AS_MAG     PEAK_FLUX_AS_MAG     none Mraw 2 -1.01 1.01 V
+# FLAGS                FLAGS                0.0  Mraw 2 -1.01 1.01 S
+# FLAGS2               FLAGS2               0.0  Mraw 2 -1.01 1.01 S
+end
+
+macro load.cmf
+  if ($0 != 4)
+   echo "load.cmf (filename) (ext) (label)"
+   break
+  end
+
+  data $1
+
+  # create the list of fields to load
+  delete -q myFields
+  for i 0 $fields:n
+    if ($?myFields) 
+      $myFields = $myFields $fields:$i
+    else
+      $myFields = $fields:$i
+    end
+  end
+
+  read -fits $2 $myFields
+
+  # rename the loaded vectors appending the supplied lable
+  for i 0 $fields:n
+    set $fields:$i\_$3 = $fields:$i
+    delete $fields:$i
+  end
+end
+
+# this list defines the fields to be loaded from file
+list fields
+  X_PSF              
+  Y_PSF              
+  X_PSF_SIG          
+  Y_PSF_SIG          
+  PSF_INST_MAG       
+  PSF_INST_MAG_SIG   
+  PSF_INST_FLUX      
+  PSF_INST_FLUX_SIG  
+  AP_MAG             
+  AP_MAG_RAW         
+  AP_MAG_RADIUS      
+  SKY                
+  SKY_SIGMA          
+  PSF_CHISQ          
+  CR_NSIGMA          
+  EXT_NSIGMA         
+  PSF_MAJOR          
+  PSF_MINOR          
+  PSF_THETA          
+  PSF_QF             
+  PSF_QF_PERFECT     
+  PSF_NDOF           
+  PSF_NPIX           
+  MOMENTS_XX         
+  MOMENTS_XY         
+  MOMENTS_YY         
+  MOMENTS_M3C        
+  MOMENTS_M3S        
+  MOMENTS_M4C        
+  MOMENTS_M4S        
+  MOMENTS_R1         
+  MOMENTS_RH         
+  KRON_FLUX          
+  KRON_FLUX_ERR      
+  KRON_FLUX_INNER    
+  KRON_FLUX_OUTER    
+#   CAL_PSF_MAG      
+#   CAL_PSF_MAG_SIG  
+#   RA_PSF           
+#   DEC_PSF          
+#   PEAK_FLUX_AS_MAG 
+#  FLAGS            
+#  FLAGS2           
+end
+
+# use these cmf entries to measure average stats of the given pairs
+list spairs
+  X_PSF_out             X_raw                 PSF_INST_MAG_raw 2 -15 -10 -8.5  0.1
+  Y_PSF_out             Y_raw                 PSF_INST_MAG_raw 2 -15 -10 -8.5  0.1
+  PSF_INST_MAG_out      M_raw                 PSF_INST_MAG_raw 2 -15 -10 -8.5  0.1
+  AP_MAG_out            M_raw                 PSF_INST_MAG_raw 2 -15 -10 -8.5  0.1
+end
+
+#  # XXX this is a hack: the cmf file created by ppSim is not
+#  # compatible with the image for warp (because one is a chip-mosaic
+#  # and the other is not)
+#  exec rm -f fix.hdr
+#  output fix.hdr
+#  echo "PSMOSAIC= 'CHIP    '           / Mosaicked level"
+#  output stdout 
+# fix the header to be compatible with the chip file (to avoid running psphot)
+# exec fits_insert $basename.cmf fix.hdr
+
+macro completeness
+ if ($0 != 4)
+   echo "USAGE: completeness (raw) (out) (output)"
+   break
+ end
+
+ load.cmf $1 Chip.psf raw
+ load.cmf $2 Chip.psf out
+ set X_raw = int(X_PSF_raw) + 0.5
+ set Y_raw = int(Y_PSF_raw) + 0.5
+ match2d X_PSF_raw Y_PSF_raw X_PSF_out Y_PSF_out 1.5 -index1 index1 -index2 index2 -closest
+
+ histogram PSF_INST_MAG_raw nMag -16.0 -3.0 0.25 -range dMag
+ set fMag = zero(dMag) 
+ for i 0 {dMag[]-1}
+  set inrange = (PSF_INST_MAG_raw > dMag[$i]) && (PSF_INST_MAG_raw <= dMag[$i+1])
+  subset all = index1 if (inrange)
+  subset got = index1 if (inrange) && (index1 >= 0)
+  if (all[] == 0)
+    fMag[$i] = 0
+  else 
+   fMag[$i] = got[] / all[]
+  end
+ end
+
+ device -n complete
+ resize 1000 600
+
+ clear -s
+
+ section default 0 0 1 1
+ lim dMag fMag; clear; box -ypad 5 +ypad 5 -ticks 1110; plot -x 1 dMag fMag
+ label -x mag_inst -y det_frac 
+
+ set found = (index1 >= 0)
+ plot PSF_INST_MAG_raw found -c red
+
+ set ldmag = log(PSF_INST_MAG_SIG_raw)
+ section overlay 0 0 1 1; lim dMag -5 1.2; box -ypad 5 +ypad 5 -ticks 1011 -labels 1001; plot PSF_INST_MAG_raw ldmag
+ label +y log(S/N)
+
+ png -name $3
+end
+
+macro show.dpair
+  if ($0 != 2)
+    echo "USAGE: show.dpair (N)"
+    break
+  end
+
+  list word -split $dpairs:$1
+  if ($word:n != 7)
+    echo "invalid dpair $1"
+    break
+  end
+
+  $Nr = $word:4
+
+  reindex v1 = $word:0 using index1
+  reindex dv = $word:1 using index1
+  reindex v2 = $word:2 using index2
+  reindex rv = $word:3 using index$Nr
+
+  set delta = (v1 - v2) / dv
+  if (("$word:5" == "def") || ("$word:6" == "def"))
+    lim rv delta; box; plot rv delta
+  else
+    lim rv $word:5 $word:6; box; plot rv delta
+  end
+  label -y '$word:0' -x '$word:3'
+end
+
+# this list is used to compare a pair of vectors with an error it is
+# assumed that the vector sets have been loaded and matched with
+# match2d to generate index vectors 'index1' and index2'.  the macro
+# show.dpair generates a plot of the range vector vs (v1 - v2) / dv1.
+# The indices for v1, dv1, and v2 are index1,1, and 2 respectively.  The
+# index for the range vector is defined by the integer following that
+# vector.  The y-limits of the plot are given by the last two numbers
+# (use 'def') for the full default range of the delta vector
+list dpairs
+  # v1              dv                v2   range 
+  X_PSF             X_PSF_SIG         Xraw Mraw  2 -10.0 10.0
+  Y_PSF             Y_PSF_SIG         Yraw Mraw  2 -10.0 10.0
+  PSF_INST_MAG      PSF_INST_MAG_SIG  Mraw Mraw  2 -10.0 10.0
+  PSF_INST_FLUX     PSF_INST_FLUX_SIG Fraw Mraw  2 -10.0 10.0
+  AP_MAG            PSF_INST_MAG_SIG  Mraw Mraw  2 -10.0 10.0
+  AP_MAG_RAW        PSF_INST_MAG_SIG  Mraw Mraw  2 -10.0 10.0
+end
+
+# if we run this test as a stand-alone program somewhere, we may need to create a local copy of the photcode file:
+macro mkphotcodes
+  if ($0 != 2)
+    echo "USAGE: mkphotcodes (filename)"
+    break
+  end
+
+  exec /bin/rm -f $1
+  output $1
+  echo "#                                           airmass      color                         astrometry  mag    photom  astrom mask    photom mask"
+  echo "# code  name                type    zero  slope offset c1    c2   slope   zero  equiv  sys scale   scale  sys     poor   bad     poor   bad"
+  echo "  1     g_SYNTH              sec   0.000  0.000 0.000     1     3 0.0000     0    21   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000"
+  echo "  2     r_SYNTH              sec   0.000  0.000 0.000     2     3 0.0000     0    22   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000"
+  echo "  3     i_SYNTH              sec   0.000  0.000 0.000     2     3 0.0000     0    23   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000"
+  echo "  4     z_SYNTH              sec   0.000  0.000 0.000     3     4 0.0000     0    24   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000"
+  echo "  5     y_SYNTH              sec   0.000  0.000 0.000     4     5 0.0000     0    25   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000"
+  echo "  3001  SYNTH.g              ref   0.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000"
+  echo "  3002  SYNTH.r              ref   0.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000"
+  echo "  3003  SYNTH.i              ref   0.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000"
+  echo "  3004  SYNTH.z              ref   0.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000"
+  echo "  3005  SYNTH.y              ref   0.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000"
+  output stdout
+end
+
+macro ckradialflux
+ data $1
+ read -fits Chip.xrad X_APER Y_APER PSF_FWHM APER_FLUX APER_FLUX_ERR APER_FLUX_STDEV APER_FILL
+ read -fits Chip.psf X_PSF Y_PSF PSF_INST_MAG
+ set mag = PSF_INST_MAG
+ # XXX include nradii in header
+ for i 0 11
+   set mA$i = -2.5*log(APER_FLUX:$i)
+   set dM$i = mA$i - PSF_INST_MAG
+   vstat dM$i
+   $DM$i = $MEDIAN
+ end
+ for i 1 11
+   $j = $i - 1
+   echo {$DM$i - $DM$j}
+ end
+
+ lim mag -2 2; clear; box
+ for i 0 11
+   plot mag dM$i -c black
+ end
+end
+
+if ($SCRIPT)
+  fulltest 4
+  exit 0
+end
Index: branches/meh_branches/ppstack_test/pstamp/scripts/pstamp_cleanup.pl
===================================================================
--- branches/meh_branches/ppstack_test/pstamp/scripts/pstamp_cleanup.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/pstamp/scripts/pstamp_cleanup.pl	(revision 34041)
@@ -42,8 +42,7 @@
     'name=s'            =>  \$name,
     'outdir=s'          =>  \$outdir,
-    'reqType=s'           =>  \$reqType,
+    'reqType=s'         =>  \$reqType,
     'product=s'         =>  \$product,
     'uri=s'             =>  \$uri,
-    'outdir=s'          =>  \$outdir,
     'redirect-output'   =>  \$redirect_output,
     'verbose'           =>  \$verbose,
@@ -82,5 +81,5 @@
 
 my_die("Cleanup not yet supported for reqType: $reqType", $req_id, $PS_EXIT_UNKNOWN_ERROR)
-    if ($reqType ne "pstamp") and ($reqType ne "NULL");
+    if ($reqType ne "pstamp") and ($reqType ne "NULL") and ($reqType ne "dquery");
 
 my $mdcParser = PS::IPP::Metadata::Config->new; # Parser for metadata config files
Index: branches/meh_branches/ppstack_test/pstamp/scripts/pstamp_finish.pl
===================================================================
--- branches/meh_branches/ppstack_test/pstamp/scripts/pstamp_finish.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/pstamp/scripts/pstamp_finish.pl	(revision 34041)
@@ -201,9 +201,17 @@
                 # process the reglist file to get the list of files produced by this job
                 foreach my $line (<JRL>) {
+
+                    # XXX: we are getting many cases where the size and/or md5sum calculated by
+                    # the job has changed by the time the request_finish has run
+                    # Don't
                     # add line to the requests's reglist
-                    print $rlf $line;
+                    # ....
+#                    print $rlf $line;
+
 
                     chomp $line;
-                    my ($img_name, undef) = split '\|', $line;
+                    my ($img_name, $reported_size, $reported_sum, $filetype) = split '\|', $line;
+                    # ... instead let dsreg compute the paramters by leaving them blank
+                    print $rlf "$img_name|||$filetype|\n";
 
                     # add line to the table definition file
Index: branches/meh_branches/ppstack_test/pstamp/scripts/pstamp_job_run.pl
===================================================================
--- branches/meh_branches/ppstack_test/pstamp/scripts/pstamp_job_run.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/pstamp/scripts/pstamp_job_run.pl	(revision 34041)
@@ -226,8 +226,9 @@
     my $command = "$ppstamp $outputBase $argString $fileArgs";
     $command .= " -write_jpeg" if ($options & $PSTAMP_SELECT_JPEG);
+    $command .= " -nocompress" if ($options & $PSTAMP_SELECT_UNCOMPRESSED);
+    $command .= " -stage $stage";
+    $command .= " -censor_masked" if $nan_masked;
     $command .= " -dbname $dbname" if $dbname;
     $command .= " -dbserver $dbserver" if $dbserver;
-    $command .= " -stage $stage";
-    $command .= " -no_censor_masked" unless $nan_masked;
     my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
         run(command => $command, verbose => $verbose);
Index: branches/meh_branches/ppstack_test/pstamp/scripts/pstampparse.pl
===================================================================
--- branches/meh_branches/ppstack_test/pstamp/scripts/pstampparse.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/pstamp/scripts/pstampparse.pl	(revision 34041)
@@ -333,5 +333,11 @@
     my $skycenter = $row->{skycenter} = ! ($row->{COORD_MASK} & $PSTAMP_CENTER_IN_PIXELS);
 
-    if (!$skycenter and !$component) {
+    my $wholefile = 0;
+    if (!$skycenter && $row->{CENTER_X} == 0 && $row->{CENTER_Y} == 0) {
+        # Secret code for returning the whole file
+        $wholefile = 1;
+    }
+
+    if (!$skycenter and !$wholefile and !$component and $stage ne 'stack' and !($option_mask & $PSTAMP_USE_IMFILE_ID)){
         print STDERR "COMPONENT must be specified for pixel coordinate ROI center\n";
         insertFakeJobForRow($row, 1, $PSTAMP_INVALID_REQUEST);
@@ -418,4 +424,11 @@
     my $camera     = $proj_hash->{camera};
     $need_magic    = $proj_hash->{need_magic};
+    # Since user can get unmagicked data "by coordinate" requests can go back in time
+    # to dredge unusable data from the "dark days"...
+    if ($req_type eq 'bycoord' and $mjd_min eq 0) {
+	    # ... so unless the user sets mjd_min clamp it to 2009-04-01
+            # XXX: This value should live in the pstampProject table not be hardcoded here
+            $mjd_min = 54922;
+    }
 
     $need_magic = 0 if $stage eq 'stack';
@@ -431,12 +444,4 @@
                 # and this user's data store destination is allowed uncensored stamps, so accept the request
                 $need_magic = 0;
-
-                # Since user can get unmagicked data "by coordinate" requests can go back in time
-                # to dredge unusable data from the "dark days"...
-                if ($req_type eq 'bycoord' and $mjd_min eq 0) {
-                    # ... so unless the user sets mjd_min clamp it to 2009-04-01
-                    # XXX: This value should live in the pstampProject table not be hardcoded here
-                    $mjd_min = 54922;
-                }
             } else {
                 print STDERR "Error row $rownum: User not authorized to to request uncensored stamps.\n";
@@ -526,13 +531,23 @@
     my $h = $row->{HEIGHT};
     my $coord_mask = $row->{COORD_MASK};
+    my $wholeFile = 0; 
     if ($coord_mask & $PSTAMP_CENTER_IN_PIXELS) {
-        $roi_string = "-pixcenter $x $y";
+        # Center of 0, 0 in pixel coordinates is interpreted to mean
+        # return the entire file
+        if ($x == 0 && $y == 0) {
+            $roi_string = "-wholefile";
+            $wholeFile = 1;
+        } else {
+            $roi_string = "-pixcenter $x $y";
+        }
     } else {
         $roi_string = "-skycenter $x $y";
     }
-    if ($coord_mask & $PSTAMP_RANGE_IN_PIXELS) {
-        $roi_string .= " -pixrange $w $h";
-    } else {
-        $roi_string .= " -arcrange $w $h";
+    if (!$wholeFile) {
+        if ($coord_mask & $PSTAMP_RANGE_IN_PIXELS) {
+            $roi_string .= " -pixrange $w $h";
+        } else {
+            $roi_string .= " -arcrange $w $h";
+        }
     }
 
@@ -571,11 +586,4 @@
         $args .= " -class_id $component" if $component;
     }
-
-if (0) {
-    # add astrometry file for raw and chip images if one is available
-    if (($stage eq "chip") || ($stage eq "raw")) {
-        $args .= " -astrom $image->{astrom}" if $image->{astrom};
-    }
-}
 
     $image->{job_args} = $args;
Index: branches/meh_branches/ppstack_test/pstamp/src/ppstampArguments.c
===================================================================
--- branches/meh_branches/ppstack_test/pstamp/src/ppstampArguments.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/pstamp/src/ppstampArguments.c	(revision 34041)
@@ -62,6 +62,13 @@
     *pOptions = options;
 
-    if (!pstampGetROI(&options->roip, &argc, argv, &gotCenter, &gotRange)) {
-        usage();
+    if ((argnum = psArgumentGet(argc, argv, "-wholefile"))) {
+        psArgumentRemove(argnum, &argc, argv);
+        gotCenter = true;
+        gotRange = true;
+        options->wholeFile = true;
+    } else {
+        if (!pstampGetROI(&options->roip, &argc, argv, &gotCenter, &gotRange)) {
+            usage();
+        }
     }
 
@@ -105,6 +112,16 @@
     
     if ((argnum = psArgumentGet(argc, argv, "-no_censor_masked"))) {
+        // this is the default. This is for compatiability
         psArgumentRemove(argnum, &argc, argv);
         options->censorMasked = false;
+    }
+    if ((argnum = psArgumentGet(argc, argv, "-censor_masked"))) {
+        // default changed to not censor allow it to be changed back to true
+        psArgumentRemove(argnum, &argc, argv);
+        options->censorMasked = true;
+    }
+    if ((argnum = psArgumentGet(argc, argv, "-nocompress"))) {
+        psArgumentRemove(argnum, &argc, argv);
+        options->nocompress = true;
     }
 
Index: branches/meh_branches/ppstack_test/pstamp/src/ppstampMakeStamp.c
===================================================================
--- branches/meh_branches/ppstack_test/pstamp/src/ppstampMakeStamp.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/pstamp/src/ppstampMakeStamp.c	(revision 34041)
@@ -233,10 +233,5 @@
     int status = false;
 
-    pmFPAfile *output;
-    if (!options->stage || (strcmp(options->stage, "diff") != 0)) {
-        output = psMetadataLookupPtr(NULL, config->files, "PPSTAMP.OUTPUT");
-    } else {
-        output = psMetadataLookupPtr(NULL, config->files, "PPSTAMP.OUTPUT.DIFF");
-    }
+    pmFPAfile *output = psMetadataLookupPtr(NULL, config->files, options->outputFileRule);
     if (!output) {
         psError(PS_ERR_UNKNOWN, false, "Can't find output data\n");
@@ -529,7 +524,14 @@
         // If no chip name was specified, select this one (the first one that had data)
         if ((options->chipName == NULL) || !strcasecmp(chipName, options->chipName)) {
-            psLogMsg("ppstampMakeStamp", 2, "Center on chip: %s\n", chipName);
-            center->chip->x = options->roip.centerX;
-            center->chip->y = options->roip.centerY;
+            if (options->chipName) {
+                psLogMsg("ppstampMakeStamp", 2, "Center on chip: %s\n", chipName);
+            }
+            if (options->wholeFile) {
+                center->chip->x = (chipBounds->x1 + chipBounds->x0 + 1) / 2;
+                center->chip->y = (chipBounds->y1 + chipBounds->y0 + 1) / 2;
+            } else {
+                center->chip->x = options->roip.centerX;
+                center->chip->y = options->roip.centerY;
+            }
             center->chip->xErr = 0;
             center->chip->yErr = 0;
@@ -543,25 +545,28 @@
             findBoundingBox(options, input->fpa, chip, center);
         } else {
-            int width  = options->roip.dX;
-            int height = options->roip.dY;
-            if (width > 5000) {
-                fprintf(stderr, "requested width %d too large reducing to 5000\n", width);
-                width = 5000;
+            if (options->wholeFile) { 
+                options->roi = *chipBounds;
+            } else {
+                int width  = options->roip.dX;
+                int height = options->roip.dY;
+                if (width > 7000) {
+                    fprintf(stderr, "requested width %d too large reducing to 7000\n", width);
+                    width = 7000;
+                }
+                if (height > 7000) {
+                    fprintf(stderr, "requested height %d too large reducing to 7000\n", height);
+                    height = 7000;
+                }
+
+                // calculate the ROI in chip coordinates
+                options->roi.x0 = center->chip->x - width / 2;
+                options->roi.x1 = options->roi.x0 + width;
+                options->roi.y0 = center->chip->y - height / 2;
+                options->roi.y1 = options->roi.y0 + height;
             }
-            if (height > 5000) {
-                fprintf(stderr, "requested height %d too large reducing to 5000\n", height);
-                height = 5000;
-            }
-
-            // calculate the ROI in chip coordinates
-            options->roi.x0 = center->chip->x - width / 2;
-            options->roi.x1 = options->roi.x0 + width;
-            options->roi.y0 = center->chip->y - height / 2;
-            options->roi.y1 = options->roi.y0 + height;
-        }
-
-
-        if (regionContainsRegion(chipBounds, &options->roi)) {
-            // returnval = findCell(view, options, input, center, ppCell);
+        }
+
+
+        if (options->wholeFile || regionContainsRegion(chipBounds, &options->roi)) {
             psLogMsg("ppstampMakeStamp", 2, "ROI contained on: %s\n", chipName);
             returnval = PPSTAMP_ON;
Index: branches/meh_branches/ppstack_test/pstamp/src/ppstampOptions.c
===================================================================
--- branches/meh_branches/ppstack_test/pstamp/src/ppstampOptions.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/pstamp/src/ppstampOptions.c	(revision 34041)
@@ -30,5 +30,9 @@
     options->cellName  = NULL;
     options->stage  = NULL;
-    options->censorMasked = true;
+    options->censorMasked = false;
+    options->writeJPEG = false;
+    options->nocompress = false;
+    options->wholeFile = false;
+    options->outputFileRule = NULL;
 
     return options;
Index: branches/meh_branches/ppstack_test/pstamp/src/ppstampOptions.h
===================================================================
--- branches/meh_branches/ppstack_test/pstamp/src/ppstampOptions.h	(revision 33597)
+++ branches/meh_branches/ppstack_test/pstamp/src/ppstampOptions.h	(revision 34041)
@@ -8,13 +8,16 @@
     // input arguments
     pstampROI   roip;
+    bool        wholeFile;
     psString    chipName;
     psString    cellName;
     psString    stage;
+    bool        censorMasked;
+    bool        writeJPEG;
+    bool        nocompress;
     //
     // Calculated Values
     //
+    psString    outputFileRule;
     psRegion    roi;            // roi in chip coordinates
-    bool        censorMasked;
-    bool        writeJPEG;
 } ppstampOptions;
 
Index: branches/meh_branches/ppstack_test/pstamp/src/ppstampParseCamera.c
===================================================================
--- branches/meh_branches/ppstack_test/pstamp/src/ppstampParseCamera.c	(revision 33597)
+++ branches/meh_branches/ppstack_test/pstamp/src/ppstampParseCamera.c	(revision 34041)
@@ -8,14 +8,21 @@
 
 // Set up the ppstamp output Image file
-bool setupOutput(pmConfig *config, pmFPAfile *input, psString stage, bool doMask, bool doWeight, pmFPAfile **pOutput)
+bool setupOutput(pmConfig *config, pmFPAfile *input, ppstampOptions *options, bool doMask, bool doWeight, pmFPAfile **pOutput)
 {
-    pmFPAfile *output;
-    
-    if (!stage || (strcmp(stage, "diff") != 0)) {
-        output = pmFPAfileDefineSkycell(config, NULL, "PPSTAMP.OUTPUT");
+    if (!options->stage || (strcmp(options->stage, "diff") != 0)) {
+        if (options->nocompress) {
+            options->outputFileRule = "PPSTAMP.OUTPUT.NOCOMP";
+        } else {
+            options->outputFileRule = "PPSTAMP.OUTPUT";
+        }
     } else {
         // need special filerule for diff stage image to allow for negative values
-        output = pmFPAfileDefineSkycell(config, NULL, "PPSTAMP.OUTPUT.DIFF");
+        if (options->nocompress) {
+            options->outputFileRule = "PPSTAMP.OUTPUT.DIFF.NOCOMP";
+        } else {
+            options->outputFileRule = "PPSTAMP.OUTPUT.DIFF";
+        }
     }
+    pmFPAfile *output = pmFPAfileDefineSkycell(config, NULL, options->outputFileRule);
     if (!output) {
         psError(PS_ERR_UNKNOWN, false, "Unable to setup output.");
@@ -27,12 +34,23 @@
 
     if (doMask) {
-        pmFPAfile *outMask = pmFPAfileDefineSkycell(config, output->fpa, "PPSTAMP.OUTPUT.MASK");
+        char *rule;
+        if (options->nocompress) {
+            rule =  "PPSTAMP.OUTPUT.MASK.NOCOMP";
+        } else {
+            rule =  "PPSTAMP.OUTPUT.MASK";
+        }
+        pmFPAfile *outMask = pmFPAfileDefineSkycell(config, output->fpa, rule);
         outMask->save = true;
     }
     if (doWeight) {
-        pmFPAfile *outWeight = pmFPAfileDefineSkycell(config, output->fpa, "PPSTAMP.OUTPUT.VARIANCE");
+        char *rule;
+        if (options->nocompress) {
+            rule =  "PPSTAMP.OUTPUT.VARIANCE.NOCOMP";
+        } else {
+            rule =  "PPSTAMP.OUTPUT.VARIANCE";
+        }
+        pmFPAfile *outWeight = pmFPAfileDefineSkycell(config, output->fpa, rule);
         outWeight->save = true;
     }
-
 
     return true;
@@ -97,5 +115,5 @@
     // Set up the output target
     pmFPAfile *output;
-    if (!setupOutput(config, input, options->stage, doMask, doWeight, &output)) {
+    if (!setupOutput(config, input, options, doMask, doWeight, &output)) {
         psError(PS_ERR_UNKNOWN, false, "Unable to setup output.");
         return false;
@@ -113,14 +131,6 @@
 
     if (options->writeJPEG) {
-        char *filerule;
-        // If stage is chip flip the X axis otherwise don't flip.
-        // XXX: is this the right thing to do?
-        // Shouldn't the JPEG match the stamp even for chip stage?
-        if (!options->stage || strcmp(options->stage, "chip")) {
-            filerule = "PPSTAMP.OUTPUT.JPEG";
-        } else {
-            filerule = "PPSTAMP.OUTPUT.JPEG.FLIP";
-        }
-        pmFPAfile *jpg = pmFPAfileDefineOutput(config, output->fpa, filerule);
+        char *filerule = "PPSTAMP.OUTPUT.JPEG";
+        pmFPAfile *jpg = pmFPAfileDefineSkycell(config, output->fpa, filerule);
         if (!jpg) {
             psError(PS_ERR_IO, false, "Unable to generate new file from %s", filerule);
Index: branches/meh_branches/ppstack_test/tools/czarcal
===================================================================
--- branches/meh_branches/ppstack_test/tools/czarcal	(revision 33597)
+++ branches/meh_branches/ppstack_test/tools/czarcal	(revision 34041)
@@ -24,5 +24,4 @@
 mark
 serge
-roy
 chris
 gene
Index: branches/meh_branches/ppstack_test/tools/dlapstacks
===================================================================
--- branches/meh_branches/ppstack_test/tools/dlapstacks	(revision 33597)
+++ branches/meh_branches/ppstack_test/tools/dlapstacks	(revision 34041)
@@ -4,10 +4,15 @@
 use warnings;
 
-# given an RA and DEC lookup find the LAP stack images
-
-# XXX: consider making these options these could be made options I guess
-
+# given an RA and DEC or a skycell_id find the LAP stack images containing them
+# and display using ds9
+
+# XXX: consider accepting a string of parameters to be passed to ds9
+# add --fit set ds9 to fit to frame
+# XXX if label is supplied by the user and it is like MD% 
+# guess at the tess_id
+# allow mask and variance images to be displayed as well
+
+my $label   = 'LAP.ThreePi.20110809';
 my $tess_id = 'RINGS.V3';
-my $label = 'LAP.ThreePi.20110809';
 
 use Getopt::Long qw( GetOptions :config auto_help auto_version gnu_getopt );
@@ -15,18 +20,32 @@
 use DBI;
 use PS::IPP::Config 1.01 qw( :standard );
-
-my $ipprc =  PS::IPP::Config->new();
+use File::Temp qw( tempfile tempdir );
+use File::Basename;
+use IPC::Cmd 0.36 qw( can_run run );
+
+my $ipprc = PS::IPP::Config->new();
 my $dbh = getDBHandle();
 
-
 my ($requested_filter, $no_display, $skycell_id, $verbose, $ra, $dec, $convolved);
-
+my ($singleframe, $fitToFrame, $deasin, $save_temps, $data_group);
+
+# XXX: get this from the ipprc
+my $temproot = '/local/ipp/tmp';
+my $outdir;
 
 GetOptions(
-    'filter|f=s'    => \$requested_filter,
-    'convolved'     => \$convolved,
-    'no-display|n'  => \$no_display,
-    'skycell_id=s'  => \$skycell_id,
-    'verbose|v'     => \$verbose,
+    'filter|f=s'    => \$requested_filter,  # restrict to a single filter 
+    'skycell_id|s=s'=> \$skycell_id,        # specificly sset skycell_id of interest
+    'convolved|c'   => \$convolved,         # display convolved stack images instead of unconvolved
+    'fit'           => \$fitToFrame,        # scale the images to fit the ds9 frame
+    'single'        => \$singleframe,       # set ds9 to singleframe mode
+    'deasin|d'      => \$deasin,            # run ppstamp to remove the ASIN scaling from the stacks
+    'label|l=s'     => \$label,             # use a different label (careful!)
+    'data_group=s'  => \$data_group,        # select stacks by data_group
+    'tess_id|t=s'   => \$tess_id,           # set tess_id
+    'outdir|o=s'    => \$outdir,            # if deasin save de-asined images to given directory
+    'no-display|n'  => \$no_display,        # don't run ds9 just print the nebulous pathnames
+    'save-temps'    => \$save_temps,        # save temporary files
+    'verbose|v'     => \$verbose,           # print lots of information
 ) or pod2usage( 2 );
 
@@ -36,4 +55,29 @@
 $ra = shift;
 $dec = shift;
+
+pod2usage( -msg => 'if ra is suplied <dec> must be supplied as well', -exitval => 2)
+    if (defined $ra and ! defined $dec);
+
+if ($skycell_id and !($skycell_id =~ /^skycell/)) {
+    if (length($skycell_id) < 3) {
+        # two character skycell_id NM should probably be 0NM
+        $skycell_id = "0$skycell_id";
+    }
+    $skycell_id = "skycell.$skycell_id";
+}
+
+my $missing_tools;
+my $ppstamp;
+my $ds9;
+if ($deasin) {
+    $ppstamp = can_run('ppstamp') or (warn "Can't find ppstamp") and $missing_tools = 1;
+}
+if (!$no_display) {
+    $ds9 = can_run('ds9') or (warn "Can't find ds9") and $missing_tools = 1;
+}
+if ($missing_tools) {
+    # warn("Can't find required tools.");
+    exit($PS_EXIT_CONFIG_ERROR);
+}
 
 my $extension;
@@ -44,16 +88,43 @@
 }
 
-# run whichimage to find a list of skycells containing the given coordinates
-my $whichimage_output = `whichimage --listchipcoords --tess_id $tess_id $ra $dec`;
-
-print $whichimage_output if $verbose;
-
-my @results = split "\n", $whichimage_output;
-
-die "whichimage returned no output\n" if scalar @results == 0;
-
-my $query = "SELECT skycell_id, filter, stack_id, quality, path_base
+# don't allow MD label unless it's a refstack.
+# Nightly stacks have too many images
+if (($data_group && ($data_group =~ /MD/)) or ($label =~ /^MD/)) {
+    unless ($data_group or uc($label) =~ /REF/) {
+        die "cannot use this program for label $label without data_group because that will most likely select nightly stacks and we will match an unreasonably large number of matches. Talk to Bill\n";
+    }
+    # if tess_id hasn't been set to an MD field, guess that it's a V3 stack
+    unless ($tess_id =~ /MD/) {
+        my $tag = $data_group ? $data_group : $label;
+        my $field = substr $tag, 0, 4;
+        $tess_id = "$field.V3";
+        print "Setting tess_id to $tess_id\n";
+    }
+}
+
+my $whichimage_output;
+if (!$skycell_id or (defined $ra and defined $dec)) {
+    # run whichimage to find a list of skycells containing the given coordinates and the 
+    # image coordinates of the requested sky coordinates
+    $whichimage_output = `whichimage --listchipcoords --tess_id $tess_id $ra $dec`;
+
+    print "Output from whichimage:\n$whichimage_output\n" if $verbose;
+
+    my @results = split "\n", $whichimage_output;
+
+    die "whichimage returned no output\n" if scalar @results == 0;
+} else {
+    # we were supplied a skycell create a fake whichimage_output that can be parsed below
+    $whichimage_output = "0 0 dummy $skycell_id -1 -1\n";
+}
+
+my $query = "SELECT skycell_id, filter, stack_id, quality, state, path_base
     FROM stackRun join stackSumSkyfile USING(stack_id) 
-    WHERE stackRun.state ='full' AND label = '$label' AND skycell_id = ?";
+    WHERE stackRun.state ='full' AND skycell_id = ?";
+if ($data_group) {
+    $query .= " AND data_group = '$data_group'";
+} else {
+    $query .= " AND label = '$label'";
+}
 
 if ($requested_filter) {
@@ -69,5 +140,5 @@
 
 # @files will contain the list of skycells found in order of skycell_id, filter.
-# These will be displayed in this order so that the image frames are in order of increasing bandpass
+# The images will be displayed in this order so that the image frames are in order of increasing bandpass
 my @files = ();
 
@@ -81,18 +152,24 @@
 foreach (split "\n", $whichimage_output) {
     chomp;
+
     my ($radeg, $decdeg, undef, $skycell, $x, $y) = split " ";
-    print "$skycell $radeg $decdeg\n" if $verbose;
+
+    print "skycell: $skycell RA (deg): $radeg DEC (deg): $decdeg (X,Y): ($x, $y)\n" if $verbose;
+
     $stmt->execute($skycell) or die $stmt->errstr;
     my $files_found = 0;
     while (my $f = $stmt->fetchrow_hashref()) {
         next if $f->{quality};
+        next if $f->{state} ne 'full';
+
         my $filter = $f->{filter};
         my $stack_id = $f->{stack_id};
         my $path_base = $f->{path_base};
+
         # save the skycell coordinates so we can pan efficiently below
         $f->{X} = $x;
         $f->{Y} = $y;
 
-        # Find where this filter goes in the array
+        # Find where this filter goes in the array of files
         my $i = $index{$filter};
         if (!defined $i) {
@@ -100,5 +177,5 @@
             next;
         }
-        # if multiple skycells match the coordinates bump the index
+        # if multiple skycells match the coordinates bump the index by $num_filters
         $i += $skycells * $num_filters;
         $files[$i] = $f;
@@ -112,5 +189,5 @@
 
 if (!$total_files) {
-    print "no files found\n";
+    print "no matching stacks found\n";
     exit 1;
 }
@@ -118,18 +195,78 @@
 
 if (!$no_display) {
-    # estimate of image size for the case where we have 5 frames
-    my $imagesize = 680;
-    # my $panargs = "-pan to $ra $dec wcs fk5";
+    my $imagesize;
+    if ($singleframe) {
+        $imagesize = 1024;
+    } else {
+        # estimate of image size for the case where we have 5 frames
+        $imagesize = 680;
+    }
+    my $tempdir;
+    if (!$outdir) {
+        $tempdir = tempdir ("$temproot/dlapstacks.temp.XXXX", CLEANUP => !$save_temps);
+    }
+    if ($deasin) {
+        if ($outdir) {
+            print "Saving deasined files to $outdir\n" if $verbose;
+            # user specified output directory save the files there
+            if (!-d $outdir) {
+                mkdir $outdir or die "failed to mkdir $outdir\n";
+            }
+        } else {
+            # otherwise use a temporary directory
+            $outdir = $tempdir;
+            print "deasined files will be saved to $outdir\n" if $save_temps;
+        }
+    }
+    # Build the ds9 argument list
     my @args;
+    my $panargs = "";
     foreach my $f (@files) {
         next if ! $f;
-        my $filename = $f->{path_base} . ".$extension";
-        my $resolved = $ipprc->file_resolve($filename);
-        next if !$resolved;
-        my $panargs = "-pan to $f->{X} $f->{Y}";
-
+        my $pathname = $f->{path_base} . ".$extension";
+        my $filename = $ipprc->file_resolve($pathname);
+        next if !$filename;
+
+        # prefix file name with filter
+        # this will either be the ppstamp output filename or we
+        # will put a symlink to it in tempdir
+        my $base = basename($pathname);
+        my $filt = substr $f->{filter}, 0, 1;
+        $base = "$filt.$base";
+        if ($deasin) {
+            # run ppstamp to undo the asin scaling. The output from ppstamp is linear F32 images
+
+            # drop the .fits for the output path for ppstamp
+            my $destbase = $base;
+            $destbase =~ s/\.fits//g;
+
+
+            my $command = "$ppstamp -wholefile -file $filename $outdir/$destbase";
+            my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
+                run(command => $command, verbose => $verbose);
+            unless ($success) {
+                print STDERR join "", @$stderr_buf;
+                $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR);
+                die("Unable to perform ppstamp: $error_code\n");
+            }
+
+            # new filename for ds9
+            $filename = "$outdir/$base";
+        } else {
+            my $nebname = $filename;
+            $filename = "$tempdir/$base";
+            symlink $nebname, $filename or die "failed to symlink $nebname";
+        }
+
+        if ($f->{X} > 0) {
+            $panargs = "-pan to $f->{X} $f->{Y}";
+        } else {
+            $panargs = "";
+        }
+
+        # The following is an attempt put the filter name in the image using a region with text a label.
         my $xlabel = $f->{X} + $imagesize / 2;
         my $ylabel = $f->{Y} + $imagesize / 2;
-        # The following is an attempt put the filter name in the image using a region with text a label.
+
         # I couldn't make this work. The circle would appear but without the text
         # my $label = " -regions command  'circle($xlabel,$ylabel,1)' # text={ $f->{filter} }";
@@ -140,13 +277,25 @@
         # $panargs .= $label;
 
-        push @args, ($resolved, $panargs);
-    }
-    my $ds9cmd = "ds9 -geom 1024x1024 @args";
+        # I used to pan each frame but it turns out to be quicker to wait until the last image is
+        # loaded. pan thatone and then matching the wcs for the frames.
+        # Also that allows V0 and V3 skycells to have east to the left orientation
+        # push @args, ($filename, $panargs);
+        push @args, $filename;
+    }
+    my $ds9cmd = "$ds9 -geom 1024x1024 @args $panargs";
+    $ds9cmd .= " -single" if $singleframe;
+    $ds9cmd .= " -zoom to fit" if $fitToFrame;
+    $ds9cmd .= " -match frames wcs";
+    $ds9cmd .= " -frame first" if $singleframe;
     print "$ds9cmd\n" if $verbose;
     system $ds9cmd;
 } else {
+    # no-display option Just print out some information
+    print "\n" if $verbose;
+    print "Skycell ID        stack_id filter   path_base\n";
+    print "------------------------------------------------------------------------------------------\n";
     foreach my $f (@files) {
         next if !$f;
-        print "$f->{skycell_id} $f->{stack_id} $f->{filter} $f->{path_base}\n";
+        print "$f->{skycell_id}  $f->{stack_id}   $f->{filter}  $f->{path_base}\n";
     }
 }
@@ -173,2 +322,94 @@
 }
 
+__END__
+
+=pod
+=head1 NAME
+dlapstacks - display stack images from the PS1 first Grand Reprocessing (LAP)
+
+=head1 SYNOPSIS
+    
+    dlapstacks <ra> <decl> [options]
+    dlapstacks --skycell_id <skycell_id> [<ra> <decl>] [options]
+
+
+=head1 DESCRIPTION
+
+Query the gpc1 database to find stacks containing a given RA and DEC or for a specific skycell_id.
+Display the images using ds9. If coordinates are supplied the display is centered there.
+
+=head1 OPTIONS
+
+=over 4
+
+=item * -s, --skycell_id <skycell_id>
+
+The skycell_id to display. Note if skycell_id does not begin with "skycell", "skycell" is prepended to the supplied value before querying the database.
+
+
+=item * <ra>   
+
+Right Ascension. Format: decimal degrees or HH:MM:SS
+Required unless skycell_id is supplied
+
+
+=item * <decl>
+
+Declination. Format: decimal degrees or DD:MM:SS 
+Required unless skycell_id is supplied
+
+=item * -f, --filter <filter>
+
+Only display images for the given filter. The SQL wild card character '%' is appended to single character values.
+
+=item * -c, --convolved
+
+Display convolved stacks. Default is to display unconvolved stack images.
+
+=item * --fit
+
+Instruct ds9 to fit the image to the frame.
+
+=item * --single
+
+Set ds9 to single frame mode
+
+=item * -d, --deasin
+
+Display images tha have had the ASIN scaling removed.
+
+=item *-o, --outdir <outdir>
+
+If --deasin is selected the unscaled images are preserved in the provided directory.
+The directory created if it does not exist.
+
+=item * -l, --label <label>
+
+Chose stacks with the provided label. The default is LAP.ThreePi.20110809.
+NOTE: If the label begins with MD and --data_group is not provided the label must contain "ref" or "REF". This prevents
+users from selecting the hundreds of nightly stack images. 
+
+=item * --data_group <data_group>
+
+Select stacks with the provided data_group. By default stacks are selected by label.
+
+
+=item * -t, --tess_id <tess_id>
+
+Set the tessellation that skycells are selected from. Default is RINGS.V3
+unless a label or data group that begins with MDnm is supplied. In that case the default is
+MDnm.V3
+
+=item * -n, --no-display
+
+Look up the stack images using the provided parameters but rather than displaying them with ds9 print out some information about the stacks.
+
+=item * --save-temps
+
+If --deasin is supplied and --outdir is not supplied do not delete temporary images. (For debugging).
+
+=item * -v, --verbose
+
+Print information about the progress of the program.
+
+=cut
Index: branches/meh_branches/ppstack_test/tools/heather/dvomergecheck.pl
===================================================================
--- branches/meh_branches/ppstack_test/tools/heather/dvomergecheck.pl	(revision 34041)
+++ branches/meh_branches/ppstack_test/tools/heather/dvomergecheck.pl	(revision 34041)
@@ -0,0 +1,86 @@
+#!/usr/bin/env perl
+
+#This is a dumb script: It takes as arguments the minidvodb directory and a merge
+# dvodb directory. It finds the newest date ($date) in the minidvodb directory, and 
+# for each filename in the minidvodb directory, checks that it exists in the
+# merge directory and that it was updated more recently than $date
+#
+# It's probable that the files listed as old were not merged into the mergedvodb
+# and should be merged in.
+#
+# It's also possible to fool the script by updating something silly in the minidvodb
+# directory, giving a fake $date to compare to.  
+
+
+use warnings;
+use strict;
+use Getopt::Long qw( GetOptions :config auto_help auto_version gnu_getopt );
+
+my ($mini, $mergy);
+GetOptions(
+           'minidvodb_path=s' => \$mini, # Database host name
+           'mergedvodb_path=s' => \$mergy, # Database name
+    ) or die "Unable to parse arguments.\n";
+die "Unknown option: @ARGV\n" if @ARGV;
+die "Required options: --minidvodb_path  --mergedvodb_path\n"
+    unless defined $mini
+    and defined $mergy;
+
+
+
+my $dir = `pwd`;
+
+#$mini = '/data/ipp005.0/gpc1/catdirs/LAP.ThreePi.20110809.V2.Mini/LAP.ThreePi.20110809.V2.SSky.1583';
+#$mergy = '/data/ipp005.0/gpc1/catdirs/LAP.ThreePi.20110809.V2';
+
+
+my $date_split = `ls -o -1 --time-style +%s --color=never $mini | sort -k 5 | tail -n 1`;
+my @splits= split (/\s+/, $date_split);
+my $unixdate= $splits[4];
+print $date_split;
+my $datecom = "date --date=\@"."$unixdate";
+my $date =`$datecom`;
+chomp $date;
+print "Latest date in minidvodb directory: $date or $unixdate (unix)\n";
+
+
+# 3 days, 
+
+my @list_of_dirs = ('n0000', 'n0730', 'n1500', 'n2230', 'n3000', 'n3730', 'n4500', 'n5230', 'n6000', 'n6730', 'n7500', 'n8230', 's0000', 's0730', 's1500', 's2230', 's3000', 's3730', 's4500', 's5230', 's6000', 's6730', 's7500','s8230');
+
+foreach my $subdir (@list_of_dirs) {
+
+
+chdir $mini.'/'.$subdir;
+
+print "grabbing $mini/$subdir\n";
+my @list_of_mini_files = `ls -1 --color=never `;
+
+chdir $mergy.'/'.$subdir;
+
+print "grabbing $mergy/$subdir\n";
+
+my @list_of_bad = ();
+
+my @list_of_mergy_files = `ls -alrt --time-style +%s > ~/mergy.$subdir.list`;
+
+foreach my $minifile (@list_of_mini_files) {
+    chomp $minifile;
+    my $mergyfile = `grep $minifile ~/mergy.$subdir.list`;
+    
+    my @splits = split (/\s+/, $mergyfile); 
+  #  print $mergyfile;
+    if ($#splits > 5) {
+ 
+	my $num = `date -d "$date" +%s`; 
+	if ($splits[5] < $num ) { 
+   
+	    print "old: $subdir/$minifile\n";
+	}
+    } else {
+
+	print "dne: $subdir/$minifile\n";
+
+    }
+}
+}
Index: branches/meh_branches/ppstack_test/tools/listcmf
===================================================================
--- branches/meh_branches/ppstack_test/tools/listcmf	(revision 34041)
+++ branches/meh_branches/ppstack_test/tools/listcmf	(revision 34041)
@@ -0,0 +1,390 @@
+#!/usr/bin/env perl
+
+# listcmf
+#
+# A program to read cmf files for skycells and produce text files that may be used 
+# to read the data into opihi programs (mana, dvo) using the opihi command 'read'
+#
+# Depends on the HEASOFT program ftlist which must be in the path
+#
+# one line is produced per source (IPP_IDET)
+#
+# If "exended source analysis" (xsrc) and "extended source fits" (xfits) extensions exist
+# in the cmf file selected parameters from those tables are included
+# Sources that do not have extended source or models data have their corresponding columns set to NULL
+# so when read in mana they get set to NAN
+# 
+# the option 
+#   --opihi_read_file (mana filename) 
+# is supplied a file that contains the command to read the vectors written to the specified filename
+#
+# The filter is appended to the names of the columns (except for IPP_IDET) so that list files
+# made from the set of outputs from a multifilter staticskyRun may be read in sequence to yield
+# a set of vectors with multi-filter information for each object
+#
+# For example
+#   listcmf my.r.band.cmf r.list --opihi_read_file r.mana
+#   listcmf my.i.band.cmf i.list --opihi-read-file i.mana
+#
+# To read the data into mana
+#
+#       datafile r.list
+#       input r.mana
+#
+#   The vectors are populated and the variables $ZPT_r  and  $EXPTIME_r are set
+#
+#       datafile i.list
+#       input i.mana
+#
+#       set i_minus_r = $ZPT_i + PSF_INST_MAG_i + 2.5 * log($EXPTIME_i) - ($ZPT_r + PSF_INST_MAG_r + 2.5 * log($EXPTIME_r))
+#
+# The model fits columns names are appended with a tag for the model name as well as the filter
+# So to compare the de Vaucouleurs model magnitude in two filters
+#
+#       set dev_i_minus_r = $ZPT_i + EXT_INST_MAG_DEV_i + 2.5 * log($EXPTIME_i) - ($ZPT_r + EXT_INST_MAG_DEV_r + 2.5 * log($EXPTIME_r))
+#
+#
+#       set sersic_i_minus_r = $ZPT_i + EXT_INST_MAG_SERSIC_i + 2.5 * log($EXPTIME_i) - ($ZPT_r + EXT_INST_MAG_SERSIC_r + 2.5 * log($EXPTIME_r))
+
+use strict;
+use warnings;
+
+use Getopt::Long qw( GetOptions :config auto_help auto_version gnu_getopt );
+use Pod::Usage qw( pod2usage );
+use File::Basename;
+
+#  make sure HEASOSFT is intialized
+die "HEASOFT not initalized try running heainit\n" if !defined $ENV{HEADAS};
+
+
+my ( $cmf, $out, $opihi_read_file, $append, $help, $verbose);
+
+my ($exp_time, $filter, $zero_point);
+
+GetOptions(
+            'opihi-read-file|r=s'   => \$opihi_read_file,
+            'append'                => \$append,
+            'zero-point|z=s'        => \$zero_point,
+            'exptime|e=s'           => \$exp_time,
+            'filter|e=s'            => \$filter,
+            'help|h'                => \$help,
+            'verbose|v'             => \$verbose,
+) or pod2usage( 2 );
+
+pod2usage( -msg => "Unknown option: @ARGV", -exitval => 2 ) if @ARGV > 2;
+
+$cmf = $ARGV[0];
+$out = $ARGV[1];
+
+# first read the psf extension
+my $input = $cmf;
+
+if ($help or !defined $cmf) {
+    print STDERR "usage: listcmf <cmf_filename> [<listfile>] [--opihi-read-file <filename>]\n";
+    die "usage: listcmf <cmf_filename> [<listfile>] [--append] [--opihi-read-file <filename>] [--zero-point <zp>] [--exptime <exptime>] [--filter <filter>]\n";
+}
+
+# output file handle
+my $oh;
+if (defined $out and $out ne "-") {
+    my $to_open = $append ? ">>$out" : ">$out";
+    open $oh, $to_open or die "failed to open output list file: $out\n";
+} else {
+    $oh = *STDOUT;
+}
+
+
+my %extensions;
+# read the keywords and list of extensions from the header
+{
+    my $header_data = `ftlist $cmf kh include=EXPTIME,FPA.ZP,FPA.FILTERID,FILTER,EXPOTIME`;
+
+    die "failed to extract header information form $cmf\n" if !$header_data;
+
+    my @lines = split "\n", $header_data;
+    # require at least a header and psf extension and the 3 keywords
+    die "failed to extract header information from $cmf\n" if scalar @lines < 11;
+
+    foreach my $line (@lines) {
+        next if !$line;
+        next if $line =~ /------/;
+        if ($line =~ /HDU/) {
+            my (undef, $hdu_num, $hdu_name, $type, $cols, undef, undef, $rows) = split " ", $line;
+
+            if (! ($hdu_name =~ /SkyChip/) ) {
+#                print STDERR "unexpected extension name found: $hdu_name\n";
+#                die "expected SkyChip.*\n";
+            }
+            my (undef, $ext) = split '\.', $hdu_name;
+            $ext = $hdu_name if !defined $ext;
+            if ($type eq 'BinTable') {
+                printf STDERR "HDU %2d %4s  %-12s %4d cols %7d rows\n", $hdu_num, $ext, $type, $cols, $rows if $verbose;
+                # save extension offset (number - 1) in extensions hash
+                $extensions{$ext} = $hdu_num - 1;
+            } elsif ($ext and $ext eq 'hdr') {
+                # primary header
+                printf STDERR "HDU %2d %4s  %-12s\n", $hdu_num, $ext, "$type $cols" if $verbose;
+            }
+        } elsif ($line =~ /=/) {
+            # keyword line
+            $line =~ s/=//; 
+            my ($key, $value);
+            if ($line =~ /HIERARCH/) {
+                (undef, $key, $value) = split " ", $line;
+                # print STDERR "$key $value\n" if $verbose;
+            } else {
+                ($key, $value) = split " ", $line;
+                # print STDERR "$key $value\n" if $verbose;
+            }
+            if ($key eq 'EXPTIME') {
+                $exp_time = $value unless ((lc($value) =~ /nan/) or $exp_time);
+            } elsif ($key eq 'EXPOTIME') {
+                $exp_time = $value unless $exp_time;
+            } elsif ($key eq 'FPA.FILTERID') {
+                $filter = substr $value, 1, 1 unless $filter;
+            } elsif ($key eq 'FILTER') {
+                $filter = substr $value, 1, 1 unless $filter;
+                if (!$filter) {
+                    $filter = undef;
+#                    print STDERR "Null value for filter setting to r\n";
+#                    $filter = "r";
+                }
+            } elsif ($key eq 'FPA.ZP') {
+                $zero_point = $value unless $zero_point;
+            }
+        }
+    }
+    die "failed to find filter in header" unless defined $filter;
+    die "failed to find exposure time in header" unless defined $exp_time;
+    if (!defined $zero_point) {
+        print STDERR "failed to find zero point in header using 25\n";
+        $zero_point = 25.0;
+    }
+    printf STDERR "$cmf: %2d extensions filter: $filter zpt: $zero_point exposure_time: $exp_time\n", scalar (keys %extensions) if $verbose;
+}
+
+my $psf_ext = $extensions{psf};
+die "no psf extension found in $cmf\n" unless $psf_ext;
+
+print STDERR "psf extension offset is $psf_ext\n" if $verbose;
+
+# get the psf extensions columns
+$input = "$cmf+$psf_ext";
+my @ids;
+my @lines;
+my @psf_cols;
+
+read_extension($input, 'psf', \@ids, \@lines, \@psf_cols, undef, "PADDING");
+
+printf STDERR "read %d cols %d rows from psf extension\n", scalar @psf_cols, scalar @lines if $verbose;
+
+my @xsrc_cols;
+my $xsrc_ext = $extensions{xsrc};
+if ($xsrc_ext) {
+    $input = "$cmf+$xsrc_ext";
+    read_extension($input, 'xsrc', \@ids, \@lines, \@xsrc_cols, undef,
+        'PROF_SB,PROF_FLUX,PROF_FILL');
+
+    my $total_cols = scalar @psf_cols + scalar @xsrc_cols;
+    my $n_psf = scalar @psf_cols;
+    extend_incomplete_lines(\@lines, $total_cols, $n_psf);
+} else {
+    print STDERR "no xsrc extension found in $cmf\n" unless $xsrc_ext;
+}
+
+my @xfit_cols;
+my $xfit_ext = $extensions{xfit};
+if ($xfit_ext) {
+    my $xfit_includes = 'IPP_IDET,X_EXT,Y_EXT,X_EXT_SIG,Y_EXT_SIG,EXT_INST_MAG,EXT_INST_MAG_SIG,NPARAMS,MODEL_TYPE,EXT_WIDTH_MAJ,EXT_WIDTH_MIN,EXT_THETA,EXT_PAR_07';
+
+    $input = "$cmf+$xfit_ext";
+    my @ext_cols;
+    read_extension($input, 'xfit', \@ids, \@lines, \@ext_cols, $xfit_includes, 
+        undef);
+
+    my @model_types;
+    for (my $i = 0; $i < scalar @lines; $i++) {
+        next unless $lines[$i] =~ /PS_MODEL/;
+        my @words = split " ", $lines[$i];
+        for (my $j = 0; $j < scalar @words; $j++) {
+            next unless $words[$j] =~ /PS_MODEL/;
+            my (undef, undef, $type) = split /\_/, $words[$j];
+            push @model_types, $type;
+        }
+        last;
+    }
+    die "no model types found\n" if !scalar @model_types;
+    # create new column names one for each model type
+    foreach my $model_type (@model_types) {
+        foreach my $col (@ext_cols) {
+            push @xfit_cols, "${col}_${model_type}";
+        }
+    }
+    my $ncols_previous = scalar @psf_cols + scalar @xsrc_cols;
+    my $total_cols = $ncols_previous + scalar @xfit_cols;
+    extend_incomplete_lines(\@lines, $total_cols, $ncols_previous);
+} else {
+    print STDERR "no xfit extension found in $cmf\n" unless $xfit_ext;
+}
+
+my $base = basename($cmf) ;
+{
+    print $oh "# cmf: $base       FILTER: $filter       ZPT: $zero_point       EXPTIME: $exp_time\n";
+    print $oh "#\n";
+    print $oh "# ";
+
+    print $oh "IPP_IDET ";
+    for (my $i = 1; $i < scalar @psf_cols; $i++) {
+        print $oh " $psf_cols[$i]_$filter";
+    }
+    for (my $i = 0; $i < scalar @xsrc_cols; $i++) {
+        print $oh " $xsrc_cols[$i]_$filter"
+    }
+    for (my $i = 0; $i < scalar @xfit_cols; $i++) {
+        print $oh " $xfit_cols[$i]_$filter";
+    }
+    print $oh "\n";
+}
+
+foreach my $line (@lines) {
+    print $oh "$line\n";
+}
+close $oh;
+
+if ($opihi_read_file) {
+    open OUT, ">$opihi_read_file" or die "failed to open $opihi_read_file\n";
+    printf OUT '$EXPTIME_%s = %f' .  "\n", $filter, $exp_time;
+    printf OUT '$ZPT_%s = %f' . "\n", $filter, $zero_point;
+    printf OUT '$FILTER = %s' . "\n", $filter;
+    print OUT "read IPP_IDET 1";
+    my $n = 2;
+    for (my $i = 1; $i < scalar @psf_cols; $i++) {
+        print OUT " $psf_cols[$i]_$filter ",  $n++;
+    }
+    for (my $i = 0; $i < scalar @xsrc_cols; $i++) {
+        print OUT " $xsrc_cols[$i]_$filter ",  $n++;
+    }
+    for (my $i = 0; $i < scalar @xfit_cols; $i++) {
+        print OUT " $xfit_cols[$i]_$filter ",  $n++;
+    }
+    print OUT "\n";
+    close OUT;
+}
+
+
+sub read_extension {
+    my ($input, $ext, $r_ids, $r_lines, $r_cols, $include_list, $exclude_list) = @_;
+
+    die "can't have both include list and exclude list\n" if defined $include_list and defined $exclude_list;
+
+    my $col_list = `ftlist $input c`;
+    die "failed to read column list\n" unless $col_list;
+
+    my @lines = split "\n", $col_list;
+    die "failed to read column list\n" unless scalar @lines;
+
+    my $exclude_str = "";
+    my %exclude;
+    if ($exclude_list) {
+        $exclude_str = '\'[col ';
+        my @cols_to_skip = split '\,', $exclude_list;
+        foreach my $col (@cols_to_skip) {
+            $exclude{$col} = 1;
+            $exclude_str .= "-$col;";
+        }
+        $exclude_str .= ']\'';
+    }
+    my %include;
+    if ($include_list) {
+        my @cols_to_keep = split '\,', $include_list;
+        foreach my $col (@cols_to_keep) {
+            $include{$col} = 1;
+        }
+    }
+
+    # process the column list including and excluding columns based
+    # on the arguments
+    foreach my $line (@lines) {
+        next if !$line;
+        next if $line =~ /HDU/;
+        my ($col, $name, $format) = split " ", $line;
+        next if $col =~ /\D/;   # not a number
+        if (defined($include_list) && ! $include{$name}) {
+            print STDERR "excluding $name\n" if $verbose;
+            next;
+        } elsif ($exclude{$name}) {
+            print STDERR "excluding $name\n" if $verbose;
+            next;
+        } elsif ($ext ne 'psf' and $name eq 'IPP_IDET') {
+            print STDERR "excluding $name from $ext column list\n" if $verbose;
+            next;
+        } else {
+            # it's a keeper
+            # XXX TODO: check the format and insure that it is not a vector
+            # because we currently don't support them
+        }
+        push @$r_cols, $name;
+    }
+
+    my $cmd = "ftlist $input$exclude_str t rownum=no colheader=no";
+    $cmd .= " columns=$include_list" if $include_list;
+    print STDERR "$cmd\n" if $verbose;
+
+    @lines = `$cmd`;
+    if ($ext eq 'psf') {
+        # psf extension contains our list of ids
+        # XXX: we are assuming here that the ids in a psf extension
+        # are sequential
+        foreach my $line (@lines) {
+            # id is first column
+            chomp $line;
+            my ($ipp_idet) = split " ", $line;
+            push @$r_ids, $ipp_idet;
+            push @$r_lines, $line;
+        }
+    } else {
+        my $num_objects = scalar @$r_lines;
+        foreach my $line (@lines) {
+            chomp $line;
+            my ($id, $rest_of_line) = identify_line($line);
+            if ($id > $num_objects) {
+                die "TILT: id $id is greater than num objects\n";
+            }
+            # just append the line to this object's line
+            $r_lines->[$id] .= "$rest_of_line";
+        }
+    }
+}
+
+# find the id for this line and return it and the rest of the string
+# following the id keeping white space
+sub identify_line {
+    my $line = shift;
+
+    my ($id) = split " ", $line;
+
+    my $start_of_id = index $line, $id;
+    my $rest_of_line = substr $line, ($start_of_id + length($id));
+
+    return ($id, $rest_of_line);
+}
+sub extend_incomplete_lines {
+    my $lines = shift;
+    my $ntotal = shift;
+    my $nprevious = shift;
+    for (my $i = 0; $i < scalar @$lines; $i++) {
+        my @words = split " ", $lines->[$i];
+        my $nwords = scalar @words;
+        if ($nwords == $ntotal) {
+            # excellent
+        } elsif ($nwords == $nprevious) {
+            # need to add null words
+            for (my $j = $nwords; $j < $ntotal; $j++) {
+                $lines->[$i] .= " NULL";
+            }
+        } else {
+            # we are confused
+            die "unexpected number of words found $nwords on line $i expected $nprevious or $ntotal\n";
+        }
+    }
+}
Index: branches/meh_branches/ppstack_test/tools/regpeek.pl
===================================================================
--- branches/meh_branches/ppstack_test/tools/regpeek.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/tools/regpeek.pl	(revision 34041)
@@ -3,4 +3,8 @@
 use DBI;
 use Getopt::Long qw( GetOptions :config auto_help auto_version gnu_getopt );
+use PS::IPP::Config 1.0.1 qw( :standard );
+
+my $ipprc =  PS::IPP::Config->new(); # IPP Configuration
+my $siteConfig = $ipprc->{_siteConfig};
 
 my $dbname = 'gpc1';
@@ -65,12 +69,19 @@
 
 sub init_gpc_db {
+    ## change to use the siteConfig setting, while readonly probably do not want to use a readonly replicated DB incase it gets behind
     use constant DB_SOCKET => '/var/run/mysqld/mysqld.sock';
-    my $dbserver = 'ippdb01';
-    my $dbuser = 'ippuser';
-    my $dbpass = 'ippuser';
+    #my $dbserver = 'ippdb01';
+    #my $dbuser = 'ippuser';
+    #my $dbpass = 'ippuser';
+    my $dbserver = metadataLookupStr($siteConfig, 'DBSERVER');
+    my $dbuser = metadataLookupStr($ipprc->{_siteConfig}, "RO_DBUSER");
+    my $dbpass = metadataLookupStr($ipprc->{_siteConfig}, "RO_DBPASSWORD");
+    die "database configuration not set up" unless defined($dbserver);
+    die "database configuration not set up" unless defined($dbuser);
+    die "database configuration not set up" unless defined($dbpass);
     $db = DBI->connect("DBI:mysql:database=${dbname};host=${dbserver};" .
                        "mysql_socket=" . DB_SOCKET(),
                        ${dbuser},${dbpass},
-{ RaiseError => 1, AutoCommit => 1}
+		       { RaiseError => 1, AutoCommit => 1}
         ) or die "Unable to connect to database $DBI::errstr\n";
 return($db);
Index: branches/meh_branches/ppstack_test/tools/repair_bad_instance
===================================================================
--- branches/meh_branches/ppstack_test/tools/repair_bad_instance	(revision 33597)
+++ branches/meh_branches/ppstack_test/tools/repair_bad_instance	(revision 34041)
@@ -123,5 +123,10 @@
         return 0;
     }
+    if (! ($nextend =~ /\d+/)) {
+        print "failed to find NEXTEND for $file. command returned $nextend\n";
+        return 0;
+    }
     print "\t$file: $nextend extensions\n";
+
 
     $command = 'fhead -x ' . ($nextend - 1) . " $file | grep EXTNAME | awk '{print \$3}'";
Index: branches/meh_branches/ppstack_test/tools/runbgchip.pl
===================================================================
--- branches/meh_branches/ppstack_test/tools/runbgchip.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/tools/runbgchip.pl	(revision 34041)
@@ -97,5 +97,10 @@
 exit 0 if $pretend;
 
-exit system $command;
+my $rc = system $command;
+my $status = $rc >> 8;
+if ($rc) {
+    print "command returned $rc $status\n";
+}
+exit $status;
 
 
Index: branches/meh_branches/ppstack_test/tools/runcameraexp.pl
===================================================================
--- branches/meh_branches/ppstack_test/tools/runcameraexp.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/tools/runcameraexp.pl	(revision 34041)
@@ -16,5 +16,5 @@
 my $dbname = "gpc1";
 my ($cam_id, $update, $redirect, $save_temps, $pretend, $no_verbose);
-my ($outdir);
+my ($outdir, $no_masks);
 
 GetOptions(
@@ -23,5 +23,6 @@
     'redirect-output'   => \$redirect,
     'save-temps'        => \$save_temps,
-    'outdir=s'          => \$outdir,
+    'outdir=s'          => \$outdir,    # move outroot to this directory
+    'no-masks'          => \$no_masks,
     'update'            => \$update,
     'dbname=s'          => \$dbname,
@@ -59,4 +60,7 @@
 
 if ($outdir) {
+    if ($outdir eq ".") {
+        $outdir = $ENV{PWD};
+    }
     my $base = basename($path_base);
     $path_base = "$outdir/$base";
@@ -81,4 +85,6 @@
 $command .= " --verbose" unless $no_verbose;
 $command .= " --dbname $dbname" if $dbname;
+$command .= " --skip-binned" if $no_masks;
+$command .= " --skip-refmask" if $no_masks;
 
 
@@ -134,5 +140,5 @@
 =head1 SYNOPSIS
     
-    perl runcameraexp.pl --cam_id <cam_id> [--update] [--redirect-output] [--pretend] [--dbname <dbname>]
+    perl runcameraexp.pl --cam_id <cam_id> [--update] [--redirect-output] [--pretend] [--dbname <dbname>] [--no-masks]
 
 Query the database for the results of a completed camera run and rerun the processing, optionally reverting a faulted
@@ -147,7 +153,22 @@
 =item * --update
 
-Revert a faulted run before processing. If the run is not faulted an error occurs.
+Revert a faulted run before processing. If the run is not faulted an error occurs. Use with care!
 WARNING: insure that the standard science processing either has camera stage turned off or the
-label of this camRun omitted from the label list otherwise it may attempt to processes this run at the same time.
+label of this camRun omitted from the label list otherwise it may attempt to process this run at the same time.
+
+Optional.
+
+=item *  --no-masks
+
+Override the recipe values to skip production of binnned images and creation
+of reference star masks. This allows psastro to perform the astrometry
+analysis even if the input chipRun has been cleaned up.
+
+Optional (for debugging).
+
+=item *  --outdir <outdir>
+
+Change the output root to the provided directory instead of the path_base
+in the database.  
 
 Optional.
@@ -156,4 +177,8 @@
 
 Send the output of the command to the log file. (This is the default if --update is supplied).
+
+=item *  --save-temps
+
+Pass -save-temps to camera_exp.pl
 
 Optional.
Index: branches/meh_branches/ppstack_test/tools/runchipimfile.pl
===================================================================
--- branches/meh_branches/ppstack_test/tools/runchipimfile.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/tools/runchipimfile.pl	(revision 34041)
@@ -91,4 +91,5 @@
 $command .= " --dbname $dbname" if $dbname;
 $command .= " --zaplog" if $zaplog;
+$command .= " --threads $threads" if $threads;
 
 if ($update) {
@@ -110,5 +111,13 @@
 exit 0 if $pretend;
 
-exit system $command;
+my $rc = system $command;
+my $status = $rc >> 8;
+if ($rc) {
+    print STDERR "command failed with $rc $status\n";
+    $status = 1 unless $status;
+} else {
+    print "Successfully rebuilt chip $chip_id $class_id\n";
+}
+exit $status;
 
 
Index: branches/meh_branches/ppstack_test/tools/runwarpskycell.pl
===================================================================
--- branches/meh_branches/ppstack_test/tools/runwarpskycell.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/tools/runwarpskycell.pl	(revision 34041)
@@ -105,5 +105,6 @@
 exit 0 if $pretend;
 
-exit system $command;
+my $rc =  system $command;
+exit $rc >> 8;
 
 
Index: branches/meh_branches/ppstack_test/tools/who_uses_the_cluster/_who_uses_the_cluster.sh
===================================================================
--- branches/meh_branches/ppstack_test/tools/who_uses_the_cluster/_who_uses_the_cluster.sh	(revision 33597)
+++ branches/meh_branches/ppstack_test/tools/who_uses_the_cluster/_who_uses_the_cluster.sh	(revision 34041)
@@ -25,7 +25,12 @@
 
 # The hosts list on which we're sshing
-HOSTS="ippdb00 ippdb01 ippdb02\
-    ippc01 ippc02 ippc03 ippc04 ippc05 ippc06 ippc07 ippc08 ippc09\
+HOSTS="ippdb00 ippdb01 ippdb02 ippdb03\
+           ippc01 ippc02 ippc03 ippc04 ippc05 ippc06 ippc07 ippc08 ippc09\
     ippc10 ippc11 ippc12 ippc13 ippc14 ippc15 ippc16 ippc17 ippc18 ippc19\
+    ippc20 ippc21 ippc22 ippc23 ippc24 ippc25 ippc26 ippc27 ippc28 ippc29\
+    ippc30 ippc31 ippc32 ippc33 ippc34 ippc35 ippc36 ippc37 ippc38 ippc39\
+    ippc40 ippc41 ippc42 ippc43 ippc44 ippc45 ippc46 ippc47 ippc48 ippc49\
+    ippc50 ippc51 ippc52 ippc53 ippc54 ippc55 ippc56 ippc57 ippc58 ippc59\
+    ippc60 ippc61 ippc62 ippc63\
                                 ipp004 ipp005 ipp006 ipp007 ipp008 ipp009\
     ipp010 ipp011 ipp012 ipp013 ipp014 ipp015 ipp016 ipp017 ipp018 ipp019\
@@ -33,5 +38,7 @@
     ipp030 ipp031 ipp032 ipp033 ipp034 ipp035 ipp036 ipp037 ipp038 ipp039\
     ipp040 ipp041 ipp042 ipp043 ipp044 ipp045 ipp046 ipp047 ipp048 ipp049\
-    ipp050 ipp051 ipp052 ipp053"
+    ipp050 ipp051 ipp052 ipp053 ipp054 ipp055 ipp056 ipp057 ipp058 ipp059\
+    ipp060 ipp061 ipp062 ipp063 ipp064 ipp065 ipp066\
+    stare00 stare01 stare02 stare03 stare04"
 
 # Basename of the files 
Index: branches/meh_branches/ppstack_test/tools/who_uses_the_cluster/_who_uses_the_cluster_analyze.pl
===================================================================
--- branches/meh_branches/ppstack_test/tools/who_uses_the_cluster/_who_uses_the_cluster_analyze.pl	(revision 33597)
+++ branches/meh_branches/ppstack_test/tools/who_uses_the_cluster/_who_uses_the_cluster_analyze.pl	(revision 34041)
@@ -15,8 +15,14 @@
     ipp030 ipp031 ipp032 ipp033 ipp034 ipp035 ipp036 ipp037 ipp038 ipp039
     ipp040 ipp041 ipp042 ipp043 ipp044 ipp045 ipp046 ipp047 ipp048 ipp049
-    ipp050 ipp051 ipp052 ipp053
-    ippc01 ippc02 ippc03 ippc04 ippc05 ippc06 ippc07 ippc08 ippc09
+    ipp050 ipp051 ipp052 ipp053 ipp054 ipp055 ipp056 ipp057 ipp058 ipp059
+    ipp060 ipp061 ipp062 ipp063 ipp064 ipp065 ipp066
+           ippc01 ippc02 ippc03 ippc04 ippc05 ippc06 ippc07 ippc08 ippc09
     ippc10 ippc11 ippc12 ippc13 ippc14 ippc15 ippc16 ippc17 ippc18 ippc19
-    ippdb00 ippdb01 ippdb02/;
+    ippc20 ippc21 ippc22 ippc23 ippc24 ippc25 ippc26 ippc27 ippc28 ippc29
+    ippc30 ippc31 ippc32 ippc33 ippc34 ippc35 ippc36 ippc37 ippc38 ippc39
+    ippc40 ippc41 ippc42 ippc43 ippc44 ippc45 ippc46 ippc47 ippc48 ippc49
+    ippc50 ippc51 ippc52 ippc53 ippc54 ippc55 ippc56 ippc57 ippc58 ippc59
+    ippc60 ippc61 ippc62 ippc63
+    ippdb00 ippdb01 ippdb02 ippdb03 stare00 stare01 stare02 stare03 stare04/;
 
 print "<html>\n";
@@ -40,18 +46,18 @@
                 $line  =~ s/\s+/;/g;
                 $line =~ s/^;//g;
-		# print "$line\n";
+                # print "$line\n";
                 @values = split ';', $line;
                 $pid = $values[0];
-		#print $pid, "\n";
+                #print $pid, "\n";
                 $username = $values[1];
                 $proc =$values[8];
                 $mem =$values[9];
-		$size = scalar(@values);
-		#$procname = $values[11];
-		$fullprocname = "";
-		#print "$procname \n";
-		for ($i=11;$i<$size;$i++) {
-			$fullprocname = $fullprocname.$values[$i]." ";
-		}
+                $size = scalar(@values);
+                #$procname = $values[11];
+                $fullprocname = "";
+                #print "$procname \n";
+                for ($i=11;$i<$size;$i++) {
+                        $fullprocname = $fullprocname.$values[$i]." ";
+                }
                 if (!defined $summary{$pid}) {
                     # The pid is a new one
@@ -63,5 +69,5 @@
                 } else {
                     # The pid has already been observed
-		    # print "The pid has already been observed\n";
+                    # print "The pid has already been observed\n";
                     #if ($summary{$pid}{"procname"} eq $procname) {
                         $before = $summary{$pid}{"count"};
@@ -85,7 +91,7 @@
         $onceShown = 0;
         while ( my ($pid, $value) = each(%summary) ) {
-		# print $value->{"count"} , " ", $pid, "\n";
+                # print $value->{"count"} , " ", $pid, "\n";
             if ($value->{"count"} > 1) {
-	    	#print "Ok\n";
+                #print "Ok\n";
                 $onceShown = 1;
                 printf("<tr>\n");
Index: branches/meh_branches/ppstack_test/tools/who_uses_the_cluster/who_uses_the_cluster_analyze.sh
===================================================================
--- branches/meh_branches/ppstack_test/tools/who_uses_the_cluster/who_uses_the_cluster_analyze.sh	(revision 33597)
+++ branches/meh_branches/ppstack_test/tools/who_uses_the_cluster/who_uses_the_cluster_analyze.sh	(revision 34041)
@@ -8,3 +8,5 @@
 mkdir -p $CLUSTERMONITORDIR
 /bin/rm -f $CLUSTERMONITORDIR/top.html
+#/bin/mv -f $CLUSTERMONITORDIR/top.html $CLUSTERMONITORDIR/top_`date +"%Y%m%dT%H%M"`.html
 $INSTALLDIR/_who_uses_the_cluster_analyze.pl > $CLUSTERMONITORDIR/top.html
+
