Index: /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/ImageOps.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/ImageOps.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/ImageOps.c	(revision 33580)
@@ -431,4 +431,7 @@
   }      
 
+  int NoffRAave = 0;  int NoffRAori = 0; 
+  int NoffDECave = 0; int NoffDECori = 0;
+
   for (i = 0; i < N_onImage[im]; i++) {
     m = ImageToMeasure[im][i];
@@ -459,11 +462,17 @@
     // 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 ();
     }
@@ -471,12 +480,17 @@
     // complain if the new location is far from the old location
     if (fabs(catalog[c].measureT[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);
+      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(measure[0].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();
+      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();
     }
 
@@ -502,4 +516,6 @@
   }
 
+  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);
 
@@ -739,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++) {
@@ -831,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++) {
Index: /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/UpdateObjectOffsets.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/UpdateObjectOffsets.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/UpdateObjectOffsets.c	(revision 33580)
@@ -24,5 +24,5 @@
 
     // does this host ID match the desired location for the table?
-    if (PARALLEL && !HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
 
     // define the catalog file name
@@ -37,10 +37,10 @@
     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);
Index: /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/UpdateObjects.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/UpdateObjects.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/UpdateObjects.c	(revision 33580)
@@ -83,5 +83,5 @@
   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;
Index: /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/args.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/args.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/args.c	(revision 33580)
@@ -44,4 +44,9 @@
     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;
   }
 
Index: /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/bcatalog.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/bcatalog.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/bcatalog.c	(revision 33580)
@@ -128,5 +128,5 @@
     LimitDensityCatalog_ByNmeasure (subcatalog, catalog);
   } else {
-    if (VERBOSE) {
+    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", 
@@ -230,5 +230,5 @@
   }
 
-  if (VERBOSE) {
+  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", 
@@ -275,5 +275,5 @@
   off_t Nmax = MaxDensityValue * AREA;
   if (subcatalog[0].Naverage <= Nmax) {
-    if (VERBOSE) {
+    if (VERBOSE2) {
       fprintf (stderr, "subcatalog has less than the max density\n");
     }
@@ -328,5 +328,5 @@
   }
 
-  if (VERBOSE) {
+  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);
Index: /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/high_speed_catalogs.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/high_speed_catalogs.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/high_speed_catalogs.c	(revision 33580)
@@ -23,5 +23,5 @@
 
     // does this host ID match the desired location for the table?
-    if (PARALLEL && !HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
 
     // set up the basic catalog info
@@ -34,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);
Index: /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/high_speed_objects.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/high_speed_objects.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/high_speed_objects.c	(revision 33580)
@@ -37,5 +37,5 @@
   catalogOut.catmode   = dvo_catalog_catmode (CATMODE);      // set the default catmode from config data
 
-  if (!dvo_catalog_open (&catalogOut, region, VERBOSE,"w")) {
+  if (!dvo_catalog_open (&catalogOut, region, VERBOSE2,"w")) {
     fprintf (stderr, "ERROR: failure to open catalog file %s\n",
 	     filename);
@@ -274,5 +274,5 @@
 
   fprintf (stderr, "found %d matches\n", Nmatch);
-  dvo_catalog_save (&catalogOut, VERBOSE);
+  dvo_catalog_save (&catalogOut, VERBOSE2);
   dvo_catalog_unlock (&catalogOut);
   dvo_catalog_free (&catalogOut);
Index: /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/load_catalogs.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/load_catalogs.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/load_catalogs.c	(revision 33580)
@@ -24,5 +24,5 @@
 
     // does this host ID match the desired location for the table?
-    if (PARALLEL && !HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
 
     // we only allow output if we do not use a subset.  in this case,
Index: /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/relastro.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/relastro.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/relastro.c	(revision 33580)
@@ -32,4 +32,8 @@
       exit (0);
 
+    case TARGET_UPDATE_OFFSETS:
+      // iterate over catalogs to make detection coordinates consistant
+      UpdateObjectOffsets (skylist, 0, NULL);
+
     default:
       fprintf (stderr, "impossible!\n");
Index: /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/relastro_merge_source.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/relastro_merge_source.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/relastro_merge_source.c	(revision 33580)
@@ -47,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);
@@ -122,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/eam_branches/ipp-20111122/Ohana/src/relastro/src/relastro_objects.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/relastro_objects.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/relastro_objects.c	(revision 33580)
@@ -35,5 +35,5 @@
 
     // does this host ID match the desired location for the table?
-    if (PARALLEL && !HostTableTestHost(skylist[0].regions[i], hostID)) continue;
+    if (!HostTableTestHost(skylist[0].regions[i], hostID)) continue;
 
     // set up the basic catalog info
@@ -47,10 +47,10 @@
 
     // loads Average, Measure, SecFilt
-    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);
Index: /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/save_catalogs.c
===================================================================
--- /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/save_catalogs.c	(revision 33579)
+++ /branches/eam_branches/ipp-20111122/Ohana/src/relastro/src/save_catalogs.c	(revision 33580)
@@ -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]);
